CE PLUS - Nota 008269

Módulo: CÂMBIO EXPORTAÇÃO

Funcionalidade: Captação

Data/Hora da Publicação: 12/04/2012 15:54:22

Data/Hora Última Alteração: 12/04/2012 15:54:22

Descrição da Nota: TRATAMENTO DE PROCESSOS DE EXPORTAÇÃO EM BRL-CAPTAÇAO,VINCULAÇAO E LIQU.

Sintoma

A necessidade  de uma inclusão de processos em moeda Nacional nas funcionalidades de captação,

vinculação, liquidação e rotina mensal.

 

 

Solução

Inclusão de tratamento nas funcionalidades de captação, vinculação, liquidação e rotina mensal em

criar contrato de moeda nacional(no caso de BRL), e efetuar a liquidação com fatura  em moeda

nacional(no caso BRL).

 

Versões Tratadas

7.0


Pré-Requisitos

Produto:

Nota

Descrição

CB - 444521 - CODE INSPECTOR E VERIFICAÇÃO AMPLIADA

VINCULAÇÃO ESTORNO FATURAS EXIBIR

DA - DATA CREDITO NO EXTERIOR NA VINCULAÇÃO- PRÉ-PAGAMENTO SECURITIZAÇÃO

PAGAMENTO DE JUROS - PONTO DE EXIT PGJ006 - VERIFICAÇÃO EXIT ATIVA

DA - COTAÇÃO DE MOEDAS PARA CAPTAÇÃO/FINANCIAMENTO/EMPRÉSTIMO

EXPORTAÇÃO CAPTAÇÃO

VINCULAÇÃO - /N NA PRIMEIRA CONTABILIZAÇÃO ACC - TRATAMENTO DE TELAS -

Informações Complementares

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

Nota Número 08269 Data: 02/04/2009 Hora: 14:43:52

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

 

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

Nota Número              : 08269

Categoria                : Melhoria

Prioridade               : Alta

Versão PW.CE             : 7.0

Pacote                   : 00009

Agrupamento              : 00092

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

Referência às notas relacionadas:

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

 

02165  - 00001 - 6.0    - 00025  - VINCULAÇÃO ESTORNO FATURAS EXIBIR

02667  - 00002 - 6.0    - 00025  - VINCULAÇÃO - /N NA PRIMEIRA CONTABILIZAÇÃO ACC - TRATAMENTO DE TE

06100  - 00003 - 7.0    - 00004  - CB - 444521 - CODE INSPECTOR E VERIFICAÇÃO AMPLIADA

07116  - 00004 - 7.0    - 00006  - EXPORTAÇÃO CAPTAÇÃO

07830  - 00005 - 7.0    - 00008  - PAGAMENTO DE JUROS - PONTO DE EXIT PGJ006 - VERIFICAÇÃO EXIT ATIV

07965  - 00006 - 7.0    - 00008  - DA - COTAÇÃO DE MOEDAS PARA CAPTAÇÃO/FINANCIAMENTO/EMPRÉSTIMO

08164  - 00007 - 7.0    - 00008  - DA - DATA CREDITO NO EXTERIOR NA VINCULAÇÃO- PRÉ-PAGAMENTO SECURI

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

TRATAMENTO DE PROCESSOS DE EXPORTAÇÃO EM BRL-CAPTAÇAO,VINCULAÇAO E LIQU.

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

Palavras Chave:

TRATAMENTO DE PROCESSOS DE EXPORTAÇÃO EM BRL-CAPTAÇAO,VINCULAÇAO E LIQU.

 

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

Objetos da nota:

FUNC /PWS/ZYCB_TRANSACAO_F_30_A

REPS /PWS/MZYCB001F01

REPS /PWS/MZYCB001I01

REPS /PWS/MZYCB001O01

REPS /PWS/MZYCB001TOP

REPS /PWS/MZYCB004F02

REPS /PWS/MZYCB009F03

REPS /PWS/MZYCB009F04

REPS /PWS/MZYCB009F05

REPS /PWS/MZYCB009F10

REPS /PWS/MZYCB009I01

REPS /PWS/MZYCB009O01

REPT /PWS/SAPMZYCB001

REPT /PWS/SAPMZYCB009

 

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

Modificações efetuadas em FUNC /PWS/ZYCB_TRANSACAO_F_30_A

 

...

        PERFORM bdc_field USING: 'BSEG-BUPLA' t_dados-brnch.

      ENDIF.

      IF t_dados-newbs = '50'.

        PERFORM bdc_field USING:

           'BSEG-SGTXT' t_dados-c_sgtxt.

      ELSE.

        PERFORM bdc_field USING:

           'BSEG-SGTXT' t_dados-d_sgtxt.

      ENDIF.

      IF NOT v_dmbtr IS INITIAL.

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

       if t_dados-waers ne 'BRL'.

* << Fim da inclusão

        PERFORM bdc_field USING:

           'BSEG-DMBTR' v_dmbtr.

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

        ENDIF.

* << Fim da inclusão

      ENDIF.

      IF NOT t_dados-d_valut IS INITIAL.

       READ TABLE itab_oculto WITH KEY campo = 'BSEG-VALUT' chave = 'C'.

        IF sy-subrc <> 0.

          IF t_dados-agkoa = 'S' OR

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCB001F01

 

...

                                  text-027.

  itab_zycbe033-kursf  = /pws/zycbe001-txcneg.

  PERFORM verify_null_field USING wa_zycbt011-blart

                                  'BLART'

                                  text-020.

  itab_zycbe033-blart  = wa_zycbt011-blart.

  PERFORM verify_null_field USING /pws/zycbe001-vlme

                                  'VLME'

                                  text-017.

  itab_zycbe033-wrbtr   = /pws/zycbe001-vlme.

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

if wa_zycbt007-waersb ne /pws/zycbe001-waers.

* << Fim da inclusão

  PERFORM verify_null_field USING /pws/zycbe001-vlmi

                                  'VLMI'

                                  text-094.

  itab_zycbe033-dmbtr   = /pws/zycbe001-vlmi.

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

 endif.

* << Fim da inclusão

  itab_zycbe033-d_gsber = /pws/zycbe001-gsber.

  itab_zycbe033-d_kostl = /pws/zycbe001-kostl.

  itab_zycbe033-d_prctr = /pws/zycbe001-prctr.

...

 

...

                  AND codmod  = 'E'.

  IF /pws/zycbe001-fdtlanc EQ 'D'.

    v_budat = /pws/zycbe001-dtdesem.

  ELSEIF /pws/zycbe001-fdtlanc EQ 'O'.

    v_budat = /pws/zycbe001-dtcontr.

  ELSE.

    v_budat = /pws/zycbe001-dtcred.

  ENDIF.

  SELECT SINGLE * FROM /pws/zycbt009

    WHERE codpadr EQ wa_zycbt011-ctmoed.

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

 if /pws/zycbe001-waers NE wa_zycbt007-WAERSB.

* << Fim da inclusão

  CALL FUNCTION '/PWS/ZYGL_CONVERTE_TAXA'

       EXPORTING

            moeda_de             = /pws/zycbe001-waers

            ctg_cambio           = /pws/zycbt009-kurst

            dtbase               = v_budat

            taxa                 = /pws/zycbe001-txcneg

            empresa              = /pws/zycbe001-bukrs

       IMPORTING

            taxa_conv            = v_taxa

       EXCEPTIONS

            fator_nao_encontrado = 1.

  IF sy-subrc EQ 1.

    MESSAGE i015 WITH text-287 text-288.

    v_sai = 'X'.

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

  endif.

  else.

    v_taxa = /pws/zycbe001-txcneg .

* << Fim da inclusão

  ENDIF.

  CLEAR /pws/zycbt009.

ENDFORM.

FORM call_zycb004.

  DATA: v_flag(1).

  v_flag = 'X'.

  IF NOT v_nrseqc IS INITIAL.

    SELECT * FROM /pws/zycbt006

              WHERE nrseqc EQ v_nrseqc.

    ENDSELECT.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCB001I01

 

...

    WHEN 'VISU'.

      CALL SCREEN '0400' STARTING AT 10 10

                         ENDING   AT 50 15.

    WHEN 'PREMIO'.

      IF /pws/zycbe001-tpcontr(1) EQ 'T'.

        CALL SCREEN '0202'.

      ELSE.

        MESSAGE i015 WITH text-065.

      ENDIF.

    WHEN 'ENTE'.

* >> Início da inclusão: MODULE USER_COMMAND_CB001

     if /pws/zycbe001-waers is initial and

        /pws/zycbe001-txcneg is initial.

        message i015 with text-075.

     endif.

* << Fim da inclusão

      PERFORM calcula_moeda.

    WHEN 'CANCELA'.

      IF /pws/zycbe001-tpcontr(1) = 'A'.

        IF NOT /pws/zycbe001-fcanc IS INITIAL.

          MOVE 'X' TO v_altcanc.

          SELECT SINGLE vlme FROM /pws/zycbt004

                 INTO /pws/zycbe004-vlme

                 WHERE nrcontr EQ /pws/zycbe001-nrcontr

                   AND nrseqc  EQ /pws/zycbe001-nrseqc

                   AND tpcontr EQ /pws/zycbe001-tpcontr

...

 

...

    WHEN 'P+'.

      tc_desp-top_line = tc_desp-top_line + 9.

      IF tc_desp-top_line > 10.

        tc_desp-top_line = 10 - 9.

      ENDIF.

  ENDCASE.

ENDMODULE.

MODULE check_waers INPUT.

  CASE sy-dynnr.

    WHEN '0100'.

* >> Início da exclusão: MODULE CHECK_WAERS

      CHECK /pws/zycbe001-waers EQ v_waersb.

      MESSAGE i056.

      CLEAR /pws/zycbe001-waers.

    WHEN '0200'.

      CHECK /pws/zycbe004-waers EQ v_waersb.

      MESSAGE i056.

      CLEAR /pws/zycbe004-waers.

* << Fim da exclusão

* >> Início da inclusão: MODULE CHECK_WAERS

      if  /pws/zycbe001-waers = 'BRL'.

       /pws/zycbe001-txcneg =  '1'.

      endif.

* << Fim da inclusão

  ENDCASE.

ENDMODULE.

MODULE date_consistency INPUT.

  check v_status_s = 1 or sy-tcode = '/PWS/ZYCB001_C'.

  PERFORM seleciona_zycbt007.

  CASE /pws/zycbe001-tpcontr(1).

    WHEN 'C' OR 'E' OR 'A' OR 'D' OR 'P' OR 'S' OR 'T'.

      CASE /pws/zycbe001-fdtlanc.

        WHEN 'C' OR 'c'.

          PERFORM consiste_datas_cred.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCB001O01

 

...

      ELSE.

        CLEAR:/pws/zycbe001-przcontr, v_descprzcontr.

      ENDIF.

      LOOP AT SCREEN.

        IF /pws/zycbe001-tpcontr = 'TR'.

          IF screen-name EQ '/PWS/ZYCBE001-CONTA_CONTAB'.

            screen-invisible = '1'.

            MODIFY SCREEN.

          ENDIF.

        ENDIF.

* >> Início da inclusão: MODULE SET_SCREEN

        if screen-name =   '/PWS/ZYCBE001-TXCNEG'.

          if /pws/zycbe001-waers = 'BRL'.

           /pws/zycbe001-txcneg = '1' .

          elseif /pws/zycbe001-waers is initial.

           clear: /pws/zycbe001-txcneg,

                  /pws/zycbe001-vlmi,

                  moeda.

          endif.

          modify screen.

         endif.

* << Fim da inclusão

      ENDLOOP.

    WHEN '0102'.

      tc_perj-lines = tc_perj-top_line + 15.

      IF v_status_s = '0'.

        LOOP AT tc_perj-cols INTO wa_cols.

          wa_cols-screen-input = '0'.

          IF wa_cols-screen-name EQ '/PWS/ZYCBE002-BELNR'.

            wa_cols-invisible = 1.

          ENDIF.

          IF wa_cols-screen-name EQ '/PWS/ZYCBE002-FJUR'.

...

 

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

Modificações efetuadas em REPS /PWS/MZYCB004F02

 

...

      v_data_aux = itab_zycbt006-dtpagto.

      v_data_aux+6(2) = '01'.

      v_databl = v_data_aux.

    when 'DTLANC'.

      v_databl = p_dtlanc.

    when 'TXACE'.

      perform verifica_data2 using wa_zycbt007-dtvincul

                                   itab_zycbt006-dtpagto.

    when 'DTVINCUL'.

      v_databl = itab_zycbt006-dtvincul.

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

     if /pws/zycbe001-waers eq wa_zycbt007-WAERSB .

        itab_zycbe033-kursf = /pws/zycbe001-txcneg.

     endif.

* << Fim da inclusão

    when 'DTCREDEXT'.

      v_databl = itab_zycbt006-dtpagext.

    when 'VIATRANS'.

      if itab_zycbt030-nrinvoic is initial.

        read table itab_zycbt030 with key

                                      nrinvoic = itab_zycbt006-nrinvoic

                                      gsberf   = itab_zycbt006-gsberf

                                      nrparcf  = itab_zycbt006-nrparcf.

      endif.

      clear wa_zycet048.

...

 

...

              v_databl = v_dtemb.

            elseif wa_zycet048-dtvrc eq 'DTAVERB'.

              v_databl = v_dtaverb2.

            elseif wa_zycet048-dtvrc eq 'DTCRUZE'.

              v_databl = v_dtcruze.

            endif.

          endif.

        endif.

      endif.

    when 'TXFAT'.

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

     if /pws/zycbe001-waers ne wa_zycbt007-WAERSB .

* << Fim da inclusão

      itab_zycbe033-kursf = v_kursf6.

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

    else.

       itab_zycbe033-kursf = /pws/zycbe001-txcneg.

    endif.

* << Fim da inclusão

      select single belnr dtbelnr

             from /pws/zycbt030

             into (v_belnr,v_dtemb)

             where nrinvoic eq itab_zycbt006-nrinvoic and

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCB009F03

 

...

  IF NOT itab_transport[] IS INITIAL.

    LEAVE PROGRAM.

  ENDIF.

  CLEAR v_erro_estorno.

  SET PARAMETER ID '001' FIELD /pws/zycbe001-nrseqc.        "#EC *

  SET PARAMETER ID '9999' FIELD /pws/zycbe005-dtvincul.     "#EC *

ENDFORM.

FORM altera_itab_zycbt005.

  DATA: subrc LIKE sy-subrc.

  v_index = tc_faturas-current_line.

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

if  /pws/zycbe001-waers = 'BRL' and

    itab_zycbt005-waers ne 'BRL'.

     delete  itab_zycbt005 index v_index.

     message i061 with text-503 text-504 text-505 .

    exit.

endif.

* << Fim da inclusão

  IF v_status_s EQ 0.

    READ TABLE itab_zycbt005_aux INDEX v_index.

    IF /pws/zycbe005-mark EQ 'X'.

      itab_zycbt005-mark = 'X'.

      itab_zycbt005_aux-mark = 'X'.

    ELSE.

      CLEAR itab_zycbt005-mark.

      CLEAR itab_zycbt005_aux-mark.

    ENDIF.

    MODIFY itab_zycbt005 INDEX v_index.

...

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

Modificações efetuadas em REPS /PWS/MZYCB009F04

...

      case /pws/zycbe001-tpcontr(1).

        when 'P' or 'S'.

          if not <fs_zycbt002>-dtvincul is initial.

            unassign <fs_dtdocto>.

            assign <fs_zycbt002>-dtvincul to <fs_dtdocto>.

*         endif.

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

*            if not /pws/zycbe001-dtvincul is initial.

*              and /pws/zycbe001-dtvincul > <fs_dtdocto>.

*              unassign <fs_dtdocto>.

*              assign /pws/zycbe001-dtvincul to <fs_dtdocto>.

*            endif.

* << Fim da exclusão

          endif.

        when others.

          if not /pws/zycbe001-dtvincul is initial.

            unassign <fs_dtdocto>.

            assign /pws/zycbe001-dtvincul to <fs_dtdocto>.

          endif.

      endcase.

    else.

      assign <fs_zycbt002>-dtcont to <fs_dtdocto>.

    endif.

 

 

 

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

Modificações efetuadas em REPS /PWS/MZYCB009F05

 

...

          AND inco1    IN inco

          AND nrre     IN nrre

          AND nrsd     IN nrsd

          AND vlslf    GT 0

          AND fvinc    EQ space

       AND status   EQ space.

    DESCRIBE TABLE itab_zycbt017_aux LINES v_nlin.

    LOOP AT itab_zycbt017_aux.

      itab_zycbt017_aux-v_fsaldo = 'X'.

      MODIFY itab_zycbt017_aux INDEX sy-tabix.

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

     if /pws/zycbt007-waersb eq /pws/zycbe001-waers.

       if itab_zycbt017_aux-waers ne /pws/zycbe001-waers.

         MESSAGE w061 WITH text-503 text-504

                           itab_zycbt017_aux-NRINVOIC text-505 .

       endif.

       if itab_zycbt017_aux-bukrs ne /pws/zycbe001-bukrs.

          MESSAGE w061 WITH text-503 text-504

                           itab_zycbt017_aux-NRINVOIC text-506 .

       endif.

     endif.

* << Fim da inclusão

    ENDLOOP.

    IF v_nlin IS INITIAL.

      MESSAGE w015 WITH text-058.

    ELSE.

      LEAVE TO SCREEN '0100'.

    ENDIF.

  ENDIF.

ENDFORM.

FORM set_screen_0301.

  SET PF-STATUS '0300'.

...

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

Modificações efetuadas em REPS /PWS/MZYCB009O01

 

...

        ENDIF.

      ENDIF.

      MODIFY SCREEN.

    ENDLOOP.

  ELSE.

    IF itab_zycbt005-nrinvoic IS INITIAL.

      LOOP AT SCREEN.

        screen-input = '0'.

        MODIFY SCREEN.

      ENDLOOP.

    ENDIF.

  ENDIF.

  IF sy-tcode = '/PWS/ZYCB009_A'.

    LOOP AT SCREEN.

      IF screen-name = '/PWS/ZYCBE005-VLME_P'.

        IF wa_desvincula-vldesvin > 0.

          READ TABLE itab_zycbt005_ant WITH KEY

                                      nrinvoic = /pws/zycbe005-nrinvoic

                                       gsberf  = /pws/zycbe005-gsberf

                                       nrparcf = /pws/zycbe005-nrparcf.

...

 

...

  PERFORM fecha_campos_para_exibicao.

ENDMODULE.

MODULE posiciona_cursor OUTPUT.

  CLEAR v_index_parid.

  IF NOT v_tstwaers IS INITIAL.

    LOOP AT itab_zycbt005.

      IF itab_zycbt005-waers NE /pws/zycbe001-waers.

        v_index_parid = v_index_parid + 1.

      ENDIF.

    ENDLOOP.

* >> Início da inclusão: MODULE POSICIONA_CURSOR

   if  /pws/zycbe001-waers ne  'BRL'.

* << Fim da inclusão

    SET CURSOR FIELD '/PWS/ZYCBE005-PARID' LINE v_index_parid.

* >> Início da inclusão: MODULE POSICIONA_CURSOR

   endif.

* << Fim da inclusão

  ENDIF.

ENDMODULE.

MODULE status_0102 OUTPUT.

  SET PF-STATUS '0102'.

  SET SCREEN '0102'.

  tc_performance-lines = tc_performance-top_line + 15.

...

 

 

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

Modificações efetuadas em REPT /PWS/SAPMZYCB001

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 075

 

Texto: (32 caracteres)

"Favor preencher Taxa de Câmbio !"

 

Comprimento máximo: 132

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 076

 

Texto: (23 caracteres)

"Favor preencher Moeda !"

 

Comprimento máximo: 23

 

 

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

Modificações efetuadas em REPT /PWS/SAPMZYCB009

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: 501

 

Texto: (35 caracteres)

"The code of the supply Bank must be"

 

Comprimento máximo: 37

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: 502

 

Texto: (26 caracteres)

"the same come of the Capt."

 

Comprimento máximo: 26

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: 503

 

Texto: (27 caracteres)

"Contr. in national currency"

 

Comprimento máximo: 27

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 503

 

Texto: (27 caracteres)

"Contrato em moeda nacional."

 

Comprimento máximo: 27

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: 504

 

Texto: (25 caracteres)

"No allowed to use invoice"

 

Comprimento máximo: 25

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 504

 

Texto: (25 caracteres)

"Não permitido usar fatura"

 

Comprimento máximo: 25

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: 505

 

Texto: (22 caracteres)

"with different currenc"

 

Comprimento máximo: 22

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 505

 

Texto: (22 caracteres)

"com moedas diferentes."

 

Comprimento máximo: 22

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: 506

 

Texto: (24 caracteres)

"with different companies"

 

Comprimento máximo: 24

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 506

 

Texto: (24 caracteres)

"com empresas diferentes."

 

Comprimento máximo: 24