Módulo: DOC. IMPORTAÇÃO
Funcionalidade: LI
Data/Hora da Publicação: 08/08/2007 00:00:00
Data/Hora Última Alteração: 09/03/2010 10:14:27
Descrição da Nota: IMPLEMENTAÇÃO DO FUNDAP NA LI
Sintoma
Implementação do FUNDAP na LI e ajustes na LI.
Solução
Novo desenvolvimento no programa da LI para criar o campo Adquirente da Mercadoria para atender às
operações de Importação por Conta e Ordem.
7.0
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 04366 Data: 08/08/2007 Hora: 08:45:39
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 04366
Categoria : Melhoria
Prioridade : Alta
Versão PW.CE : 7.0
Pacote : 00003
Agrupamento : 00013
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Descrição Breve
----------------------------------------------------------------------------------------------------
IMPLEMENTAÇÃO DO FUNDAP NA LI
----------------------------------------------------------------------------------------------------
Palavras Chave:
FUNDAP - FUNDAPIANA - ADQUIRENTE - CONSIGNATÁRIO
----------------------------------------------------------------------------------------------------
Objetos da nota:
DYNP /PWS/SAPMZYCI020 0100
DYNP /PWS/SAPMZYCI020 0101
FUNC /PWS/ZYCI_TRANSFER_LI
REPS /PWS/MZYCI020F01
REPS /PWS/MZYCI020F02
REPS /PWS/MZYCI020I01
REPS /PWS/MZYCI020O01
REPS /PWS/MZYCI020TOP
REPS /PWS/MZYCI020X01
REPS /PWS/SAPMZYCI020
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DYNP /PWS/SAPMZYCI020 0100
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DYNP /PWS/SAPMZYCI020 0101
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYCI_TRANSFER_LI
...
DATA: itab_tline LIKE tline OCCURS 10 WITH HEADER LINE.
DATA: wa_078 LIKE /pws/zycie078,
wa_079 LIKE /pws/zycie079,
wa_080 LIKE /pws/zycie080.
DATA: v_txtpais(20),
v_txtw(60),
v_add TYPE i,
v_obs0(2100),
v_obs1(2100),
v_txtkey LIKE thead-tdname,
* >> Início da exclusão: FUNCTION /PWS/ZYCI_TRANSFER_LI
v_idx LIKE sy-tabix.
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCI_TRANSFER_LI
v_idx LIKE sy-tabix,
v_CNPJESTAB LIKE /pws/zycie085-CNPJESTAB.
* << Fim da inclusão
SELECT * FROM /pws/zycit078 INTO TABLE li_cabec WHERE
nrseqli = i_nrseqli AND
tpli = i_tpli.
IF sy-subrc EQ 0.
READ TABLE li_cabec INDEX 1.
MOVE: li_cabec TO wa_078.
PERFORM load_pais(/pws/sapmzyci023):
USING wa_078-land1
CHANGING li_cabec-land1 v_txtpais,
USING wa_078-lando
CHANGING li_cabec-lando v_txtpais.
PERFORM load_waers(/pws/sapmzyci023):
USING wa_078-waers
CHANGING li_cabec-waers v_txtw.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_TRANSFER_LI
SELECT SINGLE CNPJESTAB
FROM /pws/zycit085 INTO v_CNPJESTAB
WHERE NRSEQDI = wa_078-nrseqdi.
IF NOT v_CNPJESTAB IS INITIAL.
li_cabec-CNPJ = v_CNPJESTAB.
ENDIF.
* << Fim da inclusão
MODIFY li_cabec INDEX 1.
LOOP AT li_cabec.
SELECT SINGLE * FROM /pws/zycft007 INTO /pws/zycft007.
IF /pws/zycft007-modncm EQ space.
CONCATENATE li_cabec-steuc1(4)
li_cabec-steuc1+5(2)
li_cabec-steuc1+8(2) INTO
li_cabec-steuc1.
MODIFY li_cabec INDEX sy-tabix.
ELSEIF /pws/zycft007-modncm EQ '2'.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI020F01
...
salva_v_esp ,
save_txt ,
save_txt_2 ,
save_pexpam ,
save_drawback,
atual_item .
IF okcode = 'CANCEL'.
UPDATE /pws/zycit079 SET numli = space
WHERE numli = /pws/zycie078-nrseqli.
ENDIF.
* >> Início da inclusão: FORM SAVE
MODIFY /pws/zycit085 FROM /pws/zycie085.
* << Fim da inclusão
MESSAGE s017 WITH /pws/zycie078-nrseqli.
COMMIT WORK.
CASE v_tcode.
WHEN '/PWS/ZYCI020_C'.
v_tcode = '/PWS/ZYCI020_A'.
WHEN '/PWS/ZYCI020_P'.
v_tcode = '/PWS/ZYCI020_N'.
WHEN '/PWS/ZYCI020_I'.
v_tcode = '/PWS/ZYCI020_G'.
ENDCASE.
...
...
bukrs = /pws/zycie078-bukrs
IMPORTING
cgc_number = v_cgc
EXCEPTIONS
branch_not_found = 1
address_not_found = 2
company_not_found = 3
OTHERS = 4.
IF sy-subrc EQ 1.
MESSAGE s015 WITH text-002 /pws/zycie078-werks.
* >> Início da inclusão: FORM LOAD_CNPJ
ENDIF.
IF /pws/zycie085 IS INITIAL.
SELECT SINGLE *
FROM /pws/zycit085 INTO /pws/zycie085
WHERE nrseqdi EQ /pws/zycit100-nrseqdi.
ENDIF.
IF NOT /pws/zycie085-opfundap IS INITIAL or
/PWS/ZYCIE085-CONTROPCB eq '2'.
IF /pws/zycie085-fundapiana IS INITIAL.
READ TABLE it_zycit079 INDEX 1.
SELECT SINGLE a~lifn2
FROM ekpa AS a INNER JOIN /pws/zycet076 AS b ON
a~parvw EQ b~codigo_r3
INTO /pws/zycie085-fundapiana
WHERE b~codigo_ce EQ 'FD'
AND a~ebeln EQ it_zycit079-ebeln.
ENDIF.
IF v_cnpj_findap IS INITIAL.
SELECT SINGLE stcd1 name1 FROM lfa1
INTO (v_cnpj_findap, v_desc_findap)
WHERE lifnr = /pws/zycie085-fundapiana.
IF sy-subrc = 0.
/pws/zycie085-cnpjestab = v_cnpj_findap.
WRITE v_cnpj_findap TO v_cnpj_findap
USING EDIT MASK '__.___.___/____-__'.
* << Fim da inclusão
ENDIF.
* >> Início da inclusão: FORM LOAD_CNPJ
ENDIF.
ELSE.
CLEAR: v_cnpj_findap, v_desc_findap, /pws/zycie085-fundapiana.
/pws/zycie085-cnpjestab = v_cgc.
ENDIF.
* << Fim da inclusão
WRITE: v_cgc TO v_cnpj.
/pws/zycie078-cnpj = v_cgc.
SELECT SINGLE name
FROM j_1bbranch
INTO (v_descr25)
WHERE bukrs = /pws/zycie078-bukrs
AND branch = /pws/zycie078-j_1bbranch.
ENDIF.
* >> Início da inclusão: FORM LOAD_CNPJ
/pws/zycie085-cgc = v_cgc.
PERFORM load_opcb.
* << Fim da inclusão
ENDFORM.
FORM load_urf.
IF NOT /pws/zycie078-urfdesp IS INITIAL.
SELECT SINGLE descdesp FROM /pws/zycet132 INTO v_descr
WHERE codesp = /pws/zycie078-urfdesp.
ELSE.
MOVE space TO v_descr.
ENDIF.
IF NOT /pws/zycie078-urfent IS INITIAL.
SELECT SINGLE descdesp FROM /pws/zycet132 INTO v_descr2
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI020F02
...
PERFORM lock_record.
IF NOT /pws/zycie078-nrseqlisub IS INITIAL.
IF v_tcode EQ '/PWS/ZYCI020_A'.
v_tcode = '/PWS/ZYCI020_E'.
MESSAGE s015 WITH text-029.
ELSEIF v_tcode EQ '/PWS/ZYCI020_N'.
v_tcode = '/PWS/ZYCI020_R'.
MESSAGE s015 WITH text-030.
ENDIF.
ENDIF.
* >> Início da inclusão: FORM CARREGA_DADOS
PERFORM LOAD_CNPJ.
* << Fim da inclusão
IF v_tcode = '/PWS/ZYCI020_A'.
IF /pws/zycie078-status EQ 'INA'.
v_tcode = '/PWS/ZYCI020_E'.
MESSAGE s015 WITH text-043.
PERFORM authority_empresa.
CALL SCREEN '0100'.
ELSE.
IF /pws/zycie078-status = 'CAN'.
v_tcode = '/PWS/ZYCI020_E'.
MESSAGE s015 WITH text-036.
...
...
AND dtate >= /pws/zycie078-dtuserc .
IF sy-subrc EQ 0.
LOOP AT itab_zycit433.
rtexti-tdformat = '*'.
MOVE itab_zycit433-desc_g TO rtexti-tdline .
APPEND rtexti.
ENDLOOP.
ENDIF.
ENDIF.
ENDFORM.
* >> Início da inclusão:
FORM texto_dominio USING p_dominio
p_valor
CHANGING p_texto.
CLEAR: p_texto.
SELECT SINGLE * FROM dd07t INTO dd07t WHERE
domname = p_dominio AND
ddlanguage = 'P' AND
domvalue_l = p_valor.
IF sy-subrc EQ 0.
p_texto = dd07t-ddtext.
ENDIF.
ENDFORM.
FORM load_opcb.
PERFORM texto_dominio USING '/PWS/ZYCID053' /pws/zycie085-contropcb
CHANGING s_opcb.
ENDFORM.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI020I01
...
AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS' FIELD
/pws/zycie078-bukrs
ID 'ACTVT' FIELD '03'.
IF sy-subrc NE 0.
MESSAGE e083(f5) WITH /pws/zycie078-bukrs.
ENDIF.
ENDIF.
ENDIF.
ENDMODULE.
MODULE user_command_101 INPUT.
* >> Início da inclusão: MODULE USER_COMMAND_101
PERFORM load_cnpj.
* << Fim da inclusão
ENDMODULE.
MODULE altera_it_zycit079_500 INPUT.
MOVE:
/pws/zycie079-ebeln TO it_zycit079-ebeln ,
/pws/zycie079-ebelp TO it_zycit079-ebelp,
/pws/zycie079-descr TO it_zycit079-descr,
/pws/zycie079-bednr TO it_zycit079-bednr,
/pws/zycie079-menge TO it_zycit079-menge,
/pws/zycie079-meins TO it_zycit079-meins,
/pws/zycie079-netpr TO it_zycit079-netpr,
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI020O01
...
ENDIF.
MODIFY SCREEN.
ENDLOOP.
ENDIF.
ENDMODULE.
MODULE set_screen_0101 OUTPUT.
SELECT SINGLE * FROM t001 WHERE bukrs EQ /pws/zycie078-bukrs.
SELECT SINGLE * FROM /pws/zycit000
WHERE land1 EQ t001-land1.
LOOP AT SCREEN.
* >> Início da inclusão: MODULE SET_SCREEN_0101
IF screen-name EQ '/PWS/ZYCIE085-CGC' AND
/pws/zycie085-contropcb NE '2'.
screen-input = '0'.
CLEAR: /PWS/ZYCIE085-CGC.
MODIFY SCREEN.
ENDIF.
IF screen-name EQ '/PWS/ZYCIE085-CGC' AND
/pws/zycie085-contropcb EQ '2'.
screen-input = '1'.
MODIFY SCREEN.
ENDIF.
IF screen-name EQ '/PWS/ZYCIE085-FUNDAPIANA' AND
/pws/zycie085-contropcb NE '2'.
screen-input = '0'.
screen-invisible = '1'.
CLEAR: /PWS/ZYCIE085-FUNDAPIANA.
MODIFY SCREEN.
ENDIF.
* << Fim da inclusão
IF /pws/zycie078-nrseqlisub IS INITIAL.
IF screen-group1 EQ 'SB1'.
screen-invisible = '1'.
ENDIF.
MODIFY SCREEN.
ELSE.
IF screen-group1 EQ 'SB1'.
screen-invisible = '0'.
ENDIF.
MODIFY SCREEN.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI020TOP
...
v_matnrd LIKE mara-matnr ,
v_salvo,
v_salvo_drawback,
v_verficado,
v_steuc2 LIKE /pws/zycit078-steuc2,
v_steuc_temp1(8),
v_steuc_temp2(8) ,
v_steuc_temp3(8),
v_executou,
v_incentivo,
* >> Início da inclusão:
s_opcb(18),
v_cnpj_findap(18) TYPE c,
v_desc_findap TYPE lfa1-name1,
* << Fim da inclusão
v_emp LIKE /pws/zycbt007-bukrs.
data v_novo_item.
SELECTION-SCREEN BEGIN OF SCREEN 0300.
PARAMETERS: pa_bukrs LIKE /pws/zycie078-bukrs DEFAULT
/pws/zycie078-bukrs.
SELECT-OPTIONS:
so_ncm FOR /pws/zycie078-steuc1
NO-EXTENSION NO INTERVALS,
so_waers FOR /pws/zycie078-waers
NO-EXTENSION NO INTERVALS,
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI020X01
...
/pws/zycit257,
/pws/zycit244,
/pws/zycie244,
/pws/zycit245,
/pws/zycit274,
/pws/zycit218,
/pws/zycit219,
/pws/zycit242,
/pws/zycit338,
/pws/zycit431,
* >> Início da exclusão:
/pws/zycie376.
* << Fim da exclusão
* >> Início da inclusão:
/pws/zycie376,
/pws/zycie085.
* << Fim da inclusão
DATA: BEGIN OF COMMON PART a.
DATA: BEGIN OF it_code OCCURS 15,
fcode LIKE rsmpe-func,
END OF it_code.
DATA: BEGIN OF itab_zyglt100 OCCURS 10.
INCLUDE STRUCTURE /pws/zyglt100.
DATA: END OF itab_zyglt100.
DATA: BEGIN OF it_zycit079 OCCURS 0.
INCLUDE STRUCTURE /pws/zycit079.
DATA: uebto LIKE ekpo-uebto,
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/SAPMZYCI020