CE PLUS - Nota 004099

Módulo: DOC. EXPORTAÇÃO

Funcionalidade: Comissão de Agente

Data/Hora da Publicação: 04/07/2007 00:00:00

Data/Hora Última Alteração: 04/03/2010 10:55:46

Descrição da Nota: REMOÇÃO DE DUPLICAÇÃO DE DADOS NAS ABAS "AGENTE" E "DIFERENÇA"

Sintoma

 

Duplicação de registros nas abas "agente" e "diferença" na comissão de agente.

 

Solução

 

Remoção de registros inválidos na exclusão das comissões.

Versões Tratadas

7.0

Informações Complementares

 

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

Nota Número 04099 Data: 04/07/2007 Hora: 10:11:57

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

 

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

Nota Número              : 04099

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 7.0

Pacote                   : 00002

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

Texto Rápido:

REMOÇÃO DE DUPLICAÇÃO DE DADOS NAS ABAS "AGENTE" E "DIFERENÇA"

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

Palavras Chave:

DUPLICAÇÃO ABA AGENTE DIFERENÇA

 

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

Objetos da nota:

REPS /PWS/MZYCE017F01

 

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

Modificações efetuadas em REPS /PWS/MZYCE017F01

 

...

  ENDIF.

ENDFORM.

FORM atualiza_parvw.

  SELECT SINGLE txtdesc FROM /pws/zycbt037

          INTO (/pws/zycbt037-txtdesc)

          WHERE parvw = /pws/zycee001-parvw.

  v_s_parvw = /pws/zycbt037-txtdesc.

ENDFORM.

FORM fill_date_f02.

  DATA:    v_datavalor  LIKE sy-datlo,

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

           v_retorno(2) TYPE c.

* << Fim da exclusão

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

           v_retorno(2) TYPE c,

           v_dtvencto   TYPE /pws/zycet010-dtvencto.

* << Fim da inclusão

  PERFORM get_parameters_f02.

  itab_zycee005-mandt   = sy-mandt.

  itab_zycee005-tcode   = 'F-02'.

  itab_zycee005-tabela  = '/PWS/ZYCET010'.

  itab_zycee005-cpochv  = /pws/zycee001-nrseq.

  READ TABLE itab_zycet001 WITH KEY nrseq = /pws/zycee001-nrseq.

...

 

...

  IF sy-subrc = 0.

    IF v_retorno = '01'.

       itab_zycee005-stgrd = '01'.

    ELSE.

       itab_zycee005-stgrd = '02'.

       itab_zycee005-budat = sy-datlo.

    ENDIF.

  ENDIF.

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

  MOVE: itab_zycee005-budat TO itab_zycet010-dtlanc,

        itab_zycee005-budat TO itab_zycet010-dtvencto.

* << Fim da exclusão

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

  MOVE: itab_zycet010-dtvencto TO v_dtvencto,

        itab_zycee005-budat    TO itab_zycet010-dtlanc,

        itab_zycee005-budat    TO itab_zycet010-dtvencto.

* << Fim da inclusão

  PERFORM determina_bseg_valut USING itab_zycee005-d_valut.

  PERFORM determina_bseg_valut USING itab_zycee005-c_valut.

  PERFORM verify_null_field1 USING v_waers

                                    'WAERS'

                                    text-015.

  itab_zycee005-waers   = v_waers.

  itab_zycee005-c_gsber = wa_zycet037-gsber.

  itab_zycee005-d_gsber = wa_zycet037-gsber.

  PERFORM busca_taxa USING    itab_zycee005-budat

                     CHANGING itab_zycee005-kursf.

...

 

...

    READ TABLE itab_zycet005 WITH KEY tcode  = 'F-02'

                                      tabela = '/PWS/ZYCET010'

                                     cpochv = /pws/zycee001-nrseq

                                      tpmsg  = 'S'.

    IF sy-subrc = 0.

      itab_zycet010-nrseq   = /pws/zycee001-nrseq.

      itab_zycet010-vlcomis = v_vlcomis.

      itab_zycet010-belnr   = itab_zycet005-belnr.

      itab_zycet010-waers   = v_waers.

      itab_zycet010-status  = 'C'.

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

      DELETE itab_zycet010 WHERE dtvencto = v_dtvencto AND

                                 lifnr    = itab_zycet010-lifnr.

* << Fim da inclusão

      APPEND itab_zycet010.

      CLEAR itab_zycet010.

      MODIFY /pws/zycet001 FROM /pws/zycee001.

      MODIFY /pws/zycet010 FROM TABLE itab_zycet010.

      MODIFY /pws/zycet013 FROM TABLE itab_zycet013.

      COMMIT WORK.

      MOVE itab_zycet013[] TO itab_zycet013_ant[].

    ELSE.

      LOOP AT itab_zycet005.

        MESSAGE i001 WITH itab_zycet005-msg.

...

 

...

          it013_aux-belnr      = t_zycbt032-belnr.

          MODIFY it013_aux INDEX v_index.

          itab_zycet013-belnr  = t_zycbt032-belnr.

          itab_zycet013-dtlanc = t_dados-budat.

          itab_zycet013-status = 'C'.

          MODIFY itab_zycet013 TRANSPORTING belnr dtlanc

                                WHERE lifnr = it013_aux-lifnr

                                AND   gsber = it013_aux-gsber.

          MODIFY /pws/zycet001 FROM /pws/zycee001.

          PERFORM busca_exit USING 'COM004'.

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

          DELETE FROM /pws/zycet010  WHERE nrseq = /pws/zycee001-nrseq.

* << Fim da exclusão

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

          DELETE FROM /pws/zycet010 WHERE nrseq = /pws/zycee001-nrseq.

          MODIFY /pws/zycet010 FROM TABLE itab_zycet010.

* << Fim da inclusão

          COMMIT WORK.

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

          MODIFY /pws/zycet010 FROM TABLE itab_zycet010.

* << Fim da exclusão

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

          DELETE FROM /pws/zycet013 WHERE nrseq = /pws/zycee001-nrseq.

* << Fim da inclusão

          MODIFY /pws/zycet013 FROM TABLE itab_zycet013.

          COMMIT WORK.

          MOVE itab_zycet013[] TO itab_zycet013_ant[].

...