Módulo: DOC. IMPORTAÇÃO
Funcionalidade: Embarque
Data/Hora da Publicação: 12/08/2013 00:00:00
Data/Hora Última Alteração: 19/08/2013 17:18:59
Descrição da Nota: DESENVOLVIMENTO PARA TRATAMENTO DE PROCESSO INTERCOMPANY.
Sintoma
Desenvolvimento para tratamento de Processo intercompany.
Solução
Desenvolvimento para tratamento de Processo intercompany.
Após a aplicação da nota, parametrizar na tabela /pws/zycit029 a despesa variação cambial com o
código 'VARCAM' e na tabela /pws/zycit140 a despesa 'VARCAM' com origem na DI.
9.0
Produto:
Nota
Descrição
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 13162 Data: 12/08/2013 Hora: 09:20:54
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 13162
Categoria : Melhoria
Prioridade : Média
Versão PW.CE : 9.0
Pacote : 00005
Agrupamento : 00161
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
08750 - 00001 - 7.0 - 00010 - AO SELECIONAR CONTAS DA FATURA, NÃO CONSIDERA CLASSE DE AVALIAÇÃO
12132 - 00002 - 8.0 - 00011 - CRÉDITO PARCIAL DE COFINS
12385 - 00003 - 9.0 - 00001 - O CAMPO DE FATURA ELETRÔNICA (INVTP) DEVE SER OBRIGATÓRIO NA FATU
12642 - 00004 - 9.0 - 00002 - DI
12783 - 00005 - 9.0 - 00003 - LEVAR DADOS DE CÂMBIO E FABRICANTE AO VINCULAR LI OU CRIAR FATURA
12793 - 00006 - 9.0 - 00003 - UNIFICAÇÃO DAS MENSAGENS DE RECEBIMENTO
12934 - 00007 - 9.0 - 00004 - ERRO NO ENDEREÇO DO FABRICANTE AO INFORMAR UM NOVO FABRICANTE
12996 - 00008 - 9.0 - 00004 - ESTÁ PERMITINDO FAZER MIRO COM REFERÊNCIA DUPLICADA
13056 - 00009 - 9.0 - 00004 - ERRO AO BUSCAR A PC DE FRETE INTERNACIONAL NA FATURA DE SEGURO
13153 - 00010 - 9.0 - 00005 - VERIFICAR SE O PROCESSO ESTÁ SENDO ALTERADO POR ALGUM USUÁRIO E B
----------------------------------------------------------------------------------------------------
DESENVOLVIMENTO PARA TRATAMENTO DE PROCESSO INTERCOMPANY.
----------------------------------------------------------------------------------------------------
Palavras Chave:
DESENVOLVIMENTO - PROCESSO - EMBARQUE - INTERCOMPANY - PARAMETRO
----------------------------------------------------------------------------------------------------
Objetos da nota:
DOMD /PWS/ZYCID059
FUNC /PWS/ZYCI_RECLASSIFICACAO_IA
FUNC /PWS/ZYCI_FATURA_INTERCOMPANY
CUAD /PWS/SAPMZYCI001
REPS /PWS/MZYCI023F01
REPS /PWS/MZYCI017F02
REPS /PWS/MZYCI017X01
REPS /PWS/MZYCI017F03
REPS /PWS/MZYCI017F01
REPS /PWS/MZYCI023F04
REPS /PWS/LZYCIGF10F01
REPS /PWS/LZYCIGF2F01
REPS /PWS/MZYCI023X01
REPS /PWS/MZYCI003O01
REPS /PWS/LZYCIGF10F02
REPS /PWS/LZYCIGF10X01
REPS /PWS/MZYCI001F01
REPS /PWS/MZYCI003F03
REPS /PWS/MZYCI001O01
REPS /PWS/MZYCI001F03
REPS /PWS/MZYCI001I01
REPT /PWS/SAPMZYCI017
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DOMD /PWS/ZYCID059
------------------------------------------------------------------------
Domínio modificado: /PWS/ZYCID059
-Valores individuais
Incluído valor fixo "DI"
Texto incluído, idioma: PT (33 caracteres):
"DI(Variação Cambial Intercompani)"
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYCI_RECLASSIFICACAO_IA
...
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RECLASSIFICACAO_IA
DATA: itab_rseg TYPE STANDARD TABLE OF rseg WITH HEADER LINE,
itab_rbkp TYPE STANDARD TABLE OF rbkp WITH HEADER LINE,
v_gdatu TYPE tcurf-gdatu,
v_vltemp TYPE /pws/zycit085-vlfre.
DATA: BEGIN OF itab_sel OCCURS 0,
belnr TYPE rbkp-belnr,
gjahr TYPE rbkp-gjahr,
END OF itab_sel.
DATA: BEGIN OF itab_tcurf OCCURS 0,
de TYPE tcurf-ffact,
para TYPE tcurf-tfact,
fcurr TYPE tcurf-fcurr,
tcurr TYPE tcurf-tcurr,
gdatu TYPE tcurf-gdatu,
kurst TYPE tcurf-kurst,
END OF itab_tcurf.
* << Fim da inclusão
SELECT SINGLE * FROM /pws/zycit042
WHERE nrseq EQ i_zycit001-nrseq. "#EC CI_NOFIRST
IF sy-subrc EQ 0.
SELECT SINGLE * FROM /pws/zycit041 INTO /pws/zycit041
WHERE nrseq EQ /pws/zycit042-nrseqnf AND
( belnr_mr1m NE space OR
mblnr_mb01 NE space OR
belnr_f_51 NE space OR
belnr_f_02 NE space OR
belnrf02fre NE space ).
ENDIF.
IF sy-subrc EQ 0 AND i_programa EQ 'DI'.
RAISE existe_recebimento.
ENDIF.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RECLASSIFICACAO_IA
/pws/zycie001 = i_zycit001.
* << Fim da inclusão
SELECT SINGLE *
FROM t001
WHERE bukrs EQ i_zycit001-bukrs.
SELECT SINGLE *
FROM /pws/zycit000
WHERE land1 EQ t001-land1.
IF /pws/zycit000-flag_reclass IS INITIAL.
RAISE flag_reclassificacao.
ENDIF.
SELECT SINGLE *
...
...
itab_zycit132-dt_belnrp TO itab_zycit006-dt_belnrp.
APPEND itab_zycit006.
ENDIF.
ENDLOOP.
ENDIF.
IF /pws/zycie001-modalidade NE '07'.
LOOP AT itab_zycit006 WHERE belnr_p IS initial.
DELETE itab_zycit006.
ENDLOOP.
SORT itab_zycit006 BY belnr_p.
* >> Início da exclusão: FUNCTION /PWS/ZYCI_RECLASSIFICACAO_IA
ELSE.
LOOP AT itab_zycit006 WHERE belnr_f_02 IS initial.
DELETE itab_zycit006.
ENDLOOP.
SORT itab_zycit006 BY belnr_f_02.
* << Fim da exclusão
ENDIF.
CLEAR: itab_matuse.
REFRESH: itab_matuse.
IF NOT t_zycit003[] IS INITIAL.
SELECT ebeln ebelp matnr bwtar j_1bmatuse knttp werks
FROM ekpo INTO TABLE itab_matuse
FOR ALL ENTRIES IN t_zycit003
WHERE ebeln = t_zycit003-ebeln
AND ebelp = t_zycit003-ebelp.
IF ( t001-land1 = 'AR' OR t001-land1 = 'CL' ).
...
...
MODIFY itab_matuse.
ENDIF.
ENDLOOP.
ENDIF.
SELECT matnr bwkey bwtar bklas
FROM mbew INTO TABLE itab_classe_aval
FOR ALL ENTRIES IN itab_matuse
WHERE matnr EQ itab_matuse-matnr
AND bwkey EQ itab_matuse-bwkey
AND bwtar EQ itab_matuse-bwtar.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RECLASSIFICACAO_IA
ENDIF.
LOOP AT itab_zycit006.
CALL FUNCTION '/PWS/ZYGL_OBTEM_ANO_CONTABIL'
EXPORTING
v_bukrs = i_zycit001-bukrs
v_date = itab_zycit006-dt_mr1m
IMPORTING
v_year = itab_sel-gjahr
EXCEPTIONS
variante_de_exercicio = 1
data_nao_encontrada = 2
empresa_nao_encontrada = 3
period_in_not_valid = 4
period_not_assigned = 5
version_undefined = 6
OTHERS = 7.
itab_sel-belnr = itab_zycit006-belnr_mr1m.
APPEND itab_sel.
ENDLOOP.
SELECT * FROM rbkp
INTO TABLE itab_rbkp
FOR ALL ENTRIES IN itab_sel
WHERE belnr = itab_sel-belnr
AND gjahr = itab_sel-gjahr.
SELECT * FROM rseg
INTO TABLE itab_rseg
FOR ALL ENTRIES IN itab_sel
WHERE belnr = itab_sel-belnr
AND gjahr = itab_sel-gjahr.
IF /pws/zycit000-kurst IS INITIAL.
/pws/zycit000-kurst = 'M'.
* << Fim da inclusão
ENDIF.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RECLASSIFICACAO_IA
CLEAR itab_zycit006.
v_gdatu = '99999999' - sy-datum.
* << Fim da inclusão
LOOP AT itab_matuse.
READ TABLE itab_classe_aval WITH KEY
matnr = itab_matuse-matnr
bwkey = itab_matuse-bwkey
bwtar = itab_matuse-bwtar.
...
...
ENDIF.
READ TABLE itab_cta INDEX 1.
READ TABLE itab_matuse_aux
WITH KEY hkont = itab_cta-konth
j_1bmatuse = itab_matuse-j_1bmatuse.
IF sy-subrc NE 0.
MOVE: itab_matuse-j_1bmatuse TO itab_matuse_aux-j_1bmatuse,
itab_cta-konth TO itab_matuse_aux-hkont .
APPEND itab_matuse_aux.
CLEAR itab_matuse_aux.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RECLASSIFICACAO_IA
ENDIF.
IF /pws/zycie001-modalidade EQ '07' .
LOOP AT itab_rseg WHERE ebeln = itab_matuse-ebeln
AND ebelp = itab_matuse-ebelp.
READ TABLE itab_rbkp WITH KEY
belnr = itab_rseg-belnr
gjahr = itab_rseg-gjahr.
LOOP AT itab_tcurf
WHERE fcurr = itab_rbkp-waers
AND tcurr = /pws/zycbt007-waersb
AND gdatu => v_gdatu
AND kurst = /pws/zycit000-kurst. "#EC PORTABLE
EXIT.
ENDLOOP.
IF sy-subrc NE 0.
SELECT SINGLE ffact tfact fcurr tcurr
gdatu kurst
FROM tcurf
INTO itab_tcurf
WHERE fcurr = itab_rbkp-waers
AND tcurr = /pws/zycbt007-waersb
AND gdatu >= v_gdatu
AND kurst = /pws/zycit000-kurst. "#EC PORTABLE
IF sy-subrc EQ 0.
APPEND itab_tcurf.
ENDIF.
* << Fim da inclusão
ENDIF.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RECLASSIFICACAO_IA
IF sy-subrc NE 0.
itab_tcurf-para = itab_tcurf-de = 1.
itab_tcurf-gdatu = v_gdatu.
itab_tcurf-fcurr = itab_rbkp-waers.
itab_tcurf-tcurr = /pws/zycbt007-waersb.
itab_tcurf-kurst = /pws/zycit000-kurst.
APPEND itab_tcurf.
ENDIF.
v_vltemp = itab_rseg-wrbtr *
( ( itab_rbkp-kursf * itab_tcurf-para ) /
itab_tcurf-de ).
MOVE: itab_cta-konth TO itab_bsis-hkont,
itab_bsis-buzei TO itab_bsis-buzei,
itab_rseg-belnr TO itab_bsis-belnr.
itab_bsis-dmbtr = itab_bsis-dmbtr + v_vltemp.
itab_bsis-wrbtr = itab_bsis-wrbtr + itab_rseg-wrbtr.
itab_bsis-tpfatura = '01'.
APPEND itab_bsis.
CLEAR itab_bsis.
* << Fim da inclusão
ENDLOOP.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RECLASSIFICACAO_IA
ENDIF.
ENDLOOP.
* << Fim da inclusão
IF /pws/zycie001-modalidade NE '07' .
SORT itab_zycit006 BY belnr_p.
ELSE.
SORT itab_zycit006 BY belnr_f_02.
ENDIF .
MOVE itab_matuse_aux[] TO itab_matuse_aux3[].
SORT itab_matuse_aux3 BY hkont.
DELETE ADJACENT DUPLICATES FROM itab_matuse_aux3 COMPARING hkont.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RECLASSIFICACAO_IA
IF /pws/zycie001-modalidade NE '07' .
* << Fim da inclusão
LOOP AT itab_zycit006.
IF NOT itab_matuse_aux3[] IS INITIAL.
LOOP AT itab_matuse_aux3.
IF /pws/zycie001-modalidade NE '07' .
UNPACK itab_zycit006-belnr_p TO itab_zycit006-belnr_p.
ELSE.
UNPACK itab_zycit006-belnr_p TO itab_zycit006-belnr_f_02.
ENDIF.
CALL FUNCTION '/PWS/ZYGL_OBTEM_ANO_CONTABIL'
EXPORTING
...
...
itab_bsis-wrbtr = itab_bsis-wrbtr + itab_bsis_aux1-wrbtr.
ENDLOOP.
IF sy-subrc = 0.
MOVE itab_zycit006-tpfatura TO itab_bsis-tpfatura.
APPEND itab_bsis.
CLEAR itab_bsis.
ENDIF.
ENDLOOP.
ENDIF.
ENDLOOP.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_RECLASSIFICACAO_IA
ENDIF.
* << Fim da inclusão
IF NOT /pws/zycit000-provfre IS INITIAL.
DELETE itab_bsis WHERE tpfatura = '02'.
ENDIF.
IF NOT /pws/zycit000-provseg IS INITIAL.
DELETE itab_bsis WHERE tpfatura = '03'.
ENDIF.
MOVE itab_matuse_aux[] TO itab_matuse_aux2[].
LOOP AT itab_bsis.
MOVE: itab_bsis-hkont TO itab_bsis_aux-hkont ,
itab_bsis-wrbtr TO itab_bsis_aux-wrbtr ,
...
...
IF v_bkzer IS INITIAL .
itab_di-kostl = itab_ekkn-kostl.
ENDIF.
itab_di-prctr = itab_ekkn-prctr.
CLEAR itab_zycit006.
READ TABLE itab_zycit006
WITH KEY nrseq_pgfat = itab_zycit263-nrseq_pgfat.
IF /pws/zycie001-modalidade NE '07' .
CHECK NOT itab_zycit006-belnr_p IS INITIAL.
ELSE.
* >> Início da exclusão: FUNCTION /PWS/ZYCI_RECLASSIFICACAO_IA
CHECK NOT itab_zycit006-belnr_f_02 IS INITIAL.
* << Fim da exclusão
ENDIF.
CLEAR: itab_matuse, itab_matuse_aux.
READ TABLE itab_matuse WITH KEY ebeln = t_zycit100-ebeln
ebelp = t_zycit100-ebelp.
READ TABLE itab_matuse_aux WITH KEY
j_1bmatuse = itab_matuse-j_1bmatuse.
IF /pws/zycit000-clucro_ia = 'X'.
PERFORM verifica_centro_l TABLES itab_matuse.
ELSE.
CLEAR itab_di-prctr.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYCI_FATURA_INTERCOMPANY
FUNCTION /pws/zyci_fatura_intercompany .
DATA: v_answer.
CLEAR: invoice_created,
no_quantity ,
no_data.
CLEAR: itab_rbkp, itab_select, t_spopli, itab_zycbe033,
itab_zycbt034, itab_zycbt032, itab_contas, v_doc_miro.
REFRESH: itab_rbkp, itab_select, t_spopli, itab_zycbe033,
itab_zycbt034, itab_zycbt032, itab_contas .
* >> Início da exclusão: FUNCTION /PWS/ZYCI_FATURA_INTERCOMPANY
SELECT * FROM /pws/zycit001
* << Fim da exclusão
* >> Início da inclusão: FUNCTION /PWS/ZYCI_FATURA_INTERCOMPANY
SELECT SINGLE * FROM /pws/zycit001
* << Fim da inclusão
INTO /pws/zycie001
WHERE nrseq = p_nrseq.
* >> Início da exclusão: FUNCTION /PWS/ZYCI_FATURA_INTERCOMPANY
ENDSELECT.
* << Fim da exclusão
IF sy-subrc EQ 0.
SELECT SINGLE * FROM t001 WHERE bukrs EQ /pws/zycie001-bukrs.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_FATURA_INTERCOMPANY
SELECT SINGLE * FROM /pws/zycbt007
WHERE bukrs EQ /pws/zycie001-bukrs.
* << Fim da inclusão
SELECT SINGLE * FROM /pws/zycit000
WHERE land1 EQ t001-land1.
SELECT SINGLE * FROM /pws/zycit477
WHERE land EQ t001-land1.
SELECT * FROM /pws/zycit003
INTO TABLE itab_zycit003
WHERE nrseq = p_nrseq.
IF sy-subrc EQ 0.
PERFORM seleciona_dados_miro.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_FATURA_INTERCOMPANY
IF itab_zycit003[] IS INITIAL.
RAISE NO_QUANTITY.
* << Fim da inclusão
ENDIF.
ENDIF.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_FATURA_INTERCOMPANY
ENDIF.
* << Fim da inclusão
DESCRIBE TABLE itab_rbkp LINES v_lines.
IF v_lines GT '1' .
PERFORM monta_selecao CHANGING v_answer.
IF v_answer EQ 'A' .
RAISE abort.
EXIT .
ELSE.
CLEAR itab_zycit006. REFRESH itab_zycit006.
LOOP AT t_spopli WHERE selflag = 'X' .
v_doc_miro = t_spopli+1(10).
PERFORM cria_fatura_intercompany.
* >> Início da inclusão: FUNCTION /PWS/ZYCI_FATURA_INTERCOMPANY
EXIT.
* << Fim da inclusão
ENDLOOP.
ENDIF.
ELSE.
READ TABLE itab_rbkp INDEX 1.
IF sy-subrc EQ 0.
v_doc_miro = itab_rbkp-belnr.
PERFORM cria_fatura_intercompany.
ENDIF.
ENDIF.
IF invoice_created = 'X'.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em CUAD /PWS/SAPMZYCI001
Modificação StatusGui 0100.
*Inclusão:
Código de função: INTER
Categoria de função: Função de aplicação
Texto de função: Fatura Intercompany
Nome de ícone: ICON_TRANSPORT_POINT
Texto informativo: Criar Fatura Intercompany
Adicionar a O botão 'INTER' na barra de botões entre o Botão 'BL' e 'FAT'.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI023F01
...
itab_zycit118[] TO itab_zycit118a[],
itab_zycit121[] TO itab_zycit121a[],
itab_zycit124[] TO itab_zycit124a[],
itab_zycit200[] TO itab_zycit200a[],
itab_zycit049di2[] TO itab_zycit049di[],
itab_it[] TO itab_ita[],
/pws/zycie085 TO wa_zycit085,
itab_zycit485[] TO itab_zycit485a[],
itab_zycit486[] TO itab_zycit486a[].
PERFORM save_especificacao.
* >> Início da inclusão: FORM SAVE_DATA
READ TABLE itab_zycit001 INDEX 1.
IF itab_zycit001-modalidade EQ '07'.
PERFORM reclass_interc.
ENDIF.
* << Fim da inclusão
READ TABLE itab_zycit003 INDEX 1.
IF itab_zycit003-qtd_itend IS INITIAL.
PERFORM reclassificacao_ia_funcao.
ENDIF.
PERFORM verifica_exit USING 'D'
'/PWS/SAPMZYCI023'
'DI006'.
CLEAR itab_zyglt100 .
READ TABLE itab_zyglt100 WITH KEY zexit = 'DI006' BINARY SEARCH.
IF sy-subrc EQ 0.
...
...
FORM data_dele.
* >> Início da inclusão: FORM DATA_DELE
DATA lt_zycit036 TYPE /pws/zycit036 OCCURS 0 WITH HEADER LINE.
* << Fim da inclusão
...
...
LOOP AT itab_zycit003.
CLEAR itab_zycit003-nratoc.
MODIFY itab_zycit003 INDEX sy-tabix.
UPDATE /pws/zycit003 SET nratoc = itab_zycit003-nratoc
WHERE nrseq = itab_zycit003-nrseq
AND ebeln = itab_zycit003-ebeln
AND ebelp = itab_zycit003-ebelp.
MOVE-CORRESPONDING itab_zycit003 TO /pws/zycit003.
PERFORM carrega_log USING '/PWS/ZYCIT003' 'U'
' ' '/PWS/SAPMZYCI001' /pws/zycit003-nrseq.
ENDLOOP.
ENDIF.
* >> Início da inclusão: FORM DATA_DELE
READ TABLE itab_zycit001 INDEX 1.
IF itab_zycit001-modalidade EQ '07'.
SELECT * FROM /pws/zycit036 INTO TABLE lt_zycit036
WHERE nrseq = itab_zycit001-nrseq
AND nrseqori = /pws/zycie085-nrseqdi
AND origem = 'DI'.
LOOP AT lt_zycit036.
MOVE-CORRESPONDING lt_zycit036 TO /pws/zycit036.
PERFORM carrega_log USING '/PWS/ZYCIT036' 'D'
' ' '/PWS/SAPMZYCI023' /pws/zycit036-nrseqori.
ENDLOOP.
DELETE FROM /pws/zycit036 WHERE nrseq = itab_zycit001-nrseq
AND nrseqori = /pws/zycie085-nrseqdi.
ENDIF.
* << Fim da inclusão
COMMIT WORK.
LEAVE PROGRAM.
ENDFORM.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI017F02
...
MOVE-CORRESPONDING wa_nf TO /pws/zycie043.
MODIFY /pws/zycit043 FROM /pws/zycie043.
IF sy-subrc EQ 0.
MOVE-CORRESPONDING /pws/zycie043 TO /pws/zycit043.
PERFORM carrega_log USING '/PWS/ZYCIT043' 'U'
' ' '/PWS/SAPMZYCI016' /pws/zycit043-nrseq.
ENDIF.
ENDIF.
PERFORM clear_date_batch.
ELSE.
* >> Início da inclusão: FORM REVERSE_DOCUMENTO_FATURA_MR8M
IF wa_nf-belnr_mr1m EQ '0000000000' AND
/pws/zycit001-modalidade EQ '07'.
CLEAR: wa_nf-statusp_mr1m,
wa_nf-belnr_mr1m ,
wa_nf-dt_mr1m ,
v_mr1m_ok .
itab_zycit050-estorno = 'X'.
v_mr8m_ok = 'S' .
IF v_existe_nfr NE 'S'.
MOVE-CORRESPONDING wa_nf TO /pws/zycie041.
MODIFY /pws/zycit041 FROM /pws/zycie041.
IF sy-subrc EQ 0.
MOVE-CORRESPONDING /pws/zycie041 TO /pws/zycit041.
PERFORM carrega_log USING '/PWS/ZYCIT041' 'U'
' ' '/PWS/SAPMZYCI016' /pws/zycit041-nrseq.
ENDIF.
ELSE.
MOVE-CORRESPONDING wa_nf TO /pws/zycie043.
MODIFY /pws/zycit043 FROM /pws/zycie043.
IF sy-subrc EQ 0.
MOVE-CORRESPONDING /pws/zycie043 TO /pws/zycit043.
PERFORM carrega_log USING '/PWS/ZYCIT043' 'U'
' ' '/PWS/SAPMZYCI016' /pws/zycit043-nrseq.
ENDIF.
ENDIF.
PERFORM clear_date_batch.
EXIT.
ENDIF.
* << Fim da inclusão
PERFORM clear_date_batch.
REFRESH itab_itens_002.
itab_zycie033-tcode = 'MR8M'.
itab_zycie033-tabela = 'WA_NF'.
itab_zycie033-cpochv = wa_nf-nrseq.
...
...
FORM fill_date_f_51_docs_miro.
DATA v_awkey LIKE bkpf-awkey.
v_f51 = 'MIRO'.
PERFORM clear_date_batch.
DATA: v_ano TYPE t001b-frye1,
v_gjahr TYPE t001b-frye1.
IF /pws/zycie041-bukrs IS INITIAL
AND NOT /pws/zycie043-bukrs IS INITIAL.
/pws/zycie041-bukrs = /pws/zycie043-bukrs.
ENDIF.
* >> Início da inclusão: FORM FILL_DATE_F_51_DOCS_MIRO
IF wa_nf-belnr_mr1m EQ '0000000000' AND
/pws/zycit001-modalidade EQ '07'.
EXIT.
ENDIF.
* << Fim da inclusão
CALL FUNCTION '/PWS/ZYGL_OBTEM_ANO_CONTABIL'
EXPORTING
v_bukrs = /pws/zycie041-bukrs
v_date = wa_nf-dt_mr1m
IMPORTING
v_year = v_ano
EXCEPTIONS
variante_de_exercicio = 1
data_nao_encontrada = 2
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI017X01
...
* >> Início da inclusão:
DATA v_nomiro TYPE c.
* << Fim da inclusão
DATA: OF COMMON PART.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI017F03
...
UPDATE /pws/zycit042 SET lgort = itab_itens_nf-lgort
WHERE nrseqnf = itab_itens_nf-nrseqnf
AND nrseq = itab_itens_nf-nrseq
AND nfglobal = itab_itens_nf-nfglobal
AND ebeln = itab_itens_nf-ebeln
AND ebelp = itab_itens_nf-ebelp.
MOVE-CORRESPONDING itab_itens_nf TO /pws/zycit042.
PERFORM carrega_log USING '/PWS/ZYCIT042' 'U'
' ' '/PWS/SAPMZYCI016' /pws/zycit042-nrseqnf.
ENDIF.
* >> Início da inclusão: FORM CONGELAMOV_SALDO_ATO
IF wa_nf-belnr_mr1m EQ '0000000000' AND
/pws/zycit001-modalidade EQ '07'.
CLEAR itab_zycit036_aux2.
UPDATE /pws/zycit036
SET congelamov = 'X'
vlmov = itab_zycit036_aux2-vlmov
waers_mov = itab_zycit036_aux2-waers_mov
WHERE nrseq = itab_itens_nf-nrseq
AND ebelp = itab_itens_nf-ebelp
AND ebeln = itab_itens_nf-ebeln
AND congelamov = itab_zycit036_aux2-congelamov
AND codigo NOT IN ('FOB', 'CIF', 'C&F').
ELSE.
* << Fim da inclusão
UPDATE /pws/zycit036 SET congelamov = 'X'
WHERE nrseq = itab_itens_nf-nrseq
AND ebelp = itab_itens_nf-ebelp
AND ebeln = itab_itens_nf-ebeln
AND origem NE 'PED'.
* >> Início da inclusão: FORM CONGELAMOV_SALDO_ATO
ENDIF.
* << Fim da inclusão
ENDLOOP.
LOOP AT itab_zycit036_aux2.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI017F01
...
itab_itemdata-tax_code = wa_zycit000-iva .
PERFORM retorna_decimais USING itab_zycit031-waers
CHANGING itab_zycit031-wrbtr.
MODIFY itab_zycit031 INDEX v_tabix.
itab_itemdata-item_amount = itab_zycit031-wrbtr.
itab_itemdata-quantity = itab_zycit031-menge.
itab_itemdata-po_unit = itab_zycit031-meins.
itab_itemdata-po_unit_iso = itab_zycit031-meins.
itab_itemdata-po_pr_uom = itab_ekpo-bprme .
itab_itemdata-po_pr_uom_iso = itab_ekpo-bprme .
* >> Início da inclusão: FORM FILL_DATE_MR1M
IF /pws/zycit001-modalidade EQ '07'.
itab_itemdata-de_cre_ind = 'X' .
ENDIF.
* << Fim da inclusão
IF NOT itab_ekpo-bpumz IS INITIAL AND
NOT itab_ekpo-bpumn IS INITIAL.
itab_itemdata-po_pr_qnt = itab_zycit031-menge *
( itab_ekpo-bpumz / itab_ekpo-bpumn ).
ELSE.
PERFORM converte_unidades USING itab_zycit003-matnr
itab_zycit003-meins
itab_ekpo-bprme
CHANGING itab_zycit031-menge.
itab_itemdata-po_pr_qnt = itab_zycit031-menge.
...
...
PERFORM f_exec_open IN PROGRAM (w_prog) USING v_zuonr
CHANGING
wa_headerdata
IF FOUND.
ENDIF.
ENDIF.
IF NOT v_xblnr IS INITIAL.
wa_headerdata-ref_doc_no = v_xblnr.
ELSE.
wa_headerdata-ref_doc_no = itab_zycie033-bktxt.
ENDIF.
* >> Início da inclusão: FORM FILL_DATE_MR1M
IF v_nomiro = 'X'.
CLEAR v_answer.
CALL FUNCTION 'POPUP_TO_CONFIRM_STEP'
EXPORTING
defaultoption = 'N'
textline1 = text-282
textline2 = text-283
titel = text-281
IMPORTING
answer = v_answer
EXCEPTIONS
OTHERS = 1.
IF sy-subrc EQ 0 AND v_answer EQ 'J'.
v_mr1m_ok = 'S'.
wa_nf-belnr_mr1m = '0000000000'.
wa_nf-statusp_mr1m = 'C'.
wa_nf-dt_mr1m = sy-datlo.
PERFORM unlock_pedido.
CALL FUNCTION 'MESSAGES_INITIALIZE'.
EXIT.
ELSE.
CLEAR v_mr1m_ok.
EXIT.
ENDIF.
ENDIF.
* << Fim da inclusão
CALL FUNCTION 'MRM_DUPLICATE_INVOICE_CHECK'
EXPORTING
i_bukrs = wa_headerdata-comp_code
i_lifnr = itab_zycie033-lifnr
i_waers = wa_headerdata-currency
i_xblnr = wa_headerdata-ref_doc_no
...
...
ncm = itab_zycit003-j_1bnbm
RECEIVING
acrescimo = v_acrescimo.
IF v_acrescimo IS INITIAL.
DELETE itab_zycit036_aux2.
ENDIF.
ENDIF.
ENDIF.
ENDLOOP.
ENDLOOP.
* >> Início da inclusão: FORM GET_PARAMETERS_MRM1_RECEB
CLEAR v_nomiro.
* << Fim da inclusão
FREE itab_custo_item.
LOOP AT itab_itens_nf.
CLEAR itab_custo_item.
LOOP AT itab_zycit036_aux2
WHERE nrseq = itab_itens_nf-nrseq
AND ebeln = itab_itens_nf-ebeln
AND ebelp = itab_itens_nf-ebelp.
READ TABLE itab_zycit003 WITH KEY nrseq = itab_itens_nf-nrseq
ebeln = itab_itens_nf-ebeln
ebelp = itab_itens_nf-ebelp.
READ TABLE itab_zycit263 WITH KEY ebeln = itab_itens_nf-ebeln
ebelp = itab_itens_nf-ebelp.
CLEAR itab_zycit006.
READ TABLE itab_zycit006 WITH KEY
nrseq_pgfat = itab_zycit263-nrseq_pgfat.
* >> Início da exclusão: FORM GET_PARAMETERS_MRM1_RECEB
IF itab_zycit006-frpagto EQ 'A' AND itab_zycit006-tpfatura NE '99'.
* << Fim da exclusão
* >> Início da inclusão: FORM GET_PARAMETERS_MRM1_RECEB
IF ( itab_zycit006-frpagto EQ 'A'
AND itab_zycit006-tpfatura NE '99' ) OR
/pws/zycit001-modalidade EQ '07'.
* << Fim da inclusão
IF itab_zycit036_aux2-codigo EQ 'FOB' OR
itab_zycit036_aux2-codigo EQ 'CIF' OR
itab_zycit036_aux2-codigo EQ 'C&F'.
CONTINUE.
ENDIF.
ENDIF.
itab_custo_item-nrseq = itab_zycit036_aux2-nrseq.
itab_custo_item-ebeln = itab_zycit036_aux2-ebeln.
itab_custo_item-ebelp = itab_zycit036_aux2-ebelp.
itab_custo_item-ebelp = itab_zycit036_aux2-ebelp.
itab_custo_item-waers_mov = wa_zycbt007-waersb.
itab_custo_item-vlmov = itab_zycit036_aux2-vlmov +
itab_custo_item-vlmov .
ENDLOOP.
READ TABLE itab_zycit042_aux WITH KEY nrseq = itab_itens_nf-nrseq
nfglobal = itab_itens_nf-nfglobal
ebeln = itab_itens_nf-ebeln
ebelp = itab_itens_nf-ebelp.
itab_custo_item-vlmov = itab_custo_item-vlmov /
itab_zycit042_aux-qtd_iten * itab_itens_nf-qtd_item.
* >> Início da inclusão: FORM GET_PARAMETERS_MRM1_RECEB
IF /pws/zycit001-modalidade EQ '07'
AND itab_custo_item-vlmov < 0.
v_nomiro = 'X'.
ENDIF.
* << Fim da inclusão
APPEND itab_custo_item.
ENDLOOP.
SELECT * FROM /pws/zycbt011 INTO wa_zycbt011
WHERE codeven = '006M'.
ENDSELECT.
ENDFORM.
...
...
txtnr = '030'
zeile = '01'.
v_messag = 'X'.
CLEAR: wa_nf-statusp_mr1m,
wa_nf-belnr_mr1m ,
wa_nf-dt_mr1m .
CLEAR v_mr1m_ok .
itab_zycit050-estorno = 'X'.
v_mr8m_ok = e_mr8m_ok .
PERFORM clear_date_batch.
ELSE.
* >> Início da inclusão: FORM REVERSE_DOCUMENT_MR8M
IF wa_nf-belnr_mr1m EQ '0000000000' AND
/pws/zycit001-modalidade EQ '07'.
CLEAR: wa_nf-statusp_mr1m,
wa_nf-belnr_mr1m ,
wa_nf-dt_mr1m ,
v_mr1m_ok .
itab_zycit050-estorno = 'X'.
v_mr8m_ok = 'S'.
IF v_existe_nfr NE 'S'.
MOVE-CORRESPONDING wa_nf TO /pws/zycie041.
MODIFY /pws/zycit041 FROM /pws/zycie041.
IF sy-subrc EQ 0.
MOVE-CORRESPONDING /pws/zycie041 TO /pws/zycit041.
PERFORM carrega_log USING '/PWS/ZYCIT041' 'U'
' ' '/PWS/SAPMZYCI016' /pws/zycit041-nrseq.
ENDIF.
ELSE.
MOVE-CORRESPONDING wa_nf TO /pws/zycie043.
MODIFY /pws/zycit043 FROM /pws/zycie043.
IF sy-subrc EQ 0.
MOVE-CORRESPONDING /pws/zycie043 TO /pws/zycit043.
PERFORM carrega_log USING '/PWS/ZYCIT043' 'U'
' ' '/PWS/SAPMZYCI016' /pws/zycit043-nrseq.
ENDIF.
ENDIF.
PERFORM clear_date_batch.
EXIT.
ENDIF.
* << Fim da inclusão
REFRESH itab_itens_002.
PERFORM get_parameters_mrm1_receb.
itab_zycie033-tcode = 'MR8M'.
itab_zycie033-tabela = 'WA_NF'.
itab_zycie033-bukrs = wa_nf-bukrs.
itab_zycie033-cpochv = wa_nf-nrseq.
itab_zycie033-belnr = wa_nf-belnr_mr1m.
itab_zycie033-budat = wa_nf-dt_mr1m.
itab_zycie033-gjahr = wa_nf-dt_mr1m+0(4).
v_belnr_ant = wa_nf-belnr_mr1m.
...
...
'RCB018'.
CLEAR itab_zyglt100 .
READ TABLE itab_zyglt100 WITH KEY zexit = 'RCB018' BINARY SEARCH.
IF sy-subrc EQ 0.
IF NOT itab_zyglt100-zexit_ativa IS INITIAL.
PERFORM (itab_zyglt100-formulario) IN PROGRAM
(itab_zyglt100-programa) IF FOUND.
ENDIF.
ENDIF.
IF e_subrc EQ 0.
* >> Início da inclusão: FORM FILL_DATE_F_51
IF wa_nf-belnr_mr1m EQ '0000000000' AND
/pws/zycit001-modalidade EQ '07'.
v_f_51_ok = 'S'.
EXIT.
ENDIF.
* << Fim da inclusão
PERFORM multiplos_lancamentos_f_51.
ENDIF.
PERFORM get_parameters_f-51.
READ TABLE itab_zycit003 INDEX 1.
itab_zycbe033-mandt = sy-mandt.
itab_zycbe033-tcode = v_trans.
itab_zycbe033-tabela = v_ntabela.
itab_zycbe033-cpochv = wa_nf-nrseq.
IF v_existe_nfr EQ 'S'.
SELECT SINGLE * FROM j_1bnfdoc
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI023F04
...
* >> Início da inclusão:
FORM reclass_interc.
DATA: v_vlfren TYPE /pws/zycit100-vlfre,
v_vldi TYPE /pws/zycit100-vlfob,
v_vlitem TYPE /pws/zycit085-vlfre,
v_vltemp TYPE /pws/zycit085-vlfre,
v_gdatu TYPE tcurf-gdatu,
itab_zycit036 TYPE STANDARD TABLE OF /pws/zycit036,
wa_zycit036 TYPE /pws/zycit036,
itab_rseg TYPE STANDARD TABLE OF rseg WITH HEADER LINE,
itab_rbkp TYPE STANDARD TABLE OF rbkp WITH HEADER LINE.
DATA: BEGIN OF itab_sel OCCURS 0,
belnr TYPE rbkp-belnr,
gjahr TYPE rbkp-gjahr,
END OF itab_sel.
DATA: BEGIN OF itab_tcurf OCCURS 0,
de TYPE tcurf-ffact,
para TYPE tcurf-tfact,
fcurr TYPE tcurf-fcurr,
tcurr TYPE tcurf-tcurr,
gdatu TYPE tcurf-gdatu,
kurst TYPE tcurf-kurst,
END OF itab_tcurf.
SELECT SINGLE * FROM t001 WHERE bukrs EQ /pws/zycie085-bukrs.
SELECT SINGLE * FROM /pws/zycit031
WHERE codmod = 'D'
AND inco1 = itab_zycit001-inco1
AND land1 EQ t001-land1.
REFRESH: itab_zycit094, itab_zycit006.
READ TABLE itab_zycit003 INDEX 1.
SELECT * FROM /pws/zycit094 INTO TABLE itab_zycit094
WHERE nrseq = itab_zycit003-nrseq. "#EC CI_NOFIRST
READ TABLE itab_zycit094 INDEX 1.
SELECT * FROM /pws/zycit006 INTO TABLE itab_zycit006
WHERE nrseqce = itab_zycit094-nrseqce
AND tpfatura EQ '01'
AND eliminado = space. "#EC CI_NOFIELD
SELECT SINGLE *
FROM /pws/zycit031
WHERE codmod EQ 'D'
AND inco1 EQ itab_zycit001-inco1
AND land1 EQ t001-land1.
LOOP AT itab_zycit006.
CALL FUNCTION '/PWS/ZYGL_OBTEM_ANO_CONTABIL'
EXPORTING
v_bukrs = itab_zycit001-bukrs
v_date = itab_zycit006-dt_mr1m
IMPORTING
v_year = itab_sel-gjahr
EXCEPTIONS
variante_de_exercicio = 1
data_nao_encontrada = 2
empresa_nao_encontrada = 3
period_in_not_valid = 4
period_not_assigned = 5
version_undefined = 6
OTHERS = 7.
itab_sel-belnr = itab_zycit006-belnr_mr1m.
APPEND itab_sel.
ENDLOOP.
SELECT * FROM rbkp
INTO TABLE itab_rbkp
FOR ALL ENTRIES IN itab_sel
WHERE belnr = itab_sel-belnr
AND gjahr = itab_sel-gjahr.
SELECT * FROM rseg
INTO TABLE itab_rseg
FOR ALL ENTRIES IN itab_sel
WHERE belnr = itab_sel-belnr
AND gjahr = itab_sel-gjahr.
CLEAR v_tntgew.
LOOP AT itab_zycit003.
v_tntgew = v_tntgew + itab_zycit003-ntgew.
ENDLOOP.
IF /pws/zycit000-kurst IS INITIAL.
/pws/zycit000-kurst = 'M'.
ENDIF.
CLEAR itab_zycit006.
v_gdatu = '99999999' - sy-datum.
LOOP AT itab_it.
CLEAR: wa_zycit036, v_vlitem.
itab_it-vlfob = itab_it-dttaxbem * itab_it-vlfob.
READ TABLE itab_zycit003 WITH KEY
nrseq = itab_it-nrseq
ebeln = itab_it-ebeln
ebelp = itab_it-ebelp .
LOOP AT itab_rseg WHERE ebeln = itab_it-ebeln
AND ebelp = itab_it-ebelp.
READ TABLE itab_rbkp WITH KEY
belnr = itab_rseg-belnr
gjahr = itab_rseg-gjahr.
LOOP AT itab_tcurf
WHERE fcurr = itab_rbkp-waers
AND tcurr = wa_zycbt007-waersb
AND gdatu => v_gdatu
AND kurst = /pws/zycit000-kurst. "#EC PORTABLE
ENDLOOP.
IF sy-subrc NE 0.
SELECT SINGLE ffact tfact fcurr tcurr
gdatu kurst
FROM tcurf
INTO itab_tcurf
WHERE fcurr = itab_rbkp-waers
AND tcurr = wa_zycbt007-waersb
AND gdatu >= v_gdatu
AND kurst = /pws/zycit000-kurst. "#EC PORTABLE
IF sy-subrc EQ 0.
APPEND itab_tcurf.
ENDIF.
ENDIF.
IF sy-subrc NE 0.
itab_tcurf-para = itab_tcurf-de = 1.
itab_tcurf-gdatu = v_gdatu.
itab_tcurf-fcurr = itab_rbkp-waers.
itab_tcurf-tcurr = wa_zycbt007-waersb.
APPEND itab_tcurf.
ENDIF.
v_vltemp = itab_rseg-wrbtr *
( ( itab_rbkp-kursf * itab_tcurf-para ) /
itab_tcurf-de ).
ADD v_vltemp TO v_vlitem.
ENDLOOP.
IF NOT /pws/zycie093-ternacion IS INITIAL.
IF NOT v_tntgew IS INITIAL.
v_vlfren = ( ( itab_zycit003-ntgew / v_tntgew ) *
/pws/zycie093-ternacion ) * /pws/zycie085-ukursfre .
ENDIF.
ENDIF.
PERFORM retorna_decimais USING /pws/zycie085-waersfre
CHANGING v_vlfren.
IF /pws/zycit031-inco1_ci = 'FOB'.
wa_zycit036-vlreal = itab_it-vlfob - v_vlitem.
ELSEIF /pws/zycit031-inco1_ci = 'C&F'.
wa_zycit036-vlreal = itab_it-vlfob + itab_it-vlfre +
v_vlfren - v_vlitem.
ELSEIF /pws/zycit031-inco1_ci = 'CIF'.
wa_zycit036-vlreal = itab_it-vlfob +
itab_it-vlfre + v_vlfren + itab_it-vlseg -
v_vlitem.
ELSEIF /pws/zycit031-inco1_ci = 'C+I'.
wa_zycit036-vlreal = itab_it-vlfob + itab_it-vlseg -
v_vlitem.
ENDIF.
CHECK wa_zycit036-vlreal NE 0.
wa_zycit036-nrseq = itab_it-nrseq.
wa_zycit036-nrseqori = itab_it-nrseqdi.
wa_zycit036-ebeln = itab_it-ebeln.
wa_zycit036-ebelp = itab_it-ebelp.
wa_zycit036-bukrs = itab_zycit001-bukrs.
wa_zycit036-werks = itab_zycit003-werks.
wa_zycit036-embarca = /pws/zycie085-identify.
wa_zycit036-origem = 'DI'.
wa_zycit036-codmod = 'D'.
wa_zycit036-usernamec = sy-uname.
wa_zycit036-dtuserc = sy-datlo.
wa_zycit036-hruserc = sy-timlo.
wa_zycit036-codigo = 'VARCAMB'.
wa_zycit036-waers_real = wa_zycbt007-waersb.
APPEND wa_zycit036 TO itab_zycit036.
ENDLOOP.
MODIFY /pws/zycit036 FROM TABLE itab_zycit036.
ENDFORM.
.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/LZYCIGF10F01
...
DATA: v_awkey TYPE bkpf-awkey ,
v_vlmerc TYPE rbkp-rmwwr .
MOVE: /pws/zycie001-bukrs TO /pws/zycie006-bukrs ,
/pws/zycie001-waers TO /pws/zycie006-waers_emb ,
/pws/zycie001-inco1 TO /pws/zycie006-inco1 ,
/pws/zycie001-j_1bbranch TO /pws/zycie006-j_1bbranch,
v_ntgew TO /pws/zycie006-ntgew ,
'KG' TO /pws/zycie006-gewei ,
'01' TO /pws/zycie006-tpfatura ,
'N' TO /pws/zycie006-frpagto ,
* >> Início da exclusão: FORM CABECALHO_FATURA
'04' TO /pws/zycie006-ratval ,
* << Fim da exclusão
* >> Início da inclusão: FORM CABECALHO_FATURA
'4' TO /pws/zycie006-ratval ,
* << Fim da inclusão
'S' TO /pws/zycie006-flagfabr ,
'S' TO /pws/zycie006-ratfre ,
* >> Início da exclusão: FORM CABECALHO_FATURA
'S' TO /pws/zycie006-rateio ,
* << Fim da exclusão
* >> Início da inclusão: FORM CABECALHO_FATURA
'N' TO /pws/zycie006-rateio ,
* << Fim da inclusão
'1' TO /pws/zycie006-vinculo ,
sy-mandt TO /pws/zycie006-mandt ,
...
...
SELECT SINGLE fdgrv FROM lfb1 INTO v_fdgrv
WHERE lifnr = /pws/zycie006-lifnr
AND bukrs = /pws/zycie006-bukrs.
SELECT SINGLE * FROM t035
WHERE grupp = v_fdgrv.
MOVE t035-ebene TO /pws/zycie006-ebene.
SELECT SINGLE zterm FROM ekko INTO /pws/zycie006-zterm
WHERE ebeln = itab_zycit003-ebeln.
LOOP AT itab_zycit003 WHERE
lifnrfabr NE space.
* >> Início da exclusão: FORM CABECALHO_FATURA
ENDLOOP.
IF sy-subrc NE 0.
/pws/zycie006-fabricante = 3.
CLEAR: /pws/zycie006-descfab,
/pws/zycie006-paisfab ,
/pws/zycie006-lifnrfabr,
/pws/zycie006-flagfabr .
ELSE.
READ TABLE itab_zycit003 INDEX 1.
LOOP AT itab_zycit003 WHERE
lifnrfabr NE itab_zycit003-lifnrfabr.
* << Fim da exclusão
EXIT.
ENDLOOP.
* >> Início da exclusão: FORM CABECALHO_FATURA
IF sy-subrc NE 0 AND
NOT itab_zycit003-lifnrfabr IS INITIAL.
/pws/zycie006-lifnrfabr = itab_zycit003-lifnrfabr.
/pws/zycie006-fabricante = 0.
SELECT SINGLE name1 land1
* << Fim da exclusão
* >> Início da inclusão: FORM CABECALHO_FATURA
/pws/zycie006-ratseg = 1.
/pws/zycie006-lifnrfabr =
itab_zycit003-lifnrfabr = /pws/zycie006-lifnr.
/pws/zycie006-fabricante = 1.
SELECT SINGLE name1 land1 FROM lfa1
* << Fim da inclusão
INTO (/pws/zycie006-descfab, /pws/zycie006-paisfab)
* >> Início da exclusão: FORM CABECALHO_FATURA
FROM lfa1
* << Fim da exclusão
WHERE lifnr = /pws/zycie006-lifnrfabr.
* >> Início da exclusão: FORM CABECALHO_FATURA
IF /pws/zycie006-lifnrfabr EQ /pws/zycie006-lifnr.
/pws/zycie006-fabricante = 1.
ENDIF.
ELSE.
/pws/zycie006-fabricante = 2.
ENDIF.
ENDIF.
SELECT SINGLE ratval
INTO /pws/zycie006-ratval
FROM /pws/zycit391
WHERE flag = 'X'. "#EC CI_NOFIELD
* << Fim da exclusão
* >> Início da inclusão: FORM CABECALHO_FATURA
MODIFY itab_zycit003 TRANSPORTING lifnrfabr
WHERE lifnrfabr EQ space.
* << Fim da inclusão
PERFORM determina_datas.
CLEAR /pws/zycie006-ntgew.
LOOP AT t_zycit263.
/pws/zycie006-ntgew = /pws/zycie006-ntgew + t_zycit263-ntgew.
ENDLOOP.
/pws/zycie006-dataprvtsr = /pws/zycie006-dtvencto.
/pws/zycie006-statusp_mr1m = 'X'.
/pws/zycie006-statusp = 'C'.
/pws/zycie006-dt_belnrp = itab_rbkp-budat.
/pws/zycie006-dt_mr1m = itab_rbkp-budat.
...
...
/pws/zycie006-belnr_mr1m = itab_rbkp-belnr.
CLEAR: v_awkey, v_ano.
v_ano = /pws/zycie006-dt_mr1m(4).
CONCATENATE /pws/zycie006-belnr_mr1m v_ano INTO v_awkey.
SELECT SINGLE belnr FROM bkpf INTO /pws/zycie006-belnr_p
WHERE awtyp EQ 'RMRP'
AND awkey EQ v_awkey.
ENDFORM.
FORM itens_fatura.
DATA: v_menge TYPE /pws/zycit003-qtd_iten.
* >> Início da exclusão: FORM ITENS_FATURA
CLEAR t_zycit263 .
v_menge = itab_zycit003-qtd_iten - v_qtd_iten.
* << Fim da exclusão
* >> Início da inclusão: FORM ITENS_FATURA
v_menge = itab_zycit003-qtd_iten.
* << Fim da inclusão
IF v_menge = 0.
no_quantity = 'X' .
ENDIF.
* >> Início da exclusão: FORM ITENS_FATURA
IF itab_rseg-menge GE v_menge .
* << Fim da exclusão
* >> Início da inclusão: FORM ITENS_FATURA
IF itab_rseg-menge GT v_menge .
* << Fim da inclusão
EXIT.
ELSE.
t_zycit263-qtd_iten = itab_rseg-menge .
ENDIF.
t_zycit263-mandt = sy-mandt .
t_zycit263-nrseq = /pws/zycie001-nrseq.
t_zycit263-ebeln = itab_rseg-ebeln.
t_zycit263-ebelp = itab_rseg-ebelp.
t_zycit263-meins = itab_rseg-meins .
t_zycit263-waers_real = itab_zycit003-waers_real.
t_zycit263-gewei = itab_zycit003-gewei .
* >> Início da exclusão: FORM ITENS_FATURA
t_zycit263-ntgew = itab_zycit003-ntgew /
itab_zycit003-qtd_iten * itab_rseg-menge.
t_zycit263-vlreal = itab_zycit003-netpr *
itab_rseg-menge / itab_zycit003-qtd_iten.
* << Fim da exclusão
* >> Início da inclusão: FORM ITENS_FATURA
CLEAR itab_ekpo.
READ TABLE itab_ekpo WITH KEY ebeln = itab_rseg-ebeln
ebelp = itab_rseg-ebelp.
t_zycit263-ntgew = itab_zycit003-qtd_iten * itab_ekpo-ntgew.
PERFORM converte_unidades USING itab_zycit003-matnr
itab_ekpo-gewei
itab_zycit003-gewei
CHANGING itab_zycit003-ntgew.
t_zycit263-vlreal = itab_rseg-wrbtr / t_zycit263-qtd_iten.
* << Fim da inclusão
APPEND t_zycit263.
v_item = 'X'.
ENDFORM.
FORM seleciona_dados_miro.
* >> Início da exclusão: FORM SELECIONA_DADOS_MIRO
SELECT * FROM rseg
INTO TABLE itab_rseg
* << Fim da exclusão
* >> Início da inclusão: FORM SELECIONA_DADOS_MIRO
DATA v_xsplt TYPE c.
DATA: itab_zycit263 TYPE STANDARD TABLE OF /pws/zycit263
WITH HEADER LINE.
DATA: BEGIN OF it_zycit003 OCCURS 0,
nrseq TYPE /pws/zycit003-nrseq,
ebeln TYPE /pws/zycit003-ebeln,
ebelp TYPE /pws/zycit003-ebelp,
END OF it_zycit003.
DATA: BEGIN OF it_zycit003t OCCURS 0.
INCLUDE STRUCTURE /pws/zycit003.
DATA: total LIKE /pws/zycit036-vldif.
DATA: END OF it_zycit003t.
DATA: BEGIN OF itab_fat OCCURS 0,
nrseq TYPE /pws/zycit003-nrseq,
nrseq_pgfat TYPE /pws/zycit006-nrseq_pgfat,
END OF itab_fat.
REFRESH: itab_rseg, itab_rbkp.
SELECT nrseq ebeln ebelp FROM /pws/zycit003
INTO TABLE it_zycit003
FOR ALL ENTRIES IN itab_zycit003
WHERE ebeln = itab_zycit003-ebeln
AND ebelp = itab_zycit003-ebelp.
SELECT * FROM /pws/zycit263 INTO TABLE itab_zycit263
FOR ALL ENTRIES IN it_zycit003
WHERE nrseq = it_zycit003-nrseq
AND ebeln = it_zycit003-ebeln
AND ebelp = it_zycit003-ebelp
AND eliminado = space.
IF NOT itab_zycit263[] IS INITIAL.
REFRESH itab_fat.
LOOP AT itab_zycit263.
itab_fat-nrseq = itab_zycit263-nrseq.
itab_fat-nrseq_pgfat = itab_zycit263-nrseq_pgfat.
COLLECT itab_fat.
ENDLOOP.
IF NOT itab_fat[] IS INITIAL.
REFRESH itab_zycit006.
SELECT * FROM /pws/zycit006 "#EC CI_NOFIELD
INTO TABLE itab_zycit006
FOR ALL ENTRIES IN itab_fat
WHERE nrseq_pgfat EQ itab_fat-nrseq_pgfat.
ENDIF.
ENDIF.
SELECT * FROM ekbe
INTO TABLE itab_ekbe
* << Fim da inclusão
FOR ALL ENTRIES IN itab_zycit003
WHERE ebeln = itab_zycit003-ebeln
* >> Início da exclusão: FORM SELECIONA_DADOS_MIRO
AND ebelp = itab_zycit003-ebelp
AND bukrs = /pws/zycie001-bukrs. "#EC CI_NOFIELD
* << Fim da exclusão
* >> Início da inclusão: FORM SELECIONA_DADOS_MIRO
AND ebelp = itab_zycit003-ebelp
AND vgabe = '2'.
* << Fim da inclusão
IF sy-subrc EQ 0.
* >> Início da exclusão: FORM SELECIONA_DADOS_MIRO
LOOP AT itab_rseg.
READ TABLE itab_zycit003 WITH KEY
ebeln = itab_rseg-ebeln
ebelp = itab_rseg-ebelp.
IF itab_rseg-menge GT itab_zycit003-qtd_iten.
DELETE itab_rseg WHERE belnr EQ itab_rseg-belnr.
* << Fim da exclusão
* >> Início da inclusão: FORM SELECIONA_DADOS_MIRO
REFRESH it_zycit003t.
it_zycit003t[] = itab_zycit003[].
LOOP AT itab_zycit003.
LOOP AT itab_zycit263 WHERE nrseq EQ itab_zycit003-nrseq
AND ebeln EQ itab_zycit003-ebeln
AND ebelp EQ itab_zycit003-ebelp.
SUBTRACT itab_zycit263-qtd_iten FROM itab_zycit003-qtd_iten.
ENDLOOP.
IF itab_zycit003-qtd_iten <= 0.
DELETE itab_zycit003.
CONTINUE.
ENDIF.
LOOP AT itab_ekbe WHERE ebeln = itab_zycit003-ebeln
AND ebelp = itab_zycit003-ebelp.
READ TABLE itab_zycit006 WITH KEY
belnr_mr1m = itab_ekbe-belnr.
IF sy-subrc EQ 0.
DELETE itab_ekbe WHERE belnr EQ itab_ekbe-belnr.
CONTINUE.
ENDIF.
IF itab_ekbe-menge GT itab_zycit003-qtd_iten.
DELETE itab_ekbe WHERE belnr EQ itab_ekbe-belnr.
no_quantity = 'X' .
* << Fim da inclusão
ENDIF.
* >> Início da inclusão: FORM SELECIONA_DADOS_MIRO
ENDLOOP.
MODIFY itab_zycit003.
* << Fim da inclusão
ENDLOOP.
* >> Início da exclusão: FORM SELECIONA_DADOS_MIRO
IF itab_rseg[] IS INITIAL.
no_quantity = 'X' .
* << Fim da exclusão
* >> Início da inclusão: FORM SELECIONA_DADOS_MIRO
IF itab_zycit003[] IS INITIAL.
EXIT.
ENDIF.
IF itab_ekbe[] IS INITIAL.
EXIT.
ELSE.
CLEAR no_quantity.
* << Fim da inclusão
ENDIF.
* >> Início da inclusão: FORM SELECIONA_DADOS_MIRO
SORT itab_ekbe BY belnr gjahr.
DELETE ADJACENT DUPLICATES FROM itab_ekbe
COMPARING belnr gjahr.
* << Fim da inclusão
SELECT * FROM rbkp
INTO TABLE itab_rbkp
* >> Início da exclusão: FORM SELECIONA_DADOS_MIRO
FOR ALL ENTRIES IN itab_rseg
WHERE belnr = itab_rseg-belnr
AND gjahr = itab_rseg-gjahr
AND bukrs = itab_rseg-bukrs
AND stblg = space.
* << Fim da exclusão
* >> Início da inclusão: FORM SELECIONA_DADOS_MIRO
FOR ALL ENTRIES IN itab_ekbe
WHERE belnr = itab_ekbe-belnr
AND gjahr = itab_ekbe-gjahr
AND stblg = space.
* << Fim da inclusão
IF sy-subrc EQ 0.
* >> Início da exclusão: FORM SELECIONA_DADOS_MIRO
SELECT * FROM /pws/zycit006
INTO TABLE itab_zycit006
* << Fim da exclusão
* >> Início da inclusão: FORM SELECIONA_DADOS_MIRO
SELECT * FROM rseg
INTO TABLE itab_rseg
* << Fim da inclusão
FOR ALL ENTRIES IN itab_rbkp
* >> Início da exclusão: FORM SELECIONA_DADOS_MIRO
WHERE belnr_mr1m = itab_rbkp-belnr
AND eliminado = space. "#EC CI_NOFIELD
* << Fim da exclusão
* >> Início da inclusão: FORM SELECIONA_DADOS_MIRO
WHERE belnr = itab_rbkp-belnr
AND gjahr = itab_rbkp-gjahr.
* << Fim da inclusão
LOOP AT itab_rbkp.
* >> Início da exclusão: FORM SELECIONA_DADOS_MIRO
READ TABLE itab_zycit006 WITH KEY
belnr_mr1m = itab_rbkp-belnr.
IF sy-subrc EQ 0.
DELETE itab_rbkp.
* << Fim da exclusão
* >> Início da inclusão: FORM SELECIONA_DADOS_MIRO
IF NOT itab_rbkp-zterm IS INITIAL.
CLEAR v_xsplt.
SELECT SINGLE xsplt FROM t052
INTO v_xsplt
WHERE zterm EQ itab_rbkp-zterm.
IF v_xsplt EQ 'X'.
DELETE itab_rseg WHERE belnr = itab_rbkp-belnr
AND gjahr = itab_rbkp-gjahr.
DELETE itab_rbkp WHERE belnr = itab_rbkp-belnr
AND gjahr = itab_rbkp-gjahr.
CONTINUE.
ENDIF.
ENDIF.
LOOP AT itab_rseg WHERE belnr = itab_rbkp-belnr
AND gjahr = itab_rbkp-gjahr.
READ TABLE itab_zycit003 WITH KEY
ebeln = itab_rseg-ebeln
ebelp = itab_rseg-ebelp.
IF sy-subrc NE 0.
DELETE itab_rseg WHERE belnr = itab_rbkp-belnr
AND gjahr = itab_rbkp-gjahr.
DELETE itab_rbkp WHERE belnr = itab_rbkp-belnr
AND gjahr = itab_rbkp-gjahr.
EXIT.
ENDIF.
IF itab_rseg-menge GT itab_zycit003-qtd_iten.
DELETE itab_rseg WHERE belnr = itab_rbkp-belnr
AND gjahr = itab_rbkp-gjahr.
DELETE itab_rbkp WHERE belnr = itab_rbkp-belnr
AND gjahr = itab_rbkp-gjahr.
no_quantity = 'X' .
EXIT.
* << Fim da inclusão
ENDIF.
ENDLOOP.
* >> Início da inclusão: FORM SELECIONA_DADOS_MIRO
ENDLOOP.
* << Fim da inclusão
IF itab_rbkp[] IS INITIAL.
no_data = 'X' .
ENDIF.
ELSE.
no_data = 'X' .
ENDIF.
ELSE.
no_data = 'X' .
* >> Início da inclusão: FORM SELECIONA_DADOS_MIRO
ENDIF.
IF NOT itab_rseg[] IS INITIAL.
CLEAR no_quantity.
* << Fim da inclusão
ENDIF.
* >> Início da inclusão: FORM SELECIONA_DADOS_MIRO
REFRESH itab_zycit003.
itab_zycit003[] = it_zycit003t[].
* << Fim da inclusão
ENDFORM.
FORM monta_selecao CHANGING v_answer.
DATA: v_wrbtr(16) .
LOOP AT itab_rbkp.
IF NOT itab_rbkp-stblg IS INITIAL.
DELETE itab_rbkp.
ELSE.
WRITE itab_rbkp-rmwwr TO v_wrbtr CURRENCY itab_rbkp-waers.
CONCATENATE itab_rbkp-belnr itab_rbkp-gjahr itab_rbkp-xblnr
v_wrbtr INTO t_spopli-varoption SEPARATED BY space.
APPEND t_spopli .
ENDIF.
ENDLOOP.
CALL FUNCTION 'POPUP_TO_DECIDE_LIST'
EXPORTING
* >> Início da exclusão: FORM MONTA_SELECAO
mark_flag = 'X'
mark_max = '0'
* << Fim da exclusão
start_col = 0
start_row = 0
textline1 = text-002
titel = text-001
IMPORTING
answer = v_answer
TABLES
t_spopli = t_spopli
EXCEPTIONS
not_enough_answers = 1
...
...
WHERE nrseq_pgfat = itab_zycit263-nrseq_pgfat
AND eliminado = space. "#EC CI_NOFIELD
ENDIF.
ENDIF.
ENDIF.
ELSE.
no_data = 'X' .
ENDIF.
ENDFORM.
FORM cria_fatura.
* >> Início da inclusão: FORM CRIA_FATURA
REFRESH itab_ekpo.
SELECT ebeln ebelp ntgew gewei FROM ekpo
INTO TABLE itab_ekpo
FOR ALL ENTRIES IN itab_rseg
WHERE ebeln EQ itab_rseg-ebeln
AND ebelp EQ itab_rseg-ebelp.
* << Fim da inclusão
LOOP AT itab_rseg WHERE belnr = itab_rbkp-belnr .
* >> Início da exclusão: FORM CRIA_FATURA
CLEAR v_qtd_iten.
LOOP AT itab_zycit003 WHERE ebeln = itab_rseg-ebeln
AND ebelp = itab_rseg-ebelp.
READ TABLE itab_zycit263 WITH KEY
nrseq = itab_zycit003-nrseq
ebeln = itab_zycit003-ebeln
ebelp = itab_zycit003-ebelp.
* << Fim da exclusão
* >> Início da inclusão: FORM CRIA_FATURA
CLEAR: v_qtd_iten, itab_zycit003.
READ TABLE itab_zycit003 WITH KEY ebeln = itab_rseg-ebeln
ebelp = itab_rseg-ebelp.
* << Fim da inclusão
IF sy-subrc EQ 0.
* >> Início da exclusão: FORM CRIA_FATURA
LOOP AT itab_zycit263 WHERE
nrseq = itab_zycit003-nrseq AND
ebeln = itab_zycit003-ebeln AND
ebelp = itab_zycit003-ebelp.
v_qtd_iten = v_qtd_iten + itab_zycit263-qtd_iten.
ENDLOOP.
IF itab_rseg-menge LE v_qtd_iten.
* << Fim da exclusão
PERFORM itens_fatura.
* >> Início da exclusão: FORM CRIA_FATURA
ENDIF.
ELSE.
IF itab_rseg-menge LE itab_zycit003-qtd_iten.
PERFORM itens_fatura.
ENDIF.
* << Fim da exclusão
ENDIF.
ENDLOOP.
* >> Início da exclusão: FORM CRIA_FATURA
ENDLOOP.
* << Fim da exclusão
IF v_item = 'X'.
PERFORM cabecalho_fatura.
PERFORM atualizando_total.
IF NOT /pws/zycie006-belnr_p IS INITIAL.
PERFORM gravar_cambio.
ENDIF.
PERFORM custeando_despesa_inco.
CALL METHOD /pws/cl_zyci_valid_document=>find_nrseq
EXPORTING
campo = 'NRSEQ'
...
...
ENDIF.
COMMIT WORK.
IF sy-subrc EQ 0.
invoice_created = 'X' .
ENDIF.
FREE MEMORY ID '010'.
ENDIF.
ENDFORM.
FORM cria_fatura_intercompany.
PERFORM clear_tables.
* >> Início da exclusão: FORM CRIA_FATURA_INTERCOMPANY
PERFORM seleciona_miro.
* << Fim da exclusão
READ TABLE itab_rbkp WITH KEY belnr = v_doc_miro.
IF sy-subrc EQ 0 .
PERFORM cria_fatura.
* >> Início da exclusão: FORM CRIA_FATURA_INTERCOMPANY
IF t001-land1 EQ 'BR'.
PERFORM cria_f02 USING v_doc_miro
CHANGING v_belnr .
ENDIF.
* << Fim da exclusão
ELSE.
...
...
AND land1 EQ t001-land1. "#EC CI_NOFIRST
v_vlreal = /pws/zycie006-vlmerc.
DESCRIBE TABLE t_zycit263 LINES v_lines.
READ TABLE t_zycit263 INDEX 1.
IF sy-subrc = 0.
READ TABLE itab_zycit003 WITH KEY
ebeln = t_zycit263-ebeln
ebelp = t_zycit263-ebelp.
IF sy-subrc EQ 0.
v_moeda = itab_zycit003-waers.
* >> Início da exclusão: FORM ATUALIZANDO_TOTAL
ENDIF.
ENDIF.
LOOP AT itab_zycit003.
READ TABLE t_zycit263 WITH KEY ebeln = itab_zycit003-ebeln
ebelp = itab_zycit003-ebelp.
IF sy-subrc EQ 0.
IF itab_zycit003-waers NE v_moeda.
v_waers_dif = 'X'.
* << Fim da exclusão
ENDIF.
ENDIF.
* >> Início da exclusão: FORM ATUALIZANDO_TOTAL
ENDLOOP.
* << Fim da exclusão
CLEAR v_val_plan.
LOOP AT t_zycit263.
READ TABLE itab_zycit003 WITH KEY
ebeln = t_zycit263-ebeln
ebelp = t_zycit263-ebelp.
...
...
CLEAR v_valplan.
READ TABLE itab_zycit003 WITH KEY
ebeln = t_zycit263-ebeln
ebelp = t_zycit263-ebelp.
IF sy-subrc EQ 0.
IF NOT /pws/zycie006-vlmerc IS INITIAL AND
NOT t_zycit263-qtd_iten IS INITIAL.
PERFORM retorna_decimais USING /pws/zycie006-waers
CHANGING v_tot_aux .
v_valplan = itab_zycit003-netpr * t_zycit263-qtd_iten.
* >> Início da exclusão: FORM ATUALIZANDO_TOTAL
IF v_tot_aux = v_val_plan.
itab_zycit003-vlreal =
( itab_zycit003-netpr * t_zycit263-qtd_iten ) /
t_zycit263-qtd_iten .
ELSE.
itab_zycit003-vlreal =
( ( v_valplan / v_val_plan ) * v_taxa * v_tot_aux ) /
t_zycit263-qtd_iten .
ENDIF.
* << Fim da exclusão
* >> Início da inclusão: FORM ATUALIZANDO_TOTAL
itab_zycit003-vlreal = t_zycit263-vlreal * v_taxa.
* << Fim da inclusão
ELSE.
itab_zycit003-vlreal = itab_zycit003-netpr.
ENDIF.
* >> Início da exclusão: FORM ATUALIZANDO_TOTAL
t_zycit263-vlreal = itab_zycit003-vlreal.
* << Fim da exclusão
* >> Início da inclusão: FORM ATUALIZANDO_TOTAL
itab_zycit003-waers_real = /pws/zycie006-waers.
* << Fim da inclusão
IF v_index = v_lines.
IF v_vlreal IS INITIAL.
itab_zycit003-total = t_zycit263-qtd_iten * itab_zycit003-vlreal.
ELSE.
itab_zycit003-total = v_vlreal - v_total2.
ENDIF.
CLEAR v_total2.
ELSE.
itab_zycit003-total = t_zycit263-qtd_iten * itab_zycit003-vlreal.
v_total2 = v_total2 + itab_zycit003-total.
ENDIF.
* >> Início da exclusão: FORM ATUALIZANDO_TOTAL
MODIFY itab_zycit003 TRANSPORTING vlreal total
* << Fim da exclusão
* >> Início da inclusão: FORM ATUALIZANDO_TOTAL
MODIFY itab_zycit003 TRANSPORTING vlreal total waers_real
* << Fim da inclusão
WHERE nrseq = itab_zycit003-nrseq
AND ebeln = itab_zycit003-ebeln
AND ebelp = itab_zycit003-ebelp.
MODIFY t_zycit263 TRANSPORTING vlreal
WHERE nrseq = itab_zycit003-nrseq
AND ebeln = itab_zycit003-ebeln
AND ebelp = itab_zycit003-ebelp.
ENDIF.
ENDLOOP.
ENDFORM.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/LZYCIGF2F01
...
FORM move_lanctos USING p_valor
vl_variacao.
DATA: v_conta TYPE hkont,
vl_variacao_aux TYPE p DECIMALS 2,
v_valor_variacao TYPE p DECIMALS 2,
v_diferenca TYPE p DECIMALS 2,
v_cont TYPE i,
v_variacao TYPE p DECIMALS 2,
vl_total TYPE p DECIMALS 2.
MOVE vl_variacao TO vl_variacao_aux.
* >> Início da inclusão: FORM MOVE_LANCTOS
IF /pws/zycie001-modalidade NE '07' .
* << Fim da inclusão
IF vl_variacao_aux < 0.
v_valor_variacao = itab_bsis_aux-dmbtr - ABS( vl_variacao_aux ).
ELSE.
v_valor_variacao = itab_bsis_aux-dmbtr + ABS( vl_variacao_aux ).
ENDIF.
v_diferenca = v_valor_variacao - p_valor.
* >> Início da inclusão: FORM MOVE_LANCTOS
ELSE.
v_diferenca = vl_variacao_aux.
v_valor_variacao = abs( vl_variacao_aux ).
ENDIF.
* << Fim da inclusão
IF ( v_diferenca < 1
AND v_diferenca > -1
AND v_diferenca NE 0 ).
p_valor = v_valor_variacao.
ENDIF.
itab_contas-tcode = 'F-51'.
itab_contas-c_kostl = itab_contas-d_kostl = itab_di-kostl.
itab_contas-c_prctr = itab_contas-d_prctr = itab_di-prctr.
itab_contas-mandt = sy-mandt.
itab_contas-tabela = '/PWS/ZYCIT044'.
...
...
itab_di_aux-vlfob + itab_di_aux-vlfre + itab_di_aux-vlfren.
ELSEIF /pws/zycit031-inco1_ci = 'CIF'.
vl_total = vl_total +
itab_di_aux-vlfob + itab_di_aux-vlfre + itab_di_aux-vlfren +
itab_di_aux-vlseg.
ELSEIF /pws/zycit031-inco1_ci = 'C+I'.
vl_total = vl_total +
itab_di_aux-vlfob + itab_di_aux-vlseg.
ENDIF.
ENDLOOP.
* >> Início da inclusão: FORM MOVE_LANCTOS
IF /pws/zycie001-modalidade EQ '07' .
p_valor = abs( vl_variacao ).
ENDIF.
* << Fim da inclusão
CLEAR v_variacao.
LOOP AT itab_di_aux WHERE
hkont = itab_matuse_aux2-hkont.
v_cont = v_cont - 1 .
IF v_cont = 0.
itab_contas-wrbtr = p_valor - v_variacao.
ELSE.
IF /pws/zycit031-inco1_ci = 'FOB'.
itab_contas-wrbtr =
p_valor * ( itab_di_aux-vlfob / vl_total ).
...
...
IF v_bkzer IS INITIAL.
itab_contas-c_kostl = itab_contas-d_kostl = itab_di_aux-kostl.
ENDIF.
IF /pws/zycit000-clucro_ia NE space.
itab_contas-c_prctr = itab_contas-d_prctr = itab_di_aux-prctr.
ENDIF.
itab_contas-tcode = 'F-51'.
itab_contas-mandt = sy-mandt.
itab_contas-tabela = '/PWS/ZYCIT044'.
itab_contas-bschl = '40'.
* >> Início da inclusão: FORM MOVE_LANCTOS
IF /pws/zycie001-modalidade EQ '07'
AND vl_variacao_aux < 0.
itab_contas-bschl = '50'.
ENDIF.
* << Fim da inclusão
itab_contas-d_newko = itab_bsis_aux-hkont.
APPEND itab_contas.
CLEAR itab_contas.
ENDLOOP.
ENDFORM.
FORM move_lanctos_f05 USING vl_variacao.
DATA: v_conta TYPE hkont,
v_variadec TYPE /pws/zycit085-vlfre,
v_cont TYPE i,
v_variacao TYPE p DECIMALS 2,
...
...
CONTINUE.
ENDIF.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
input = itab_matuse_aux2-hkont
IMPORTING
output = itab_matuse_aux2-hkont.
UNPACK p_zycit006-belnr_p TO p_zycit006-belnr_p.
READ TABLE itab_bsis WITH KEY hkont = itab_matuse_aux2-hkont
belnr = p_zycit006-belnr_p.
* >> Início da exclusão: FORM FILL_DATE_F_51_VARIACAO
IF sy-subrc = 0.
itab_zycbt036-mandt = sy-mandt.
itab_zycbt036-tcode = 'F-51'.
itab_zycbt036-tabela = '/PWS/ZYCIT044'.
itab_zycbt036-cpochv = /pws/zycie085-nrseqdi.
itab_zycbt036-dtdocto = p_zycit006-dtlanc.
UNPACK itab_bsis-belnr TO itab_bsis-belnr.
itab_zycbt036-belnr = itab_bsis-belnr.
CALL FUNCTION '/PWS/ZYGL_OBTEM_ANO_CONTABIL'
EXPORTING
v_bukrs = /pws/zycie085-bukrs
v_date = p_zycit006-dt_belnrp
IMPORTING
v_year = v_ano
EXCEPTIONS
variante_de_exercicio = 1
data_nao_encontrada = 2
empresa_nao_encontrada = 3
period_in_not_valid = 4
period_not_assigned = 5
version_undefined = 6
OTHERS = 7.
IF sy-subrc NE 0.
v_ano = p_zycit006+0(4).
ENDIF.
SELECT SINGLE awkey FROM bkpf INTO itab_zycbt036-awkey
WHERE belnr = itab_bsis-belnr
AND bukrs = p_zycit006-bukrs
AND gjahr = v_ano.
APPEND itab_zycbt036.
CLEAR itab_zycbt036.
ENDIF.
ENDLOOP.
ELSE.
LOOP AT p_zycit006 WHERE belnr_f_02 NE space.
READ TABLE itab_di INDEX 1.
IF p_zycit006-tpfatura EQ '02' AND itab_di-vlfre IS INITIAL.
CONTINUE.
ELSEIF p_zycit006-tpfatura EQ '03' AND itab_di-vlseg IS INITIAL.
CONTINUE.
ENDIF.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
input = itab_matuse_aux2-hkont
IMPORTING
output = itab_matuse_aux2-hkont.
UNPACK p_zycit006-belnr_p TO p_zycit006-belnr_f_02.
READ TABLE itab_bsis WITH KEY hkont = itab_matuse_aux2-hkont
belnr = p_zycit006-belnr_f_02.
* << Fim da exclusão
IF sy-subrc = 0.
itab_zycbt036-mandt = sy-mandt.
itab_zycbt036-tcode = 'F-51'.
itab_zycbt036-tabela = '/PWS/ZYCIT044'.
itab_zycbt036-cpochv = /pws/zycie085-nrseqdi.
itab_zycbt036-dtdocto = p_zycit006-dtlanc.
UNPACK itab_bsis-belnr TO itab_bsis-belnr.
itab_zycbt036-belnr = itab_bsis-belnr.
CALL FUNCTION '/PWS/ZYGL_OBTEM_ANO_CONTABIL'
EXPORTING
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI023X01
...
* >> Início da inclusão:
TABLES /pws/zycit036.
* << Fim da inclusão
DATA: BEGIN OF COMMON PART a.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI003O01
...
ELSE.
screen-required = 1.
MODIFY SCREEN.
ENDIF.
IF t001-land1 NE 'CL'.
screen-input = 0.
screen-invisible = 1.
MODIFY SCREEN.
ENDIF.
ENDIF.
* >> Início da inclusão: MODULE SET_SCREEN
IF /pws/zycit001-modalidade EQ '07'.
IF screen-name = '/PWS/ZYCIE006-VLMERC' OR
screen-name = '/PWS/ZYCIE006-VLFRE' OR
screen-name = '/PWS/ZYCIE006-VLSEG' OR
screen-name = '/PWS/ZYCIE006-DTINCL'.
screen-input = '0'.
MODIFY SCREEN.
ENDIF.
ENDIF.
* << Fim da inclusão
ENDLOOP.
IF /pws/zycie006-vlmerc IS INITIAL AND
/pws/zycie006-vlfre IS INITIAL AND
/pws/zycie006-vlseg IS INITIAL.
CLEAR /pws/zycie006-vltotal.
ENDIF.
WHEN '0106'.
LOOP AT SCREEN.
IF v_status_s = 0 OR sy-tcode = '/PWS/ZYCI003_M'.
IF screen-name NE 'BTN0100_01' .
...
...
/pws/zycie006-tpfatura EQ '01'.
READ TABLE itab_zycit003 INTO /pws/zycit003 INDEX 1.
SELECT SINGLE * FROM /pws/zycit042
WHERE nrseq EQ /pws/zycit003-nrseq. "#EC CI_NOFIRST
IF sy-subrc EQ 0.
screen-input = 0.
ENDIF.
ENDIF.
IF v_existe_bol EQ 'X' AND
screen-name NE 'ITAB_ZYCIT003-MARC'.
screen-input = '0'.
ENDIF.
* >> Início da inclusão: MODULE SET_SCREEN_TC_0106
IF /pws/zycit001-modalidade EQ '07'.
IF screen-name = '/PWS/ZYCIE003-VLSEG_FAT' OR
screen-name = '/PWS/ZYCIE003-VLFRE_FAT' OR
screen-name = '/PWS/ZYCIE003-VLREAL'.
screen-input = '0'.
ENDIF.
ENDIF.
* << Fim da inclusão
MODIFY SCREEN.
ENDLOOP.
IF v_di = 'X' .
LOOP AT tc_itens-cols INTO wa_cols.
wa_cols-screen-input = '0'.
...
...
screen-name = '/PWS/ZYCIE003-NTGEW'.
screen-input = 0.
ENDIF.
IF v_di = 'X' .
screen-input = 0.
MODIFY SCREEN.
ENDIF.
IF /pws/zycie006-fabricante EQ 0 AND
screen-name EQ '/PWS/ZYCIE003-LIFNRFABR'.
screen-input = 0.
ENDIF.
* >> Início da inclusão: MODULE SET_SCREEN_0400
IF /pws/zycit001-modalidade EQ '07'.
IF screen-name = '/PWS/ZYCIE003-VLSEG_FAT' OR
screen-name = '/PWS/ZYCIE003-VLFRE_FAT' OR
screen-name = '/PWS/ZYCIE003-VLREAL'.
screen-input = '0'.
ENDIF.
ENDIF.
* << Fim da inclusão
MODIFY SCREEN.
ENDLOOP.
ENDMODULE.
MODULE /pws/zycie047 OUTPUT.
IF itab_zycit047[] IS INITIAL AND
NOT /pws/zycie006-dtincl IS INITIAL AND
NOT /pws/zycie006-nrfat IS INITIAL AND
NOT /pws/zycie006-frpagto IS INITIAL AND
NOT /pws/zycie006-waers IS INITIAL AND
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/LZYCIGF10F02
...
FORM clear_tables.
CLEAR : itab_rbkp, itab_rseg, t_zycit263, itab_t052,
itab_zycit036_aux, itab_zycit036, /pws/zycet076, lfa1,
/pws/zycbt064, /pws/zycbt131,
/pws/zycbt119, /pws/zycbt108, /pws/zycie006, v_ntgew, v_fdgrv.
* >> Início da exclusão: FORM CLEAR_TABLES
REFRESH: itab_rbkp, itab_rseg, t_zycit263, itab_t052,
itab_zycit036_aux, itab_zycit036.
* << Fim da exclusão
* >> Início da inclusão: FORM CLEAR_TABLES
REFRESH: t_zycit263, itab_t052, itab_zycit036_aux, itab_zycit036.
* << Fim da inclusão
ENDFORM.
* >> Início da inclusão:
FORM converte_unidades USING p_matnr
p_meins
p_meinsd
CHANGING p_qtd.
DATA: v_meinsb LIKE marm-meinh,
v_um_rez TYPE i,
v_um_ren TYPE i,
v_um_rez1 LIKE marm-umrez,
v_um_ren1 LIKE marm-umren,
v_um_rez2 TYPE i,
v_um_ren2 TYPE i.
DATA: v_conv1 TYPE /pws/zycit245-qtd_ncm,
v_conv2 TYPE /pws/zycit245-qtd_ncm.
CLEAR: v_um_rez, v_um_ren, v_um_rez2, v_um_ren2.
IF p_meins EQ p_meinsd.
EXIT.
ENDIF.
v_conv1 = 1.
CALL FUNCTION 'UNIT_CONVERSION_SIMPLE_OLD'
EXPORTING
input = v_conv1
no_type_check = 'X'
round_sign = 'X'
unit_in = p_meins
unit_out = p_meinsd
IMPORTING
denominator = v_um_ren
numerator = v_um_rez
output = v_conv2
EXCEPTIONS
conversion_not_found = 1
division_by_zero = 2
input_invalid = 3
output_invalid = 4
overflow = 5
type_invalid = 6
units_missing = 7
unit_in_not_found = 8
unit_out_not_found = 9
OTHERS = 10.
IF sy-subrc = 0.
p_qtd = ( p_qtd / v_um_ren ) * v_um_rez.
EXIT.
ENDIF.
SELECT SINGLE meins FROM mara INTO v_meinsb
WHERE matnr EQ p_matnr.
IF v_meinsb NE p_meins.
v_conv1 = 1.
CALL FUNCTION 'UNIT_CONVERSION_SIMPLE_OLD'
EXPORTING
input = v_conv1
no_type_check = 'X'
round_sign = 'X'
unit_in = p_meins
unit_out = v_meinsb
IMPORTING
denominator = v_um_ren
numerator = v_um_rez
output = v_conv2
EXCEPTIONS
conversion_not_found = 1
division_by_zero = 2
input_invalid = 3
output_invalid = 4
overflow = 5
type_invalid = 6
units_missing = 7
unit_in_not_found = 8
unit_out_not_found = 9
OTHERS = 10.
IF sy-subrc <> 0.
SELECT SINGLE umrez umren
FROM marm INTO (v_um_rez1, v_um_ren1)
WHERE matnr = p_matnr
AND meinh = p_meins.
IF sy-subrc NE 0.
CLEAR p_qtd.
EXIT.
ELSE.
v_um_rez = v_um_rez1.
v_um_ren = v_um_ren1.
ENDIF.
ENDIF.
IF v_um_rez IS INITIAL
OR v_um_ren IS INITIAL.
EXIT.
ENDIF.
ELSE.
v_um_ren = 1.
v_um_rez = 1.
ENDIF.
IF v_meinsb NE p_meinsd.
v_conv1 = 1.
CALL FUNCTION 'UNIT_CONVERSION_SIMPLE_OLD'
EXPORTING
input = v_conv1
no_type_check = 'X'
round_sign = 'X'
unit_in = v_meinsb
unit_out = p_meinsd
IMPORTING
denominator = v_um_rez2
numerator = v_um_ren2
output = v_conv2
EXCEPTIONS
conversion_not_found = 1
division_by_zero = 2
input_invalid = 3
output_invalid = 4
overflow = 5
type_invalid = 6
units_missing = 7
unit_in_not_found = 8
unit_out_not_found = 9
OTHERS = 10.
IF sy-subrc <> 0.
SELECT SINGLE umrez umren
FROM marm INTO (v_um_rez1, v_um_ren1)
WHERE matnr = p_matnr
AND meinh = p_meinsd.
IF sy-subrc NE 0.
CLEAR p_qtd.
EXIT.
ELSE.
v_um_rez2 = v_um_rez1.
v_um_ren2 = v_um_ren1.
ENDIF.
ENDIF.
IF v_um_rez IS INITIAL
OR v_um_ren IS INITIAL.
EXIT.
ENDIF.
ELSE.
v_um_ren2 = 1.
v_um_rez2 = 1.
ENDIF.
p_qtd = p_qtd *
( ( v_um_rez / v_um_ren ) * ( v_um_ren2 / v_um_rez2 ) ).
ENDFORM.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/LZYCIGF10X01
...
/pws/zycit093,
/pws/zycit094,
/pws/zycet076,
/pws/zycit286,
/pws/zycit477,
bseg,
lfa1,
t001,
t035,
t052,
* >> Início da inclusão:
TCURF,
* << Fim da inclusão
tcurx .
DATA: BEGIN OF COMMON PART a.
...
...
* >> Início da inclusão:
DATA: BEGIN OF itab_ekbe OCCURS 0.
INCLUDE STRUCTURE ekbe.
DATA: END OF itab_ekbe.
DATA: BEGIN OF itab_ekpo OCCURS 0,
ebeln type ekpo-ebeln,
ebelp type ekpo-ebelp,
ntgew type ekpo-ntgew,
gewei type ekpo-gewei,
END OF itab_ekpo.
* << Fim da inclusão
DATA: END OF COMMON PART.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI001F01
...
ENDLOOP.
READ TABLE itab_zycit078 INDEX 1.
v_codcambial = itab_zycit078-codcambial.
LOOP AT itab_zycit078 WHERE codcambial NE v_codcambial.
ENDLOOP.
IF sy-subrc EQ 0.
MESSAGE s015 WITH text-237 text-541 text-542.
ENDIF.
ENDIF.
ENDIF.
* >> Início da inclusão: FORM CALL_FATURA
if /pws/zycie001-modalidade ne '07' .
* << Fim da inclusão
LOOP AT itab_zycit003 WHERE mark EQ 'X'.
IF v_lifnr NE itab_zycit003-lifnr.
MESSAGE i015 WITH text-070.
v_flag_loop = 'X'.
EXIT.
ENDIF.
IF v_moeda NE itab_zycit003-waers.
MESSAGE s015 WITH text-237 text-238.
v_flag_loop = 'X'.
EXIT.
...
...
ENDLOOP.
IF vsaldo >= itab_zycit003-qtd_iten.
MESSAGE i015 WITH text-194.
v_flag_loop = 'X'.
EXIT.
ENDIF.
itab_sele-ebeln = itab_zycit003-ebeln.
itab_sele-ebelp = itab_zycit003-ebelp.
APPEND itab_sele.
ENDLOOP.
* >> Início da exclusão: FORM CALL_FATURA
IF sy-subrc EQ 0.
* << Fim da exclusão
* >> Início da inclusão: FORM CALL_FATURA
endif .
IF sy-subrc EQ 0
AND /pws/zycie001-modalidade ne '07' .
* << Fim da inclusão
IF v_flag_loop = 'X'.
EXIT.
ENDIF.
CLEAR /pws/zycie006-nrseq.
EXPORT /pws/zycie001-embarca
/pws/zycie001-nrseq
/pws/zycie001-bukrs
/pws/zycie001-werks
/pws/zycie001-waers
/pws/zycie001-inco1
...
...
/pws/zycie003-ebeln
/pws/zycie006-nrseq
e_status
TO MEMORY ID '003'.
EXPORT itab_sele[]
TO MEMORY ID 'IP003B'.
IF v_status_s = 1.
IF NOT /pws/zycie001-modalidade EQ '02'.
IF ( /pws/zycie001-modalidade EQ '03' AND
itab_zycit003-servico EQ 'X' ) .
* >> Início da exclusão: FORM CALL_FATURA
ELSEIF /pws/zycie001-modalidade = '07' .
PERFORM call_intercompany.
* << Fim da exclusão
ELSE.
SELECT SINGLE * FROM /pws/zycit094 "#EC CI_NOFIRST
WHERE nrseq = /pws/zycie001-nrseq.
IF sy-subrc NE 0.
IF /pws/zycie001-regime EQ '13'.
PERFORM gera_bl_nac.
ELSE.
MESSAGE s061 WITH text-026 text-027.
EXIT.
ENDIF.
...
...
ENDIF.
PERFORM valida_trans USING '/PWS/ZYCI003_C' ''.
ELSE.
MESSAGE s015 WITH text-073.
ENDIF.
ELSE.
CLEAR v_subrc.
IF /pws/zycie001-modalidade EQ '02'
OR /pws/zycie001-modalidade EQ '03'.
v_subrc = 'X'.
* >> Início da exclusão: FORM CALL_FATURA
ELSEIF /pws/zycie001-modalidade = '07' .
PERFORM call_intercompany.
* << Fim da exclusão
ELSE.
SELECT SINGLE * FROM /pws/zycit094 "#EC CI_NOFIRST
WHERE nrseq = /pws/zycie001-nrseq.
IF sy-subrc EQ 0.
v_subrc = 'X'.
ELSEIF /pws/zycie001-regime EQ '13'.
PERFORM gera_bl_nac.
v_subrc = 'X'.
ELSE.
MESSAGE s061 WITH text-026 text-027.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI003F03
FORM dele_fatura_intercompany CHANGING v_del.
DATA: lt_zycit263 TYPE /pws/zycit263 OCCURS 0 WITH HEADER LINE.
* >> Início da exclusão: FORM DELE_FATURA_INTERCOMPANY
PERFORM verifica_ano_contabil USING /pws/zycie006-dt_mr1m
CHANGING v_ano .
SELECT SINGLE * FROM rbkp
WHERE belnr EQ /pws/zycie006-belnr_mr1m
AND gjahr EQ v_ano.
IF sy-subrc EQ 0 AND rbkp-stblg IS INITIAL.
v_del = 'X' .
MESSAGE i016 WITH text-213 text-214.
ELSE.
* << Fim da exclusão
* >> Início da inclusão: FORM DELE_FATURA_INTERCOMPANY
IF v_existe_di EQ 'S'.
MESSAGE s015 WITH text-042.
EXIT.
ENDIF.
* << Fim da inclusão
IF NOT itab_zycit003[] IS INITIAL.
CLEAR: lt_zycit263, lt_zycit263[].
SELECT * FROM /pws/zycit263 INTO TABLE lt_zycit263
FOR ALL ENTRIES IN itab_zycit003
WHERE nrseq = itab_zycit003-nrseq AND
ebeln = itab_zycit003-ebeln AND
ebelp = itab_zycit003-ebelp AND
nrseq_pgfat = /pws/zycie006-nrseq_pgfat.
ENDIF.
LOOP AT itab_zycit003.
...
...
ENDLOOP.
CLEAR: /pws/zycie006-belnr_p, /pws/zycie006-statusp,
/pws/zycie006-statusp_mr1m, /pws/zycie006-belnr_mr1m,
/pws/zycie006-dt_mr1m.
/pws/zycie006-eliminado = 'X'.
MODIFY /pws/zycit006 FROM /pws/zycie006.
COMMIT WORK.
MOVE-CORRESPONDING /pws/zycie006 TO /pws/zycit006.
PERFORM carrega_log USING '/PWS/ZYCIT006' 'U'
' ' '/PWS/SAPMZYCI003' /pws/zycie006-nrseq.
* >> Início da exclusão: FORM DELE_FATURA_INTERCOMPANY
ENDIF.
* << Fim da exclusão
ENDFORM.
FORM rateio_seguro.
DATA: v_tot_acum LIKE /pws/zycit003-netpr,
v_tot_acum2 LIKE /pws/zycit003-netpr.
v_vlreal = /pws/zycie006-vlseg.
PERFORM retorna_decimais USING /pws/zycie006-waers
CHANGING v_vlreal.
CLEAR v_tot_acum.
CLEAR v_tot_acum2.
LOOP AT itab_zycit003.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI001O01
...
EXPORTING
bukrs = /pws/zycie001-bukrs
RECEIVING
agrupamento = v_agrupamento .
IF v_agrupamento NE 'X' .
it_code-fcode = 'AGRUP'. APPEND it_code.
ENDIF.
IF sy-tcode = '/PWS/ZYCI001_A' OR sy-tcode = '/PWS/ZYCI001_C'
OR v_status_s = 1 .
it_code-fcode = 'MODI'. APPEND it_code.
* >> Início da inclusão: MODULE STATUS_0050
IF /pws/zycie001-modalidade NE '07' .
it_code-fcode = 'INTER'. APPEND it_code.
ENDIF.
* << Fim da inclusão
ELSEIF sy-tcode = '/PWS/ZYCI001_E' OR v_status_s = 0.
it_code-fcode = 'SAVE'. APPEND it_code.
it_code-fcode = 'MODI'. APPEND it_code.
* >> Início da inclusão: MODULE STATUS_0050
it_code-fcode = 'INTER'. APPEND it_code.
* << Fim da inclusão
ENDIF.
IF v_trilha_auditoria IS INITIAL OR
sy-tcode = '/PWS/ZYCI001_C'.
it_code-fcode = 'LOG_TRILHA'.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI001F03
...
IF sy-subrc <> 0.
ENDIF.
CALL FUNCTION 'MESSAGES_INITIALIZE'.
ENDIF.
ENDFORM.
FORM call_intercompany.
IF NOT sy-tcode EQ '/PWS/ZYCI001_E'.
SELECT SINGLE * FROM /pws/zycit094 "#EC CI_NOFIRST
WHERE nrseq = /pws/zycie001-nrseq.
IF sy-subrc EQ 0.
* >> Início da exclusão: FORM CALL_INTERCOMPANY
IF itab_zycit006[] IS INITIAL.
v_interc = 'X'.
ELSE.
LOOP AT itab_zycit003.
READ TABLE itab_zycit263 WITH KEY
nrseq = itab_zycit003-nrseq
ebeln = itab_zycit003-ebeln
ebelp = itab_zycit003-ebelp
eliminado = space.
IF sy-subrc NE 0.
v_interc = 'X'.
ENDIF.
ENDLOOP.
ENDIF.
IF v_interc = 'X'.
* << Fim da exclusão
CALL FUNCTION '/PWS/ZYCI_FATURA_INTERCOMPANY'
EXPORTING
p_nrseq = /pws/zycie001-nrseq
EXCEPTIONS
no_quantity = 1
no_data = 2
abort = 3
invoice_created = 4
OTHERS = 5.
IF sy-subrc EQ 0 .
SELECT * FROM /pws/zycit263 INTO TABLE itab_zycit263
WHERE nrseq = /pws/zycie001-nrseq
AND eliminado = space.
IF NOT itab_zycit263[] IS INITIAL.
* >> Início da exclusão: FORM CALL_INTERCOMPANY
SELECT * FROM /pws/zycit006 "#EC CI_NOFIELD
* << Fim da exclusão
* >> Início da inclusão: FORM CALL_INTERCOMPANY
SELECT * FROM /pws/zycit006 "#EC CI_NOFIELD
* << Fim da inclusão
INTO TABLE itab_zycit006
FOR ALL ENTRIES IN itab_zycit263
WHERE nrseq_pgfat EQ itab_zycit263-nrseq_pgfat
AND eliminado EQ space.
ENDIF.
MESSAGE i015 WITH text-527.
EXIT.
ELSEIF sy-subrc EQ 1.
* >> Início da exclusão: FORM CALL_INTERCOMPANY
MESSAGE i015 WITH text-527.
* << Fim da exclusão
* >> Início da inclusão: FORM CALL_INTERCOMPANY
MESSAGE i015 WITH text-194.
* << Fim da inclusão
ELSEIF sy-subrc EQ 3.
EXIT.
ELSEIF sy-subrc EQ 4.
MESSAGE i015 WITH text-527.
EXIT.
ELSE.
MESSAGE i015 WITH text-526.
ENDIF.
LOOP AT itab_zycit003.
READ TABLE itab_zycit263 WITH KEY
nrseq = itab_zycit003-nrseq
ebeln = itab_zycit003-ebeln
ebelp = itab_zycit003-ebelp
eliminado = space.
IF sy-subrc EQ 0.
v_subrc = 'X'.
ENDIF.
ENDLOOP.
* >> Início da exclusão: FORM CALL_INTERCOMPANY
ELSE.
v_subrc = 'X'.
ENDIF.
* << Fim da exclusão
ELSE.
MESSAGE s061 WITH text-026 text-027.
ENDIF.
ELSE.
v_subrc = 'X' .
ENDIF.
ENDFORM.
FORM unpublish.
IF NOT v_anexa_doc IS INITIAL.
CALL METHOD v_anexa_doc->unpublish .
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI001I01
...
IF sy-tcode EQ '/PWS/ZYCI001_E' .
PERFORM valida_trans USING '/PWS/ZYCI085_E' 'skip'.
ELSE.
PERFORM valida_trans USING '/PWS/ZYCI085_A' 'skip'.
ENDIF.
ELSE.
IF NOT sy-tcode EQ '/PWS/ZYCI001_E' .
PERFORM valida_trans USING '/PWS/ZYCI085_C' 'skip'.
ENDIF.
ENDIF.
* >> Início da inclusão: MODULE USER_COMMAND_0050
WHEN 'INTER'.
IF /pws/zycie001-modalidade = '07' .
PERFORM call_intercompany.
ENDIF.
* << Fim da inclusão
ENDCASE.
ENDIF.
CLEAR okcode.
ENDMODULE.
MODULE user_command_0002 INPUT.
CASE okcode.
WHEN 'ENTER'.
PERFORM trata_enter_0002.
WHEN 'CANCEL' .
LEAVE TO SCREEN 0.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPT /PWS/SAPMZYCI017
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 281
Texto: (35 caracteres)
"Deseja continuar com o recebimento?"
Comprimento máximo: 100
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 282
Texto: (53 caracteres)
"Valor da variação cambial é superior ao das despesas."
Comprimento máximo: 100
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 283
Texto: (52 caracteres)
"Revisão de fatura não será gerada! Deseja continuar?"
Comprimento máximo: 100
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 281
Texto: (36 caracteres)
"Want to continue with the receiving?"
Comprimento máximo: 100
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 281
Texto: (30 caracteres)
"Desea continuar con el recibo?"
Comprimento máximo: 100
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 282
Texto: (58 caracteres)
"Value of the exchange variance is higher than expenditure."
Comprimento máximo: 100
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 282
Texto: (50 caracteres)
"Valor de variación cambio es mayor que los gastos."
Comprimento máximo: 100
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: EN
Símbolo: 283
Texto: (47 caracteres)
"Review invoice will not be generated! Continue?"
Comprimento máximo: 100
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: ES
Símbolo: 283
Texto: (47 caracteres)
"Factura revisión no se genera! Desea continuar?"
Comprimento máximo: 100