CE PLUS - Nota 005609

Módulo: DRAWBACK

Funcionalidade: Ato Concessório

Data/Hora da Publicação: 11/01/2008 00:00:00

Data/Hora Última Alteração: 17/02/2011 15:18:12

Descrição da Nota: AJUSTE NA TRANSFERENCIA DE SALDOS.

Sintoma

O programa não está calculando correntamente o saldo das DI's no momento da transferencia de saldos.

 

 

Solução

Ajustado o calculo dos saldos.

 

Versões Tratadas

7.0


Pré-Requisitos

Produto:

Nota

Descrição

CONTROLE DE SALDO NOS APONTAMENTOS DO ATO.

TRANSFERÊNCIA POR QUANTIDADE E PORCENTAGEM NO ATO CONCESSÓRIO

Informações Complementares

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

Nota Número 05609 Data: 11/01/2008 Hora: 09:09:56

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

 

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

Nota Número              : 05609

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 7.0

Pacote                   : 00004

Agrupamento              : 00029

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

Referência às notas relacionadas:

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

 

03360  - 00001 - 6.0    - 00001  - CONTROLE DE SALDO NOS APONTAMENTOS DO ATO.

05015  - 00002 - 7.0    - 00003  - TRANSFERÊNCIA POR QUANTIDADE E PORCENTAGEM NO ATO CONCESSÓRIO

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

AJUSTE NA TRANSFERENCIA DE SALDOS.

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

Palavras Chave:

TRANSFERENCIA IMPORTAÇÕES DI ATO CONCESSÓRIO

 

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

Objetos da nota:

DYNP /PWS/SAPMZYCI040                        0239

REPS /PWS/MZYCI040I01

 

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

Modificações efetuadas em DYNP /PWS/SAPMZYCI040                        0239

 

PROCESS AFTER INPUT.

 

  CHAIN.

    FIELD: /pws/zycie245-transf

           MODULE modifica_transf2 ON CHAIN-REQUEST.

 

  ENDCHAIN.

 

 

  LOOP AT itab_zycit279_ap_aux.

 

    CHAIN.

      FIELD: v_mark2

             MODULE modifica_transf ON CHAIN-REQUEST.

    ENDCHAIN.

    CHAIN.

      FIELD: /pws/zycie279-nrseqd_d

             MODULE modifica_ato_dest ON CHAIN-REQUEST.

    ENDCHAIN.

 

    CHAIN.

      FIELD: /pws/zycie279-qtd_transf

             MODULE modifica_transf3 ON CHAIN-REQUEST.

    ENDCHAIN.

 

  ENDLOOP.

* >> Início da inclusão: Tela 0239

  MODULE modifica_transf_tot.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYCI040I01

 

...

  itab_resumo_ap-qtd_per =

  /pws/zycie279-qtd_perda = /pws/zycie279-qtd_perda - v_perda.

  itab_resumo_ap-perda = /pws/zycie279-perda.

  MODIFY itab_resumo_ap INDEX tc_perda-current_line.

ENDMODULE.

MODULE modifica_transf INPUT.

  DATA wa_transf LIKE /pws/zycie279.

  READ TABLE itab_zycit279_ap_aux INDEX tc_transf-current_line.

  wa_transf = itab_zycit279_ap_aux.

  IF v_mark2 IS INITIAL.

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

    v_saldo_transf = v_saldo_transf + /pws/zycie279-qtd_transf.

* << Fim da exclusão

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

    v_saldo_transf = v_saldo_transf + itab_zycit279_ap_aux-qtd_transf.

* << Fim da inclusão

    CLEAR: /pws/zycie279-qtd_transf, /pws/zycie279-nrseqd_d.

  ELSE.

    IF NOT /pws/zycie245-transf IS INITIAL.

      IF v_saldo_transf > 0 .

        IF /pws/zycie279-slqtde > v_saldo_transf.

          /pws/zycie279-qtd_transf = v_saldo_transf.

        ELSE.

          /pws/zycie279-qtd_transf = /pws/zycie279-slqtde.

        ENDIF.

        v_saldo_transf = v_saldo_transf - /pws/zycie279-qtd_transf.

...

 

...

  DELETE itab_zycit250 WHERE codagrup = /pws/zycie244-codagrup.

  DELETE itab_centros2 WHERE werks    = /pws/zycie244-werks.

ENDMODULE.

MODULE preenche_it_res_427 INPUT.

ENDMODULE.

MODULE modifica_transf3 INPUT.

  READ TABLE itab_zycit279_ap_aux INDEX tc_transf-current_line.

  IF /pws/zycie279-qtd_transf > /pws/zycie279-slqtde.

    MESSAGE e015 WITH text-268 text-269.

  ENDIF.

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

  v_saldo_transf =

    /pws/zycie245-qtd_transf = /pws/zycie279-qtd_transf.

* << Fim da exclusão

  CLEAR /pws/zycie245-transf.

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

  itab_zycit245-qtd_transf = /pws/zycie245-qtd_transf.

  itab_zycit245-transf = /pws/zycie245-transf.

  MODIFY itab_zycit245 TRANSPORTING qtd_transf transf

        WHERE nritem EQ /pws/zycie245-nritem.

* << Fim da exclusão

  itab_zycit279_ap_aux-transf = itab_zycit279_ap-transf =

                            /pws/zycie245-transf.

  itab_zycit279_ap_aux-qtd_transf = itab_zycit279_ap-qtd_transf =

...

 

...

      IF v_nratoc NE  /pws/zycie244-nratoc.

        MESSAGE s015 WITH text-323.

        CLEAR: v_nratoc.

      ENDIF.

      LEAVE TO SCREEN 0.

    WHEN 'EXIT'.

      CLEAR: v_nratoc.

      LEAVE TO SCREEN 0.

  ENDCASE.

ENDMODULE.

* >> Início da inclusão:

MODULE modifica_transf_tot INPUT.

  IF /pws/zycie245-transf IS INITIAL.

    CLEAR /pws/zycie245-qtd_transf.

    LOOP AT itab_zycit279_ap_aux.

      /pws/zycie245-qtd_transf = /pws/zycie245-qtd_transf +

                                 itab_zycit279_ap_aux-qtd_transf.

      itab_zycit245-qtd_transf = /pws/zycie245-qtd_transf.

      itab_zycit245-transf = /pws/zycie245-transf.

    ENDLOOP.

    MODIFY itab_zycit245 TRANSPORTING qtd_transf transf

          WHERE nritem EQ /pws/zycie245-nritem.

  ENDIF.

ENDMODULE.

* << Fim da inclusão