CE PLUS - Nota 002592

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: DI

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

Data/Hora Última Alteração: 20/06/2011 13:44:28

Descrição da Nota: AO ALTERAR VALOR DA DI APÓS CRIAÇÃO DE NF DÁ DIFERENÇA

Sintoma

Há a possibilidade de ter uma DI criada no processo e após fazer a NF alterar seus dados,

modificando valores já contabilizados na nota.

 

 

Solução

Fechar campos que possam alterar o valor da DI depois da criação da NF.

 

Versões Tratadas

6.0


Pré-Requisitos

Produto:

Nota

Descrição

TRATAMENTO PARA SUSPENSÃO DE ICMS NA DI POR REGIÃO

Informações Complementares

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

Nota Número 02592 Data: 05/12/2006 Hora: 14:16:20

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

 

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

Nota Número              : 02592

Categoria                : Melhoria

Prioridade               : Alta

Versão PW.CE             : 6.0

Pacote                   : 00025

Agrupamento              : 00142

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

Referência às notas relacionadas:

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

 

02325  - 00001 - 6.0    - 00025  - TRATAMENTO PARA SUSPENSÃO DE ICMS NA DI POR REGIÃO

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

AO ALTERAR VALOR DA DI APÓS CRIAÇÃO DE NF DÁ DIFERENÇA

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

Palavras Chave:

DIFERENÇA - DI - VALORES DI - ALTERAÇÃO DADOS DI

 

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

Objetos da nota:

DYNP /PWS/SAPMZYCI023                        0100

REPS /PWS/MZYCI023F04

REPS /PWS/MZYCI023O01

 

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

Modificações efetuadas em DYNP /PWS/SAPMZYCI023                        0100

 

 

 

process before output.

module: init_editor_di_compl,

        load_data,

*<<Inicio inclusão

        verif_nf,

*<<Fim inclusão

        propoe_banco,

        set_screen,

        exit_tela.

 

call subscreen:     ss_bas  including syst-cprog '0110',

                    ss_tra  including syst-cprog '0120',

                    ss_car  including syst-cprog '0130',

                    ss_pag  including syst-cprog '0141',

                    ss_pg2  including syst-cprog '0142',

                    ss_ite  including syst-cprog '0150',

                    ss_des  including syst-cprog '0160',

                    ss_com  including syst-cprog '0180',

                    ss_cont including syst-cprog '0450'.

process after input.

 

 field /PWS/ZYCIE085-BUKRS module authority_empresa.

 

call subscreen:     ss_bas ,

                    ss_tra ,

                    ss_car ,

                    ss_pag ,

                    ss_pg2 ,

                    ss_ite ,

                    ss_des ,

                    ss_com ,

                    ss_cont.

chain.

     field /pws/zycie085-bukrs.

     field /pws/zycie085-j_1bbranch.

     module load_cpnj on chain-request.

endchain.

field: /pws/zycie085-canal  module load_cana on request.

module carrega_dados.

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI023F04

 

...

                   /pws/zycie003-ii_tipo,

                   /pws/zycie003-ii_orgemiss,

                   /pws/zycie003-ii_numero,

                   /pws/zycie003-ii_anoemiss.

            screen-input = '0'.

          ENDIF.

        ENDIF.

      ENDIF.

      MODIFY SCREEN.

    ENDIF.

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

    if v_nf041 eq 'S'.

      screen-input = '0'.

      modify screen.

    endif.

* << Fim da inclusão

  ENDLOOP.

ENDFORM.

FORM set_screen_0432.

  IF '26' CA /pws/zycie100a-codregtri.

    CLEAR: /pws/zycie100a-codregtriipi, t_regde2,

           /pws/zycie100a-notatipi,

           /pws/zycie100a-tribipi, /pws/zycie100a-reduzidaipi,

           /pws/zycie100a-unit_valor,

           /pws/zycie100a-unit_meins,

           /pws/zycie100a-unit_qtde,

...

 

...

        ELSE.

          screen-input     = '0'.

        ENDIF.

        MODIFY SCREEN.

      ENDIF.

      IF screen-group3 EQ 'IPI'.

        screen-invisible = '1'.

        MODIFY SCREEN.

      ENDIF.

    ENDIF.

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

    IF sy-tcode EQ '/PWS/ZYCI023_E'.

* << Fim da exclusão

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

    IF sy-tcode EQ '/PWS/ZYCI023_E'

      or v_nf041 eq 'S'.

* << Fim da inclusão

      screen-input = '0'.

      MODIFY SCREEN.

    ENDIF.

  ENDLOOP.

ENDFORM.

FORM set_screen_0120.

  MOVE /pws/zycie093-meiotransp TO v_t.

  LOOP AT SCREEN.

    screen-invisible = '1'.

    screen-input     = '0'.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI023O01

 

...

ENDMODULE.

MODULE set_screen_lines OUTPUT.

  LOOP AT SCREEN.

    IF screen-group1 EQ 'AC'.

      screen-input = '0'.

      IF v_acto EQ 'A'.

        screen-input = '1'.

      ENDIF.

      MODIFY SCREEN.

    ENDIF.

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

    IF v_nf041 EQ 'S'.

      screen-input = '0'.

      MODIFY SCREEN.

    ENDIF.

* << Fim da inclusão

  ENDLOOP.

ENDMODULE.

MODULE fill_struct_itb OUTPUT.

  a_ip = tc_aite-current_line.

  MOVE itab_itb TO wa_itb.

  a_itval = wa_itb-vlreal_aux2 * wa_itb-qtd_iten.

  IF wa_itb-item_adi_sisc IS INITIAL.

    MOVE a_ip  TO  wa_itb-item_adi_sisc.

  ENDIF.

ENDMODULE.

...

 

...

        ENDIF.

        IF screen-group4 EQ 'REQ'.

          screen-required = '1'.

        ENDIF.

      ENDIF.

      MODIFY SCREEN.

    ENDIF.

    IF screen-name EQ '/PWS/ZYCIE003-ADVALICMS'.

      /pws/zycie003-advalicms = itab_it-advalicms.

      screen-input = '1'.

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

      IF sy-tcode EQ '/PWS/ZYCI023_E'.

* << Fim da exclusão

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

      IF sy-tcode EQ '/PWS/ZYCI023_E'

        OR v_nf041 EQ 'S'.

* << Fim da inclusão

        screen-input = '0'.

      ENDIF.

      MODIFY SCREEN.

    ENDIF.

    IF sy-dynnr = '0132' .

      IF /pws/zycie093-meiotransp EQ 'PS'.

        IF screen-name = '/PWS/ZYCIE085-DTTAX' OR

           screen-name = '/PWS/ZYCIE085-VLFRE' OR

           screen-name = '/PWS/ZYCIE085-WAERSSEG' OR

           screen-name = '/PWS/ZYCIE085-VLSEG'.

          screen-input = 1.

        ENDIF.

      ENDIF.

      IF screen-name = '/PWS/ZYCIE085-DTTAX'.

        IF v_nf041 EQ 'S'.

          screen-input = 0.

          MODIFY SCREEN.

        ENDIF.

      ENDIF.

    ENDIF.

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

    IF sy-tcode EQ '/PWS/ZYCI023_E'.

* << Fim da exclusão

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

    IF sy-tcode EQ '/PWS/ZYCI023_E'

      OR v_nf041 EQ 'S'.

* << Fim da inclusão

      screen-input = 0.

      MODIFY SCREEN.

    ENDIF.

  ENDLOOP.

  IF sy-dynnr = '0133' AND /pws/zycie093-meiotransp EQ 'PS'.

    CLEAR: s_wicreco, s_wsisco.

  ENDIF.

  IF sy-dynnr = '0141'.

    IF itab_zycit001-meioemba EQ 'PS'.

      LOOP AT SCREEN.

...

 

...

      ENDIF.

      IF /pws/zycie100a-codregtripiscofi EQ 2 OR

         /pws/zycie100a-codregtripiscofi EQ 6.

        IF screen-name EQ '/PWS/ZYCIE100A-ALIQPIS' OR

           screen-name EQ '/PWS/ZYCIE100A-ALIQCOF' OR

           screen-name EQ '/PWS/ZYCIE100A-BASREDPIS' OR

           screen-name EQ '/PWS/ZYCIE100A-BASREDCOF'.

          screen-input = 0.

        ENDIF.

      ENDIF.

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

      IF sy-tcode EQ '/PWS/ZYCI023_E'.

* << Fim da exclusão

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

      IF sy-tcode EQ '/PWS/ZYCI023_E'

      OR v_nf041 EQ 'S'.

* << Fim da inclusão

        screen-input = 0.

      ENDIF.

      MODIFY SCREEN.

    ENDLOOP.

  ENDIF.

ENDMODULE.

MODULE fill_struct_itc OUTPUT.

  wa_itb-nrseq = itab_itc-nrseq.

  wa_itb-ebeln = itab_itc-ebeln.

  wa_itb-ebelp = itab_itc-ebelp.

...