CE PLUS - Nota 008323

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.

 

Versões Tratadas

7.0


Pré-Requisitos

Produto:

Nota

Descrição

REPATRIAÇÃO DE REMESSA

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