Newer
Older
import("system.util");
import("Employee_lib");
import("system.process");

David Büchler
committed
import("system.logging");
import("DuplicateScanner_lib");
//let processParameters = {
// filterName: "PersonDuplicates",
// targetEntity: "Person_entity" //process.execute is only able to handle strings
//}
//let userId = EmployeeUtils.getCurrentUserId();
//
//try
//{
// let processId = "manualrun_rebuild_duplicatecache_" + util.getNewUUID();
// process.executeTimer(processId, "RebuildDuplicatesCache_serverProcess", 0, true, false, process.TIMERTYPE_SERVER_RUN, userId, false, process.THREADPRIORITY_LOW)
// process.stopTimer(processId);
//}
//catch (exception)
//{
// logging.log(" exception-> " + exception);
//}

David Büchler
committed
var filterName = "PersonDuplicates";
var targetEntity = "Person_entity";

David Büchler
committed
var recordBlockSize = DuplicateScannerUtils.GetBlockSizeForScanner(filterName, targetEntity);

David Büchler
committed
let duplicateFieldsConfig = DuplicateScannerUtils.LoadIndexFieldsConfiguration(filterName, targetEntity);
let resultFields = DuplicateScannerUtils.LoadResultFields(filterName, targetEntity);

David Büchler
committed
//logging.log("duplicateFieldsConfig -> " + duplicateFieldsConfig);
//logging.log("resultFields -> " + resultFields);

David Büchler
committed

David Büchler
committed
logging.log("Delete all " + targetEntity + " duplicates");

David Büchler
committed
DuplicateScannerUtils.DeleteDuplicateClustersByTargetEntity(targetEntity);

David Büchler
committed
logging.log("Recalculate all " + targetEntity + " duplicates");

David Büchler
committed
DuplicateScannerUtils.RebuildDuplicatesCache(filterName, targetEntity, recordBlockSize,

David Büchler
committed
duplicateFieldsConfig, resultFields, null);

David Büchler
committed
DuplicateScannerUtils.RefreshUnrelatedDuplicateRelations(targetEntity);