Módulo: DOC. IMPORTAÇÃO
Funcionalidade: PLI
Data/Hora da Publicação: 29/09/2009 00:00:00
Data/Hora Última Alteração: 23/02/2011 09:25:49
Descrição da Nota: PROGRAMA ESTÁ PERMITINDO CRIAR PLI COM ITENS SEM SALDO.
Sintoma
Está permitindo criar PLI com saldo negativo.
Solução
Ajustado programa para efetuar o calculo do saldo do pedido mesmo que não esteja gravado na tabela
/pws/zycit092.
7.0
Produto:
Nota
Descrição
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 09110 Data: 29/09/2009 Hora: 14:13:16
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 09110
Categoria : Erro de Programa
Prioridade : Média
Versão PW.CE : 8.0
Pacote : 00001
Agrupamento : 00001
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
08318 - 00001 - 7.0 - 00009 - DESENVOLVIMENTO NACIONALIZAÇÃO DE ADMISSÃO TEMPORÁRIA
----------------------------------------------------------------------------------------------------
PROGRAMA ESTÁ PERMITINDO CRIAR PLI COM ITENS SEM SALDO.
----------------------------------------------------------------------------------------------------
Palavras Chave:
PLI - SALDO - NEGATIVO - LI - CONTROLE - /PWS/ZYCIT092
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCI020F01
REPS /PWS/MZYCI020F02
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI020F01
...
READ TABLE it_zycit092 WITH KEY ebeln = it_zycit079-ebeln
ebelp = it_zycit079-ebelp.
IF sy-subrc EQ 0.
UPDATE /pws/zycit092 SET menge = it_zycit079-menge
slqtde = it_zycit079-slqtde
meins = it_zycit079-meins
uebto = it_zycit079-uebto
uebtk = it_zycit079-uebtk
WHERE ebeln = it_zycit079-ebeln
AND ebelp = it_zycit079-ebelp.
* >> Início da inclusão: FORM SALVA_ITEM
IF sy-subrc NE 0.
INSERT /pws/zycit092 FROM it_zycit092.
ENDIF.
* << Fim da inclusão
ELSE.
MOVE: it_zycit079-ebeln TO /pws/zycit092-ebeln,
it_zycit079-ebelp TO /pws/zycit092-ebelp,
it_zycit079-menge TO /pws/zycit092-menge,
it_zycit079-slqtde TO /pws/zycit092-slqtde,
it_zycit079-meins TO /pws/zycit092-meins,
it_zycit079-uebto TO /pws/zycit092-uebto,
it_zycit079-uebtk TO /pws/zycit092-uebtk.
INSERT /pws/zycit092.
ENDIF.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI020F02
...
IF /pws/zycie078-nacion EQ 'X'.
EXIT.
ENDIF.
CLEAR : itab_ekpo.
REFRESH : itab_ekpo.
* >> Início da inclusão: FORM CARREGA_SALDO
LOOP AT it_zycit079.
READ TABLE it_zycit092 WITH KEY ebeln = it_zycit079-ebeln
ebelp = it_zycit079-ebelp.
IF sy-subrc NE 0.
MOVE: it_zycit079-ebeln TO it_zycit092-ebeln,
it_zycit079-ebelp TO it_zycit092-ebelp,
it_zycit079-menge TO it_zycit092-menge,
it_zycit079-slqtde TO it_zycit092-slqtde,
it_zycit079-meins TO it_zycit092-meins,
it_zycit079-uebto TO it_zycit092-uebto,
it_zycit079-uebtk TO it_zycit092-uebtk.
APPEND it_zycit092.
ENDIF.
ENDLOOP.
* << Fim da inclusão
IF NOT it_zycit092[] IS INITIAL.
DATA: v_qtdemb TYPE /pws/zycit079-qtd_iten,
v_slqtde TYPE /pws/zycit092-slqtde .
DATA: BEGIN OF itab_zycit079_util OCCURS 0.
INCLUDE STRUCTURE /pws/zycit079.
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
...