CE PLUS - Nota 006074

Módulo: CÂMBIO FINANCEIRO

Funcionalidade: Relatórios

Data/Hora da Publicação: 29/02/2008 00:00:00

Data/Hora Última Alteração: 03/03/2010 17:54:12

Descrição da Nota: CODE INSPECTOR , VERIFICAÇÃO AMPLIADA - CAMBIO

Sintoma

 

performance e sintaxe

 

Solução

 

code inspector e verificação ampliada

Versões Tratadas

7.0

Informações Complementares

 

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

Nota Número 06074 Data: 29/02/2008 Hora: 11:30:07

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

 

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

Nota Número              : 06074

Categoria                : Melhoria

Prioridade               : Baixa

Versão PW.CE             : 7.0

Pacote                   : 00004

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

Texto Rápido:

CODE INSPECTOR , VERIFICAÇÃO AMPLIADA - CAMBIO

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

Palavras Chave:

CODE INSPECTOR, VERIFICAÇÃO AMPLIADA - CAMBIO

 

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

Objetos da nota:

DOCU NA/PWS/ZYCIM015

DOCU NA/PWS/ZYCIM017

RELE F6DK958611 20080229 112202 PWSCB

RELE F6DK958612 20080229 112238 PWSCB

REPS /PWS/MZYGL251F01

REPS /PWS/MZYGL251I01

REPS /PWS/MZYGL251O01

REPS /PWS/MZYGL251TOP

REPS /PWS/MZYGL334F01

REPS /PWS/MZYGL334I01

REPS /PWS/MZYGL334O01

REPS /PWS/MZYGL334TOP

REPS /PWS/MZYGL339F01

REPS /PWS/MZYGL339O01

REPS /PWS/MZYGL339TOP

REPT /PWS/SAPMZYGL251

REPT /PWS/SAPMZYGL334

REPT /PWS/SAPMZYGL339

 

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

Modificações efetuadas em DOCU NA/PWS/ZYCIM015

 

 

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

Modificações efetuadas em DOCU NA/PWS/ZYCIM017

 

 

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

Modificações efetuadas em RELE F6DK958611 20080229 112202 PWSCB

 

 

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

Modificações efetuadas em RELE F6DK958612 20080229 112238 PWSCB

 

 

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

Modificações efetuadas em REPS /PWS/MZYGL251F01

 

...

        WITH KEY tabname = wa_tabela-tabela

        BINARY SEARCH.

      CHECK sy-subrc = 0.

      MOVE-CORRESPONDING wa_ddtext TO wa_tabela.

      APPEND wa_tabela TO it_tabela.

    ENDLOOP.

  ENDIF.

  p_tabela = it_tabela.

ENDFORM.

FORM down_table USING    p_contar p_ext.

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

  DATA: typ, size   TYPE i,

* << Fim da exclusão

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

  DATA: typ,

* << Fim da inclusão

        v_size_ant  TYPE i,

        len_3(3),

        wk1_max_col TYPE p VALUE 99,

        v_texto(256),

        v_texto_gen(3000),

        p_tabela TYPE REF TO data.

  FIELD-SYMBOLS: <f>.

  FIELD-SYMBOLS: <wa_tabela>.

  REFRESH: it100,

           it500,

...

 

...

          WHEN 'X'.

            v_texto = 'x'.

            WRITE <f> TO v_texto+1.

            CONDENSE v_texto NO-GAPS.

          WHEN OTHERS.

            v_texto = <f>.

        ENDCASE.

        v_texto_gen+v_size_ant = v_texto.

        v_size_ant = len_3 + v_size_ant.

      ENDDO.

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

      IF     p_contar <= 100.

* << Fim da exclusão

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

      IF     p_contar <= 100."#EC PORTABLE

* << Fim da inclusão

        MOVE v_texto_gen TO it100.

        APPEND it100.

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

      ELSEIF p_contar <= 500.

* << Fim da exclusão

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

      ELSEIF p_contar <= 500."#EC PORTABLE

* << Fim da inclusão

        MOVE v_texto_gen TO it500.

        APPEND it500.

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

      ELSEIF p_contar <= 2000.

* << Fim da exclusão

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

      ELSEIF p_contar <= 2000."#EC PORTABLE

* << Fim da inclusão

        MOVE v_texto_gen TO it2000.

        APPEND it2000.

      ENDIF.

    ENDSELECT.

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

    IF     p_contar <= 100.

* << Fim da exclusão

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

    IF     p_contar <= 100."#EC PORTABLE

* << Fim da inclusão

      PERFORM down_arquivo TABLES it100  USING p_ext .

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

    ELSEIF p_contar <= 500.

* << Fim da exclusão

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

    ELSEIF p_contar <= 500."#EC PORTABLE

* << Fim da inclusão

      PERFORM down_arquivo TABLES it500 USING p_ext  .

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

    ELSEIF p_contar <= 2000.

* << Fim da exclusão

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

    ELSEIF p_contar <= 2000."#EC PORTABLE

* << Fim da inclusão

      PERFORM down_arquivo TABLES it2000 USING p_ext .

    ELSE.

      it_table-icon = 'E'.

      it_table-msg  = text-009.

    ENDIF.

  ENDIF.

ENDFORM.

FORM down_arquivo  TABLES   p_table USING p_ext .

  DATA: v_arquivo  LIKE rlgrap-filename,

        v_filename TYPE string.

...

 

...

            dp_error_send           = 12

            dp_error_write          = 13

            unknown_dp_error        = 14

            access_denied           = 15

            dp_out_of_memory        = 16

            disk_full               = 17

            dp_timeout              = 18

            file_not_found          = 19

            dataprovider_exception  = 20

            control_flush_error     = 21

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

            OTHERS                  = 22.

* << Fim da exclusão

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

            OTHERS                  = 22."#EC *

  if sy-subrc = 0.

  else.

  endif.

* << Fim da inclusão

  it_table-icon = 'E'.

  CASE sy-subrc.

    WHEN 0.

      it_table-icon = 'S'.

      DESCRIBE TABLE p_table LINES v_line.

      WRITE v_line TO aux LEFT-JUSTIFIED.

      CONCATENATE aux text-005 dir_arq INTO it_table-msg

      SEPARATED BY space.

    WHEN 1.

      CONCATENATE dir_arq text-006 INTO it_table-msg

...

 

...

    WHEN 2.

      CONCATENATE dir_arq text-007 INTO it_table-msg

      SEPARATED BY space.

    WHEN OTHERS.

      WRITE sy-subrc TO aux LEFT-JUSTIFIED.

      CONCATENATE text-012 aux  '(' dir_arq ')' INTO it_table-msg

      SEPARATED BY space.

  ENDCASE.

ENDFORM.

FORM up_table USING    p_contar.

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

  IF     p_contar <= 100.

* << Fim da exclusão

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

  IF     p_contar <= 100."#EC PORTABLE

* << Fim da inclusão

    PERFORM up_arquivo TABLES it100 USING 'N' .

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

  ELSEIF p_contar <= 500.

* << Fim da exclusão

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

  ELSEIF p_contar <= 500."#EC PORTABLE

* << Fim da inclusão

    PERFORM up_arquivo TABLES it500 USING 'N' .

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

  ELSEIF p_contar <= 2000.

* << Fim da exclusão

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

  ELSEIF p_contar <= 2000."#EC PORTABLE

* << Fim da inclusão

    PERFORM up_arquivo TABLES it2000 USING 'N' .

  ELSE.

    it_table-icon = 'E'.

    it_table-msg  = text-009.

  ENDIF.

ENDFORM.

FORM up_arquivo TABLES p_tabela USING p_type.

  REFRESH p_tabela.

  CLEAR dir_arq.

  CONCATENATE dir it_table-tabela+5(25) '.txt' INTO dir_arq.

...

 

...

              unknown_error           = 7

              bad_data_format         = 8

              header_not_allowed      = 9

              separator_not_allowed   = 10

              header_too_long         = 11

              unknown_dp_error        = 12

              access_denied           = 13

              dp_out_of_memory        = 14

              disk_full               = 15

              dp_timeout              = 16

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

              OTHERS                  = 17.

* << Fim da exclusão

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

              OTHERS                  = 17."#EC *

  if sy-subrc = 0.

  else.

  endif.

* << Fim da inclusão

    it_table-icon = 'E'.

    CASE sy-subrc.

      WHEN 0.

        IF p_type = 'N'.

          PERFORM up_arq_normal TABLES p_tabela.

        ELSE.

        ENDIF.

      WHEN 1.

        it_table-msg = text-011.

      WHEN 2.

...

 

...

ENDFORM.

FORM comm_find.

  DATA: l1 TYPE i.

  CALL FUNCTION 'TMP_GUI_BROWSE_FOR_FOLDER'

       EXPORTING

            window_title    = text-004

            initial_folder  = dir

       IMPORTING

            selected_folder = dir

       EXCEPTIONS

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

            cntl_error      = 1.

* << Fim da exclusão

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

            cntl_error      = 0.

* << Fim da inclusão

  l1 = strlen( dir ) - 1.

  IF l1 > 0.

    IF NOT dir+l1 EQ text-032.

      CONCATENATE dir text-032 INTO dir.

    ENDIF.

  ENDIF.

ENDFORM.

FORM comm_sort USING p_type.

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

  CLEAR: v_sort, v_sort2.

* << Fim da exclusão

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

  CLEAR: v_sort.

* << Fim da inclusão

  IF ts_tabela-activetab = 'FC_PARAM'.

    LOOP AT tc_tables-cols INTO wa_cols.

      IF wa_cols-selected = 'X'.

        CASE wa_cols-index.

          WHEN 2.

            v_sort = 'TABELA'.

          WHEN 3.

            v_sort = 'DDTEXT'.

          WHEN 4.

            v_sort = 'ICON'.

...

 

...

      IF p_type = 'U'.

        SORT it_table BY (v_sort).

      ELSE.

        SORT it_table BY (v_sort) DESCENDING.

      ENDIF.

    ENDIF.

  ELSE.

  ENDIF.

ENDFORM.

FORM comm_filtro.

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

  CALL SCREEN '0200' STARTING AT 5 2.

* << Fim da exclusão

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

  CALL SCREEN '0200' STARTING AT 5 2."#EC *

* << Fim da inclusão

  IF sy-ucomm EQ 'OK'.

    MOVE: it_table_all[] TO it_table[].

    DELETE it_table WHERE perfil NE /pws/zygle205-perfil.

    LOOP AT it_table_mod WHERE updo IS initial.

      DELETE it_table WHERE modulo = it_table_mod-modulo.

    ENDLOOP.

  ENDIF.

ENDFORM.

FORM comm_mark USING p_type.

  LOOP AT it_table.

...

 

...

  IF aux = 'Z'.

    PERFORM:    down_table USING contar p_ext.

  ELSE.

    PERFORM: map_table,

             down_arq_append USING p_ext.

  ENDIF.

  CLEAR: updo.

  MODIFY it_table INDEX vidx.

ENDFORM.

FORM up_handle_table.

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

  PERFORM makebackup         USING it_table-tabela+5(25).

* << Fim da exclusão

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

 PERFORM makebackup .

* << Fim da inclusão

  CLEAR v_mensagem.

  PERFORM verifica_bloqueio  USING it_table-tabela.

  PERFORM verifica_bloqueio_dados.

  aux = it_table-tabela+5(1).

  IF aux = 'Z'.

    PERFORM: calc_tamanho CHANGING contar,

             up_table     USING    contar.

  ELSE.

    PERFORM: map_table,

             up_arquivo TABLES it500 USING 'E'.

...

 

...

        it_fields-app = 'X'.

      ENDIF.

      IF it_fields-keyflag = 'X'.

        vtchav = vtchav + it_fields-intlen.

      ENDIF.

      MODIFY it_fields.

    ENDLOOP.

  ENDIF.

ENDFORM.

FORM up_arq_normal TABLES p_tabela.

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

  DATA: typ, size   TYPE i,

* << Fim da exclusão

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

  DATA: typ,

        size   TYPE i,"#EC NEEDED

* << Fim da inclusão

       v_size_ant  TYPE i,

       len_3(3),

       wk1_max_col TYPE p VALUE 99,

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

       v_texto(256),

       v_texto_gen(2000),

       v_cont TYPE i,

       v_cont2 TYPE i.

* << Fim da exclusão

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

       v_cont TYPE i."#EC NEEDED

* << Fim da inclusão

  FIELD-SYMBOLS: <f>.

  FIELD-SYMBOLS: <wa_tabela>.

  CHECK it_table-tabela(5) = '/PWS/'.

  ASSIGN (it_table-tabela) TO <wa_tabela>.

  IF sy-subrc = 0.

    DELETE FROM (it_table-tabela) CLIENT

       SPECIFIED WHERE mandt EQ sy-mandt.

    LOOP AT p_tabela.

      v_cont = strlen( p_tabela ).

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

      CLEAR: v_size_ant, v_cont2.

* << Fim da exclusão

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

      CLEAR: v_size_ant.

* << Fim da inclusão

      DO.

        ASSIGN COMPONENT sy-index OF STRUCTURE <wa_tabela> TO <f>.

        IF sy-subrc NE 0. EXIT. ENDIF.

        IF sy-index > wk1_max_col. EXIT. ENDIF.

        DESCRIBE FIELD <f> TYPE typ.

        DESCRIBE FIELD <f> OUTPUT-LENGTH size.

        DESCRIBE FIELD <f> OUTPUT-LENGTH len_3.

        IF typ EQ 'I' OR typ = 's' OR typ = 'b'.

          typ = 'P'.

        ENDIF.

...

 

...

    ENDLOOP.

    it_table-icon = 'S'.

    DESCRIBE TABLE p_tabela LINES v_line.

    WRITE v_line TO aux.

    CONCATENATE aux text-008 INTO it_table-msg

    SEPARATED BY space.

  ENDIF.

ENDFORM.

FORM up_arq_append .

  IF it_table-tabela = 'T005'.

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

    PERFORM executar_upload TABLES itab_t005d USING it_table-tabela.

* << Fim da exclusão

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

    PERFORM executar_upload TABLES itab_t005d .

* << Fim da inclusão

    LOOP AT itab_t005d.

      UPDATE t005 SET /pws/codpa  = itab_t005d-codpais

                       /pws/codab = itab_t005d-codabics

                 WHERE land1    = itab_t005d-land1.

      COMMIT WORK.

    ENDLOOP.

  ENDIF.

  IF it_table-tabela = 'TCURC'.

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

    PERFORM executar_upload TABLES itab_tcurcd USING it_table-tabela.

* << Fim da exclusão

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

    PERFORM executar_upload TABLES itab_tcurcd .

* << Fim da inclusão

    LOOP AT itab_tcurcd.

      UPDATE tcurc SET

                   /pws/codmo  = itab_tcurcd-zzcodmoeda

             WHERE       waers = itab_tcurcd-waers.

    ENDLOOP.

  ENDIF.

  IF it_table-tabela = 'T604F'.

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

    PERFORM executar_upload TABLES itab_t604f USING it_table-tabela.

* << Fim da exclusão

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

    PERFORM executar_upload TABLES itab_t604f .

* << Fim da inclusão

    LOOP AT itab_t604f.

      UPDATE t604f SET

                   /pws/codnandina   = itab_t604f-/pws/codnandina

                   /pws/codncca      = itab_t604f-/pws/codncca

                   /pws/codncmre     = itab_t604f-/pws/codncmre

                   /pws/codnaladi    = itab_t604f-/pws/codnaladi

                   /pws/descr_nala = itab_t604f-/pws/descr_nala

                   /pws/norma_ncm    = itab_t604f-/pws/norma_ncm

                   /pws/norma_nala = itab_t604f-/pws/norma_nala

                   /pws/criterio     = itab_t604f-/pws/criterio

...

 

...

                    /pws/obrigli      = itab_t604f-/pws/obrigli

                    /pws/percentagem  = itab_t604f-/pws/percentagem

                    /pws/exinfo       = itab_t604f-/pws/exinfo

                    /pws/extipo       = itab_t604f-/pws/extipo

                    /pws/anuencia     = itab_t604f-/pws/anuencia

            WHERE  land1        = itab_t604f-land1 AND

                   steuc        = itab_t604f-steuc.

    ENDLOOP.

  ENDIF.

  IF it_table-tabela = 'T615'.

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

    PERFORM executar_upload TABLES itab_t615 USING it_table-tabela.

* << Fim da exclusão

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

    PERFORM executar_upload TABLES itab_t615 .

* << Fim da inclusão

    LOOP AT itab_t615.

      UPDATE t615 SET

                  /pws/codsisc    = itab_t615-/pws/codsisc

                  /pws/estado     = itab_t615-/pws/estado

                  /pws/localidade = itab_t615-/pws/localidade

                  /pws/codabics   = itab_t615-/pws/codabics

                  /pws/codtrigama = itab_t615-/pws/codtrigama

           WHERE  land1      = itab_t615-land1 AND

                  zolla      = itab_t615-zolla.

    ENDLOOP.

...

 

...

  IF it_table-tabela = 'TCURC'.

    SELECT mandt waers /pws/codmo FROM tcurc INTO TABLE itab_tcurcd.

    LOOP AT itab_tcurcd WHERE zzcodmoeda IS initial.

      DELETE itab_tcurcd.

    ENDLOOP.

    PERFORM down_arquivo TABLES itab_tcurcd USING p_ext.

    REFRESH itab_tcurcd.

    FREE itab_tcurcd.

  ENDIF.

  IF it_table-tabela = 'T604F'.

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

    SELECT * FROM t604f INTO TABLE itab_t604f.

* << Fim da exclusão

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

    SELECT * FROM t604f INTO TABLE itab_t604f."#EC CI_SGLSELECT

* << Fim da inclusão

    LOOP AT itab_t604f WHERE /pws/codnandina IS initial

               AND /pws/codncca IS initial

               AND /pws/codncmre IS initial

               AND /pws/codnaladi IS initial

               AND /pws/descr_nala IS initial

               AND /pws/norma_ncm IS initial

               AND /pws/norma_nala IS initial

               AND /pws/criterio IS initial

               AND /pws/zum IS initial.

      DELETE itab_t604f.

...

 

...

    ENDLOOP.

    PERFORM down_arquivo TABLES itab_t615 USING p_ext.

    REFRESH itab_t615.

    FREE itab_t615.

  ENDIF.

ENDFORM.

FORM calc_tamanho CHANGING p_contar.

  CLEAR: p_contar.

  SELECT * FROM dd03l INTO loc_dd03l WHERE

         tabname = it_table-tabela.

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

    SELECT SINGLE * FROM dd01l INTO loc_dd01l WHERE

           domname = loc_dd03l-domname.

* << Fim da exclusão

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

    SELECT  * FROM dd01l

        UP TO 1 ROWS

       iNTO loc_dd01l

       WHERE  domname = loc_dd03l-domname.

   endselect.

* << Fim da inclusão

    p_contar = p_contar + loc_dd01l-outputlen.

  ENDSELECT.

ENDFORM.

FORM comm_perfil.

  IMPORT v_transaction FROM MEMORY ID '/PWS/ZYGLM001'.

  FREE MEMORY ID '/PWS/ZYGLM001'.

  LEAVE TO TRANSACTION v_transaction.

ENDFORM.

FORM load_dominio USING p_dominio p_valor CHANGING p_texto.

  CLEAR: p_texto.

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

  SELECT SINGLE ddtext FROM dd07t INTO p_texto WHERE

         domname    = p_dominio AND

* << Fim da exclusão

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

  SELECT ddtext FROM dd07t

      UP TO 1 ROWS

    INTO p_texto

    WHERE domname    = p_dominio AND

* << Fim da inclusão

         ddlanguage = 'P' AND

         domvalue_l = p_valor.

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

   endselect.

* << Fim da inclusão

ENDFORM.

FORM comm_search USING p_type.

  IF p_type IS INITIAL OR find_in IS INITIAL.

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

    CALL SCREEN '0400' STARTING AT 5 2.

* << Fim da exclusão

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

    CALL SCREEN '0400' STARTING AT 5 2. "#EC *

* << Fim da inclusão

    IF sy-ucomm EQ 'OK'.

      IF NOT find_tab IS INITIAL.

        MOVE: 'IT_TABLE-TABELA' TO find_f,

              'FIND_TAB'        TO find_t.

      ELSEIF NOT find_txt IS INITIAL.

        MOVE: 'IT_TABLE-DDTEXT' TO find_f,

              'FIND_TXT'        TO find_t.

      ELSE.

        EXIT.

      ENDIF.

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

      FIELD-SYMBOLS <sb> STRUCTURE it_table

                         DEFAULT   wa_table.

* << Fim da exclusão

      ASSIGN (find_t) TO <texto>.

      find_in = 1.

    ENDIF.

  ENDIF.

  IF sy-ucomm NE 'CANC'.

    CLEAR v_flag_table.

    LOOP AT it_table FROM find_in.

      ASSIGN (find_f) TO <linha>.

      IF <linha> CS <texto>.

        v_flag_table = 'X'.

        tc_tables-top_line = sy-tabix.

        find_in = sy-tabix + 1.

        EXIT.

      ENDIF.

    ENDLOOP.

    IF v_flag_table IS INITIAL.

      MESSAGE i013 WITH text-019 find_tab text-020.

    ENDIF.

  ENDIF.

ENDFORM.

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

FORM abap2fp USING val result TYPE c.

* << Fim da exclusão

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

FORM abap2fp USING val result TYPE c."#EC *

* << Fim da inclusão

  DATA: val_tmp(40), typ(1).

  CLEAR val_tmp.

  DESCRIBE FIELD val TYPE typ.

  IF typ = 'I' OR typ = 'N' OR typ = 'b' OR typ = 's'.

    typ = 'P'.

  ENDIF.

  CASE typ.

    WHEN 'P'.

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

      IF val < 0.

* << Fim da exclusão

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

      IF val < 0."#EC PORTABLE

* << Fim da inclusão

        MOVE val TO val_tmp+1.

        TRANSLATE val_tmp USING '- '.

        WRITE '-' TO val_tmp(1).

        CONDENSE val_tmp NO-GAPS.

      ELSE.

        MOVE val TO val_tmp.

      ENDIF.

      CONDENSE val_tmp NO-GAPS.

    WHEN 'F'.

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

      IF val = 0.

* << Fim da exclusão

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

      IF val = 0."#EC PORTABLE

* << Fim da inclusão

        val_tmp = '0'.

      ELSE.

        WRITE val TO val_tmp EXPONENT 0.

      ENDIF.

      TRANSLATE val_tmp USING ',.'.

      CONDENSE val_tmp NO-GAPS.

    WHEN 'C'.

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

      IF val CA '-'.

* << Fim da exclusão

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

      IF val CA '-'."#EC PORTABLE

* << Fim da inclusão

        WRITE val TO val_tmp+1.

        TRANSLATE val_tmp USING '- '.

        WRITE '-' TO val_tmp(1).

        CONDENSE val_tmp NO-GAPS.

      ELSE.

        WRITE val TO val_tmp.

      ENDIF.

    WHEN OTHERS.

      val_tmp = val.

  ENDCASE.

  result = val_tmp.

ENDFORM.

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

FORM executar_upload TABLES tabela USING arquivo.

* << Fim da exclusão

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

FORM executar_upload TABLES tabela .

* << Fim da inclusão

  CLEAR dir_arq.

  CLEAR v_carga_ok.

  CONCATENATE dir it_table-tabela '.txt' INTO dir_arq.

  FIELD-SYMBOLS: <filename>.

  IF sy-saprl EQ '46B'.

    ASSIGN dir_arq  TO <filename>.

  ELSE.

    ASSIGN v_filename TO <filename>.

  ENDIF.

  MOVE dir_arq TO <filename>.

...

 

...

            unknown_error           = 7

            bad_data_format         = 8

            header_not_allowed      = 9

            separator_not_allowed   = 10

            header_too_long         = 11

            unknown_dp_error        = 12

            access_denied           = 13

            dp_out_of_memory        = 14

            disk_full               = 15

            dp_timeout              = 16

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

            OTHERS                  = 17.

* << Fim da exclusão

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

            OTHERS                  = 17."#EC *

* << Fim da inclusão

  IF sy-subrc = 0.

    v_carga_ok = 'S'.

    CLEAR tamanho.

    it_table-icon = 'S'.

    DESCRIBE TABLE tabela LINES v_line.

    WRITE v_line TO aux.

    CONCATENATE aux text-021 INTO it_table-msg

    SEPARATED BY space.

    DESCRIBE TABLE tabela LINES tamanho.

    WRITE: dir_arq, 40 tamanho, 50 ' registros'.

...

 

...

         v_file        LIKE rlgrap-filename.

  MOVE p_tabela TO v_file.

  CALL FUNCTION 'GUI_GET_FILE_INFO'

       EXPORTING

            fname          = v_file

       IMPORTING

            file_size      = v_tam

       EXCEPTIONS

            fileinfo_error = 1

            OTHERS         = 2.

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

  if sy-subrc = 0.

  else.

  endif.

* << Fim da inclusão

  IF v_tam > 0.

    IF NOT v_backup EQ space.

      CONCATENATE text-024 v_file INTO v_file SEPARATED BY space.

    ELSE.

      CONCATENATE text-023 v_file INTO v_file SEPARATED BY space.

    ENDIF.

    CALL FUNCTION 'POPUP_TO_CONFIRM_STEP'

         EXPORTING

              defaultoption  = 'Y'

              textline1      = v_file

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

              textline2      = 'já existe! Sobrescrever?'

* << Fim da exclusão

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

              textline2      = text-018

* << Fim da inclusão

              titel          = 'confirme'

              cancel_display = ' '

         IMPORTING

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

              answer         = v_anser.

* << Fim da exclusão

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

              answer         = v_anser."#EC *

* << Fim da inclusão

    IF v_anser EQ 'J'.

      v_resposta = 'OK'.

    ELSE.

      v_resposta = 'CANCEL'.

    ENDIF.

  ELSE.

    v_resposta = 'OK'.

  ENDIF.

ENDFORM.

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

FORM makebackup USING    p_tabela.

* << Fim da exclusão

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

FORM makebackup .

* << Fim da inclusão

  MOVE text-022 TO v_backup.

  PERFORM down_handle_table USING text-030.

ENDFORM.

FORM verifica_bloqueio USING p_tabela.

  DATA: v_file LIKE seqg3-gname.

  CONDENSE p_tabela.

  CONCATENATE text-026 p_tabela(15) INTO v_file.

  CALL FUNCTION 'ENQUEUE_READ'

       EXPORTING

            gclient               = sy-mandt

            guname                = sy-uname

       TABLES

            enq                   = itab_enq

       EXCEPTIONS

            communication_failure = 1

            system_failure        = 2

            OTHERS                = 3.

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

  if sy-subrc = 0.

  else.

  endif.

* << Fim da inclusão

  IF NOT itab_enq[] IS INITIAL.

    READ TABLE itab_enq WITH KEY garg = v_file.

    IF sy-subrc EQ 0.

      v_flag_lock = 'X'.

      v_mensagem = text-025.

    ENDIF.

  ENDIF.

ENDFORM.

FORM atualizalogtabela USING p_tabela.

  DATA: itab_dd03l LIKE dd03l OCCURS 0,

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

        wa_dd03l   LIKE dd03l.

* << Fim da exclusão

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

        wa_dd03l   LIKE dd03l. "#EC NEEDED

* << Fim da inclusão

  SELECT * FROM dd03l INTO TABLE itab_dd03l

           WHERE tabname = p_tabela AND

              ( fieldname = 'USERNAMEC'

             OR fieldname = 'HRUSERC'

             OR fieldname = 'DTUSERC' ).

  IF sy-subrc EQ 0.

    DATA: itab_programa(72) TYPE c OCCURS 1000 WITH HEADER LINE.

    CLEAR itab_programa.

    MOVE text-029 TO itab_programa.

    APPEND itab_programa.

...

 

...

       EXCEPTIONS

            foreign_lock     = 1

            system_failure   = 2

            table_not_found  = 5

            client_reference = 7.

  IF sy-subrc NE 0.

    v_flag_lock = 'X'.

    CONCATENATE text-030 sy-msgv1(12) INTO v_mensagem SEPARATED BY ' '.

  ENDIF.

ENDFORM.

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

FORM append USING str p1 TYPE c.

* << Fim da exclusão

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

FORM append USING str p1 TYPE c."#EC CALLED

* << Fim da inclusão

  FIELD-SYMBOLS <s>.

  DATA slen TYPE i.

  src = str.

  IF p1 NE space.

    slen = strlen( p1 ).

    ASSIGN p1(slen) TO <s>.

    REPLACE '&1' WITH <s> INTO src.

  ENDIF.

  APPEND src.

ENDFORM.

...

 

...

        pgmid = 'R3TR' AND

        object = 'TRAN' AND

      ( obj_name LIKE '/PWS/ZYGLT%' OR

        obj_name LIKE '/PWS/ZYCIT%' OR

        obj_name LIKE '/PWS/ZYCET%' OR

        obj_name LIKE '/PWS/ZYCBT%' OR

        obj_name LIKE '/PWS/ZYCAT%' ) AND

      ( devclass = '/PWS/ZYCE' OR

        devclass = '/PWS/ZYCB' OR

        devclass = '/PWS/ZYCA' OR

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

        devclass = '/PWS/ZYGL' ).

* << Fim da exclusão

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

        devclass = '/PWS/ZYGL' )."#EC CI_SGLSELECT

* << Fim da inclusão

    CHECK NOT it_trans IS INITIAL.

    SELECT tabname

      FROM dd02t

      INTO TABLE it_nmtab

      WHERE

      ( tabname LIKE '/PWS/ZYGLT%' OR

        tabname LIKE '/PWS/ZYCIT%' OR

        tabname LIKE '/PWS/ZYCET%' OR

        tabname LIKE '/PWS/ZYCBT%' OR

        tabname LIKE '/PWS/ZYCAT%' ) AND

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYGL251I01

 

...

    IF c1 EQ '.'.

      MESSAGE e015 WITH text-013.

    ENDIF.

  ENDIF.

  a2 = a1 - 1.

  c1 = dir+a2(1).

  IF c1 NE '\'.

    MESSAGE e015 WITH text-014 text-015.

  ENDIF.

ENDMODULE.

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

MODULE modi_mods INPUT.

* << Fim da exclusão

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

MODULE modi_mods INPUT."#EC *

* << Fim da inclusão

  MODIFY it_table_mod INDEX tc_mods-current_line.

ENDMODULE.

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

MODULE user_command_0200 INPUT.

* << Fim da exclusão

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

MODULE user_command_0200 INPUT."#EC *

* << Fim da inclusão

  CASE sy-ucomm.

    WHEN 'OK' OR 'CANC'.

      LEAVE TO SCREEN 0.

  ENDCASE.

ENDMODULE.

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

MODULE user_command_0001 INPUT.

* << Fim da exclusão

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

MODULE user_command_0001 INPUT."#EC *

* << Fim da inclusão

  CASE sy-ucomm.

    WHEN 'ENTE'.

      PERFORM load_dominio USING    '/PWS/ZYCBD004'

                                     /pws/zygle205-perfil

                           CHANGING perfil.

      CALL SCREEN '0100'.

  ENDCASE.

ENDMODULE.

MODULE user_command_0101 INPUT.

  CASE okcode.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYGL251O01

 

...

       EXPORTING

            name                  = icon_n1

            info                  = text-001

            add_stdinf            = 'X'

       IMPORTING

            result                = v_icon

       EXCEPTIONS

            icon_not_found        = 1

            outputfield_too_short = 2

            OTHERS                = 3.

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

  if sy-subrc = 0.

  else.

  endif.

* << Fim da inclusão

  MOVE: it_table_param-updo   TO updo,

        it_table_param-ddtext TO tabname.

ENDMODULE.

MODULE status_0100 OUTPUT.

  SET PF-STATUS '0100'.

  SET TITLEBAR  '0100' WITH perfil.

ENDMODULE.

MODULE verifica_perfil OUTPUT.

  MOVE: 'D' TO /pws/zygle205-perfil.

  PERFORM load_dominio USING    '/PWS/ZYCBD004'

                    /pws/zygle205-perfil CHANGING perfil.

  IF dir IS INITIAL.

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

    SELECT SINGLE path FROM /pws/zycbt007 INTO dir.

* << Fim da exclusão

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

    SELECT path

      FROM /pws/zycbt007

        UP TO 1 ROWS

      INTO dir.

    endselect.

* << Fim da inclusão

  ENDIF.

ENDMODULE.

MODULE load_tables_updt OUTPUT.

  CLEAR: icon_n1.

  IF it_table_updt-icon EQ 'S'.

    icon_n1 = text-002.

  ELSEIF it_table_updt-icon EQ 'E'.

    icon_n1 = text-003.

  ELSEIF it_table_updt-icon EQ 'V'.

    icon_n1 = text-017.

...

 

...

       EXPORTING

            name                  = icon_n1

            info                  = text-001

            add_stdinf            = 'X'

       IMPORTING

            result                = v_icon

       EXCEPTIONS

            icon_not_found        = 1

            outputfield_too_short = 2

            OTHERS                = 3.

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

  if sy-subrc = 0.

  else.

  endif.

* << Fim da inclusão

  MOVE: it_table_updt-updo   TO updo,

        it_table_updt-ddtext TO tabname.

ENDMODULE.

 

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

Modificações efetuadas em REPS /PWS/MZYGL251TOP

 

PROGRAM  /pws/sapmzygl251 MESSAGE-ID /pws/zycim.

* >> Início da exclusão:

TABLES: /pws/zyglt205,

* << Fim da exclusão

* >> Início da inclusão:

TABLES:

* << Fim da inclusão

        /pws/zygle205.

* >> Início da exclusão:

FIELD-SYMBOLS: <linha>, <texto>, <table1>.

* << Fim da exclusão

* >> Início da inclusão:

FIELD-SYMBOLS: <linha>,

               <texto>.

* << Fim da inclusão

CONTROLS: tc_tables TYPE TABLEVIEW USING SCREEN 0101,

          tc_updt   TYPE TABLEVIEW USING SCREEN 0102,

* >> Início da exclusão:

          tc_mods   TYPE TABLEVIEW USING SCREEN 0200,

* << Fim da exclusão

* >> Início da inclusão:

          tc_mods   TYPE TABLEVIEW USING SCREEN 0200,"#EC *

* << Fim da inclusão

          ts_tabela TYPE TABSTRIP.

types:

  BEGIN OF s_tabname,

    tabname type dd02t-tabname,

  END OF s_tabname.

types t_tabname type table of s_tabname.

types:

  begin of st_tabela.

        INCLUDE STRUCTURE /pws/zygle205.

types:  ddtext    type dd02t-ddtext,

...

 

...

            updo.

DATA: END    OF it_table_updt.

DATA: BEGIN OF it_table_param OCCURS 0.

        INCLUDE STRUCTURE /pws/zygle205.

DATA:        ddtext LIKE dd02t-ddtext,

             icon,

             msg(100),

             modulo(4),

            updo.

DATA: END    OF it_table_param.

* >> Início da exclusão:

DATA: it_table_all LIKE it_table OCCURS 0 WITH HEADER LINE,

      it_table_mod LIKE it_table OCCURS 0 WITH HEADER LINE,

      wa_table     LIKE it_table.

* << Fim da exclusão

* >> Início da inclusão:

DATA: it_table_all LIKE it_table OCCURS 0 ,

      it_table_mod LIKE it_table OCCURS 0 WITH HEADER LINE.

* << Fim da inclusão

DATA: loc_dd03l   LIKE dd03l,

      loc_dd01l   LIKE dd01l,

      wa_cols     TYPE cxtab_column.

DATA: updo,

* >> Início da exclusão:

      ddpos   LIKE dd03l-position,

* << Fim da exclusão

      tabname LIKE dd02t-ddtext,

      dir_arq LIKE rlgrap-filename,

      v_filename TYPE string,

...

 

...

      v_line  TYPE i,

      contar  TYPE i,

      tamanho TYPE i,

      vidx    LIKE sy-tabix,

      v_transaction LIKE sy-tcode,

      v1      TYPE i,

      vtapps  TYPE i,

      vtchav  TYPE i,

      vtfiel  TYPE i,

      find_in LIKE sy-tabix,

* >> Início da exclusão:

      find,

* << Fim da exclusão

      find_tab(10),

      find_txt(50),

      find_f(30),

      find_t(30),

      perfil(50),

      icon_n1(30),

      v_sort(30),

* >> Início da exclusão:

      v_sort2(30),

* << Fim da exclusão

      aux(30),

      v_flag_table,

      v_backup(03),

      v_flag_lock,

      v_mensagem(100),

      okcode LIKE sy-ucomm.

DATA: rangetab TYPE TABLE OF vimsellist INITIAL SIZE 50

         WITH HEADER LINE.

DATA: BEGIN OF it_fields OCCURS 0,

            fieldname LIKE dd03l-fieldname,

...

 

...

            keyflag   LIKE dd03l-keyflag,

            intlen    LIKE dd03l-intlen,

            app,

      END   OF it_fields.

DATA: BEGIN OF it100 OCCURS 0.

DATA: line(100).

DATA: END   OF it100.

DATA: BEGIN OF it500 OCCURS 0.

DATA: line(500).

DATA: END   OF it500.

* >> Início da exclusão:

DATA: BEGIN OF it500a OCCURS 0.

DATA: line(500),

      chave(100).

DATA: END   OF it500a.

DATA: it500b LIKE it500a OCCURS 0 WITH HEADER LINE.

* << Fim da exclusão

DATA: BEGIN OF it2000 OCCURS 0.

DATA: line(2000).

DATA: END   OF it2000.

data: it_tabname type t_tabname,

      wa_tabname type s_tabname.

DATA: BEGIN OF itab_t005d OCCURS 0,

      mandt        LIKE t005-mandt,

      land1        LIKE t005-land1,

      codpais      LIKE t005-/pws/codpa,

      codabics     LIKE t005-/pws/codab,

    END OF itab_t005d.

DATA: BEGIN OF itab_tcurcd OCCURS 0,

      mandt          LIKE tcurc-mandt,

      waers          LIKE tcurc-waers,

      zzcodmoeda     LIKE tcurc-/pws/codmo,

    END OF itab_tcurcd.

DATA: itab_t604f    LIKE t604f    OCCURS 0 WITH HEADER LINE,

      itab_t615     LIKE t615     OCCURS 0 WITH HEADER LINE.

* >> Início da exclusão:

DATA: v_carga_ok TYPE c.

* << Fim da exclusão

* >> Início da inclusão:

DATA: v_carga_ok TYPE c."#EC NEEDED

* << Fim da inclusão

DATA: BEGIN OF itab_enq OCCURS 0.

        INCLUDE STRUCTURE seqg3.

DATA: END OF itab_enq.

* >> Início da exclusão:

DATA: BEGIN OF lines OCCURS 0,

* << Fim da exclusão

* >> Início da inclusão:

DATA: BEGIN OF lines OCCURS 0,"#EC *

* << Fim da inclusão

        line(255),

      END OF lines.

* >> Início da exclusão:

DATA:  v_tabela(50).

DATA: src(72) OCCURS 0 WITH HEADER LINE,

      poolname LIKE sy-repid,

      mess(240), line TYPE i, word(240).

* << Fim da exclusão

* >> Início da inclusão:

DATA: src(72) OCCURS 0 WITH HEADER LINE."#EC NEEDED

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYGL334F01

 

...

      text = text-000.

      replace '&' with sy-msgv1(12) into text.

      call function 'POPUP_TO_CONFIRM_WITH_MESSAGE'

           exporting

                titel         = text-001

                diagnosetext1 = text

                diagnosetext2 = text-017

                textline1     = text-018

                defaultoption = 'Y'

           importing

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

                answer        = v_answer.

* << Fim da exclusão

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

                answer        = v_answer."#EC *

* << Fim da inclusão

      if v_answer = 'J'.

        v_tcode = 'E'.

      else.

        leave program.

      endif.

    else.

      v_tcode = 'A'.

    endif.

  endif.

endform.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYGL334I01

 

...

         /pws/zyglt334-dynr  is initial and

         /pws/zyglt334-fldn  is initial .

        if sy-subrc = 0.

          message i015 with text-025.

          exit.

        endif.

        leave to screen 0.

  endif.

      if itab_zyglt334[] is initial.

        select * from /pws/zyglt334

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

        into table itab_zyglt334.

* << Fim da exclusão

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

        into table itab_zyglt334."#EC CI_NOWHERE

* << Fim da inclusão

        perform trata_bloqueio.

      endif.

    when 'BACK'.

      leave to screen 0.

  endcase.

  clear ok_code.

endmodule.

module user_command_0200 input.

  case ok_code.

    when 'SAVE'.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYGL334O01

 

...

          screen-input = '1'.

          modify screen.

        endif.

      endif.

    endif.

  endloop.

endmodule.

module load_data output.

  if itab_zyglt334[] is initial.

    select * from /pws/zyglt334

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

    into table itab_zyglt334.

* << Fim da exclusão

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

    into table itab_zyglt334."#EC CI_NOWHERE

* << Fim da inclusão

    perform trata_bloqueio.

  endif.

endmodule.

 

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

Modificações efetuadas em REPS /PWS/MZYGL334TOP

 

program  /pws/sapmzygl334  message-id /pws/zycim.

tables: /pws/zyglt334.

controls:

tc_code type tableview using screen 0100.

data: begin of itab_zyglt334 occurs 0.

        include structure /pws/zyglt334.

data: mark type c.

data: end of itab_zyglt334.

* >> Início da exclusão:

data: begin of itab_d021t occurs 0.

        include structure d021t.

data: end of itab_d021t.

* << Fim da exclusão

data: begin of itab_dele occurs 0.

        include structure /pws/zyglt334.

data: end of itab_dele.

data: begin of itab_pf_status occurs 10,

        fcode(4) type c,

      end of itab_pf_status.

* >> Início da exclusão:

data: wa_zyglt334 like itab_zyglt334.

* << Fim da exclusão

* >> Início da inclusão:

data: wa_zyglt334 like itab_zyglt334."#EC NEEDED

* << Fim da inclusão

data: ok_code like sy-ucomm                           ,

      v_tabix like sy-tabix                           ,

      v_tcode                                         ,

      v_answer                                        ,

      text(100)                                       ,

      mark                                            ,

      nextline    type i                              ,

      v_line      type i                              ,

      v_posi(40)                                      ,

      v_index     like sy-tabix                       ,

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYGL339F01

 

...

    MOVE-CORRESPONDING /pws/zyglt339 TO itab_zyglt339.

    MOVE:              sy-uname      TO itab_zyglt339-usernamec,

                       sy-datum      TO itab_zyglt339-dtuserc,

                       sy-uzeit      TO itab_zyglt339-hruserc.

    MODIFY itab_zyglt339 INDEX v_tabix.

    MODIFY /pws/zyglt339 FROM itab_zyglt339.

    APPEND itab_zyglt339.

    COMMIT WORK AND WAIT.

    PERFORM log_alteracao USING itab_zyglt339-bname

                                itab_zyglt339-frggr.

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

    MESSAGE i017(/pws/zycim).

* << Fim da exclusão

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

    MESSAGE i017(/pws/zycim)."#EC *

* << Fim da inclusão

  ELSE.

    READ TABLE itab_zyglt339 WITH KEY frggr = /pws/zyglt339-frggr

                                      bname = /pws/zyglt339-bname.

    IF sy-subrc NE 0.

      MOVE-CORRESPONDING /pws/zyglt339 TO itab_zyglt339.

      MOVE:              sy-uname      TO itab_zyglt339-usernamec,

                         sy-datum      TO itab_zyglt339-dtuserc,

                         sy-uzeit      TO itab_zyglt339-hruserc.

      MODIFY /pws/zyglt339 FROM itab_zyglt339.

      APPEND itab_zyglt339.

      COMMIT WORK AND WAIT.

      PERFORM log_alteracao USING itab_zyglt339-bname

                                  itab_zyglt339-frggr.

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

      MESSAGE i017(/pws/zycim).

* << Fim da exclusão

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

      MESSAGE i017(/pws/zycim)."#EC *

* << Fim da inclusão

    ELSE.

      MESSAGE i015 WITH text-020.

    ENDIF.

    MODIFY /pws/zyglt339 FROM itab_zyglt339.

  ENDIF.

ENDFORM.

FORM trata_copy.

  IF v_tcode NE 'E'.

    CLEAR v_cont.

    LOOP AT itab_zyglt339 WHERE mark = 'X'.

...

 

...

      text = text-000.

      REPLACE '&' WITH sy-msgv1(12) INTO text.

      CALL FUNCTION 'POPUP_TO_CONFIRM_WITH_MESSAGE'

           EXPORTING

                titel         = text-001

                diagnosetext1 = text

                diagnosetext2 = text-017

                textline1     = text-018

                defaultoption = 'Y'

           IMPORTING

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

                answer        = v_answer.

* << Fim da exclusão

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

                answer        = v_answer."#EC *

* << Fim da inclusão

      IF v_answer = 'J'.

        v_tcode = 'E'.

      ELSE.

        LEAVE PROGRAM.

      ENDIF.

    ELSE.

      v_tcode = 'A'.

    ENDIF.

  ENDIF.

ENDFORM.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYGL339O01

 

...

  ENDIF.

  READ TABLE itab_zyglt339 INTO wa_zyglt339 INDEX nextline.

  IF sy-subrc NE 0.

    nextline = v_line.

  ENDIF.

  MOVE: nextline TO currentline,

        v_line   TO totalline  .

  CONCATENATE text-003 currentline text-004 totalline

  INTO v_posi SEPARATED BY space.

ENDMODULE.

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

MODULE trata_linha OUTPUT.

* << Fim da exclusão

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

MODULE trata_linha OUTPUT."#EC *

* << Fim da inclusão

  LOOP AT SCREEN.

    CASE screen-name.

      WHEN '/PWS/ZYGLT339-FRGGR' OR '/PWS/ZYGLT339-BNAME'.

        IF itab_zyglt339-mark EQ 'X'.

          screen-intensified = '1'.

        ELSE.

          screen-intensified = '0'.

        ENDIF.

    ENDCASE.

    MODIFY SCREEN.

  ENDLOOP.

ENDMODULE.

MODULE load_data OUTPUT.

  IF itab_zyglt339[] IS INITIAL.

    SELECT * FROM /pws/zyglt339

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

    INTO TABLE itab_zyglt339.

* << Fim da exclusão

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

    INTO TABLE itab_zyglt339."#EC CI_NOWHERE

* << Fim da inclusão

    PERFORM trata_bloqueio.

    MOVE itab_zyglt339[] TO it_regant[].

  ENDIF.

ENDMODULE.

MODULE status_0200 OUTPUT.

  SET TITLEBAR '0200' WITH text-011.

  CLEAR itab_pf_status.

  REFRESH itab_pf_status.

  IF v_tcode = 'E'.

    itab_pf_status-fcode = 'SAVE'.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYGL339TOP

 

...

DATA: BEGIN OF itab_zyglt339 OCCURS 0.

        INCLUDE STRUCTURE /pws/zyglt339.

DATA: mark TYPE c.

DATA: END OF itab_zyglt339.

DATA: BEGIN OF itab_pf_status OCCURS 10,

        fcode(4) TYPE c,

      END OF itab_pf_status.

DATA: BEGIN OF itab_zyglt381 OCCURS 0.

        INCLUDE STRUCTURE /pws/zyglt381.

DATA: END OF itab_zyglt381.

* >> Início da exclusão:

DATA: wa_zyglt339 LIKE itab_zyglt339.

* << Fim da exclusão

* >> Início da inclusão:

DATA: wa_zyglt339 LIKE itab_zyglt339."#EC NEEDED

* << Fim da inclusão

Data: it_regant  like itab_zyglt339 occurs 0 with header line.

DATA: ok_code LIKE sy-ucomm                           ,

      v_tabix LIKE sy-tabix                           ,

      v_tcode                                         ,

      v_answer                                        ,

      text(100)                                       ,

      mark                                            ,

      nextline    TYPE i                              ,

      v_line      TYPE i                              ,

      v_posi(40)                                      ,

...

 

 

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

Modificações efetuadas em REPT /PWS/SAPMZYGL251

 

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

Modificado símbolo de texto:

 

Idioma: PT

 

Símbolo: 018

 

Texto: (24 caracteres)

"já existe! Sobrescrever?"

 

Comprimento máximo: 24

 

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

Excluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 028

 

Texto: (9 caracteres)

"USERNAMEC"

 

Comprimento máximo: 9

 

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

Excluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 031

 

Texto: (65 caracteres)

"Upload realizado, porém a tabela está sendo alterada pelo usuário"

 

Comprimento máximo: 65

 

 

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

Modificações efetuadas em REPT /PWS/SAPMZYGL334

 

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

Excluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 015

 

Texto: (19 caracteres)

"Botões de navegação"

 

Comprimento máximo: 19

 

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

Excluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 016

 

Texto: (29 caracteres)

"Gravar modificações primeiro?"

 

Comprimento máximo: 29

 

 

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

Modificações efetuadas em REPT /PWS/SAPMZYGL339

 

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

Excluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 015

 

Texto: (19 caracteres)

"Botões de navegação"

 

Comprimento máximo: 19

 

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

Excluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 016

 

Texto: (29 caracteres)

"Gravar modificações primeiro?"

 

Comprimento máximo: 29