Módulo: DOC. IMPORTAÇÃO
Funcionalidade: Recebimento
Data/Hora da Publicação: 01/06/2006 00:00:00
Data/Hora Última Alteração: 20/06/2011 12:32:58
Descrição da Nota: RECEBIMENTO RECOF
Sintoma
Ao acessar o recebimento baseado na nota fiscal específica do RECOF o sistema dá um erro, avisando
que a DI não existe.
Solução
Ajustado para quando o regime for de RECOF buscar dados da DA ao fazer o Recebimento.
6.0
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 01485 Data: 01/06/2006 Hora: 09:37:09
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 01485
Categoria : Melhoria
Prioridade : Alta
Versão PW.CE : 6.0
Pacote : 00023
Agrupamento : 00116
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Descrição Breve
----------------------------------------------------------------------------------------------------
RECEBIMENTO RECOF
----------------------------------------------------------------------------------------------------
Palavras Chave:
RECEBIMENTO - RECOF - NF RECOF
----------------------------------------------------------------------------------------------------
Objetos da nota:
DYNP /PWS/SAPMZYCI017 0001
REPS /PWS/MZYCI001F03
REPS /PWS/MZYCI017F01
REPS /PWS/MZYCI017I01
REPS /PWS/MZYCI017O01
REPS /PWS/MZYCI017TOP
REPS /PWS/MZYCI017X01
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DYNP /PWS/SAPMZYCI017 0001
*O seguinte campo foi eliminado da tela de seleção da NF
Nome
Ctg. Linha Coluna CmprDf CmVis Altura Format Dict Modif At.Des.Só At
Gr1 Gr2 Gr3 Gr4 SPA GPA ID parâm Cód.F TCmp TpoLoopExbLoop
Outros atributos
/PWS/ZYCIE085-NRSEQDI
I/O 2 24 10 10 1 CHAR X Ent Off
/PWS/ZYCIP085
Nome
Ctg. Linha Coluna CmprDf CmVis Altura Format Dict Modif At.Des.Só At
Gr1 Gr2 Gr3 Gr4 SPA GPA ID parâm Cód.F TCmp TpoLoopExbLoop
Outros atributos
*O seguinte campo foi inserido na tela de seleção da NF
V_NRSEQDI
I/O 2 24 10 10 1 CHAR Ent Off
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI001F03
...
IF NOT itab_da[] IS INITIAL.
SELECT * FROM /pws/zycit003 INTO TABLE itab_zycit003_saldo
FOR ALL ENTRIES IN itab_da
WHERE ebeln EQ itab_da-ebeln
AND ebelp EQ itab_da-ebelp.
* >> Início da inclusão: FORM SELECIONAR_DA
if sy-subrc eq 0.
SELECT nrseq regime FROM /pws/zycit001
INTO TABLE itab_zycit001_saldo
FOR ALL ENTRIES IN itab_zycit003_saldo
WHERE nrseq eq itab_zycit003_saldo-nrseq
and regime eq '04' .
endif.
loop at itab_zycit001_saldo.
delete itab_zycit003_saldo
where nrseq eq itab_zycit001_saldo-nrseq.
endloop.
* << Fim da inclusão
CLEAR v_qtdutil_da.
LOOP AT itab_da.
v_index = sy-tabix.
LOOP AT itab_zycit003_saldo WHERE ebeln EQ itab_da-ebeln
AND ebelp EQ itab_da-ebelp.
v_qtdutil_da = v_qtdutil_da + itab_zycit003_saldo-qtd_iten .
ENDLOOP.
itab_da-qtd_lote = itab_da-qtd_lote - v_qtdutil_da.
* >> Início da exclusão: FORM SELECIONAR_DA
IF itab_da-qtd_lote EQ 0.
* << Fim da exclusão
* >> Início da inclusão: FORM SELECIONAR_DA
IF itab_da-qtd_lote le 0.
* << Fim da inclusão
DELETE itab_da.
ENDIF.
CLEAR v_qtdutil_da.
MODIFY itab_da INDEX v_index.
ENDLOOP.
...
...
'D' TO itab_zycit036_aux-codmod,
sy-uname TO itab_zycit036_aux-usernamec,
sy-datum TO itab_zycit036_aux-dtuserc,
sy-uzeit TO itab_zycit036_aux-hruserc,
/pws/zycbt007-waersb TO itab_zycit036_aux-waers_real,
* >> Início da inclusão: FORM GRAVAR_CUSTOS
/pws/zycbt007-waersb TO itab_zycit036_aux-waers_mov,
* << Fim da inclusão
itab_zycit461-nradto TO itab_zycit036_aux-nrseqori .
READ TABLE itab_zycit443 WITH KEY
ebeln = itab_zycit003-ebeln
ebelp = itab_zycit003-ebelp.
IF sy-subrc EQ 0.
IF NOT itab_zycit443-qtd_da IS INITIAL.
* >> Início da exclusão: FORM GRAVAR_CUSTOS
itab_zycit036_aux-vlreal = ( itab_zycit003-qtd_iten /
* << Fim da exclusão
* >> Início da inclusão: FORM GRAVAR_CUSTOS
itab_zycit036_aux-vlmov = itab_zycit036_aux-vlreal =
( itab_zycit003-qtd_iten /
* << Fim da inclusão
( itab_zycit443-qtd_da - v_qtdutil_da ) ) *
itab_zycit461-vldp.
ENDIF.
IF NOT itab_zycit036_aux-vlreal LT 0.
APPEND itab_zycit036_aux.
...
...
READ TABLE itab_zycit443 WITH KEY
ebeln = itab_zycit003-ebeln
ebelp = itab_zycit003-ebelp.
IF sy-subrc EQ 0.
IF NOT itab_zycit443-qtd_da IS INITIAL.
* >> Início da exclusão: FORM GRAVAR_CUSTOS
itab_zycit036_aux-vlreal = ( itab_zycit003-qtd_iten /
* << Fim da exclusão
* >> Início da inclusão: FORM GRAVAR_CUSTOS
itab_zycit036_aux-vlmov = itab_zycit036_aux-vlreal =
( itab_zycit003-qtd_iten /
* << Fim da inclusão
( itab_zycit443-qtd_da - v_qtdutil_da ) ) *
itab_zycit466-vldp.
ENDIF.
IF NOT itab_zycit036_aux-vlreal LT 0.
APPEND itab_zycit036_aux.
...
...
FORM call_rec.
* >> Início da exclusão: FORM CALL_REC
SELECT SINGLE * FROM /pws/zycit455
WHERE nrseq EQ /pws/zycie001-nrseq.
* << Fim da exclusão
SELECT SINGLE nrseqda FROM /pws/zycit443
INTO v_nrseqdi
* >> Início da exclusão: FORM CALL_REC
WHERE nrseqda = /pws/zycit455-nrseqda.
* << Fim da exclusão
* >> Início da inclusão: FORM CALL_REC
WHERE nrseq = /pws/zycie001-nrseq.
* << Fim da inclusão
SELECT SINGLE * FROM /pws/zycit442
WHERE nrseqda = v_nrseqdi.
IF sy-subrc = 0.
IF sy-tcode EQ '/PWS/ZYCI001_C'.
SET PARAMETER ID '/PWS/ZYCIP085' FIELD /pws/zycit442-nrseqda.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI017F01
FORM seleciona_itens_nf.
* >> Início da inclusão: FORM SELECIONA_ITENS_NF
if v_nrseqdi+7(3) eq 'P06'.
MOVE v_nrseqdi TO /pws/zycie043-nrseq.
move v_nrseqdi to /pws/zycie442-nrseqda.
MOVE /pws/zycie085-nrdi TO /pws/zycie043-nrdi.
else.
move v_nrseqdi to /pws/zycie085-nrseqdi.
* << Fim da inclusão
MOVE /pws/zycie085-nrseqdi TO /pws/zycie043-nrseq.
MOVE /pws/zycie085-nrdi TO /pws/zycie043-nrdi.
* >> Início da inclusão: FORM SELECIONA_ITENS_NF
endif.
* << Fim da inclusão
WRITE /pws/zycie043-nrseq TO /pws/zycie043-nrseq RIGHT-JUSTIFIED.
OVERLAY /pws/zycie043-nrseq WITH '0000000000'.
DATA: v_nolin TYPE i VALUE IS INITIAL.
FREE: itab_nf, itab_nfnum , itab_series, itab_subser.
IF NOT /pws/zycie043-nfnum IS INITIAL.
...
...
itab_subser-low = /pws/zycie043-subser.
itab_subser-high = /pws/zycie043a-subser.
APPEND itab_subser.
ENDIF.
FREE itab_nfg.
* >> Início da inclusão: FORM SELECIONA_ITENS_NF
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
AND nfnum IN itab_nfnum
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
AND nfnum IN itab_nfnum
AND series IN itab_series
AND subser IN itab_subser
AND cancel EQ ' '.
ENDIF.
ELSE.
* << Fim da inclusão
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.
...
...
AND nfnum IN itab_nfnum
AND series IN itab_series
AND subser IN itab_subser
AND cancel EQ ' '.
ENDIF.
* >> Início da inclusão: FORM SELECIONA_ITENS_NF
ENDIF.
* << Fim da inclusão
FREE itab_nf.
LOOP AT itab_nfg.
SELECT * FROM /pws/zycit043
APPENDING CORRESPONDING FIELDS OF TABLE itab_nf
WHERE nrseq = itab_nfg-nrseq
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI017O01
...
tc_lista_nf-lines = tc_lista_nf-lines + 10.
ENDMODULE.
MODULE status_0001 OUTPUT.
SET PF-STATUS '0001'.
SET TITLEBAR '0001'.
* >> Início da inclusão: MODULE STATUS_0001
if v_nrseqdi is initial.
GET PARAMETER ID '/PWS/ZYCIP085' FIELD v_nrseqdi.
endif.
* << Fim da inclusão
ENDMODULE.
MODULE status_0100 OUTPUT.
IF sy-tcode = '/PWS/ZYCI017_E'.
itab_pf_status-fcode = 'ESTOR'.
APPEND itab_pf_status.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI017TOP
...
* >> Início da inclusão:
DATA: BEGIN OF itab_zycit442 OCCURS 0.
INCLUDE STRUCTURE /pws/zycit442.
DATA: END OF itab_zycit442.
* << Fim da inclusão
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI017X01
...
* >> Início da inclusão:
tables:
/pws/zycie442.
* << Fim da inclusão
DATA: BEGIN OF COMMON PART a.
...
...
* >> Início da inclusão:
data: v_nrseqdi like /pws/zycie085-nrseqdi.
* << Fim da inclusão
DATA: END OF COMMON PART.