Módulo: DOC. IMPORTAÇÃO
Funcionalidade: LI
Data/Hora da Publicação: 27/09/2007 00:00:00
Data/Hora Última Alteração: 09/03/2010 10:39:39
Descrição da Nota: LI - LICENÇA DE IMPORTAÇÃO - SALDO DO PEDIDO
Sintoma
O saldo do pedido na pasta mercadoria - 1 - não está se alterando conforme a quantidade de
embarque.
Solução
Ajustar os cálculos do saldo do pedido na tela e nas Tabelas /PWS/ZYCIT079 e /PWS/ZYCIT092.
7.0
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 04842 Data: 27/09/2007 Hora: 14:07:20
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 04842
Categoria : Erro de Programa
Prioridade : Alta
Versão PW.CE : 7.0
Pacote : 00003
Agrupamento : 00014
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Descrição Breve
----------------------------------------------------------------------------------------------------
LI - LICENÇA DE IMPORTAÇÃO - SALDO DO PEDIDO
----------------------------------------------------------------------------------------------------
Palavras Chave:
SALDO DO PEDIDO; /PWS/ZYCIT079; /PWS/ZYCIT092; SLQTDE
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCI020F01
REPS /PWS/MZYCI020F02
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI020F01
...
IF it_zycit079-qtd_iten IS INITIAL AND
it_zycit079_aux-qtd_iten IS INITIAL AND
it_zycit079-noinitial NE 'X' AND it_zycit079-slqtde > 0.
it_zycit079-qtd_iten = it_zycit079-slqtde.
ELSEIF NOT it_zycit079_aux-qtd_iten IS INITIAL AND
it_zycit079-qtd_iten IS INITIAL.
it_zycit079-qtd_iten = 0.
it_zycit079-noinitial = 'X'.
ENDIF.
********SE ESSE AJUSTE HOUVER SIDO FEITO, RETIRAR ********
IF it_zycit079_aux-qtd_iten NE it_zycit079-qtd_iten.
* >> Início da exclusão: FORM ATUALIZA_ITENS
it_zycit079-slqtde = it_zycit079-slqtde +
( it_zycit079_aux-qtd_iten - it_zycit079-qtd_iten ).
* << Fim da exclusão
* >> Início da inclusão: FORM ATUALIZA_ITENS
it_zycit079-slqtde =
( it_zycit079-menge - it_zycit079-qtd_iten ).
* << Fim da inclusão
ENDIF.
********SE ESSE AJUSTE HOUVER SIDO FEITO, RETIRAR ********
******** DEVERÁ FICAR DA SEGUINTE FORMA ********
IF it_zycit079_aux-qtd_iten NE it_zycit079-qtd_iten.
it_zycit079-slqtde =
( it_zycit079-menge - it_zycit079-qtd_iten ).
ENDIF.
******** DEVERÁ FICAR DA SEGUINTE FORMA ********
v_valor_uebto = -1 * it_zycit079-uebto * it_zycit079-menge / 100
.
IF it_zycit079-slqtde < 0 .
IF ( NOT it_zycit079-uebto IS INITIAL AND
it_zycit079-slqtde < v_valor_uebto ) OR
( it_zycit079-uebto IS INITIAL AND
it_zycit079-uebtk NE 'X' ).
it_zycit079-slqtde = it_zycit079_aux-slqtde.
it_zycit079-qtd_iten = it_zycit079_aux-qtd_iten.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI020F02
...
DATA: END OF itab_zycit079_util.
SELECT ebeln ebelp menge bstyp FROM ekpo
INTO TABLE itab_ekpo
FOR ALL ENTRIES IN it_zycit092
WHERE ebeln EQ it_zycit092-ebeln
AND ebelp EQ it_zycit092-ebelp.
SELECT * FROM /pws/zycit079
INTO TABLE itab_zycit079_util
FOR ALL ENTRIES IN it_zycit092
WHERE ebeln EQ it_zycit092-ebeln
* >> Início da exclusão: FORM CARREGA_SALDO
AND ebelp EQ it_zycit092-ebelp
AND nrseqli NE /pws/zycie078-nrseqli.
* << Fim da exclusão
* >> Início da inclusão: FORM CARREGA_SALDO
AND ebelp EQ it_zycit092-ebelp.
* << Fim da inclusão
ENDIF.
********SE ESSE AJUSTE HOUVER SIDO FEITO, RETIRAR ********
* >> Início da exclusão: FORM CARREGA_SALDO
IF NOT itab_zycit079_util[] IS INITIAL.
* << Fim da exclusão
********SE ESSE AJUSTE HOUVER SIDO FEITO, RETIRAR ********
******** DEVERÁ FICAR DA SEGUINTE FORMA ********
* IF NOT itab_zycit079_util[] IS INITIAL.
******** DEVERÁ FICAR DA SEGUINTE FORMA ********
LOOP AT it_zycit092.
CLEAR: itab_ekpo, itab_zycit079_util.
READ TABLE itab_ekpo WITH KEY ebeln = it_zycit092-ebeln
ebelp = it_zycit092-ebelp.
IF sy-subrc EQ 0.
CLEAR v_qtdemb.
LOOP AT itab_zycit079_util WHERE ebeln EQ it_zycit092-ebeln
AND ebelp EQ it_zycit092-ebelp.
v_qtdemb = v_qtdemb + itab_zycit079_util-qtd_iten.
ENDLOOP.
ENDIF.
v_slqtde = itab_ekpo-menge - v_qtdemb.
it_zycit092-slqtde = v_slqtde.
UPDATE /pws/zycit092 SET slqtde = it_zycit092-slqtde
menge = itab_ekpo-menge
WHERE ebeln = it_zycit092-ebeln
AND ebelp = it_zycit092-ebelp .
MODIFY it_zycit092.
ENDLOOP.
********SE ESSE AJUSTE HOUVER SIDO FEITO, RETIRAR ********
* >> Início da exclusão: FORM CARREGA_SALDO
ENDIF.
* << Fim da exclusão
********SE ESSE AJUSTE HOUVER SIDO FEITO, RETIRAR ********
******** DEVERÁ FICAR DA SEGUINTE FORMA ********
* ENDIF.
******** DEVERÁ FICAR DA SEGUINTE FORMA ********
ENDFORM.
...