CE PLUS - Nota 003832

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: PLI

Data/Hora da Publicação: 04/06/2007 00:00:00

Data/Hora Última Alteração: 09/03/2010 09:45:10

Descrição da Nota: AJUSTE NA TRANSMISSÃO PARA O SISCOMEX DA PLI

Sintoma

 

A transmissão para o Siscomex da pli, não estava sendo feito corretamente.

 

Solução

 

Ajuste na função para selecionar os dados corretamente da tabela de importador. Criado tratamento

para quando o tipo de fabricante for 1, para preencher a tabela com os dados do fabricante.

Versões Tratadas

7.0

Informações Complementares

 

----------------------------------------------------------------------------------------------------

Nota Número 03832 Data: 04/06/2007 Hora: 09:42:04

----------------------------------------------------------------------------------------------------

 

----------------------------------------------------------------------------------------------------

Nota Número              : 03832

Categoria                : Melhoria

Prioridade               : Média

Versão PW.CE             : 7.0

Pacote                   : 00027

Agrupamento              : 00168

----------------------------------------------------------------------------------------------------

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

----------------------------------------------------------------------------------------------------

AJUSTE NA TRANSMISSÃO PARA O SISCOMEX DA PLI

----------------------------------------------------------------------------------------------------

Palavras Chave:

/PWS/ZYCIT079, /PWS/ZYCIT078, /PWS/ZYCIE080-TIPOFORN, FORM SALVA_FORNPLI

 

----------------------------------------------------------------------------------------------------

Objetos da nota:

FUNC /PWS/ZYCI_TRANSFER_PLISUF

REPS /PWS/MZYCI020F01

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em FUNC /PWS/ZYCI_TRANSFER_PLISUF

 

...

      v_qtdest     like /pws/zycie078-qtdest,

      v_lin079(3)  type c              ,

      v_linste(3)  type c              ,

      v_tabix      like sy-tabix       ,

      v_nrforn     like /pws/zycie080-nrforn,

      v_nrseqli    like /pws/zycie078-nrseqli.

clear : itab_tline, it_itens2, it_dest, it_anu, it_ncm, it_fornec,

it_steuc, v_nrseqli, v_nrforn, v_tabix, v_qtdest, v_ntgew.

refresh:itab_tline, it_itens2, it_dest, it_anu, it_ncm, it_fornec,

it_steuc.

* >> Início da exclusão: FUNCTION /PWS/ZYCI_TRANSFER_PLISUF

select * from /pws/zycit078 into table li_cabtrans where

* << Fim da exclusão

* >> Início da inclusão: FUNCTION /PWS/ZYCI_TRANSFER_PLISUF

select * from /pws/zycit078 into table li_cabec where

* << Fim da inclusão

       nrseqli = i_nrseqli and

       tpli    = i_tpli.

if sy-subrc eq  0.

* >> Início da exclusão: FUNCTION /PWS/ZYCI_TRANSFER_PLISUF

    select * from /pws/zycit079 into table li_itenstrans

* << Fim da exclusão

* >> Início da inclusão: FUNCTION /PWS/ZYCI_TRANSFER_PLISUF

    select * from /pws/zycit079 into table li_itens

* << Fim da inclusão

        where nrseqli eq i_nrseqli.

* >> Início da exclusão: FUNCTION /PWS/ZYCI_TRANSFER_PLISUF

    loop at li_itenstrans.

        if li_itenstrans-transm_it eq 'S'.

            delete li_itenstrans.

* << Fim da exclusão

        endif.

* >> Início da exclusão: FUNCTION /PWS/ZYCI_TRANSFER_PLISUF

    endloop.

    if not li_itenstrans[] is initial.

        select * from /pws/zycit079 into table li_itens

        for all entries in li_itenstrans

        where nrseqli = li_itenstrans-numli.

        if not li_itens[] is initial.

             select * from /pws/zycit078 into table li_cabec

             for all entries in li_itens

             where nrseqli eq li_itens-nrseqli.

        endif.

    endif.

endif.

* << Fim da exclusão

Loop at li_cabec.

   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.

...

 

...

            changing it_fornec-lando v_txtpais.

        modify it_fornec index v_idx.

        if it_fornec-tipoforn eq 'F'.

           move it_fornec to li_forn_b.

           collect li_forn_b.

        elseif it_fornec-tipoforn eq 'E'.

           move it_fornec to li_forn_a.

           collect li_forn_a.

        endif.

   endloop.

* >> Início da inclusão: FUNCTION /PWS/ZYCI_TRANSFER_PLISUF

   select single * from j_1bbranch where BRANCH = li_cabec-j_1bBRANCH

                                   and   bukrs  = li_cabec-bukrs.

   select single * from adrc       where ADDRNUMBER = j_1bbranch-ADRNR.

   select single * from /pws/zycit133

                                   where cpf    = li_cabec-CPF_REPRES

.

   li_imp-INSCSUFR    = li_cabec-inscsufr.

   li_imp-CNPJ        = li_cabec-cnpj.

   li_imp-NOME        = j_1bbranch-name.

   li_imp-ATIVECONO   = li_cabec-ativecono.

   li_imp-UF          = adrc-region.

   li_imp-PAIS        = adrc-country.

   li_imp-FONE        = adrc-tel_number.

   li_imp-RUA         = adrc-street.

   li_imp-NUMERO      = adrc-HOUSE_NUM1.

   li_imp-COMPLEMENTO = adrc-STR_SUPPL1.

   li_imp-CIDADE      = adrc-city1.

   li_imp-CEP         = adrc-POST_CODE1.

   li_imp-BAIRRO      = adrc-city2.

   li_imp-CPF         = /pws/zycit133-cpf.

   li_imp-EMAIL       = /pws/zycit133-email.

   append li_imp.

* << Fim da inclusão

if not li_itens[] is initial.

   select * from /pws/zycit081 into table it_anu

       for all entries in li_itens

       where nrseqli = li_itens-nrseqli.

   select * from /pws/zycit109 into table it_dest

       for all entries in li_itens

       where nrseqli = li_itens-nrseqli.

endif.

loop at li_itens.

   v_tabix = sy-tabix.

...

 

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPS /PWS/MZYCI020F01

 

...

        ENDIF.

        /pws/zycie080-tipoforn  = 'E'.

        /pws/zycie080-name1       = it_adrc-name1.

        /pws/zycie080-landa       = it_adrc-country.

        /pws/zycie080-logradouro  = it_adrc-street.

        /pws/zycie080-nrlogr      = it_adrc-house_num1.

        /pws/zycie080-city        = it_adrc-city1.

        /pws/zycie080-regio       = v_bezei.

        /pws/zycie080-compl       = it_adrc-city2.

        MODIFY /pws/zycit080 FROM /pws/zycie080.

* >> Início da inclusão: FORM SALVA_FORNPLI

        CLEAR /pws/zycie080.

        MOVE: p_zycie078-nrseqli TO /pws/zycie080-nrseqli,

              p_it_zycit079-lifnr TO /pws/zycie080-lifnr,

              p_it_zycit079-ebeln TO /pws/zycie080-ebeln,

              p_it_zycit079-ebelp TO /pws/zycie080-ebelp.

        PERFORM gera_nrforn.

        READ TABLE it_lfa1 WITH KEY lifnr = /pws/zycie080-lifnr.

        IF sy-subrc EQ 0.

          READ TABLE it_adrc WITH KEY addrnumber = it_lfa1-adrnr.

        ENDIF.

        /pws/zycie080-tipoforn  = 'F'.

        /pws/zycie080-name1       = it_adrc-name1.

        /pws/zycie080-landa       = it_adrc-country.

        /pws/zycie080-logradouro  = it_adrc-street.

        /pws/zycie080-nrlogr      = it_adrc-house_num1.

        /pws/zycie080-city        = it_adrc-city1.

        /pws/zycie080-regio       = it_adrc-region.

        MODIFY /pws/zycit080 FROM /pws/zycie080.

* << Fim da inclusão

      ELSEIF p_it_zycit079-fabric EQ '2'.

        MOVE: p_zycie078-nrseqli TO /pws/zycie080-nrseqli,

              p_it_zycit079-ebeln TO /pws/zycie080-ebeln,

              p_it_zycit079-ebelp TO /pws/zycie080-ebelp.

        READ TABLE it_ekko WITH KEY ebeln = p_it_zycit079-ebeln.

        /pws/zycie080-lifnr = it_ekko-lifnr.

        PERFORM gera_nrforn.

        IF v_exit = 'S'.

          EXIT.

        ENDIF.

...