Última alteração a 22/08/2024
O plugin adota um controlo de versionamento baseado num sistema de hashing. Cada pipeline, possui um controlo de versionamento, ou seja, possui uma chave de hashing que permite identificar se o subset de informação (hashset) ainda não foi objeto de integração ou se eventualmente sofreu alguma alteração nos seus dados, requerendo para o efeito nova integração.
Esta técnica de hashing aplica-se a um segmento de informação (hashset), isto é, permite identificar quais os atributos que compõem a chave de hashing (ignorando, deste modo,pedidos de integração quando a entidade sofre alteração em atributos que não constam na composição da chave).
Todos os pipelines possuem uma chave de hashing (definida recorrendo a campos do utilizador) no ERP V10 e um ficheiro de hashing (definido em formato JSON), para controlo de versionamento. Caso uma entidade física (tabela) possua vários pipelines, deverão ser criadas tantas chaves de hashing quanto o número de pipelines derivados da tabela (poderão eventualmente partilhar o ficheiro de hashing).
Composição (Campos do Utilizador) da Hashing Key de um Pipeline:
- SourceHash: atributo usado para cálculo da hash no sistema (calculado sempre que é realizado um pedido de leitura);
- TargetHash: atributo usado para preservar o valor da hash no sistema (atualizado sempre que é realizada uma integração com sucesso);
- IsSync: atributo usado nas listas de integração como filtro condicional (este atributo indica se o registo já foi integrado, é controlado pela comparação dos valores dos atributos “SourceHash” e “TargetHash”);
Composição do Hashing File de um Pipeline:
- Algorithm: identifica o algoritmo de hashing (quando ignorado, o sistema assume MD5);
- BaseEntity: identifica a entidade base, ou seja, a tabela principal (atributo de definição obrigatória);
- LyncEntities: identifica as entidades relacionadas, incluindo a entidade base (quando ignorado, o sistema assume a BaseEntity);
- Attributes: identificamos atributos que constituem a chave de hashing, ou seja, os atributos usados para o cálculo da hash (quando ignorado, o sistema assume todos os atributos);
- Filter: identifica o filtro condicional aplicar no cálculo da hash (quando ignorado, o sistema não aplica qualquer condicionalismo);
- FieldSourceHash: identifica o atributo SourceHash (quando ignorado, o sistema assume SourceHash);
- FieldTargetHash: identifica o atributo TargetHash (quando ignorado, o sistema assume TargetHash );
- FieldSyncHash: identifica o atributo IsSync (quando ignorado, o sistema assume IsSync );
A imagem seguinte apresenta a metodologia conceptual do processo de hashing suportado pelo plugin.
O plugin distribui vários exemplos de hashing files em: VKPluginSAMPLESHASHETS, que poderá explorar e utilizar no desenvolvimentos dos seus pipelines.
Adicionar aos favoritos ou partilhar este artigo