Sistema Auditável

28/10/2015

0

Boa tarde. Desde já agradeço.
Minha dúvida: Tenho um sistema com nível admin e técnico, data e hora usando o timer. Uso o delphi 7 e o bd access. Preciso que esse sistema seja auditável. Preciso, em outro form, que apareça as ações e quem fez (admin ou técnico).
EU pensei em fazer assim: Criar uma tabela audit com nível, ação, hora e data. e quando o cliente clicar no botão para cadastrar o pedido, ir para a tabela pedido normalmente, mas tambem ir para a tabela audit o que ele fez.
Alguém pode me ajudar? Pfvr
Oliveira

Oliveira

Responder

Posts

30/10/2015

Raimundo Pereira

Boa tarde,
CRIE DUAS VARIÁVEIS GLOBAL NO FORM PRINCIPAL;
User_LOGADO:STRING;
PERFIL_User_LOGADO:STRING;

Ao realizar o login preencha as variáveis

User_LOGADO:=DM.login.FIELBYNAME('USER').ASSTRING;
PERFIL_User_LOGADO:=DM.login.FIELBYNAME('PERFIL').ASSTRING;

Crie uma tabela LOG_ATIVIDADE .
Campos

USER: TEXTO
PERFIL: TEXTO
DATA: TEXTO
HORA: TEXTO
PROCEDIMENTO:TEXTO

Depois da rotina que deseja criar um log rotina insira o registro na tabela LOG.
DM.LOG_ATIVIDADE.OPEN;
DM.LOG_ATIVIDADE.INSERT;
DM.LOG_ATIVIDADE.FIELBYNAME('DATA').ASSTRING:=DateToStr(NOW);
DM.LOG_ATIVIDADE.FIELBYNAME('USER').ASSTRING:=User_LOGADO;
DM.LOG_ATIVIDADE.FIELBYNAME('PERFIL').ASSTRING:=PERFIL_User_LOGADO;
DM.LOG_ATIVIDADE.FIELBYNAME('HORA').ASSTRING:=TimeToStr(NOW);
DM.LOG_ATIVIDADE.FIELBYNAME('PROCEDIMENTO').ASSTRING:='FICA A SEU CRITÉRIO - INCLUSÃO DE VENDA/CANCELAMENTO DE VENDA NÚMERO 555885';
DM.LOG_ATIVIDADE.POST;,

Observação : O acess não suporta muitos registros, caso você deseje armazenar log de todas as rotinas.
Uma dica é armazenar apenas o necessário.
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar