CE PLUS - Nota 002673

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: DI

Data/Hora da Publicação: 12/12/2006 00:00:00

Data/Hora Última Alteração: 21/02/2011 12:46:59

Descrição da Nota: FATURA TIPO P ERRO NA DI

Sintoma

Ao criar a DI e salvar aparece a mensagem documento não contém itens válidos.

 

 

Solução

atualizado o programa para verificar se a fatura é P, para não fazer variação cambial.

 

Versões Tratadas

6.0

Informações Complementares

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

Nota Número 02673 Data: 12/12/2006 Hora: 14:56:08

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

 

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

Nota Número              : 02673

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 6.0

Pacote                   : 00025

Agrupamento              : 00144

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

FATURA TIPO P ERRO NA DI

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

Palavras Chave:

F05 - DI - FATURA P - CONTABILIZAÇÃO  DA VARIAÇÃO

 

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

Objetos da nota:

REPS /PWS/MZYCI023F03

 

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

Modificações efetuadas em REPS /PWS/MZYCI023F03

 

...

  SELECT SINGLE * FROM /pws/zycbt011 INTO wa_zycbt011

                WHERE codeven = v_codeven

                  AND codmod  = 'D'.

  SELECT * FROM /pws/zycbt012 INTO TABLE itab_zycbt012

                WHERE codeven = v_codeven

                  AND codmod  = 'D'.

  v_evento = v_codeven.

ENDFORM.

FORM lanctos_variacao.

  DATA: v_soma LIKE /pws/zycit085-vlfob.

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

  DATA: v_variadec LIKE /pws/zycit085-vlfre.

* << Fim da inclusão

  READ TABLE itab_zycit100 INDEX 1.

  SELECT SINGLE * FROM /pws/zycit001 WHERE nrseq = itab_zycit100-nrseq.

  LOOP AT itab_bsis_aux WHERE hkont = itab_matuse_aux2-hkont.

    READ TABLE itab_di WITH KEY hkont = itab_matuse_aux2-hkont.

    IF itab_bsis_aux-tpfatura = '01'.

      PERFORM get_parameters_f_51_variacao USING '001VM'.

      READ TABLE itab_zycbt012 WITH KEY

                        codaux = itab_matuse_aux2-j_1bmatuse.

      IF /pws/zycit031-inco1_ci = 'FOB'.

        vl_variacao = itab_di-vlfob - itab_bsis_aux-dmbtr.

        IF itab_zycbe033-tcode = 'F-51'

           AND NOT v_belnr IS INITIAL.

          PERFORM: move_lanctos USING itab_di-vlfob,

                   calcula_diferenca.

        ELSEIF itab_zycbe033-tcode = 'F-51'.

          PERFORM move_lanctos USING itab_di-vlfob.

        ELSEIF itab_zycbe033-tcode = 'F-05'.

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

          v_variadec = vl_variacao.

          IF NOT v_variadec IS INITIAL.

            CLEAR v_variadec.

* << Fim da inclusão

          PERFORM move_lanctos_f05.

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

          ELSE.

            v_erro_f05 = 'S'.

* << Fim da inclusão

        ENDIF.

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

        ENDIF.

* << Fim da inclusão

      ELSEIF /pws/zycit031-inco1_ci = 'C&F'.

        vl_variacao = itab_di-vlfob + itab_di-vlfre + itab_di-vlfren -

                      itab_bsis_aux-dmbtr.

        v_soma = itab_di-vlfob + itab_di-vlfre + itab_di-vlfren .

        IF itab_zycbe033-tcode = 'F-51'

           AND NOT v_belnr IS INITIAL.

          PERFORM: move_lanctos USING v_soma,

                   calcula_diferenca.

        ELSEIF itab_zycbe033-tcode = 'F-51'.

          PERFORM move_lanctos USING v_soma.

        ELSEIF itab_zycbe033-tcode = 'F-05'.

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

          v_variadec = vl_variacao.

          IF NOT v_variadec IS INITIAL.

            CLEAR v_variadec.

* << Fim da inclusão

          PERFORM move_lanctos_f05.

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

          ELSE.

            v_erro_f05 = 'S'.

          ENDIF.

* << Fim da inclusão

        ENDIF.

      ELSEIF /pws/zycit031-inco1_ci = 'CIF'.

        vl_variacao = itab_di-vlfob + itab_di-vlfre + itab_di-vlfren +

                      itab_di-vlseg - itab_bsis_aux-dmbtr.

        IF itab_zycbe033-tcode = 'F-51'

           AND NOT v_belnr IS INITIAL.

          PERFORM: move_lanctos USING itab_di-vldi,

                   calcula_diferenca.

        ELSEIF itab_zycbe033-tcode = 'F-51'.

          PERFORM move_lanctos USING itab_di-vldi.

        ELSEIF itab_zycbe033-tcode = 'F-05'.

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

          v_variadec = vl_variacao.

          IF NOT v_variadec IS INITIAL.

            CLEAR v_variadec.

* << Fim da inclusão

          PERFORM move_lanctos_f05.

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

          ELSE.

            v_erro_f05 = 'S'.

          ENDIF.

* << Fim da inclusão

        ENDIF.

      ENDIF.

    ELSEIF itab_bsis_aux-tpfatura = '02'

      AND NOT itab_di-vlfre IS INITIAL.

      IF NOT /pws/zycit000-provfre IS INITIAL.

        CONTINUE.

      ENDIF.

      PERFORM get_parameters_f_51_variacao USING '001VF'.

      READ TABLE itab_zycbt012 WITH KEY

                        codaux = itab_matuse_aux2-j_1bmatuse.

      vl_variacao = itab_di-vlfre - itab_bsis_aux-dmbtr.

      IF itab_zycbe033-tcode = 'F-51'.

        PERFORM move_lanctos USING itab_di-vlfre.

      ELSEIF itab_zycbe033-tcode = 'F-05'.

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

        v_variadec = vl_variacao.

        IF NOT v_variadec IS INITIAL.

          CLEAR v_variadec.

* << Fim da inclusão

        PERFORM move_lanctos_f05.

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

        ELSE.

          v_erro_f05 = 'S'.

* << Fim da inclusão

      ENDIF.

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

      ENDIF.

* << Fim da inclusão

    ELSEIF itab_bsis_aux-tpfatura = '03'

...

 

...

      IF NOT /pws/zycit000-provseg IS INITIAL.

        CONTINUE.

      ENDIF.

      PERFORM get_parameters_f_51_variacao USING '001VS'.

      READ TABLE itab_zycbt012 WITH KEY

                        codaux = itab_matuse_aux2-j_1bmatuse.

      vl_variacao = itab_di-vlseg - itab_bsis_aux-dmbtr.

      IF itab_zycbe033-tcode = 'F-51'.

        PERFORM move_lanctos USING itab_di-vlseg.

      ELSEIF itab_zycbe033-tcode = 'F-05'.

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

        v_variadec = vl_variacao.

        IF NOT v_variadec IS INITIAL.

          CLEAR v_variadec.

* << Fim da inclusão

        PERFORM move_lanctos_f05.

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

        ELSE.

          v_erro_f05 = 'S'.

        ENDIF.

* << Fim da inclusão

      ENDIF.

    ENDIF.

  ENDLOOP.

ENDFORM.

...