Para criar eventos do eSocial é necessário que no banco de dados exista a sequence rh_sq_2662_01. Com ela temos a garantia que um id de evento do eSocial não se repetirá na estrutura. Ao tentar gerar um evento o sistema faz a leitura da sequence e caso ela não exista realiza a criação dela.
Acontece que em alguns casos, o usuário pode não ter permissão para leitura da sequence e/ou permissão para inserir ela, ocasionando os erros abaixo:
ORA-01031 - Insufficient privileges
Verificando a existência de sequences e criação:
Verificar existência:
Oracle
Select
USER_SEQUENCES.SEQUENCE_NAME
From
USER_SEQUENCES
Where
USER_SEQUENCES.SEQUENCE_NAME = ’RH_SQ_2662_01’
SQL Server
Select
SYS.SEQUENCES.NAME
From
SYS.SEQUENCES
Where
SYS.SEQUENCES.NAME = ’RH_SQ_2662_01’
Como Criar:
Oracle
Create Sequence 'RH_SQ_2662_01' Increment By 1 Start With 1 MinValue 1 MaxValue 99999 Cycle Cache 200;
SQL Server
Create Sequence 'RH_SQ_2662_01' As Int Increment By 1 Start With 1 MinValue 1 MaxValue 99999 Cycle Cache 200;
Observação:
Além de ter permissão para criar “sequences”, o usuário do banco de dados utilizado pelo sistema deverá ter permissão de leitura para os seguintes:
- Oracle
USER_SEQUENCES
- SQL Server
SYS.SEQUENCES