Добрый день.
Собственно, суть вопроса записана в заголовке темы. Есть предложение сохранять связку созданной записи с процессом посредством поля WorkflowItemID. Для случаев изменения записи - это связку не нужно проставлять (что логично).
Не знаю: счтитать это ошибкой или нет, но я бы сказал, что это ошибка и ее нужно исправить. Пишу для того, чтобы ее исправили в коробочной версии.
Terrasoft XRM 3.4.0.130
Как я ее исправил у себя
Изменения вносились в скрипт wa_ReadWriteDataScript.
Выделил комментариями /* added */
изменения/добавления.
function ReadWriteData(Action /* added */, WorkflowItemID /* added */) {
...
if (Source == rwsQuery) {
...
} else if (Source == rwsDataset) {
...
if (Direction == rwdParamsToDataset) {
if (WriteMethod == rwdwmUpdate) {
...
} else {
Dataset.Append();
FilterValue = Connector.GenGUID();
var IDDataField = Dataset.DataFields.ItemsByName('ID');
if (IDDataField) {
IDDataField.Value = FilterValue;
}
/* added */
var WorkflowItemIDDataField = Dataset.DataFields.ItemsByName('WorkflowItemID');
if (WorkflowItemIDDataField) {
WorkflowItemIDDataField.Value = WorkflowItemID;
}
/* added */
}
} else {
...
}
...
}
function wa_ReadWriteDataOnExecute(WorkflowAction, ActionItem, ItemDataset,
IsComplete, ResultLinkCodes) {
var LinkCode = '';
try {
var Result = ReadWriteData(ActionItem /* added */, ItemDataset.Values('ID')/* added */);
...
} catch (e) {
...
}
...
}