Módulo: CÂMBIO FINANCEIRO
Funcionalidade: Remessa
Data/Hora da Publicação: 20/04/2009 00:00:00
Data/Hora Última Alteração: 18/02/2011 14:15:58
Descrição da Nota: CRIA REMESSA, CÂMBIO FINANCEIRO, TIPO DE IMPOSTO ISS
Sintoma
Necessidade de melhoria na parametrização dos Tipos de Impostos e programa de Remessa Criar para
contabilizar o imposto de ISS conforme o fornecedor do município. Será aplicado somente para o Tipo
de Imposto ISS.
Solução
Desenvolvimento conforme solicitação.
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 08323 Data: 20/04/2009 Hora: 11:06:02
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 08323
Categoria : Melhoria
Prioridade : Média
Versão PW.CE : 7.0
Pacote : 00009
Agrupamento : 00094
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
06671 - 00001 - 7.0 - 00005 - REPATRIAÇÃO DE REMESSA
----------------------------------------------------------------------------------------------------
CRIA REMESSA, CÂMBIO FINANCEIRO, TIPO DE IMPOSTO ISS
----------------------------------------------------------------------------------------------------
Palavras Chave:
CRIA REMESSA, CÂMBIO FINANCEIRO, TIPO DE IMPOSTO ISS
----------------------------------------------------------------------------------------------------
Objetos da nota:
DYNP /PWS/SAPMZYCA109 0101
FUGR /PWS/ZYGFC1
FUNC /PWS/ZYCBA291
REPS /PWS/LZYCBGF3UXX
REPS /PWS/MZYCA109F01
REPS /PWS/MZYCA109I01
REPS /PWS/MZYCA110F01
REPT /PWS/SAPMZYCA109
SHLP /PWS/ZYCBA291
TABD /PWS/ZYCAT024
TABU TDDAT
TABU TVDIR
TOBJ /PWS/ZYCAT024S
----------------------------------------------------------------------------------------------------
***************************************************************************
Modificações efetuadas em DYNP /PWS/SAPMZYCA109 0101
***************************************************************************
**************************************************************
* NAO HOUVE ALTERACAO NOS OBJETOS DA TELA, SOMENTE NA LOGICA *
* DE PROCESSAMENTO. NAO PRECISA SOLICITAR DOWNLOAD DA TELA *
**************************************************************
MODIFICAR LÓGICA DE PROCESSAMENTO TELA 0101
...
/pws/zycae025-dtvencto MODULE consiste_dtvencto_imp.
ENDCHAIN.
FIELD /pws/zycae025-advalorem MODULE consiste_ad_valorem.
MODULE consiste_valores.
ENDLOOP.
MODULE controla_impostos.
MODULE: user_command_0101.
PROCESS ON VALUE-REQUEST.
FIELD /pws/zycbe124-recrem MODULE seta_matchcode.
FIELD /pws/zycbe124-codpagto MODULE seta_matchcode_pgto.
* >> Início da inclusão:
field /pws/zycae025-tpimp module seta_matchcode_tp_imposto.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
******************************************
Modificações efetuadas em FUGR /PWS/ZYGFC1
*******************************************************************
* *
* APOS A ALTERACAO NA ESTRUTURAS DA TABELAS /PWS/ZYCAT024 (SE11) *
* SEGUIR PASSOS PARA ATUALIZACAO : *
* *
* -> UTILITARIOS -> UTILITARIO DO BANCO DE DADOS *
* -> ATIVAR E AJUSTAR BANCO DE DADOS *
* *
* -> UTILITARIOS -> GERADOR DE ATUALIZACAO DE TABELA *
* *
*******************************************************************
----------------------------------------------------------------------------------------------------
********************************************
Modificações efetuadas em FUNC /PWS/ZYCBA291
********************************************
************************************
* CRIACAO DE NOVO MODULO DE FUNCAO *
************************************
NOVO MÓDULO DE FUNÇÃO: /PWS/ZYCBA291
CARACTERÍSTICAS
CLASSIFICAÇÃO:
GRUPO DE FUNÇÕES: /PWS/ZYCBGF3
TEXTO BREVE: CB - Tipo de Impostos
TIPO DE EXECUÇÃO:
(X) - MÓDULO DE FUNÇÃO NORMAL
(_) - MÓDULO DE ACESSO REMOTO
(_) - MÓDULO DE ATUALIZAÇÃO
(X) - INÍCIO IMEDIATO
(_) - INÍCIO IMEDIATO-SEM ATUAL.POSTER.
(_) - INÍC. RETARDADO
(_) - PROCES. CLOETIVO
DADOS GERAIS:
(_) - BLOQUEIO PROCESSO
(_) - GLOBAL
*********
MODIFIC.:
*********
NOME PARAM. ATRIB. TIPO REFERÊNCIA VL.PROPOSTO OPCIONAL TRANSF. TEXT
SHLP TYPE SHLP_DESCR_T X
CALLCONTROL LIKE DDSHF4CTRL X
*********
TABELAS:
*********
NOME PARAM. ATRIB. TIPO REFERÊNCIA OPCIONAL TEXTO BREVE
SHLP_TAB TYPE SHLP_DESCR_TAB_T
RECORD_TAB LIKE SEAHLPRES
***************
* TEXTO FONTE *
***************
* >> Início da inclusão:
FUNCTION /PWS/ZYCBA291.
type-pools:
shlp.
types:
begin of t_s_dados,
tpimp type /pws/zycat024-tpimp,
descr type /pws/zycat024-descr,
bukrs type /pws/zycat024-bukrs,
j_1bbranch type /pws/zycat024-j_1bbranch,
end of t_s_dados,
t_t_dados type standard table of t_s_dados.
data:
itab_dados type t_t_dados with header line,
wa_dados like line of itab_dados,
v_tabix type sy-tabix,
v_fieldname type dfies-lfieldname,
v_bukrs type /pws/zycat024-bukrs,
v_j_1bbranch type /pws/zycat024-j_1bbranch.
data: begin of itab_zycat024 occurs 0.
include structure /pws/zycat024.
data: end of itab_zycat024.
data: begin of itab_imposto occurs 0,
tpimp type /pws/zycat024-tpimp,
descr type /pws/zycat024-descr,
bukrs type /pws/zycat024-bukrs,
j_1bbranch type /pws/zycat024-j_1bbranch,
end of itab_imposto.
field-symbols:
<fs_shlp> like line of shlp_tab,
<fs_fielddescr> like line of shlp_tab-fielddescr,
<fs_dados> like line of itab_dados.
get parameter id 'BUKRS-291' field v_bukrs.
get parameter id 'J1BBRANCH-291' field v_j_1bbranch.
if callcontrol-step eq 'DISP'.
read table shlp_tab index 1 assigning <fs_shlp>.
check <fs_shlp> is assigned.
loop at <fs_shlp>-fielddescr assigning <fs_fielddescr>.
check: <fs_fielddescr>-fieldname = 'TPIMP' or
<fs_fielddescr>-fieldname = 'DESCR' or
<fs_fielddescr>-fieldname = 'BUKRS' or
<fs_fielddescr>-fieldname = 'J_1BBRANCH'.
v_fieldname = <fs_fielddescr>-fieldname.
call function 'F4UT_PARAMETER_VALUE_GET'
exporting
parameter = <fs_fielddescr>-fieldname
fieldname = v_fieldname
tables
shlp_tab = shlp_tab
record_tab = record_tab
results_tab = itab_dados
changing
shlp = shlp
callcontrol = callcontrol
exceptions
parameter_unknown = 1
others = 2.
endloop.
unassign: <fs_shlp>, <fs_fielddescr>.
clear: itab_imposto.
loop at itab_imposto assigning <fs_dados>.
read table itab_imposto
with key tpimp = <fs_dados>-tpimp
descr = <fs_dados>-descr
bukrs = <fs_dados>-bukrs
j_1bbranch = <fs_dados>-j_1bbranch.
if sy-subrc = 0.
delete itab_dados index sy-tabix.
delete record_tab index sy-tabix.
else.
itab_imposto-tpimp = <fs_dados>-tpimp.
itab_imposto-descr = <fs_dados>-descr.
itab_imposto-bukrs = <fs_dados>-bukrs.
itab_imposto-j_1bbranch = <fs_dados>-j_1bbranch.
append itab_imposto.
endif.
endloop.
select * from /pws/zycat024
into table itab_zycat024
where bukrs = v_bukrs.
loop at itab_zycat024.
if itab_zycat024-tpimp(3) = 'ISS'.
if itab_zycat024-j_1bbranch = v_j_1bbranch.
itab_imposto-tpimp = itab_zycat024-tpimp.
itab_imposto-descr = itab_zycat024-descr.
itab_imposto-bukrs = itab_zycat024-bukrs.
itab_imposto-j_1bbranch = itab_zycat024-j_1bbranch.
append itab_imposto.
endif.
else.
itab_imposto-tpimp = itab_zycat024-tpimp.
itab_imposto-descr = itab_zycat024-descr.
itab_imposto-bukrs = itab_zycat024-bukrs.
itab_imposto-j_1bbranch = itab_zycat024-j_1bbranch.
append itab_imposto.
endif.
endloop.
delete adjacent duplicates from itab_imposto comparing tpimp descr.
record_tab[] = itab_imposto[].
endif.
ENDFUNCTION.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
***********************************************
Modificações efetuadas em REPS /PWS/LZYCBGF3UXX
***********************************************
...
INCLUDE /PWS/LZYCBGF3U73.
INCLUDE /PWS/LZYCBGF3U74.
INCLUDE /PWS/LZYCBGF3U75.
INCLUDE /PWS/LZYCBGF3U76.
INCLUDE /PWS/LZYCBGF3U77.
INCLUDE /PWS/LZYCBGF3U78.
INCLUDE /PWS/LZYCBGF3U79.
INCLUDE /PWS/LZYCBGF3U80.
INCLUDE /PWS/LZYCBGF3U81.
INCLUDE /PWS/LZYCBGF3U82.
* >> Início da inclusão:
INCLUDE /PWS/LZYCBGF3U83.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
***********************************************
Modificações efetuadas em REPS /PWS/MZYCA109F01
***********************************************
...
erro_bi_iss = erro_bi_iof = 'X'.
EXIT.
ELSE.
CLEAR: v_total, itab_zycbt141.
ENDIF.
ENDLOOP.
ENDFORM.
FORM preenche_gera_contabeis USING p_tpimp
p_vlme.
DATA: v_koart_bi TYPE /pws/zycat027-koart,
* >> Início da exclusão: FORM PREENCHE_GERA_CONTABEIS
v_shkzg_bi TYPE /pws/zycat027-shkzg.
* << Fim da exclusão
* >> Início da inclusão: FORM PREENCHE_GERA_CONTABEIS
v_shkzg_bi type /pws/zycat027-shkzg,
v_fornec type /pws/zycat024-fornecedor.
* << Fim da inclusão
v_tpimp = p_tpimp.
CHECK erro_bi_principal IS INITIAL AND
erro_bi_irrf IS INITIAL AND
erro_bi_cide IS INITIAL AND
erro_bi_pis IS INITIAL AND
erro_bi_cofins IS INITIAL AND
erro_bi_iss IS INITIAL AND
erro_bi_iof IS INITIAL.
PERFORM clear_date_batch.
PERFORM get_parameters_f63_f02 USING p_tpimp.
...
...
ENDIF.
p_tpimp = 'PRINCIPAL'.
itab_zycbe033-c_prctr = /pws/zycbe124-prctr.
ELSE.
IF NOT itab_zycat024-credito_imp IS INITIAL.
v_cred_imp = itab_zycat024-credito_imp.
ELSE.
v_cred_imp = /pws/zyglt009-cont_impostos.
ENDIF.
IF v_cred_imp = '1'.
* >> Início da inclusão: FORM PREENCHE_GERA_CONTABEIS
if p_tpimp(3) = 'ISS'.
select single fornecedor
into v_fornec
from /pws/zycat024
where bukrs = /pws/zycbe124-bukrs
and tpimp = p_tpimp
and j_1bbranch = /pws/zycbe124-j_1bbranch.
if sy-subrc = 0.
itab_zycbe033-c_newko = v_fornec.
else.
itab_zycbe033-c_newko = ''.
endif.
else.
* << Fim da inclusão
itab_zycbe033-c_newko = /pws/zycbt089-forn_rec_fed.
* >> Início da inclusão: FORM PREENCHE_GERA_CONTABEIS
endif.
* << Fim da inclusão
itab_zycbe033-newbs = '31'.
v_koart_bi = 'F'.
v_shkzg_bi = 'C'.
ELSEIF v_cred_imp = '2'.
itab_zycbe033-c_newko = /pws/zycbe124-recrem.
ELSEIF v_cred_imp = '3'.
...
----------------------------------------------------------------------------------------------------
***********************************************
Modificações efetuadas em REPS /PWS/MZYCA109I01
***********************************************
...
endcase.
endmodule.
module consiste_ad_valorem input.
check v_status_s ne 0.
if not /pws/zycae025-aliqgera is initial and
/pws/zycae025-advalorem is initial.
message e061 with text-172.
endif.
endmodule.
module consiste_tipo_imposto input.
* >> Início da inclusão: MODULE CONSISTE_TIPO_IMPOSTO
data: v_msg_erro(60) type c.
* << Fim da inclusão
read table itab_zycat025 with key tpimp(3) = /pws/zycae025-tpimp(3).
if sy-subrc = 0 and not /pws/zycae025-tpimp = itab_zycat025-tpimp.
message e061 with text-178.
else.
read table itab_zycat025 with key tpimp(4) = /pws/zycae025-tpimp(4).
if sy-subrc = 0 and not /pws/zycae025-tpimp = itab_zycat025-tpimp.
message e061 with text-178.
else.
read table itab_zycat025 with key
tpimp(6) = /pws/zycae025-tpimp(6).
if sy-subrc = 0 and not /pws/zycae025-tpimp = itab_zycat025-tpimp.
message e061 with text-178.
endif.
endif.
endif.
* >> Início da inclusão: MODULE CONSISTE_TIPO_IMPOSTO
if /pws/zycae025-tpimp(3) = 'ISS'.
read table itab_zycat024
with key bukrs = /pws/zycbe124-bukrs
j_1bbranch = /pws/zycbe124-j_1bbranch
tpimp = /pws/zycae025-tpimp.
if not sy-subrc = 0.
message e061 with text-187
/pws/zycbe124-bukrs
/pws/zycae025-tpimp
text-188.
endif.
endif.
* << Fim da inclusão
endmodule.
module user_command_0004 input. "#EC *
case ok_code.
when 'ENTE' or 'BACK'.
set screen 0.
leave screen.
endcase.
endmodule.
module consiste_nrfat input.
clear itab_zyglt100.
...
...
display = var_display
dynpprog = '/PWS/SAPMZYCA109'
dynpnr = '0101'
dynprofield = '/PWS/ZYCBE124-CODPAGTO'
tables
return_tab = itab_result
exceptions
others = 0.
free tdynpread.
endmodule.
* >> Início da inclusão:
module seta_matchcode_tp_imposto input.
data: x_display(1) type c,
x_matchcode1 type shlpname,
x_tabname type dfies-tabname.
free: v_sequencial, v_sequencial_aux.
free tdynpread.
tdynpread-fieldname = '/PWS/ZYCBE124-J_1BBRANCH'.
append tdynpread.
call function 'DYNP_VALUES_READ'
exporting
dyname = '/PWS/SAPMZYCA109'
dynumb = '0100'
tables
dynpfields = tdynpread.
/pws/zycbe124-j_1bbranch = tdynpread-fieldvalue.
free tdynpread.
tdynpread-fieldname = '/PWS/ZYCBE124-BUKRS'.
append tdynpread.
call function 'DYNP_VALUES_READ'
exporting
dyname = '/PWS/SAPMZYCA109'
dynumb = '0100'
tables
dynpfields = tdynpread.
/pws/zycbe124-bukrs = tdynpread-fieldvalue.
clear: x_matchcode1, x_tabname.
x_matchcode1 = '/PWS/ZYCBA291'.
x_tabname = '/PWS/ZYCAT024'.
set parameter id 'BUKRS-291' field /pws/zycbe124-bukrs.
set parameter id 'J1BBRANCH-291' field /pws/zycbe124-j_1bbranch.
clear itab_result.
call function 'F4IF_FIELD_VALUE_REQUEST'
exporting
tabname = x_tabname
fieldname = 'TPIMP'
searchhelp = x_matchcode1
display = x_display
dynpprog = '/PWS/SAPMZYCA109'
dynpnr = '0101'
dynprofield = '/PWS/ZYCAE025-TPIMP'
tables
return_tab = itab_result
exceptions
others = 0.
free tdynpread.
endmodule.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
***********************************************
Modificações efetuadas em REPS /PWS/MZYCA110F01
***********************************************
...
endif.
if itab_zycat027[] is initial.
select *
from /pws/zycat027
into table itab_zycat027.
endif.
endform.
form contabiliza_docto_cp using p_tpimp
p_recontabiliza
p_recuperar.
* >> Início da inclusão: FORM CONTABILIZA_DOCTO_CP
data: v_fornec type /pws/zycat024-fornecedor.
* << Fim da inclusão
if not p_recontabiliza is initial.
read table itab_zycbt124_aux with key nrseq = itab_zycat025-nrseq.
else.
read table itab_zycbt124_aux with key nrseq = wa_zycbt124-nrseq.
endif.
check sy-subrc = 0.
perform clear_date_batch.
check erro_bi is initial.
if /pws/zycbt125-tprem = '2' and p_tpimp ne 'PRINCIPAL' and
p_recontabiliza is initial.
...
...
itab_zycbe033-newbs = '50'.
endif.
endif.
else.
if not itab_zycat024-credito_imp is initial.
v_cred_imp = itab_zycat024-credito_imp.
else.
v_cred_imp = /pws/zyglt009-cont_impostos.
endif.
if v_cred_imp eq '1'.
* >> Início da inclusão: FORM CONTABILIZA_DOCTO_CP
if p_tpimp(3) = 'ISS'.
select single fornecedor
into v_fornec
from /pws/zycat024
where bukrs = itab_zycbt124_aux-bukrs
and tpimp = p_tpimp
and j_1bbranch = itab_zycbt124_aux-j_1bbranch.
if sy-subrc = 0.
itab_zycbe033-c_newko = v_fornec.
else.
itab_zycbe033-c_newko = ''.
endif.
else.
* << Fim da inclusão
itab_zycbe033-c_newko = /pws/zycbt089-forn_rec_fed.
* >> Início da inclusão: FORM CONTABILIZA_DOCTO_CP
endif.
* << Fim da inclusão
elseif v_cred_imp eq '2'.
itab_zycbe033-c_newko = itab_zycbt124_aux-recrem.
if itab_zycbt124_aux-tpcliente = 'C'.
read table itab_zycat027
with key koart = 'C'
shkzg = 'C'.
...
----------------------------------------------------------------------------------------------------
***********************************************
Modificações efetuadas em REPT /PWS/SAPMZYCA109
***********************************************
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 187
Texto: (7 caracteres)
"Entrada"
Comprimento máximo: 7
------------------------------------------------------------------------
Incluído símbolo de texto:
Idioma: PT
Símbolo: 188
Texto: (51 caracteres)
"não existente para essa filial (verificar entrada)."
Comprimento máximo: 51
----------------------------------------------------------------------------------------------------
********************************************
Modificações efetuadas em SHLP /PWS/ZYCBA291
********************************************
* AJUDA DE PESQUISA*
********************
CRIAR AJUDA DE PESQUISA: /PWS/ZYCBA291
DESCRIÇÃO BREVE: CB - Tipo de Impostos
DEFINIÇÃO
OBTENÇÃO DE DADOS
MÉTODO DE SELEÇÃO:
COMPORTAMENTO DE DIÁLOGO:
TIPO DE DIÁLOGO: Exibição de valores imediata
HOT KEY: ____
EXIT AJUD. PESQUISA: /PWS/ZYCBA291
**********
PARÂMETROS:
**********
PARAM. IMP EXP POSL ISEL EXAJ ELEM. DADOS MOD VALOR PROPOSTO
TPIMP X 1 1 /PWS/ZYGLL1151
DESCR 2 2 /PWS/ZYGLL1152
BUKRS X 0 0 BUKRS
J_1BBRANCH X 0 0 J_1BBRANC_
----------------------------------------------------------------------------------------------------
********************************************
Modificações efetuadas em TABD /PWS/ZYCAT024
********************************************
* TABELA /PWS/ZYCAT024*
***********************
MODIFICAR TABELA TRANSPARENTE: /PWS/ZYCAT024
DESCRIÇÃO BREVE: CA - Parametrização do Tipo de Imposto
CARACTERÍSTICAS
CATEGORIA DA TABELA: Tabela transparente
CLASSE DE ENTREGA:
(A) - AUTUALIZAÇÃO DE TABELAS PERMITIDA
************
CAMPOS NOVOS
************
CAMPOS: TP. CAMPO CH: INI: TAB.VERIF.: TAB.REF.: TAB.VALORES.: CPO.RE
J_1BBRANCH J_1BBRANC_ X X J_1BBRANCH J_1BBRANCH
FORNECEDOR LIFNR LFA1
OPÇÕES TÉCNICAS
TIPO DE DADOS: APPL0
CATEGOR. TAMANHO: 0
(X) - AR. BUFFER NÃO PERMITIDO
(_) - AR. BUFFER PERMITIDO, MAS DESATIVADO
(_) - AR. BUFFER ATIVADO
(_) - RGSTS. IND ARMAZENADOS
(_) - ÁREA GEN ARMAZENADA EM BUFFER Nº DE CPOS CHAVE: ______
(_) - TOTALMENTE ARMAZENADO
(_) - REGISTRAR MODIFICS. DDS. EM LOG.
*******************************
ORDEM DOS CAMPOS APOS ALTERAÇÃO
*******************************
MANDT
BUKRS
TPIMP
J_1BBRANCH
DESCR
ZTERM
ALIQ
VALID_DE
VALID_AT
CONT_IMP
EST_COMP
CREDITO_IMP
ALTERA_BASE
CLASSIF_CONTABIL
ATUALIZA_DTVENCT
FORNECEDOR
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABU TDDAT
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABU TVDIR
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TOBJ /PWS/ZYCAT024S