CE PLUS - Nota 013194

Módulo: CÂMBIO FINANCEIRO

Funcionalidade: SISCOSERV

Data/Hora da Publicação: 22/08/2013 00:00:00

Data/Hora Última Alteração: 11/09/2013 11:15:47

Descrição da Nota: SISCOSERV - ROBÔ - MELHORIAS PARA TRATAR RE-ENVIO AUTOMÁTICO DO ARQUIVO

Sintoma

Melhorias efetuadas para tratar o re-envio automático em algumas situações de erro:

1) envio de registro único por execução da função de Fila de Processamento;

2) re-envio automático para os casos de site fora do ar ou de atingimento do número máximo de

tentativas de processamento sem sucesso;

3) bloqueio do usuário para manipulação do Siscoserv em caso de retorno de erro de credenciais para

logar no site;

4) envio do número sequencial da RAS/RVS para compor a nomenclatura do arquivo XML

 

 

Solução

Melhorias efetuadas para tratar o re-envio automático em algumas situações de erro:

1) envio de registro único por execução da função de Fila de Processamento;

2) re-envio automático para os casos de site fora do ar ou de atingimento do número máximo de

tentativas de processamento sem sucesso;

3) bloqueio do usuário para manipulação do Siscoserv em caso de retorno de erro de credenciais para

logar no site;

4) envio do número sequencial da RAS/RVS para compor a nomenclatura do arquivo XML

 

Versões Tratadas

9.0


Pré-Requisitos

Produto:

Nota

Descrição

CB - 999999 - SISCOSERV - REQUEST COMPLETA CB - 999999 - SISCOSERV - REQUEST COMPLETA

SISCOSERV - ORIGEM PROCESSOS PW.CE

SISCOSERV

TRADUÇÃO PW.CE, PT P/ EN E ES, AJUSTE TRILHA

SISCOSERV - ASSOCIAÇÃO SISCOSERV

SISCOSERV - ASSOCIAÇÃO

VERIFICAÇÃO CODE INSPECTOR

SISCOSERV

SISCOSERV - ADITIVO RAS/RVS

SISCOSERV

SISCOSERV - ASSOCIAÇÃO SISCOSERV - PRAZO PARA RAS/RVS E RP/RF

REQUEST COMPLETA SISCOSERV

Informações Complementares

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

Nota Número 13194 Data: 22/08/2013 Hora: 10:55:52

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

 

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

Nota Número              : 13194

Categoria                : Melhoria

Prioridade               : Média

Versão PW.CE             : 9.0

Pacote                   : 00005

Agrupamento              : 00162

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

Referência às notas relacionadas:

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

 

12508  - 00001 - 9.0    - 00001  - TRADUÇÃO PW.CE, PT P/ EN E ES, AJUSTE TRILHA

12604  - 00002 - 9.0    - 00002  - SISCOSERV

12799  - 00003 - 9.0    - 00003  - VERIFICAÇÃO CODE INSPECTOR

12842  - 00004 - 9.0    - 00003  - SISCOSERV

12878  - 00005 - 9.0    - 00004  - SISCOSERV - ASSOCIAÇÃO

12943  - 00006 - 9.0    - 00004  - CB - 999999 - SISCOSERV - REQUEST COMPLETA

13028  - 00007 - 9.0    - 00004  - SISCOSERV - ORIGEM PROCESSOS PW.CE

13068  - 00008 - 9.0    - 00005  - REQUEST COMPLETA SISCOSERV

13152  - 00009 - 9.0    - 00005  - SISCOSERV

13160  - 00010 - 9.0    - 00005  - SISCOSERV

13172  - 00011 - 9.0    - 00005  - SISCOSERV - ASSOCIAÇÃO SISCOSERV - PRAZO PARA RAS/RVS E RP/RF

13178  - 00012 - 9.0    - 00005  - SISCOSERV - ASSOCIAÇÃO SISCOSERV

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

SISCOSERV - ROBÔ - MELHORIAS PARA TRATAR RE-ENVIO AUTOMÁTICO DO ARQUIVO

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

Palavras Chave:

SISCOSERV - ROBÔ - MELHORIAS PARA TRATAR RE-ENVIO AUTOMÁTICO DO ARQUIVO

 

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

Objetos da nota:

DOMA /PWS/ZYGLD984

DOMD /PWS/ZYCAD003

DTEL /PWS/ZYCAL059

TABD /PWS/ZYCAT038

TABD /PWS/ZYCAT036

TABD /PWS/ZYCAE002

FUNC /PWS/ZYCA_RETORNO_SISCOSERV

FUNC /PWS/ZYCA_FILA_SISCOSERV

CUAD /PWS/SAPMZYCA010

REPS /PWS/MZYCA010I01

REPS /PWS/MZYCA010O01

REPS /PWS/MZYCA011F01

REPS /PWS/MZYCA011O01

REPS /PWS/MZYCA012F01

REPS /PWS/MZYCA010F01

REPS /PWS/MZYCA012O01

REPS /PWS/LZYCAGFF01

REPT /PWS/SAPMZYCA010

REPT /PWS/SAPMZYCA011

REPT /PWS/SAPMZYCA012

 

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

Modificações efetuadas em DOMA /PWS/ZYGLD984

 

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

Domínio incluído: /PWS/ZYGLD984

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

"Siscoserv - Bloqueio CPF"

Classe de desenvolvimento: /PWS/ZYGL

Idioma original: PT

Categoria de dados: CHAR

Número de posições: 1

Comprimento de saída: 1

Rotina de conversão:

Letras minúsculas: NÃO

-Valores individuais

Incluído valor fixo ""

Texto incluído, idioma: PT (12 caracteres):

"Desbloqueado"

Incluído valor fixo "X"

Texto incluído, idioma: PT (9 caracteres):

"Bloqueado"

Incluída tabela de valores:

 

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

Modificações efetuadas em DOMD /PWS/ZYCAD003

 

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

Domínio modificado: /PWS/ZYCAD003

-Valores individuais

Incluído valor fixo "01"

Texto modificado, idioma: PT (26 caracteres):

"Siscoserv Fora de Operação"

Incluído valor fixo "02"

Texto incluído, idioma: PT (49 caracteres):

"Atingido Nº Máximo de Tentativas de Processamento"

Incluído valor fixo "03"

Texto incluído, idioma: PT (33 caracteres):

"Problemas de autenticação no Site"

Incluído valor fixo ""

Texto incluído, idioma: PT (0 caracteres):

""

 

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

Modificações efetuadas em DTEL /PWS/ZYCAL059

 

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

Elemento de dados incluído: /PWS/ZYCAL059

Classe de desenvolvimento: /PWS/ZYCA

Idioma original: PT

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

"Siscoserv - Bloqueio CPF"

Categoria de dados: Domínio

Domínio: /PWS/ZYGLD984

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 (9 caracteres), idioma: PT

"CPF Bloq."

Comprimento máximo do denominador médio: 15

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

"CPF Bloqueado"

Comprimento máximo do denominador longo: 37

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

"CPF Bloqueado para Logon no Siscoserv"

Comprimento máximo do título: 37

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

"CPF Bloqueado para Logon no Siscoserv"

 

 

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

Modificações efetuadas em TABD /PWS/ZYCAT038

 

CAMPOS NOVOS ( EFETUAR A INCLUSÃO LOGO APÓS O CAMPO 'INDICE_XML' )

 

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

STATUS_ANT      /PWS/ZYCAL039  ' ' ' '  '          '   '        '    '       '

 

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

Modificações efetuadas em TABD /PWS/ZYCAT036

 

CAMPOS NOVOS ( EFETUAR A INCLUSÃO LOGO APÓS O CAMPO 'SENHA' )

 

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

BLOQUEIO        /PWS/ZYCAL059  ' ' ' '  '          '   '        '    '       '

 

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

Modificações efetuadas em TABD /PWS/ZYCAE002

 

CAMPOS NOVOS ( EFETUAR A INCLUSÃO LOGO APÓS O CAMPO 'COD_ERRO' )

 

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

NRSEQ           /PWS/ZYCAL053  ' ' ' '  '          '   '        '    '       '

 

 

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

Modificações efetuadas em REPS /PWS/LZYCAGFF01

 

...

         importing

              wotnr  = v_dia

         exceptions

              others = 0.

    if v_dia = '6' or v_dia = '7'.

      v_data = v_data - 1.

    endif.

  endwhile.

  p_prazo = v_data.

endform.

* >> Início da inclusão:

FORM enq_deq_fila USING    p_status

                           p_zycat038 STRUCTURE /pws/zycat038.

  DATA: itab_zycat031     TYPE TABLE OF /pws/zycat031,

        itab_zycat034     TYPE TABLE OF /pws/zycat034,

        itab_zycat037     TYPE TABLE OF /pws/zycat037,

        wa_zycat030       TYPE /pws/zycat030,

        wa_zycat031       TYPE /pws/zycat031,

        wa_zycat034       TYPE /pws/zycat034,

        wa_zycat039       TYPE /pws/zycat039,

        v_funcionalidade  TYPE /pws/zyglt390-programa,

        v_identificador   TYPE /pws/zyglt390-identificador.

  REFRESH itab_zycat034.

  SELECT * FROM /pws/zycat034

    INTO TABLE itab_zycat034

    WHERE nrseq_arq = p_zycat038-nrseq_arq.

  CASE wa_zycat038-processo.

    WHEN 'IRAS'  OR 'IRVS'  OR 'ERAS'  OR 'ERVS'  OR

         'IARAS' OR 'IARVS' OR 'EARAS' OR 'EARVS'.

      v_funcionalidade = '/PWS/SAPMZYCA011'.

    WHEN 'IRP' OR 'IRF' OR 'CRP' OR 'CRF'.

      v_funcionalidade = '/PWS/SAPMZYCA012'.

  ENDCASE.

  IF p_status = '03'.

    p_zycat038-status_ant = p_zycat038-status.

    p_zycat038-status = p_status.

  ELSE.

    IF NOT p_zycat038-prot_transm IS INITIAL.

      p_zycat038-status = p_zycat038-status_ant.

    ELSE.

      CLEAR p_zycat038-status.

    ENDIF.

    CLEAR p_zycat038-status_ant.

  ENDIF.

  MODIFY /pws/zycat038 FROM p_zycat038.

  READ TABLE itab_zycat034 INTO wa_zycat034

    WITH KEY nrseq_arq = p_zycat038-nrseq_arq.

  MOVE-CORRESPONDING p_zycat038 TO /pws/zycat038.

  MOVE wa_zycat034-nrseq TO v_identificador.

  PERFORM carrega_log USING '/PWS/ZYCAT038'

                            'U'

                            sy-tcode

                            v_funcionalidade

                            v_identificador.

  CASE p_zycat038-processo.

    WHEN 'IRAS' OR 'IRVS' OR 'ERAS' OR 'ERVS'.

      READ TABLE itab_zycat034 INTO wa_zycat034

        WITH KEY nrseq_arq = p_zycat038-nrseq_arq.

      SELECT SINGLE * FROM /pws/zycat030

        INTO wa_zycat030

        WHERE nrseq = wa_zycat034-nrseq.

      IF sy-subrc EQ 0.

        wa_zycat030-status = p_zycat038-status.

        SELECT * FROM /pws/zycat031

          INTO TABLE itab_zycat031

          WHERE nrseq  = wa_zycat034-nrseq

            AND origem = ' '.

        LOOP AT itab_zycat031 INTO wa_zycat031.

          wa_zycat031-status = p_zycat038-status.

          MODIFY itab_zycat031 FROM wa_zycat031.

        ENDLOOP.

        MODIFY /pws/zycat030 FROM wa_zycat030.

        MOVE wa_zycat030-nrseq TO v_identificador.

        MOVE-CORRESPONDING wa_zycat030 TO /pws/zycat030.

        PERFORM carrega_log USING '/PWS/ZYCAT030'

                                  'U'

                                  sy-tcode

                                  v_funcionalidade

                                  v_identificador.

        MODIFY /pws/zycat031 FROM TABLE itab_zycat031.

        LOOP AT itab_zycat031 INTO wa_zycat031.

          MOVE-CORRESPONDING wa_zycat031 TO /pws/zycat031.

          MOVE /pws/zycat031-nrseq TO v_identificador.

          PERFORM carrega_log USING '/PWS/ZYCAT031'

                                    'U'

                                    sy-tcode

                                    v_funcionalidade

                                    v_identificador.

        ENDLOOP.

      ENDIF.

    WHEN 'IARAS' OR 'IARVS' OR 'RARAS' OR 'RARVS'

      OR 'EARAS' OR 'EARVS'.

      SELECT * FROM /pws/zycat031

        INTO TABLE itab_zycat031

        FOR ALL ENTRIES IN itab_zycat034

        WHERE nrseq    = itab_zycat034-nrseq

          AND operacao = itab_zycat034-operacao.

      LOOP AT itab_zycat034 INTO wa_zycat034

        WHERE nrseq_arq = p_zycat038-nrseq_arq.

        READ TABLE itab_zycat031 INTO wa_zycat031

          WITH KEY nrseq    = wa_zycat034-nrseq

                   operacao = wa_zycat034-operacao.

        IF sy-subrc EQ 0.

          wa_zycat031-status = p_zycat038-status.

          MODIFY itab_zycat031 FROM wa_zycat031

            INDEX sy-tabix.

        ENDIF.

      ENDLOOP.

      MODIFY /pws/zycat031 FROM TABLE itab_zycat031.

      LOOP AT itab_zycat031 INTO wa_zycat031.

        MOVE-CORRESPONDING wa_zycat031 TO /pws/zycat031.

        MOVE /pws/zycat031-nrseq TO v_identificador.

        PERFORM carrega_log USING '/PWS/ZYCAT031'

                                  'U'

                                  sy-tcode

                                  v_funcionalidade

                                  v_identificador.

      ENDLOOP.

    WHEN 'IRP' OR 'IRF'.

      READ TABLE itab_zycat034 INTO wa_zycat034

        WITH KEY nrseq_arq = p_zycat038-nrseq_arq.

      IF sy-subrc EQ 0.

        SELECT SINGLE * FROM /pws/zycat039

          INTO wa_zycat039

          WHERE nrseq     = wa_zycat034-nrseq

            AND operacao  = wa_zycat034-operacao

            AND remessa   = wa_zycat034-remessa

            AND fat_comis = wa_zycat034-fat_comis

            AND lifnr     = wa_zycat034-lifnr

            AND dtvencto  = wa_zycat034-dtvencto

            AND fat_imp   = wa_zycat034-fat_imp.

        IF sy-subrc EQ 0.

          wa_zycat039-status = p_zycat038-status.

          MODIFY /pws/zycat039 FROM wa_zycat039.

          MOVE-CORRESPONDING wa_zycat039 TO /pws/zycat039.

          MOVE /pws/zycat039-nrseq TO v_identificador.

          PERFORM carrega_log USING '/PWS/ZYCAT039'

                                    'U'

                                    sy-tcode

                                    v_funcionalidade

                                    v_identificador.

        ENDIF.

      ENDIF.

    WHEN 'CRP' OR 'CRF'.

      READ TABLE itab_zycat034 INTO wa_zycat034

        WITH KEY nrseq_arq = p_zycat038-nrseq_arq.

      IF sy-subrc EQ 0.

        SELECT SINGLE * FROM /pws/zycat039

          INTO wa_zycat039

          WHERE nrseq     = wa_zycat034-nrseq

            AND operacao  = wa_zycat034-operacao

            AND remessa   = wa_zycat034-remessa

            AND fat_comis = wa_zycat034-fat_comis

            AND lifnr     = wa_zycat034-lifnr

            AND dtvencto  = wa_zycat034-dtvencto

            AND fat_imp   = wa_zycat034-fat_imp.

        IF sy-subrc EQ 0.

          wa_zycat039-status = p_zycat038-status.

          MODIFY /pws/zycat039 FROM wa_zycat039.

          MOVE-CORRESPONDING wa_zycat039 TO /pws/zycat039.

          MOVE /pws/zycat039-nrseq TO v_identificador.

          PERFORM carrega_log USING '/PWS/ZYCAT039'

                                    'U'

                                    sy-tcode

                                    v_funcionalidade

                                    v_identificador.

        ENDIF.

      ENDIF.

  ENDCASE.

ENDFORM.

* << Fim da inclusão

 

 

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

Modificações efetuadas em FUNC /PWS/ZYCA_RETORNO_SISCOSERV

 

...

  DATA: itab_zycat031 TYPE STANDARD TABLE OF /pws/zycat031,

        itab_zycat034 TYPE STANDARD TABLE OF /pws/zycat034,

        itab_zycat038 TYPE STANDARD TABLE OF /pws/zycat038.

  DATA: wa_zycat030 TYPE /pws/zycat030,

        wa_zycat031 TYPE /pws/zycat031,

        wa_zycat034 TYPE /pws/zycat034,

        wa_zycat038 TYPE /pws/zycat038,

        wa_zycat039 TYPE /pws/zycat039,

        v_funcionalidade TYPE /pws/zyglt390-programa,

        v_identificador  TYPE /pws/zyglt390-identificador.

* >> Início da inclusão: FUNCTION /PWS/ZYCA_RETORNO_SISCOSERV

  DATA: itab_zycat037 TYPE TABLE OF /pws/zycat037,

        v_cpf         TYPE /pws/zycat036-cpf.

* << Fim da inclusão

  CHECK NOT i_nrseq_arq IS INITIAL.

  SELECT * FROM /pws/zycat034

    INTO TABLE itab_zycat034

    WHERE nrseq_arq = i_nrseq_arq.

  SELECT * FROM /pws/zycat038

    INTO TABLE itab_zycat038

    WHERE nrseq_arq = i_nrseq_arq.

  LOOP AT itab_zycat038 INTO wa_zycat038.

    CASE wa_zycat038-processo.

      WHEN 'IRAS'  OR 'IRVS'  OR 'ERAS'  OR 'ERVS'  OR

           'IARAS' OR 'IARVS' OR 'EARAS' OR 'EARVS'.

        v_funcionalidade = '/PWS/SAPMZYCA011'.

      WHEN 'IRP' OR 'IRF' OR 'CRP' OR 'CRF'.

        v_funcionalidade = '/PWS/SAPMZYCA012'.

    ENDCASE.

    IF NOT i_prot_transm IS INITIAL.

      wa_zycat038-prot_transm = i_prot_transm.

    ENDIF.

* >> Início da inclusão: FUNCTION /PWS/ZYCA_RETORNO_SISCOSERV

    IF i_status = '03'.

      wa_zycat038-status_ant = wa_zycat038-status.

    ELSEIF ( i_status = '01' or i_status = '02' )

        AND wa_zycat038-status_ant = '  '.

      wa_zycat038-status_ant = wa_zycat038-status.

    ENDIF.

* << Fim da inclusão

    IF NOT i_status IS INITIAL.

      wa_zycat038-status = i_status.

    ENDIF.

    IF NOT i_cod_erro IS INITIAL.

      wa_zycat038-cod_erro = i_cod_erro.

    ENDIF.

    MODIFY /pws/zycat038 FROM wa_zycat038.

    READ TABLE itab_zycat034 INTO wa_zycat034

      WITH KEY nrseq_arq = i_nrseq_arq.

    IF sy-subrc EQ 0.

...

 

...

              MOVE /pws/zycat039-nrseq TO v_identificador.

              PERFORM carrega_log USING '/PWS/ZYCAT039'

                                        'U'

                                        sy-tcode

                                        v_funcionalidade

                                        v_identificador.

            ENDIF.

          ENDIF.

        ENDIF.

    ENDCASE.

* >> Início da inclusão: FUNCTION /PWS/ZYCA_RETORNO_SISCOSERV

  ENDLOOP.

  IF i_status = '03'.

    REFRESH: itab_zycat038.

    SELECT SINGLE cpf

      FROM /pws/zycat037

      INTO v_cpf

      WHERE usuario = wa_zycat038-usuario.

    SELECT * FROM /pws/zycat037

      INTO TABLE itab_zycat037

      WHERE cpf = v_cpf.

    SELECT * FROM /pws/zycat038

      INTO TABLE itab_zycat038

      FOR ALL ENTRIES IN itab_zycat037

      WHERE usuario = itab_zycat037-usuario.

    DELETE itab_zycat038 WHERE nrseq_arq = i_nrseq_arq.

    DELETE itab_zycat038 WHERE status NE '  ' AND

                               status NE 'EP' AND

                               status NE 'ES'.

    LOOP AT itab_zycat038 INTO wa_zycat038.

      PERFORM enq_deq_fila USING i_status

                                 wa_zycat038.

* << Fim da inclusão

  ENDLOOP.

* >> Início da inclusão: FUNCTION /PWS/ZYCA_RETORNO_SISCOSERV

    UPDATE /pws/zycat036 SET bloqueio = 'X'

      WHERE cpf = v_cpf.

  ENDIF.

* << Fim da inclusão

  COMMIT WORK.

ENDFUNCTION.

 

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

Modificações efetuadas em FUNC /PWS/ZYCA_FILA_SISCOSERV

 

...

        wa_zycat038 TYPE /pws/zycat038,

        wa_zycat039 TYPE /pws/zycat039,

        wa_zycae002 TYPE /pws/zycae002,

        wa_zycae003 TYPE /pws/zycae003,

        wa_xml      TYPE /pws/zygll1546.

  DATA: v_cgc_number TYPE j_1bwfield-cgc_number,

        v_indice     TYPE /pws/zycat038-indice_xml,

        v_tabix      TYPE sy-tabix,

        v_funcionalidade TYPE /pws/zyglt390-programa,

        v_identificador  TYPE /pws/zyglt390-identificador.

* >> Início da inclusão: FUNCTION /PWS/ZYCA_FILA_SISCOSERV

  SELECT * FROM /pws/zycat038

      INTO TABLE itab_zycat038

      WHERE prot_transm =  '            '

        AND ( status      =  '  '  OR

              status      =  '01'  OR

              status      =  '02' ).

  IF sy-subrc NE 0.

* << Fim da inclusão

  SELECT * FROM /pws/zycat038

    INTO TABLE itab_zycat038

* >> Início da exclusão: FUNCTION /PWS/ZYCA_FILA_SISCOSERV

    WHERE ( prot_transm =  '            ' AND

            status      =  '  ' )         OR

          ( prot_transm NE '            ' AND

            status      =  'EP' )         OR

          ( prot_transm NE '            ' AND

            status      = '  ' ).                       "#EC CI_NOFIELD

* << Fim da exclusão

* >> Início da inclusão: FUNCTION /PWS/ZYCA_FILA_SISCOSERV

    WHERE prot_transm NE '            '

      AND status      = '  '.

    IF sy-subrc NE 0.

      SELECT * FROM /pws/zycat038

      INTO TABLE itab_zycat038

      WHERE prot_transm NE '            '

        AND ( status      =  'EP'  OR

              status      =  '01'  OR

              status      =  '02' ).

    ENDIF.

  ENDIF.

* << Fim da inclusão

  IF NOT itab_zycat038[] IS INITIAL.

    SELECT * FROM /pws/zycat034

      INTO TABLE itab_zycat034

      FOR ALL ENTRIES IN itab_zycat038

      WHERE nrseq_arq = itab_zycat038-nrseq_arq.

    IF NOT itab_zycat034[] IS INITIAL.

      SELECT * FROM /pws/zycat030

        INTO TABLE itab_zycat030

        FOR ALL ENTRIES IN itab_zycat034

        WHERE nrseq = itab_zycat034-nrseq.

...

 

...

      FOR ALL ENTRIES IN itab_zycat038

      WHERE usuario = itab_zycat038-usuario.

    IF NOT itab_zycat037[] IS INITIAL.

      SELECT * FROM /pws/zycat036

        INTO TABLE itab_zycat036

        FOR ALL ENTRIES IN itab_zycat037

        WHERE cpf = itab_zycat037-cpf.

    ENDIF.

    SORT itab_zycat038 BY nrseq_arq data hora ASCENDING.

    LOOP AT itab_zycat038 INTO wa_zycat038.

* >> Início da inclusão: FUNCTION /PWS/ZYCA_FILA_SISCOSERV

      IF wa_zycat038-status = '01' OR

         wa_zycat038-status = '02'.

        IF wa_zycat038-prot_transm IS INITIAL OR

           wa_zycat038-status_ant = 'ES'.

          CLEAR: wa_zycat038-status, wa_zycat038-status_ant.

        ELSE.

          wa_zycat038-status = wa_zycat038-status_ant.

          CLEAR wa_zycat038-status_ant.

        ENDIF.

        wa_zycat038-data = sy-datum.

        wa_zycat038-hora = sy-uzeit.

      ENDIF.

* << Fim da inclusão

      CLEAR wa_zycae002.

      CLEAR: wa_zycat030, wa_zycat034.

      READ TABLE itab_zycat034 INTO wa_zycat034

        WITH KEY nrseq_arq = wa_zycat038-nrseq_arq.

      IF sy-subrc EQ 0.

        READ TABLE itab_zycat030 INTO wa_zycat030

          WITH KEY nrseq = wa_zycat034-nrseq.

        IF sy-subrc EQ 0.

          PERFORM busca_cgc USING wa_zycat030-bukrs

                                  wa_zycat030-j_1bbranch

                            CHANGING v_cgc_number.

        ELSE.

          wa_zycat038-status = 'PM'.

          MODIFY /pws/zycat038 FROM wa_zycat038.

          CONTINUE.

        ENDIF.

        WRITE v_cgc_number TO wa_zycae002-cnpj.

      ENDIF.

      MOVE: wa_zycat038-nrseq_arq   TO wa_zycae002-nrseq_arq,

* >> Início da inclusão: FUNCTION /PWS/ZYCA_FILA_SISCOSERV

            wa_zycat030-nrseq       TO wa_zycae002-nrseq,

* << Fim da inclusão

            wa_zycat038-processo    TO wa_zycae002-processo,

            wa_zycat038-data        TO wa_zycae002-data,

            wa_zycat038-hora        TO wa_zycae002-hora,

            wa_zycat038-prot_transm TO wa_zycae002-prot_transm,

            wa_zycat038-status      TO wa_zycae002-status.

      CLEAR wa_zycat037.

      READ TABLE itab_zycat037 INTO wa_zycat037

        WITH KEY usuario = wa_zycat038-usuario.

      IF sy-subrc EQ 0.

        MOVE wa_zycat037-cpf TO wa_zycae002-cpf.

...

 

...

      ENDIF.

      IF wa_zycat038-processo = 'ERAS'  OR

         wa_zycat038-processo = 'ERVS'  OR

         wa_zycat038-processo = 'EARAS' OR

         wa_zycat038-processo = 'EARVS'.

        wa_zycat038-status = 'ES'.

      ELSE.

        wa_zycat038-status = 'EP'.

      ENDIF.

      MODIFY itab_zycat038 FROM wa_zycat038

* >> Início da exclusão: FUNCTION /PWS/ZYCA_FILA_SISCOSERV

        TRANSPORTING status.

* << Fim da exclusão

* >> Início da inclusão: FUNCTION /PWS/ZYCA_FILA_SISCOSERV

        TRANSPORTING data hora status status_ant.

* << Fim da inclusão

      MODIFY /pws/zycat038 FROM wa_zycat038.

      CLEAR: wa_zycat034.

      READ TABLE itab_zycat034 INTO wa_zycat034

        WITH KEY nrseq_arq = wa_zycat038-nrseq_arq.

      IF sy-subrc EQ 0.

        CASE wa_zycat038-processo.

          WHEN 'IRAS'  OR 'IRVS'  OR 'ERAS'  OR 'ERVS'  OR

               'IARAS' OR 'IARVS' OR 'EARAS' OR 'EARVS'.

            v_funcionalidade = '/PWS/SAPMZYCA011'.

          WHEN 'IRP' OR 'IRF' OR 'CRP' OR 'CRF'.

...

 

...

              MODIFY /pws/zycat039 FROM wa_zycat039.

              MOVE-CORRESPONDING wa_zycat039 TO /pws/zycat039.

              PERFORM carrega_log USING '/PWS/ZYCAT039'

                                        'U'

                                        sy-tcode

                                        v_funcionalidade

                                        v_identificador.

            ENDIF.

          ENDIF.

      ENDCASE.

* >> Início da inclusão: FUNCTION /PWS/ZYCA_FILA_SISCOSERV

      EXIT.

* << Fim da inclusão

    ENDLOOP.

    COMMIT WORK.

  ENDIF.

ENDFUNCTION.

 

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

Modificações efetuadas em CUAD /PWS/SAPMZYCA010

 

No status GUI 0001 do programa /PWS/SAPMZYCA010, incluir o botão abaixo na barra de botões

 

CÓDIGO DE FUNÇÃO   : UNLOC

CATEGORIA DE FUNÇÃO: ' '

TEXTO DE FUNÇÃO    : Desbloquio

NOME DO ÍCONE      : ICON_UNLOCKED

TEXTO INFORMATIVO  : Desbloquio

TECLA DE FUNÇÃO    : F9

 

 

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

Modificações efetuadas em REPS /PWS/MZYCA010F01

 

...

ENDFORM.

FORM desbloqueia_cpf.

  CALL FUNCTION 'DEQUEUE_/PWS/EZYCAT036'

       EXPORTING

            cpf = /pws/zycat036-cpf.

  IF sy-subrc NE 0.

    MESSAGE e015 WITH text-e07.

  ELSE.

  ENDIF.

ENDFORM.

* >> Início da inclusão:

FORM desbloqueia_registros.

  DATA: itab_zycat037 TYPE TABLE OF /pws/zycat037,

        itab_zycat038 TYPE TABLE OF /pws/zycat038,

        wa_zycat038   TYPE /pws/zycat038.

  IF v_password IS INITIAL.

    CLEAR v_okcode.

    MESSAGE e015 WITH text-e05.

  ENDIF.

  UPDATE /pws/zycat036 SET bloqueio = ' '

    WHERE cpf = /pws/zycat036-cpf.

  CLEAR /pws/zycat036-bloqueio.

  SELECT * FROM /pws/zycat037

    INTO TABLE itab_zycat037

    WHERE cpf = /pws/zycat036-cpf.

  IF NOT itab_zycat037[] IS INITIAL.

    SELECT * FROM /pws/zycat038

      INTO TABLE itab_zycat038

      FOR ALL ENTRIES IN itab_zycat037

      WHERE usuario = itab_zycat037-usuario

        AND status  = '03'.

    LOOP AT itab_zycat038 INTO wa_zycat038.

      PERFORM enq_deq_fila IN PROGRAM /pws/saplzycagf

        USING '  '

              wa_zycat038

        IF FOUND.

    ENDLOOP.

  ENDIF.

  MESSAGE I015 WITH TEXT-I08.

ENDFORM.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYCA010I01

 

...

    when 'ENTER'.

      perform busca_dados.

    when 'SAVE'.

      perform grava_cpf.

    when 'DELE'.

      perform elimina_cpf.

    when 'LOG_TRILHA'.

      perform log_trilha using sy-repid

                               /pws/zycat036-cpf

                               ' '.

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

    WHEN 'UNLOC'.

      PERFORM desbloqueia_registros.

* << Fim da inclusão

  endcase.

endmodule.

module exit_command input.

  if v_okcode eq 'BACK'.

    perform verifica_alteracao using 'X'.

  elseif v_okcode eq 'EXIT'.

    leave program.

  endif.

endmodule.

module consiste_senha input.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCA010O01

 

MODULE status_0001 OUTPUT.

  DATA: itab_pfstatus TYPE TABLE OF ty_pfstatus,

        wa_pfstatus   TYPE ty_pfstatus.

  FREE itab_pfstatus.

  IF v_cria = 'J' or v_cpf is initial.

    wa_pfstatus-fcode = 'DELE'.

    APPEND wa_pfstatus TO itab_pfstatus.

    wa_pfstatus-fcode = 'LOG_TRILHA'.

    APPEND wa_pfstatus TO itab_pfstatus.

  ENDIF.

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

  if /pws/zycat036-bloqueio is initial.

    wa_pfstatus-fcode = 'UNLOC'.

    APPEND wa_pfstatus TO itab_pfstatus.

  endif.

* << Fim da inclusão

  SET PF-STATUS '0001' EXCLUDING itab_pfstatus.

  set titlebar '0001'.

  LOOP AT SCREEN.

    IF /pws/zycat036-cpf IS INITIAL.

      IF screen-name NE '/PWS/ZYCAT036-CPF' AND

         screen-name NE 'Q_CPF'.

        screen-input    = 0.

        screen-active   = 0.

        screen-required = 0.

      ENDIF.

    ELSE.

      IF v_cria = 'J'.

        IF screen-name = 'T_NEWPASWD' OR

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

           screen-name = '/PWS/ZYCAT036-BLOQUEIO' OR

* << Fim da inclusão

           screen-name = 'V_NEWPASWD'.

          screen-input    = 0.

          screen-active   = 0.

          screen-required = 0.

        ENDIF.

      ENDIF.

    ENDIF.

    MODIFY SCREEN.

  ENDLOOP.

ENDMODULE.

 

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

Modificações efetuadas em REPS /PWS/MZYCA011F01

 

...

    LOOP AT itab_zycat033_ant INTO wa_zycat033.

      APPEND wa_zycat033 TO itab_zycat033t.

    ENDLOOP.

  ENDIF.

  PERFORM inicializa_texto.

  itab_tline_ant[] = itab_tline[].

  IF sy-tcode = '/PWS/ZYCA011_E' OR

    ( sy-tcode NE '/PWS/ZYCA011_E' AND

      ( /pws/zycat030-status = 'EP' OR

        /pws/zycat030-status = 'ES' OR

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

        /pws/zycat030-status = '01' or

        /pws/zycat030-status = '02' or

* << Fim da inclusão

        /pws/zycat030-status = 'EX' ) AND

      /pws/zycat030-processamento IS INITIAL ).

    v_exibe = 'X'.

    IF sy-tcode NE '/PWS/ZYCA011_E' AND

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

      /pws/zycat030-status = 'EP'.

* << Fim da exclusão

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

      ( /pws/zycat030-status = 'EP' or

        /pws/zycat030-status = '01' or

        /pws/zycat030-status = '02' ).

* << Fim da inclusão

      MESSAGE i015 WITH text-i07 text-i08.

    ELSEIF sy-tcode NE '/PWS/ZYCA011_E' AND

       /pws/zycat030-status = 'ES'.

      MESSAGE i015 WITH text-i10 text-i08.

    ELSEIF sy-tcode NE '/PWS/ZYCA011_E' AND

      /pws/zycat030-status = 'EX'.

      MESSAGE i015 WITH text-i11 text-i08.

    ENDIF.

  ELSE.

    CLEAR v_exibe.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCA011O01

 

...

  if /pws/zycat030-nrseq is initial.

    perform busca_sequencial.

  endif.

endmodule.

module atualiza_tela_oper output.

  move-corresponding itab_zycat031t to /pws/zycat031.

  move: itab_zycat031t-mark to v_mark.

  loop at screen.

    if ( itab_zycat031t-status = 'EP' or

         itab_zycat031t-status = 'EX' or

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

         itab_zycat031t-status = '01' OR

         itab_zycat031t-status = '02' OR

* << Fim da inclusão

         itab_zycat031t-status = 'ES' ) and

       /pws/zycat030-processamento is initial.

      if screen-name ne 'BOT_ENQ' and

         screen-name ne 'V_MARK'.

        screen-input = '0'.

      endif.

    endif.

    if not itab_zycat031t-operacao is initial.

      if screen-name = '/PWS/ZYCAT031-NBS'        or

         screen-name = '/PWS/ZYCAT031-COD_PAIS'   or

...

 

...

  set pf-status '0001'.

  set titlebar '0100'.

endmodule.

module verifica_autorizacao output.

  authority-check object 'S_TCODE' id 'TCD' field sy-tcode.

  if sy-subrc ne 0.

    message e015 with text-e06.

  endif.

endmodule.

module verifica_cpf output.

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

  DATA: v_bloqueio TYPE /pws/zycat036-bloqueio.

* << Fim da inclusão

  check /pws/zycat037 is initial.

  select single * from /pws/zycat037

    where usuario = sy-uname.

  if sy-subrc ne 0.

    message e061 with text-e08 sy-uname text-e09.

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

  ENDIF.

  CLEAR v_bloqueio.

  SELECT SINGLE bloqueio

    FROM /pws/zycat036

    INTO v_bloqueio

    WHERE cpf = /pws/zycat037-cpf.

  IF NOT v_bloqueio IS INITIAL.

    message e015 with text-e32 text-e33.

* << Fim da inclusão

  endif.

endmodule.

module status_0002 output.

  set pf-status '0002'.

endmodule.

module status_0003 output.

  set pf-status '0003'.

  set titlebar '0003'.

endmodule.

 

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

Modificações efetuadas em REPS /PWS/MZYCA012F01

 

...

  ENDIF.

ENDFORM.

FORM atualiza_tela USING   p_itab_zycat039 STRUCTURE itab_zycat039_r

                           p_wa_zycat039   STRUCTURE /pws/zycat039.

  MOVE-CORRESPONDING p_itab_zycat039 TO p_wa_zycat039.

  MOVE p_itab_zycat039-mark TO v_mark.

  IF /pws/zycat030-processamento IS INITIAL AND

     ( p_wa_zycat039-status = 'EP' OR

       p_wa_zycat039-status = 'EX' OR

       p_wa_zycat039-status = 'PS' OR

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

       p_wa_zycat039-status = '01' or

       p_wa_zycat039-status = '02' or

* << Fim da inclusão

       p_wa_zycat039-status = 'ES' ).

    LOOP AT SCREEN.

      IF screen-name NE 'V_MARK'.

        screen-input = 0.

        MODIFY SCREEN.

      ENDIF.

    ENDLOOP.

  ELSE.

    LOOP AT SCREEN.

      IF ( screen-name = 'WA_ZYCAT039R-REMESSA' AND

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCA012O01

 

...

  SET PF-STATUS '0002'.

  SET TITLEBAR '0002'.

ENDMODULE.

MODULE verifica_autorizacao OUTPUT.

  AUTHORITY-CHECK OBJECT 'S_TCODE' ID 'TCD' FIELD sy-tcode.

  IF sy-subrc NE 0.

    MESSAGE e015 WITH text-e03.

  ENDIF.

ENDMODULE.

MODULE verifica_cpf OUTPUT.

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

  data: v_bloqueio type /pws/zycat036-bloqueio.

* << Fim da inclusão

  CHECK /pws/zycat037 IS INITIAL.

  SELECT SINGLE * FROM /pws/zycat037

    WHERE usuario = sy-uname.

  IF sy-subrc NE 0.

    MESSAGE e061 WITH text-e04 sy-uname text-e05.

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

  endif.

  clear v_bloqueio.

  select single bloqueio

    from /pws/zycat036

    into v_bloqueio

    where cpf = /pws/zycat037-cpf.

  if not v_bloqueio is initial.

    message e015 with text-e19 text-e20.

* << Fim da inclusão

  ENDIF.

ENDMODULE.

MODULE status_0100 OUTPUT.

  REFRESH itab_fcode.

  IF v_exibe IS INITIAL.

    wa_fcode-ucomm = 'MODIF'.

    APPEND wa_fcode TO itab_fcode.

  ENDIF.

  SET PF-STATUS '0100' EXCLUDING itab_fcode.

  IF v_exibe IS INITIAL.

...

 

 

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

Modificações efetuadas em REPT /PWS/SAPMZYCA010

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: I08

 

Texto: (13 caracteres)

"User unlocked"

 

Comprimento máximo: 21

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: I08

 

Texto: (21 caracteres)

"Usuário Desbloqueado."

 

Comprimento máximo: 21

 

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

Incluído símbolo de texto:

 

Idioma: ES

 

Símbolo: I08

 

Texto: (18 caracteres)

"Usuario desbloqueó"

 

Comprimento máximo: 21

 

 

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

Modificações efetuadas em REPT /PWS/SAPMZYCA011

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: E31

 

Texto: (23 caracteres)

"Report RAS / RVS Number"

 

Comprimento máximo: 23

 

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

Incluído símbolo de texto:

 

Idioma: ES

 

Símbolo: E31

 

Texto: (23 caracteres)

"Informe RAS / RVS Númer"

 

Comprimento máximo: 23

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: E32

 

Texto: (37 caracteres)

"User locked by access problems to the"

 

Comprimento máximo: 44

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: E32

 

Texto: (44 caracteres)

"Usuário bloqueado por problemas de acesso ao"

 

Comprimento máximo: 44

 

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

Incluído símbolo de texto:

 

Idioma: ES

 

Símbolo: E32

 

Texto: (44 caracteres)

"Usuario bloqueado por problemas de acceso al"

 

Comprimento máximo: 44

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: E33

 

Texto: (40 caracteres)

"Siscoserv site. Perform the unlock user."

 

Comprimento máximo: 44

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: E33

 

Texto: (44 caracteres)

"Siscoserv. Efetuar o desbloqueio do usuário."

 

Comprimento máximo: 44

 

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

Incluído símbolo de texto:

 

Idioma: ES

 

Símbolo: E33

 

Texto: (44 caracteres)

"Siscoserv. Lleve a cabo el usuario de desblo"

 

Comprimento máximo: 44

 

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

Modificado símbolo de texto:

 

Idioma: EN

 

Símbolo: I02

 

Texto: (29 caracteres)

"Unsaved changes will be lost."

 

Comprimento máximo: 39

 

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

Modificado símbolo de texto:

 

Idioma: ES

 

Símbolo: I02

 

Texto: (37 caracteres)

"Los cambios no guardados se perderán."

 

Comprimento máximo: 39

 

 

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

Modificações efetuadas em REPT /PWS/SAPMZYCA012

 

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

Excluído símbolo de texto:

 

Idioma: EN

 

Símbolo: 015

 

Texto: (29 caracteres)

"the necessary characteristics"

 

Comprimento máximo: 30

 

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

Excluído símbolo de texto:

 

Idioma: ES

 

Símbolo: 015

 

Texto: (30 caracteres)

"las características necesarias"

 

Comprimento máximo: 30

 

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

Excluído símbolo de texto:

 

Idioma: EN

 

Símbolo: E12

 

Texto: (34 caracteres)

"Process already associated RAS/RVS"

 

Comprimento máximo: 38

 

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

Excluído símbolo de texto:

 

Idioma: ES

 

Símbolo: E12

 

Texto: (38 caracteres)

"Proceso ya está asociada  otro RAS/RVS"

 

Comprimento máximo: 38

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: E19

 

Texto: (37 caracteres)

"User locked by access problems to the"

 

Comprimento máximo: 44

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: E19

 

Texto: (44 caracteres)

"Usuário bloqueado por problemas de acesso ao"

 

Comprimento máximo: 44

 

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

Incluído símbolo de texto:

 

Idioma: ES

 

Símbolo: E19

 

Texto: (44 caracteres)

"Usuario bloqueado por problemas de acceso al"

 

Comprimento máximo: 44

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: E20

 

Texto: (40 caracteres)

"Siscoserv site. Perform the unlock user."

 

Comprimento máximo: 44

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: E20

 

Texto: (44 caracteres)

"Siscoserv. Efetuar o desbloqueio do usuário."

 

Comprimento máximo: 44

 

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

Incluído símbolo de texto:

 

Idioma: ES

 

Símbolo: E20

 

Texto: (44 caracteres)

"Siscoserv. Lleve a cabo el usuario de desblo"

 

Comprimento máximo: 44

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: I21

 

Texto: (37 caracteres)

"Partner of the associated process dif"

 

Comprimento máximo: 37

 

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

Incluído símbolo de texto:

 

Idioma: ES

 

Símbolo: I21

 

Texto: (34 caracteres)

"Socio del proceso asociado difiere"

 

Comprimento máximo: 37

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: I22

 

Texto: (29 caracteres)

"Company outside the RAS / RVS"

 

Comprimento máximo: 33

 

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

Incluído símbolo de texto:

 

Idioma: ES

 

Símbolo: I22

 

Texto: (31 caracteres)

"Compañía fuera de los RAS / RVS"

 

Comprimento máximo: 33