Módulo: DOC. IMPORTAÇÃO
Funcionalidade: PLI
Data/Hora da Publicação: 09/10/2006 00:00:00
Data/Hora Última Alteração: 20/06/2011 12:59:27
Descrição da Nota: SALDO PLI, BALANCE ORDER NA PLI E NO EMBARQUE
Sintoma
O sistema não está considerando a mesma informação para o saldo do pedido no embarque e na PLI, ao
alterar a quantidade do schedule e do pedido de compra ficava negativo o saldo na PLI.
Solução
Atualizar o saldo sempre que entra no pedido de compra.
6.0
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 02236 Data: 09/10/2006 Hora: 14:51:07
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 02236
Categoria : Erro de Programa
Prioridade : Média
Versão PW.CE : 6.0
Pacote : 00025
Agrupamento : 00134
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Descrição Breve
----------------------------------------------------------------------------------------------------
SALDO PLI, BALANCE ORDER NA PLI E NO EMBARQUE
----------------------------------------------------------------------------------------------------
Palavras Chave:
PLI - SALDO
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCI020F01
REPS /PWS/MZYCI020F02
REPS /PWS/MZYCI020I01
REPS /PWS/MZYCI020O01
REPS /PWS/MZYCI020X01
REPT /PWS/SAPMZYCI020
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI020F01
...
FROM /pws/zycit092
INTO TABLE it_zycit092
FOR ALL ENTRIES IN itab_itens
WHERE ebeln EQ itab_itens-ebeln
AND ebelp EQ itab_itens-ebelp.
* >> Início da inclusão: FORM SELECIONAR_ITENS
PERFORM carrega_saldo.
perform lock_pedido.
* << Fim da inclusão
ENDIF.
CLEAR itab_itens.
READ TABLE itab_itens INDEX 1 .
MOVE: itab_itens-lifnr TO v_lifnr,
itab_itens-waers TO v_waers,
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI020F02
...
ELSE.
IF sy-dynnr EQ '0001'.
LEAVE PROGRAM.
ELSE.
PERFORM unlock_record.
* >> Início da inclusão: FORM COMM_BACK
PERFORM unlock_pedido.
* << Fim da inclusão
v_tcode = sy-tcode.
LEAVE TO SCREEN '0001'.
ENDIF.
ENDIF.
ENDIF.
...
...
p_subrc = 4.
ELSE.
p_subrc = 0.
ENDIF.
ENDFORM.
* >> Início da inclusão:
FORM carrega_dados.
IF v_tcode EQ '/PWS/ZYCI020_A' OR
v_tcode EQ '/PWS/ZYCI020_E'.
SELECT SINGLE * FROM /pws/zycit078
INTO /pws/zycie078
WHERE nrseqli EQ /pws/zycie078-nrseqli
AND tpli EQ 'N'
AND flagpli NE 'X'.
IF sy-subrc NE 0.
MESSAGE w015 WITH text-001.
EXIT.
ENDIF.
IF NOT /pws/zycie078-nrseqd IS INITIAL.
v_salvo_drawback = 'S'.
IF it_log[] IS INITIAL.
v_verficado = 'S'.
ENDIF.
ELSE.
CLEAR v_salvo_drawback.
ENDIF.
IF /pws/zycie078-tpli EQ 'N'.
CLEAR /pws/zycie078-tpni.
ENDIF.
MOVE: /pws/zycie078 TO wa_zycit078.
v_cgc = /pws/zycie078-cnpj.
WRITE: v_cgc TO v_cnpj.
PERFORM: mask,
mask2.
SELECT *
FROM /pws/zycit079
INTO TABLE it_zycit079
WHERE nrseqli EQ /pws/zycie078-nrseqli
AND tpli = 'N'.
CLEAR: /pws/zycie078-ntgew.
LOOP AT it_zycit079.
/pws/zycie078-ntgew = /pws/zycie078-ntgew + it_zycit079-ntgew.
ENDLOOP.
PERFORM verifica_vinculacao.
IF NOT it_zycit079[] IS INITIAL.
SELECT *
FROM /pws/zycit092
INTO TABLE it_zycit092
FOR ALL ENTRIES IN it_zycit079
WHERE ebeln EQ it_zycit079-ebeln
AND ebelp EQ it_zycit079-ebelp.
PERFORM carrega_saldo.
PERFORM lock_pedido.
ENDIF.
LOOP AT it_zycit079.
READ TABLE it_zycit092 WITH KEY ebeln = it_zycit079-ebeln
ebelp = it_zycit079-ebelp.
IF sy-subrc EQ 0.
MOVE: it_zycit092-slqtde TO it_zycit079-slqtde,
it_zycit092-menge TO it_zycit079-menge.
MODIFY it_zycit079.
ENDIF.
ENDLOOP.
MOVE it_zycit079[] TO it_zycit079_aux2[].
IF NOT /pws/zycie078-nrseqd IS INITIAL.
MOVE it_zycit079[] TO it_zycit079_aux4[].
ENDIF.
LOOP AT it_zycit079.
MOVE-CORRESPONDING it_zycit079 TO /pws/zycie079.
ENDLOOP.
IF /pws/zycie078-fabric EQ '1'.
SELECT SINGLE * FROM /pws/zycit080
INTO /pws/zycie080
WHERE nrseqli = /pws/zycie078-nrseqli
AND tipoforn = 'E'.
IF sy-subrc EQ 0.
MOVE: /pws/zycie080 TO wa_zycit080_aux,
/pws/zycie080-lifnr TO v_forn.
ENDIF.
ELSEIF /pws/zycie078-fabric EQ '2'.
SELECT SINGLE * FROM /pws/zycit080
INTO /pws/zycie080c
WHERE nrseqli = /pws/zycie078-nrseqli
AND tipoforn = 'E'.
IF sy-subrc EQ 0.
MOVE: /pws/zycie080c TO wa_zycit080_aux4,
/pws/zycie080c-lifnr TO v_forn..
ENDIF.
SELECT SINGLE * FROM /pws/zycit080
INTO /pws/zycie080a
WHERE nrseqli = /pws/zycie078-nrseqli
AND tipoforn = 'F'.
IF sy-subrc EQ 0.
MOVE: /pws/zycie080a TO wa_zycit080_aux2,
/pws/zycie080a-lifnr TO v_forn2.
ENDIF.
ELSEIF /pws/zycie078-fabric EQ '3'.
SELECT SINGLE * FROM /pws/zycit080
INTO /pws/zycie080b
WHERE nrseqli = /pws/zycie078-nrseqli
AND tipoforn = 'E'.
IF sy-subrc EQ 0.
MOVE: /pws/zycie080b TO wa_zycit080_aux3,
/pws/zycie080b-lifnr TO v_forn.
ENDIF.
ENDIF.
SELECT * FROM /pws/zycit081
INTO TABLE it_zycit081
WHERE nrseqli EQ /pws/zycie078-nrseqli
AND tpli EQ 'N'.
MOVE it_zycit081[] TO it_zycit081_aux[].
LOOP AT it_zycit081.
MOVE-CORRESPONDING it_zycit081 TO /pws/zycie081.
ENDLOOP.
SELECT * FROM /pws/zycit109
INTO TABLE it_anu2
WHERE nrseqli EQ /pws/zycie078-nrseqli
AND tpli EQ 'N'..
MOVE it_anu2[] TO it_anu2_aux[].
LOOP AT it_anu2.
MOVE-CORRESPONDING it_anu2 TO /pws/zycie109.
ENDLOOP.
PERFORM carrega_compl_salvo_001.
ELSEIF v_tcode EQ '/PWS/ZYCI020_N' OR
v_tcode EQ '/PWS/ZYCI020_R'.
SELECT SINGLE * FROM /pws/zycit078
INTO /pws/zycie078
WHERE nrseqli = /pws/zycie078-nrseqli
AND tpli = 'S'.
IF sy-subrc NE 0.
MESSAGE w015 WITH text-001.
EXIT.
ENDIF.
MOVE: /pws/zycie078 TO wa_zycit078.
v_cgc = /pws/zycie078-cnpj.
WRITE: v_cgc TO v_cnpj.
SELECT *
FROM /pws/zycit079
INTO TABLE it_zycit079
WHERE nrseqli EQ /pws/zycie078-nrseqli
AND tpli = 'S'.
IF NOT it_zycit079[] IS INITIAL.
SELECT * FROM /pws/zycit092
INTO TABLE it_zycit092
FOR ALL ENTRIES IN it_zycit079
WHERE ebeln EQ it_zycit079-ebeln
AND ebelp EQ it_zycit079-ebelp.
PERFORM carrega_saldo.
PERFORM lock_pedido.
ENDIF.
LOOP AT it_zycit079.
READ TABLE it_zycit092 WITH KEY ebeln = it_zycit079-ebeln
ebelp = it_zycit079-ebelp.
MOVE: it_zycit092-slqtde TO it_zycit079-slqtde,
it_zycit092-menge TO it_zycit079-menge.
MODIFY it_zycit079.
ENDLOOP.
MOVE it_zycit079[] TO it_zycit079_aux2[].
LOOP AT it_zycit079.
MOVE-CORRESPONDING it_zycit079 TO /pws/zycie079.
ENDLOOP.
SELECT * FROM /pws/zycit081
INTO TABLE it_zycit081
WHERE nrseqli EQ /pws/zycie078-nrseqli
AND tpli = 'S'.
MOVE it_zycit081[] TO it_zycit081_aux[].
LOOP AT it_zycit081.
MOVE-CORRESPONDING it_zycit081 TO /pws/zycie081.
ENDLOOP.
SELECT * FROM /pws/zycit109
INTO TABLE it_anu2
WHERE nrseqli EQ /pws/zycie078-nrseqli
AND tpli EQ 'S'.
MOVE it_anu2[] TO it_anu2_aux[].
LOOP AT it_anu2.
MOVE-CORRESPONDING it_anu2 TO /pws/zycie109.
ENDLOOP.
PERFORM carrega_compl.
ENDIF.
PERFORM lock_record.
IF NOT /pws/zycie078-nrseqlisub IS INITIAL.
IF v_tcode EQ '/PWS/ZYCI020_A'.
v_tcode = '/PWS/ZYCI020_E'.
MESSAGE s015 WITH text-029.
ELSEIF v_tcode EQ '/PWS/ZYCI020_N'.
v_tcode = '/PWS/ZYCI020_R'.
MESSAGE s015 WITH text-030.
ENDIF.
ENDIF.
IF v_tcode = '/PWS/ZYCI020_A'.
IF /pws/zycie078-status EQ 'INA'.
v_tcode = '/PWS/ZYCI020_E'.
MESSAGE s015 WITH text-043.
PERFORM authority_empresa.
CALL SCREEN '0100'.
ELSE.
IF /pws/zycie078-status = 'CAN'.
v_tcode = '/PWS/ZYCI020_E'.
MESSAGE s015 WITH text-036.
PERFORM authority_empresa.
CALL SCREEN '0100'.
ELSE.
PERFORM authority_empresa.
CALL SCREEN '0100'.
ENDIF.
ENDIF.
ELSEIF v_tcode = '/PWS/ZYCI020_E'.
IF /pws/zycie078-status = 'CAN'.
MESSAGE s015 WITH text-036.
ENDIF.
PERFORM authority_empresa.
CALL SCREEN '0100'.
ELSEIF v_tcode = '/PWS/ZYCI020_N'.
IF /pws/zycie078-status EQ 'INA'.
v_tcode = '/PWS/ZYCI020_R'.
MESSAGE s015 WITH text-044.
PERFORM authority_empresa.
CALL SCREEN '0400'.
ELSE.
IF /pws/zycie078-status = 'CAN'.
v_tcode = '/PWS/ZYCI020_R'.
MESSAGE s015 WITH text-037.
PERFORM authority_empresa.
CALL SCREEN '0400'.
ELSE.
PERFORM authority_empresa.
CALL SCREEN '0400'.
ENDIF.
ENDIF.
ELSEIF v_tcode EQ '/PWS/ZYCI020_R'.
IF /pws/zycie078-status = 'CAN'.
MESSAGE s015 WITH text-037.
ENDIF.
PERFORM authority_empresa.
CALL SCREEN '0400'.
ENDIF.
ENDFORM.
FORM carrega_saldo.
CLEAR : itab_ekpo.
REFRESH : itab_ekpo.
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
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
AND ebelp EQ it_zycit092-ebelp
AND nrseqli NE /pws/zycie078-nrseqli.
ENDIF.
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.
ENDFORM.
FORM lock_pedido.
data: v_msg .
IF v_tcode NE '/PWS/ZYCI020_E' OR
v_tcode EQ '/PWS/ZYCI020_L' OR
v_tcode EQ '/PWS/ZYCI020_R' .
LOOP AT itab_ekpo.
CALL FUNCTION 'ENQUEUE_EMEKKOE'
EXPORTING
mode_ekko = 'E'
mode_ekpo = 'E'
mandt = sy-mandt
ebeln = itab_ekpo-ebeln
ebelp = itab_ekpo-ebelp
_wait = ' '
EXCEPTIONS
foreign_lock = 1
system_failure = 2
OTHERS = 3.
IF sy-subrc EQ '1'.
IF v_tcode EQ '/PWS/ZYCI020_C' OR
v_tcode EQ '/PWS/ZYCI020_A'.
v_msg = 'X'.
v_tcode = '/PWS/ZYCI020_E'.
ELSEIF v_tcode EQ '/PWS/ZYCI020_I' OR
v_tcode EQ '/PWS/ZYCI020_G'.
v_msg = 'X'.
v_tcode = '/PWS/ZYCI020_L'.
ELSEIF v_tcode EQ '/PWS/ZYCI020_P' OR
v_tcode EQ '/PWS/ZYCI020_N'.
v_msg = 'X'.
v_tcode = '/PWS/ZYCI020_R'.
ENDIF.
ENDIF.
ENDLOOP.
if v_msg = 'X'.
message I015 with text-443 text-444.
endif.
CLEAR : itab_ekpo.
REFRESH : itab_ekpo.
ENDIF.
ENDFORM.
FORM unlock_pedido.
IF v_tcode NE '/PWS/ZYCI020_E' OR
v_tcode EQ '/PWS/ZYCI020_L' OR
v_tcode EQ '/PWS/ZYCI020_R' .
LOOP AT it_zycit079.
CALL FUNCTION 'DEQUEUE_EMEKKOE'
EXPORTING
mode_ekko = 'E'
mode_ekpo = 'E'
mandt = sy-mandt
ebeln = itab_ekpo-ebeln
ebelp = itab_ekpo-ebelp.
ENDLOOP.
ENDIF.
ENDFORM.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI020I01
...
MODULE user_command_0001 INPUT.
WRITE /pws/zycie078-nrseqli TO /pws/zycie078-nrseqli RIGHT-JUSTIFIED.
OVERLAY /pws/zycie078-nrseqli WITH '0000000000'.
CASE okcode.
WHEN 'ENTE'.
* >> Início da exclusão: MODULE USER_COMMAND_0001
IF v_tcode EQ '/PWS/ZYCI020_A' OR
v_tcode EQ '/PWS/ZYCI020_E'.
* << Fim da exclusão
* >> Início da inclusão: MODULE USER_COMMAND_0001
PERFORM CARREGA_DADOS.
* << Fim da inclusão
* >> Início da exclusão: MODULE USER_COMMAND_0001
SELECT SINGLE * FROM /pws/zycit078
INTO /pws/zycie078
WHERE nrseqli EQ /pws/zycie078-nrseqli
AND tpli EQ 'N'
AND flagpli NE 'X'.
IF sy-subrc NE 0.
MESSAGE w015 WITH text-001.
EXIT.
ENDIF.
IF NOT /pws/zycie078-nrseqd IS INITIAL.
v_salvo_drawback = 'S'.
IF it_log[] IS INITIAL.
v_verficado = 'S'.
ENDIF.
ELSE.
CLEAR v_salvo_drawback.
ENDIF.
IF /pws/zycie078-tpli EQ 'N'.
CLEAR /pws/zycie078-tpni.
ENDIF.
MOVE: /pws/zycie078 TO wa_zycit078.
v_cgc = /pws/zycie078-cnpj.
WRITE: v_cgc TO v_cnpj.
PERFORM: mask,
mask2.
SELECT *
FROM /pws/zycit079
INTO TABLE it_zycit079
WHERE nrseqli EQ /pws/zycie078-nrseqli
AND tpli = 'N'.
CLEAR: /pws/zycie078-ntgew.
LOOP AT it_zycit079.
/pws/zycie078-ntgew = /pws/zycie078-ntgew + it_zycit079-ntgew.
ENDLOOP.
PERFORM verifica_vinculacao.
IF NOT it_zycit079[] IS INITIAL.
SELECT *
FROM /pws/zycit092
INTO TABLE it_zycit092
FOR ALL ENTRIES IN it_zycit079
WHERE ebeln EQ it_zycit079-ebeln
AND ebelp EQ it_zycit079-ebelp.
ENDIF.
LOOP AT it_zycit079.
READ TABLE it_zycit092 WITH KEY ebeln = it_zycit079-ebeln
ebelp = it_zycit079-ebelp.
IF sy-subrc EQ 0.
MOVE: it_zycit092-slqtde TO it_zycit079-slqtde,
it_zycit092-menge TO it_zycit079-menge.
MODIFY it_zycit079.
ENDIF.
ENDLOOP.
MOVE it_zycit079[] TO it_zycit079_aux2[].
IF NOT /pws/zycie078-nrseqd IS INITIAL.
MOVE it_zycit079[] TO it_zycit079_aux4[].
ENDIF.
LOOP AT it_zycit079.
MOVE-CORRESPONDING it_zycit079 TO /pws/zycie079.
ENDLOOP.
IF /pws/zycie078-fabric EQ '1'.
SELECT SINGLE * FROM /pws/zycit080
INTO /pws/zycie080
WHERE nrseqli = /pws/zycie078-nrseqli
AND tipoforn = 'E'.
IF sy-subrc EQ 0.
MOVE: /pws/zycie080 TO wa_zycit080_aux,
/pws/zycie080-lifnr TO v_forn.
ENDIF.
ELSEIF /pws/zycie078-fabric EQ '2'.
SELECT SINGLE * FROM /pws/zycit080
INTO /pws/zycie080c
WHERE nrseqli = /pws/zycie078-nrseqli
AND tipoforn = 'E'.
IF sy-subrc EQ 0.
MOVE: /pws/zycie080c TO wa_zycit080_aux4,
/pws/zycie080c-lifnr TO v_forn..
ENDIF.
SELECT SINGLE * FROM /pws/zycit080
INTO /pws/zycie080a
WHERE nrseqli = /pws/zycie078-nrseqli
AND tipoforn = 'F'.
IF sy-subrc EQ 0.
MOVE: /pws/zycie080a TO wa_zycit080_aux2,
/pws/zycie080a-lifnr TO v_forn2.
ENDIF.
ELSEIF /pws/zycie078-fabric EQ '3'.
SELECT SINGLE * FROM /pws/zycit080
INTO /pws/zycie080b
WHERE nrseqli = /pws/zycie078-nrseqli
AND tipoforn = 'E'.
IF sy-subrc EQ 0.
MOVE: /pws/zycie080b TO wa_zycit080_aux3,
/pws/zycie080b-lifnr TO v_forn.
ENDIF.
ENDIF.
SELECT * FROM /pws/zycit081
INTO TABLE it_zycit081
WHERE nrseqli EQ /pws/zycie078-nrseqli
AND tpli EQ 'N'.
MOVE it_zycit081[] TO it_zycit081_aux[].
LOOP AT it_zycit081.
MOVE-CORRESPONDING it_zycit081 TO /pws/zycie081.
ENDLOOP.
SELECT * FROM /pws/zycit109
INTO TABLE it_anu2
WHERE nrseqli EQ /pws/zycie078-nrseqli
AND tpli EQ 'N'..
MOVE it_anu2[] TO it_anu2_aux[].
LOOP AT it_anu2.
MOVE-CORRESPONDING it_anu2 TO /pws/zycie109.
ENDLOOP.
PERFORM carrega_compl_salvo_001.
ELSEIF v_tcode EQ '/PWS/ZYCI020_N' OR
v_tcode EQ '/PWS/ZYCI020_R'.
SELECT SINGLE * FROM /pws/zycit078
INTO /pws/zycie078
WHERE nrseqli = /pws/zycie078-nrseqli
AND tpli = 'S'.
IF sy-subrc NE 0.
MESSAGE w015 WITH text-001.
EXIT.
ENDIF.
MOVE: /pws/zycie078 TO wa_zycit078.
v_cgc = /pws/zycie078-cnpj.
WRITE: v_cgc TO v_cnpj.
SELECT *
FROM /pws/zycit079
INTO TABLE it_zycit079
WHERE nrseqli EQ /pws/zycie078-nrseqli
AND tpli = 'S'.
IF NOT it_zycit079[] IS INITIAL.
SELECT * FROM /pws/zycit092
INTO TABLE it_zycit092
FOR ALL ENTRIES IN it_zycit079
WHERE ebeln EQ it_zycit079-ebeln
AND ebelp EQ it_zycit079-ebelp.
ENDIF.
LOOP AT it_zycit079.
READ TABLE it_zycit092 WITH KEY ebeln = it_zycit079-ebeln
ebelp = it_zycit079-ebelp.
MOVE: it_zycit092-slqtde TO it_zycit079-slqtde,
it_zycit092-menge TO it_zycit079-menge.
MODIFY it_zycit079.
ENDLOOP.
MOVE it_zycit079[] TO it_zycit079_aux2[].
LOOP AT it_zycit079.
MOVE-CORRESPONDING it_zycit079 TO /pws/zycie079.
ENDLOOP.
SELECT * FROM /pws/zycit081
INTO TABLE it_zycit081
WHERE nrseqli EQ /pws/zycie078-nrseqli
AND tpli = 'S'.
MOVE it_zycit081[] TO it_zycit081_aux[].
LOOP AT it_zycit081.
MOVE-CORRESPONDING it_zycit081 TO /pws/zycie081.
ENDLOOP.
SELECT * FROM /pws/zycit109
INTO TABLE it_anu2
WHERE nrseqli EQ /pws/zycie078-nrseqli
AND tpli EQ 'S'.
MOVE it_anu2[] TO it_anu2_aux[].
LOOP AT it_anu2.
MOVE-CORRESPONDING it_anu2 TO /pws/zycie109.
ENDLOOP.
PERFORM carrega_compl.
ENDIF.
PERFORM lock_record.
IF NOT /pws/zycie078-nrseqlisub IS INITIAL.
IF v_tcode EQ '/PWS/ZYCI020_A'.
v_tcode = '/PWS/ZYCI020_E'.
MESSAGE s015 WITH text-029.
ELSEIF v_tcode EQ '/PWS/ZYCI020_N'.
v_tcode = '/PWS/ZYCI020_R'.
MESSAGE s015 WITH text-030.
ENDIF.
ENDIF.
IF v_tcode = '/PWS/ZYCI020_A'.
IF /pws/zycie078-status EQ 'INA'.
v_tcode = '/PWS/ZYCI020_E'.
MESSAGE s015 WITH text-043.
PERFORM authority_empresa.
CALL SCREEN '0100'.
ELSE.
IF /pws/zycie078-status = 'CAN'.
v_tcode = '/PWS/ZYCI020_E'.
MESSAGE s015 WITH text-036.
PERFORM authority_empresa.
CALL SCREEN '0100'.
ELSE.
PERFORM authority_empresa.
CALL SCREEN '0100'.
ENDIF.
ENDIF.
ELSEIF v_tcode = '/PWS/ZYCI020_E'.
IF /pws/zycie078-status = 'CAN'.
MESSAGE s015 WITH text-036.
ENDIF.
PERFORM authority_empresa.
CALL SCREEN '0100'.
ELSEIF v_tcode = '/PWS/ZYCI020_N'.
IF /pws/zycie078-status EQ 'INA'.
v_tcode = '/PWS/ZYCI020_R'.
MESSAGE s015 WITH text-044.
PERFORM authority_empresa.
CALL SCREEN '0400'.
ELSE.
IF /pws/zycie078-status = 'CAN'.
v_tcode = '/PWS/ZYCI020_R'.
MESSAGE s015 WITH text-037.
PERFORM authority_empresa.
CALL SCREEN '0400'.
ELSE.
PERFORM authority_empresa.
CALL SCREEN '0400'.
ENDIF.
ENDIF.
ELSEIF v_tcode EQ '/PWS/ZYCI020_R'.
IF /pws/zycie078-status = 'CAN'.
MESSAGE s015 WITH text-037.
ENDIF.
PERFORM authority_empresa.
CALL SCREEN '0400'.
ENDIF.
* << Fim da exclusão
WHEN 'BACK' OR 'EXIT'.
LEAVE PROGRAM.
ENDCASE.
ENDMODULE.
MODULE altera_it_zycit079 INPUT.
...
...
IF NOT editcontainer2 IS INITIAL.
CLEAR: editor2.
CALL METHOD editcontainer2->free.
ENDIF.
PERFORM unlock_record.
* >> Início da inclusão: MODULE USER_COMMAND_EXIT
perform unlock_pedido.
* << Fim da inclusão
LEAVE PROGRAM.
ENDIF.
ENDCASE.
ENDMODULE.
MODULE user_command_0200 INPUT.
...
...
SELECT * FROM /pws/zycit092
INTO TABLE it_zycit092
FOR ALL ENTRIES IN it_zycit079
WHERE ebeln EQ it_zycit079-ebeln
AND ebelp EQ it_zycit079-ebelp.
* >> Início da inclusão: MODULE USER_COMMAND_0002
PERFORM carrega_saldo.
perform lock_pedido.
* << Fim da inclusão
ENDIF.
LOOP AT it_zycit079.
READ TABLE it_zycit092 WITH KEY ebeln = it_zycit079-ebeln
ebelp = it_zycit079-ebelp.
IF sy-subrc EQ 0.
...
...
IF NOT editcontainer2 IS INITIAL.
CLEAR: editor2.
CALL METHOD editcontainer2->free.
ENDIF.
PERFORM unlock_record.
* >> Início da inclusão: MODULE USER_COMMAND_0500
perform unlock_pedido.
* << Fim da inclusão
LEAVE TO SCREEN '0002'.
ENDIF.
ENDIF.
ENDIF.
CLEAR v_resp_save.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI020O01
...
FROM /pws/zycit092
INTO TABLE it_zycit092
FOR ALL ENTRIES IN it_zycit079
WHERE ebeln EQ it_zycit079-ebeln
AND ebelp EQ it_zycit079-ebelp.
* >> Início da inclusão: MODULE LOAD_DATA
PERFORM carrega_saldo.
perform lock_pedido.
* << Fim da inclusão
ENDIF.
PERFORM: load_saldo,
load_urf,
load_pais,
load_user,
...
...
FROM /pws/zycit092
INTO TABLE it_zycit092
FOR ALL ENTRIES IN it_zycit079
WHERE ebeln EQ it_zycit079-ebeln
AND ebelp EQ it_zycit079-ebelp.
* >> Início da inclusão: MODULE LOAD_DATA_PLI
PERFORM carrega_saldo.
perform lock_pedido.
* << Fim da inclusão
ENDIF.
PERFORM: load_saldo,
load_cnpj,
load_user,
load_read_txt,
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI020X01
...
/pws/zycit219,
/pws/zycit242,
/pws/zycit338,
/pws/zycit431,
/pws/zycie376.
* >> Início da inclusão:
DATA: BEGIN OF COMMON PART a.
* << Fim da inclusão
DATA: BEGIN OF it_code OCCURS 15,
fcode LIKE rsmpe-func,
END OF it_code.
DATA: BEGIN OF itab_zyglt100 OCCURS 10.
INCLUDE STRUCTURE /pws/zyglt100.
...
...
END OF it_precritica .
DATA: itab_zycit263 LIKE /pws/zycit263 OCCURS 0 WITH HEADER LINE.
DATA: BEGIN OF itab_steuc OCCURS 0,
steuc LIKE /pws/zycit079-steuc1,
END OF itab_steuc.
* >> Início da inclusão:
data: begin of itab_ekpo occurs 0.
data: ebeln type ekpo-ebeln,
ebelp type ekpo-ebelp,
menge type ekpo-menge,
bstyp type ekpo-bstyp.
data: end of itab_ekpo.
DATA: END OF COMMON PART.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPT /PWS/SAPMZYCI020
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 443
Texto: (31 caracteres)
"The order is already been used."
Comprimento máximo: 44
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 443
Texto: (32 caracteres)
"Pedido já está sendo processado!"
Comprimento máximo: 44
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 444
Texto: (24 caracteres)
"Only allowed exhibition."
Comprimento máximo: 27
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 444
Texto: (27 caracteres)
"Permitida somente exibição."
Comprimento máximo: 27