CE PLUS - Nota 001635

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: DI

Data/Hora da Publicação: 23/06/2006 00:00:00

Data/Hora Última Alteração: 20/06/2011 12:38:06

Descrição da Nota: AO SALVAR A DI NÃO ESTÁ SENDO GERADA A COMPENSAÇÃO DA VARIAÇÃO CAMBIAL

Sintoma

Ao salvar a DI não está sendo gerada a compensação da variação cambial e a mesma é apresentada no

encerramento contábil.

 

 

 

Solução

Atualização do programa da DI para verificar se o campo esta obrigatorio ou não.

 

 

Versões Tratadas

6.0


Pré-Requisitos

Produto:

Nota

Descrição

NÃO ESTÁ FAZENDO VARIAÇÃO CAMBIAL DA DI

Informações Complementares

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

Nota Número 01635 Data: 23/06/2006 Hora: 15:25:47

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

 

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

Nota Número              : 01635

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 6.0

Pacote                   : 00024

Agrupamento              : 00119

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

Referência às notas relacionadas:

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

 

01507  - 00001 - 6.0    - 00023  - NÃO ESTÁ FAZENDO VARIAÇÃO CAMBIAL DA DI

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

AO SALVAR A DI NÃO ESTÁ SENDO GERADA A COMPENSAÇÃO DA VARIAÇÃO CAMBIAL

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

Palavras Chave:

DI - GERADA - COMPENSAÇÃO - VARIAÇÃO - CAMBIAL

 

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

Objetos da nota:

FUNC /PWS/ZYCI_TRANSACAO_F_05

FUNC /PWS/ZYCI_TRANSACAO_F_51C

REPS /PWS/LZYCIGF2F01

REPS /PWS/MZYCI023F03

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

Modificações efetuadas em FUNC /PWS/ZYCI_TRANSACAO_F_05

...

           'BDC_OKCODE'  '=ZK'.

      PERFORM bdc_screen USING 'SAPLKACB' '0002'.

      READ TABLE itab_oculto WITH KEY campo = 'COBL-GSBER'

                                      chave = v_chave.

      IF sy-subrc <> 0.

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

        IF t_contas-bschl = 40

        OR t_contas-bschl = 50.

* << Fim da inclusão

        PERFORM bdc_field USING 'COBL-GSBER' t_contas-d_gsber.

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

        ELSE.

          PERFORM define_campo TABLES t_telas

                                USING  'COBL-GSBER'

                                       'SAPLKACB'

                                       '0002'

                                CHANGING

                                       v_invisible

                                       v_input

                                       v_output.

          IF v_invisible = 0 AND v_input = 1 AND v_output = 1.

            IF NOT t_contas-d_gsber IS INITIAL.

              PERFORM bdc_field USING 'COBL-GSBER'  t_contas-d_gsber.

* << Fim da inclusão

      ENDIF.

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

          ENDIF.

        ENDIF.

      ENDIF.

* << Fim da inclusão

      READ TABLE itab_oculto WITH KEY campo = 'COBL-PRCTR'

                                      chave = v_chave.

      IF sy-subrc <> 0.

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

        IF t_contas-bschl = 40

        OR t_contas-bschl = 50.

           PERFORM bdc_field USING 'COBL-PRCTR' t_contas-d_prctr.

        ELSE.

          PERFORM define_campo TABLES t_telas

                               USING  'COBL-PRCTR'

                                      'SAPLKACB'

                                      '0002'

                               CHANGING

                                      v_invisible

                                      v_input

                                      v_output.

          IF v_invisible = 0 AND v_input = 1 AND v_output = 1.

* << Fim da inclusão

            PERFORM bdc_field USING 'COBL-PRCTR'  t_contas-d_prctr.

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

          ENDIF.

        ENDIF.

* << Fim da inclusão

      ENDIF.

      PERFORM bdc_field  USING:

        'BDC_SUBSCR'  'SAPLKACB' ,

        'BDC_OKCODE'  '=ENTE'.

      PERFORM bdc_screen USING 'SAPMF05A' '0330'.

...

 

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

Modificações efetuadas em REPS /PWS/LZYCIGF2F01

 

...

                       CHANGING

                              v_invisible

                              v_input

                              v_output.

  IF v_invisible = 0 AND v_input = 1 AND v_output = 1.

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

    IF NOT p_t_dados-c_prctr IS INITIAL.

* << Fim da inclusão

    PERFORM bdc_field USING 'BSEG-PRCTR'  p_t_dados-c_prctr.

  ENDIF.

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

  ENDIF.

* << Fim da inclusão

  IF v_string+19(1) = '+'.

    IF p_t_dados-c_fipos = space.

      CLEAR p_t_campo.

      READ TABLE p_t_campo WITH KEY campo = 'COBL-FIPOS'.

      IF sy-subrc <> 0.

...

 

...

  ELSEIF v_string+9(1) = '-'.

    p_itab_oculto-campo = 'COBL-KOSTL'.

    p_itab_oculto-chave = 'D'.

    APPEND p_itab_oculto.

  ENDIF.

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

  IF v_string+41(1) = '+'.

    IF p_t_dados-d_prctr = space.

      CLEAR p_t_campo.

      READ TABLE p_t_campo WITH KEY campo = 'COBL-PRCTR'.

      IF sy-subrc <> 0.

        p_t_campo-mandt = p_t_dados-mandt.

        p_t_campo-campo = 'COBL-PRCTR'.

        p_t_campo-descricao = text-014.

        APPEND p_t_campo.

        RAISE campo_em_branco.

* << Fim da inclusão

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

  perform define_campo tables t_telas

                       using  'BSEG-PRCTR'

                               v_programa

                              '0300'

                       changing

                              v_invisible

                              v_input

                              v_output.

* << Fim da exclusão

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

      ELSE.

        IF ( p_t_campo-conteudo = space ).

          RAISE campo_em_branco.

* << Fim da inclusão

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

  if v_invisible = 0 and v_input = 1 and v_output = 1.

    perform bdc_field using 'BSEG-PRCTR'  p_t_dados-d_prctr.

* << Fim da exclusão

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

        ELSE.

          MOVE p_t_campo-conteudo TO p_t_dados-d_prctr.

          MODIFY p_t_dados TRANSPORTING d_prctr.

          DELETE p_t_campo INDEX sy-tabix.

          CLEAR p_t_campo.

        ENDIF.

      ENDIF.

    ENDIF.

  ELSEIF v_string+41(1) = '-'.

    p_itab_oculto-campo = 'COBL-PRCTR'.

    p_itab_oculto-chave = 'D'.

    APPEND p_itab_oculto.

* << Fim da inclusão

  endif.

  IF v_string+19(1) = '+'.

    IF p_t_dados-d_fipos = space.

      CLEAR p_t_campo.

      READ TABLE p_t_campo WITH KEY campo = 'COBL-FIPOS'.

...

 

 

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

Modificações efetuadas em FUNC /PWS/ZYCI_TRANSACAO_F_51C

...

            'RF05A-NEWKO' t_contas_aux-d_newko,

            'RF05A-NEWBS' t_contas_aux-bschl.

      endif.

      perform bdc_field  using 'BDC_OKCODE'  '/00'.

      perform bdc_screen using 'SAPLKACB' '0002'.

      read table itab_oculto with key campo = 'COBL-GSBER'

                                      chave = v_chave.

      if sy-subrc <> 0 and not t_contas-d_gsber is initial.

        perform bdc_field using 'COBL-GSBER' t_contas-d_gsber.

      endif.

* >> Início da inclusão:

      READ TABLE t_telas WITH KEY name = 'COBL-KOSTL'.

* << Fim da inclusão

      read table itab_oculto with key campo = 'COBL-KOSTL'

                                      chave = v_chave.

      if sy-subrc <> 0.

        perform bdc_field using 'COBL-KOSTL' t_contas-d_kostl.

      endif.

      read table itab_oculto with key campo = 'COBL-PRCTR'

                                      chave = v_chave.

      if sy-subrc <> 0.

        perform bdc_field using 'COBL-PRCTR' t_contas-d_prctr.

      endif.

...

 

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

Modificações efetuadas em REPS /PWS/MZYCI023F03

 

 

...

FORM fill_date_f_51_variacao.

  DATA: wa_zycit006 LIKE /pws/zycit006.

 

  PERFORM clear_date_batch.

  PERFORM get_parameters_f_51_variacao USING '001VM'.

 

* Mandante

  itab_zycbe033-mandt = sy-mandt.

* Código da transação

  itab_zycbe033-tcode = 'F-51'.

* Nome da Tabela de Fatura

  itab_zycbe033-tabela = '/PWS/ZYCIT044'.

* Campo chave da tabela de Financ.

  itab_zycbe033-cpochv = /pws/zycie085-nrseqdi.

* Data do documento e data valor de acordo com param. geral

 

 

  itab_zycbe033-bldat   = sy-datlo.

  itab_zycbe033-d_valut = sy-datlo.

* Data do lançamento

  itab_zycbe033-budat   = sy-datlo.

 

* Texto cabeçalho

  itab_zycbe033-bktxt = wa_zycbt007-bktxt.

 

* Conta do razão para a busca das partidas

  itab_zycbe033-d_newko   = itab_matuse_aux2-hkont.

 

* Tipo de Conta

  itab_zycbe033-agkoa    = 'S'. "contas do razão

 

 

* Cabeçalho - Textos

  CLEAR: v_xblnr, v_zuonr, v_sgtxt, v_bktxt.

 

  CALL FUNCTION '/PWS/ZYCI_TEXTOS_CONTABEIS'

    EXPORTING

      v_nrseq         = itab_zycit100-nrseq

      v_nrfat         = /pws/zycie006-nrfat

      v_ebelp         = /pws/zycie003-ebelp

      v_ebeln         = /pws/zycie003-ebeln

      v_codeven       = v_evento                            "'002D'

    IMPORTING

      v_xblnr         = v_xblnr

      v_zuonr         = v_zuonr

      v_sgtxt         = v_sgtxt

      v_bktxt         = v_bktxt

            .

 

  itab_zycbe033-d_zuonr = itab_zycbe033-c_zuonr = v_zuonr.

  itab_zycbe033-d_sgtxt = itab_zycbe033-c_sgtxt = v_sgtxt.

  itab_zycbe033-xblnr = v_xblnr.

  itab_zycbe033-bktxt = v_bktxt.

 

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

  SELECT SINGLE * FROM /pws/zycit003 INTO /pws/zycie003

         WHERE nrseq = itab_zycit100-nrseq

           AND ebeln = itab_zycit100-ebeln

           AND ebelp = itab_zycit100-ebelp.

  itab_zycbe033-d_gsber = /pws/zycie003-gsber.

  itab_zycbe033-c_gsber = /pws/zycie003-gsber.

* << Fim da inclusão

  PERFORM verify_null_field USING /pws/zycie085-bukrs

                                  'BUKRS'

                                  text-157.

  itab_zycbe033-bukrs  = /pws/zycie085-bukrs.

  PERFORM verify_null_field USING /pws/zycie085-bukrs

                                  'BUKRS'

                                  text-157.

  itab_zycbe033-bukrs  = /pws/zycie085-bukrs.

 

* Moeda

  PERFORM verify_null_field USING wa_zycbt007-waersb

                                  'WAERS'

                                  text-158.

  itab_zycbe033-waers  = wa_zycbt007-waersb.

 

* Tipo de documento

  PERFORM verify_null_field USING wa_zycbt011-blart

                                  'BLART'

                                  text-159.

  itab_zycbe033-blart  = wa_zycbt011-blart.

 

...

 

...

 

FORM executa_fb08 USING  p_belnr

                         p_budat.

 

  DATA:  v_belnr_ant LIKE /pws/zycie085-belnr_0.

 

  IF NOT p_budat IS INITIAL.

    v_budat = p_budat.

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

  ELSE.

    v_budat = /pws/zycie085-dtreg.

* << Fim da inclusão

  ENDIF.

 

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

  IF v_budat IS INITIAL.

    v_budat = sy-datum.

  ENDIF.

* << Fim da inclusão

 

  PERFORM clear_date_batch.

 

  itab_zycbe033-tcode  = 'FB08'.

  itab_zycbe033-tabela = '/PWS/ZYCIE085'.

  itab_zycbe033-cpochv = /pws/zycie100a-nrseq.

  itab_zycbe033-belnr  = p_belnr.

  itab_zycbe033-bukrs  = /pws/zycie085-bukrs.

  itab_zycbe033-bldat  = p_budat.

  itab_zycbe033-budat  = v_budat.

  itab_zycbe033-gjahs  = itab_zycbe033-bldat+0(4).

  v_belnr_ant = p_belnr.

...