Скрипты
Разработка

Слияние дублей

Здравствуйте.

При слиянии дублирующихся записей все записи с детали "Комментарий" удаляются, кроме тех, которые принадлежат оставшейся записи.
Можно ли это как-то исправить?

Нравится

1 комментарий

Добрый день, Александра!
Решить поставленную задачу можно доработав функцию function SaveMergeResults() в сервисе Common\Duplicates\Merge\wnd_MergeDuplicatesScript.

[javascript]
function SaveMergeResults() { debugger;
var Result =
CallMergeProcedure(Self, MergeDuplicates.Table,
MergeDuplicates.ResultDataset, MergeDuplicates.MergeIDs);
if (!Result) {
return;
}
ShowInformationDialog(RecordsWasSuccessfullyMergedMessage);
SendNotify(Self, MSG_DUPLICATESMERGED, Self.Attributes('ResultID'));
Self.Close();
}
[/javascript]

Вызов CallMergeProcedure содержит всю необходимую Вам информацию:

  • MergeDuplicates.ResultDataset - результатирующий датасет (запись в разделе)
  • MergeDuplicates.MergeIDs - массив ID записей, присоединяемых к MergeDuplicates.ResultDataset

Пройдитесь по всем MergeIDs, получите связанные с ними интересующие данные (судя по постановке вопроса имеется необходимость слить комментарии к инцидентам). Например "связанными данными" тут будут комментарии на детали "Комментарии" в разделе "Инциденты" и обновите для них поле IncidentID на MergeDuplicates.ResultDataset.Values('ID').

Показать все комментарии