Módulo: DOC. IMPORTAÇÃO
Funcionalidade: DI
Data/Hora da Publicação: 11/07/2014 09:14:38
Data/Hora Última Alteração: 11/07/2014 09:14:38
Descrição da Nota: REPLICAÇÃO DE CAMPOS DA DAI NA ADIÇÃO DA DI
Sintoma
Replicação de campos da DAI na Adição da DI
Solução
Novo tratamento para replicar campos da DAI na adição da DI.
9.0
Produto:
Nota
Descrição
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 14070 Data: 07/07/2014 Hora: 15:28:21
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 14070
Categoria : Melhoria
Prioridade : Alta
Versão PW.CE : 9.0
Pacote : 00008
Agrupamento : 00172
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
01357 - 00001 - 6.0 - 00023 - ERRO NA PASTA PAGAMENTO E VALOR DE FRETE DE DI DE NACIONALIZAÇÃO
01602 - 00002 - 6.0 - 00023 - AJUSTES HOMOLOGAÇÃO DI - CÁLCULOS, DESPESAS, REGIMES
01861 - 00003 - 6.0 - 00024 - NA DI, O CAMPO FUNDAMENTO LEGAL (CODFUNLEG),.
02413 - 00004 - 6.0 - 00025 - VALORES DE IMPOSTOS AO CARREGAR DI ESTÃO ZERADOS. APÓS REFRESH FI
07713 - 00005 - 7.0 - 00007 - DI FUNCIONALIDADE REPLICAR NÃO REPLICA O ITEM DESTAQUE NCM DAS AD
12153 - 00006 - 8.0 - 00011 - LEVA VALOR DE PARCELA QUANDO O PAGAMENTO É À VISTA
12592 - 00007 - 9.0 - 00002 - A ADIÇÃO DA DI NÃO QUEBRA COM A MUDANÇA DA PERIODICIDADE DA FATUR
12627 - 00008 - 9.0 - 00002 - ERRO NO VALOR TOTAL DA PASTA CÂMBIO
13633 - 00009 - 9.0 - 00007 - TRATAMENTO PARA TRANSMISSÃO EM CASO DE ADMISSÃO TEMPORÁRIA
----------------------------------------------------------------------------------------------------
REPLICAÇÃO DE CAMPOS DA DAI NA ADIÇÃO DA DI
----------------------------------------------------------------------------------------------------
Palavras Chave:
REPLICAÇÃO DE CAMPOS - DAI - ADIÇÃO - DI
----------------------------------------------------------------------------------------------------
Objetos da nota:
DYNP /PWS/SAPMZYCI023 0360
REPS /PWS/MZYCI023F01
REPS /PWS/MZYCI023I01
REPS /PWS/MZYCI023O01
REPS /PWS/MZYCI023X01
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DYNP /PWS/SAPMZYCI023 0360
O Download das telas encontra-se disponível no link abaixo
http://produtos.sondait.com.br/home/PW.CE/Notas/
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI023F01
...
LOOP AT itab_zycit124 WHERE adicao = wa_it-adicao.
APPEND itab_zycit124 TO itab_zycit124b.
ENDLOOP.
READ TABLE itab_zycit116 WITH KEY
adicao = it_alist-adicao.
IF sy-subrc EQ 0.
* >> Início da inclusão: FORM ADIC_LOAD
itab_zycit116-ncm_pf = itab_itb-ncm_pf.
itab_zycit116-codsufra = itab_itb-codsufra.
* << Fim da inclusão
itab_zycit116-periodic = itab_itb-periodic.
MODIFY itab_zycit116 TRANSPORTING valtot periodic
WHERE adicao = it_alist-adicao.
wa_ad-identify = it_alist-identify.
MOVE-CORRESPONDING: itab_zycit116 TO wa_ad,
itab_zycit116 TO /pws/zycie116.
PERFORM text_readadi.
CLEAR: v_aini.
CONCATENATE /pws/zycie085-nrseqdi wa_it-adicao INTO v_txtki.
SELECT * FROM /pws/zycit200 INTO TABLE itab_zycit200b WHERE
...
...
ebelp = itab_zycit003-ebelp.
SELECT * FROM /pws/zycit263 INTO TABLE itab_zycit263
FOR ALL ENTRIES IN itab_zycit003 WHERE
nrseq = itab_zycit003-nrseq AND
ebeln = itab_zycit003-ebeln AND
ebelp = itab_zycit003-ebelp AND
eliminado = space.
SELECT * FROM /pws/zycit078 INTO TABLE itab_zycit078
FOR ALL ENTRIES IN itab_zycit003 WHERE
nrseqli = itab_zycit003-nrseqli.
* >> Início da inclusão: FORM FILL_ITABIT
IF NOT itab_zycit078[] IS INITIAL.
LOOP AT itab_zycit078 .
IF NOT itab_zycit078-nrseqlisub IS INITIAL.
SELECT ebeln ebelp ncm_pf codsufra
FROM /pws/zycit079
APPENDING TABLE itab_dai
WHERE nrseqli = itab_zycit078-nrseqlisub .
ELSE.
SELECT ebeln ebelp ncm_pf codsufra
FROM /pws/zycit079
APPENDING TABLE itab_dai
WHERE nrseqli = itab_zycit078-nrseqli .
ENDIF.
ENDLOOP.
ENDIF.
* << Fim da inclusão
ENDIF.
IF NOT itab_zycit263[] IS INITIAL.
SELECT * FROM /pws/zycit006 INTO TABLE itab_zycit006
FOR ALL ENTRIES IN itab_zycit263 WHERE
nrseq_pgfat = itab_zycit263-nrseq_pgfat. "#EC CI_NOFIELD
ENDIF.
SELECT * FROM /pws/zycit122 INTO TABLE itab_zycit122. "#EC CI_NOWHERE
SELECT * FROM /pws/zycit123 INTO TABLE itab_zycit123. "#EC CI_NOWHERE
...
...
IF itab_zycit001-regime EQ '05' .
CLEAR itab_it-aplicacao.
ELSEIF itab_zycit001-regime EQ '12' AND
itab_it-adm_temp EQ 'X' .
CLEAR itab_it-aplicacao.
* >> Início da inclusão: FORM FILL_ITABIT
ENDIF.
READ TABLE itab_dai WITH KEY
ebeln = itab_it-ebeln
ebelp = itab_it-ebelp.
IF sy-subrc EQ 0.
itab_it-ncm_pf = itab_dai-ncm_pf .
itab_it-codsufra = itab_dai-codsufra.
* << Fim da inclusão
ENDIF.
MODIFY itab_it.
ENDLOOP.
SELECT * FROM /pws/zycit438
INTO TABLE itab_zycit438.
ENDFORM.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI023I01
...
CASE sy-ucomm.
WHEN 'ENTE' OR 'FC_ESP'.
GET CURSOR FIELD v_valor.
IF v_valor = 'A_ESPE2' OR sy-ucomm = 'FC_ESP'.
PERFORM text_edit_adespec.
ENDIF.
ENDCASE.
WHEN '0360'.
CASE sy-ucomm.
WHEN 'FC_SEL'.
* >> Início da exclusão: MODULE USER_COMMAND_0231
a_opgan = a_opgav = a_oparc = a_otxjr = a_nivel = 'X'.
* << Fim da exclusão
* >> Início da inclusão: MODULE USER_COMMAND_0231
a_opgan = a_opgav = a_oparc = a_otxjr = a_nivel =
a_opdest = a_oputil = a_optrib = 'X' .
* << Fim da inclusão
WHEN 'FC_DES'.
* >> Início da exclusão: MODULE USER_COMMAND_0231
a_opgan = a_opgav = a_oparc = a_otxjr = a_nivel = space.
* << Fim da exclusão
* >> Início da inclusão: MODULE USER_COMMAND_0231
a_opgan = a_opgav = a_oparc = a_otxjr = a_nivel =
a_opdest = a_oputil = a_optrib = space .
* << Fim da inclusão
WHEN 'CHECK'.
PERFORM fill_mark USING 'X'.
WHEN 'UNCHECK'.
PERFORM fill_mark USING space.
WHEN 'ENTE'.
IF NOT a_opgan IS INITIAL OR
NOT a_opgav IS INITIAL OR
NOT a_oparc IS INITIAL OR
NOT a_otxjr IS INITIAL OR
NOT a_nivel IS INITIAL OR
* >> Início da exclusão: MODULE USER_COMMAND_0231
NOT a_dest IS INITIAL.
* << Fim da exclusão
* >> Início da inclusão: MODULE USER_COMMAND_0231
NOT a_dest IS INITIAL OR
NOT a_opdest IS INITIAL OR
NOT a_oputil IS INITIAL OR
NOT a_optrib IS INITIAL .
* << Fim da inclusão
MOVE-CORRESPONDING /pws/zycie116 TO itab_zycit116.
LOOP AT it_adir WHERE NOT mark IS initial.
IF NOT a_oparc IS INITIAL.
MODIFY itab_zycit116 TRANSPORTING
parcfixas parcnum periodic
indice parcvar taxajuros
codtxjuros taxarate
WHERE adicao = it_adir-adicao.
DELETE itab_zycit124 WHERE
adicao = it_adir-adicao.
...
...
MOVE-CORRESPONDING itab_zycit114_aux TO itab_zycit114.
itab_zycit114-adicao = it_adir-adicao.
READ TABLE itab_zycit114 WITH KEY
destaque = itab_zycit114_aux-destaque
adicao = it_adir-adicao.
IF sy-subrc NE 0.
APPEND itab_zycit114.
ENDIF.
ENDLOOP.
ENDIF.
* >> Início da inclusão: MODULE USER_COMMAND_0231
IF NOT a_opdest IS INITIAL .
MODIFY itab_zycit116 TRANSPORTING destinacao
WHERE adicao = it_adir-adicao.
ENDIF.
IF NOT a_oputil IS INITIAL .
MODIFY itab_zycit116 TRANSPORTING utilizacao
WHERE adicao = it_adir-adicao.
ENDIF.
IF NOT a_optrib IS INITIAL .
MODIFY itab_zycit116 TRANSPORTING tributacao
WHERE adicao = it_adir-adicao.
ENDIF.
* << Fim da inclusão
ENDLOOP.
LEAVE TO SCREEN 0.
ENDIF.
WHEN 'BACK'.
LEAVE TO SCREEN 0.
ENDCASE.
WHEN '0440'.
CASE sy-ucomm.
WHEN 'CHECK'.
s_icdif = s_ometv = s_oregt = s_oregp = s_ofund =
...
...
ENDIF.
WHEN 'ULTI'.
PERFORM: save_adic.
DESCRIBE TABLE it_alist LINES v_pos.
PERFORM: adic_change,
adic_load.
WHEN 'REPL_A'.
IF v_ipa > 1.
* >> Início da exclusão: MODULE USER_COMMAND_0300
a_opgan = a_opgav = a_oparc = a_otxjr = a_nivel = space.
* << Fim da exclusão
* >> Início da inclusão: MODULE USER_COMMAND_0300
a_opgan = a_opgav = a_oparc = a_otxjr = a_nivel =
A_OPDEST = A_OPUTIL = A_OPTRIB = SPACE.
* << Fim da inclusão
CALL SCREEN '0360' STARTING AT 5 2.
ELSE.
MESSAGE s015 WITH text-041.
ENDIF.
WHEN 'SAVE'.
PERFORM salva_dados_siscomex.
WHEN 'BACK'.
PERFORM save_adic.
LEAVE TO SCREEN 0.
ENDCASE.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI023O01
...
* >> Início da inclusão: MODULE SET_SCREEN
WHEN '0360' .
IF v_region NE 'AM' .
LOOP AT SCREEN.
IF ( screen-name EQ 'A_OPDEST' OR
screen-name EQ 'A_OPUTIL' OR
screen-name EQ 'A_OPTRIB' ) .
screen-invisible = '1' .
MODIFY SCREEN.
ENDIF.
ENDLOOP.
ENDIF.
* << Fim da inclusão
ENDCASE.
CLEAR v_existe_li.
ENDMODULE.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI023X01
...
* >> Início da inclusão:
ncm_pf TYPE /pws/zycit079-ncm_pf ,
codsufra TYPE /pws/zycit079-codsufra,
* << Fim da inclusão
END OF itab_it.
...
...
* >> Início da inclusão:
DATA: BEGIN OF itab_dai OCCURS 0 .
DATA: ebeln TYPE /pws/zycit100-ebeln,
ebelp TYPE /pws/zycit100-ebelp,
ncm_pf TYPE /pws/zycit116-ncm_pf,
codsufra TYPE /pws/zycit116-codsufra,
END OF itab_dai.
DATA: a_opdest,
a_oputil,
a_optrib.
* << Fim da inclusão
DATA: END OF COMMON PART.