none
PAF-ECF - controle de registros alterados RRS feed

  • Pergunta

  • Olá,

    No Anexo VIII, observação "b", devemos indicar os registros que foram alterados por fora do sistema. Isso poderia ser feito de um modo relativamente simples por meio de triggers no banco de dados. Ocorre que ao usar triggers um homologar de PAF-ECF me disse que isso constaria como observação no Laudo, pois alguns Estados não aceitam triggers para tratar esse requisito.

    Gostaria de saber se algum de vocês já enfrentaram isso e em quais Estados.

    Abraços.

    segunda-feira, 3 de outubro de 2011 22:10

Respostas

  • Bom dia!

    Dificilmente eles iram saber se é trigger ou não. Mas há homologadores que não aceitam triggers, por exemplo, TECPAR (Curitiba).

    Se vc analisar, realmente a trigger não é segura, é relativamente fácil alguem ir no banco de dados e desabilitar a trigger ou mesmo remover e alterar o registro e o PAF-ECF não consegui mais saber quais registros foram alterados.

    Por exemplo, banco de dados como FireBird e Postgre é muito fácil conectar sem qualquer tipo de proteção, bastando alterar um arquivo de configuração.

    Eu fiz o tratamento no código. Na tabela que eu precisa saber se houve alteração eu coloquei uma coluna que contém um MD5 Criptografado (irreversível) concatenado todas as colunas que o PAF-ECF exige. Quando eu faço a alteração eu sei como alterar este MD5, mas se alguem for no banco de dados e alterar, quando vou gerar o arquivo do PAF-ECF eu concateno novamente as colunas que o PAF-ECF exige e comparo com a coluna do MD5 que eu gravei. Se for diferente alguém alterou fora do PAF-ECF, caso contrário, esta tudo OK.

    T+

    terça-feira, 4 de outubro de 2011 11:09

Todas as Respostas

  • Bom dia!

    Dificilmente eles iram saber se é trigger ou não. Mas há homologadores que não aceitam triggers, por exemplo, TECPAR (Curitiba).

    Se vc analisar, realmente a trigger não é segura, é relativamente fácil alguem ir no banco de dados e desabilitar a trigger ou mesmo remover e alterar o registro e o PAF-ECF não consegui mais saber quais registros foram alterados.

    Por exemplo, banco de dados como FireBird e Postgre é muito fácil conectar sem qualquer tipo de proteção, bastando alterar um arquivo de configuração.

    Eu fiz o tratamento no código. Na tabela que eu precisa saber se houve alteração eu coloquei uma coluna que contém um MD5 Criptografado (irreversível) concatenado todas as colunas que o PAF-ECF exige. Quando eu faço a alteração eu sei como alterar este MD5, mas se alguem for no banco de dados e alterar, quando vou gerar o arquivo do PAF-ECF eu concateno novamente as colunas que o PAF-ECF exige e comparo com a coluna do MD5 que eu gravei. Se for diferente alguém alterou fora do PAF-ECF, caso contrário, esta tudo OK.

    T+

    terça-feira, 4 de outubro de 2011 11:09
  • E quanto a exclusão de registros por exemplo...

    Se for excluído um registro r04 (Cupom), no arquivo deverá ser mostrado os registros r05 (Itens do cupom) referentes a este registro excluído ou não?

    quinta-feira, 13 de outubro de 2011 17:34