Base de Conhecimento

Framework - Linha Datasul - TEC - Erro 16435 na utilização de Timeout com banco de dados Oracle

time.png Tempo aproximado para leitura: 00:02:51 min

Ocorrência
Na execução do programa MEN906ZATIMEOUT - Funções de Programa é apresentada a mensagem de erro 16435 identificando a não existência ou falta de permissão em tabelas ou views do banco de dados: Não foi possível executar programa! A execução do programa "men906zatimeout" não foi possível devido ao problema: Tabela ou view não existe ou não pode ser acessada. (1436)

Ambiente
Framework - Framework (Linha Datasul) - Oracle - Todas as versões

Causa
Quando habilitado o timeout em ambiente Oracle, os usuários necessitam de leitura em tabelas como a v$session. É comum a falta desta permissão.

Solução
Sugere-se a criação de uma role para que seja atribuída a todos os usuários Oracle configurados para o Datasul.

1) Os comandos abaixo criam a role e atribuem alguns privilégios necessários para o funcionamento do Datasul, porém para tal criação precisa ser feita com o usuário sys do Oracle.

CREATE ROLE DATASUL;
GRANT ALTER SYSTEM TO DATASUL;
GRANT CREATE SEQUENCE TO DATASUL;
GRANT CREATE SESSION TO DATASUL;
GRANT CREATE TABLE TO DATASUL;
GRANT SELECT ANY DICTIONARY TO DATASUL;
GRANT SELECT ANY TABLE TO DATASUL;
GRANT SELECT ANY SEQUENCE TO DATASUL;
GRANT SELECT ON SYS.ARGUMENT$ TO DATASUL;
GRANT SELECT ON SYS.COL$ TO DATASUL;
GRANT SELECT ON SYS.COM$ TO DATASUL;
GRANT SELECT ON SYS.CON$ TO DATASUL;
GRANT SELECT ON SYS.DUAL TO DATASUL;
GRANT SELECT ON SYS.ICOL$ TO DATASUL;
GRANT SELECT ON SYS.IND$ TO DATASUL;
GRANT SELECT ON SYS.LINK$ TO DATASUL;
GRANT SELECT ON SYS.OBJ$ TO DATASUL;
GRANT SELECT ON SYS.PROCEDURE$ TO DATASUL;
GRANT SELECT ON SYS.SEQ$ TO DATASUL;
GRANT SELECT ON SYS.SYN$ TO DATASUL;
GRANT SELECT ON SYS.TAB$ TO DATASUL;
GRANT SELECT ON SYS.TS$ TO DATASUL;
GRANT SELECT ON SYS.USER$ TO DATASUL;
GRANT SELECT ON SYS.VIEW$ TO DATASUL;
GRANT CONNECT TO DATASUL;
GRANT RESOURCE TO DATASUL;


2) Feita a criação e concedido os privilégios, tem que conceder aos usuários a role criada. Deverá ser executado o comando de grant para todos os usuários que conectam os bancos. Tire um dump de dados da tabela bco_empres do emsfnd para verificar os usuários utilizados nas conexões. Segue exemplo da sintaxe para efetuar o grant:

GRANT DATASUL TO EMS2CAD;


Importante
Depois que criar a role, efetuar a permissão de grant para todos os usuários utilizados para conexão com o Oracle.  Não esquecer das permissões para o usuário do banco emsfnd que consta no arquivo .pf.

Esse artigo foi útil?
Usuários que acharam isso útil: 0 de 0

0 Comentários

Por favor, entre para comentar.
X Fechar

Olá ,

Há pendência referente a um de seus produtos contratados para a empresa ().

Entre em contato com o Centro de Serviços TOTVS para tratativa.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cobrança – Verificação de pendências financeiras . clique aqui.

TOTVS

X Fechar

Olá ,

Seu contato não está cadastrado no Portal do Cliente como um perfil autorizado a solicitar consultoria telefônica.

Por gentileza, acione o administrador do Portal de sua empresa para: (1)configurar o seu acesso ou (2)buscar um perfil autorizado para registro desse atendimento.

Em caso de dúvidas sobre a identificação do contato administrador do Portal, ligue (11) 4003-0015, opção 7 e, em seguida, opção 4 para buscar o suporte com o time de Assessoria ao Portal do Cliente. . clique aqui.

TOTVS

X Fechar

Olá ,

Para o atendimento de "Consultoria Telefônica" você deverá estar de acordo com o Faturamento.

TOTVS

X Fechar

Olá,

Algo inesperado ocorreu, e o usuario nao foi reconhecido ou você nao se encontra logado

Por favor realize um novo login

Em caso de dúvidas, entre em contato com o administrador do Portal de Clientes de sua empresa para verificação do seu usuário, ou Centro de Serviços TOTVS.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cadastros . clique aqui.

TOTVS

Chat _

Preencha os campos abaixo para iniciar o atendimento:

Chat _