Módulo: DOC. IMPORTAÇÃO
Funcionalidade: LI
Data/Hora da Publicação: 06/01/2010 00:00:00
Data/Hora Última Alteração: 20/06/2011 12:02:44
Descrição da Nota: TRATAMENTO DE DRAWBACK PARA LI SUBSTITUTIVA.
Sintoma
Não está permitindo alterar a vinculação do pedido ao ato concessório após criar um LI substitutiva.
Solução
Ajustado programa de desvinculação para não conciderar LI que possuam substitutivas e que não foram
vinculadas a Drawback.
Ajustado programa de LI para corrigir o tratamento de saldo de Drawback para a vinculção via LI.
8.0
Produto:
Nota
Descrição
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 09656 Data: 06/01/2010 Hora: 10:00:21
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 09656
Categoria : Erro de Programa
Prioridade : Média
Versão PW.CE : 8.0
Pacote : 00002
Agrupamento : 00003
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
03245 - 00001 - 6.0 - 00026 - VALOR FOB PARA VINCULAÇÃO DO PEDIDO DE ACORDO COM PARAMET. /PWS/Z
05535 - 00002 - 7.0 - 00004 - DESVINCULAÇÃO DE PEDIDOS JÁ VINCULADOS A PROCESSOS DE IMPORTAÇÃO
07831 - 00003 - 7.0 - 00008 - CALCULO DA QUANTIDADE ESTATISTICA
09175 - 00004 - 8.0 - 00001 - AO CRIAR UMA LI COM O NRSEQ DO EMBARQUE ESTA COM PROBLEMA NA QUAN
09588 - 00005 - 8.0 - 00002 - BLOQUEAR DESVINCULAÇÃO DO ATO CONCESS. QUANDO LI POSSUIR LICENCIA
----------------------------------------------------------------------------------------------------
TRATAMENTO DE DRAWBACK PARA LI SUBSTITUTIVA.
----------------------------------------------------------------------------------------------------
Palavras Chave:
VICULAR - LI - PEDIDO - ATO - CONCESSÓRIO - SUBSTITUTIVA - DESVINCULAR
/PWS/SAPMZYCI020 - /PWS/SAPMZYCI068
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCI020F01
REPS /PWS/MZYCI020F02
REPS /PWS/MZYCI068F01
REPT /PWS/SAPMZYCI020
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI020F01
...
FORM save.
* >> Início da inclusão: FORM SAVE
DATA: wa_zycie078d1 TYPE /pws/zycie078.
* << Fim da inclusão
...
...
v_exit = 'S'.
ENDIF.
ENDIF.
ENDLOOP.
PERFORM: verifica_saldo ,
verifica_saldo_pexpam.
IF v_erro_pexpam EQ 'S' OR
v_erro_drawback EQ 'S'.
EXIT.
ENDIF.
* >> Início da inclusão: FORM SAVE
IF v_flagsub1 EQ 'X' .
CLEAR wa_zycie078d1.
wa_zycie078d1 = /pws/zycie078.
/pws/zycie078 = wa_zycit078_aux2.
CLEAR /pws/zycie078-nrseqd.
* << Fim da inclusão
PERFORM save_drawback.
* >> Início da inclusão: FORM SAVE
CLEAR /pws/zycie078.
/pws/zycie078 = wa_zycie078d1.
ENDIF.
PERFORM save_drawback.
* << Fim da inclusão
CLEAR: v_ncm.
READ TABLE it_zycit079 INDEX 1.
IF sy-subrc EQ 0.
...
...
FORM save_drawback.
* >> Início da inclusão: FORM SAVE_DRAWBACK
DATA: v_qtdtotd TYPE /pws/zycit079-qtd_iten,
v_pesod TYPE /pws/zycit079-qtd_iten.
* << Fim da inclusão
...
...
ENDIF.
SELECT SINGLE * FROM /pws/zycit078 INTO wa_zycit078
WHERE nrseqli EQ /pws/zycie078-nrseqli
AND tpli EQ /pws/zycie078-tpli.
IF NOT wa_zycit078-nrseqd IS INITIAL.
SELECT * FROM /pws/zycit245 INTO TABLE it_zycit245
WHERE nrseqd EQ wa_zycit078-nrseqd
AND nritem < 90000. "#EC PORTABLE
SELECT * FROM /pws/zycit079 INTO TABLE itab_zycit079a
WHERE nrseqli EQ /pws/zycie078-nrseqli.
* >> Início da inclusão: FORM SAVE_DRAWBACK
CLEAR: v_pesod, v_qtdtotd.
LOOP AT itab_zycit079a.
v_pesod = v_pesod + itab_zycit079a-ntgew.
v_qtdtotd = v_qtdtotd + itab_zycit079a-qtd_iten.
ENDLOOP.
* << Fim da inclusão
LOOP AT itab_zycit079a.
READ TABLE it_zycit245 WITH KEY
nritem = itab_zycit079a-nritem_db.
READ TABLE it_ekpo WITH KEY ebeln = itab_zycit079a-ebeln
ebelp = itab_zycit079a-ebelp.
IF sy-subrc NE 0.
SELECT SINGLE * FROM ekpo INTO it_ekpo
WHERE ebeln = itab_zycit079a-ebeln
AND ebelp = itab_zycit079a-ebelp.
APPEND it_ekpo.
...
...
itab_zycit079a-netpr.
PERFORM converter_moeda USING v_vl_temp
itab_zycit079a-waers
/pws/zycbt007-waersa
it_ekpo-aedat
CHANGING v_vl_temp2 .
IF v_qtdtot > 0 .
IF /pws/zycie078-zum EQ '10'.
IF NOT v_peso IS INITIAL.
itab_zycit079a-qtd_iten =
* >> Início da exclusão: FORM SAVE_DRAWBACK
( itab_zycit079a-ntgew * /pws/zycie078-qtdest ) / v_peso.
* << Fim da exclusão
* >> Início da inclusão: FORM SAVE_DRAWBACK
( itab_zycit079a-ntgew * wa_zycit078-qtdest ) / v_pesod.
* << Fim da inclusão
ENDIF.
ELSE.
itab_zycit079a-qtd_iten =
* >> Início da exclusão: FORM SAVE_DRAWBACK
( itab_zycit079a-qtd_iten * /pws/zycie078-qtdest ) / v_qtdtot.
* << Fim da exclusão
* >> Início da inclusão: FORM SAVE_DRAWBACK
( itab_zycit079a-qtd_iten * wa_zycit078-qtdest ) / v_qtdtotd.
* << Fim da inclusão
ENDIF.
ELSE.
itab_zycit079a-qtd_iten =
* >> Início da exclusão: FORM SAVE_DRAWBACK
( itab_zycit079a-qtd_iten * /pws/zycie078-qtdest ).
* << Fim da exclusão
* >> Início da inclusão: FORM SAVE_DRAWBACK
( itab_zycit079a-qtd_iten * wa_zycit078-qtdest ).
* << Fim da inclusão
ENDIF.
it_zycit245-vlvinc = it_zycit245-vlvinc -
v_vl_temp2.
it_zycit245-vinculado = it_zycit245-vinculado -
itab_zycit079a-qtd_iten.
MODIFY it_zycit245 TRANSPORTING vlvinc vinculado
WHERE nritem EQ it_zycit245-nritem.
ENDLOOP.
ENDIF.
IF wa_zycit078-nrseqd NE /pws/zycie078-nrseqd.
IF NOT wa_zycit078-nrseqd IS INITIAL.
CALL FUNCTION '/PWS/ZYCI_DEQUEUE_ZYCIT244'
EXPORTING
nrseqd = itab_atos2-nrseqd.
ENDIF.
SELECT * FROM /pws/zycit245 APPENDING TABLE it_zycit245
WHERE nrseqd EQ /pws/zycie078-nrseqd
* >> Início da exclusão: FORM SAVE_DRAWBACK
AND nritem < 90000. "#EC PORTABLE
* << Fim da exclusão
* >> Início da inclusão: FORM SAVE_DRAWBACK
AND nritem < 90000. "#EC PORTABLE
* << Fim da inclusão
ENDIF.
IF NOT /pws/zycie078-nrseqd IS INITIAL.
LOOP AT it_zycit079.
READ TABLE it_zycit245 WITH KEY
nritem = it_zycit079-nritem_db
nrseqd = /pws/zycie078-nrseqd.
READ TABLE it_ekpo WITH KEY ebeln = it_zycit079-ebeln
ebelp = it_zycit079-ebelp.
IF sy-subrc NE 0.
SELECT SINGLE * FROM ekpo INTO it_ekpo
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI020F02
...
FORM desvincula_ato.
IF NOT /pws/zycie078-nrli IS INITIAL OR
* >> Início da exclusão: FORM DESVINCULA_ATO
NOT /pws/zycie078-dtreg IS INITIAL OR
NOT /pws/zycie078-dtdef IS INITIAL.
* << Fim da exclusão
* >> Início da inclusão: FORM DESVINCULA_ATO
( NOT /pws/zycie078-dtreg IS INITIAL AND
NOT /pws/zycie078-dtreg EQ space ) OR
( NOT /pws/zycie078-dtdef IS INITIAL AND
NOT /pws/zycie078-dtdef EQ space ).
* << Fim da inclusão
MESSAGE i015 WITH text-159 text-160.
EXIT.
ENDIF.
IF NOT /pws/zycie078-nrseq IS INITIAL.
SELECT SINGLE * FROM /pws/zycit003
WHERE nrseq EQ /pws/zycie078-nrseq
AND nrseqli EQ /pws/zycie078-nrseqli.
IF sy-subrc EQ 0.
MESSAGE i015 WITH text-458 text-459.
EXIT.
...
...
IF sy-subrc EQ 0.
CLEAR v_nvinc.
v_nrseqd_v = itab_zycit376-nrseqd.
LOOP AT it_zycit079.
READ TABLE itab_zycit376 WITH KEY ebeln = it_zycit079-ebeln
ebelp = it_zycit079-ebelp
nrseqd = v_nrseqd_v.
IF sy-subrc NE 0.
v_nvinc = 'X'.
MESSAGE i015 WITH text-440.
* >> Início da inclusão: FORM VINCULA_ATO
EXIT.
ENDIF.
READ TABLE it_ekpo WITH KEY ebeln = itab_zycit376-ebeln
ebelp = itab_zycit376-ebelp.
IF it_ekpo-menge NE itab_zycit376-qtd_iten.
CLEAR v_campo.
CONCATENATE itab_zycit376-ebeln '/' itab_zycit376-ebelp
INTO v_campo.
v_nvinc = 'X'.
MESSAGE i015 WITH text-498 v_campo text-499 text-500.
* << Fim da inclusão
EXIT.
ENDIF.
ENDLOOP.
IF v_nvinc NE 'X' AND v_ncmdf NE 'X'.
SELECT SINGLE * FROM /pws/zycit244
WHERE nrseqd EQ itab_zycit376-nrseqd.
/pws/zycie078-nrseqd = itab_zycit376-nrseqd.
/pws/zycie078-reg_drawback = itab_zycit376-nratoc.
/pws/zycie078-modalidade = /pws/zycit244-modalidade.
/pws/zycie078-tipodb = /pws/zycit244-tipo.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI068F01
...
AND ebelp EQ itab_ekpo-ebelp.
SELECT * FROM /pws/zycit079
INTO TABLE itab_zycit079 "#EC CI_NOFIRST
FOR ALL ENTRIES IN itab_ekpo
WHERE ebeln EQ itab_ekpo-ebeln
AND ebelp EQ itab_ekpo-ebelp.
IF NOT itab_zycit079[] IS INITIAL.
SELECT * FROM /pws/zycit078 INTO TABLE itab_zycit078
FOR ALL ENTRIES IN itab_zycit079
WHERE nrseqli EQ itab_zycit079-nrseqli
* >> Início da inclusão: FORM SELEC_APR
AND tpli EQ 'N'
* << Fim da inclusão
AND nrseqd NE space.
* >> Início da inclusão: FORM SELEC_APR
LOOP AT itab_zycit078 WHERE nrseqlisub NE space
OR nrseqd EQ space.
DELETE itab_zycit079
WHERE nrseqli EQ itab_zycit078-nrseqli.
ENDLOOP.
* << Fim da inclusão
ENDIF.
ENDIF.
...
...
SELECT * FROM /pws/zycit100
INTO TABLE itab_zycit100 "#EC CI_NOFIRST
FOR ALL ENTRIES IN itab_zycit376
WHERE ebeln EQ itab_zycit376-ebeln
AND ebelp EQ itab_zycit376-ebelp.
SELECT * FROM /pws/zycit079
INTO TABLE itab_zycit079 "#EC CI_NOFIRST
FOR ALL ENTRIES IN itab_zycit376
WHERE ebeln EQ itab_zycit376-ebeln
AND ebelp EQ itab_zycit376-ebelp.
* >> Início da inclusão: FORM SELEC_DES
IF sy-subrc EQ 0.
SELECT * FROM /pws/zycit078 INTO TABLE itab_zycit078
FOR ALL ENTRIES IN itab_zycit079
WHERE nrseqli EQ itab_zycit079-nrseqli
AND tpli EQ 'N'.
LOOP AT itab_zycit078 WHERE nrseqlisub NE space
OR nrseqd EQ space.
DELETE itab_zycit079 WHERE nrseqli EQ itab_zycit078-nrseqli.
ENDLOOP.
ENDIF.
* << Fim da inclusão
SELECT * FROM /pws/zycit279
INTO TABLE itab_zycit279 "#EC CI_NOFIRST
FOR ALL ENTRIES IN itab_zycit376
WHERE ebeln EQ itab_zycit376-ebeln
AND ebelp EQ itab_zycit376-ebelp.
SELECT * FROM /pws/zycit244 INTO TABLE itab_zycit244
FOR ALL ENTRIES IN itab_zycit376
WHERE nrseqd EQ itab_zycit376-nrseqd
AND status EQ 'D'.
IF NOT itab_zycit244[] IS INITIAL.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPT /PWS/SAPMZYCI020
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 498
Texto: (19 caracteres)
"Quantity Order/item"
Comprimento máximo: 50
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 498
Texto: (25 caracteres)
"Quantidade do pedido/item"
Comprimento máximo: 50
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 499
Texto: (47 caracteres)
"was modified after bound to Concessory act."
Comprimento máximo: 50
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 499
Texto: (50 caracteres)
"foi modificada após vinculação ao Ato Concessório."
Comprimento máximo: 50
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 500
Texto: (16 caracteres)
"Correct binding."
Comprimento máximo: 50
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 500
Texto: (20 caracteres)
"Corrigir vinculaçao."
Comprimento máximo: 50