CE PLUS - Nota 011290

Módulo: CÂMBIO FINANCEIRO

Funcionalidade: Remessa

Data/Hora da Publicação: 01/07/2011 00:00:00

Data/Hora Última Alteração: 01/07/2011 16:07:35

Descrição da Nota: REMESSA - CHAVE LANÇAMENTO

Sintoma

O sistema permitia a parametrização de apenas uma chave de lançamento para busca das partidas dos

documentos contábeis na criação das Remessas com Orgiem

 

 

Solução

O programa foi alterado para buscar as partidas do documento contábil de acordo com um range de

chaves de lançamentos

 

Versões Tratadas

8.0


Pré-Requisitos

Produto:

Nota

Descrição

REMESSA COM ORIGEM - DESCONSIDERAR PARTIDA CONTA RAZÃO-CHV.LANCTO. OK

REMESSA FINANCEIRA CONTAB.PELA F-43 PARA PAGTO.EM COMPETENCIA

VERIFICAÇÃO AMPLIADA, CODE INSPECTOR CAMBIO FINACEIRO

REPATRIAÇÃO DE REMESSA

Informações Complementares

----------------------------------------------------------------------------------------------------

Nota Número 11290 Data: 01/07/2011 Hora: 15:53:48

----------------------------------------------------------------------------------------------------

 

----------------------------------------------------------------------------------------------------

Nota Número              : 11290

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 8.0

Pacote                   : 00008

Agrupamento              : 00075

----------------------------------------------------------------------------------------------------

Referência às notas relacionadas:

Número - Ordem - Versão - Pacote Descrição Breve

 

05803  - 00001 - 7.0    - 00004 - VERIFICAÇÃO AMPLIADA, CODE INSPECTOR CAMBIO FINACEIRO

06671  - 00002 - 7.0    - 00005 - REPATRIAÇÃO DE REMESSA

06982  - 00003 - 7.0    - 00006 - REMESSA COM ORIGEM - DESCONSIDERAR PARTIDA CONTA RAZÃO-CHV.LANCTO.

09279  - 00004 - 8.0    - 00001 - REMESSA FINANCEIRA CONTAB.PELA F-43 PARA PAGTO.EM COMPETENCIA

----------------------------------------------------------------------------------------------------

Texto Rápido:

REMESSA - CHAVE LANÇAMENTO

----------------------------------------------------------------------------------------------------

Palavras Chave:

REMESSA - CHAVE LANÇAMENTO

 

----------------------------------------------------------------------------------------------------

Objetos da nota:

DYNP /PWS/SAPMZYCA027                        0001

FUNC /PWS/ZYCAA027

REPS /PWS/MZYCA027F01

REPS /PWS/MZYCA027I01

REPS /PWS/MZYCA027TOP

REPS /PWS/MZYCA109F01

REPS /PWS/MZYCA109TOP

REPT /PWS/SAPMZYCA027

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em DYNP /PWS/SAPMZYCA027                        0001

 

MODIFICAR LÓGICA DE PROCESSAMENTO TELA 0001

PROCESS BEFORE OUTPUT.

  MODULE:

          SELECIONA_CONSISTE_DADOS,

          STATUS_0001,

          set_screen.

PROCESS AFTER INPUT.

* >> Início da inclusão:

  FIELD v_cldebito  MODULE valida_chv_cdeb.

  FIELD v_clcredito MODULE valida_chv_ccre.

  FIELD v_fdebito   MODULE valida_chv_fdeb.

  FIELD v_fcredito  MODULE valida_chv_fcre.

* << Fim da inclusão

  MODULE: USER_COMMAND_0001.

  PROCESS ON VALUE-REQUEST.

  FIELD v_cldebito  MODULE seta_matchcode1.

  FIELD v_clcredito MODULE seta_matchcode2.

  FIELD v_fdebito   MODULE seta_matchcode3.

  FIELD v_fcredito  MODULE seta_matchcode4.

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em FUNC /PWS/ZYCAA027

 

...

    itab_dados     TYPE t_t_dados,

    itab_dados_aux TYPE t_t_dados,

    wa_dados       LIKE LINE OF itab_dados,                 "#EC *

    v_fieldname    TYPE dfies-lfieldname.

  FIELD-SYMBOLS:

    <fs_shlp>       LIKE LINE OF shlp_tab,

    <fs_fielddescr> LIKE LINE OF shlp_tab-fielddescr,

    <fs_dados>      LIKE LINE OF itab_dados.

  DATA: v_koart  TYPE /pws/zycat027-koart,

        v_shkzg  TYPE /pws/zycat027-shkzg.

* >> Início da inclusão: FUNCTION /PWS/ZYCAA027

  DATA: itab_tbsl TYPE TABLE OF tbsl,

        v_tabix   TYPE sy-tabix.

  FIELD-SYMBOLS: <fs_tbsl> LIKE LINE OF itab_tbsl.

* << Fim da inclusão

  GET PARAMETER ID 'KOART' FIELD  v_koart.                  "#EC EXISTS

  GET PARAMETER ID 'SHKZG' FIELD  v_shkzg.                  "#EC EXISTS

  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 = 'BSCHL' OR

          <fs_fielddescr>-fieldname = 'KOART' OR

          <fs_fielddescr>-fieldname = 'SHKZG' OR

          <fs_fielddescr>-fieldname = 'LTEXT'.

    v_fieldname = <fs_fielddescr>-fieldname.

...

 

...

    ENDIF.

  ENDLOOP.

  UNASSIGN: <fs_shlp>, <fs_fielddescr>.

  LOOP AT itab_dados ASSIGNING <fs_dados>.

    IF NOT <fs_dados>-koart EQ v_koart OR

       NOT <fs_dados>-shkzg EQ v_shkzg.

      DELETE record_tab INDEX sy-tabix.

      DELETE itab_dados.

    ENDIF.

  ENDLOOP.

* >> Início da inclusão: FUNCTION /PWS/ZYCAA027

  IF NOT itab_dados[] IS INITIAL.

    SELECT * FROM tbsl

      INTO TABLE itab_tbsl

      FOR ALL ENTRIES IN itab_dados

      WHERE bschl = itab_dados-bschl.

    LOOP AT itab_dados ASSIGNING <fs_dados>.

      v_tabix = sy-tabix.

      LOOP AT itab_tbsl ASSIGNING <fs_tbsl>

        WHERE bschl = <fs_dados>-bschl.

        IF <fs_tbsl>-xsonu = 'X'.

          DELETE record_tab INDEX v_tabix.

          DELETE itab_dados.

        ENDIF.

      ENDLOOP.

    ENDLOOP.

  ENDIF.

* << Fim da inclusão

ENDFUNCTION.

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPS /PWS/MZYCA027F01

 

...

              answer         = v_resposta.                  "#EC *

    IF     v_resposta = 'J'.

      PERFORM salvar_dados.

    ELSEIF v_resposta = 'A'.

      EXIT.

    ENDIF.

  ENDIF.

  CALL FUNCTION 'DEQUEUE_/PWS/EZYCAT027'.

  LEAVE PROGRAM.

ENDFORM.

* >> Início da inclusão:

FORM valida_razao USING    p_bschl

                  CHANGING p_erro.

  DATA: wa_tbsl TYPE tbsl.

  SELECT SINGLE *

    FROM tbsl

    INTO wa_tbsl

    WHERE bschl = p_bschl.

  IF wa_tbsl-xsonu = 'X'.

    p_erro = 'X'.

  ENDIF.

ENDFORM.

* << Fim da inclusão

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPS /PWS/MZYCA027I01

 

...

            tabname    = 'TBSL'

            fieldname  = 'BSCHL'

            searchhelp = v_matchcode4

            display    = l_display4

       TABLES

            return_tab = itab_result

       EXCEPTIONS

            OTHERS     = 0.

  v_fcredito  = itab_result-fieldval.

ENDMODULE.

* >> Início da inclusão:

MODULE valida_chv_cdeb INPUT.

  CLEAR v_erro.

  PERFORM valida_razao USING v_cldebito

                       CHANGING v_erro.

  IF NOT v_erro IS INITIAL.

    CLEAR ok_code.

    MESSAGE e061 WITH text-008.

  ENDIF.

ENDMODULE.

MODULE valida_chv_ccre INPUT.

  CLEAR v_erro.

  PERFORM valida_razao USING v_clcredito

                       CHANGING v_erro.

  IF NOT v_erro IS INITIAL.

    CLEAR ok_code.

    MESSAGE e061 WITH text-008.

  ENDIF.

ENDMODULE.

MODULE valida_chv_fdeb INPUT.

  CLEAR v_erro.

  PERFORM valida_razao USING v_fdebito

                       CHANGING v_erro.

  IF NOT v_erro IS INITIAL.

    CLEAR ok_code.

    MESSAGE e061 WITH text-008.

  ENDIF.

ENDMODULE.

MODULE valida_chv_fcre INPUT.

  CLEAR v_erro.

  PERFORM valida_razao USING v_fcredito

                       CHANGING v_erro.

  IF NOT v_erro IS INITIAL.

    CLEAR ok_code.

    MESSAGE e061 WITH text-008.

  ENDIF.

ENDMODULE.

* << Fim da inclusão

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPS /PWS/MZYCA027TOP

 

...

      OCCURS 0 WITH HEADER LINE.                            "#EC *

DATA: v_name(100) TYPE c,

      ok_code     TYPE sy-ucomm,

      v_status    TYPE c,

      v_resposta  TYPE c,

      v_alteracao TYPE c,

      v_cldebito  TYPE /pws/zycat027-bschl,

      v_clcredito TYPE /pws/zycat027-bschl,

      v_fdebito   TYPE /pws/zycat027-bschl,

      v_fcredito  TYPE /pws/zycat027-bschl.

* >> Início da inclusão:

DATA: v_erro.

* << Fim da inclusão

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPS /PWS/MZYCA109F01

 

...

   and ( vbtyp_n = 'M' or  vbtyp_n = 'P' ).

    endselect.

    if sy-subrc = 0.

      select *

        from bkpf

          up to 1 rows

        into wa_bkpf

       where awkey = wa_vbfa-vbeln.                     "#EC CI_NOFIRST

      endselect.

      if sy-subrc = 0.

* >> Início da exclusão: FORM CRIAR_REMESSA_ORDEM

        select * from /pws/zycat027 into table itab_zycat027

                 where shkzg = 'D'.                     "#EC CI_NOFIRST

        if sy-subrc = 0.

          loop at itab_zycat027.

            r_bschl-sign   = 'I'.

            r_bschl-option = 'EQ'.

            r_bschl-low    = itab_zycat027-bschl.

            append r_bschl.

          endloop.

* << Fim da exclusão

* >> Início da inclusão: FORM CRIAR_REMESSA_ORDEM

        perform carrega_bschl.

* << Fim da inclusão

          select * from bseg into table itab_bseg

                   where belnr = wa_bkpf-belnr

                     and bukrs = wa_bkpf-bukrs

                     and gjahr = wa_bkpf-gjahr

                     and bschl in r_bschl

                     and koart = 'D'

                     and augbl = space

                     and umskz = space.

* >> Início da exclusão: FORM CRIAR_REMESSA_ORDEM

        endif.

* << Fim da exclusão

        if sy-subrc = 0.

          perform cria_remessa tables itab_bseg

                               using  wa_bkpf.

          perform imprime_relatorio_remessas.

        else.

          message w061 with text-125 wa_bkpf-belnr text-133.

        endif.

      else.

        message w061 with text-126.

      endif.

...

 

...

form criar_remessa_doc.

  if not bkpf-belnr is initial and

     not bkpf-bukrs is initial and

     not bkpf-gjahr is initial.

    clear:   itab_bseg, wa_bkpf.

    refresh: itab_bseg.

    select single * from bkpf into wa_bkpf

                    where belnr = bkpf-belnr

                      and bukrs = bkpf-bukrs

                      and gjahr = bkpf-gjahr.

* >> Início da exclusão: FORM CRIAR_REMESSA_DOC

    if sy-subrc = 0.

      select *

        from /pws/zycat027

        into table itab_zycat027.                       "#EC CI_NOWHERE

* << Fim da exclusão

      if sy-subrc = 0.

* >> Início da exclusão: FORM CRIAR_REMESSA_DOC

        loop at itab_zycat027.

          r_bschl-sign   = 'I'.

          r_bschl-option = 'EQ'.

          r_bschl-low    = itab_zycat027-bschl.

          append r_bschl.

        endloop.

* << Fim da exclusão

* >> Início da inclusão: FORM CRIAR_REMESSA_DOC

      perform carrega_bschl.

* << Fim da inclusão

        select * from bseg into table itab_bseg

                where belnr = wa_bkpf-belnr

                  and bukrs = wa_bkpf-bukrs

                  and gjahr = wa_bkpf-gjahr

                  and augbl = space

                  and bschl in r_bschl

                  and umskz = space.

* >> Início da exclusão: FORM CRIAR_REMESSA_DOC

      endif.

* << Fim da exclusão

      if sy-subrc = 0.

        perform cria_remessa tables itab_bseg

                             using  wa_bkpf.

      else.

        message w061 with text-125 wa_bkpf-belnr text-133.

      endif.

    else.

      message w061 with text-126.

    endif.

  endif.

...

 

...

                      and gjahr = rbkp-gjahr.

    if sy-subrc = 0.

      concatenate wa_rbkp-belnr wa_rbkp-gjahr into v_docmiro.

      select *

        from bkpf

          up to 1 rows

        into wa_bkpf

       where gjahr = wa_rbkp-gjahr

         and awkey = v_docmiro.                         "#EC CI_NOFIRST

      endselect.

* >> Início da exclusão: FORM CRIAR_REMESSA_REVISAO

      if sy-subrc = 0.

        select * from /pws/zycat027 into table itab_zycat027

                 where shkzg = 'C'.                     "#EC CI_NOFIRST

* << Fim da exclusão

        if sy-subrc = 0.

* >> Início da exclusão: FORM CRIAR_REMESSA_REVISAO

          loop at itab_zycat027.

            r_bschl-sign   = 'I'.

            r_bschl-option = 'EQ'.

            r_bschl-low    = itab_zycat027-bschl.

            append r_bschl.

          endloop.

* << Fim da exclusão

* >> Início da inclusão: FORM CRIAR_REMESSA_REVISAO

          perform carrega_bschl.

* << Fim da inclusão

          select * from bseg into table itab_bseg

                   where belnr = wa_bkpf-belnr

                     and bukrs = wa_bkpf-bukrs

                     and gjahr = wa_bkpf-gjahr

                     and bschl in r_bschl

                     and koart = 'K'

                     and augbl = space

                     and umskz = space.

* >> Início da exclusão: FORM CRIAR_REMESSA_REVISAO

        endif.

* << Fim da exclusão

        if sy-subrc = 0.

          perform cria_remessa tables itab_bseg

                               using  wa_bkpf.

        else.

          message w061 with text-125 wa_bkpf-belnr text-133.

        endif.

      else.

        message w061 with text-126.

      endif.

    else.

...

 

...

              '/PWS/ZYCBM'

              'E'

              itab_zycbt034-descricao

              space

              space

              space

              '016'.

    endloop.

  endif.

endform.

* >> Início da inclusão:

form carrega_bschl.

  clear r_bschl.

  refresh r_bschl.

  carrega_bschl '01'.

  carrega_bschl '02'.

  carrega_bschl '04'.

  carrega_bschl '05'.

  carrega_bschl '06'.

  carrega_bschl '07'.

  carrega_bschl '08'.

  carrega_bschl '11'.

  carrega_bschl '12'.

  carrega_bschl '13'.

  carrega_bschl '14'.

  carrega_bschl '15'.

  carrega_bschl '16'.

  carrega_bschl '17'.

  carrega_bschl '18'.

  carrega_bschl '21'.

  carrega_bschl '22'.

  carrega_bschl '24'.

  carrega_bschl '25'.

  carrega_bschl '26'.

  carrega_bschl '27'.

  carrega_bschl '28'.

  carrega_bschl '31'.

  carrega_bschl '32'.

  carrega_bschl '34'.

  carrega_bschl '35'.

  carrega_bschl '36'.

  carrega_bschl '37'.

  carrega_bschl '38'.

endform.

* << Fim da inclusão

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPS /PWS/MZYCA109TOP

 

 

...

  v_resposta type c,

  v_verif   type c,

      v_total_docto type bseg-wrbtr.

constants:

  c_f63 type /pws/zyglt009-transacaorem value 'F-63',

  c_f43 type /pws/zyglt009-transacaorem value 'F-43'.

data: v_koart_bi type /pws/zycat027-koart,

      v_shkzg_bi type /pws/zycat027-shkzg,

      v_transrem type /pws/zyglt009-transacaorem,

      v_fornec   type /pws/zycat024-fornecedor.

* >> Início da inclusão:

DEFINE carrega_bschl.

  r_bschl-sign   = 'I'.

  r_bschl-option = 'EQ'.

  r_bschl-low    = &1.

  append r_bschl.

END-OF-DEFINITION.

* << Fim da inclusão

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPT /PWS/SAPMZYCA027

 

------------------------------------------------------------------------

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 008

 

Texto: (49 caracteres)

"Chave Lançamento de Razão Especial não permitido."

 

Comprimento máximo: 49