Nesta publicação do blogue, temos o prazer de apresentar um método poderoso que irá revolucionar a forma como gerencia e acompanha as alterações no seu armazenamento de dados. Vamos revelar o conceito de “carimbo”, um marcador especializado concebido para simplificar a monitorização da modificação de dados, e mostrar-lhe como adaptar estes carimbos aos seus requisitos específicos.
Monitorização de alterações de dados
O que é um carimbo/stamp
Antes de entrarmos nos pormenores, vamos esclarecer o que queremos dizer com “carimbo” (stamp) neste contexto. Essencialmente, um “carimbo” serve como um marcador utilizado para acompanhar a modificação da entidade de dados, permitindo-lhe manter um registo abrangente das alterações efetuadas aos seus dados.
Controle de alterações de dados
ATIVAR O CONTROLe DE ALTERAÇÕES DE DADOS
Pode iniciar o controle de alterações de dados através de um processo simples. Comece clicando com o botão direito do mouse na tabela ou tabelas que pretende monitorar na janela da estrutura. A partir daí, selecione o menu do item “Ativar o seguimento da alteração de dados”.
Nota: esta simples ação desencadeia a criação de dois componentes indispensáveis: um campo “__GlobalStamp” e uma tabela “__DeletedRecords”. Estes elementos constituem a base para um acompanhar e gerenciar de forma precisa e eficaz as alterações de dados no seu armazenamento de dados.
Obter modificação de dados
A função .getGlobalStamp() é uma ferramenta fundamental que permite aos utilizadores obter os carimbos de modificação global atuais associados ao seu armazenamento de dados. Estes carimbos funcionam como indicadores do estado de modificação dos seus dados, fornecendo informações valiosas sobre alterações e atualizações no seu conjunto de dados.
Exemplo de obter alterações de dados desde ontem
//1. Primeiro armazenamos o carimbo global atual para uso futuro
StoreTodayStamp(ds.getGlobalStamp())
//2. No dia seguinte, lemos o carimbo que armazenamos no dia anterior.
var $yesterdayStamp : Integer
$yesterdayStamp := ReadStoredStamp()
//3. Obtém a lista de entidades modificadas na tabela 'product'
//armazenadas desde o carimbo do dia anterior.
var $modifiedProd : cs.productSelection
$modifiedProd:=ds.product.query("__GlobalStamp >= :1"; $yesterdayStamp)
Neste exemplo, StoreTodayStamp e ReadStoredStamp são métodos de projeto que terá de criar para armazenar e recuperar um carimbo de referência.
Exemplo de obtenção de informações sobre registos eliminados desde ontem
//4. Consiga informações sobre entidades apagadas desde o carimbo feito no dia anterior.
var $deletedProdInfo : cs.__DeletedRecordsSelection
$deletedProdInfo:=ds.__DeletedRecords.query("__Stamp >= :1"; $yesterdayStamp)
Num mundo em que a gestão precisa de dados é crucial, esta funcionalidade coloca-o no lugar do maestro. Fornece informações claras sobre as alterações dos seus dados, permitindo-lhe monitorar eficazmente, tal como no HDI. Além disso, permite uma sincronização de dados precisa, perfeita para tarefas como atualizações incrementais. É também uma forma mais moderna de lidar com a sincronização de dados do que a replicação via SQL. Esta funcionalidade é a chave para um controle de dados eficiente, facilitando a gestão, a monitoração e o acompanhamento das alterações no seu armazenamento de dados. Bem-vindo a uma abordagem mais inteligente da gestão de dados, com vantagens que vão desde a monitoração à cópia de segurança e à sincronização incremental.