Módulo: DOC. IMPORTAÇÃO
Funcionalidade: Recebimento
Data/Hora da Publicação: 22/08/2011 00:00:00
Data/Hora Última Alteração: 30/07/2012 13:40:04
Descrição da Nota: INBOUND DELIVERY - DESENVOLVIMENTO ADICIONAL
Sintoma
Quando o pedido possui controle de confirmação não é possível fazer o recebimento físico (MIGO)
através do Pw.Ce.
Solução
Ajuste no recebimento físico (MIGO) para incluir o inbound delivery.
9.0
Produto:
Nota
Descrição
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 11403 Data: 22/08/2011 Hora: 13:32:41
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 11403
Categoria : Melhoria
Prioridade : Baixa
Versão PW.CE : 8.0
Pacote : 00008
Agrupamento : 00083
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
11355 - 00001 - 8.0 - 00008 - TRATAMENTO DE CAMPOS DE VENDA NA MR22
11356 - 00002 - 8.0 - 00008 - VERIFICA CATEGORIA DE CERTIFICADO NO PEDIDO DE COMPRA
----------------------------------------------------------------------------------------------------
INBOUND DELIVERY - DESENVOLVIMENTO ADICIONAL
----------------------------------------------------------------------------------------------------
Palavras Chave:
INBOUND DELIVERY - RECEBIMENTO - FORNECIMENTO
----------------------------------------------------------------------------------------------------
Objetos da nota:
CUAD /PWS/SAPMZYCI017
CUAD /PWS/SAPMZYCI080
DYNP /PWS/SAPMZYCI017 0114
DYNP /PWS/SAPMZYCI080 0114
FUNC /PWS/ZYCI_INBOUND
FUNC /PWS/ZYCI_INBOUND_DELIVERY
FUNC /PWS/ZYCI_TRANSACAO_MIGO
REPS /PWS/LZYCIGF2UXX
REPS /PWS/MZYCI017F01
REPS /PWS/MZYCI017I01
REPS /PWS/MZYCI017O01
REPS /PWS/MZYCI017OO
REPS /PWS/MZYCI017TOP
REPS /PWS/MZYCI017X01
REPS /PWS/MZYCI080F01
REPS /PWS/MZYCI080I01
REPS /PWS/MZYCI080O01
REPS /PWS/MZYCI080TOP
REPS /PWS/MZYCI080X01
REPT /PWS/SAPLZYCIGF2
REPT /PWS/SAPMZYCI017
REPT /PWS/SAPMZYCI080
TABL /PWS/ZYCIE511
TABL /PWS/ZYCIT511
----------------------------------------------------------------------------------------------------
Modificações efetuadas em CUAD /PWS/SAPMZYCI017
CRIAR O BOTÃO INBOUND DELIVERY NOS STATUS 0100 E 0200
STATUS: 0100 E 0200
CRIAR UM BOTÃO NA BARRA DE BOTÕES: INBOUND
Código de função INBOUND
Texto de função Inbound Delivery
Nome de ícone ICON_DELIVERY
TECLAS DE FUNÇÃO:
Shift-F12 INBOUND Inbound Delivery
----------------------------------------------------------------------------------------------------
Modificações efetuadas em CUAD /PWS/SAPMZYCI080
CRIAR O BOTÃO INBOUND DELIVERY NO STATUS 0200
STATUS: 0200
CRIAR UM BOTÃO NA BARRA DE BOTÕES: INBOUND
Código de função INBOUND
Texto de função Inbound Delivery
Nome de ícone ICON_DELIVERY
TECLAS DE FUNÇÃO:
Shift-F12 INBOUND Inbound Delivery
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DYNP /PWS/SAPMZYCI017 0114
INCLUIR CX.DIÁLOGO 0114
Descrição Inbound Delivery
Tela seguinte 0114
Altura atual (linhas) 15
Largura atual (colunas) 24
INCLUIR CONTROLE DE TABELA "TC_INB"
Altura 13
Comprimento Visível 20
Linha 1
Coluna 2
INCLUIR TEXTO "/PWS/ZYCIE511-INBOUND_DELIVERY" em tbl.contr./tabstr.
Altura 12
Comprimento Visível 15
Linha 1
Coluna 1
Formato CHAR
Texto Fornecimento
INCLUIR CAMPO TEXTO "/PWS/ZYCIE511-INBOUND_DELIVERY" em tbl.contr./tabst
Altura 12
Comprimento Visível 10
Linha 1
Coluna 1
Formato CHAR
Linhas mínimas 10
Texto __________
Código função
INCLUIR BOTÃO "%#AUTOTEXT001"
Altura 6
Comprimento Visível 10
Linha 14
Coluna 2
Formato CHAR
Texto @2L@
Código função OKAY
INCLUIR BOTÃO "%#AUTOTEXT002"
Altura 6
Comprimento Visível 11
Linha 14
Coluna 9
Formato CHAR
Texto @0W@
Código função CANCEL
INCLUIR BOTÃO "%#AUTOTEXT003"
Altura 6
Comprimento Visível 11
Linha 14
Coluna 16
Formato CHAR
Texto @11@
Código função DEL
INCLUIR OKCODE ""
MODIFICAR LÓGICA DE PROCESSAMENTO TELA 0114
* >> Início da inclusão:
PROCESS BEFORE OUTPUT.
MODULE status_0114.
LOOP AT itab_zycit511 WITH CONTROL tc_inb
CURSOR tc_inb-current_line.
MODULE alimenta_zycie511.
ENDLOOP.
PROCESS AFTER INPUT.
LOOP AT itab_zycit511.
MODULE alimenta_itab_zycit511.
ENDLOOP.
MODULE user_command_0114.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DYNP /PWS/SAPMZYCI080 0114
INCLUIR CX.DIÁLOGO 0114
Descrição Inbound Delivery
Tela seguinte 0114
Altura atual (linhas) 15
Largura atual (colunas) 24
INCLUIR CONTROLE DE TABELA "TC_INB"
Altura 13
Comprimento Visível 20
Linha 1
Coluna 2
INCLUIR TEXTO "/PWS/ZYCIE511-INBOUND_DELIVERY" em tbl.contr./tabstr.
Altura 12
Comprimento Visível 15
Linha 1
Coluna 1
Formato CHAR
Texto Fornecimento
INCLUIR CAMPO TEXTO "/PWS/ZYCIE511-INBOUND_DELIVERY" em tbl.contr./tabst
Altura 12
Comprimento Visível 10
Linha 1
Coluna 1
Formato CHAR
Linhas mínimas 10
Texto __________
Código função
INCLUIR BOTÃO "%#AUTOTEXT001"
Altura 6
Comprimento Visível 10
Linha 14
Coluna 2
Formato CHAR
Texto @2L@
Código função OKAY
INCLUIR BOTÃO "%#AUTOTEXT002"
Altura 6
Comprimento Visível 11
Linha 14
Coluna 9
Formato CHAR
Texto @0W@
Código função CANCEL
INCLUIR BOTÃO "%#AUTOTEXT003"
Altura 6
Comprimento Visível 11
Linha 14
Coluna 16
Formato CHAR
Texto @11@
Código função DEL
INCLUIR OKCODE ""
MODIFICAR LÓGICA DE PROCESSAMENTO TELA 0114
* >> Início da inclusão:
PROCESS BEFORE OUTPUT.
MODULE status_0114.
LOOP AT itab_zycit511 WITH CONTROL tc_inb
CURSOR tc_inb-current_line.
MODULE alimenta_zycie511.
ENDLOOP.
PROCESS AFTER INPUT.
LOOP AT itab_zycit511.
MODULE alimenta_itab_zycit511.
ENDLOOP.
MODULE user_command_0114.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYCI_INBOUND
CRIAR MÓDULO DE FUNÇÃO: /PWS/ZYCI_INBOUND
CARACTERÍSTICAS
CLASSIFICAÇÃO:
GRUPO DE FUNÇÕES: /PWS/ZYCIGF2
TEXTO BREVE: Inbound Delivery
TIPO DE EXECUÇÃO:
(X) - MÓDULO DE FUNÇÃO NORMAL
(X) - INÍCIO IMEDIATO
EXPORTAÇÃO:
NOME PARAM. ATRIB. TIPO REFERÊNCIA
INBOUND TYPE CHAR1
TABELAS:
NOME PARAM. ATRIB.
T_EKPO LIKE EKPO
* >> Início da inclusão:
FUNCTION /pws/zyci_inbound.
DATA: BEGIN OF lt_ekpo OCCURS 0,
ebeln TYPE ekpo-ebeln,
ebelp TYPE ekpo-ebelp,
bstae TYPE ekpo-bstae,
END OF lt_ekpo.
DATA: BEGIN OF lt_t163g OCCURS 0,
bstae TYPE t163g-bstae,
blfdn TYPE t163g-blfdn,
wezuo TYPE t163g-wezuo,
END OF lt_t163g.
CLEAR: inbound, lt_ekpo[], lt_ekpo, lt_t163g[], lt_t163g.
IF NOT t_ekpo[] IS INITIAL.
SELECT ebeln ebelp bstae
FROM ekpo
INTO TABLE lt_ekpo
FOR ALL ENTRIES IN t_ekpo
WHERE ebeln = t_ekpo-ebeln
AND ebelp = t_ekpo-ebelp.
DELETE lt_ekpo WHERE bstae = ' '.
IF NOT lt_ekpo[] IS INITIAL.
SELECT bstae blfdn wezuo
FROM t163g
INTO TABLE lt_t163g
FOR ALL ENTRIES IN lt_ekpo
WHERE bstae = lt_ekpo-bstae.
DELETE lt_t163g WHERE wezuo = ' '.
IF NOT lt_t163g[] IS INITIAL.
inbound = 'X'.
ENDIF.
ENDIF.
ENDIF.
ENDFUNCTION.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYCI_INBOUND_DELIVERY
CRIAR MÓDULO DE FUNÇÃO: /PWS/ZYCI_INBOUND_DELIVERY
CARACTERÍSTICAS
CLASSIFICAÇÃO:
GRUPO DE FUNÇÕES: /PWS/ZYCIGF2
TEXTO BREVE: Validação do Inbound Delivery
TIPO DE EXECUÇÃO:
(X) - MÓDULO DE FUNÇÃO NORMAL
(X) - INÍCIO IMEDIATO
IMPORTAÇÃO:
NOME PARAM. ATRIB. TIPO REFERÊNCIA
NF_REMESSA TYPE CHAR1
TABELAS:
NOME PARAM. ATRIB. TIPO REFERÊNCIA OPCIONAL
T_ZYCIT042 LIKE /PWS/ZYCIT042 X
T_ZYCIT044 LIKE /PWS/ZYCIT044 X
T_ZYCIT511 LIKE /PWS/ZYCIT511
T_EKES LIKE EKES X
T_ZYCIT032 LIKE /PWS/ZYCIT032 X
* >> Início da inclusão:
FUNCTION /pws/zyci_inbound_delivery.
DATA: lv_menge TYPE ekes-menge,
lv_qtd_iten TYPE /pws/zycit042-qtd_iten.
DATA: BEGIN OF lt_ekpo OCCURS 0,
ebeln TYPE ekpo-ebeln,
ebelp TYPE ekpo-ebelp,
bstae TYPE ekpo-bstae,
END OF lt_ekpo.
DATA: BEGIN OF lt_t163g OCCURS 0,
bstae TYPE t163g-bstae,
blfdn TYPE t163g-blfdn,
wezuo TYPE t163g-wezuo,
END OF lt_t163g.
CLEAR: t_ekes, t_ekes[], lv_menge, lv_qtd_iten, lt_ekpo, lt_ekpo[],
lt_t163g, lt_t163g[], t_zycit032, t_zycit032[].
IF nf_remessa IS INITIAL.
SELECT ebeln ebelp bstae
FROM ekpo
INTO TABLE lt_ekpo
FOR ALL ENTRIES IN t_zycit042
WHERE ebeln = t_zycit042-ebeln
AND ebelp = t_zycit042-ebelp.
ELSE.
SELECT ebeln ebelp bstae
FROM ekpo
INTO TABLE lt_ekpo
FOR ALL ENTRIES IN t_zycit044
WHERE ebeln = t_zycit044-ebeln
AND ebelp = t_zycit044-ebelp.
ENDIF.
READ TABLE lt_ekpo WITH KEY bstae = ' '.
IF sy-subrc EQ 0.
CONCATENATE text-061 text-062 INTO t_zycit032-msg
SEPARATED BY space.
APPEND t_zycit032.
EXIT.
ENDIF.
DELETE lt_ekpo WHERE bstae = ' '.
IF NOT lt_ekpo[] IS INITIAL.
SELECT bstae blfdn wezuo
FROM t163g
INTO TABLE lt_t163g
FOR ALL ENTRIES IN lt_ekpo
WHERE bstae = lt_ekpo-bstae.
READ TABLE lt_t163g WITH KEY wezuo = ' '.
IF sy-subrc EQ 0.
CONCATENATE text-063 text-062 INTO t_zycit032-msg
SEPARATED BY space.
APPEND t_zycit032.
EXIT.
ENDIF.
ENDIF.
IF NOT t_zycit032[] IS INITIAL.
EXIT.
ENDIF.
IF nf_remessa IS INITIAL.
SELECT * FROM ekes INTO TABLE t_ekes
FOR ALL ENTRIES IN t_zycit042
WHERE ebeln = t_zycit042-ebeln
AND ebelp = t_zycit042-ebelp.
ELSE.
SELECT * FROM ekes INTO TABLE t_ekes
FOR ALL ENTRIES IN t_zycit044
WHERE ebeln = t_zycit044-ebeln
AND ebelp = t_zycit044-ebelp.
ENDIF.
LOOP AT t_zycit511.
READ TABLE t_ekes WITH KEY vbeln = t_zycit511-inbound_delivery.
IF sy-subrc NE 0.
CONCATENATE text-060 t_zycit511-inbound_delivery
INTO t_zycit032-msg
SEPARATED BY space.
APPEND t_zycit032.
ENDIF.
ENDLOOP.
IF NOT t_zycit032[] IS INITIAL.
EXIT.
ENDIF.
CLEAR: t_ekes, t_ekes[].
SELECT * FROM ekes INTO TABLE t_ekes
FOR ALL ENTRIES IN t_zycit511
WHERE vbeln = t_zycit511-inbound_delivery.
DELETE t_ekes WHERE dabmg <> '0.000'.
IF nf_remessa IS INITIAL.
LOOP AT t_zycit042.
CLEAR: lv_menge, lv_qtd_iten.
lv_qtd_iten = t_zycit042-qtd_iten.
LOOP AT t_ekes WHERE ebeln = t_zycit042-ebeln
AND ebelp = t_zycit042-ebelp.
lv_menge = lv_menge + t_ekes-menge.
ENDLOOP.
IF lv_menge <> lv_qtd_iten.
t_zycit032-msg = text-059.
APPEND t_zycit032.
EXIT.
ENDIF.
ENDLOOP.
ELSE.
LOOP AT t_zycit044.
CLEAR: lv_menge, lv_qtd_iten.
lv_qtd_iten = t_zycit044-qtd_item.
LOOP AT t_ekes WHERE ebeln = t_zycit044-ebeln
AND ebelp = t_zycit044-ebelp.
lv_menge = lv_menge + t_ekes-menge.
ENDLOOP.
IF lv_menge <> lv_qtd_iten.
t_zycit032-msg = text-059.
APPEND t_zycit032.
EXIT.
ENDIF.
ENDLOOP.
ENDIF.
ENDFUNCTION.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYCI_TRANSACAO_MIGO
MODIFICAR MÓDULO DE FUNÇÃO: /PWS/ZYCI_TRANSACAO_MIGO
IMPORTAÇÃO:
NOME PARAM. ATRIB. TIPO REFERÊNCIA OPCIONAL TRANSF.
INBOUND TYPE CHAR1 X X
...
v_data_doc_char(10) TYPE c,
v_data_lanc_char(10) TYPE c,
v_time(8) TYPE c,
v_anzgeb(7) TYPE c,
v_gebeh(03) TYPE c,
v_vfdat(08) TYPE c,
v_hsdat(08) TYPE c,
v_ok TYPE c.
DATA: v_land1 LIKE t001-land1.
DATA: v_active_popup TYPE esdus-active.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_TRANSACAO_MIGO
DATA: BEGIN OF lt_ekes OCCURS 0,
vbeln TYPE ekes-vbeln,
END OF lt_ekes.
CLEAR: lt_ekes, lt_ekes[].
* << Fim da inclusão
CLEAR v_ok.
READ TABLE t_dados INDEX 1.
IF sy-subrc EQ 0.
SELECT SINGLE land1 FROM t001 INTO v_land1
WHERE bukrs = t_dados-bukrs .
SELECT SINGLE * FROM /pws/zycit000 INTO /pws/zycit000
WHERE land1 = t001-land1
AND oil = 'X'.
ENDIF.
IF sy-subrc = 0.
...
...
ENDIF.
LOOP AT t_dados.
CHECK t_dados-tcode = 'MIGO'.
CHECK NOT t_zycit031[] IS INITIAL.
v_transacao = 'MIGO'.
PERFORM bdc_screen USING 'SAPLMIGO' '0001'.
PERFORM bdc_field USING: 'BDC_CURSOR' 'GODYNPRO-ACTION',
'GODYNPRO-ACTION' 'A01',
'BDC_OKCODE' '=MIGO_OK_ACTION'.
PERFORM bdc_screen USING 'SAPLMIGO' '0001'.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_TRANSACAO_MIGO
IF inbound EQ 'X'.
* << Fim da inclusão
PERFORM bdc_field USING: 'BDC_CURSOR' 'GODYNPRO-REFDOC',
* >> Início da inclusão: FUNCTION /PWS/ZYCI_TRANSACAO_MIGO
'GODYNPRO-REFDOC' 'R04',
'BDC_OKCODE' '=MIGO_OK_REFDOC'.
ELSE.
PERFORM bdc_field USING: 'BDC_CURSOR' 'GODYNPRO-REFDOC',
* << Fim da inclusão
'GODYNPRO-REFDOC' 'R01',
'BDC_OKCODE' '=MIGO_OK_REFDOC'.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_TRANSACAO_MIGO
ENDIF.
* << Fim da inclusão
PERFORM bdc_screen USING 'SAPLMIGO' '0001'.
IF NOT t_dados-bwartwe IS INITIAL.
PERFORM bdc_field USING: 'GODEFAULT_TV-BWART' t_dados-bwartwe.
ENDIF.
PERFORM bdc_field USING: 'BDC_OKCODE' '=MIGO_OK_HEADER_OPEN'.
IF NOT t_dados-bwartwe IS INITIAL.
CLEAR: v_active_popup.
SELECT SINGLE active FROM esdus INTO v_active_popup
WHERE uname = sy-uname
AND action = 'MIGO_TIPS'
...
...
'GOHEAD-BKTXT' t_dados-bktxt,
'GOHEAD-LFSNR' t_dados-lfsnr,
'GOHEAD-BLDAT' v_data_doc_char,
'GOHEAD-BUDAT' v_data_lanc_char.
IF NOT t_dados-xabln IS INITIAL.
PERFORM bdc_field USING:
'GOHEAD-XABLN' t_dados-xabln.
ENDIF.
PERFORM bdc_field USING:
'BDC_OKCODE' '=OK_GO'.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_TRANSACAO_MIGO
IF inbound EQ 'X'.
LOOP AT t_zycit031.
lt_ekes-vbeln = t_zycit031-vbeln.
APPEND lt_ekes.
ENDLOOP.
SORT lt_ekes.
DELETE ADJACENT DUPLICATES FROM lt_ekes.
LOOP AT lt_ekes.
PERFORM bdc_screen USING 'SAPLMIGO' '0001'.
PERFORM bdc_field USING:
'BDC_OKCODE' '=OK_GO',
'BDC_CURSOR' 'GODYNPRO-INBOUND_DELIVERY',
'GODYNPRO-INBOUND_DELIVERY' lt_ekes-vbeln.
IF v_ok = 'S'.
PERFORM bdc_field USING:
'GOHEAD-OIB_BLTIME' v_time.
ENDIF.
ENDLOOP.
ELSE.
* << Fim da inclusão
LOOP AT t_zycit031 WHERE tcode = t_dados-tcode
AND tabela = t_dados-tabela
AND cpochv = t_dados-cpochv.
PERFORM bdc_screen USING 'SAPLMIGO' '0001'.
PERFORM bdc_field USING:
'BDC_OKCODE' '=OK_GO',
'BDC_CURSOR' 'GODYNPRO-PO_NUMBER',
'GODYNPRO-PO_NUMBER' t_zycit031-ebeln,
'GODYNPRO-PO_ITEM' t_zycit031-ebelp.
IF v_ok = 'S'.
PERFORM bdc_field USING:
'GOHEAD-OIB_BLTIME' v_time.
ENDIF.
ENDLOOP.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_TRANSACAO_MIGO
ENDIF.
* << Fim da inclusão
DESCRIBE TABLE t_zycit031 LINES v_nline.
v_srows = sy-srows.
IF v_srows < 15.
v_srows = 15.
ENDIF.
v_srows = v_srows - 13.
CLEAR v_nreg.
PERFORM bdc_screen USING 'SAPLMIGO' '0001'.
PERFORM bdc_field USING 'BDC_CURSOR' 'GOITEM-TAKE_IT(01)'.
LOOP AT t_zycit031 WHERE tcode = t_dados-tcode
...
...
ENDLOOP.
CLEAR v_indice.
PERFORM bdc_screen USING 'SAPLMIGO' '0001'.
PERFORM bdc_field USING 'BDC_OKCODE' '=MIGO_OK_DETAIL_OPEN'.
LOOP AT t_zycit031 WHERE tcode = t_dados-tcode
AND tabela = t_dados-tabela
AND cpochv = t_dados-cpochv.
ADD 1 TO v_nreg.
ADD 1 TO v_indice.
PERFORM bdc_screen USING 'SAPLMIGO' '0001'.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_TRANSACAO_MIGO
IF inbound EQ 'X'.
PERFORM bdc_field USING: 'BDC_CURSOR' 'GODYNPRO-INBOUND_DELIVERY',
'BDC_OKCODE' '=OK_GO'.
ELSE.
* << Fim da inclusão
PERFORM bdc_field USING: 'BDC_CURSOR' 'GODYNPRO-PO_NUMBER',
'BDC_OKCODE' '=OK_GO'.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_TRANSACAO_MIGO
ENDIF.
* << Fim da inclusão
PERFORM bdc_screen USING 'SAPLMIGO' '0001'.
PERFORM bdc_field USING: 'BDC_CURSOR' 'GODYNPRO-DETAIL_ZEILE',
'GODYNPRO-DETAIL_ZEILE' v_indice,
'BDC_OKCODE' '=OK_GO'.
LOOP AT t_zycit505 WHERE ebeln EQ t_zycit031-ebeln
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/LZYCIGF2UXX
...
* >> Início da inclusão:
INCLUDE /PWS/LZYCIGF2U54.
INCLUDE /PWS/LZYCIGF2U55.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI017F01
...
FORM chamar_nfremessa.
* >> Início da inclusão: FORM CHAMAR_NFREMESSA
DATA: lt_ekpo TYPE ekpo OCCURS 0 WITH HEADER LINE.
CLEAR: v_inbound.
* << Fim da inclusão
...
...
ENDIF.
ENDON.
ENDLOOP.
SELECT * FROM /pws/zycit003
INTO TABLE itab_zycit003
FOR ALL ENTRIES IN itab_zycit044
WHERE nrseq = itab_zycit044-nrseq
AND ebeln = itab_zycit044-ebeln
AND ebelp = itab_zycit044-ebelp.
ENDIF.
* >> Início da inclusão: FORM CHAMAR_NFREMESSA
LOOP AT itab_zycit044.
lt_ekpo-ebeln = itab_zycit044-ebeln.
lt_ekpo-ebelp = itab_zycit044-ebelp.
APPEND lt_ekpo.
ENDLOOP.
CLEAR: lt_ekpo.
CALL FUNCTION '/PWS/ZYCI_INBOUND'
IMPORTING
inbound = v_inbound
TABLES
t_ekpo = lt_ekpo.
* << Fim da inclusão
SELECT SINGLE * FROM t001 WHERE bukrs = /pws/zycie043a-bukrs.
SELECT SINGLE *
FROM /pws/zycit000
INTO wa_zycit000
WHERE land1 EQ t001-land1.
gc_subscreen-prog = '0200'.
PERFORM lock_record.
CALL SCREEN '0050'.
PERFORM unlock_pedido.
ELSE.
MESSAGE s015 WITH text-013.
ENDIF.
ENDFORM.
...
...
FORM chamar_nfglobal.
DATA: v_nrseq LIKE /pws/zycit041-nrseq.
* >> Início da inclusão: FORM CHAMAR_NFGLOBAL
DATA: lt_ekpo TYPE ekpo OCCURS 0 WITH HEADER LINE.
CLEAR: v_inbound.
* << Fim da inclusão
...
...
subser = itab_zycit042-subser
WHERE nrseq = itab_zycit042-nrseq AND
nrseqnf = itab_zycit042-nrseqnf AND
ebeln = itab_zycit042-ebeln AND
ebelp = itab_zycit042-ebelp AND
nfglobal = itab_zycit042-nfglobal.
ENDIF.
ENDON.
ENDLOOP.
ENDIF.
* >> Início da inclusão: FORM CHAMAR_NFGLOBAL
LOOP AT itab_zycit042.
lt_ekpo-ebeln = itab_zycit042-ebeln.
lt_ekpo-ebelp = itab_zycit042-ebelp.
APPEND lt_ekpo.
ENDLOOP.
CLEAR: lt_ekpo.
CALL FUNCTION '/PWS/ZYCI_INBOUND'
IMPORTING
inbound = v_inbound
TABLES
t_ekpo = lt_ekpo.
* << Fim da inclusão
SELECT SINGLE * FROM t001 WHERE bukrs = /pws/zycie043a-bukrs.
SELECT SINGLE *
FROM /pws/zycit000
INTO wa_zycit000
WHERE land1 EQ t001-land1.
gv_subscreen_0050 = '0100'.
gc_subscreen-prog = '0100'.
PERFORM lock_pedido.
PERFORM lock_record.
CALL SCREEN '0050'.
PERFORM unlock_pedido.
ELSE.
MESSAGE s015 WITH text-013.
ENDIF.
ENDFORM.
...
...
FORM executar_evento.
* >> Início da inclusão: FORM EXECUTAR_EVENTO
DATA: lv_erro.
CLEAR: lv_erro.
* << Fim da inclusão
CASE okcode.
* >> Início da inclusão: FORM EXECUTAR_EVENTO
WHEN 'INBOUND'.
CLEAR: itab_zycit511[], itab_zycit511.
IF v_existe_nfr NE 'S'.
SELECT * FROM /pws/zycit511
INTO TABLE itab_zycit511
WHERE nrseqnf = /pws/zycie041-nrseq
AND nrseq = /pws/zycit001-nrseq
AND nfglobal = /pws/zycie041-nfglobal
AND docnum = /pws/zycie041-docnum.
ELSE.
SELECT * FROM /pws/zycit511
INTO TABLE itab_zycit511
WHERE nrseqnf = /pws/zycie043-nrseq
AND nrseq = /pws/zycit001-nrseq
AND nfglobal = /pws/zycie043-nfglobal
AND nfremessa = /pws/zycie043-nfremessa
AND docnum = /pws/zycie043-docnum.
ENDIF.
CALL SCREEN '0114' STARTING AT 10 2.
* << Fim da inclusão
...
...
CALL METHOD html_control->go_forward.
WHEN 'P-'.
tc_itens_nfg-top_line = tc_itens_nfg-top_line - 7.
WHEN 'P--'.
tc_itens_nfg-top_line = tc_itens_nfg-top_line - tc_itens_nfg-lines.
WHEN 'P+'.
tc_itens_nfg-top_line = tc_itens_nfg-top_line + 7.
WHEN 'P++'.
tc_itens_nfg-top_line = tc_itens_nfg-top_line + tc_itens_nfg-lines.
WHEN 'RECEB'.
* >> Início da inclusão: FORM EXECUTAR_EVENTO
IF v_inbound EQ 'X'.
PERFORM verifica_inbound CHANGING lv_erro.
IF lv_erro EQ 'X'.
EXIT.
ENDIF.
ENDIF.
* << Fim da inclusão
...
...
AND ebelp = itab_itens_nf-ebelp.
ENDIF.
IF NOT itab_itens_nf[] IS INITIAL.
SELECT ebeln ebelp zgtyp FROM ekpo
INTO TABLE itab_cert
FOR ALL ENTRIES IN itab_itens_nf
WHERE ebeln EQ itab_itens_nf-ebeln
AND ebelp EQ itab_itens_nf-ebelp.
ENDIF.
FREE itab_zycit031.
* >> Início da inclusão: FORM FILL_DATE_MB01
IF v_inbound EQ 'X'.
LOOP AT itab_ekes.
READ TABLE itab_itens_nf WITH KEY ebeln = itab_ekes-ebeln
ebelp = itab_ekes-ebelp.
itab_zycit031-tcode = itab_zycie033-tcode.
itab_zycit031-tabela = itab_zycie033-tabela.
itab_zycit031-cpochv = itab_zycie033-cpochv.
itab_zycit031-ebeln = itab_itens_nf-ebeln.
itab_zycit031-ebelp = itab_itens_nf-ebelp.
itab_zycit031-lgort = itab_itens_nf-lgort.
itab_zycit031-vbeln = itab_ekes-vbeln.
itab_zycit031-menge = itab_ekes-menge.
CLEAR: itab_cert, v_cert_ativ.
READ TABLE itab_cert
WITH KEY ebeln = itab_itens_nf-ebeln
ebelp = itab_itens_nf-ebelp.
IF sy-subrc EQ 0 AND NOT itab_cert-zgtyp IS INITIAL.
CALL FUNCTION 'QBCK_MIGO_CERT_REL_CHECK'
EXPORTING
i_tq05_zgtyp = itab_cert-zgtyp
IMPORTING
e_cert_active = v_cert_ativ
EXCEPTIONS
OTHERS = 1.
IF sy-subrc EQ 0 AND v_cert_ativ EQ 'X'.
itab_zycit031-answer = 'J'.
ENDIF.
ENDIF.
IF NOT itab_serie[] IS INITIAL.
CLEAR itab_serie.
READ TABLE itab_serie WITH KEY ebeln = itab_itens_nf-ebeln
ebelp = itab_itens_nf-ebelp.
IF NOT itab_serie-sernp IS INITIAL.
itab_zycit031-sernp = 'X'.
ENDIF.
ENDIF.
APPEND itab_zycit031.
CLEAR itab_zycit031.
ENDLOOP.
ELSE.
* << Fim da inclusão
LOOP AT itab_itens_nf.
itab_zycit031-tcode = itab_zycie033-tcode.
itab_zycit031-tabela = itab_zycie033-tabela.
itab_zycit031-cpochv = itab_zycie033-cpochv.
itab_zycit031-ebeln = itab_itens_nf-ebeln.
itab_zycit031-ebelp = itab_itens_nf-ebelp.
itab_zycit031-menge = itab_itens_nf-qtd_item.
itab_zycit031-lgort = itab_itens_nf-lgort.
CLEAR: itab_cert, v_cert_ativ.
READ TABLE itab_cert
...
...
CLEAR itab_serie.
READ TABLE itab_serie WITH KEY ebeln = itab_itens_nf-ebeln
ebelp = itab_itens_nf-ebelp.
IF NOT itab_serie-sernp IS INITIAL.
itab_zycit031-sernp = 'X'.
ENDIF.
ENDIF.
APPEND itab_zycit031.
CLEAR itab_zycit031.
ENDLOOP.
* >> Início da inclusão: FORM FILL_DATE_MB01
ENDIF.
* << Fim da inclusão
IF v_existe_nfr NE 'S'.
IF NOT itab_itens_nf[] IS INITIAL.
SELECT * FROM /pws/zycit223 INTO TABLE itab_zycit223
FOR ALL ENTRIES IN itab_itens_nf
WHERE nrseq = itab_itens_nf-nrseq AND
nrseqnf = itab_itens_nf-nrseqnf AND
nfglobal = itab_itens_nf-nfglobal AND
ebelp = itab_itens_nf-ebelp AND
ebeln = itab_itens_nf-ebeln AND
nfremessa = space.
...
...
itab_zycit031_aux-lgort = itab_zycit031-lgort .
APPEND itab_zycit031_aux.
ENDLOOP.
ENDLOOP.
LOOP AT itab_zycit031_aux.
MOVE itab_zycit031_aux TO itab_zycit031.
APPEND itab_zycit031.
ENDLOOP.
ENDIF.
v_merc = 'X'.
* >> Início da inclusão: FORM FILL_DATE_MB01
IF v_inbound EQ 'X'.
v_merc = '1'.
ENDIF.
* << Fim da inclusão
SET PARAMETER ID '/PWS/ZYCIP005' FIELD v_merc.
CALL CUSTOMER-FUNCTION '003'
EXPORTING
nrseq = itab_itens_nf-nrseq
TABLES
itab = itab_zycit031.
LOOP AT itab_zycit504.
itab_zycit505-matnr = itab_zycit504-matnr.
itab_zycit505-ebeln = itab_zycit504-ebeln.
itab_zycit505-ebelp = itab_zycit504-ebelp.
...
...
IF FOUND .
IF e_subrc EQ '8'.
EXIT.
ENDIF.
ENDIF.
ENDIF.
IF e_subrc = 0.
CALL FUNCTION '/PWS/ZYCI_TRANSACAO_MIGO'
EXPORTING
v_modo = v_modo_bi
* >> Início da inclusão: FORM FILL_DATE_MB01
inbound = v_inbound
* << Fim da inclusão
TABLES
t_dados = itab_zycie033
t_campo = itab_zycit034
t_zycit032 = itab_zycit032
t_zycit031 = itab_zycit031
t_zycit505 = itab_zycit505
EXCEPTIONS
campo_em_branco = 1
OTHERS = 3.
ENDIF.
...
...
* >> Início da inclusão:
FORM verifica_inbound CHANGING p_erro.
CLEAR: itab_zycit511[], itab_zycit511, itab_ekes, itab_ekes[].
IF v_existe_nfr NE 'S'.
SELECT * FROM /pws/zycit511
INTO TABLE itab_zycit511
WHERE nrseqnf = /pws/zycie041-nrseq
AND nrseq = /pws/zycit001-nrseq
AND nfglobal = /pws/zycie041-nfglobal
AND docnum = /pws/zycie041-docnum.
ELSE.
SELECT * FROM /pws/zycit511
INTO TABLE itab_zycit511
WHERE nrseqnf = /pws/zycie043-nrseq
AND nrseq = /pws/zycit001-nrseq
AND nfglobal = /pws/zycie043-nfglobal
AND nfremessa = /pws/zycie043-nfremessa
AND docnum = /pws/zycie043-docnum.
ENDIF.
IF NOT itab_zycit511[] IS INITIAL.
CALL FUNCTION '/PWS/ZYCI_INBOUND_DELIVERY'
EXPORTING
nf_remessa = v_existe_nfr
TABLES
t_zycit042 = itab_zycit042
t_zycit044 = itab_zycit044
t_zycit511 = itab_zycit511
t_ekes = itab_ekes
t_zycit032 = itab_zycit032.
IF NOT itab_zycit032[] IS INITIAL.
p_erro = 'X'.
CLEAR okcode.
LOOP AT itab_zycit032.
MESSAGE i015 WITH itab_zycit032-msg+0(50)
itab_zycit032-msg+50(50).
ENDLOOP.
ENDIF.
ELSE.
p_erro = 'X'.
CLEAR okcode.
MESSAGE e015 WITH text-277.
ENDIF.
ENDFORM.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI017I01
...
* >> Início da inclusão:
MODULE user_command_0114 INPUT.
DELETE itab_zycit511 WHERE inbound_delivery = ' '.
IF sy-ucomm EQ 'CANCEL'.
LEAVE TO SCREEN 0.
ELSEIF sy-ucomm EQ 'OKAY'.
IF NOT itab_zycit511[] IS INITIAL.
READ TABLE itab_zycit511 INDEX 1.
DELETE FROM /pws/zycit511 WHERE nrseqnf = itab_zycit511-nrseqnf
AND nrseq = itab_zycit511-nrseq
AND nfglobal = itab_zycit511-nfglobal
AND nfremessa = itab_zycit511-nfremessa
AND docnum = itab_zycit511-docnum.
MODIFY /pws/zycit511 FROM TABLE itab_zycit511.
COMMIT WORK AND WAIT.
LEAVE TO SCREEN 0.
ENDIF.
ELSEIF sy-ucomm EQ 'DEL'.
IF NOT itab_zycit511[] IS INITIAL.
READ TABLE itab_zycit511 INDEX 1.
DELETE FROM /pws/zycit511 WHERE nrseqnf = itab_zycit511-nrseqnf
AND nrseq = itab_zycit511-nrseq
AND nfglobal = itab_zycit511-nfglobal
AND nfremessa = itab_zycit511-nfremessa
AND docnum = itab_zycit511-docnum.
COMMIT WORK AND WAIT.
CLEAR: itab_zycit511, itab_zycit511[].
LEAVE TO SCREEN 0.
ENDIF.
ENDIF.
ENDMODULE.
MODULE alimenta_itab_zycit511 INPUT.
itab_zycit511-inbound_delivery = /pws/zycie511-inbound_delivery.
IF v_existe_nfr NE 'S'.
itab_zycit511-nrseqnf = /pws/zycie041-nrseq.
itab_zycit511-nrseq = /pws/zycit001-nrseq.
itab_zycit511-nfglobal = /pws/zycie041-nfglobal.
itab_zycit511-docnum = /pws/zycie041-docnum.
ELSE.
itab_zycit511-nrseqnf = /pws/zycie043-nrseq.
itab_zycit511-nrseq = /pws/zycit001-nrseq.
itab_zycit511-nfglobal = /pws/zycie043-nfglobal.
itab_zycit511-nfremessa = /pws/zycie043-nfremessa.
itab_zycit511-docnum = /pws/zycie043-docnum.
ENDIF.
MODIFY itab_zycit511 INDEX tc_inb-current_line.
IF sy-subrc NE 0.
APPEND itab_zycit511.
ENDIF.
ENDMODULE.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI017O01
...
it_code-fcode = 'SERIE'. APPEND it_code.
ENDIF.
it_code-fcode = 'REPL'. APPEND it_code.
it_code-fcode = 'LOTE'. APPEND it_code.
it_code-fcode = 'ESTOR'. APPEND it_code.
it_code-fcode = 'RECEB'. APPEND it_code.
SET PF-STATUS '0200' EXCLUDING it_code.
SET TITLEBAR '0200'.
ELSE.
* >> Início da inclusão: MODULE STATUS_0050
IF NOT /pws/zycie043-belnr_mr1m IS INITIAL.
itab_pf_status-fcode = 'INBOUND'.
APPEND itab_pf_status.
ELSEIF v_inbound IS INITIAL.
itab_pf_status-fcode = 'INBOUND'.
APPEND itab_pf_status.
ENDIF.
* << Fim da inclusão
...
...
ENDIF.
READ TABLE itab_zycit044 WITH KEY serie = 'X'.
IF sy-subrc NE 0.
itab_pf_status-fcode = 'SERIE'. APPEND itab_pf_status.
ENDIF.
SET PF-STATUS '0200' EXCLUDING itab_pf_status .
SET TITLEBAR '0200_A'.
ENDIF.
gv_subscreen_0050 = '0200'.
WHEN '0100'.
* >> Início da inclusão: MODULE STATUS_0050
IF NOT /pws/zycie041-belnr_mr1m IS INITIAL.
itab_pf_status-fcode = 'INBOUND'.
APPEND itab_pf_status.
ELSEIF v_inbound IS INITIAL.
itab_pf_status-fcode = 'INBOUND'.
APPEND itab_pf_status.
ENDIF.
* << Fim da inclusão
...
...
* >> Início da inclusão:
MODULE status_0114 OUTPUT.
DESCRIBE TABLE itab_zycit511 LINES tc_inb-lines.
ADD 11 TO tc_inb-lines.
SET PF-STATUS '0114'.
SET TITLEBAR '114'.
ENDMODULE.
MODULE alimenta_zycie511 OUTPUT.
/pws/zycie511-nrseqnf = itab_zycit511-nrseqnf.
/pws/zycie511-nrseq = itab_zycit511-nrseq.
/pws/zycie511-nfglobal = itab_zycit511-nfglobal.
/pws/zycie511-nfremessa = itab_zycit511-nfremessa.
/pws/zycie511-docnum = itab_zycit511-docnum.
/pws/zycie511-inbound_delivery = itab_zycit511-inbound_delivery.
ENDMODULE.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI017TOP
...
CONTROLS:
* >> Início da inclusão:
tc_inb TYPE TABLEVIEW USING SCREEN '0114',
* << Fim da inclusão
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI017X01
TABLES:
* >> Início da inclusão:
/pws/zycit511,
/pws/zycie511,
* << Fim da inclusão
...
...
* >> Início da inclusão:
DATA: itab_zycit511 LIKE /pws/zycit511 OCCURS 0 WITH HEADER LINE,
itab_ekes LIKE ekes OCCURS 0 WITH HEADER LINE.
DATA: v_inbound.
* << Fim da inclusão
DATA: END OF COMMON PART.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI080F01
...
FORM nfiscal_remessa.
* >> Início da inclusão: FORM NFISCAL_REMESSA
DATA: lt_ekpo TYPE ekpo OCCURS 0 WITH HEADER LINE.
CLEAR: v_inbound.
* << Fim da inclusão
...
...
INTO TABLE itab_zycit043_lista
WHERE nrseq EQ /pws/zycie043-nrseq
AND nfglobal EQ /pws/zycie043-nfglobal
AND docnumnfg EQ /pws/zycie043-docnumnfg
AND cancel EQ space.
MOVE /pws/zycie043 TO /pws/zycie043a.
IF sy-subrc NE 0.
PERFORM find_nrseqc_nfr.
v_status_s_nfr = 1.
PERFORM seleciona_itens_nfr.
* >> Início da inclusão: FORM NFISCAL_REMESSA
IF NOT itab_zycit044[] IS INITIAL.
LOOP AT itab_zycit044.
/pws/zycit001-nrseq = itab_zycit044-nrseq.
lt_ekpo-ebeln = itab_zycit044-ebeln.
lt_ekpo-ebelp = itab_zycit044-ebelp.
APPEND lt_ekpo.
ENDLOOP.
CLEAR: lt_ekpo.
CALL FUNCTION '/PWS/ZYCI_INBOUND'
IMPORTING
inbound = v_inbound
TABLES
t_ekpo = lt_ekpo.
ENDIF.
* << Fim da inclusão
...
...
SELECT a~ebeln a~ebelp a~matnr b~sernp
FROM ( ekpo AS a INNER JOIN marc AS b
ON a~matnr EQ b~matnr )
INTO TABLE itab_serie
FOR ALL ENTRIES IN itab_zycit044
WHERE ebeln = itab_zycit044-ebeln
AND ebelp = itab_zycit044-ebelp.
ENDIF.
CLEAR: v_erro.
FREE itab_zycit031.
* >> Início da inclusão: FORM FILL_DATE_MB01
IF v_inbound EQ 'X'.
LOOP AT itab_ekes.
READ TABLE itab_zycit044 WITH KEY ebeln = itab_ekes-ebeln
ebelp = itab_ekes-ebelp.
READ TABLE itab_zycit223_s WITH KEY ebeln = itab_zycit044-ebeln
ebelp = itab_zycit044-ebelp.
IF sy-subrc NE 0 AND itab_zycit044-lote_ob EQ 'X'.
MESSAGE i015 WITH text-104
itab_zycit044-ebeln itab_zycit044-ebelp.
v_erro = 'X'.
EXIT.
ENDIF.
itab_zycit031-tcode = itab_zycie033-tcode.
itab_zycit031-tabela = itab_zycie033-tabela.
itab_zycit031-cpochv = itab_zycie033-cpochv.
itab_zycit031-ebeln = itab_zycit044-ebeln.
itab_zycit031-ebelp = itab_zycit044-ebelp.
itab_zycit031-lgort = itab_zycit044-lgort.
itab_zycit031-vbeln = itab_ekes-vbeln.
itab_zycit031-menge = itab_ekes-menge.
IF NOT itab_serie[] IS INITIAL.
CLEAR itab_serie.
READ TABLE itab_serie WITH KEY ebeln = itab_zycit044-ebeln
ebelp = itab_zycit044-ebelp.
IF NOT itab_serie-sernp IS INITIAL.
itab_zycit031-sernp = 'X'.
ENDIF.
ENDIF.
APPEND itab_zycit031.
CLEAR itab_zycit031.
ENDLOOP.
ELSE.
* << Fim da inclusão
LOOP AT itab_zycit044.
READ TABLE itab_zycit223_s WITH KEY ebeln = itab_zycit044-ebeln
ebelp = itab_zycit044-ebelp.
IF sy-subrc NE 0 AND itab_zycit044-lote_ob EQ 'X'.
MESSAGE i015 WITH text-104
itab_zycit044-ebeln itab_zycit044-ebelp.
v_erro = 'X'.
EXIT.
ENDIF.
itab_zycit031-tcode = itab_zycie033-tcode.
...
...
CLEAR itab_serie.
READ TABLE itab_serie WITH KEY ebeln = itab_zycit044-ebeln
ebelp = itab_zycit044-ebelp.
IF NOT itab_serie-sernp IS INITIAL.
itab_zycit031-sernp = 'X'.
ENDIF.
ENDIF.
APPEND itab_zycit031.
CLEAR itab_zycit031.
ENDLOOP.
* >> Início da inclusão: FORM FILL_DATE_MB01
ENDIF.
* << Fim da inclusão
IF v_erro EQ 'X'.
CLEAR: v_erro.
EXIT.
ENDIF.
...
...
(itab_zyglt100-programa) IF FOUND.
IF e_subrc EQ 8.
EXIT.
ENDIF.
ENDIF.
ENDIF.
IF e_subrc EQ 0.
CALL FUNCTION '/PWS/ZYCI_TRANSACAO_MIGO'
EXPORTING
v_modo = v_modo_bi
* >> Início da inclusão: FORM FILL_DATE_MB01
inbound = v_inbound
* << Fim da inclusão
TABLES
t_dados = itab_zycie033
t_campo = itab_zycit034
t_zycit032 = itab_zycit032
t_zycit031 = itab_zycit031
EXCEPTIONS
campo_em_branco = 1
OTHERS = 3.
ENDIF.
IF sy-subrc = 0 OR e_subrc = 4.
...
...
* >> Início da inclusão:
FORM verifica_inbound CHANGING p_erro.
CLEAR: itab_zycit511[], itab_zycit511, itab_ekes, itab_ekes[].
IF NOT itab_zycit044[] IS INITIAL.
SELECT * FROM /pws/zycit511
INTO TABLE itab_zycit511
FOR ALL ENTRIES IN itab_zycit044
WHERE nrseqnf = itab_zycit044-nrseqnf
AND nrseq = itab_zycit044-nrseq
AND nfglobal = itab_zycit044-nfglobal
AND nfremessa = itab_zycit044-nfremessa
AND docnum = itab_zycit044-docnum.
ENDIF.
IF NOT itab_zycit511[] IS INITIAL.
CALL FUNCTION '/PWS/ZYCI_INBOUND_DELIVERY'
EXPORTING
nf_remessa = 'X'
TABLES
t_zycit044 = itab_zycit044
t_zycit511 = itab_zycit511
t_ekes = itab_ekes
t_zycit032 = itab_zycit032.
IF NOT itab_zycit032[] IS INITIAL.
p_erro = 'X'.
CLEAR okcode.
LOOP AT itab_zycit032.
MESSAGE i015 WITH itab_zycit032-msg+0(50)
itab_zycit032-msg+50(50).
ENDLOOP.
ENDIF.
ELSE.
p_erro = 'X'.
CLEAR okcode.
MESSAGE e015 WITH text-277.
ENDIF.
ENDFORM.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI080I01
...
MODULE user_command_0200 INPUT.
* >> Início da inclusão: MODULE USER_COMMAND_0200
DATA: lv_erro.
* << Fim da inclusão
DATA: BEGIN OF itab_fornec OCCURS 0,
lifnr TYPE lfa1-lifnr,
END OF itab_fornec.
DATA: BEGIN OF itab_zycit044_c OCCURS 0.
INCLUDE STRUCTURE itab_zycit044.
DATA: END OF itab_zycit044_c.
DATA v_contab TYPE c.
DATA: v_flag2, v_fat, v_errodb.
DATA:v_cont1 TYPE n.
e_subrc = 0.
...
...
IF NOT itab_zyglt100-zexit_ativa IS INITIAL.
PERFORM (itab_zyglt100-formulario) IN PROGRAM
(itab_zyglt100-programa) IF FOUND.
IF e_subrc NE 0.
EXIT.
ENDIF.
ENDIF.
ENDIF.
IF sy-tcode EQ '/PWS/ZYCI080_C' OR sy-tcode EQ '/PWS/ZYCI080_A'.
CASE okcode.
* >> Início da inclusão: MODULE USER_COMMAND_0200
WHEN 'INBOUND'.
CLEAR: itab_zycit511[], itab_zycit511.
IF NOT itab_zycit044[] IS INITIAL.
SELECT * FROM /pws/zycit511
INTO TABLE itab_zycit511
FOR ALL ENTRIES IN itab_zycit044
WHERE nrseqnf = itab_zycit044-nrseqnf
AND nrseq = itab_zycit044-nrseq
AND nfglobal = itab_zycit044-nfglobal
AND nfremessa = itab_zycit044-nfremessa
AND docnum = itab_zycit044-docnum.
ENDIF.
CALL SCREEN '0114' STARTING AT 10 2.
* << Fim da inclusão
WHEN 'ENTER'.
LOOP AT itab_zycit044.
READ TABLE itab_zycit044_aux WITH KEY
ebeln = itab_zycit044-ebeln
ebelp = itab_zycit044-ebelp.
IF itab_zycit044-qtd_item IS INITIAL AND
itab_zycit044-noinitial NE 'X' AND itab_zycit044-saldo > 0.
itab_zycit044-qtd_item = itab_zycit044-saldo .
itab_zycit044-noinitial = 'X'.
itab_zycit044-saldo = 0.
...
...
usuario = sy-uname
func = 'NFR'
IMPORTING
autoriza = v_autoriza.
IF v_autoriza = 'X'.
PERFORM modo_batch_input.
ELSE.
MESSAGE w013 WITH text-094 text-095.
ENDIF.
WHEN 'CRIARNFR'.
* >> Início da inclusão: MODULE USER_COMMAND_0200
IF v_inbound EQ 'X'.
CLEAR: lv_erro.
PERFORM verifica_inbound CHANGING lv_erro.
IF lv_erro EQ 'X'.
EXIT.
ENDIF.
ENDIF.
* << Fim da inclusão
IF /pws/zycie043-transpnac IS INITIAL.
SELECT SINGLE * FROM /pws/zyglt217
WHERE arbgb EQ '/PWS/ZYCIM'
AND msgnr EQ '111'.
IF sy-subrc EQ 0 AND NOT /pws/zyglt217-msgtp IS INITIAL.
MESSAGE ID '/PWS/ZYCIM' TYPE /pws/zyglt217-msgtp NUMBER '111'.
ENDIF.
ENDIF.
PERFORM cria_nota_fiscal_r.
CLEAR v_contab.
...
...
* >> Início da inclusão:
MODULE alimenta_itab_zycit511 INPUT.
itab_zycit511-inbound_delivery = /pws/zycie511-inbound_delivery.
itab_zycit511-nrseqnf = /pws/zycie043-nrseq.
itab_zycit511-nrseq = /pws/zycit001-nrseq.
itab_zycit511-nfglobal = /pws/zycie043-nfglobal.
itab_zycit511-nfremessa = /pws/zycie043-nfremessa.
itab_zycit511-docnum = /pws/zycie043-docnum.
MODIFY itab_zycit511 INDEX tc_inb-current_line.
IF sy-subrc NE 0.
APPEND itab_zycit511.
ENDIF.
ENDMODULE.
MODULE user_command_0114 INPUT.
DELETE itab_zycit511 WHERE inbound_delivery = ' '.
IF sy-ucomm EQ 'CANCEL'.
LEAVE TO SCREEN 0.
ELSEIF sy-ucomm EQ 'OKAY'.
IF NOT itab_zycit511[] IS INITIAL.
READ TABLE itab_zycit511 INDEX 1.
DELETE FROM /pws/zycit511 WHERE nrseqnf = itab_zycit511-nrseqnf
AND nrseq = itab_zycit511-nrseq
AND nfglobal = itab_zycit511-nfglobal
AND nfremessa = itab_zycit511-nfremessa
AND docnum = itab_zycit511-docnum.
MODIFY /pws/zycit511 FROM TABLE itab_zycit511.
COMMIT WORK AND WAIT.
LEAVE TO SCREEN 0.
ENDIF.
ELSEIF sy-ucomm EQ 'DEL'.
IF NOT itab_zycit511[] IS INITIAL.
READ TABLE itab_zycit511 INDEX 1.
DELETE FROM /pws/zycit511 WHERE nrseqnf = itab_zycit511-nrseqnf
AND nrseq = itab_zycit511-nrseq
AND nfglobal = itab_zycit511-nfglobal
AND nfremessa = itab_zycit511-nfremessa
AND docnum = itab_zycit511-docnum.
COMMIT WORK AND WAIT.
CLEAR: itab_zycit511, itab_zycit511[].
LEAVE TO SCREEN 0.
ENDIF.
ENDIF.
ENDMODULE.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI080O01
...
itab_pf_status-fcode = 'CANCR'.
APPEND itab_pf_status.
itab_pf_status-fcode = 'CRIARNFR'.
APPEND itab_pf_status.
itab_pf_status-fcode = 'DELE'.
APPEND itab_pf_status.
itab_pf_status-fcode = 'MARC'.
APPEND itab_pf_status.
itab_pf_status-fcode = 'DESM'.
APPEND itab_pf_status.
* >> Início da inclusão: MODULE STATUS_0200
itab_pf_status-fcode = 'INBOUND'.
APPEND itab_pf_status.
* << Fim da inclusão
ELSE.
IF /pws/zycie043-mblnr_mb01 IS INITIAL.
itab_pf_status-fcode = 'CANCR'.
* >> Início da inclusão: MODULE STATUS_0200
APPEND itab_pf_status.
IF v_inbound EQ ' '.
itab_pf_status-fcode = 'INBOUND'.
* << Fim da inclusão
APPEND itab_pf_status.
* >> Início da inclusão: MODULE STATUS_0200
ENDIF.
* << Fim da inclusão
ELSE.
itab_pf_status-fcode = 'MARC'.
APPEND itab_pf_status.
itab_pf_status-fcode = 'DESM'.
APPEND itab_pf_status.
itab_pf_status-fcode = 'DELE'.
APPEND itab_pf_status.
itab_pf_status-fcode = 'CRIARNFR'.
* >> Início da inclusão: MODULE STATUS_0200
APPEND itab_pf_status.
itab_pf_status-fcode = 'INBOUND'.
* << Fim da inclusão
APPEND itab_pf_status.
ENDIF.
ENDIF.
IF v_status_s_nfr = 1.
SET PF-STATUS '0200' EXCLUDING itab_pf_status.
SET TITLEBAR '200C'.
ELSEIF v_status_s_nfr = 0.
itab_pf_status-fcode = 'SAVE'.
APPEND itab_pf_status.
SET PF-STATUS '0200' EXCLUDING itab_pf_status.
...
...
* >> Início da inclusão:
MODULE status_0114 OUTPUT.
DESCRIBE TABLE itab_zycit511 LINES tc_inb-lines.
ADD 11 TO tc_inb-lines.
SET PF-STATUS '0114'.
SET TITLEBAR '114'.
ENDMODULE.
MODULE alimenta_zycie511 OUTPUT.
/pws/zycie511-nrseqnf = itab_zycit511-nrseqnf.
/pws/zycie511-nrseq = itab_zycit511-nrseq.
/pws/zycie511-nfglobal = itab_zycit511-nfglobal.
/pws/zycie511-nfremessa = itab_zycit511-nfremessa.
/pws/zycie511-docnum = itab_zycit511-docnum.
/pws/zycie511-inbound_delivery = itab_zycit511-inbound_delivery.
ENDMODULE.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI080TOP
...
controls:
* >> Início da inclusão:
tc_inb TYPE TABLEVIEW USING SCREEN '0114',
* << Fim da inclusão
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI080X01
TABLES:
* >> Início da inclusão:
/pws/zycit511,
/pws/zycie511,
* << Fim da inclusão
...
...
* >> Início da inclusão:
DATA: itab_zycit511 LIKE /pws/zycit511 OCCURS 0 WITH HEADER LINE,
itab_ekes LIKE ekes OCCURS 0 WITH HEADER LINE.
DATA: v_inbound.
* << Fim da inclusão
DATA: END OF COMMON PART a.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPT /PWS/SAPLZYCIGF2
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 059
Texto: (50 caracteres)
"Qtde do INBOUND não corresponde com a qtde da NOTA"
Comprimento máximo: 50
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 059
Texto: (51 caracteres)
"Cantidad Entrante no coincide con la cantidad NOTA."
Comprimento máximo: 51
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 060
Texto: (22 caracteres)
"Inbound não permitido:"
Comprimento máximo: 22
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 060
Texto: (22 caracteres)
"Entrante no se permite"
Comprimento máximo: 22
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 061
Texto: (44 caracteres)
"Exitem itens com e sem Chave de Confirmação."
Comprimento máximo: 44
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 061
Texto: (42 caracteres)
"Artículos con y sin confirmación de tecla."
Comprimento máximo: 44
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 062
Texto: (33 caracteres)
"Impossível realizar o Rec.Físico."
Comprimento máximo: 33
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 062
Texto: (33 caracteres)
"No se puede realizar la Recep.Fis"
Comprimento máximo: 33
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 063
Texto: (58 caracteres)
"Itens com diferentes Atributos para Entrada de Mercadoria."
Comprimento máximo: 58
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 063
Texto: (47 caracteres)
"Elementos con atributos diferentes para las EM."
Comprimento máximo: 58
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPT /PWS/SAPMZYCI017
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 277
Texto: (28 caracteres)
"Informar o Inbound Delivery."
Comprimento máximo: 28
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPT /PWS/SAPMZYCI080
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 277
Texto: (24 caracteres)
"Inform Inbound Delivery."
Comprimento máximo: 28
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 277
Texto: (28 caracteres)
"Informar o Inbound Delivery."
Comprimento máximo: 28
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 277
Texto: (26 caracteres)
"Informar Entrega Entrante."
Comprimento máximo: 28
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABL /PWS/ZYCIE511
CRIAR ESTRUTURA: /PWS/ZYCIE511
DESCRIÇÃO BREVE: Inbound Delivery
COMPONENTES NOVOS
COMPONENTE: TP. COMP:
.INCLUDE /PWS/ZYCIT511
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABL /PWS/ZYCIT511
CRIAR TABELA TRANSPARENTE: /PWS/ZYCIT511
DESCRIÇÃO BREVE: Inbound Delivery
CARACTERÍSTICAS
CATEGORIA DA TABELA: Tabela transparente
CLASSE DE ENTREGA: A - Tabela de aplicação (dados mestre e de movimento)
(X) - AUTUALIZAÇÃO DE TABELAS PERMITIDA
CAMPOS NOVOS
CAMPOS: TP. CAMPO CH: INI: TAB.VERIF.:
MANDT MANDT X X T000
NRSEQNF /PWS/ZYCIL001 X X
NRSEQ /PWS/ZYCIL001 X X /PWS/ZYCIT001
NFGLOBAL /PWS/ZYCIL105 X X /PWS/ZYCIT041
NFREMESSA /PWS/ZYCIL107 X X /PWS/ZYCIT043
DOCNUM J_1BDOCNUM X X J_1BNFDOC
INBOUND_DELIVERY VBELN_VL X X VBUK
OPÇÕES TÉCNICAS
TIPO DE DADOS: APPL1
CATEGOR. TAMANHO: 3
(X) - AR. BUFFER NÃO PERMITIDO
(X) - AR. BUFFER NÃO PERMITIDO
(X) - AR. BUFFER NÃO PERMITIDO
(X) - AR. BUFFER NÃO PERMITIDO
(X) - AR. BUFFER NÃO PERMITIDO