Módulo: DOC. IMPORTAÇÃO
Funcionalidade: Transmissão Siscomex
Data/Hora da Publicação: 02/08/2007 00:00:00
Data/Hora Última Alteração: 09/03/2010 10:10:25
Descrição da Nota: NA ADIÇÃO, QUANDO FABRICANTE = (0), NÃO LEVA INFORMAÇÃO PARA SISCOMEX.
Sintoma
Transmissão Siscomex - na adição quando informado fabricante único codigo zero ( 0 ), não está
carregando a informação de nome e fornecedor para o siscomex.
Solução
tratar transmissão para fornecedor = 0 .
7.0
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 04327 Data: 02/08/2007 Hora: 09:53:32
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 04327
Categoria : Erro de Programa
Prioridade : Alta
Versão PW.CE : 7.0
Pacote : 00002
Agrupamento : 00006
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Descrição Breve
----------------------------------------------------------------------------------------------------
NA ADIÇÃO, QUANDO FABRICANTE = (0), NÃO LEVA INFORMAÇÃO PARA SISCOMEX.
----------------------------------------------------------------------------------------------------
Palavras Chave:
ADIÇÃO - TRANSMISSÃO SISCOMEX - DI - FABRICANTE ÚNICO
CÓDIGO 0 - INFORMAÇÕES DO FORNECEDOR
----------------------------------------------------------------------------------------------------
Objetos da nota:
FUNC /PWS/ZYCI_TRANSFER_DI
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYCI_TRANSFER_DI
...
MODIFY it_det_itens_di INDEX v_idx.
ENDLOOP.
IF NOT it_itens_di[] IS INITIAL.
SELECT * FROM /pws/zycit001 INTO TABLE it_001
FOR ALL ENTRIES IN it_itens_di
WHERE nrseq EQ it_itens_di-nrseq.
SELECT * FROM /pws/zycit263 INTO TABLE it_fat_merc_di
FOR ALL ENTRIES IN it_itens_di
WHERE nrseq EQ it_itens_di-nrseq
AND ebeln EQ it_itens_di-ebeln
* >> Início da exclusão: FUNCTION /PWS/ZYCI_TRANSFER_DI
AND ebelp EQ it_itens_di-ebelp.
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCI_TRANSFER_DI
AND ebelp EQ it_itens_di-ebelp
AND eliminado EQ space .
* << Fim da inclusão
IF sy-subrc EQ 0.
SELECT * FROM /pws/zycit006 INTO TABLE it_faturas_di
FOR ALL ENTRIES IN it_fat_merc_di
* >> Início da exclusão: FUNCTION /PWS/ZYCI_TRANSFER_DI
WHERE nrseq_pgfat = it_fat_merc_di-nrseq_pgfat.
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCI_TRANSFER_DI
WHERE nrseq_pgfat = it_fat_merc_di-nrseq_pgfat
AND eliminado EQ space .
* << Fim da inclusão
IF sy-subrc EQ 0.
SELECT * FROM /pws/zycit126 INTO TABLE it_ag_faturas
FOR ALL ENTRIES IN it_faturas_di
WHERE nrseq = it_faturas_di-nrseq.
ENDIF.
SELECT * FROM /pws/zycit114 INTO TABLE it_destaque
WHERE nrseqdi = i_nrseqdi.
ENDIF.
SELECT * FROM /pws/zycit115 INTO TABLE it_doc_vinc_di
FOR ALL ENTRIES IN it_itens_di
...
...
nrseq = it_faturas_di-nrseq.
IF sy-subrc EQ 0.
MOVE:
it_ag_faturas-tpagente TO it_adicao_di-tpagente,
it_ag_faturas-perccomis TO it_adicao_di-perccomis,
it_ag_faturas-chave TO it_adicao_di-chave,
it_ag_faturas-conta TO it_adicao_di-conta.
ENDIF.
ENDIF.
CLEAR: it_forn.
* >> Início da exclusão: FUNCTION /PWS/ZYCI_TRANSFER_DI
IF it_det_itens_di-fabric EQ '1'.
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCI_TRANSFER_DI
IF it_faturas_di-fabricante EQ '1'.
* << Fim da inclusão
CLEAR: wa_lfa1, wa_adrc, it_forn.
SELECT SINGLE lifnr name1 land1 adrnr
stras ort01 ort02 FROM lfa1
INTO CORRESPONDING FIELDS OF wa_lfa1
WHERE lifnr EQ it_faturas_di-lifnr.
SELECT SINGLE * FROM adrc INTO wa_adrc
WHERE addrnumber EQ wa_lfa1-adrnr.
IF sy-subrc EQ 0.
it_forn-forn_name1 = wa_lfa1-name1.
it_forn-forn_logradouro = wa_adrc-street.
...
...
it_forn-forn_city = wa_adrc-city1.
SELECT SINGLE bezei FROM t005u INTO it_forn-forn_regio
WHERE land1 = wa_lfa1-land1 AND
spras = sy-langu AND
bland = wa_adrc-region.
PERFORM load_pais(/pws/sapmzyci023):
USING wa_lfa1-land1
CHANGING it_forn-forn_landa v_txtpais.
it_forn-forn_lando = it_forn-forn_landa.
ENDIF.
* >> Início da exclusão: FUNCTION /PWS/ZYCI_TRANSFER_DI
ELSEIF it_det_itens_di-fabric EQ '2'.
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCI_TRANSFER_DI
ELSEIF it_faturas_di-fabricante EQ '2'.
* << Fim da inclusão
CLEAR: wa_lfa1, wa_adrc, it_forn.
SELECT SINGLE lifnr name1 land1 adrnr
stras ort01 ort02 FROM lfa1
INTO CORRESPONDING FIELDS OF wa_lfa1
WHERE lifnr EQ it_faturas_di-lifnr.
SELECT SINGLE * FROM adrc INTO wa_adrc
WHERE addrnumber EQ wa_lfa1-adrnr.
IF sy-subrc EQ 0.
it_forn-forn_name1 = wa_lfa1-name1.
it_forn-forn_logradouro = wa_adrc-street.
...
...
it_forn-fabr_logradouro = wa_adrc-street.
it_forn-fabr_nrlogr = wa_adrc-house_num1.
it_forn-fabr_compl = wa_lfa1-ort02.
it_forn-fabr_city = wa_adrc-city1.
it_forn-fabr_regio = wa_adrc-region.
PERFORM load_pais(/pws/sapmzyci023):
USING wa_adrc-country
CHANGING it_forn-fabr_landa v_txtpais.
ENDIF.
ENDIF.
* >> Início da exclusão: FUNCTION /PWS/ZYCI_TRANSFER_DI
ELSEIF it_det_itens_di-fabric EQ '3'.
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCI_TRANSFER_DI
ELSEIF it_faturas_di-fabricante EQ '3'.
* << Fim da inclusão
CLEAR: wa_lfa1, wa_adrc, it_forn.
SELECT SINGLE lifnr name1 land1 adrnr
stras ort01 ort02 FROM lfa1
INTO CORRESPONDING FIELDS OF wa_lfa1
WHERE lifnr EQ it_faturas_di-lifnr.
SELECT SINGLE * FROM adrc INTO wa_adrc
WHERE addrnumber EQ wa_lfa1-adrnr.
IF sy-subrc EQ 0.
it_forn-forn_name1 = wa_lfa1-name1.
it_forn-forn_logradouro = wa_adrc-street.
...
...
it_forn-forn_compl = wa_lfa1-ort02.
it_forn-forn_city = wa_adrc-city1.
SELECT SINGLE bezei FROM t005u INTO it_forn-forn_regio
WHERE land1 = wa_lfa1-land1 AND
spras = sy-langu AND
bland = wa_adrc-region.
PERFORM load_pais(/pws/sapmzyci023):
USING wa_adrc-country
CHANGING it_forn-forn_landa v_txtpais.
it_forn-fabr_landa = it_det_itens_di-porigem.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_TRANSFER_DI
ENDIF.
ELSEIF it_faturas_di-fabricante EQ '0'.
CLEAR: wa_lfa1, wa_adrc, it_forn.
SELECT SINGLE lifnr name1 land1 adrnr
stras ort01 ort02 FROM lfa1
INTO CORRESPONDING FIELDS OF wa_lfa1
WHERE lifnr EQ it_faturas_di-lifnr.
SELECT SINGLE * FROM adrc INTO wa_adrc
WHERE addrnumber EQ wa_lfa1-adrnr.
IF sy-subrc EQ 0.
it_forn-forn_name1 = wa_lfa1-name1.
it_forn-forn_logradouro = wa_adrc-street.
it_forn-forn_nrlogr = wa_adrc-house_num1.
it_forn-forn_compl = wa_lfa1-ort02.
it_forn-forn_city = wa_adrc-city1.
it_forn-forn_regio = wa_adrc-region.
PERFORM load_pais(/pws/sapmzyci023):
USING wa_adrc-country
CHANGING it_forn-forn_landa v_txtpais.
* << Fim da inclusão
ENDIF.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_TRANSFER_DI
it_forn-fabr_name1 = it_det_itens_di-descfab.
PERFORM load_pais(/pws/sapmzyci023):
USING it_faturas_di-paisfab
CHANGING it_forn-fabr_landa v_txtpais.
* << Fim da inclusão
ENDIF.
it_forn-vinculo = it_faturas_di-vinculo.
it_forn-nrseqdi = i_nrseqdi.
...