Módulo: CÂMBIO EXPORTAÇÃO
Funcionalidade: Liquidação de Fatura
Data/Hora da Publicação: 16/01/2008 00:00:00
Data/Hora Última Alteração: 22/02/2011 12:40:44
Descrição da Nota: LIQUIDAÇÃO DE FATURAS
Sintoma
Alteração da busca da conta contábil da conta corrente ME no programa de liquidação. Devido à contas
de débito e crédito diferentes se faz necessária a busca da conta contábil crédito pela tabela
/PWS/ZYGLT316.
Solução
Alteradas includes:/PWS/MZYCB004F01, /PWS/MZYCB004F02 e /PWS/MZYCB004F03. Para que o programa busque
a conta de crédito da tabela /PWS/ZYGLT316.
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 05666 Data: 16/01/2008 Hora: 18:11:53
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 05666
Categoria : Melhoria
Prioridade : Média
Versão PW.CE : 7.0
Pacote : 00004
Agrupamento : 00030
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
04862 - 00001 - 7.0 - 00003 - DA LIQUIDAÇÃO - COMPENSAÇÃO AUTOMÁTICA CONTA CORRENTE ME
05486 - 00002 - 7.0 - 00003 - SELECIONAR RECURSO PARA LIQUIDAÇÃO DE FATURAS
----------------------------------------------------------------------------------------------------
LIQUIDAÇÃO DE FATURAS
----------------------------------------------------------------------------------------------------
Palavras Chave:
LIQUIDAÇÃO DE FATURAS
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCB004F01
REPS /PWS/MZYCB004F02
REPS /PWS/MZYCB004F03
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCB004F01
...
ELSE.
LOOP AT itab_zycbt034.
MESSAGE i016 WITH itab_zycbt034-descricao.
ENDLOOP.
v_subrc = 4.
ENDIF.
ELSE.
v_subrc = 4.
ENDIF.
ENDFORM.
* >> Início da inclusão:
FORM busca_conta_contabil
USING p_tipo TYPE char1
p_bukrs TYPE /pws/zyglt316-bukrs
p_chave TYPE /pws/zyglt316-ktosl
p_codaux1 TYPE /pws/zygle316-codaux1
p_codaux2 TYPE /pws/zygle316-codaux2
p_codaux3 TYPE /pws/zygle316-codaux3
CHANGING p_conta.
DATA: itab_zyglt316 TYPE STANDARD TABLE OF /pws/zyglt316,
wa_zyglt316 LIKE LINE OF itab_zyglt316.
CALL FUNCTION '/PWS/ZYGL_READ_ACCOUNT_NUMBER'
EXPORTING
bukrs = p_bukrs
ktosl = p_chave
codaux1 = p_codaux1
codaux2 = p_codaux2
codaux3 = p_codaux3
TABLES
account = itab_zyglt316
EXCEPTIONS
key_not_found = 1
rules_not_found = 2
OTHERS = 3.
READ TABLE itab_zyglt316 INDEX 1 INTO wa_zyglt316.
IF sy-subrc = 0.
CASE p_tipo.
WHEN 'D'.
MOVE wa_zyglt316-konts TO p_conta.
WHEN 'C'.
MOVE wa_zyglt316-konth TO p_conta.
ENDCASE.
ENDIF.
ENDFORM.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCB004F02
...
ENDLOOP.
ENDIF.
ENDFORM.
FORM baixa_cliente_ace.
DATA: v_subrc LIKE sy-subrc.
DATA: v_nrdias TYPE i,
v_prazo,
v_banco_d LIKE /pws/zycbt001-bconegoc,
v_belnr_cap LIKE /pws/zycbt006-belnr,
v_codaux LIKE /pws/zyglt316-codaux1,
* >> Início da inclusão: FORM BAIXA_CLIENTE_ACE
v_codaux1 TYPE /pws/zygle316-codaux1,
v_codaux2 TYPE /pws/zygle316-codaux2,
* << Fim da inclusão
v_tpcontr LIKE /pws/zycbt001-tpcontr,
v_contas_iguais(1) TYPE c,
v_contador TYPE n.
PERFORM clear_date_batch.
CONCATENATE '003' /pws/zycbe005-tpcontr INTO v_codeven.
CLEAR: v_data,
v_codeven.
CONCATENATE '003' itab_zycbt006-tpcontr INTO v_codeven.
CLEAR itab_zyglt321.
REFRESH itab_zyglt321.
...
...
IF /pws/zycbe001-desc_receb IS INITIAL.
itab_partidas-tcode = 'F-30'.
itab_partidas-tabela = 'ZYCBT006'.
itab_partidas-cpochv = itab_zycbe033-cpochv.
itab_partidas-belnr = itab_zycbt006-belnr_d.
itab_partidas-agkon = itab_zycbe033-d_newko.
itab_partidas-agkoa = itab_zycbe033-koart.
itab_partidas-agums = space.
itab_partidas-bukrs = itab_zycbe033-bukrs.
itab_partidas-shkzg = 'S'.
* >> Início da exclusão: FORM BAIXA_CLIENTE_ACE
v_gjahr = itab_zycbe033-dtdocto(4).
* << Fim da exclusão
* >> Início da inclusão: FORM BAIXA_CLIENTE_ACE
v_gjahr = itab_zycbt006-dtpagto(4).
* << Fim da inclusão
LOOP AT itab_zycbt209 WHERE nrinvoic = itab_zycbt006-nrinvoic
AND gsberf = itab_zycbt006-gsberf
AND nrparcf = itab_zycbt006-nrparcf
AND baixa = 'X'.
IF itab_zycbt209-hkont EQ itab_zycbe033-d_newko.
v_contas_iguais = 'X'.
EXIT.
ELSE.
CLEAR v_contas_iguais.
EXIT.
ENDIF.
ENDLOOP.
CLEAR v_year.
CALL FUNCTION '/PWS/ZYGL_OBTEM_ANO_CONTABIL'
EXPORTING
v_bukrs = itab_zycbt005-bukrs
* >> Início da exclusão: FORM BAIXA_CLIENTE_ACE
v_date = itab_zycbe033-dtdocto
* << Fim da exclusão
* >> Início da inclusão: FORM BAIXA_CLIENTE_ACE
v_date = itab_zycbt006-dtpagto
* << Fim da inclusão
IMPORTING
v_year = v_year
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.
...
...
OR ( NOT itab_zycbt006-belnr_d IS INITIAL AND
itab_zycbt001-tpcontr EQ 'C' ).
CLEAR itab_zycbe033-d_zuonr.
ENDIF.
ELSE.
READ TABLE itab_zycbt226i WITH KEY nrinvoic = itab_zycbt006-nrinvoic
gsberf = itab_zycbt006-gsberf
nrparcf = itab_zycbt006-nrparcf.
IF sy-subrc = 0.
itab_zycbe033-newbs = '50'.
* >> Início da exclusão: FORM BAIXA_CLIENTE_ACE
itab_zycbe033-c_newko = itab_zycbt226i-conta_contabil.
* << Fim da exclusão
* >> Início da inclusão: FORM BAIXA_CLIENTE_ACE
CLEAR: v_codaux1, v_codaux2.
v_codaux1 = itab_zycbt226i-bco_me.
SHIFT v_codaux1 LEFT DELETING LEADING '0'.
v_codaux2 = itab_zycbt226i-waers.
PERFORM busca_conta_contabil
USING 'C'
itab_zycbt226i-bukrs
'FBK'
v_codaux1
v_codaux2
space
CHANGING itab_zycbe033-c_newko.
* << Fim da inclusão
itab_zycbe033-wrbtr = itab_zycbt006-vlme.
READ TABLE itab_recurso_aux
WITH KEY nrinvoic = itab_zycbt006-nrinvoic
gsberf = itab_zycbt006-gsberf
nrparcf = itab_zycbt006-nrparcf
descorigem = v_liquidacao_m.
IF sy-subrc EQ 0.
itab_zycbe033-wrbtr = itab_recurso_aux-vl_total_saldo.
ENDIF.
ENDIF.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCB004F03
...
itab_zycbt226i-nrseq = <fs_zycbt226>-nrseq.
itab_zycbt226i-nrinvoic = <fs_zycbt226>-nrinvoic.
itab_zycbt226i-nrparcf = <fs_zycbt226>-nrparcf.
itab_zycbt226i-gsberf = <fs_zycbt226>-gsberf.
itab_zycbt226i-bukrs = <fs_zycbt226>-bukrs.
itab_zycbt226i-kunag = <fs_zycbt226>-kunag.
itab_zycbt226i-waers = <fs_zycbt226>-waers.
itab_zycbt226i-sld_exterior = <fs_zycbt226>-sld_exterior.
itab_zycbt226i-belnr_op2 = <fs_zycbt226>-belnr_op2.
itab_zycbt226i-dtlancto2 = <fs_zycbt226>-dtlancto2.
* >> Início da inclusão: FORM ATUALIZA_TABELAS
itab_zycbt226i-bco_me = <fs_zycbt226>-bco_me.
* << Fim da inclusão
itab_zycbt226i-sld_exterior = <fs_zycbt226>-sld_exterior.
itab_zycbt226i-conta_contabil = <fs_zycbt226>-conta_contabil.
APPEND itab_zycbt226i.
UPDATE /pws/zycbt226 SET belnr_op2 = <fs_zycbt226>-belnr_op2
dtlancto2 = <fs_zycbt226>-dtlancto2
sld_exterior = <fs_zycbt226>-sld_exterior
WHERE nrseq = <fs_zycbt226>-nrseq
AND nrinvoic = <fs_zycbt226>-nrinvoic
AND nrparcf = <fs_zycbt226>-nrparcf
AND gsberf = <fs_zycbt226>-gsberf.
...