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
9.0
Produto:
Nota
Descrição
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