Class: TransactionLog

@nginstack/engine/lib/database/TransactionLog~ TransactionLog


new TransactionLog()

Classe que permite a consulta e manutenção dos registros do log transacional.

Methods


clear()

Limpa a tabela iLog com base nas configurações de máximo de dias de manutenção de registros.


query(options)

Realiza a consulta dos registros de log transacional com base nos parâmetros informados.

A consulta falhará se não for informado pelo menos um dos parâmetros: "version", "startDate" ou "recordKey".

Parameters:
Name Type Description
options LogQueryOptions

Filtros de busca dos logs transacionais.

Returns:

Resultado da consulta aos logs transacionais.

Type
DataSet

queryDeletedKeysInLog_(fieldName, existingKeys, maxRetention)

Parameters:
Name Type Description
fieldName string
existingKeys Array.<number>
maxRetention number
Returns:
Type
Array.<number>

redoLog(options)

Realiza o processo de reaplicação de logs transacionais com base num conjunto de filtros de pesquisa ou num DataSet de logs consultados previamente.

Parameters:
Name Type Description
options LogQueryOptions | LogApplyOptions

Parâmetros de filtragem dos logs transacionais ou um DataSet contendo registros de log previamente consultados para serem reaplicados.

Returns:

Numero de versão gerado pela reversão.

Type
number
Example
const TransactionLog = require('@nginstack/engine/lib/database/TransactionLog.js');
const transactionLog = new TransactionLog();
const redoVersion = transactionLog.redoLog({
  version: 999999 // Reaplica as alterações da versão especificada
});

undoLog(options)

Realiza o processo de reversão de logs transacionais com base num conjunto de filtros de pesquisa ou num DataSet de logs consultados previamente.

Parameters:
Name Type Description
options LogQueryOptions | LogApplyOptions

Parâmetros de filtragem dos logs transacionais ou um DataSet contendo registros de log previamente consultados para serem revertidos.

Returns:

Numero de versão gerado pela reversão.

Type
number
Example
const TransactionLog = require('@nginstack/engine/lib/database/TransactionLog.js');
const LogTypes = require('@nginstack/engine/keys/LogTypes.js');
const transactionLog = new TransactionLog();
const undoVersion = transactionLog.undoLog({ // Desfaz as remoções executadas pelos usuários no período
  logType: LogTypes.DELETE,
  userKey: [8888, 9999],
  startDate: new Date(),
  endDate: new Date(),
  startTime: '21:00:00',
  endTime: '22:00:00'
});