Módulo: DOC. IMPORTAÇÃO
Funcionalidade: Recebimento
Data/Hora da Publicação: 10/03/2008 00:00:00
Data/Hora Última Alteração: 23/02/2011 09:55:41
Descrição da Nota: RECEBIMENTO DE NOTA FISCAL DE REMESSA POR FORA DO EMBARQUE
Sintoma
Ao executar o recebimento preenchendo apenas o numero da nota fiscal de remessa o programa não
seleciona nenhum registro para o recebimento.
Solução
Ajustar programa para contemplar a seleção pelo numero da nota fiscal de remessa.
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 06133 Data: 10/03/2008 Hora: 09:29:03
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 06133
Categoria : Erro de Programa
Prioridade : Média
Versão PW.CE : 7.0
Pacote : 00004
Agrupamento : 00041
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
02982 - 00001 - 6.0 - 00026 - MENU /PWS/ZYCI > PROCESSAR > RECEBIMENTO NÃO ENCONTRA NF
05915 - 00002 - 7.0 - 00004 - DIVERGENCIA NO EMBARQUE ENTRE CENTROS PRODUTIVOS E IMPRODUTIVOS
----------------------------------------------------------------------------------------------------
RECEBIMENTO DE NOTA FISCAL DE REMESSA POR FORA DO EMBARQUE
----------------------------------------------------------------------------------------------------
Palavras Chave:
RECEBIMENTO - NOTA - FISCAL - REMESSA - MENU - IMPORTAÇÃO
/PWS/SAPMZYCI017
----------------------------------------------------------------------------------------------------
Objetos da nota:
DYNP /PWS/SAPMZYCI017 0001
REPS /PWS/MZYCI001F02
REPS /PWS/MZYCI017F01
REPS /PWS/MZYCI017F03
REPS /PWS/MZYCI017O01
REPS /PWS/MZYCI017TOP
REPS /PWS/MZYCI017X01
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI001F02
...
FORM call_bt.
* >> Início da inclusão: FORM CALL_BT
EXPORT /pws/zycie001-embarca TO MEMORY ID '0001'.
* << Fim da inclusão
...
SET PARAMETER ID '/PWS/ZYCIP085' FIELD /pws/zycit085-nrseqdi.
SET PARAMETER ID '/PWS/ZYGLP089' FIELD /pws/zycit085-identify.
* >> Início da exclusão: FORM CALL_BT
EXPORT /pws/zycie001-embarca TO MEMORY ID '0001'.
* << Fim da exclusão
IF v_status_s = 1 AND /pws/zycie001-status_e NE 'E'.
PERFORM valida_trans USING '/PWS/ZYCI080_A' 'skip'.
ELSE.
PERFORM valida_trans USING '/PWS/ZYCI080_E' 'skip'.
ENDIF.
ENDIF.
EXIT.
ENDIF.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI017F03
...
FORM select_tables.
* >> Início da inclusão: FORM SELECT_TABLES
DATA itab_nfg_aux LIKE itab_nfg OCCURS 0 .
IMPORT /pws/zycie001-embarca FROM MEMORY ID '0001'.
IF sy-subrc NE '0'.
v_menu = 'X' .
ENDIF.
* << Fim da inclusão
...
...
IF v_nrseqdi+7(3) EQ 'P06'.
IF NOT /pws/zycie442-nrdi IS INITIAL.
SELECT * FROM /pws/zycit442
INTO TABLE itab_zycit442
WHERE nrdi EQ /pws/zycie442-nrdi.
IF sy-subrc = 0.
SELECT * FROM /pws/zycit041
INTO CORRESPONDING FIELDS OF TABLE itab_nfg
FOR ALL ENTRIES IN itab_zycit442
WHERE nrseq EQ /pws/zycie043-nrseq
AND nrseq EQ itab_zycit442-nrseqda
* >> Início da exclusão: FORM SELECT_TABLES
AND nfnum IN itab_nfnum
* << Fim da exclusão
* >> Início da inclusão: FORM SELECT_TABLES
AND docnum IN itab_nfnum
* << Fim da inclusão
AND series IN itab_series
AND subser IN itab_subser
AND cancel EQ ' '.
ENDIF.
ELSE.
SELECT * FROM /pws/zycit041
INTO CORRESPONDING FIELDS OF TABLE itab_nfg
WHERE nrseq EQ /pws/zycie043-nrseq
* >> Início da exclusão: FORM SELECT_TABLES
AND nfnum IN itab_nfnum
* << Fim da exclusão
* >> Início da inclusão: FORM SELECT_TABLES
AND docnum IN itab_nfnum
* << Fim da inclusão
AND series IN itab_series
AND subser IN itab_subser
AND cancel EQ ' '.
ENDIF.
ELSE.
IF NOT /pws/zycie085-nrdi IS INITIAL.
SELECT * FROM /pws/zycit085
INTO TABLE itab_zycit085
WHERE nrdi EQ /pws/zycie085-nrdi.
IF sy-subrc = 0.
SELECT * FROM /pws/zycit041
INTO CORRESPONDING FIELDS OF TABLE itab_nfg
FOR ALL ENTRIES IN itab_zycit085
WHERE nrseq EQ /pws/zycie043-nrseq
AND nrseq EQ itab_zycit085-nrseqdi
* >> Início da exclusão: FORM SELECT_TABLES
AND nfnum IN itab_nfnum
* << Fim da exclusão
* >> Início da inclusão: FORM SELECT_TABLES
AND docnum IN itab_nfnum
AND series IN itab_series
AND subser IN itab_subser
AND cancel EQ ' '.
ENDIF.
ELSE.
IF v_menu NE 'X'.
IF /pws/zycie043-nrseq NE '0000000000'.
SELECT * FROM /pws/zycit041
INTO CORRESPONDING FIELDS OF TABLE itab_nfg
WHERE nrseq EQ /pws/zycie043-nrseq
AND docnum IN itab_nfnum
AND series IN itab_series
AND subser IN itab_subser
AND cancel EQ ' '.
ELSE.
SELECT * FROM /pws/zycit041
INTO CORRESPONDING FIELDS OF TABLE itab_nfg
WHERE docnum IN itab_nfnum
* << Fim da inclusão
AND series IN itab_series
AND subser IN itab_subser
AND cancel EQ ' '.
* >> Início da inclusão: FORM SELECT_TABLES
CHECK sy-subrc = 0.
DESCRIBE TABLE itab_nfg LINES v_reg.
IF v_reg > 1.
MESSAGE w015 WITH text-260 text-261.
EXIT.
ELSE.
READ TABLE itab_nfg INDEX 1.
MOVE itab_nfg-nrseq TO /pws/zycie043-nrseq.
* << Fim da inclusão
ENDIF.
* >> Início da inclusão: FORM SELECT_TABLES
ENDIF.
* << Fim da inclusão
ELSE.
IF /pws/zycie043-nrseq NE '0000000000'.
* >> Início da inclusão: FORM SELECT_TABLES
SELECT * FROM /pws/zycit043
INTO CORRESPONDING FIELDS OF TABLE itab_nfg
WHERE nrseq EQ /pws/zycie043-nrseq
AND docnumnfg IN itab_nfnum
AND series IN itab_series
AND subser IN itab_subser
AND cancel EQ ' '.
IF sy-subrc NE 0.
SELECT * FROM /pws/zycit043
INTO CORRESPONDING FIELDS OF TABLE itab_nfg
WHERE nrseq EQ /pws/zycie043-nrseq
AND docnum IN itab_nfnum
AND series IN itab_series
AND subser IN itab_subser
AND cancel EQ ' '.
IF sy-subrc NE 0.
SELECT * FROM /pws/zycit043
INTO CORRESPONDING FIELDS OF TABLE itab_nfg
WHERE nrseq EQ /pws/zycie043-nrseq
AND nfnum IN itab_nfnum
AND series IN itab_series
AND subser IN itab_subser
AND cancel EQ ' '.
IF sy-subrc NE 0.
SELECT * FROM /pws/zycit041
INTO CORRESPONDING FIELDS OF TABLE itab_nfg
WHERE nrseq EQ /pws/zycie043-nrseq
AND docnum IN itab_nfnum
AND series IN itab_series
AND subser IN itab_subser
AND cancel EQ ' '.
IF sy-subrc NE 0.
* << Fim da inclusão
SELECT * FROM /pws/zycit041
INTO CORRESPONDING FIELDS OF TABLE itab_nfg
WHERE nrseq EQ /pws/zycie043-nrseq
AND nfnum IN itab_nfnum
AND series IN itab_series
AND subser IN itab_subser
AND cancel EQ ' '.
* >> Início da inclusão: FORM SELECT_TABLES
ENDIF.
ENDIF.
ENDIF.
ENDIF.
* << Fim da inclusão
ELSE.
* >> Início da inclusão: FORM SELECT_TABLES
SELECT * FROM /pws/zycit043
INTO CORRESPONDING FIELDS OF TABLE itab_nfg
WHERE docnum IN itab_nfnum
AND series IN itab_series
AND subser IN itab_subser
AND cancel EQ ' '.
IF sy-subrc NE 0.
SELECT * FROM /pws/zycit041
INTO CORRESPONDING FIELDS OF TABLE itab_nfg
WHERE docnum IN itab_nfnum
AND series IN itab_series
AND subser IN itab_subser
AND cancel EQ ' '.
IF sy-subrc NE 0.
* << Fim da inclusão
SELECT * FROM /pws/zycit041
INTO CORRESPONDING FIELDS OF TABLE itab_nfg
WHERE nfnum IN itab_nfnum
AND series IN itab_series
AND subser IN itab_subser
AND cancel EQ ' '.
* >> Início da exclusão: FORM SELECT_TABLES
CHECK sy-subrc = 0.
* << Fim da exclusão
* >> Início da inclusão: FORM SELECT_TABLES
ENDIF.
CHECK sy-subrc EQ 0.
* << Fim da inclusão
DESCRIBE TABLE itab_nfg LINES v_reg.
IF v_reg > 1.
MESSAGE w015 WITH text-260 text-261.
EXIT.
ELSE.
READ TABLE itab_nfg INDEX 1.
MOVE itab_nfg-nrseq TO /pws/zycie043-nrseq.
ENDIF.
* >> Início da inclusão: FORM SELECT_TABLES
ENDIF.
ENDIF.
* << Fim da inclusão
ENDIF.
ENDIF.
ENDIF.
FREE itab_nf.
* >> Início da inclusão: FORM SELECT_TABLES
IF v_menu EQ 'X'.
itab_nfg_aux[] = itab_nfg[].
CLEAR itab_nfg .
REFRESH itab_nfg .
IF NOT itab_nfg_aux[] IS INITIAL.
SELECT * FROM /pws/zycit041
INTO CORRESPONDING FIELDS OF TABLE itab_nfg
FOR ALL ENTRIES IN itab_nfg_aux
WHERE nrseq = itab_nfg_aux-nrseq
AND nfglobal = itab_nfg_aux-nfglobal
AND docnum = itab_nfg_aux-docnumnfg
AND cancel = ' '.
IF itab_nfg[] IS INITIAL.
SELECT * FROM /pws/zycit041
INTO CORRESPONDING FIELDS OF TABLE itab_nfg
FOR ALL ENTRIES IN itab_nfg_aux
WHERE nrseq = itab_nfg_aux-nrseq
AND nfglobal = itab_nfg_aux-nfglobal
AND nfnum = itab_nfg_aux-nfnum
AND cancel = ' '.
ENDIF.
ENDIF.
ENDIF.
* << Fim da inclusão
LOOP AT itab_nfg.
SELECT * FROM /pws/zycit043
APPENDING CORRESPONDING FIELDS OF TABLE itab_nf
WHERE nrseq = itab_nfg-nrseq
AND nrdi = itab_nfg-nrdi
AND nfglobal = itab_nfg-nfglobal
AND docnumnfg = itab_nfg-docnum
AND cancel = ' '.
IF sy-subrc EQ 0.
itab_nfg-delete = 'S'.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI017O01
...
MODULE carrega_nf OUTPUT.
* >> Início da inclusão: MODULE CARREGA_NF
DATA: v_reg TYPE i.
* << Fim da inclusão
...
...
SELECT * FROM /pws/zycit041
INTO CORRESPONDING FIELDS OF TABLE itab_nfg
FOR ALL ENTRIES IN itab_zycit085
WHERE nrseq EQ /pws/zycie043-nrseq
AND nrseq EQ itab_zycit085-nrseqdi
* >> Início da exclusão: MODULE CARREGA_NF
AND nfnum IN itab_nfnum
* << Fim da exclusão
* >> Início da inclusão: MODULE CARREGA_NF
AND docnum IN itab_nfnum
* << Fim da inclusão
AND series IN itab_series
AND subser IN itab_subser
AND cancel EQ ' '.
ENDIF.
* >> Início da inclusão: MODULE CARREGA_NF
ELSE.
IF v_menu NE 'X'.
SELECT * FROM /pws/zycit041
INTO CORRESPONDING FIELDS OF TABLE itab_nfg
WHERE nrseq EQ /pws/zycie043-nrseq
AND docnum IN itab_nfnum
AND series IN itab_series
AND subser IN itab_subser
AND cancel EQ ' '.
IF sy-subrc NE 0.
SELECT * FROM /pws/zycit043
INTO CORRESPONDING FIELDS OF TABLE itab_nfg
WHERE nrseq EQ /pws/zycie043-nrseq
AND docnum IN itab_nfnum
AND series IN itab_series
AND subser IN itab_subser
AND cancel EQ ' '.
IF sy-subrc NE 0.
SELECT * FROM /pws/zycit043
INTO CORRESPONDING FIELDS OF TABLE itab_nfg
WHERE nrseq EQ /pws/zycie043-nrseq
AND docnumnfg IN itab_nfnum
AND series IN itab_series
AND subser IN itab_subser
AND cancel EQ ' '.
ENDIF.
ENDIF.
ELSE.
IF /pws/zycie043-nrseq NE '0000000000'.
SELECT * FROM /pws/zycit043
INTO CORRESPONDING FIELDS OF TABLE itab_nfg
WHERE nrseq EQ /pws/zycie043-nrseq
AND docnumnfg IN itab_nfnum
AND series IN itab_series
AND subser IN itab_subser
AND cancel EQ ' '.
IF sy-subrc NE 0.
SELECT * FROM /pws/zycit043
INTO CORRESPONDING FIELDS OF TABLE itab_nfg
WHERE nrseq EQ /pws/zycie043-nrseq
AND docnum IN itab_nfnum
AND series IN itab_series
AND subser IN itab_subser
AND cancel EQ ' '.
* << Fim da inclusão
* >> Início da exclusão: MODULE CARREGA_NF
ELSE.
* << Fim da exclusão
* >> Início da inclusão: MODULE CARREGA_NF
IF sy-subrc NE 0.
SELECT * FROM /pws/zycit043
INTO CORRESPONDING FIELDS OF TABLE itab_nfg
WHERE nrseq EQ /pws/zycie043-nrseq
AND nfnum IN itab_nfnum
AND series IN itab_series
AND subser IN itab_subser
AND cancel EQ ' '.
IF sy-subrc NE 0.
SELECT * FROM /pws/zycit041
INTO CORRESPONDING FIELDS OF TABLE itab_nfg
WHERE nrseq EQ /pws/zycie043-nrseq
AND docnum IN itab_nfnum
AND series IN itab_series
AND subser IN itab_subser
AND cancel EQ ' '.
IF sy-subrc NE 0.
SELECT * FROM /pws/zycit041
INTO CORRESPONDING FIELDS OF TABLE itab_nfg
WHERE nrseq EQ /pws/zycie043-nrseq
AND nfnum IN itab_nfnum
AND series IN itab_series
AND subser IN itab_subser
AND cancel EQ ' '.
IF sy-subrc EQ 0.
READ TABLE itab_nfg INDEX 1.
SELECT * FROM /pws/zycit043
INTO CORRESPONDING FIELDS OF TABLE itab_nfg
WHERE nrseq EQ /pws/zycie043-nrseq
AND docnumnfg EQ itab_nfg-docnum
AND series IN itab_series
AND subser IN itab_subser
AND cancel EQ ' '.
IF sy-subrc NE 0.
* << Fim da inclusão
SELECT * FROM /pws/zycit041
INTO CORRESPONDING FIELDS OF TABLE itab_nfg
WHERE nrseq EQ /pws/zycie043-nrseq
AND nfnum IN itab_nfnum
* >> Início da inclusão: MODULE CARREGA_NF
AND series IN itab_series
AND subser IN itab_subser
AND cancel EQ ' '.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
ELSE.
SELECT * FROM /pws/zycit043
INTO CORRESPONDING FIELDS OF TABLE itab_nfg
WHERE docnum IN itab_nfnum
* << Fim da inclusão
AND series IN itab_series
AND subser IN itab_subser
AND cancel EQ ' '.
* >> Início da inclusão: MODULE CARREGA_NF
IF sy-subrc NE 0.
SELECT * FROM /pws/zycit041
INTO CORRESPONDING FIELDS OF TABLE itab_nfg
WHERE docnum IN itab_nfnum
AND series IN itab_series
AND subser IN itab_subser
AND cancel EQ ' '.
CHECK sy-subrc EQ 0.
DESCRIBE TABLE itab_nfg LINES v_reg.
IF v_reg > 1.
MESSAGE w015 WITH text-260 text-261.
EXIT.
ELSE.
READ TABLE itab_nfg INDEX 1.
MOVE itab_nfg-nrseq TO /pws/zycie043-nrseq.
* << Fim da inclusão
ENDIF.
* >> Início da inclusão: MODULE CARREGA_NF
ENDIF.
ENDIF.
ENDIF.
ENDIF.
* << Fim da inclusão
FREE itab_nf.
LOOP AT itab_nfg.
* >> Início da inclusão: MODULE CARREGA_NF
IF v_menu NE 'X'.
* << Fim da inclusão
SELECT * FROM /pws/zycit043
APPENDING CORRESPONDING FIELDS OF TABLE itab_nf
WHERE nrseq = itab_nfg-nrseq
AND nrdi = itab_nfg-nrdi
AND nfglobal = itab_nfg-nfglobal
AND docnumnfg = itab_nfg-docnum
* >> Início da inclusão: MODULE CARREGA_NF
AND cancel = ' '.
ELSE.
SELECT * FROM /pws/zycit043
APPENDING CORRESPONDING FIELDS OF TABLE itab_nf
WHERE nrseq = itab_nfg-nrseq
AND nrdi = itab_nfg-nrdi
AND nfglobal = itab_nfg-nfglobal
AND docnum = itab_nfg-docnum
* << Fim da inclusão
AND cancel = ' '.
* >> Início da inclusão: MODULE CARREGA_NF
IF itab_nf IS INITIAL.
ENDIF.
ENDIF.
* << Fim da inclusão
IF sy-subrc EQ 0.
itab_nfg-delete = 'S'.
MODIFY itab_nfg.
ENDIF.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI017TOP
...
DATA: BEGIN OF itab_nfnum OCCURS 1,
sign(1) TYPE c,
option(2) TYPE c,
* >> Início da exclusão:
low LIKE /pws/zycie043-nfnum,
high LIKE /pws/zycie043a-nfnum,
* << Fim da exclusão
* >> Início da inclusão:
low LIKE /pws/zycie043-docnum,
high LIKE /pws/zycie043a-docnum,
* << Fim da inclusão
END OF itab_nfnum.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI017X01
...
* >> Início da inclusão:
data v_menu .
* << Fim da inclusão
DATA: END OF COMMON PART.