CE PLUS - Nota 011506

Módulo: CÂMBIO EXPORTAÇÃO

Funcionalidade: Parâmetros

Data/Hora da Publicação: 28/03/2012 10:05:19

Data/Hora Última Alteração: 28/03/2012 10:05:19

Descrição da Nota: TRILHA DE AUDITORIA

Sintoma

O sistema não armazena Log da Criação/Modificação/Exclusão de processos do pw.CE

 

 

Solução

Foi incluído no sistema a gravação de LOG's durante a Criação/Modificação/Exclusão de processos

no pw.CE

 

Versões Tratadas

8.0


Pré-Requisitos

Produto:

Nota

Descrição

MAPEAMENTO SOCIEDADE PARCEIRA NAS CONTABILIZAÇÕES

COMPLEMENTO BOLETO, CONTABILIZAÇÃO F-43 F-63,EMPRÉSTIMO E FINANCIAMENTO

PARÂMETROS - PARÂMETROS GERAIS - GRAVAÇÃO EM REQUEST

Informações Complementares

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

Nota Número 11506 Data: 03/10/2011 Hora: 10:02:10

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

 

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

Nota Número              : 11506

Categoria                : Melhoria

Prioridade               : Média

Versão PW.CE             : 8.0

Pacote                   : 00009

Agrupamento              : 00095

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

Referência às notas relacionadas:

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

 

10188  - 00001 - 8.0    - 00003  - MAPEAMENTO SOCIEDADE PARCEIRA NAS CONTABILIZAÇÕES

10752  - 00002 - 8.0    - 00005  - PARÂMETROS - PARÂMETROS GERAIS - GRAVAÇÃO EM REQUEST

11313  - 00003 - 8.0    - 00008  - COMPLEMENTO BOLETO, CONTABILIZAÇÃO F-43 F-63,EMPRÉSTIMO E FINANCI

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

TRILHA DE AUDITORIA

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

Palavras Chave:

TRILHA DE AUDITORIA

 

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

Objetos da nota:

DTEL /PWS/ZYGLL1430

CUAD /PWS/SAPMZYGL007

DYNP /PWS/SAPMZYGL007                        0114

FUNC /PWS/ZYGLA322

FUNC /PWS/ZYGL_TRILHA_AUDITORIA

REPT /PWS/SAPLZYGLGF

PARA /PWS/ZYGLP009

PARA /PWS/ZYGLP010

REPS /PWS/LZYCBGF1TOP

REPS /PWS/LZYGLGF4UXX

REPS /PWS/LZYGLGFUXX

REPS /PWS/MZYGL007I01

REPS /PWS/MZYGL007O01

REPS /PWS/SAPMZYGL007

REPS /PWS/ZYGLLOG

REPS /PWS/ZYGLR042

REPS /PWS/ZYGLR043

REPS /PWS/ZYGLR044

SHI3 /PWS/ZYCB

SHI6 /PWS/ZYCB

SHLP /PWS/ZYGLA322

SHLP /PWS/ZYGLA323

TABD /PWS/ZYGLT009

TABL /PWS/ZYGLT389

TABL /PWS/ZYGLT390

TABL /PWS/ZYGLT391

TABU TMENU01

TABU TMENU01R

TABU TMENU01T

TRAN /PWS/ZYGLR042

VIEW /PWS/ZYGLV022

VIEW /PWS/ZYGLV023

 

 

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

Modificações efetuadas em CUAD /PWS/SAPMZYGL007

 

Alterar STATUS-GUI 001

 

Incluir BOTÃO ESTÁTICO (Barra de Botões)

 

CÓDIGO DE FUNÇÃO:     LOG_TRILHA

CATEGORIA DE FUNÇÃO:  ' '

 

TEXTOS DE FUNÇÃO ESTÁTICOS

TEXTO DE FUNÇÃO:   Log de Modificação

NOME DE ÍCONE:     ICON_PHIO_CLASS

TEXTO DE ÍCONE:    ' '

TEXTO INFORMATIVO: ' '

SELEÇÃO DIRETA:    ' '

TECLA DE ATALHO:   Ctrl+F12

 

 

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

Modificações efetuadas em DTEL /PWS/ZYGLL1430

 

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

Elemento de dados incluído: /PWS/ZYGLL1430

Classe de desenvolvimento: /PWS/ZYGL

Idioma original: PT

Descrição breve incluída: (25 caracteres), idioma: EN

"GL - Activate Audit Trail"

Descrição breve incluída: (31 caracteres), idioma: PT

"GL - Ativar Trilha de Auditoria"

Descrição breve incluída: (15 caracteres), idioma: ES

"GL - Ativar Log"

Categoria de dados: Domínio

Domínio: CHAR1

ID parâmetro:

Nome componente default:

Documentar modificações: NÃO

Nome da ajuda de pesquisa:

Parâmetro da ajuda de pesquisa:

Comprimento máximo do denominador breve: 10

Denominador breve incluído (10 caracteres), idioma: EN

"AuditTrail"

Denominador breve incluído (10 caracteres), idioma: PT

"Trilha Aud"

Denominador breve incluído (3 caracteres), idioma: ES

"Log"

Comprimento máximo do denominador médio: 16

Denominador médio incluído (11 caracteres), idioma: EN

"Audit Trail"

Denominador médio incluído (16 caracteres), idioma: PT

"Trilha Auditoria"

Denominador médio incluído (3 caracteres), idioma: ES

"Log"

Comprimento máximo do denominador longo: 26

Denominador longo incluído (20 caracteres), idioma: EN

"Activate Audit Trail"

Denominador longo incluído (26 caracteres), idioma: PT

"Ativar Trilha de Auditoria"

Denominador longo incluído (10 caracteres), idioma: ES

"Ativar Log"

Comprimento máximo do título: 26

Título incluído (20 caracteres), idioma: EN

"Activate Audit Trail"

Título incluído (26 caracteres), idioma: PT

"Ativar Trilha de Auditoria"

Título incluído (10 caracteres), idioma: ES

"Ativar Log"

 

 

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

Modificações efetuadas em DYNP /PWS/SAPMZYGL007                        0114

 

Favor solicitar arquivo para upload da tela com equipe de produto pw.CE Câmbio - 11 5504   0170

 

 

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

Modificações efetuadas em FUNC /PWS/ZYGLA322

CRIAR MÓDULO DE FUNÇÃO: /PWS/ZYGLA322

CARACTERÍSTICAS

 

CLASSIFICAÇÃO:

GRUPO DE FUNÇÕES: /PWS/ZYGLGF4

TEXTO BREVE: GL - Trilha Auditoria - Programa(funcionalidade)

 

TIPO DE EXECUÇÃO:

(X) - MÓDULO DE FUNÇÃO NORMAL

(_) - MÓDULO DE ACESSO REMOTO

(_) - MÓDULO DE ATUALIZAÇÃO

     (X) - INÍCIO IMEDIATO

     (_) - INÍCIO IMEDIATO-SEM ATUAL.POSTER.

     (_) - INÍC. RETARDADO

     (_) - PROCES. CLOETIVO

 

DADOS GERAIS:

(_) - BLOQUEIO PROCESSO

(_) - GLOBAL

 

IMPORTAÇÃO:

NOME PARAM.   ATRIB. TIPO REFERÊNCIA  VL. PROPOSTO OPCIONAL TRANSF. TEXT

 

EXPORTAÇÃO:

NOME PARAM.   ATRIB. TIPO REFERÊNCIA   TRANSF.  TEXTO BREVE

 

MODIFIC.:

NOME PARAM.   ATRIB. TIPO REFERÊNCIA  VL. PROPOSTO OPCIONAL TRANSF. TEXT

SHLP          TYPE   SHLP_DESCR_T                              X

CALLCONTROL   LIKE   DDSHF4CTRL                                X

 

TABELAS:

NOME PARAM.   ATRIB. TIPO REFERÊNCIA  OPCIONAL TEXTO BREVE

SHLP_TAB      TYPE   SHLP_DESCR_TAB_T

RECORD_TAB    LIKE   SEAHLPRES

 

EXCEÇÕES:

EXCEÇÃO                    TEXTO BREVE

 

MODIFICAR MÓDULO DE FUNÇÃO: ______________________________

CARACTERÍSTICAS

 

CLASSIFICAÇÃO:

GRUPO DE FUNÇÕES: _________________

TEXTO BREVE: _________________________________________________

 

TIPO DE EXECUÇÃO:

(_) - MÓDULO DE FUNÇÃO NORMAL

(_) - MÓDULO DE ACESSO REMOTO

(_) - MÓDULO DE ATUALIZAÇÃO

     (_) - INÍCIO IMEDIATO

     (_) - INÍCIO IMEDIATO-SEM ATUAL.POSTER.

     (_) - INÍC. RETARDADO

     (_) - PROCES. CLOETIVO

 

DADOS GERAIS:

(_) - BLOQUEIO PROCESSO

(_) - GLOBAL

 

IMPORTAÇÃO:

NOME PARAM.   ATRIB. TIPO REFERÊNCIA  VL. PROPOSTO OPCIONAL TRANSF. TEXT

 

EXPORTAÇÃO:

NOME PARAM.   ATRIB. TIPO REFERÊNCIA   TRANSF.  TEXTO BREVE

 

MODIFIC.:

NOME PARAM.   ATRIB. TIPO REFERÊNCIA  VL. PROPOSTO OPCIONAL TRANSF. TEXT

 

TABELAS:

NOME PARAM.   ATRIB. TIPO REFERÊNCIA  OPCIONAL TEXTO BREVE

 

EXCEÇÕES:

EXCEÇÃO                    TEXTO BREVE

 

 

 

TEXTO FONTE

 

FUNCTION /pws/zygla322.

  CLEAR callcontrol-maxrecords.

  DELETE ADJACENT DUPLICATES FROM record_tab.

ENDFUNCTION.

 

 

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

Modificações efetuadas em FUNC /PWS/ZYGL_TRILHA_AUDITORIA

 

CRIAR MÓDULO DE FUNÇÃO: /PWS/ZYGL_TRILHA_AUDITORIA

CARACTERÍSTICAS

 

CLASSIFICAÇÃO:

GRUPO DE FUNÇÕES: /PWS/ZYGLGF

TEXTO BREVE: GL - Grava Log de Inclusão/Modificação/Exclusão

 

TIPO DE EXECUÇÃO:

(X) - MÓDULO DE FUNÇÃO NORMAL

(_) - MÓDULO DE ACESSO REMOTO

(_) - MÓDULO DE ATUALIZAÇÃO

     (X) - INÍCIO IMEDIATO

     (_) - INÍCIO IMEDIATO-SEM ATUAL.POSTER.

     (_) - INÍC. RETARDADO

     (_) - PROCES. CLOETIVO

 

DADOS GERAIS:

(_) - BLOQUEIO PROCESSO

(_) - GLOBAL

 

IMPORTAÇÃO:

NOME PARAM.     ATRIB. TIPO REFERÊNCIA  VL. PROPOSTO OPCIONAL TRANSF. TEXT

I_PROGNAME      TYPE   REPID                                     X

I_TABNAME       TYPE   TABNAME                                   X

I_OPER TYPE     CHAR1                                            X

I_TCODE         TYPE   TCODE                                     X

I_IDENTIFICADOR TYPE   ANY                                       X    "Campo chave global para

identificar processo"

 

EXPORTAÇÃO:

NOME PARAM.   ATRIB. TIPO REFERÊNCIA   TRANSF.  TEXTO BREVE

 

MODIFIC.:

NOME PARAM.   ATRIB. TIPO REFERÊNCIA  VL. PROPOSTO OPCIONAL TRANSF. TEXT

 

TABELAS:

NOME PARAM.   ATRIB. TIPO REFERÊNCIA  OPCIONAL TEXTO BREVE

T_CONDICOES   LIKE   /PWS/ZYCBE033

T_ESTRUTURA   LIKE   DD03L

 

EXCEÇÕES:

EXCEÇÃO                    TEXTO BREVE

 

 

* >> Início da inclusão:

function /pws/zygl_trilha_auditoria.

*"----------------------------------------------------------------------

*"*"Interface local:

*"  IMPORTING

*"     VALUE(I_PROGNAME) TYPE  REPID

*"     VALUE(I_TABNAME) TYPE  TABNAME

*"     VALUE(I_OPER) TYPE  CHAR1

*"     VALUE(I_TCODE) TYPE  TCODE

*"     VALUE(I_IDENTIFICADOR) TYPE  ANY

*"  TABLES

*"      T_CONDICOES STRUCTURE  /PWS/ZYCBE033

*"      T_ESTRUTURA STRUCTURE  DD03L

*"----------------------------------------------------------------------

  tables: /pws/zyglt389, /pws/zyglt390.

 

  field-symbols: <wa_dados>.

 

  data: dy_line            type ref to  data.

 

  data: begin of itab_zyglt391_exp occurs 0.

          include structure /pws/zyglt391.

  data: end of itab_zyglt391_exp.

 

  statics: itab_zyglt391_aux like itab_zyglt391_exp occurs 0

           with header line.

 

  data: begin of wheretab occurs 0,

          cond type /pws/zycbe033-cpochv,

        end of wheretab.

 

  data: v_datum          type sy-datum,

        v_uzeit          type sy-uzeit,

        v_data(9)        type c,

        v_dif_tabversno  type /pws/zyglt391-tabversno,

        v_tabversno      type /pws/zyglt391-tabversno,

        v_line           type i,

        v_save           type c,

        v_indice         type /pws/zyglt389-indice,

        v_exporta_dados  type c,

        v_auditoria      type /pws/zyglt009-trilha_auditoria,

        v_indice_c(56)   type c,

        v_linhas         type i,

        v_tabix          type i,

        v_random         type qf00-ran_number,

        v_time           type timestampl.

 

  statics v_indice_ant   type /pws/zyglt389-indice.

 

  check i_tabname(5) = '/PWS/'.

 

  v_datum = sy-datum.

  v_uzeit = sy-uzeit.

 

  sort t_estrutura by position.

 

  clear:   itab_zyglt391_exp.

  refresh: itab_zyglt391_exp.

 

  loop at t_estrutura.

    clear itab_zyglt391_exp.

    itab_zyglt391_exp-tabela   = t_estrutura-tabname.

    itab_zyglt391_exp-campo    = t_estrutura-fieldname.

    itab_zyglt391_exp-keyflag  = t_estrutura-keyflag.

    itab_zyglt391_exp-rollname = t_estrutura-rollname.

    itab_zyglt391_exp-posicao  = t_estrutura-position.

    if t_estrutura-inttype = 'X'.

      itab_zyglt391_exp-inttype  = 'I'.

    else.

      itab_zyglt391_exp-inttype  = t_estrutura-inttype.

    endif.

    if sy-saprl(3) ge '620' or sy-saprl(2) eq '47'.

      itab_zyglt391_exp-intlen   = t_estrutura-leng.

    else.

      itab_zyglt391_exp-intlen   = t_estrutura-intlen.

    endif.

    itab_zyglt391_exp-decimals = t_estrutura-decimals.

    if not t_estrutura-decimals > 0.

      itab_zyglt391_exp-datatype = t_estrutura-datatype.

    endif.

    itab_zyglt391_exp-data     = v_datum.

    itab_zyglt391_exp-hora     = v_uzeit.

 

    append itab_zyglt391_exp.

  endloop.

 

  read table itab_zyglt391_aux with key tabela = i_tabname.

  if sy-subrc ne 0.

    refresh itab_zyglt391_aux.

    select * from /pws/zyglt391

      into table itab_zyglt391_aux

      where tabela = i_tabname

      order by tabela tabversno posicao.

  endif.

  if not itab_zyglt391_aux[] is initial and sy-subrc = 0.

    clear: v_dif_tabversno, v_tabversno, v_save.

    loop at itab_zyglt391_aux where tabela = i_tabname.

      if not v_tabversno is initial and

         v_tabversno     ne itab_zyglt391_aux-tabversno.

        if v_dif_tabversno is initial.

          exit.

        else.

          clear v_dif_tabversno.

        endif.

      endif.

      if not v_dif_tabversno is initial.

        check itab_zyglt391_aux-tabversno ne v_dif_tabversno.

      endif.

      read table itab_zyglt391_exp

                 with key posicao = itab_zyglt391_aux-posicao.

      if itab_zyglt391_exp-campo    ne itab_zyglt391_aux-campo    or

         itab_zyglt391_exp-keyflag  ne itab_zyglt391_aux-keyflag  or

         itab_zyglt391_exp-rollname ne itab_zyglt391_aux-rollname or

         itab_zyglt391_exp-posicao  ne itab_zyglt391_aux-posicao  or

         itab_zyglt391_exp-inttype  ne itab_zyglt391_aux-inttype  or

         itab_zyglt391_exp-intlen   ne itab_zyglt391_aux-intlen   or

         itab_zyglt391_exp-decimals ne itab_zyglt391_aux-decimals or

         itab_zyglt391_exp-datatype ne itab_zyglt391_aux-datatype.

        v_dif_tabversno = itab_zyglt391_aux-tabversno.

      endif.

      v_tabversno = itab_zyglt391_aux-tabversno.

    endloop.

    if not v_dif_tabversno is initial.

      describe table itab_zyglt391_aux lines v_line.

      read table itab_zyglt391_aux index v_line.

      if sy-subrc = 0.

        itab_zyglt391_exp-tabversno =

        v_tabversno = itab_zyglt391_aux-tabversno + 1.

        modify itab_zyglt391_exp transporting tabversno

          where tabela = i_tabname.

      endif.

    else.

      v_save = 'X'.

      itab_zyglt391_exp-tabversno = v_tabversno.

      modify itab_zyglt391_exp transporting tabversno

                         where tabela = i_tabname.

    endif.

  else.

    itab_zyglt391_exp-tabversno = v_tabversno = v_tabversno + 1.

    modify itab_zyglt391_exp transporting tabversno

                           where tabela = i_tabname.

  endif.

 

  refresh wheretab.

  loop at t_condicoes.

    wheretab-cond = t_condicoes-cpochv.

    append wheretab.

  endloop.

 

  read table itab_zyglt391_exp index 1.

  if sy-subrc = 0.

    create data dy_line type (itab_zyglt391_exp-tabela).

    assign dy_line->* to  <wa_dados>.

  endif.

  check <wa_dados> is assigned.

 

 

  select single * from (itab_zyglt391_exp-tabela) into <wa_dados>

                  where (wheretab).

 

  if not ( sy-subrc = 0 and not <wa_dados> is initial ).

    clear: v_tabix, v_linhas.

    describe table wheretab lines v_linhas.

    loop at wheretab.

      v_tabix = v_tabix + 1.

      do 30 times.

        if wheretab-cond+sy-index(2) = text-001.

          if not v_tabix = 1.

            delete wheretab.

            v_tabix  = v_tabix - 1.

            v_linhas = v_linhas - 1.

            if v_tabix = v_linhas.

              read table wheretab index v_tabix.

              if sy-subrc = 0.

                do 87 times.

                  if wheretab-cond+sy-index(3) is initial.

                    exit.

                  endif.

                  if wheretab-cond+sy-index(3) = 'and' or

                     wheretab-cond+sy-index(3) = 'AND'.

                    wheretab-cond+sy-index(3) = '). '.

                    modify wheretab.

                    exit.

                  endif.

                enddo.

              endif.

            endif.

            exit.

          endif.

        endif.

      enddo.

    endloop.

    select single * from (itab_zyglt391_exp-tabela) into <wa_dados>

                    where (wheretab).

  endif.

 

  if sy-subrc = 0 and not <wa_dados> is initial.

 

    call function 'QF05_RANDOM'

         importing

              ran_number = v_random.

 

    v_indice_c     = v_random.

    condense v_indice_c.

    v_indice+22(22) = v_indice_c.

 

    get time stamp field v_time.

    v_indice_c = v_time.

    condense v_indice_c.

 

    concatenate v_indice_c v_indice+22(22) into v_indice.

 

    while v_indice = v_indice_ant.

      call function 'QF05_RANDOM'

           importing

                ran_number = v_random.

 

      v_indice_c     = v_random.

      condense v_indice_c.

      v_indice+22(22) = v_indice_c.

 

      get time stamp field v_time.

      v_indice_c = v_time.

      condense v_indice_c.

 

      concatenate v_indice_c v_indice+22(22) into v_indice.

    endwhile.

 

    export wa_data  from <wa_dados>

           to database /pws/zyglt389(ce)

           id v_indice.

 

    v_indice_ant = v_indice.

 

  endif.

 

  check not v_indice is initial.

 

  /pws/zyglt390-data           = v_datum.

  /pws/zyglt390-hora           = v_uzeit.

  /pws/zyglt390-usuario        = sy-uname.

  /pws/zyglt390-programa       = i_progname.

  /pws/zyglt390-indice         = v_indice.

  /pws/zyglt390-tabela         = i_tabname.

  /pws/zyglt390-transacao      = i_tcode.

  /pws/zyglt390-identificador  = i_identificador.

  /pws/zyglt390-oper           = i_oper.

  /pws/zyglt390-tabversno      = v_tabversno.

 

  insert into /pws/zyglt390 values /pws/zyglt390.

  if v_save is initial.

    loop at itab_zyglt391_exp.

      insert into /pws/zyglt391 values itab_zyglt391_exp.

    endloop.

  endif.

 

endfunction.

* << Fim da inclusão

 

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

Modificações efetuadas em REPT /PWS/SAPLZYGLGF

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 001

 

Texto: (2 caracteres)

"''"

 

Comprimento máximo: 2

 

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

Modificações efetuadas em PARA /PWS/ZYGLP009

 

Criar ID Parâmetro SET/GET - /PWS/ZYGLP009 - GL - ID Trilha Auditoria(Funcionalidade)

 

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

Modificações efetuadas em PARA /PWS/ZYGLP010

 

Criar ID Parâmetro SET/GET - /PWS/ZYGLP010 - GL - ID Trilha Auditoria(Identificador)

 

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

Modificações efetuadas em REPS /PWS/LZYCBGF1TOP

 

* >> Início da inclusão:

function-pool /pws/zycbgf1               message-id sv.

include lsvimdat                                .

include /pws/lzycbgf1t00                        .

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/LZYGLGF4UXX

 

* >> Início da inclusão:

INCLUDE /PWS/LZYGLGF4U01.

INCLUDE /PWS/LZYGLGF4U02.

INCLUDE /PWS/LZYGLGF4U03.

INCLUDE /PWS/LZYGLGF4U04.

INCLUDE /PWS/LZYGLGF4U05.

INCLUDE /PWS/LZYGLGF4U06.

INCLUDE /PWS/LZYGLGF4U07.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/LZYGLGFUXX

 

* >> Início da inclusão:

INCLUDE /PWS/LZYGLGFU01.

INCLUDE /PWS/LZYGLGFU02.

INCLUDE /PWS/LZYGLGFU03.

INCLUDE /PWS/LZYGLGFU04.

INCLUDE /PWS/LZYGLGFU05.

INCLUDE /PWS/LZYGLGFU06.

INCLUDE /PWS/LZYGLGFU07.

INCLUDE /PWS/LZYGLGFU08.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYGL007I01

 

...

         exceptions

              others        = 0.                            "#EC *

    if v_resposta eq 'J'.

      move: sy-uname to wa_zyglt009-user_ultmodif,

            sy-datum to wa_zyglt009-data_ultmodif,

            sy-uzeit to wa_zyglt009-hora_ultmodif.

      modify /pws/zycbt007 from wa_zycbt007.

      modify /pws/zycbt089 from wa_zycbt089.

      modify /pws/zyglt009 from wa_zyglt009.

      commit work.

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

      MOVE-CORRESPONDING wa_zycbt007 TO /pws/zycbt007.

      PERFORM carrega_log USING '/PWS/ZYCBT007'

                                'U'

                                sy-tcode

                                '/PWS/SAPMZYGL007'

                                ' '.

      MOVE-CORRESPONDING wa_zycbt089 TO /pws/zycbt089.

      PERFORM carrega_log USING '/PWS/ZYCBT089'

                                'U'

                                sy-tcode

                                '/PWS/SAPMZYGL007'

                                ' '.

      MOVE-CORRESPONDING wa_zyglt009 TO /pws/zyglt009.

      PERFORM carrega_log USING '/PWS/ZYGLT009'

                                'U'

                                sy-tcode

                                '/PWS/SAPMZYGL007'

                                ' '.

* << Fim da inclusão

      perform unlock_record.

      leave program.

    elseif v_resposta eq 'N'.

      perform unlock_record.

      leave program.

    endif.

  else.

    perform unlock_record.

    leave program.

  endif.

...

 

...

               into /pws/zycbt007-bukrs

               where bukrs eq wa_zycbt007-bukrs.

        wa_zycbt007-bukrs = /pws/zycbt007-bukrs.

        wa_zyglt009-bukrs = /pws/zycbt007-bukrs.

        wa_zycbt089-bukrs = /pws/zycbt007-bukrs.

        if /pws/zycbt007-bukrs eq wa_zycbt007-bukrs.

          modify /pws/zycbt007 from wa_zycbt007.

          modify /pws/zyglt009 from wa_zyglt009.

          modify /pws/zycbt089 from wa_zycbt089.

          commit work.

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

          MOVE-CORRESPONDING wa_zycbt007 TO /pws/zycbt007.

          PERFORM carrega_log USING '/PWS/ZYCBT007'

                                    'U'

                                    sy-tcode

                                    '/PWS/SAPMZYGL007'

                                    ' '.

          MOVE-CORRESPONDING wa_zycbt089 TO /pws/zycbt089.

          PERFORM carrega_log USING '/PWS/ZYCBT089'

                                    'U'

                                    sy-tcode

                                    '/PWS/SAPMZYGL007'

                                    ' '.

          MOVE-CORRESPONDING wa_zyglt009 TO /pws/zyglt009.

          PERFORM carrega_log USING '/PWS/ZYGLT009'

                                    'U'

                                    sy-tcode

                                    '/PWS/SAPMZYGL007'

                                    ' '.

* << Fim da inclusão

        else.

          insert /pws/zycbt007 from wa_zycbt007.

          insert /pws/zyglt009 from wa_zyglt009.

          insert /pws/zycbt089 from wa_zycbt089.

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

          MOVE-CORRESPONDING wa_zycbt007 TO /pws/zycbt007.

          PERFORM carrega_log USING '/PWS/ZYCBT007'

                                    'I'

                                    sy-tcode

                                    '/PWS/SAPMZYGL007'

                                    ' '.

          MOVE-CORRESPONDING wa_zycbt089 TO /pws/zycbt089.

          PERFORM carrega_log USING '/PWS/ZYCBT089'

                                    'I'

                                    sy-tcode

                                    '/PWS/SAPMZYGL007'

                                    ' '.

          MOVE-CORRESPONDING wa_zyglt009 TO /pws/zyglt009.

          PERFORM carrega_log USING '/PWS/ZYGLT009'

                                    'I'

                                    sy-tcode

                                    '/PWS/SAPMZYGL007'

                                    ' '.

* << Fim da inclusão

        endif.

        if sy-subrc eq 0.

          loop at screen.

            screen-input = 1.

            modify screen.

          endloop.

          message i015 with text-004.

          v_status = '0'.

        endif.

        wa_zycbt007_aux = wa_zycbt007.

...

 

...

          if v_resposta eq 'J'.

            move: sy-uname to wa_zyglt009-user_ultmodif,

                  sy-datum to wa_zyglt009-data_ultmodif,

                  sy-uzeit to wa_zyglt009-hora_ultmodif.

            perform nome_usuario.

            wa_zyglt009-user_save = v_name.

            modify /pws/zycbt007 from wa_zycbt007.

            modify /pws/zycbt089 from wa_zycbt089.

            modify /pws/zyglt009 from wa_zyglt009.

            commit work.

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

            MOVE-CORRESPONDING wa_zycbt007 TO /pws/zycbt007.

            PERFORM carrega_log USING '/PWS/ZYCBT007'

                                      'U'

                                      sy-tcode

                                      '/PWS/SAPMZYGL007'

                                      ' '.

            MOVE-CORRESPONDING wa_zycbt089 TO /pws/zycbt089.

            PERFORM carrega_log USING '/PWS/ZYCBT089'

                                      'U'

                                      sy-tcode

                                      '/PWS/SAPMZYGL007'

                                      ' '.

            MOVE-CORRESPONDING wa_zyglt009 TO /pws/zyglt009.

            PERFORM carrega_log USING '/PWS/ZYGLT009'

                                      'U'

                                      sy-tcode

                                      '/PWS/SAPMZYGL007'

                                      ' '.

* << Fim da inclusão

            wa_zycbt007_aux = wa_zycbt007.

            wa_zyglt009_aux = wa_zyglt009.

            wa_zycbt089_aux = wa_zycbt089.

            v_status = '0'.

          elseif v_resposta eq 'N'.

            perform nome_usuario.

            wa_zyglt009-user_modif = v_name.

            wa_zycbt007 = wa_zycbt007_aux.

            wa_zycbt089 = wa_zycbt089_aux.

            wa_zyglt009 = wa_zyglt009_aux.

...

 

...

                v_status = '0'.

              when 2.

                message a015 with text-003.

            endcase.

          endif.

        else.

          message i120 with text-006.

          v_status = '0'.

        endif.

      endif.

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

    WHEN 'LOG_TRILHA'.

      PERFORM log_trilha USING SY-REPID

                               ' '

                               ' '.

* << Fim da inclusão

  endcase.

  clear ok_code.

endmodule.

module move_dados_pai input.

  move: /pws/zycbt007 to wa_zycbt007,

        /pws/zyglt009 to wa_zyglt009,

        /pws/zycbt089 to wa_zycbt089.

endmodule.

module set_fdtdoc input.

  if v_fdtdoc1 = 'X'.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYGL007O01

 

module status_0100 output.

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

  DATA: v_trilha_auditoria TYPE /pws/zyglt009-trilha_auditoria.

* << Fim da inclusão

  set titlebar '001'.

  if v_status eq '0' and not v_flag eq 1.

    set pf-status '0001' excluding 'SAVE'.

  elseif not v_flag eq 1.

    set pf-status '0001'.

  elseif sy-ucomm eq 'SAVE'.

    set pf-status '0001' excluding 'SAVE'.

  elseif sy-ucomm eq 'ALT'.

    set pf-status '0001'.

    loop at screen.

      if not screen-name eq 'TAB_GERAL'  and

         not screen-name eq 'TAB_EXP'    and

         not screen-name eq 'TAB_IMP'    and

         not screen-name eq 'TAB_EMPRESA'.

        screen-input = '0'.

        modify screen.

      endif.

    endloop.

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

  ENDIF.

  CLEAR v_trilha_auditoria.

  SELECT trilha_auditoria FROM /pws/zyglt009

         INTO v_trilha_auditoria

         UP TO 1 ROWS

         WHERE bukrs = space.

  ENDSELECT.

  IF v_trilha_auditoria IS INITIAL.

    SET PF-STATUS '0001' EXCLUDING 'LOG_TRILHA'.

* << Fim da inclusão

  endif.

endmodule.

module set_screen output.

  loop at screen.

    if screen-group1 ne 'GP1'.

      screen-input = v_status.

    endif.

    if screen-group1 eq 'INV'.

      screen-active = 0.

    endif.

...

 

 

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

Modificações efetuadas em REPS /PWS/SAPMZYGL007

 

INCLUDE /pws/mzygl007top.

INCLUDE /pws/mzygl007o01.

INCLUDE /pws/mzygl007i01.

INCLUDE /pws/mzygl007f01.

INCLUDE /pws/mzygl007f02.

* >> Início da inclusão:

include /pws/zygllog.

* << Fim da inclusão

 

 

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

Modificações efetuadas em REPS /PWS/ZYGLLOG

 

CRIAR O PROGRAMA /PWS/ZYGLLOG

 

CARACTERÍSTICAS DO PROGRAMA:

TÍTULO: Include /PWS/ZYGLLOG - Trilha Auditoria pw.CE

CATEGORIA: Programa Include

CL. DESENVOLVIMENTO: /PWS/ZYGL

 

TEXTO FONTE:

 

* >> Início da inclusão:

      form carrega_log using  p_tabname       type any

                              p_oper          type any

                              p_tcode         type any

                              p_progname      type any

                              p_identificador type any.

 

        data: v_linhas         type i,

              v_tab_campo(50)  type c,

              v_progname       type progname,

              v_tcode          type tcode,

              v_init           type i,

              v_keys           type i,

              v_campo_tab(300) type c.

 

        statics v_auditoria

                        type /pws/zyglt009-trilha_auditoria value 'S'.

 

        statics: begin of itab_dd03l occurs 0.

                include structure dd03l.

        statics: end of itab_dd03l.

 

        data: begin of itab_condicoes occurs 0.

                include structure /pws/zycbe033.

        data: end of itab_condicoes.

 

        check p_oper ne 'X'.

 

        if v_auditoria = 'S'.

          select single trilha_auditoria

            from /pws/zyglt009

            into v_auditoria

            where bukrs = '    '.

        endif.

 

        if p_tabname ne '/PWS/ZYGLT009'.

          check v_auditoria = 'X'.

        endif.

 

        field-symbols: <campo_tab> type any.

 

        refresh: itab_condicoes.

 

        read table itab_dd03l with key tabname = p_tabname.

        if sy-subrc ne 0.

          refresh itab_dd03l.

          select * from dd03l into table itab_dd03l

                   where tabname   eq p_tabname

                         order by position.

        endif.

 

        clear: v_keys,

               v_init.

 

        loop at itab_dd03l where fieldname ne 'MANDT'

                             and keyflag   eq 'X'.

 

          v_keys = v_keys + 1.

 

          concatenate itab_dd03l-tabname '-' itab_dd03l-fieldname

                        into v_tab_campo.

 

          assign (v_tab_campo) to <campo_tab>.

 

          check <campo_tab> is assigned.

 

          if <campo_tab> is initial.

            v_init = v_init + 1.

          endif.

 

          if <campo_tab> ca ''''.

            translate <campo_tab> using '''%'.

          endif.

 

          if sy-tabix = 2.

            concatenate '(' itab_dd03l-fieldname

                         into itab_condicoes-cpochv separated by space.

          else.

            itab_condicoes-cpochv = itab_dd03l-fieldname.

          endif.

 

          if <campo_tab> ca '%'.

            concatenate itab_condicoes-cpochv 'LIKE' ''''

                        into itab_condicoes-cpochv separated by space.

          else.

            concatenate itab_condicoes-cpochv '=' ''''

                        into itab_condicoes-cpochv separated by space.

          endif.

          v_campo_tab = <campo_tab>.

          condense v_campo_tab.

          concatenate itab_condicoes-cpochv v_campo_tab

                      '''' into itab_condicoes-cpochv.

 

          v_linhas = sy-tabix + 1.

          read table itab_dd03l index v_linhas.

          if itab_dd03l-keyflag is initial or sy-subrc ne 0.

            concatenate itab_condicoes-cpochv ' ).'

                                       into itab_condicoes-cpochv.

          else.

            concatenate itab_condicoes-cpochv 'and'

                        into itab_condicoes-cpochv separated by space.

          endif.

 

          append itab_condicoes.

 

        endloop.

 

        check v_init =< v_keys.

 

        if p_progname is initial.

          v_progname = sy-repid.

        else.

          v_progname = p_progname.

        endif.

 

        if p_tcode is initial.

          v_tcode = sy-tcode.

        else.

          v_tcode = p_tcode.

        endif.

 

        call function '/PWS/ZYGL_TRILHA_AUDITORIA'

             exporting

                  i_progname      = v_progname

                  i_tabname       = p_tabname

                  i_oper          = p_oper

                  i_tcode         = v_tcode

                  i_identificador = p_identificador

             tables

                  t_condicoes     = itab_condicoes

                  t_estrutura     = itab_dd03l.

 

      endform.                    " carrega_log

 

      form log_trilha using p_funcionalidade type any

                            p_identificador  type any

                            p_transacao      type any.

 

        data: begin of itab_tstc occurs 0.

                include structure tstc.

        data: end of itab_tstc.

 

        if p_transacao = 'X'.

          select * from tstc into table itab_tstc

                   where pgmna = p_funcionalidade.    "#EC CI_SGLSELECT

        else.

          refresh itab_tstc[].

        endif.

 

        set parameter id '/PWS/ZYGLP009' field p_funcionalidade.

        set parameter id '/PWS/ZYGLP010' field p_identificador.

        export itab_tstc[] to memory id 'TRANSACOES'.

        submit /pws/zyglr042 and return.

 

      endform.                    " log_trilha

* << Fim da inclusão

 

 

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

Modificações efetuadas em REPS /PWS/ZYGLR042

 

CRIAR O PROGRAMA /PWS/ZYGLR042

 

CARACTERÍSTICAS DO PROGRAMA:

TÍTULO: LOG de Alterações pw.CE

CATEGORIA: Programa Executável

CL. DESENVOLVIMENTO: /PWS/ZYGL

 

TEXTO FONTE:

* >> Início da inclusão:

*-----------------------------------------------------------------------

* PROCWORK Software

* Produto  : Pw.CE - /PWS/ZYGLR042

* Módulo   : CB - Câmbio Exportação

* Descrição: Trilha para Auditoria

* Help Desk: (0XX11) 5504-0170

*-----------------------------------------------------------------------

* ESTE PROGRAMA NÃO DEVE SER ALTERADO SEM PRÉVIA CONSULTA

*-----------------------------------------------------------------------

* Chamado      Data         Descrição

*-----------------------------------------------------------------------

* 027723       13/09/2011   Codificação inicial

*-----------------------------------------------------------------------

report /pws/zyglr042 no standard page heading

       line-size  144

       message-id /pws/zycbm.

 

tables: dd03l, usr02, /pws/zyglt390.

 

field-symbols: <wa_dados>  type any.

field-symbols: <campo_tab> type any.

 

data: dy_line          type ref  to data.

data: v_indice         type /pws/zyglt389-indice.

data: v_campo_tab(300) type c.

 

data: begin of itab_zyglt390 occurs 0.

        include structure /pws/zyglt390.

data: end of itab_zyglt390.

 

data: begin of itab_zyglt391 occurs 0.

        include structure /pws/zyglt391.

data: end of itab_zyglt391.

 

data: begin of itab_zyglt390_aux occurs 0.

        include structure /pws/zyglt390.

data: chave(200)  type c,

      status(21)  type c,

      line        type sy-lilli.

data: end of itab_zyglt390_aux.

 

data: itab_zyglt390_print like itab_zyglt390_aux

                                              occurs 0 with header line.

 

data: begin of itab_dd02t occurs 0.

        include structure dd02t.

data: end of itab_dd02t.

 

data: begin of itab_dd04t occurs 0.

        include structure dd04t.

data: end of itab_dd04t.

 

data: begin of itab_trdirt occurs 0.

        include structure trdirt.

data: end of itab_trdirt.

 

data: begin of itab_icon occurs 0.

        include structure icon.

data: end of itab_icon.

 

data: begin of itab_tstc occurs 0.

        include structure tstc.

data: end of itab_tstc.

 

data: begin of itab_tstct occurs 0.

        include structure tstct.

data: end of itab_tstct.

 

data: begin of itab_print_tab occurs 0,

  campo       type /pws/zyglt391-campo,

  rollname    type /pws/zyglt391-rollname,

  key         type /pws/zyglt391-keyflag,

  valor(3500) type c,

end of itab_print_tab.

 

data: begin of itab_alteracoes occurs 0,

        indice          type /pws/zyglt390-indice,

        tabela          type dd03l-tabname,

        campo           type dd03l-fieldname,

        rollname        type dd03l-rollname,

        old_value(3500) type c,

        new_value(3500) type c,

      end of itab_alteracoes.

 

data: begin of itab_valores occurs 0,

        indice         type /pws/zyglt390-indice,

        campo          type dd03l-fieldname,

        valor(3500)    type c,

      end of itab_valores.

 

data: itab_valores2 like itab_valores occurs 0 with header line.

 

data: wa_usr01 type usr01,

      wa_zyglt390     like itab_zyglt390,

      wa_zyglt390_aux like itab_zyglt390_print.

 

data: v_data(10)           type c,

      v_hora(8)            type c,

      v_programa           type /pws/zyglt390-programa,

      v_identificador      type /pws/zyglt390-identificador,

      v_funcionalidade     type /pws/zyglt390-programa,

      v_tabela             type /pws/zyglt390-tabela,

      v_tabversno          type /pws/zyglt390-tabversno,

      v_chave(200)         type c,

      v_oper               type /pws/zyglt390-oper,

      v_modifica           type c,

      v_campo(40)          type c,

      v_tam_chv_aux(3)     type n,

      v_pos3               type i,

      v_data_line_sel(388),

      v_date               type datum,

      v_time               type uzeit,

      v_key(250)           type c,

      v_tabix              type sy-tabix,

      v_valor(3500)        type c,

      v_tabela_print(80)   type c,

      v_transacao_print(52) type c,

      v_programa_print(83) type c,

      v_print              type c,

      v_imp_cabecalho      type c,

      v_estrutura          type string,

      v_identificador_dif  type /pws/zyglt390-identificador,

      v_chave_dif          type c,

      v_programa_dif       type c,

      v_carrega_valores1   type c,

      v_carrega_valores2   type c,

      v_define_chave       type c,

      v_print_line         type c,

      v_first_reg          type c,

      v_line               type sy-lilli.

 

selection-screen begin of block restri with frame title text-002.

select-options: programa  for /pws/zyglt390-programa

                              matchcode object /pws/zygla322,

                identifi  for /pws/zyglt390-identificador,

                usuario   for usr02-bname,

                tabela    for /pws/zyglt390-tabela

                              matchcode object /pws/zygla323,

                transaca  for /pws/zyglt390-transacao,

                status    for /pws/zyglt390-oper.

selection-screen end of block restri.

 

selection-screen skip.

 

selection-screen begin of block interv with frame title text-001.

select-options: data     for sy-datum,

                hora     for sy-uzeit.

parameter:      p_decres type xfeld.

selection-screen end of block interv.

 

set pf-status '0100'.

 

at line-selection.

  perform exibe_dados.

 

at user-command.

  case sy-ucomm.

    when 'BACK' or 'OK' or 'CANCEL'.

      leave to screen 0.

    when  'EXIT'.

      leave program.

  endcase.

 

 

start-of-selection.

 

  authority-check object 'S_TCODE' id 'TCD'  field '/PWS/ZYGLR042'.

  if sy-subrc ne 0.

    message e261(sf) with '/PWS/ZYGLR042'.

  endif.

 

  perform seleciona_dados.

  check sy-subrc = 0.

 

  perform carrega_chave.

  perform processa_registros.

  perform imprime_dados.

 

end-of-selection.

form verifica_alteracoes using    p_tabela

                                  p_tabversno

                         changing p_modifica.

 

  check not itab_valores[]  is initial and

        not itab_valores2[] is initial.

 

  loop at itab_valores2.

 

    clear itab_valores.

    read table itab_valores with key campo = itab_valores2-campo.

    if sy-subrc eq 0 and itab_valores-valor ne itab_valores2-valor.

      itab_alteracoes-indice    = itab_valores2-indice.

      itab_alteracoes-tabela    = p_tabela.

      itab_alteracoes-campo     = itab_valores2-campo.

      itab_alteracoes-old_value = itab_valores-valor.

      itab_alteracoes-new_value = itab_valores2-valor.

      read table itab_zyglt391 with key tabela    = p_tabela

                                        campo     = itab_valores2-campo

                                        tabversno = p_tabversno.

      if sy-subrc = 0.

        itab_alteracoes-rollname = itab_zyglt391-rollname.

      endif.

      append itab_alteracoes.

      p_modifica = 'X'.

    endif.

 

  endloop.

 

endform.                    " verifica_alteracoes

form exibe_dados.

 

  clear itab_zyglt390_print.

 

  read table itab_zyglt390_print with key line = sy-lilli.

  check sy-subrc = 0.

  call screen 0100 starting at 55 10 ending at 155 30.

 

endform.                    " exibe_dados

module exibe_dados output.

 

  leave to list-processing.

  set titlebar 'TLISTA'.

  set pf-status 'LISTA'.

  suppress dialog.

 

  write: itab_zyglt390_print-data to v_data.

  write: itab_zyglt390_print-hora to v_hora.

 

  format color col_group intensified on.

  write: 1 text-007.

  read table itab_trdirt with key

                                name = itab_zyglt390_print-programa.

  if sy-subrc = 0.

    concatenate itab_zyglt390_print-programa '-' itab_trdirt-text

                into v_programa_print separated by space.

    write: 17 v_programa_print.

  else.

    write: 17 itab_zyglt390_print-programa.

  endif.

  write: 100 space.

  format color col_background intensified on.

  skip.

  write: /1 text-020.

  format color col_background intensified off.

  write: 15 v_data.

  format color col_background intensified on.

  write: 38 text-021.

  format color col_background intensified off.

  write: 49 v_hora.

  format color col_background intensified on.

  write: 68 text-024, 75 space, 76 space.

 

  clear itab_icon.

  if itab_zyglt390_print-status eq text-003.

    read table itab_icon with key name = 'ICON_GREEN_LIGHT'.

  elseif itab_zyglt390_print-status eq text-005.

    read table itab_icon with key name = 'ICON_YELLOW_LIGHT'.

  elseif itab_zyglt390_print-status eq text-006.

    read table itab_icon with key name = 'ICON_RED_LIGHT'.

  endif.

 

  write: 77 itab_zyglt390_print-status, 97 itab_icon-id as icon.

 

  format color col_background inverse off intensified on.

  write: /68 text-022.

  format color col_negative inverse.

  write: 77 itab_zyglt390_print-usuario.

 

  format color col_background intensified on inverse off.

  write: /1 text-023.

  write: 11(14) space.

  format color col_normal intensified off.

  clear itab_tstct.

  read table itab_tstct with key tcode = itab_zyglt390_print-transacao.

  concatenate itab_zyglt390_print-transacao '-' itab_tstct-ttext

              into v_transacao_print separated by space.

  write: 15(100) v_transacao_print.

  format color col_background intensified off.

  write: 101(130) space.

  skip.

 

  format color col_background intensified on.

  write: /1 text-018.

  format color col_background intensified off.

  clear itab_dd02t.

  read table itab_dd02t with key tabname = itab_zyglt390_print-tabela.

  concatenate itab_zyglt390_print-tabela '-' itab_dd02t-ddtext

              into v_tabela_print separated by space.

  write: 15 v_tabela_print.

  skip.

 

  clear v_tabix.

  loop at itab_alteracoes where indice = itab_zyglt390_print-indice.

 

    v_tabix = v_tabix + 1.

 

    if v_tabix = 1.

      format color col_background intensified on.

      write: /1 text-025.

      format color col_background intensified off.

      write: 15 itab_zyglt390_print-chave.

      skip.

 

      write: /1(101) sy-uline.

    else.

      write: /1 sy-vline, 101, sy-vline, 1(101) sy-uline.

    endif.

 

    condense: itab_alteracoes-campo, itab_alteracoes-old_value,

              itab_alteracoes-new_value no-gaps.

 

    format color col_key intensified on.

    write: /1 sy-vline, 2 text-019, 13 itab_alteracoes-campo,

           101 sy-vline,

           /1 sy-vline, 2 text-030.

    read table itab_dd04t with key

                              rollname = itab_alteracoes-rollname.

    if sy-subrc = 0.

      write: 13 itab_dd04t-ddtext.

    endif.

 

    write: 101 sy-vline,

           /1(101) sy-uline.

    format color col_normal intensified off.

    write: /1 sy-vline, 2 text-016.

    write: 16 itab_alteracoes-old_value(31), 52 sy-vline.

    format color col_total.

    write: 53 text-017, 65 itab_alteracoes-new_value(31), 101 sy-vline.

    write: /1(101) sy-uline.

 

  endloop.

 

  check sy-subrc ne 0.

 

  write: /1(101) sy-uline.

  format color col_key intensified on.

  write: /1 sy-vline, 2 text-026, 16 sy-vline, 17 text-029, 46 sy-vline,

             47 text-027, 101 sy-vline.

  write: /1(101) sy-uline.

 

  refresh itab_print_tab.

  move-corresponding itab_zyglt390_print to wa_zyglt390_aux.

  v_print_line = 'X'.

  clear: v_define_chave, v_carrega_valores1, v_carrega_valores2.

  export wa_zyglt390_aux     to memory id 'ZYGLT390_AUX'.

  export itab_zyglt391[]     to memory id 'ZYGLT391'.

  export v_define_chave      to memory id 'DEFINE_CHAVE'.

  export v_carrega_valores1  to memory id 'CARREGA_VALORES1'.

  export v_carrega_valores2  to memory id 'CARREGA_VALORES2'.

  export v_print_line        to memory id 'PRINT_LINE'.

  submit /pws/zyglr044 and return.

  import itab_valores[]    from memory id 'VALORES1'.

  import itab_print_tab[]  from memory id 'PRINT_TAB'.

 

  loop at itab_print_tab.

    format color col_key intensified on.

    write: /1 sy-vline, 2 itab_print_tab-campo, 16 sy-vline.

    read table itab_dd04t with key rollname = itab_print_tab-rollname.

    if sy-subrc = 0.

      write: 17 itab_dd04t-ddtext.

    endif.

    write: 46 sy-vline.

    if not itab_print_tab-key is initial.

      format color col_key intensified on.

    else.

      format color col_normal intensified off.

    endif.

    write: 47 itab_print_tab-valor(54), 101 sy-vline.

 

  endloop.

  write: /1(101) sy-uline.

 

endmodule.                 " exibe_dados  OUTPUT

module status_0100 output.

  set pf-status 'LISTA'.

endmodule.                 " STATUS_0100  OUTPUT

form seleciona_dados.

 

  get parameter id '/PWS/ZYGLP009' field v_funcionalidade.

  get parameter id '/PWS/ZYGLP010' field v_identificador.

  import itab_tstc[] from memory id 'TRANSACOES'.

 

  if not v_funcionalidade is initial and

         itab_tstc[]      is initial.

    select * from /pws/zyglt390 into table itab_zyglt390

             where identificador = v_identificador

               and programa      = v_funcionalidade.

    p_decres = 'X'.

  elseif not v_funcionalidade is initial and

         not itab_tstc[]      is initial.

    select * from /pws/zyglt390 into table itab_zyglt390

             for all entries in itab_tstc

             where identificador =  v_identificador

               and transacao     = itab_tstc-tcode.

    p_decres = 'X'.

  else.

    select * from /pws/zyglt390 into table itab_zyglt390

             where data          in data

               and hora          in hora

               and usuario       in usuario

               and tabela        in tabela

               and identificador in identifi

               and programa      in programa

               and transacao     in transaca.

  endif.

  if sy-subrc = 0.

    clear: v_funcionalidade, v_identificador.

    refresh itab_tstc.

    set parameter id '/PWS/ZYGLP009' field v_funcionalidade.

    set parameter id '/PWS/ZYGLP010' field v_identificador.

    export itab_tstc[] to memory id 'TRANSACOES'.

 

    if not itab_zyglt390[] is initial.

      select * from /pws/zyglt391 into table itab_zyglt391

               for all entries in itab_zyglt390

               where tabela    eq itab_zyglt390-tabela.

 

      if not itab_zyglt391[] is initial.

        select * from dd02t into table itab_dd02t

                 for all entries  in itab_zyglt391

                 where tabname    eq itab_zyglt391-tabela

                   and ddlanguage eq sy-langu.

 

        select * from dd04t into table itab_dd04t

                 for all entries in itab_zyglt391

                 where rollname  eq itab_zyglt391-rollname

                   and ddlanguage eq sy-langu.

      endif.

 

      select * from icon into table itab_icon.

 

      select * from trdirt into table itab_trdirt

               for all entries in itab_zyglt390

               where name  eq itab_zyglt390-programa

                 and sprsl eq sy-langu.

 

      select * from tstct into table itab_tstct

               for all entries in itab_zyglt390

               where sprsl eq sy-langu

                 and tcode eq itab_zyglt390-transacao.

 

      clear wa_usr01.

      select single * from usr01 into wa_usr01 where bname = sy-uname.

    else.

      message i015 with text-028.

      exit.

    endif.

  else.

    clear: v_funcionalidade, v_identificador.

    refresh itab_tstc.

    set parameter id '/PWS/ZYGLP009' field v_funcionalidade.

    set parameter id '/PWS/ZYGLP010' field v_identificador.

    export itab_tstc[] to memory id 'TRANSACOES'.

 

    message i015 with text-028.

    exit.

  endif.

 

endform.                    " seleciona_dados

form carrega_chave.

 

  sort itab_zyglt390 by programa tabela data hora.

 

  refresh itab_zyglt390_aux.

  loop at itab_zyglt390 where oper in status.

    loop at itab_zyglt391 where tabela    = itab_zyglt390-tabela

                            and tabversno > itab_zyglt390-tabversno.

      exit.

    endloop.

    if sy-subrc ne 0.

      if not ( itab_zyglt390-tabela    eq v_tabela and

               itab_zyglt390-tabversno eq v_tabversno and

               <wa_dados>              is assigned ).

        create data dy_line type (itab_zyglt390-tabela).

        assign dy_line->* to  <wa_dados>.

        check <wa_dados> is assigned.

      endif.

      v_indice = itab_zyglt390-indice.

 

      import wa_data to <wa_dados>

             from database /pws/zyglt389(ce)

             id v_indice.

 

      clear: itab_zyglt390_aux.

      loop at itab_zyglt391 where tabela    eq itab_zyglt390-tabela

                              and keyflag   eq 'X'

                              and campo     ne 'MANDT'

                              and tabversno eq itab_zyglt390-tabversno.

 

        move-corresponding itab_zyglt390 to itab_zyglt390_aux.

 

        assign component itab_zyglt391-campo

                           of structure <wa_dados> to <campo_tab>.

 

        check <campo_tab> is assigned.

 

        v_campo_tab = <campo_tab>.

        condense v_campo_tab.

        if itab_zyglt390_aux-chave is initial.

          concatenate itab_zyglt390_aux-chave v_campo_tab

                 into itab_zyglt390_aux-chave.

        else.

          concatenate itab_zyglt390_aux-chave v_campo_tab

                 into itab_zyglt390_aux-chave separated by space.

        endif.

        if itab_zyglt390-oper = 'I'.

          itab_zyglt390_aux-status = text-003.

        elseif itab_zyglt390-oper = 'D'.

          itab_zyglt390_aux-status = text-006.

        endif.

      endloop.

    else.

      move-corresponding itab_zyglt390 to wa_zyglt390.

      v_define_chave = 'X'.

      clear: v_carrega_valores1, v_carrega_valores2, v_print_line.

      export wa_zyglt390         to memory id 'ZYGLT390'.

      export itab_zyglt391[]     to memory id 'ZYGLT391'.

      export v_define_chave      to memory id 'DEFINE_CHAVE'.

      export v_carrega_valores1  to memory id 'CARREGA_VALORES1'.

      export v_carrega_valores2  to memory id 'CARREGA_VALORES2'.

      export v_print_line        to memory id 'PRINT_LINE'.

      submit /pws/zyglr044 and return.

      import wa_zyglt390_aux   from memory id 'ZYGLT390_AUX'.

      move-corresponding wa_zyglt390_aux to itab_zyglt390_aux.

    endif.

    append itab_zyglt390_aux.

 

    v_tabela    = itab_zyglt390-tabela.

    v_tabversno = itab_zyglt390-tabversno.

 

  endloop.

 

endform.                    " carrega_chave

form processa_registros.

 

  clear: v_programa, v_identificador, itab_valores, itab_valores2,

         v_print, v_imp_cabecalho, v_tabela, v_chave.

 

  refresh: itab_valores, itab_valores2.

 

  sort itab_zyglt390_aux by programa identificador tabela chave

                            indice(22) data hora.

 

  loop at itab_zyglt390_aux.

 

    clear v_first_reg.

 

    if v_programa       ne itab_zyglt390_aux-programa      or

       v_identificador  ne itab_zyglt390_aux-identificador or

       v_tabela         ne itab_zyglt390_aux-tabela        or

       v_chave          ne itab_zyglt390_aux-chave.

      clear:   itab_valores, itab_valores2.

      refresh: itab_valores, itab_valores2.

      v_first_reg = 'X'.

    elseif v_programa       eq itab_zyglt390_aux-programa      and

           v_identificador  eq itab_zyglt390_aux-identificador and

           v_tabela         eq itab_zyglt390_aux-tabela        and

           v_chave          eq itab_zyglt390_aux-chave         and

           v_oper           eq 'D'.

      clear:   itab_valores, itab_valores2.

      refresh: itab_valores, itab_valores2.

      v_first_reg = 'X'.

    endif.

 

    clear v_modifica.

    if itab_zyglt390_aux-oper ne 'I' and

       itab_zyglt390_aux-oper ne 'D'.

      if not itab_valores[] is initial.

        loop at itab_zyglt391

                          where tabela    = itab_zyglt390_aux-tabela

                            and tabversno > itab_zyglt390_aux-tabversno.

          exit.

        endloop.

        if sy-subrc ne 0.

          if not ( itab_zyglt390-tabela    eq v_tabela and

                   itab_zyglt390-tabversno eq v_tabversno and

                   <wa_dados>              is assigned ).

            create data dy_line type (itab_zyglt390_aux-tabela).

            assign dy_line->* to  <wa_dados>.

 

            check <wa_dados> is assigned.

          endif.

          v_indice = itab_zyglt390_aux-indice.

 

          import wa_data  to <wa_dados>

                 from database /pws/zyglt389(ce)

                 id v_indice.

          perform carrega_valores using v_indice

                                        itab_zyglt390_aux-tabela

                                        <wa_dados>

                                        '2'

                                        itab_zyglt390_aux-tabversno.

        else.

          move-corresponding itab_zyglt390_aux to wa_zyglt390_aux.

          v_carrega_valores2 = 'X'.

          clear: v_define_chave, v_carrega_valores1, v_print_line.

          export wa_zyglt390_aux     to memory id 'ZYGLT390_AUX'.

          export itab_zyglt391[]     to memory id 'ZYGLT391'.

          export v_define_chave      to memory id 'DEFINE_CHAVE'.

          export v_carrega_valores1  to memory id 'CARREGA_VALORES1'.

          export v_carrega_valores2  to memory id 'CARREGA_VALORES2'.

          export v_print_line        to memory id 'PRINT_LINE'.

          submit /pws/zyglr044 and return.

          import itab_valores2[]   from memory id 'VALORES2'.

        endif.

 

        perform verifica_alteracoes using itab_zyglt390_aux-tabela

                                          itab_zyglt390_aux-tabversno

                                    changing v_modifica.

 

        if not v_modifica is initial.

          itab_zyglt390_aux-status = text-005.

        endif.

      endif.

    endif.

    modify itab_zyglt390_aux.

 

    if itab_valores2[] is initial.

      loop at itab_zyglt391

                        where tabela    = itab_zyglt390_aux-tabela

                          and tabversno > itab_zyglt390_aux-tabversno.

        exit.

      endloop.

      if sy-subrc ne 0.

        if not ( itab_zyglt390-tabela    eq v_tabela and

                 itab_zyglt390-tabversno eq v_tabversno and

                 <wa_dados>              is assigned ).

          create data dy_line type (itab_zyglt390_aux-tabela).

          assign dy_line->* to  <wa_dados>.

 

          check <wa_dados> is assigned.

        endif.

        v_indice = itab_zyglt390_aux-indice.

 

        import wa_data  to <wa_dados>

               from database /pws/zyglt389(ce)

               id v_indice.

        perform carrega_valores using v_indice

                                      itab_zyglt390_aux-tabela

                                      <wa_dados>

                                      '1'

                                      itab_zyglt390_aux-tabversno.

      else.

        move-corresponding itab_zyglt390_aux to wa_zyglt390_aux.

        v_carrega_valores1 = 'X'.

        clear: v_define_chave, v_carrega_valores2, v_print_line.

        export wa_zyglt390_aux     to memory id 'ZYGLT390_AUX'.

        export itab_zyglt391[]     to memory id 'ZYGLT391'.

        export v_define_chave      to memory id 'DEFINE_CHAVE'.

        export v_carrega_valores1  to memory id 'CARREGA_VALORES1'.

        export v_carrega_valores2  to memory id 'CARREGA_VALORES2'.

        export v_print_line        to memory id 'PRINT_LINE'.

        submit /pws/zyglr044 and return.

        import itab_valores[]    from memory id 'VALORES1'.

      endif.

    else.

      refresh itab_valores.

      loop at itab_valores2.

        move-corresponding itab_valores2 to itab_valores.

        append itab_valores.

      endloop.

      refresh itab_valores2.

    endif.

 

    if v_first_reg is initial.

      if itab_zyglt390_aux-oper ne 'I'     and

         itab_zyglt390_aux-oper ne 'D'     and

         v_modifica             is initial and

         not itab_valores[]     is initial.

 

        if v_programa ne itab_zyglt390_aux-programa.

          v_programa_dif = 'X'.

        endif.

        if v_identificador ne itab_zyglt390_aux-identificador.

          v_identificador_dif = 'X'.

        endif.

        if v_chave ne itab_zyglt390_aux-chave.

          v_chave_dif = 'X'.

        endif.

        v_programa       = itab_zyglt390_aux-programa.

        v_identificador  = itab_zyglt390_aux-identificador.

        v_tabela         = itab_zyglt390_aux-tabela.

        v_chave          = itab_zyglt390_aux-chave.

        v_oper           = itab_zyglt390_aux-oper.

        v_tabversno      = itab_zyglt390_aux-tabversno.

        continue.

      endif.

    endif.

 

    if not status[] is initial and

       not itab_zyglt390_aux-oper in status.

      v_programa       = itab_zyglt390_aux-programa.

      v_identificador  = itab_zyglt390_aux-identificador.

      v_tabela         = itab_zyglt390_aux-tabela.

      v_chave          = itab_zyglt390_aux-chave.

      v_oper           = itab_zyglt390_aux-oper.

      v_tabversno      = itab_zyglt390_aux-tabversno.

      continue.

    endif.

 

    if itab_zyglt390_aux-status is initial and

       itab_zyglt390_aux-oper = 'U'.

      itab_zyglt390_aux-status = text-005.

      modify itab_zyglt390_aux.

    endif.

 

    move-corresponding itab_zyglt390_aux to itab_zyglt390_print.

    append itab_zyglt390_print.

 

    v_programa       = itab_zyglt390_aux-programa.

    v_identificador  = itab_zyglt390_aux-identificador.

    v_tabela         = itab_zyglt390_aux-tabela.

    v_chave          = itab_zyglt390_aux-chave.

    v_oper           = itab_zyglt390_aux-oper.

    v_tabversno      = itab_zyglt390_aux-tabversno.

 

  endloop.

 

endform.                    " processa_registros

form imprime_dados.

 

  if p_decres = 'X'.

    sort itab_zyglt390_print by

         programa identificador ascending

         data descending

         hora descending

         tabela chave ascending.

  else.

    sort itab_zyglt390_print by programa identificador data hora

                                tabela chave.

  endif.

 

  clear: v_programa, v_programa_dif, v_imp_cabecalho, v_print,

         v_identificador, v_chave, v_chave_dif.

 

  clear v_line.

  loop at itab_zyglt390_print.

 

    if v_programa     ne itab_zyglt390_print-programa or

       v_programa_dif eq 'X'.

      v_imp_cabecalho = 'X'.

      clear: v_print, v_programa_dif.

    elseif v_identificador ne itab_zyglt390_print-identificador or

           v_identificador_dif = 'X'.

      if not v_print is initial.

        uline at /1(144).

        v_line = v_line + 1.

        clear: v_print, v_identificador_dif.

      endif.

    endif.

 

    if not status[] is initial and

       not itab_zyglt390_print-oper in status.

      v_programa       = itab_zyglt390_print-programa.

      v_identificador  = itab_zyglt390_print-identificador.

      continue.

    endif.

 

    if not v_imp_cabecalho is initial.

      uline at /1(144).

      v_line = v_line + 1.

      format color col_group inverse off intensified on.

      write: /1 sy-vline, 2 text-007,

             itab_zyglt390_print-programa.

      v_line = v_line + 1.

      read table itab_trdirt with key

                                  name = itab_zyglt390_print-programa.

      if sy-subrc = 0.

        write: itab_trdirt-text.

      endif.

      write at 144(1) sy-vline.

      uline at /1(144).

      v_line = v_line + 1.

      format color col_key.

      write: /1  sy-vline,  2   text-013, "Status

             9   sy-vline,  10  text-015, "Identificador

             30  sy-vline,  31  text-010, "Tabela

             49  sy-vline,  54  text-008, "Data

             62  sy-vline,  66  text-009, "Hora

             73  sy-vline,  74  text-011, "Usuário

             86  sy-vline,  87  text-014, "Transação

             107 sy-vline,  108 text-029, "Descrição

             144 sy-vline.

      v_line = v_line + 1.

      format color col_background.

      uline at /1(144).

      v_line = v_line + 1.

      clear v_imp_cabecalho.

    endif.

 

    v_print = 'X'.

 

    write itab_zyglt390_print-data to v_data.

    write itab_zyglt390_print-hora to v_hora.

 

    write: /1   sy-vline hotspot on.

    v_line = v_line + 1.

    format color col_key intensified off.

    if itab_zyglt390_print-status = text-003.

      read table itab_icon with key name = 'ICON_GREEN_LIGHT'.

      if sy-subrc = 0.

        write at 2 itab_icon-id as icon hotspot on.

      endif.

    elseif itab_zyglt390_print-status = text-006.

      read table itab_icon with key name = 'ICON_RED_LIGHT'.

      if sy-subrc = 0.

        write at 2 itab_icon-id as icon hotspot on.

      endif.

    elseif itab_zyglt390_print-status = text-005.

      read table itab_icon with key name = 'ICON_YELLOW_LIGHT'.

      if sy-subrc = 0.

        write at 2 itab_icon-id as icon hotspot on.

      endif.

    endif.

    write:  9   sy-vline,

            10  itab_zyglt390_print-identificador hotspot on,

            30  sy-vline hotspot off.

    format color col_normal inverse off intensified off.

 

    write:  31  itab_zyglt390_print-tabela, 49  sy-vline.

    write:  51  v_data,

            62  sy-vline,

            64  v_hora,

            73  sy-vline,

            74  itab_zyglt390_print-usuario,

            86  sy-vline,

            87  itab_zyglt390_print-transacao,

            107 sy-vline.

    read table itab_tstct with key

                               tcode = itab_zyglt390_print-transacao.

    if sy-subrc = 0.

      write: 108 itab_tstct-ttext, 144 sy-vline.

    else.

      write: 144 sy-vline.

    endif.

 

    v_programa       = itab_zyglt390_print-programa.

    v_identificador  = itab_zyglt390_print-identificador.

    itab_zyglt390_print-line = v_line.

    modify itab_zyglt390_print.

  endloop.

 

  if not v_print is initial.

    uline at /1(144).

  endif.

 

endform.                    " imprime_dados

form carrega_valores using p_indice

                           p_tabela

                           p_dados

                           p_wa

                           p_tabversno.

 

  loop at itab_zyglt391 where tabela    = p_tabela

                          and tabversno = p_tabversno.

 

    assign component itab_zyglt391-campo

                       of structure p_dados to <campo_tab>.

 

    check <campo_tab> is assigned.

 

    itab_valores-indice = p_indice.

    itab_valores-campo  = itab_zyglt391-campo.

    itab_valores-valor  = <campo_tab>.

 

    if itab_zyglt391-inttype = 'D' or

       itab_zyglt391-inttype = 'T'.

      write <campo_tab> to itab_valores-valor.

    elseif itab_zyglt391-decimals > 0.

      if wa_usr01-dcpfm = 'X'.

        if itab_valores-valor ca ','.

          translate itab_valores-valor using ', '.

        endif.

      elseif wa_usr01-dcpfm = 'Y'.

        translate itab_valores-valor using ', '.

      elseif wa_usr01-dcpfm is initial.

        if itab_valores-valor ca ','.

          translate itab_valores-valor using '. '.

        endif.

        translate itab_valores-valor   using ',.'.

      endif.

      condense itab_valores-valor.

    elseif  itab_zyglt391-inttype = 'N'.

      if not itab_valores-valor ca '123456789'.

        write itab_valores-valor to itab_valores-valor no-zero.

      endif.

    endif.

 

    if not itab_zyglt391-decimals > 0.

      condense itab_valores-valor.

    endif.

 

    if p_wa = 1.

      append itab_valores.

    else.

      move-corresponding itab_valores to itab_valores2.

      append itab_valores2.

    endif.

 

  endloop.

 

endform.                    " carrega_valores* << Fim da inclusão

 

 

INCLUIR TEXTOS DE SELECAO :

 

NOME:     TEXTO:                                       REFER. DIC.

DATA      Data

HORA      Hora

IDENTIFI  Identificador(chave)

PROGRAMA  Funcionalidade

P_DECRES  Ordem Decrescente

STATUS    Status

TABELA    Tabela

TRANSACA  Transação

USUARIO   Usuário

 

INCLUIR SÍMBOLOS DE TEXTO :

 

SÍM.:   TEXTO:                                                  CD. CM.

001 Intervalo                                            9 9

002 Restrições                                           10 10

003 Inclusão                                            8 8

004 Não houve modificação                             21 21

005 Modificação                                           11 11

006 Exclusão                                            8 8

007 Funcionalidade:                                    15 15

008 Data                                            4 4

009 Hora                                            4 4

010 Tabela                                                   6 6

011 Usuário                                     7 7

013 Status                                            6 6

014 Transação                                     9 9

015 Identificador                                    13 13

016 Valor Antigo:                                    13 13

017 Valor Novo:                                    11 11

018 Tabela:                                    7 7

019 Campo:                                           6 6

020 Data:                                           5 5

021 Hora:                                           5 5

022 Usuário:                                    8 8

023 Transação:                                    10 10

024 Status:                                    7 7

025 Campos Chave:                                    13 13

026 Campo                                           5 5

027 Valor                                    5 5

028 Não existem dados para a seleção.                      33 33

029 Descrição                              9 9

030 Descrição:                             10 10

 

 

CRIAR STATUS-GUI: 0100

 

ATRIBUTOS DE STATUS

TEXTO BREVE: Status Tela 100

 

CATEGORIA DE STATUS

(X) - STATUS DIÁLOGO

(_) - CAIXA DE DIÁLOGO

(_) - MENU DE CONTEXTO

 

Teclas de Função

CÓDIGO DE FUNÇÃO:     'BACK' (seta verde)

CATEGORIA DE FUNÇÃO:  'E'

 

CÓDIGO DE FUNÇÃO:     'EXIT' (seta amarela)

CATEGORIA DE FUNÇÃO:  'E'

 

CÓDIGO DE FUNÇÃO:     'EXIT' (seta vermelha)

CATEGORIA DE FUNÇÃO:  'E'

 

 

 

CRIAR STATUS-GUI: TLISTA

 

ATRIBUTOS DE STATUS

TEXTO BREVE: Status Tela Lista

 

CATEGORIA DE STATUS

(X) - STATUS DIÁLOGO

(_) - CAIXA DE DIÁLOGO

(_) - MENU DE CONTEXTO

 

Barra de Botões

CÓDIGO DE FUNÇÃO:     OK

CATEGORIA DE FUNÇÃO:  ' '

 

TEXTOS DE FUNÇÃO ESTÁTICOS

TEXTO DE FUNÇÃO:   Ok

NOME DE ÍCONE:     ICON_OKAY

TEXTO DE ÍCONE:    ' '

TEXTO INFORMATIVO: ' '

SELEÇÃO DIRETA:    ' '

TECLA DE ATALHO:   Ctrl+F4

 

 

Teclas de Função

CÓDIGO DE FUNÇÃO:     'CANCEL' (seta vermelha)

CATEGORIA DE FUNÇÃO:  'E'

 

 

 

CRIAR TÍTS GUI

CODE TÍTULO: TLISTA

TÍTULO:      Valores Tabela

 

 

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

Modificações efetuadas em REPS /PWS/ZYGLR043

CRIAR O PROGRAMA /PWS/ZYGLR043

 

CARACTERÍSTICAS DO PROGRAMA:

TÍTULO: Programa Trilha Auditoria - /PWS/ZYGLR043

CATEGORIA: Programa Executável

CL. DESENVOLVIMENTO: /PWS/ZYGL

 

TEXTO FONTE:

* >> Início da inclusão:

* ----------------------------------------------------------------------

* SONDA PROCWORK

* Produto  : Pw.CE - /PWS/ZYGLR043

* Módulo   : GL ¿ Geral

* Descrição: Trilha de Auditoria

* Help Desk: (0XX11) 5504-0170

* ----------------------------------------------------------------------

* ESTE PROGRAMA NÃO DEVE SER ALTERADO SEM PRÉVIA CONSULTA

* ----------------------------------------------------------------------

* Chamado      Data         Descrição

* ----------------------------------------------------------------------

* 27723        14.09.2001   Codificação Inicial

* ----------------------------------------------------------------------

report  /pws/zyglr043.

 

field-symbols: <fs_dynamic_table> type index table.

 

data:   lt_dynamic_table   type         lvc_t_fcat,

        ls_dynamic_table   like line of lt_dynamic_table,

        lr_dynamic_table   type ref to  data,

        dy_line            type ref to  data.

 

field-symbols: <wa_dados>.

 

data: begin of itab_zyglt391_exp occurs 0.

        include structure /pws/zyglt391.

data: end of itab_zyglt391_exp.

 

data: wa_data              type char4000.

 

data: v_indice             type /pws/zyglt389-indice,

      v_indice_aux         type /pws/zyglt389-indice,

      v_data(9)            type c,

      v_indice_c(56)       type c,

      v_exporta_dados      type c,

      v_linhas             type i,

      v_tabix              type i.

 

import itab_zyglt391_exp[]   from memory id 'ZYGLT391_EXP'.

form cria_estrutura_tabela using p_tabela

                                 p_tabversno.

 

  sort itab_zyglt391_exp by tabela tabversno posicao.

 

  refresh: lt_dynamic_table.

 

  loop at itab_zyglt391_exp where tabela  =  p_tabela

                            and tabversno = p_tabversno.

 

    read table lt_dynamic_table into ls_dynamic_table

                         with key tabname   = itab_zyglt391_exp-tabela

                                  fieldname = itab_zyglt391_exp-campo.

    check sy-subrc ne 0.

    ls_dynamic_table-fieldname = itab_zyglt391_exp-campo.

    ls_dynamic_table-tabname   = itab_zyglt391_exp-tabela.

    ls_dynamic_table-key       = itab_zyglt391_exp-keyflag.

    ls_dynamic_table-rollname  = itab_zyglt391_exp-rollname.

    ls_dynamic_table-row_pos   = itab_zyglt391_exp-posicao.

    ls_dynamic_table-inttype   = itab_zyglt391_exp-inttype.

    ls_dynamic_table-outputlen = itab_zyglt391_exp-intlen.

    ls_dynamic_table-dd_outlen = itab_zyglt391_exp-intlen.

    if sy-saprl(3) ge '620' or sy-saprl(2) eq '47'.

      ls_dynamic_table-intlen    = itab_zyglt391_exp-leng.

    else.

      ls_dynamic_table-intlen    = itab_zyglt391_exp-intlen.

    endif.

    ls_dynamic_table-decimals  = itab_zyglt391_exp-decimals.

    ls_dynamic_table-datatype  = itab_zyglt391_exp-datatype.

    append ls_dynamic_table to lt_dynamic_table.

    clear ls_dynamic_table.

 

  endloop.

  sort lt_dynamic_table by row_pos.

 

  call method cl_alv_table_create=>create_dynamic_table

    exporting

      it_fieldcatalog = lt_dynamic_table

    importing

      ep_table        = lr_dynamic_table

    exceptions

      generate_subpool_dir_full = 1

      others                    = 2.

 

  if sy-subrc = 0. else. endif.

 

endform.                    " cria_estrutura_tabela* << Fim da inclusão

 

 

 

INCLUIR SÍMBOLOS DE TEXTO :

 

SÍM.:   TEXTO:                                                  CD. CM.

001 ''                                                   2 2

 

 

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

Modificações efetuadas em REPS /PWS/ZYGLR044

CRIAR O PROGRAMA /PWS/ZYGLR044

 

CARACTERÍSTICAS DO PROGRAMA:

TÍTULO: Programa Trilha Auditoria - /PWS/ZYGLR044

CATEGORIA: Programa Executável

CL. DESENVOLVIMENTO: /PWS/ZYGL

 

TEXTO FONTE:

*-----------------------------------------------------------------------

* PROCWORK Software

* Produto  : Pw.CE - /PWS/ZYGLR044

* Módulo   : CB - Câmbio Exportação

* Descrição: Trilha para Auditoria

* Help Desk: (0XX11) 5504-0170

*-----------------------------------------------------------------------

* ESTE PROGRAMA NÃO DEVE SER ALTERADO SEM PRÉVIA CONSULTA

*-----------------------------------------------------------------------

* Chamado      Data         Descrição

*-----------------------------------------------------------------------

* 027723       13/09/2011   Codificação inicial

*-----------------------------------------------------------------------

* >> Início da inclusão:

report  /pws/zyglr044.

 

field-symbols: <campo_tab>        type any,

               <fs_dynamic_table> type index table.

 

data:   lt_dynamic_table   type         lvc_t_fcat,

        ls_dynamic_table   like line of lt_dynamic_table,

        lr_dynamic_table   type ref  to data,

        dy_line            type ref  to data.

 

field-symbols: <wa_dados>.

 

data: begin of itab_zyglt390 occurs 0.

        include structure /pws/zyglt390.

data: end of itab_zyglt390.

 

data: begin of itab_zyglt391 occurs 0.

        include structure /pws/zyglt391.

data: end of itab_zyglt391.

 

data: begin of itab_dd04t occurs 0.

        include structure dd04t.

data: end of itab_dd04t.

 

data: begin of itab_zyglt390_aux occurs 0.

        include structure /pws/zyglt390.

data: chave(200)  type c,

      status(21)  type c,

      line        type sy-lilli.

data: end of itab_zyglt390_aux.

 

*data: begin of wheretab occurs 0,

*        cond(50) type c,

*      end of wheretab.

 

data: begin of itab_valores occurs 0,

        indice         type /pws/zyglt390-indice,

        campo          type dd03l-fieldname,

        valor(3500)    type c,

      end of itab_valores.

 

data: itab_valores2 like itab_valores occurs 0 with header line.

 

data: begin of itab_print_tab occurs 0,

  campo       type /pws/zyglt391-campo,

  rollname    type /pws/zyglt391-rollname,

  key         type /pws/zyglt391-keyflag,

  valor(3500) type c,

end of itab_print_tab.

 

data: wa_data           type char4000,

      wa_usr01          type usr01,

      wa_zyglt390       like itab_zyglt390,

      wa_zyglt390_aux   like itab_zyglt390_aux.

 

data: v_indice             type /pws/zyglt389-indice,

      v_carrega_valores1   type c,

      v_carrega_valores2   type c,

      v_define_chave       type c,

      v_print_line         type c,

      v_valor(3500)        type c,

      v_data(9)            type c,

      v_indice_n(56)       type n,

      v_exporta_dados      type c,

      v_campo_tab(300)     type c.

 

import wa_zyglt390        from memory id 'ZYGLT390'.

import wa_zyglt390_aux    from memory id 'ZYGLT390_AUX'.

import itab_zyglt391[]    from memory id 'ZYGLT391'.

import v_define_chave     from memory id 'DEFINE_CHAVE'.

import v_carrega_valores1 from memory id 'CARREGA_VALORES1'.

import v_carrega_valores2 from memory id 'CARREGA_VALORES2'.

import v_print_line       from memory id 'PRINT_LINE'.

import v_exporta_dados    from memory id 'EXPORTA_DADOS'.

 

move-corresponding wa_zyglt390     to itab_zyglt390.

move-corresponding wa_zyglt390_aux to itab_zyglt390_aux.

 

if not v_define_chave is initial.

 

 

  perform cria_estrutura_tabela using itab_zyglt390-tabela

                                      itab_zyglt390-tabversno.

 

  assign lr_dynamic_table->* to <fs_dynamic_table>.

  create data dy_line like line of <fs_dynamic_table>.

  assign dy_line->* to  <wa_dados>.

 

  check <wa_dados> is assigned.

 

  v_indice = itab_zyglt390-indice.

 

  import wa_data to <wa_dados>

         from database /pws/zyglt389(ce)

         id v_indice.

 

  clear: itab_zyglt390_aux.

  loop at lt_dynamic_table into ls_dynamic_table

                           where tabname   eq itab_zyglt390-tabela

                             and key       eq 'X'

                             and fieldname ne 'MANDT'.

 

    move-corresponding itab_zyglt390 to itab_zyglt390_aux.

 

    assign component ls_dynamic_table-fieldname

                       of structure <wa_dados> to <campo_tab>.

 

    check <campo_tab> is assigned.

 

    v_campo_tab = <campo_tab>.

    condense v_campo_tab.

    if itab_zyglt390_aux-chave is initial.

      concatenate itab_zyglt390_aux-chave v_campo_tab

             into itab_zyglt390_aux-chave.

    else.

      concatenate itab_zyglt390_aux-chave v_campo_tab

             into itab_zyglt390_aux-chave separated by space.

    endif.

    if itab_zyglt390-oper = 'I'.

      itab_zyglt390_aux-status = text-003.

    elseif itab_zyglt390-oper = 'D'.

      itab_zyglt390_aux-status = text-006.

    endif.

  endloop.

 

  move-corresponding itab_zyglt390_aux to wa_zyglt390_aux.

  export wa_zyglt390_aux     to memory id 'ZYGLT390_AUX'.

endif.

 

if not v_carrega_valores2 is initial.

 

  perform cria_estrutura_tabela

                         using itab_zyglt390_aux-tabela

                               itab_zyglt390_aux-tabversno.

 

  assign lr_dynamic_table->* to <fs_dynamic_table>.

  create data dy_line like line of <fs_dynamic_table>.

  assign dy_line->* to  <wa_dados>.

 

  check <wa_dados> is assigned.

 

  v_indice = itab_zyglt390_aux-indice.

 

  import wa_data  to <wa_dados>

         from database /pws/zyglt389(ce)

         id v_indice.

  perform carrega_valores using v_indice

                                itab_zyglt390_aux-tabela

                                <wa_dados>

                                '2'.

  export itab_valores2[] to memory id 'VALORES2'.

 

endif.

 

if not v_carrega_valores1 is initial.

 

  perform cria_estrutura_tabela using itab_zyglt390_aux-tabela

                                      itab_zyglt390_aux-tabversno.

 

  assign lr_dynamic_table->* to <fs_dynamic_table>.

  create data dy_line like line of <fs_dynamic_table>.

  assign dy_line->* to  <wa_dados>.

 

  check <wa_dados> is assigned.

 

  v_indice = itab_zyglt390_aux-indice.

 

  import wa_data  to <wa_dados>

         from database /pws/zyglt389(ce)

         id v_indice.

 

  perform carrega_valores using v_indice

                                itab_zyglt390_aux-tabela

                                <wa_dados>

                                '1'.

  export itab_valores[] to memory id 'VALORES1'.

 

endif.

 

if not v_print_line is initial.

 

  perform cria_estrutura_tabela using itab_zyglt390_aux-tabela

                                      itab_zyglt390_aux-tabversno.

 

  assign lr_dynamic_table->* to <fs_dynamic_table>.

  create data dy_line like line of <fs_dynamic_table>.

  assign dy_line->* to  <wa_dados>.

 

  check <wa_dados> is assigned.

 

  v_indice = itab_zyglt390_aux-indice.

 

  import wa_data  to <wa_dados>

         from database /pws/zyglt389(ce)

         id v_indice.

 

  loop at lt_dynamic_table into ls_dynamic_table

                           where tabname eq itab_zyglt390_aux-tabela

                             and fieldname ne 'MANDT'.

 

    assign component ls_dynamic_table-fieldname

                       of structure <wa_dados> to <campo_tab>.

 

    check <campo_tab> is assigned.

 

    v_valor  = <campo_tab>.

 

    if ls_dynamic_table-inttype = 'D' or

       ls_dynamic_table-inttype = 'T'.

      write <campo_tab> to v_valor.

    elseif ls_dynamic_table-decimals > 0.

      if wa_usr01-dcpfm = 'X'.

        if itab_valores-valor ca ','.

          translate v_valor using ', '.

        endif.

      elseif wa_usr01-dcpfm = 'Y'.

        translate v_valor using ', '.

      elseif wa_usr01-dcpfm is initial.

        if v_valor ca ','.

          translate v_valor using '. '.

        endif.

        translate v_valor using ',.'.

      endif.

      condense v_valor.

    elseif  ls_dynamic_table-inttype = 'N'.

      if not v_valor ca '123456789'.

        write v_valor to v_valor no-zero.

      endif.

    endif.

 

    if not ls_dynamic_table-decimals > 0.

      condense v_valor.

    endif.

 

    itab_print_tab-campo    = ls_dynamic_table-fieldname.

    itab_print_tab-rollname = ls_dynamic_table-rollname.

    itab_print_tab-key      = ls_dynamic_table-key.

    itab_print_tab-valor    = v_valor.

    append itab_print_tab.

 

  endloop.

  export itab_print_tab[] to memory id 'PRINT_TAB'.

 

endif.

 

leave program.

 

form cria_estrutura_tabela using p_tabela

                                 p_tabversno.

 

  sort itab_zyglt391 by tabela tabversno posicao.

 

  refresh: lt_dynamic_table.

 

  loop at itab_zyglt391 where tabela    =  p_tabela

                            and tabversno = p_tabversno.

 

    read table lt_dynamic_table into ls_dynamic_table

                         with key tabname   = itab_zyglt391-tabela

                                  fieldname = itab_zyglt391-campo.

    check sy-subrc ne 0.

    ls_dynamic_table-fieldname = itab_zyglt391-campo.

    ls_dynamic_table-tabname   = itab_zyglt391-tabela.

    ls_dynamic_table-key       = itab_zyglt391-keyflag.

    ls_dynamic_table-rollname  = itab_zyglt391-rollname.

    ls_dynamic_table-row_pos   = itab_zyglt391-posicao.

    ls_dynamic_table-inttype   = itab_zyglt391-inttype.

    ls_dynamic_table-outputlen = itab_zyglt391-intlen.

    ls_dynamic_table-dd_outlen = itab_zyglt391-intlen.

    if sy-saprl(3) ge '620' or sy-saprl(2) eq '47'.

      ls_dynamic_table-intlen    = itab_zyglt391-leng.

    else.

      ls_dynamic_table-intlen    = itab_zyglt391-intlen.

    endif.

    ls_dynamic_table-decimals  = itab_zyglt391-decimals.

    ls_dynamic_table-datatype  = itab_zyglt391-datatype.

    append ls_dynamic_table to lt_dynamic_table.

    clear ls_dynamic_table.

 

  endloop.

  sort lt_dynamic_table by row_pos.

 

  call method cl_alv_table_create=>create_dynamic_table

    exporting

      it_fieldcatalog = lt_dynamic_table

    importing

      ep_table        = lr_dynamic_table

    exceptions

      generate_subpool_dir_full = 1

      others                    = 2.

 

  if sy-subrc = 0. else. endif.

 

endform.                    " cria_estrutura_tabela

form carrega_valores using p_indice

                           p_tabela

                           p_dados

                           p_wa.

  loop at lt_dynamic_table into ls_dynamic_table

                           where tabname = p_tabela.

 

    assign component ls_dynamic_table-fieldname

                       of structure p_dados to <campo_tab>.

 

    check <campo_tab> is assigned.

 

    itab_valores-indice = p_indice.

    itab_valores-campo  = ls_dynamic_table-fieldname.

    itab_valores-valor  = <campo_tab>.

 

    if ls_dynamic_table-inttype = 'D' or

       ls_dynamic_table-inttype = 'T'.

      write <campo_tab> to itab_valores-valor.

    elseif ls_dynamic_table-decimals > 0.

      if wa_usr01-dcpfm = 'X'.

        if itab_valores-valor ca ','.

          translate itab_valores-valor using ', '.

        endif.

      elseif wa_usr01-dcpfm = 'Y'.

        translate itab_valores-valor using ', '.

      elseif wa_usr01-dcpfm is initial.

        if itab_valores-valor ca ','.

          translate itab_valores-valor using '. '.

        endif.

        translate itab_valores-valor   using ',.'.

      endif.

      condense itab_valores-valor.

    elseif  ls_dynamic_table-inttype = 'N'.

      if not itab_valores-valor ca '123456789'.

        write itab_valores-valor to itab_valores-valor no-zero.

      endif.

    endif.

 

    if not ls_dynamic_table-decimals > 0.

      condense itab_valores-valor.

    endif.

 

    if p_wa = 1.

      append itab_valores.

    else.

      move-corresponding itab_valores to itab_valores2.

      append itab_valores2.

    endif.

 

  endloop.

 

endform.                    " carrega_valores

* << Fim da inclusão

 

INCLUIR SÍMBOLOS DE TEXTO :

 

SÍM.:   TEXTO:                                                  CD. CM.

003     Inclusão                                                 8   8

004     Não houve modificação                                   21  21

005     Modificação                                             11  11

006     Exclusão                                                 8   8

 

 

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

Modificações efetuadas em SHI3 /PWS/ZYCB

 

Incluir no menu /PWS/ZYCB, através da transação SE43

 

Parâmetros -> Técnicos -> (após CB - Modalidade Associação de Despesa)

 

Entrada de Menu -> Trilha de Auditoria

Código de Transação -> /PWS/ZYGLR042

 

 

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

Modificações efetuadas em SHLP /PWS/ZYGLA322

CRIAR AJUDA DE PESQUISA: /PWS/ZYGLA322

DESCRIÇÃO BREVE: GL - Trilha Auditoria - Programa(funcionalidade)

 

DEFINIÇÃO

 

OBTENÇÃO DE DADOS

MÉTODO DE SELEÇÃO: /PWS/ZYGLV022

 

COMPORTAMENTO DE DIÁLOGO:

TIPO DE DIÁLOGO: Exibição de Valores Imediata

HOT KEY: ' '

 

EXIT AJUD. PESQUISA: /PWS/ZYGLA322

 

PARÂMETROS:

 

PARAM.    IMP EXP POSL ISEL EXAJ ELEM. DADOS  MOD  VALOR PROPOSTO

PROGRAMA   X   X   1     1       PROGNAME

TEXT               2     2       REPTI

SPRSL              0     0       SPRAS             SY-LANGU

 

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

Modificações efetuadas em SHLP /PWS/ZYGLA323

CRIAR AJUDA DE PESQUISA: /PWS/ZYGLA323

DESCRIÇÃO BREVE: GL - Trilha Auditoria - Tabela

 

DEFINIÇÃO

 

OBTENÇÃO DE DADOS

MÉTODO DE SELEÇÃO: /PWS/ZYGLV023

 

COMPORTAMENTO DE DIÁLOGO:

TIPO DE DIÁLOGO: Exibição de Valores Imediata

HOT KEY: ' '

 

EXIT AJUD. PESQUISA: /PWS/ZYGLA322

 

PARÂMETROS:

 

PARAM.    IMP EXP POSL ISEL EXAJ ELEM. DADOS  MOD  VALOR PROPOSTO

TABELA     X   X   1    1        TABNAME

DDTEXT             2    2        AS4TEXT

DDLANGUAGE         0    0        DDLANGUAGE        SY-LANGU

 

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

Modificações efetuadas em TABD /PWS/ZYGLT009

 

MODIFICAR TABELA TRANSPARENTE: /PWS/ZYGLT009

DESCRIÇÃO BREVE: GL - Parâm Gerais Câmbio -  continuação da ZYCBT007

 

CAMPOS NOVOS

 

CAMPOS:           TP. CAMPO       CH: INI: TAB.VERIF.:    TAB.REF.:     CPO.RE

TRILHA_AUDITORIA  /PWS/ZYGLL1430

 

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

Modificações efetuadas em TABL /PWS/ZYGLT389

 

CRIAR TABELA TRANSPARENTE: /PWS/ZYGLT389

DESCRIÇÃO BREVE: GL - Trilha de Auditoria - Tabela de Modificações

 

CARACTERÍSTICAS

 

CATEGORIA DA TABELA: Tabela Transparente

CLASSE DE ENTREGA:   A

(_) - AUTUALIZAÇÃO DE TABELAS PERMITIDA

 

CAMPOS NOVOS

 

CAMPOS:         TP. CAMPO     CH: INI: TAB.VERIF.:    TAB.REF.:     CPO.RE

MANDT           MANDT         X    X

RELID           RELID         X    X

INDICE          DB2DSNAME     X    X

SRTF2           SRTF2         X    X

CLUSTR          SYBIN2

CLUSTD          VERI_LRAW

 

OPÇÕES TÉCNICAS

 

TIPO DE DADOS: SPROT

CATEGOR. TAMANHO: 4

 

(X) - AR. BUFFER NÃO PERMITIDO

(_) - AR. BUFFER PERMITIDO, MAS DESATIVADO

(_) - AR. BUFFER ATIVADO

(_) - RGSTS. IND ARMAZENADOS

(_) - ÁREA GEN ARMAZENADA EM BUFFER   Nº DE CPOS CHAVE: ______

(_) - TOTALMENTE ARMAZENADO

(_) - REGISTRAR MODIFICS. DDS. EM LOG.

 

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

Modificações efetuadas em TABL /PWS/ZYGLT390

CRIAR TABELA TRANSPARENTE: /PWS/ZYGLT390

DESCRIÇÃO BREVE: GL - Trilha de Auditoria - Tabela de LOG de Modificações

 

CARACTERÍSTICAS

 

CATEGORIA DA TABELA: Tabela Transparente

CLASSE DE ENTREGA:   A

(_) - AUTUALIZAÇÃO DE TABELAS PERMITIDA

 

CAMPOS NOVOS

 

CAMPOS:         TP. CAMPO     CH: INI: TAB.VERIF.:    TAB.REF.:     CPO.RE

MANDT           MANDT          X   X

DATA            DATUM          X   X

HORA            UZEIT          X   X

USUARIO         XUBNAME        X   X

INDICE          DB2DSNAME      X   X

IDENTIFICADOR   CHAR25

PROGRAMA        PROGNAME

TABELA          TABNAME

TRANSACAO       TCODE

OPER            OPTYPE

TABVERSNO       VERSNO

 

OPÇÕES TÉCNICAS

 

TIPO DE DADOS: APPL0

CATEGOR. TAMANHO: 4

 

(X) - AR. BUFFER NÃO PERMITIDO

(_) - AR. BUFFER PERMITIDO, MAS DESATIVADO

(_) - AR. BUFFER ATIVADO

(_) - RGSTS. IND ARMAZENADOS

(_) - ÁREA GEN ARMAZENADA EM BUFFER   Nº DE CPOS CHAVE: ______

(_) - TOTALMENTE ARMAZENADO

(_) - REGISTRAR MODIFICS. DDS. EM LOG.

 

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

Modificações efetuadas em TABL /PWS/ZYGLT391

CRIAR TABELA TRANSPARENTE: /PWS/ZYGLT391

DESCRIÇÃO BREVE: GL - Trilha de Auditoria - Tabela de Versões de Tabelas

 

CARACTERÍSTICAS

 

CATEGORIA DA TABELA: Tabela Transparente

CLASSE DE ENTREGA:   A

(_) - AUTUALIZAÇÃO DE TABELAS PERMITIDA

 

CAMPOS NOVOS

 

CAMPOS:         TP. CAMPO     CH: INI: TAB.VERIF.:    TAB.REF.:     CPO.RE

MANDT           MANDT          X   X

TABELA          TABNAME        X   X

CAMPO           FIELDNAME      X   X

KEYFLAG         KEYFLAG        X   X

ROLLNAME        ROLLNAME       X   X

POSICAO         TABFDPOS       X   X

INTTYPE         INTTYPE        X   X

INTLEN          INTLEN         X   X

DECIMALS        DECIMALS       X   X

TABVERSNO       VERSNO         X   X

LENG            DDLENG         X   X

DATATYPE        DATATYPE_D     X   X

DATA            DATUM

HORA            UZEIT

 

OPÇÕES TÉCNICAS

 

TIPO DE DADOS: APPL0

CATEGOR. TAMANHO: 1

 

(X) - AR. BUFFER NÃO PERMITIDO

(_) - AR. BUFFER PERMITIDO, MAS DESATIVADO

(_) - AR. BUFFER ATIVADO

(_) - RGSTS. IND ARMAZENADOS

(_) - ÁREA GEN ARMAZENADA EM BUFFER   Nº DE CPOS CHAVE: ______

(_) - TOTALMENTE ARMAZENADO

(_) - REGISTRAR MODIFICS. DDS. EM LOG.

 

 

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

Modificações efetuadas em TRAN /PWS/ZYGLR042

 

CRIAR TRANSAÇÃO: /PWS/ZYGLR042

 

ATRIBUTOS DA TRANSAÇÃO

TEXTO BREVE: LOG Auditoria

 

OBJETO DE EXECUÇÃO

(_) - PROGRAMA E TELA (TRANSAÇÃO DE DIÁLOGO)

(X) - PROGRAMA E TELA DE SELEÇÃO (TRANSAÇÃO DE REPORT)

 

TEXTO DA TRANSAÇÃO: /PWS/ZYGLR042

PROGRAMA: /PWS/ZYGLR042

TELA(SELEÇÃO): 1000

INÍCIO COM VARIANTE:

OBJETO DE AUTORIZAÇÃO:

(_) - ATUALIZAÇÃO DA VARIANTE DA TRANSAÇÃO STANDARD PERMITIDA

 

CLASSIFICAÇÃO

 

CLASSIFICAÇÃO DE TRANSAÇÃO:

(X) - TRANSAÇÃO PROFESSIONAL USER

(_) - TRANSAÇÃO EASY WEB      SERVIÇO: ___________________________

 

CAPACIDADE GUI:

(X) SAP GUI PARA HTML

(X) SAP GUI PARA JAVA

(X) SAP GUI PARA WINDOWS

 

 

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

Modificações efetuadas em VIEW /PWS/ZYGLV022

CRIAR VISAO : /PWS/ZYGLV022

DESCRIÇÃO BREVE: GL - Trilha Auditoria - Programa(funcionalidade)

CLASSE DESENVOLVIMENTO: /PWS/ZYGL

 

TABELAS/CONDIÇÕES JOIN

 

TABELAS:

/PWS/ZYGLT390

TRDIRT

 

CONDIÇÕES JOIN:

TABELA        NOME CPO     = TABELA      NOME CPO

/PWS/ZYGLT390 PROGRAMA     = TRDIRT      NAME

 

CPOS. VISÃO

CAMPO VISÃO:     NOME TAB:    NOME CAMPO:     MOD:

PROGRAMA        /PWS/ZYGLT390 PROGRAMA

TEXT            TRDIRT        TEXT

SPRSL           TRDIRT        SPRSL

 

CONDIÇÕES DE SELEÇÃO

 

TABELA:          NOME CPO.:   OPERADOR:       VL COMP:       AND/OR

 

STATUS AT.

 

ACESSO:

(X) - SÓ LER

(_) - LER E MODIFICAR

 

 

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

Modificações efetuadas em VIEW /PWS/ZYGLV023

 

CRIAR VISAO : /PWS/ZYGLV023

DESCRIÇÃO BREVE: GL - Trilha Auditoria - Tabela

CLASSE DESENVOLVIMENTO: /PWS/ZYGL

 

TABELAS/CONDIÇÕES JOIN

 

TABELAS:

/PWS/ZYGLT390

DD02T

 

CONDIÇÕES JOIN:

TABELA        NOME CPO     = TABELA      NOME CPO

/PWS/ZYGLT390 TABELA       = DD02T       TABNAME

 

CPOS. VISÃO

CAMPO VISÃO:     NOME TAB:     NOME CAMPO:     MOD:

TABELA           /PWS/ZYGLT390 TABELA

DDTEXT           DD02T         DDTEXT

DDLANGUAGE       DD02T         DDLANGUAGE

 

CONDIÇÕES DE SELEÇÃO

 

TABELA:          NOME CPO.:   OPERADOR:       VL COMP:       AND/OR

 

STATUS AT.

 

ACESSO:

(X) - SÓ LER

(_) - LER E MODIFICAR

(_) - LER E MODIFICAR

(_) - LER E MODIFICAR

(_) - LER E MODIFICAR

(_) - LER E MODIFICAR

(_) - LER E MODIFICAR

(_) - LER E MODIFICAR

(_) - LER E MODIFICAR

(_) - LER E MODIFICAR

(_) - LER E MODIFICAR

(_) - LER E MODIFICAR

(_) - LER E MODIFICAR

(_) - LER E MODIFICAR

(_) - LER E MODIFICAR

(_) - LER E MODIFICAR

(_) - LER E MODIFICAR

(_) - LER E MODIFICAR