Módulo: CÂMBIO EXPORTAÇÃO
Funcionalidade: Parâmetros
Data/Hora da Publicação: 03/09/2008 00:00:00
Data/Hora Última Alteração: 22/02/2011 11:53:11
Descrição da Nota: NO COMPLEMENTO DO BOLETO, NA REMESSA NÃO FIXAR O NUMERO DE DIAS
Sintoma
o numero de dias quando for remessa no complemento do boleto , está fixo em 2 dias e pega sempre a
taxa do imposto em 2 dias
Solução
criar um parametro na 007 onde se pode definir o numero de dias para o programa pegar a taxa
conforme o numero de dias configurado e não mais fixado em 2.
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 07253 Data: 03/09/2008 Hora: 16:58:42
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 07253
Categoria : Melhoria
Prioridade : Alta
Versão PW.CE : 7.0
Pacote : 00006
Agrupamento : 00063
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
01231 - 00002 - 6.0 - 00023 - REMESSA - IMPOSTOS NOVOS
02024 - 00001 - 6.0 - 00024 - COMPLEMENTO DO BOLETO REMESSA FINANCEIRA ALTERAÇÃO VALOR MI F-43
----------------------------------------------------------------------------------------------------
NO COMPLEMENTO DO BOLETO, NA REMESSA NÃO FIXAR O NUMERO DE DIAS
----------------------------------------------------------------------------------------------------
Palavras Chave:
NO COMPLEMENTO DO BOLETO, NA REMESSA NÃO FIXAR O NUMERO DE DIAS
DO IMPOSTO EM 2 DIAS
----------------------------------------------------------------------------------------------------
Objetos da nota:
DTEL /PWS/ZYGLL1402
DYNP /PWS/SAPMZYGL007 0114
REPS /PWS/MZYCA110F01
TABD /PWS/ZYGLT009
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCA110F01
...
ELSE.
MESSAGE s247 WITH v_dia_taxa.
erro_bi = 'X'.
ENDIF.
ENDFORM.
FORM dia_taxa.
DATA: v_dta_ini LIKE sy-datum,
v_dta_fim LIKE sy-datum,
v_dia TYPE i,
v_lastday(2).
* >> Início da inclusão: FORM DIA_TAXA
DATA: v_dia_tx_imp like /PWS/ZYGLT009-NRDIAS_TAXA ,
v_dia_tx type i .
* << Fim da inclusão
IF NOT /pws/zycbe031-dtcredpr IS INITIAL.
CONCATENATE /pws/zycbe031-dtcredpr(4) /pws/zycbe031-dtcredpr+4(2)
'01' INTO v_dta_ini.
ELSE.
CONCATENATE sy-datum(4) sy-datum+4(2) '01' INTO v_dta_ini.
ENDIF.
CALL FUNCTION 'END_OF_MONTH_DETERMINE_2'
EXPORTING
i_datum = v_dta_ini
IMPORTING
...
...
EXCEPTIONS
OTHERS = 1.
IF sy-subrc = 0.
IF NOT /pws/zycbe031-dtcredpr IS INITIAL.
CONCATENATE /pws/zycbe031-dtcredpr(4) /pws/zycbe031-dtcredpr+4(2)
v_lastday INTO v_dta_fim.
ELSE.
CONCATENATE sy-datum(4) sy-datum+4(2) v_lastday INTO v_dta_fim.
ENDIF.
ENDIF.
* >> Início da inclusão: FORM DIA_TAXA
select single NRDIAS_TAXA
from /PWS/ZYGLT009
into v_dia_tx_imp
where bukrs = /pws/zycbe031-bukrs.
if v_dia_tx_imp ne '0'.
v_dia_tx = v_dia_tx_imp + 30.
v_dta_ini = /pws/zycbe031-dtcredpr - v_dia_tx .
CALL FUNCTION 'DAY_ATTRIBUTES_GET'
EXPORTING
factory_calendar = 'BR'
holiday_calendar = 'BR'
date_from = v_dta_ini
date_to = v_dta_fim
language = sy-langu
TABLES
day_attributes = itab_periodo
EXCEPTIONS
factory_calendar_not_found = 1
holiday_calendar_not_found = 2
date_has_invalid_format = 3
date_inconsistency = 4
OTHERS = 5.
IF NOT /pws/zycbe031-dtcredpr IS INITIAL.
v_dia_taxa = /pws/zycbe031-dtcredpr.
ELSE.
v_dia_taxa = sy-datum.
ENDIF.
WHILE v_dia NE v_dia_tx_imp.
v_dia_taxa = v_dia_taxa - 1.
READ TABLE itab_periodo WITH KEY date = v_dia_taxa.
IF itab_periodo-freeday EQ ' ' AND itab_periodo-holiday EQ ' '.
v_dia = v_dia + 1.
ENDIF.
ENDWHILE.
else.
* << Fim da inclusão
v_dta_ini = /pws/zycbe031-dtcredpr - 30.
CALL FUNCTION 'DAY_ATTRIBUTES_GET'
EXPORTING
factory_calendar = 'BR'
holiday_calendar = 'BR'
date_from = v_dta_ini
date_to = v_dta_fim
language = sy-langu
TABLES
day_attributes = itab_periodo
...
...
ELSE.
v_dia_taxa = sy-datum.
ENDIF.
WHILE v_dia NE 2.
v_dia_taxa = v_dia_taxa - 1.
READ TABLE itab_periodo WITH KEY date = v_dia_taxa.
IF itab_periodo-freeday EQ ' ' AND itab_periodo-holiday EQ ' '.
v_dia = v_dia + 1.
ENDIF.
ENDWHILE.
* >> Início da inclusão: FORM DIA_TAXA
ENDIF.
* << Fim da inclusão
ENDFORM.
FORM contabiliza_tv_func.
CLEAR erro_bi.
PERFORM get_parameters_tv.
SELECT SINGLE * FROM /pws/zyglt009
WHERE bukrs EQ /pws/zycbe031-bukrs.
DO 2 TIMES.
IF sy-index EQ 2.
IF sy-ucomm NE 'DEL' AND
/pws/zycbe145-taxatc EQ wa_zycbt145-taxatc AND
...
...
itab_dados_tc-belnrpag = itab_zycbt134-belnr_c.
ENDIF.
APPEND itab_dados_tc.
ENDIF.
SORT itab_dados_tc BY index tpimp.
itab_dados_tc_aux[] = itab_dados_tc[].
ENDFORM.
FORM verifica_propoe_taxa.
DATA: wa_tcurr LIKE tcurr,
v_dia_taxa_conv LIKE sy-datum,
* >> Início da exclusão: FORM VERIFICA_PROPOE_TAXA
v_ctmoed LIKE /pws/zycbt011-ctmoed.
* << Fim da exclusão
* >> Início da inclusão: FORM VERIFICA_PROPOE_TAXA
v_ctmoed LIKE /pws/zycbt011-ctmoed,
v_codeven like /pws/zycbt011-codeven.
* << Fim da inclusão
CHECK v_status_s = '1'.
PERFORM dia_taxa.
CONVERT DATE v_dia_taxa INTO INVERTED-DATE v_dia_taxa_conv.
* >> Início da inclusão: FORM VERIFICA_PROPOE_TAXA
case /pws/zycbe031-MDCORRESP.
when 'CE'.
SELECT SINGLE ctmoed FROM /pws/zycbt011 INTO v_ctmoed
WHERE codmod = 'F'
AND codeven = '006P'
AND bukrs = /pws/zycbe031-bukrs.
when 'IF'.
SELECT SINGLE ctmoed FROM /pws/zycbt011 INTO v_ctmoed
WHERE codmod = 'I'
AND codeven = '002P'
AND bukrs = /pws/zycbe031-bukrs.
when 'ED'.
CONCATENATE '004' /pws/zycbe031-TPCONTR INTO v_codeven.
SELECT SINGLE ctmoed FROM /pws/zycbt011 INTO v_ctmoed
WHERE codmod = 'E'
AND codeven = v_codeven
AND bukrs = /pws/zycbe031-bukrs.
when 'EJ'.
SELECT SINGLE ctmoed FROM /pws/zycbt011 INTO v_ctmoed
WHERE codmod = 'E'
AND codeven = '004CJ'
AND bukrs = /pws/zycbe031-bukrs.
when 'EL'.
SELECT SINGLE ctmoed FROM /pws/zycbt011 INTO v_ctmoed
WHERE codmod = 'E'
AND codeven = '004AR'
AND bukrs = /pws/zycbe031-bukrs.
when 'EO'.
SELECT SINGLE ctmoed FROM /pws/zycbt011 INTO v_ctmoed
WHERE codmod = 'E'
AND codeven = '004CM'
AND bukrs = /pws/zycbe031-bukrs.
when 'CP'.
* << Fim da inclusão
SELECT SINGLE ctmoed FROM /pws/zycbt011 INTO v_ctmoed
WHERE codmod = 'F'
AND codeven = '004P'
AND bukrs = /pws/zycbe031-bukrs.
* >> Início da inclusão: FORM VERIFICA_PROPOE_TAXA
endcase.
* << Fim da inclusão
SELECT SINGLE kurst
FROM /pws/zycbt009
INTO /pws/zycbt009-kurst
WHERE codpadr = v_ctmoed.
v_ctmoeda = /pws/zycbt009-kurst.
SELECT SINGLE * FROM tcurr INTO wa_tcurr
WHERE kurst = v_ctmoeda
AND fcurr = /pws/zycbe031-waers
AND tcurr = /pws/zycbt007-waersb
AND gdatu = v_dia_taxa_conv.
IF sy-subrc = 0.
* >> Início da inclusão: FORM VERIFICA_PROPOE_TAXA
IF /pws/zycbe031-MDCORRESP = 'CP'.
* << Fim da inclusão
IF wa_tcurr-ukurs > /pws/zycbe031-kursf.
LOOP AT itab_dados_tc WHERE tpimp NE 'PRINCIPAL'.
itab_dados_tc-kursf = wa_tcurr-ukurs.
itab_dados_tc-vlmi = itab_dados_tc-vlme *
itab_dados_tc-kursf.
MODIFY itab_dados_tc INDEX sy-tabix.
IF itab_dados_tc-tpimp(4) EQ 'IRRF'.
/pws/zycbe031-taxair = itab_dados_tc-kursf.
ELSEIF itab_dados_tc-tpimp(4) EQ 'CIDE'.
/pws/zycbe031-taxacide = itab_dados_tc-kursf.
...
...
ELSEIF itab_dados_tc-tpimp(3) EQ 'IOF'.
/pws/zycbe145-taxaiof = itab_dados_tc-kursf.
ELSEIF itab_dados_tc-tpimp(3) EQ 'ISS'.
/pws/zycbe145-taxaiss = itab_dados_tc-kursf.
ELSEIF itab_dados_tc-tpimp(3) EQ 'PIS'.
/pws/zycbe145-taxapis = itab_dados_tc-kursf.
ELSEIF itab_dados_tc-tpimp(6) EQ 'COFINS'.
/pws/zycbe145-taxacofins = itab_dados_tc-kursf.
ENDIF.
ENDLOOP.
* >> Início da inclusão: FORM VERIFICA_PROPOE_TAXA
ENDIF.
ELSE.
if /pws/zycbe031-VLIR ne '0'.
/pws/zycbe031-taxair = wa_tcurr-ukurs.
endif.
* << Fim da inclusão
ENDIF.
ELSE.
MESSAGE s247 WITH v_dia_taxa.
ENDIF.
ENDFORM.
FORM get_parameters_cp USING p_tpimp.
CLEAR: itab_zyglt321, wa_zycbt011.
REFRESH: itab_zyglt321.
IF /pws/zycbt127-nrseq IS INITIAL.
SELECT SINGLE nrseq FROM /pws/zycbt127
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABD /PWS/ZYGLT009
CRIAR ELEMENTO DE DADOS: /PWS/ZYGLL1402
DESCRIÇÃO BREVE:GL - Quantidade de dias para seleção da taxa do imposto
DEFINIÇÃO
CATEGORIA DE DADOS:
(X) - CATEGORIA ELEMENTAR
(X) - DOMÍNIO /PWS/ZYGLD412
(_) - TIPO INSTALADO CTG. DADOS: NUMC
CUMPRIMEN._3______ DECIMAIS.________
(_) - TIPO DE REFERÊNCIA
REFERÊNCIA A:_____________________________________
ATRIBUTOS:
REDIMENS: (_) - VERTICAL (_) - HORIZONTAL
___ - LINHAS MIN. ___ - COLUNAS MIN.
CARACTERÍSTICAS:
ID PARÂMETRO: ____________________
NOME COMPENENTE DEFAULT: ________________________
(_) DOC. MODIFICAÇÃO
AJUDA PARA PESQUISA
NOME: __________________________
PARÂMETROS: __________________________
DENOM. DE CAMPO:
Breve 10 Qtde diatx
Médio 15 Qtde dia taxa
longa 34 Qtde de dias para taxa do imposto
Título 34 Qtde de dias para taxa do imposto
MODIFICAR TABELA TRANSPARENTE: /PWS/ZYGLT009
DESCRIÇÃO BREVE: GL - Parâm Gerais Câmbio - continuação da ZYCBT007
CARACTERÍSTICAS
CATEGORIA DA TABELA: ___________________________
CLASSE DE ENTREGA: ___________________________
(_) - AUTUALIZAÇÃO DE TABELAS PERMITIDA
CAMPOS NOVOS
CAMPOS: TP. CAMPO CH: INI: TAB.VERIF.: TAB.REF.: CPO.RE
NRDIAS_TAXA /PWS/ZYGLL1402 NUMC 3 0 GL - Quantidade de dias para seleção da taxa
do imposto