CE PLUS - Nota 010699

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: DI

Data/Hora da Publicação: 29/10/2010 00:00:00

Data/Hora Última Alteração: 29/10/2010 13:29:27

Descrição da Nota: TRATAMENTO DOS CAMPOS NA ANA

Sintoma

Quando entramos na transação de Modifica/Alterar ANA alguns campos deveriam vir fechados.

 

 

Solução

Fechar/inibir alguns campos da ANA na transação de modificação.

 

Versões Tratadas

8.0

Informações Complementares

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

Nota Número 10699 Data: 29/10/2010 Hora: 10:11:20

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

 

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

Nota Número              : 10699

Categoria                : Melhoria

Prioridade               : Média

Versão PW.CE             : 8.0

Pacote                   : 00005

Agrupamento              : 00045

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

Texto Rápido:

TRATAMENTO DOS CAMPOS NA ANA

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

Palavras Chave:

ANA - TRATAMENTE DE CAMPOS - FECHAR E ABRIR CAMPOS -

CONSISTÊNCIAS DE CAMPOS - INIBIR CAMPOS

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

Objetos da nota:

DYNP /PWS/SAPMZYCI059                        0100

DYNP /PWS/SAPMZYCI059                        0132

DYNP /PWS/SAPMZYCI059                        0411

DYNP /PWS/SAPMZYCI059                        0433

REPS /PWS/MZYCI059I01

REPS /PWS/MZYCI059O01

REPS /PWS/MZYCI059X01

 

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

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

 

MODIFICAR LÓGICA DE PROCESSAMENTO TELA 0100

 

process before output.

module: init_editor_di_compl,

        load_data,

* >> Início da inclusão:

        verif_nf,

* << Fim da inclusão

        status_0100,

        status_custom_0100,

        propoe_banco,

        set_screen.

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',

...

 

 

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

Modificações efetuadas em DYNP /PWS/SAPMZYCI059                        0132

 

MODIFICAR LÓGICA DE PROCESSAMENTO TELA 0132

 

process before output.

* >> Início da exclusão:

module: set_screen_padrao,

* << Fim da exclusão

 

* >> Início da inclusão:

  MODULE: verif_nf,

          set_screen_padrao,

* << Fim da inclusão

        data_clean_seg   .

 

process after input.

field: /pws/zycie085-waersfob module load_fbwa on request,

       /pws/zycie085-waersseg module load_sewa on request,

       /pws/zycie085-vlseg    module load_sevl on request.

chain.

field: /PWS/ZYCIE085-DTTAX module busca_taxa on chain-request.

endchain.

 

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

Modificações efetuadas em DYNP /PWS/SAPMZYCI059                        0411

 

MODIFICAR CAMPO TEXTO "/PWS/ZYCIE003-QTDEUMEST"

Grupo 1

 

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

Modificações efetuadas em REPS /PWS/MZYCI059I01

 

...

MODULE user_command_0010 INPUT.

  CASE ok_code.

    WHEN 'ENTE'.

      GET CURSOR LINE v_linha.

      IF sy-subrc EQ 0.

        v_pos = tc_di-top_line + v_linha - 1.

        CLEAR itab_zycit085.

        READ TABLE itab_zycit085 INDEX v_pos.

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

        IF NOT itab_zycit085-dtreg IS INITIAL AND

         ( sy-tcode = '/PWS/ZYCI059_A' OR sy-tcode = '/PWS/ZYCI059_G' ).

          MESSAGE i015 WITH text-026.

        ELSE.

* << Fim da exclusão

          MOVE itab_zycit085 TO /pws/zycie085.

          CLEAR: v_pos, v_linha, ok_code.

          PERFORM loading_all.

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

        ENDIF.

* << Fim da exclusão

      ENDIF.

    WHEN 'BACK'.

      CLEAR: /pws/zycie085, ok_code.

      LEAVE TO SCREEN '0001' .

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI059O01

 

...

        IF sy-tcode = '/PWS/ZYCI059_E'.

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

            screen-input = 0.

            MODIFY SCREEN.

          ELSEIF screen-name = '/PWS/ZYCIE085-ADUANA'.

            screen-input = 0.

            MODIFY SCREEN.

          ELSEIF screen-name = '/PWS/ZYCIE085-DTENVCAMBIO'.

            screen-input = 0.

            MODIFY SCREEN.

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

          ELSEIF screen-name = '/PWS/ZYCIE085-NANA'.

            screen-input = 0.

            MODIFY SCREEN.

          ELSEIF screen-name = '/PWS/ZYCIE085-DTREG'.

            screen-input = 0.

            MODIFY SCREEN.

          ELSEIF screen-name = '/PWS/ZYCIE085-RECAL'.

            screen-input = 0.

            MODIFY SCREEN.

          ENDIF.

* << Fim da inclusão

          ENDIF.

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

        IF sy-tcode = '/PWS/ZYCI059_A' AND v_nf043 EQ 'S'.

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

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

            screen-input = 0.

            MODIFY SCREEN.

* << Fim da inclusão

        ENDIF.

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

        ENDIF.

* << Fim da inclusão

        IF screen-group1 EQ 'AC'.

          screen-input = '0'.

          IF v_acto EQ 'A'.

            IF sy-dynnr EQ '0110'.

              IF ( screen-name EQ '/PWS/ZYCIE085-NRBL'

                   AND v_calci = 'S' )                  OR

                 ( screen-name EQ '/PWS/ZYCIE093-MEIOTRANSP' AND

                   NOT /pws/zycie085-nrbl IS INITIAL ).

              ELSEIF ( screen-name EQ '/PWS/ZYCIE085-DTREG'    AND

                       NOT /pws/zycie085-nana   IS INITIAL ).

...

 

...

MODULE set_screen_lines OUTPUT.

  LOOP AT SCREEN.

    IF screen-group1 EQ 'AC'.

      screen-input = '0'.

      IF v_acto EQ 'A'.

        screen-input = '1'.

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

      ENDIF.

      MODIFY SCREEN.

* << Fim da inclusão

      ENDIF.

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

    IF v_nf043 EQ 'S'.

      screen-input = '0'.

* << Fim da inclusão

      MODIFY SCREEN.

    ENDIF.

  ENDLOOP.

ENDMODULE.

...

 

...

        MODIFY SCREEN.

      ENDIF.

      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.

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

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

        IF v_nf041 EQ 'S'.

* << Fim da exclusão

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

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

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

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

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

        IF v_nf043 EQ 'S'.

* << Fim da inclusão

          screen-input = 0.

          MODIFY SCREEN.

        ENDIF.

      ENDIF.

    ENDIF.

  ENDLOOP.

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

    CLEAR: s_wicreco, s_wsisco.

  ENDIF.

  IF sy-dynnr = '0141'.

...

 

...

  IF sy-dynnr = '0180'.

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

      LOOP AT SCREEN.

        screen-input = 0.

        MODIFY SCREEN.

      ENDLOOP.

    ENDIF.

  ENDIF.

  IF sy-dynnr = '0433'.

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

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

      LOOP AT tc_trib-cols INTO v_cols.

        v_cols-screen-input = 0.

        MODIFY tc_trib-cols FROM v_cols.

      ENDLOOP.

    ENDIF.

    IF v_nf043 EQ 'S'.

* << Fim da inclusão

      LOOP AT tc_trib-cols INTO v_cols.

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

        IF v_cols-screen-name = '/PWS/ZYCIE403-PERCENTUAL' OR

           v_cols-screen-name = '/PWS/ZYCIE403-VALORREC' OR

           v_cols-screen-name = '/PWS/ZYCIE403-CONDICOES' OR

           v_cols-screen-name = '/PWS/ZYCIE403-CREDITAR'.

* << Fim da inclusão

        v_cols-screen-input = 0.

        MODIFY tc_trib-cols FROM v_cols.

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

        ENDIF.

* << Fim da inclusão

      ENDLOOP.

    ENDIF.

  ENDIF.

ENDMODULE.

...

 

...

MODULE set_screen_carga OUTPUT.

  CASE sy-dynnr.

    WHEN '0132' .

      LOOP AT SCREEN.

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

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

          IF NOT itab_zycit041[] IS INITIAL.

* << Fim da exclusão

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

          IF NOT itab_zycit043[] IS INITIAL.

* << Fim da inclusão

            screen-input = 0.

            MODIFY SCREEN.

          ENDIF.

        ENDIF.

      ENDLOOP.

  ENDCASE.

ENDMODULE.

...

 

...

* >> Início da inclusão:

MODULE verif_nf OUTPUT.

  CLEAR  : itab_zycit043, itab_zycit042, v_nf043.

  REFRESH: itab_zycit043, itab_zycit042.

  READ TABLE itab_zycit001 INDEX 1.

  IF sy-subrc EQ 0.

    SELECT * FROM /pws/zycit042 INTO TABLE itab_zycit042

      WHERE nrseq EQ itab_zycit001-nrseq.

    IF NOT itab_zycit042[] IS INITIAL.

      SELECT * FROM /pws/zycit043 INTO TABLE itab_zycit043

        FOR ALL ENTRIES IN itab_zycit042

        WHERE nrseq    EQ itab_zycit042-nrseqnf

          AND nfglobal EQ itab_zycit042-nfglobal.

    ENDIF.

    LOOP AT itab_zycit043.

      IF itab_zycit043-cancel     EQ 'X' OR

         itab_zycit043-mblnr_mb01 EQ '          '.

        DELETE itab_zycit043.

      ENDIF.

    ENDLOOP.

    IF NOT itab_zycit043[] IS INITIAL.

      v_nf043 = 'S'.

    ENDIF.

  ENDIF.

ENDMODULE.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYCI059X01

 

...

      itab_zycit013     LIKE /pws/zycie013   OCCURS 0 WITH HEADER LINE,

      itab_zycit014     LIKE /pws/zycie014   OCCURS 0 WITH HEADER LINE,

      itab_zycit042     LIKE /pws/zycit042   OCCURS 0 WITH HEADER LINE,

      itab_zycit019     LIKE /pws/zycit019   OCCURS 0 WITH HEADER LINE,

      itab_zycit029     LIKE /pws/zycit029   OCCURS 0 WITH HEADER LINE,

      itab_zycit020     LIKE /pws/zycit020   OCCURS 0 WITH HEADER LINE,

      itab_zycit031     LIKE /pws/zycit031   OCCURS 0 WITH HEADER LINE,

      itab_zycit036     LIKE /pws/zycit036   OCCURS 0 WITH HEADER LINE,

      itab_zycit039     LIKE /pws/zycit039   OCCURS 0 WITH HEADER LINE,

      itab_zycit041     LIKE /pws/zycit041   OCCURS 0 WITH HEADER LINE,

* >> Início da inclusão:

      itab_zycit043     LIKE /pws/zycit043   OCCURS 0 WITH HEADER LINE,

* << Fim da inclusão

      itab_zycit049di   LIKE /pws/zycit049   OCCURS 0 WITH HEADER LINE,

      itab_zycit049di2  LIKE /pws/zycit049   OCCURS 0 WITH HEADER LINE,

      itab_zycit055     LIKE /pws/zycit055   OCCURS 0 WITH HEADER LINE,

      itab_zycit078     LIKE /pws/zycie078   OCCURS 0 WITH HEADER LINE,

      itab_zycit079     LIKE /pws/zycie079   OCCURS 0 WITH HEADER LINE,

      itab_zycit085     LIKE /pws/zycie085   OCCURS 0 WITH HEADER LINE,

      itab_zycit085a    LIKE /pws/zycit085   OCCURS 0 WITH HEADER LINE,

      itab_zycit086     LIKE /pws/zycie086   OCCURS 0 WITH HEADER LINE,

      itab_zycit086a    LIKE /pws/zycie086   OCCURS 0 WITH HEADER LINE,

      itab_zycit087     LIKE /pws/zycie087   OCCURS 0 WITH HEADER LINE,

...

 

...

  v_custo          LIKE t_icms                ,

  v_frete          LIKE t_icms                ,

  v_medida         LIKE /pws/zycie003-meinsest,

  v_tabix          LIKE sy-tabix              ,

  vsaldo           LIKE /pws/zycie263-qtd_iten,

  v_espec          TYPE c                     ,

  v_msg            TYPE c                     ,

  v_propoe_sisc    TYPE c                     ,

  v_per_seg        LIKE /pws/zycie085-per_seg ,

  v_nf041(1)       TYPE c                     ,

* >> Início da inclusão:

  v_nf043(1)       TYPE c                     ,

* << Fim da inclusão

  v_modo           TYPE c                     ,

  v_doc            LIKE /pws/zycit085-belnr_0 ,

  v_taxa           LIKE /pws/zycie085-ukursfob,

  v_resp           TYPE c,

  v_visualiza      TYPE c,

  v_report         TYPE c,

  v_txini          TYPE c,

  v_msgfre         TYPE c,

  v_region LIKE adrc-region,

  v_canal LIKE /pws/zycit397-canal,

...