Módulo: CÂMBIO FINANCEIRO
Funcionalidade: Remessa
Data/Hora da Publicação: 02/12/2005 00:00:00
Data/Hora Última Alteração: 18/02/2011 11:39:22
Descrição da Nota: INCLUIR CMPS DIAGRAMA REDE/OPERAÇÃO/PED.COMPRA/ITEM DOC COMPRA, NA CCO
Sintoma
Incluir tratamento para os campos diagrama de rede, operação, pedido de compra, item documento de
compra na classificação contábil do programa da remessa.
Solução
Inclusão dos campos e o respectivo tratamento nas contabilizações da remessa.
6.0
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 00388 Data: 02/12/2005 Hora: 14:35:23
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 00388
Categoria : Melhoria
Prioridade : Média
Versão PW.CE : 6.0
Pacote : 00021
Agrupamento : 00090
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Descrição Breve
----------------------------------------------------------------------------------------------------
INCLUIR CMPS DIAGRAMA REDE/OPERAÇÃO/PED.COMPRA/ITEM DOC COMPRA, NA CCO
----------------------------------------------------------------------------------------------------
Palavras Chave:
DIAGRAMA DE REDE, OPERAÇÃO, PEDIDO DE COMPRA, ITEM DOCUMENTO DE COMPRA
CLASSIFICAÇÃO CONTÁBIL
----------------------------------------------------------------------------------------------------
Objetos da nota:
DYNP /PWS/SAPMZYCA109 0105
DYNP /PWS/SAPMZYCA109 0106
FUNC /PWS/ZYCA_TRANSACAO_F_02R
FUNC /PWS/ZYCA_TRANSACAO_F_63R
REPS /PWS/LZYCAGF2F01
REPS /PWS/MZYCA109F01
REPS /PWS/MZYCA109TOP
REPS /PWS/MZYCA110F01
REPS /PWS/SAPMZYCA109
REPT /PWS/SAPLZYCAGF2
TABD /PWS/ZYCBE141
TABD /PWS/ZYCBT141
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DYNP /PWS/SAPMZYCA109 0105
Inclusão do campo "Diag. Rede" após campo "Elemento PEP"
Campo texto
Nome: /PWS/ZYCBE141-NPLNR
Texto: Diag.rede
Linha: 1
Coluna: 11
Comprimento definido: 15
Comprimento visualizado: 12
Altura: 1
Formato: Char
Do dict. = X
Modific.: 2
Campo Entrada/Saída
Nome: /PWS/ZYCBE141-NPLNR
Linha: 1
Coluna: 11
Comprimento definido: 12
Comprimento visualizado: 12
Altura: 1
Formato: Char
Do dict. = X
Exit convers.: ALPHA
Id parâmetro: NET
Campo entrada = X
Campo saída = X
Input = möglich
Exibição = Fonte equidistante
Inclusão do campo "Nº Operação" após campo "Diag. Rede"
Campo texto
Nome: /PWS/ZYCBE141-VORNR
Texto: Nº_Operação
Linha: 1
Coluna: 12
Comprimento definido: 11
Comprimento visualizado: 8
Altura: 1
Formato: Char
Do dict. = X
Modific.: F
Campo Entrada/Saída
Nome: /PWS/ZYCBE141-VORNR
Linha: 1
Coluna: 12
Comprimento definido: 4
Comprimento visualizado: 8
Altura: 1
Formato: Char
Do dict. = X
Exit convers.: NUMCV
Id parâmetro: VGN
Campo entrada = X
Campo saída = X
Input = möglich
Exibição = Fonte equidistante
Inclusão do campo "Doc.compra" após campo "Fundo"
Campo texto
Nome: /PWS/ZYCBE141-EBELN
Texto: Doc.compra
Linha: 1
Coluna: 16
Comprimento definido: 15
Comprimento visualizado: 10
Altura: 1
Formato: Char
Do dict. = X
Modific.: 2
Campo Entrada/Saída
Nome: /PWS/ZYCBE141-EBELN
Linha: 1
Coluna: 16
Comprimento definido: 10
Comprimento visualizado: 10
Altura: 1
Formato: Char
Do dict. = X
Exit convers.: ALPHA
Id parâmetro: BES
Verificar chave externa = X
Campo entrada = X
Campo saída = X
Entradas possíveis = X
Input = möglich
Exibição = Fonte equidistante
Inclusão do campo "Nº item pedido compra" após campo "Doc.compra"
Campo texto
Nome: /PWS/ZYCBE141-EBELP
Texto: Nº_item_pedido_compra
Linha: 1
Coluna: 17
Comprimento definido: 21
Comprimento visualizado: 8
Altura: 1
Formato: Char
Do dict. = X
Modific.: F
Campo Entrada/Saída
Nome: /PWS/ZYCBE141-EBELP
Linha: 1
Coluna: 17
Comprimento definido: 5
Comprimento visualizado: 8
Altura: 1
Formato: Numc
Do dict. = X
Id parâmetro: BSP
Verificar chave externa = X
Campo entrada = X
Campo saída = X
Entradas possíveis = X
Input = möglich
Exibição = Fonte equidistante
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DYNP /PWS/SAPMZYCA109 0106
Inclusão do campo "Diag. Rede" após campo "Elemento PEP"
Campo texto
Nome: /PWS/ZYCBE141-NPLNR
Texto: Diag.rede
Linha: 1
Coluna: 11
Comprimento definido: 15
Comprimento visualizado: 12
Altura: 1
Formato: Char
Do dict. = X
Modific.: 2
Campo Entrada/Saída
Nome: /PWS/ZYCBE141-NPLNR
Linha: 1
Coluna: 11
Comprimento definido: 12
Comprimento visualizado: 12
Altura: 1
Formato: Char
Do dict. = X
Exit convers.: ALPHA
Id parâmetro: NET
Campo entrada = X
Campo saída = X
Input = möglich
Exibição = Fonte equidistante
Inclusão do campo "Nº Operação" após campo "Diag. Rede"
Campo texto
Nome: /PWS/ZYCBE141-VORNR
Texto: Nº_Operação
Linha: 1
Coluna: 12
Comprimento definido: 11
Comprimento visualizado: 8
Altura: 1
Formato: Char
Do dict. = X
Modific.: F
Campo Entrada/Saída
Nome: /PWS/ZYCBE141-VORNR
Linha: 1
Coluna: 12
Comprimento definido: 4
Comprimento visualizado: 8
Altura: 1
Formato: Char
Do dict. = X
Exit convers.: NUMCV
Id parâmetro: VGN
Campo entrada = X
Campo saída = X
Input = möglich
Exibição = Fonte equidistante
Inclusão do campo "Doc.compra" após campo "Fundo"
Campo texto
Nome: /PWS/ZYCBE141-EBELN
Texto: Doc.compra
Linha: 1
Coluna: 16
Comprimento definido: 15
Comprimento visualizado: 10
Altura: 1
Formato: Char
Do dict. = X
Modific.: 2
Campo Entrada/Saída
Nome: /PWS/ZYCBE141-EBELN
Linha: 1
Coluna: 16
Comprimento definido: 10
Comprimento visualizado: 10
Altura: 1
Formato: Char
Do dict. = X
Exit convers.: ALPHA
Id parâmetro: BES
Verificar chave externa = X
Campo entrada = X
Campo saída = X
Entradas possíveis = X
Input = möglich
Exibição = Fonte equidistante
Inclusão do campo "Nº item pedido compra" após campo "Doc.compra"
Campo texto
Nome: /PWS/ZYCBE141-EBELP
Texto: Nº_item_pedido_compra
Linha: 1
Coluna: 17
Comprimento definido: 21
Comprimento visualizado: 8
Altura: 1
Formato: Char
Do dict. = X
Modific.: F
Campo Entrada/Saída
Nome: /PWS/ZYCBE141-EBELP
Linha: 1
Coluna: 17
Comprimento definido: 5
Comprimento visualizado: 8
Altura: 1
Formato: Numc
Do dict. = X
Id parâmetro: BSP
Verificar chave externa = X
Campo entrada = X
Campo saída = X
Entradas possíveis = X
Input = möglich
Exibição = Fonte equidistante
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYCA_TRANSACAO_F_02R
FUNCTION /pws/zyca_transacao_f_02r.
...
*-----------------------------------------------------------------------
* Processamento
*-----------------------------------------------------------------------
...
* Tela inicial - Dados do cabeçalho - 0100
WRITE: t_dados-bukrs TO v_bukrs,
t_dados-bldat TO v_data_doc_char,
t_dados-budat TO v_data_lanc_char,
t_dados-kursf TO v_kursf.
* Testa se o período é válido e permite que o usuário digite uma nova
* data de lançamento
v_monat = t_dados-budat+4(2). "período
v_gjahr = t_dados-budat+0(4). "ano
v_koart = 'CA'. "tipo de conta
PERFORM check_periodo USING v_koart
v_monat
v_bukrs
v_gjahr
v_konto
CHANGING v_data_lanc_char
v_ok.
CONCATENATE '0' v_data_lanc_char+3(2) INTO v_monat.
MOVE v_data_lanc_char+6(4) TO v_gjahr.
* Tela 100.
PERFORM bdc_screen USING 'SAPMF05A' '0100'.
...
IF t_dados-newbs = '01'.
...
ENDIF.
* Tela - Entrar com itens débito
LOOP AT t_credito.
...
CLEAR v_database.
IF v_tabix > 1.
...
ENDIF.
IF v_tabix = 1.
...
IF t_dados-newbs = '40'.
...
ENDIF.
ENDIF.
SELECT SINGLE * FROM tcurx INTO tcurx
WHERE currkey = t_dados-waers.
IF tcurx-currdec <> 0 OR sy-subrc <> 0.
WRITE: t_credito-wrbtr TO v_wrbtr CURRENCY t_dados-waers.
ELSE.
WRITE: t_credito-wrbtr TO v_wrbtr DECIMALS tcurx-currdec
CURRENCY t_dados-waers.
ENDIF.
WRITE: t_credito-dmbtr TO v_dmbtr CURRENCY t_dados-waersb.
PERFORM bdc_screen USING 'SAPMF05A' '0300'.
PERFORM bdc_field USING:
'BDC_CURSOR' 'RF05A-NEWKO',
'BSEG-WRBTR' v_wrbtr, "Montante ME
'BSEG-DMBTR' v_dmbtr, "Montante MI
'BSEG-ZUONR' t_credito-c_zuonr. "Atribuição
IF NOT t_credito-c_sgtxt IS INITIAL.
PERFORM bdc_field USING 'BSEG-SGTXT' t_credito-c_sgtxt. "Texto
ENDIF.
IF NOT v_database IS INITIAL.
PERFORM bdc_field USING 'BSEG-ZFBDT' v_database. "Data Base
ENDIF.
IF NOT t_dados-brnch IS INITIAL.
PERFORM bdc_field USING 'BSEG-BUPLA' t_dados-brnch.
ENDIF.
* >> Início da inclusão
* Pedido de compra / No. item doc. compra
READ TABLE itab_oculto WITH KEY campo = 'BSEG-EBELN'
chave = 'C'.
IF sy-subrc NE 0 AND NOT t_credito-ebeln IS INITIAL.
PERFORM bdc_field USING 'BSEG-EBELN' t_credito-ebeln.
PERFORM bdc_field USING 'BSEG-EBELP' t_credito-ebelp.
ENDIF.
* >> Fim da inclusão
* verificando registro seguinte
v_tabix_aux = v_tabix + 1.
READ TABLE t_credito INTO t_credito_aux INDEX v_tabix_aux.
IF sy-subrc = 0.
PERFORM bdc_field USING:
'RF05A-NEWBS' t_credito_aux-bschl, "chave de lancto.
'RF05A-NEWKO' t_credito_aux-c_newko, "Conta
'BDC_OKCODE' '/00'.
ELSE.
PERFORM bdc_field USING:
'BDC_OKCODE' '=BU'.
ENDIF.
* Determina string de campos de débito
PERFORM determina_string USING t_credito-bschl
t_dados-bukrs
t_credito-c_newko
CHANGING v_string_credito.
"Verificando se campos obrigatórios estão preenchidos
FREE itab_oculto.
PERFORM trata_string_credito3 TABLES t_credito
t_campo
itab_oculto
USING v_string_credito.
PERFORM bdc_screen USING 'SAPLKACB' '0002'.
...
* Elemento PEP
READ TABLE itab_oculto WITH KEY
campo = 'COBL-PS_PSP_PNR' chave = 'C'.
IF sy-subrc <> 0. "Não está oculto
IF NOT t_credito-ps_psp_pnr IS INITIAL.
...
ENDIF.
PERFORM bdc_field USING:
'COBL-PS_PSP_PNR' t_credito-ps_posid. "Elemento PEP
ENDIF.
* >> Início da inclusão
* Diagrama de rede / Operação
READ TABLE itab_oculto WITH KEY campo = 'COBL-NPLNR' chave = 'C'.
IF sy-subrc <> 0 AND NOT t_credito-nplnr IS INITIAL.
PERFORM bdc_field USING 'COBL-NPLNR' t_credito-nplnr.
PERFORM bdc_field USING 'COBL-VORNR' t_credito-vornr.
ENDIF.
* >> Fim da inclusão
PERFORM bdc_field USING: 'BDC_OKCODE' '=ENTE'.
ENDLOOP.
...
* Executa o Call Transaction e monta as mensagens de retorno
PERFORM call_transaction TABLES itab_msg
itab_bdc
t_zycbt032
t_dados
USING v_transacao
v_mode
v_update
v_msgid
v_msgno
CHANGING v_nrmsg.
CLEAR: itab_bdc,
itab_msg.
FREE: itab_bdc,
itab_msg.
ENDFUNCTION.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em FUNC /PWS/ZYCA_TRANSACAO_F_63R
FUNCTION /pws/zyca_transacao_f_63r.
...
* Tabela interna
...
*-----------------------------------------------------------------------
* Processamento
*-----------------------------------------------------------------------
...
* Determina string de campos de credito
IF t_dados-newbs = '31'. "Crédito Fornecedor
...
ELSEIF t_dados-newbs = '21'. "Débito Fornecedor
...
ENDIF.
* Tela inicial - Dados do cabeçalho - 0100
WRITE: t_dados-bukrs TO v_bukrs,
t_dados-bldat TO v_data_doc_char,
t_dados-budat TO v_data_lanc_char,
t_dados-kursf TO v_kursf.
IF NOT t_dados-c_valut IS INITIAL.
WRITE t_dados-c_valut TO v_data_valut.
ENDIF.
...
* Tela 100.
PERFORM bdc_screen USING 'SAPLF040' '0100'.
PERFORM bdc_field USING:
'BKPF-BLDAT' v_data_doc_char, "Data documento
'BKPF-BLART' t_dados-blart, "Tipo documento
'BKPF-BUKRS' t_dados-bukrs, "Empresa
'BKPF-BUDAT' v_data_lanc_char, "Data lançamento
'BKPF-MONAT' t_dados-budat+4(2), "Período
'BKPF-WAERS' t_dados-waers, "Moeda
'BKPF-KURSF' v_kursf, "Câmbio
'BKPF-BKTXT' t_dados-bktxt, "Texto cabeçalho
'RF05V-NEWBS' t_dados-newbs, "Chv. de lancto.
'RF05V-NEWKO' t_dados-c_newko, "Conta Fornecedor
'BDC_CURSOR' 'RF05V-NEWKO',
'BDC_OKCODE' '/00'.
IF NOT t_dados-xblnr IS INITIAL.
PERFORM bdc_field USING 'BKPF-XBLNR' t_dados-xblnr. "Referência
ENDIF.
* Se o fornecedor possui IRF trata a tela.
SELECT SINGLE * FROM lfbw
WHERE lifnr EQ t_dados-c_newko
AND bukrs EQ t_dados-bukrs
AND wt_subjct EQ 'X'.
IF sy-subrc EQ 0 AND v_tabix = 1.
* Tela de para Informar o IRF
PERFORM bdc_screen USING 'SAPLFWTD' '0100'.
PERFORM bdc_field USING 'BDC_OKCODE' '/00'.
ENDIF.
IF t_dados-newbs = '31' OR
t_dados-newbs = '21' OR
t_dados-newbs = '40'.
SELECT SINGLE * FROM tcurx INTO tcurx WHERE currkey = t_dados-waers.
IF tcurx-currdec <> 0 OR sy-subrc <> 0.
WRITE: t_dados-wrbtr TO v_wrbtr CURRENCY t_dados-waers.
ELSE.
WRITE: t_dados-wrbtr TO v_wrbtr DECIMALS tcurx-currdec
CURRENCY t_dados-waers.
ENDIF.
ENDIF.
* Tela - Entrar com itens débito
LOOP AT t_debito.
...
IF v_tabix > 1.
...
ENDIF.
IF v_tabix = 1.
...
IF t_dados-newbs = '31' OR t_dados-newbs = '21'.
PERFORM bdc_screen USING 'SAPLF040' '0302'.
PERFORM bdc_field USING:
'BSEG-ZTERM' t_dados-zterm, "Cod pagto
'BSEG-WRBTR' v_wrbtr, "Montante
'BSEG-DMBTR' v_dmbtr, "Montante MI
'BSEG-ZUONR' t_dados-c_zuonr, "Atribuição
'BSEG-SKFBT' v_base_char, "Base desconto
'RF05V-NEWBS' t_debito-bschl, "chave de lancto.
'RF05V-NEWKO' t_debito-d_newko, "Conta
'BDC_CURSOR' 'RF05V-NEWKO',
'BDC_OKCODE' '/00'.
...
ELSEIF t_dados-newbs = '50' OR t_dados-newbs = '40'.
PERFORM bdc_screen USING 'SAPLF040' '0300'.
PERFORM bdc_field USING:
'BSEG-WRBTR' v_wrbtr, "Montante
'BSEG-ZUONR' t_dados-c_zuonr, "Atribuição
'RF05V-NEWBS' t_debito-bschl, "chave de lancto.
'RF05V-NEWKO' t_debito-d_newko, "Conta
'BDC_CURSOR' 'RF05V-NEWKO',
'BDC_OKCODE' '/00'.
...
PERFORM bdc_field USING: 'BDC_OKCODE' '=ENTE'.
ENDIF.
ENDIF.
IF t_debito-bschl = '40' OR t_debito-bschl = '50'.
...
ELSEIF t_debito-bschl = '29'.
...
ENDIF.
PERFORM bdc_field USING:
'BDC_CURSOR' 'RF05V-NEWKO',
'BSEG-WRBTR' v_wrbtr, "Montante ME
'BSEG-DMBTR' v_dmbtr, "Montante MI
'BSEG-ZUONR' t_debito-d_zuonr. "Atribuição
IF t_debito-bschl = '50'.
v_deb_cred = 'C'.
ELSE.
v_deb_cred = 'D'.
ENDIF.
READ TABLE itab_oculto WITH KEY campo = 'BSEG-SGTXT'
chave = v_deb_cred.
IF sy-subrc NE 0 AND NOT t_debito-c_sgtxt IS INITIAL.
PERFORM bdc_field USING 'BSEG-SGTXT' t_debito-c_sgtxt.
ENDIF.
READ TABLE itab_oculto WITH KEY campo = 'BSEG-ZFBDT'
chave = v_deb_cred.
IF sy-subrc NE 0 AND NOT v_database IS INITIAL.
PERFORM bdc_field USING 'BSEG-ZFBDT' v_database. "Data Base
ENDIF.
READ TABLE itab_oculto WITH KEY campo = 'BSEG-BUPLA'
chave = v_deb_cred.
IF sy-subrc NE 0 AND NOT t_dados-brnch IS INITIAL.
PERFORM bdc_field USING 'BSEG-BUPLA' t_dados-brnch.
ENDIF.
* >> Início da inclusão
* Pedido de compra / No. item doc. compra
READ TABLE itab_oculto WITH KEY campo = 'BSEG-EBELN'
chave = v_deb_cred.
IF sy-subrc NE 0 AND NOT t_debito-ebeln IS INITIAL.
PERFORM bdc_field USING 'BSEG-EBELN' t_debito-ebeln.
PERFORM bdc_field USING 'BSEG-EBELP' t_debito-ebelp.
ENDIF.
* >> Fim da inclusão269885 - Fim
* verificando registro seguinte
v_tabix_aux = v_tabix + 1.
READ TABLE t_debito INTO t_debito_aux INDEX v_tabix_aux.
IF sy-subrc = 0.
...
ELSE.
...
ENDIF.
IF t_debito-bschl = '40' OR t_debito-bschl = '50'.
PERFORM bdc_screen USING 'SAPLKACB' '0002'.
...
* Elemento PEP
READ TABLE itab_oculto WITH KEY
campo = 'COBL-PS_PSP_PNR'
chave = v_deb_cred.
IF sy-subrc <> 0. "Não está oculto
...
ENDIF.
* Ch. 267160 - 01/11/2005 - Início
* Diagrama Rede
READ TABLE itab_oculto WITH KEY campo = 'COBL-NPLNR'
chave = v_deb_cred.
IF sy-subrc <> 0 AND NOT t_debito-nplnr IS INITIAL.
PERFORM bdc_field USING 'COBL-NPLNR' t_debito-nplnr.
* >> Início da inclusão
PERFORM bdc_field USING 'COBL-VORNR' t_debito-vornr. "269885
* >> Fim da inclusão
ENDIF.
PERFORM bdc_field USING: 'BDC_OKCODE' '=ENTE'.
ENDIF.
ENDLOOP.
...
* Executa o Call Transaction e monta as mensagens de retorno
PERFORM call_transaction TABLES itab_msg
itab_bdc
t_zycbt032
t_dados
USING v_transacao
v_mode
v_update
v_msgid
v_msgno
CHANGING v_nrmsg.
CLEAR: itab_bdc,
itab_msg.
FREE: itab_bdc,
itab_msg.
ENDFUNCTION.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/LZYCAGF2F01
...
ELSEIF v_string+4(1) = '-'.
p_itab_oculto-campo = 'BSEG-ZFBDT'.
p_itab_oculto-chave = 'D'.
APPEND p_itab_oculto.
ENDIF.
* >> Início da inclusão: FORM TRATA_STRING_DEBITO
IF v_string+18(1) = '+'.
IF p_t_dados-nplnr = space.
CLEAR p_t_campo.
READ TABLE p_t_campo WITH KEY campo = 'COBL-NPLNR'.
IF sy-subrc <> 0.
READ TABLE p_t_campo WITH KEY campo = 'BSEG-NPLNR'.
IF sy-subrc <> 0.
p_t_campo-mandt = p_t_dados-mandt.
p_t_campo-campo = 'COBL-NPLNR'.
p_t_campo-descricao = text-046.
APPEND p_t_campo.
p_t_campo-mandt = p_t_dados-mandt.
p_t_campo-campo = 'BSEG-NPLNR'.
p_t_campo-descricao = text-046.
APPEND p_t_campo.
RAISE campo_em_branco.
ELSE.
IF ( p_t_campo-conteudo = space ).
RAISE campo_em_branco.
ELSE.
MOVE p_t_campo-conteudo TO p_t_dados-nplnr.
MODIFY p_t_dados TRANSPORTING nplnr.
DELETE p_t_campo INDEX sy-tabix.
CLEAR p_t_campo.
ENDIF.
ENDIF.
ELSE.
IF ( p_t_campo-conteudo = space ).
RAISE campo_em_branco.
ELSE.
MOVE p_t_campo-conteudo TO p_t_dados-nplnr.
MODIFY p_t_dados TRANSPORTING nplnr.
DELETE p_t_campo INDEX sy-tabix.
CLEAR p_t_campo.
ENDIF.
ENDIF.
ENDIF.
IF p_t_dados-vornr = space.
CLEAR p_t_campo.
READ TABLE p_t_campo WITH KEY campo = 'COBL-VORNR'.
IF sy-subrc <> 0.
READ TABLE p_t_campo WITH KEY campo = 'RF05A-VORNR'.
IF sy-subrc <> 0.
p_t_campo-mandt = p_t_dados-mandt.
p_t_campo-campo = 'COBL-VORNR'.
p_t_campo-descricao = text-047.
APPEND p_t_campo.
p_t_campo-mandt = p_t_dados-mandt.
p_t_campo-campo = 'RF05A-VORNR'.
p_t_campo-descricao = text-047.
APPEND p_t_campo.
RAISE campo_em_branco.
ELSE.
IF ( p_t_campo-conteudo = space ).
RAISE campo_em_branco.
ELSE.
MOVE p_t_campo-conteudo TO p_t_dados-vornr.
MODIFY p_t_dados TRANSPORTING vornr.
DELETE p_t_campo INDEX sy-tabix.
CLEAR p_t_campo.
ENDIF.
ENDIF.
ELSE.
IF ( p_t_campo-conteudo = space ).
RAISE campo_em_branco.
ELSE.
MOVE p_t_campo-conteudo TO p_t_dados-vornr.
MODIFY p_t_dados TRANSPORTING vornr.
DELETE p_t_campo INDEX sy-tabix.
CLEAR p_t_campo.
ENDIF.
ENDIF.
ENDIF.
ELSEIF v_string+18(1) = '-'.
p_itab_oculto-campo = 'COBL-NPLNR'.
p_itab_oculto-chave = 'D'.
APPEND p_itab_oculto.
p_itab_oculto-campo = 'BSEG-NPLNR'.
p_itab_oculto-chave = 'D'.
APPEND p_itab_oculto.
p_itab_oculto-campo = 'COBL-VORNR'.
p_itab_oculto-chave = 'D'.
APPEND p_itab_oculto.
p_itab_oculto-campo = 'RF05A-VORNR'.
p_itab_oculto-chave = 'D'.
APPEND p_itab_oculto.
ENDIF.
IF v_string+16(1) = '+'.
IF p_t_dados-ebeln = space.
CLEAR p_t_campo.
READ TABLE p_t_campo WITH KEY campo = 'BSEG-EBELN'.
IF sy-subrc <> 0.
p_t_campo-mandt = p_t_dados-mandt.
p_t_campo-campo = 'BSEG-EBELN'.
p_t_campo-descricao = text-048.
APPEND p_t_campo.
RAISE campo_em_branco.
ELSE.
IF ( p_t_campo-conteudo = space ).
RAISE campo_em_branco.
ELSE.
MOVE p_t_campo-conteudo TO p_t_dados-ebeln.
MODIFY p_t_dados TRANSPORTING ebeln.
DELETE p_t_campo INDEX sy-tabix.
CLEAR p_t_campo.
ENDIF.
ENDIF.
ENDIF.
IF p_t_dados-ebelp = space.
CLEAR p_t_campo.
READ TABLE p_t_campo WITH KEY campo = 'BSEG-EBELP'.
IF sy-subrc <> 0.
p_t_campo-mandt = p_t_dados-mandt.
p_t_campo-campo = 'BSEG-EBELP'.
p_t_campo-descricao = text-049.
APPEND p_t_campo.
RAISE campo_em_branco.
ELSE.
IF ( p_t_campo-conteudo = space ).
RAISE campo_em_branco.
ELSE.
MOVE p_t_campo-conteudo TO p_t_dados-ebelp.
MODIFY p_t_dados TRANSPORTING ebelp.
DELETE p_t_campo INDEX sy-tabix.
CLEAR p_t_campo.
ENDIF.
ENDIF.
ENDIF.
ELSEIF v_string+16(1) = '-'.
p_itab_oculto-campo = 'BSEG-EBELN'.
p_itab_oculto-chave = 'D'.
APPEND p_itab_oculto.
p_itab_oculto-campo = 'BSEG-EBELP'.
p_itab_oculto-chave = 'D'.
APPEND p_itab_oculto.
ENDIF.
* << Fim da inclusão
ENDFORM.
FORM trata_string_debito2 TABLES p_t_contas STRUCTURE /pws/zycbe035
p_t_campo STRUCTURE /pws/zycbt034
p_itab_oculto LIKE itab_oculto[]
USING value(p_string).
...
...
ENDIF.
ENDIF.
ELSEIF v_string+4(1) = '-'.
p_itab_oculto-campo = 'BSEG-ZFBDT'.
p_itab_oculto-chave = 'D'.
* >> Início da inclusão: FORM TRATA_STRING_DEBITO2
APPEND p_itab_oculto.
ENDIF.
IF v_string+18(1) = '+'.
IF p_t_contas-nplnr = space.
CLEAR p_t_campo.
READ TABLE p_t_campo WITH KEY campo = 'COBL-NPLNR'.
IF sy-subrc <> 0.
READ TABLE p_t_campo WITH KEY campo = 'BSEG-NPLNR'.
IF sy-subrc <> 0.
p_t_campo-mandt = p_t_contas-mandt.
p_t_campo-campo = 'COBL-NPLNR'.
p_t_campo-descricao = text-046.
APPEND p_t_campo.
p_t_campo-mandt = p_t_contas-mandt.
p_t_campo-campo = 'BSEG-NPLNR'.
p_t_campo-descricao = text-046.
APPEND p_t_campo.
RAISE campo_em_branco.
ELSE.
IF ( p_t_campo-conteudo = space ).
RAISE campo_em_branco.
ELSE.
MOVE p_t_campo-conteudo TO p_t_contas-nplnr.
MODIFY p_t_contas TRANSPORTING nplnr.
DELETE p_t_campo INDEX sy-tabix.
CLEAR p_t_campo.
ENDIF.
ENDIF.
ELSE.
IF ( p_t_campo-conteudo = space ).
RAISE campo_em_branco.
ELSE.
MOVE p_t_campo-conteudo TO p_t_contas-nplnr.
MODIFY p_t_contas TRANSPORTING nplnr.
DELETE p_t_campo INDEX sy-tabix.
CLEAR p_t_campo.
ENDIF.
ENDIF.
ENDIF.
IF p_t_contas-vornr = space.
CLEAR p_t_campo.
READ TABLE p_t_campo WITH KEY campo = 'COBL-VORNR'.
IF sy-subrc <> 0.
READ TABLE p_t_campo WITH KEY campo = 'RF05A-VORNR'.
IF sy-subrc <> 0.
p_t_campo-mandt = p_t_contas-mandt.
p_t_campo-campo = 'COBL-VORNR'.
p_t_campo-descricao = text-047.
APPEND p_t_campo.
p_t_campo-mandt = p_t_contas-mandt.
p_t_campo-campo = 'RF05A-VORNR'.
p_t_campo-descricao = text-047.
APPEND p_t_campo.
RAISE campo_em_branco.
ELSE.
IF ( p_t_campo-conteudo = space ).
RAISE campo_em_branco.
ELSE.
MOVE p_t_campo-conteudo TO p_t_contas-vornr.
MODIFY p_t_contas TRANSPORTING vornr.
DELETE p_t_campo INDEX sy-tabix.
CLEAR p_t_campo.
ENDIF.
ENDIF.
ELSE.
IF ( p_t_campo-conteudo = space ).
RAISE campo_em_branco.
ELSE.
MOVE p_t_campo-conteudo TO p_t_contas-vornr.
MODIFY p_t_contas TRANSPORTING vornr.
DELETE p_t_campo INDEX sy-tabix.
CLEAR p_t_campo.
ENDIF.
ENDIF.
ENDIF.
ELSEIF v_string+18(1) = '-'.
p_itab_oculto-campo = 'COBL-NPLNR'.
p_itab_oculto-chave = 'C'.
APPEND p_itab_oculto.
p_itab_oculto-campo = 'BSEG-NPLNR'.
p_itab_oculto-chave = 'C'.
APPEND p_itab_oculto.
p_itab_oculto-campo = 'COBL-VORNR'.
p_itab_oculto-chave = 'C'.
APPEND p_itab_oculto.
p_itab_oculto-campo = 'RF05A-VORNR'.
p_itab_oculto-chave = 'C'.
APPEND p_itab_oculto.
ENDIF.
IF v_string+16(1) = '+'.
IF p_t_contas-ebeln = space.
CLEAR p_t_campo.
READ TABLE p_t_campo WITH KEY campo = 'BSEG-EBELN'.
IF sy-subrc <> 0.
p_t_campo-mandt = p_t_contas-mandt.
p_t_campo-campo = 'BSEG-EBELN'.
p_t_campo-descricao = text-048.
APPEND p_t_campo.
RAISE campo_em_branco.
ELSE.
IF ( p_t_campo-conteudo = space ).
RAISE campo_em_branco.
ELSE.
MOVE p_t_campo-conteudo TO p_t_contas-ebeln.
MODIFY p_t_contas TRANSPORTING ebeln.
DELETE p_t_campo INDEX sy-tabix.
CLEAR p_t_campo.
ENDIF.
ENDIF.
ENDIF.
IF p_t_contas-ebelp = space.
CLEAR p_t_campo.
READ TABLE p_t_campo WITH KEY campo = 'BSEG-EBELP'.
IF sy-subrc <> 0.
p_t_campo-mandt = p_t_contas-mandt.
p_t_campo-campo = 'BSEG-EBELP'.
p_t_campo-descricao = text-049.
APPEND p_t_campo.
RAISE campo_em_branco.
ELSE.
IF ( p_t_campo-conteudo = space ).
RAISE campo_em_branco.
ELSE.
MOVE p_t_campo-conteudo TO p_t_contas-ebelp.
MODIFY p_t_contas TRANSPORTING ebelp.
DELETE p_t_campo INDEX sy-tabix.
CLEAR p_t_campo.
ENDIF.
ENDIF.
ENDIF.
ELSEIF v_string+16(1) = '-'.
p_itab_oculto-campo = 'BSEG-EBELN'.
p_itab_oculto-chave = 'C'.
* << Fim da inclusão
APPEND p_itab_oculto.
* >> Início da inclusão: FORM TRATA_STRING_DEBITO2
p_itab_oculto-campo = 'BSEG-EBELP'.
p_itab_oculto-chave = 'C'.
APPEND p_itab_oculto.
* << Fim da inclusão
ENDIF.
ENDFORM.
FORM trata_string_credito TABLES p_t_dados STRUCTURE /pws/zycbe033
p_t_campo STRUCTURE /pws/zycbt034
p_itab_oculto LIKE itab_oculto[]
...
...
ENDIF.
ENDIF.
ENDIF.
ELSEIF v_string+4(1) = '-'.
p_itab_oculto-campo = 'BSEG-ZFBDT'.
* >> Início da inclusão: FORM TRATA_STRING_CREDITO
p_itab_oculto-chave = 'C'.
APPEND p_itab_oculto.
ENDIF.
IF v_string+18(1) = '+'.
IF p_t_dados-nplnr = space.
CLEAR p_t_campo.
READ TABLE p_t_campo WITH KEY campo = 'COBL-NPLNR'.
IF sy-subrc <> 0.
READ TABLE p_t_campo WITH KEY campo = 'BSEG-NPLNR'.
IF sy-subrc <> 0.
p_t_campo-mandt = p_t_dados-mandt.
p_t_campo-campo = 'COBL-NPLNR'.
p_t_campo-descricao = text-046.
APPEND p_t_campo.
p_t_campo-mandt = p_t_dados-mandt.
p_t_campo-campo = 'BSEG-NPLNR'.
p_t_campo-descricao = text-046.
APPEND p_t_campo.
RAISE campo_em_branco.
ELSE.
IF ( p_t_campo-conteudo = space ).
RAISE campo_em_branco.
ELSE.
MOVE p_t_campo-conteudo TO p_t_dados-nplnr.
MODIFY p_t_dados TRANSPORTING nplnr.
DELETE p_t_campo INDEX sy-tabix.
CLEAR p_t_campo.
ENDIF.
ENDIF.
ELSE.
IF ( p_t_campo-conteudo = space ).
RAISE campo_em_branco.
ELSE.
MOVE p_t_campo-conteudo TO p_t_dados-nplnr.
MODIFY p_t_dados TRANSPORTING nplnr.
DELETE p_t_campo INDEX sy-tabix.
CLEAR p_t_campo.
ENDIF.
ENDIF.
ENDIF.
IF p_t_dados-vornr = space.
CLEAR p_t_campo.
READ TABLE p_t_campo WITH KEY campo = 'COBL-VORNR'.
IF sy-subrc <> 0.
READ TABLE p_t_campo WITH KEY campo = 'RF05A-VORNR'.
IF sy-subrc <> 0.
p_t_campo-mandt = p_t_dados-mandt.
p_t_campo-campo = 'COBL-VORNR'.
p_t_campo-descricao = text-047.
APPEND p_t_campo.
p_t_campo-mandt = p_t_dados-mandt.
p_t_campo-campo = 'RF05A-VORNR'.
p_t_campo-descricao = text-047.
APPEND p_t_campo.
RAISE campo_em_branco.
ELSE.
IF ( p_t_campo-conteudo = space ).
RAISE campo_em_branco.
ELSE.
MOVE p_t_campo-conteudo TO p_t_dados-vornr.
MODIFY p_t_dados TRANSPORTING vornr.
DELETE p_t_campo INDEX sy-tabix.
CLEAR p_t_campo.
ENDIF.
ENDIF.
ELSE.
IF ( p_t_campo-conteudo = space ).
RAISE campo_em_branco.
ELSE.
MOVE p_t_campo-conteudo TO p_t_dados-vornr.
MODIFY p_t_dados TRANSPORTING vornr.
DELETE p_t_campo INDEX sy-tabix.
CLEAR p_t_campo.
ENDIF.
ENDIF.
ENDIF.
ELSEIF v_string+18(1) = '-'.
p_itab_oculto-campo = 'COBL-NPLNR'.
p_itab_oculto-chave = 'C'.
APPEND p_itab_oculto.
p_itab_oculto-campo = 'BSEG-NPLNR'.
p_itab_oculto-chave = 'C'.
APPEND p_itab_oculto.
p_itab_oculto-campo = 'COBL-VORNR'.
p_itab_oculto-chave = 'C'.
APPEND p_itab_oculto.
p_itab_oculto-campo = 'RF05A-VORNR'.
p_itab_oculto-chave = 'C'.
APPEND p_itab_oculto.
ENDIF.
IF v_string+16(1) = '+'.
IF p_t_dados-ebeln = space.
CLEAR p_t_campo.
READ TABLE p_t_campo WITH KEY campo = 'BSEG-EBELN'.
IF sy-subrc <> 0.
p_t_campo-mandt = p_t_dados-mandt.
p_t_campo-campo = 'BSEG-EBELN'.
p_t_campo-descricao = text-048.
APPEND p_t_campo.
RAISE campo_em_branco.
ELSE.
IF ( p_t_campo-conteudo = space ).
RAISE campo_em_branco.
ELSE.
MOVE p_t_campo-conteudo TO p_t_dados-ebeln.
MODIFY p_t_dados TRANSPORTING ebeln.
DELETE p_t_campo INDEX sy-tabix.
CLEAR p_t_campo.
ENDIF.
ENDIF.
ENDIF.
IF p_t_dados-ebelp = space.
CLEAR p_t_campo.
READ TABLE p_t_campo WITH KEY campo = 'BSEG-EBELP'.
IF sy-subrc <> 0.
p_t_campo-mandt = p_t_dados-mandt.
p_t_campo-campo = 'BSEG-EBELP'.
p_t_campo-descricao = text-049.
APPEND p_t_campo.
RAISE campo_em_branco.
ELSE.
IF ( p_t_campo-conteudo = space ).
RAISE campo_em_branco.
ELSE.
MOVE p_t_campo-conteudo TO p_t_dados-ebelp.
MODIFY p_t_dados TRANSPORTING ebelp.
DELETE p_t_campo INDEX sy-tabix.
CLEAR p_t_campo.
ENDIF.
ENDIF.
ENDIF.
ELSEIF v_string+16(1) = '-'.
p_itab_oculto-campo = 'BSEG-EBELN'.
p_itab_oculto-chave = 'C'.
APPEND p_itab_oculto.
p_itab_oculto-campo = 'BSEG-EBELP'.
* << Fim da inclusão
p_itab_oculto-chave = 'C'.
APPEND p_itab_oculto.
ENDIF.
ENDFORM.
FORM call_transaction TABLES p_itab_msg LIKE itab_msg[]
...
...
endif.
endif.
endif.
elseif v_string+11(1) = '-'.
p_itab_oculto-campo = 'COBL-PS_PSP_PNR'.
* >> Início da inclusão: FORM TRATA_STRING_CREDITO3
p_itab_oculto-chave = 'C'.
append p_itab_oculto.
endif.
IF v_string+18(1) = '+'.
IF p_t_contas-nplnr = space.
CLEAR p_t_campo.
READ TABLE p_t_campo WITH KEY campo = 'COBL-NPLNR'.
IF sy-subrc <> 0.
READ TABLE p_t_campo WITH KEY campo = 'BSEG-NPLNR'.
IF sy-subrc <> 0.
p_t_campo-mandt = p_t_contas-mandt.
p_t_campo-campo = 'COBL-NPLNR'.
p_t_campo-descricao = text-046.
APPEND p_t_campo.
p_t_campo-mandt = p_t_contas-mandt.
p_t_campo-campo = 'BSEG-NPLNR'.
p_t_campo-descricao = text-046.
APPEND p_t_campo.
RAISE campo_em_branco.
ELSE.
IF ( p_t_campo-conteudo = space ).
RAISE campo_em_branco.
ELSE.
MOVE p_t_campo-conteudo TO p_t_contas-nplnr.
MODIFY p_t_contas TRANSPORTING nplnr.
DELETE p_t_campo INDEX sy-tabix.
CLEAR p_t_campo.
ENDIF.
ENDIF.
ELSE.
IF ( p_t_campo-conteudo = space ).
RAISE campo_em_branco.
ELSE.
MOVE p_t_campo-conteudo TO p_t_contas-nplnr.
MODIFY p_t_contas TRANSPORTING nplnr.
DELETE p_t_campo INDEX sy-tabix.
CLEAR p_t_campo.
ENDIF.
ENDIF.
ENDIF.
IF p_t_contas-vornr = space.
CLEAR p_t_campo.
READ TABLE p_t_campo WITH KEY campo = 'COBL-VORNR'.
IF sy-subrc <> 0.
READ TABLE p_t_campo WITH KEY campo = 'RF05A-VORNR'.
IF sy-subrc <> 0.
p_t_campo-mandt = p_t_contas-mandt.
p_t_campo-campo = 'COBL-VORNR'.
p_t_campo-descricao = text-047.
APPEND p_t_campo.
p_t_campo-mandt = p_t_contas-mandt.
p_t_campo-campo = 'RF05A-VORNR'.
p_t_campo-descricao = text-047.
APPEND p_t_campo.
RAISE campo_em_branco.
ELSE.
IF ( p_t_campo-conteudo = space ).
RAISE campo_em_branco.
ELSE.
MOVE p_t_campo-conteudo TO p_t_contas-vornr.
MODIFY p_t_contas TRANSPORTING vornr.
DELETE p_t_campo INDEX sy-tabix.
CLEAR p_t_campo.
ENDIF.
ENDIF.
ELSE.
IF ( p_t_campo-conteudo = space ).
RAISE campo_em_branco.
ELSE.
MOVE p_t_campo-conteudo TO p_t_contas-vornr.
MODIFY p_t_contas TRANSPORTING vornr.
DELETE p_t_campo INDEX sy-tabix.
CLEAR p_t_campo.
ENDIF.
ENDIF.
ENDIF.
ELSEIF v_string+18(1) = '-'.
p_itab_oculto-campo = 'COBL-NPLNR'.
p_itab_oculto-chave = 'C'.
APPEND p_itab_oculto.
p_itab_oculto-campo = 'BSEG-NPLNR'.
p_itab_oculto-chave = 'C'.
APPEND p_itab_oculto.
p_itab_oculto-campo = 'COBL-VORNR'.
p_itab_oculto-chave = 'C'.
APPEND p_itab_oculto.
p_itab_oculto-campo = 'RF05A-VORNR'.
p_itab_oculto-chave = 'C'.
APPEND p_itab_oculto.
ENDIF.
IF v_string+16(1) = '+'.
IF p_t_contas-ebeln = space.
CLEAR p_t_campo.
READ TABLE p_t_campo WITH KEY campo = 'BSEG-EBELN'.
IF sy-subrc <> 0.
p_t_campo-mandt = p_t_contas-mandt.
p_t_campo-campo = 'BSEG-EBELN'.
p_t_campo-descricao = text-048.
APPEND p_t_campo.
RAISE campo_em_branco.
ELSE.
IF ( p_t_campo-conteudo = space ).
RAISE campo_em_branco.
ELSE.
MOVE p_t_campo-conteudo TO p_t_contas-ebeln.
MODIFY p_t_contas TRANSPORTING ebeln.
DELETE p_t_campo INDEX sy-tabix.
CLEAR p_t_campo.
ENDIF.
ENDIF.
ENDIF.
IF p_t_contas-ebelp = space.
CLEAR p_t_campo.
READ TABLE p_t_campo WITH KEY campo = 'BSEG-EBELP'.
IF sy-subrc <> 0.
p_t_campo-mandt = p_t_contas-mandt.
p_t_campo-campo = 'BSEG-EBELP'.
p_t_campo-descricao = text-049.
APPEND p_t_campo.
RAISE campo_em_branco.
ELSE.
IF ( p_t_campo-conteudo = space ).
RAISE campo_em_branco.
ELSE.
MOVE p_t_campo-conteudo TO p_t_contas-ebelp.
MODIFY p_t_contas TRANSPORTING ebelp.
DELETE p_t_campo INDEX sy-tabix.
CLEAR p_t_campo.
ENDIF.
ENDIF.
ENDIF.
ELSEIF v_string+16(1) = '-'.
p_itab_oculto-campo = 'BSEG-EBELN'.
p_itab_oculto-chave = 'C'.
APPEND p_itab_oculto.
p_itab_oculto-campo = 'BSEG-EBELP'.
* << Fim da inclusão
p_itab_oculto-chave = 'C'.
append p_itab_oculto.
endif.
ENDFORM.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCA109F01
Include /PWS/MZYCA109F01
...
itab_zycbe035-d_gsber = /pws/zycbe124-gsber.
itab_zycbe035-c_gsber = /pws/zycbe124-gsber.
itab_zycbe035-d_fictr = itab_zycbt141-fictr.
itab_zycbe035-c_fictr = itab_zycbt141-fictr.
itab_zycbe035-d_newko = itab_zycbt141-saknr1.
* >> Início da inclusão: FORM PREENCHE_PARTIDA_MULTIPLA
itab_zycbe035-nplnr = itab_zycbt141-nplnr.
itab_zycbe035-vornr = itab_zycbt141-vornr.
itab_zycbe035-ebeln = itab_zycbt141-ebeln.
itab_zycbe035-ebelp = itab_zycbt141-ebelp.
* << Fim da inclusão
IF p_tpimp = 'PRINCIPAL'.
CLEAR v_vlirrf.
READ TABLE itab_zycat025 WITH KEY tpimp = 'IRRF'.
IF sy-subrc = 0 AND itab_zycat025-dedfat = 'X'.
LOOP AT itab_zycbt141_i WHERE tpimp = 'IRRF'.
...
...
itab_zycbe035-d_gsber = /pws/zycbe124-gsber.
itab_zycbe035-c_gsber = /pws/zycbe124-gsber.
itab_zycbe035-d_fictr = itab_zycbt141-fictr.
itab_zycbe035-c_fictr = itab_zycbt141-fictr.
itab_zycbe035-ps_posid = itab_zycbt141-ps_posid.
* >> Início da inclusão: FORM PREENCHE_PARTIDA_MULTIPLA_REC
itab_zycbe035-nplnr = itab_zycbt141-nplnr.
itab_zycbe035-vornr = itab_zycbt141-vornr.
itab_zycbe035-ebeln = itab_zycbt141-ebeln.
itab_zycbe035-ebelp = itab_zycbt141-ebelp.
* << Fim da inclusão
LOOP AT itab_zyglt321.
CASE itab_zyglt321-cpor3.
WHEN 'SGTXT'.
IF itab_zyglt321-cpocb = 'NRFAT'.
itab_zycbe033-c_sgtxt = /pws/zycbe124-nrfat.
...
...
itab_zycbt141-nplnr = itab_bseg_aux-nplnr.
itab_zycbt141-matnr = itab_bseg_aux-matnr.
itab_zycbt141-geber = itab_bseg_aux-geber.
itab_zycbt141-ebeln = itab_bseg_aux-ebeln.
itab_zycbt141-vlremessa = /pws/zycbt124-vlme / v_reg.
* >> Início da inclusão: FORM PREENCHE_PASTA_CONTABILIZACAO
itab_zycbt141-ebelp = itab_bseg_aux-ebelp.
SELECT SINGLE * FROM afko WHERE aufnr = itab_bseg_aux-nplnr.
IF sy-subrc = 0.
SELECT SINGLE * FROM afvc WHERE aufpl = afko-aufpl
AND aplzl = itab_bseg_aux-aplzl.
IF sy-subrc = 0.
itab_zycbt141-vornr = afvc-vornr.
ENDIF.
ENDIF.
* << Fim da inclusão
v_tot = v_tot + itab_zycbt141-vlremessa.
IF v_tabix = v_reg.
IF v_tot > /pws/zycbt124-vlme.
v_dif = v_tot - /pws/zycbt124-vlme.
itab_zycbt141-vlremessa = itab_zycbt141-vlremessa - v_dif.
...
...
/pws/zycbe141-matnr TO p_itab_zycbt141-matnr ,
/pws/zycbe141-kdauf TO p_itab_zycbt141-kdauf ,
/pws/zycbe141-geber TO p_itab_zycbt141-geber ,
/pws/zycbe141-ebeln TO p_itab_zycbt141-ebeln ,
/pws/zycbe141-cod_area TO p_itab_zycbt141-cod_area ,
* >> Início da inclusão: FORM ATUALIZA_ITAB_RATEIO
/pws/zycbe141-vornr TO p_itab_zycbt141-vornr ,
/pws/zycbe141-ebelp TO p_itab_zycbt141-ebelp ,
* << Fim da inclusão
mark TO p_itab_zycbt141-mark .
MODIFY p_itab_zycbt141
INDEX p_indice.
IF sy-subrc NE 0 AND sy-ucomm NE 'DEL_L'.
APPEND p_itab_zycbt141.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCA109TOP
Include /PWS/MZYCA109TOP
...
/pws/zyglt321,
rm06b,
t16fe,
j_1bbranch,
adrc,
* >> Início da exclusão:
tcurx.
* << Fim da exclusão
* >> Início da inclusão:
tcurx,
afko,
afvc.
* << Fim da inclusão
DATA:
wa_zycbt031a LIKE /pws/zycbe031,
wa_zycbt011 LIKE /pws/zycbt011,
wa_vbfa LIKE vbfa,
wa_bkpf LIKE bkpf,
...
...
DATA: BEGIN OF itab_nome_campo OCCURS 0,
nome_campo_tela(35) TYPE c,
modif,
END OF itab_nome_campo.
CONTROLS:
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCA110F01
Contexto: FORM lancamento_multiplo USING p_tpimp
p_recontabiliza
p_recuperar.
...
LOOP AT itab_zycbt141 WHERE tpimp = p_tpimp.
...
itab_zycbe035-d_gsber = wa_zycbt124-gsber. "Divisão
itab_zycbe035-c_gsber = wa_zycbt124-gsber. "Divisão
itab_zycbe035-d_fictr = itab_zycbt141-fictr. "Item
itab_zycbe035-c_fictr = itab_zycbt141-fictr. "Item
* >> Início da Inclusão
* 269885 - Início
* Diagrama de rede / Operação
itab_zycbe035-nplnr = itab_zycbt141-nplnr.
itab_zycbe035-vornr = itab_zycbt141-vornr.
* Pedido de compra / No. item doc. compra
itab_zycbe035-ebeln = itab_zycbt141-ebeln.
itab_zycbe035-ebelp = itab_zycbt141-ebelp.
* 269885 - Fim
* >> Fim da Inclusão
* Verifica se tem IRRF deduzido do Principal
IF p_tpimp = 'PRINCIPAL'.
CLEAR v_vlirrf.
READ TABLE itab_zycat025 WITH KEY tpimp = 'IRRF'
nrseq = itab_zycbt141-nrseq.
...
ENDIF.
* Calcula Valor MI
itab_zycbe035-dmbtr = ( itab_zycbe035-wrbtr *
itab_dados_tc-vlmi ) / itab_dados_tc-vlme.
...
ENDLOOP.
ENDFORM. " lancamento_multiplo
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABD /PWS/ZYCBE141
Estrutura /pws/zycbe141
VORNR VORNR CHAR 4
EBELP EBELP NUMC 5 (chave externa EKPO)
Conexão ajuda p/pesq.c/campo
Nome de campo NPLNR
Nome ajuda pesq. COBL_EX_AUKO
Par.AjPesq TabConexão Cpo.conexão ajuda p/pesquisa
AUFNR /PWS/ZYCBE141 NPLNR
Nome de campo VORNR
Nome ajuda pesq. COBL_EX_NPACT
Par.AjPesq TabConexão Cpo.conexão ajuda p/pesquisa
AUFNR /PWS/ZYCBE141 AUFNR
VORNR /PWS/ZYCBE141 VORNR
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABD /PWS/ZYCBT141
Tabela /pws/zycbt141
Inclusão dos campos:
VORNR VORNR CHAR 4
EBELP EBELP NUMC 5 (chave externa EKPO)
EBELP EBELP NUMC 5 (chave externa EKPO)