Вот видео , которое показывает, с чем я борюсь.
Вот высокоуровневое описание процесса, за которым следует написанный мною код JavaScript.
ПРОЦЕСС Я построил 2 Zaps, каждый из которых работает так:
ШАГ 1 - Триггер (форма Cognito, которая имеет повторяющиеся разделы)
ШАГ 2 - Код JavaScript (который создает массив полей формы для ОДНОГО из повторяющихся разделов и разделяет их на отдельные строки, используя .split
)
ШАГ 3 - Действие (создает задачу ZOHO CRM для каждой строки)
Первый Zap запускается в одном из разделов формы (Посещения с продажами), а второй запускается Zapв другом разделе формы (посещения без продаж).Каждый из этих Zaps отлично работает сам по себе, поэтому я знаю, что код хорош, но я хочу объединить два Zaps в один, объединяя код.
Я пытался объединить, выполнив пять шагов:
Триггер - Код1 - Zoho1 - Код2 - Zoho2
, но задачи Zoho2 повторялись
Затем я попытался изменить порядок пяти шагов:
Триггер - Код1 - Код2 - Zoho1 - Zoho2
, но теперь задачи Zoho1 И задачи Zoho2были продублированы.
Наконец я попытался объединить ВСЕ код JavaScript в один:
Tigger - CombinedCode1 + 2 - Zoho 1 - Zoho2
, но только строкииз массивов в «Code2» доступны мне, когда я иду, чтобы отобразить их в Zoho1.
КОД:
if (inputData.stringVSAccount == null) {
var listVSAccountArray = [];
var listVSUnitsArray = [];
var listVSPriceArray = [];
var listVSNotesArray = [];
var listVSVisitCallArray = [];
} else {
var listVSAccountArray = inputData.stringVSAccount.split(",");
var listVSUnitsArray = inputData.stringVSUnits.split(",");
var listVSPriceArray = inputData.stringVSPrice.split(",");
var listVSNotesArray = inputData.stringVSNotes.split(",");
var listVSVisitCallArray = inputData.stringVSVisitCall.split(",");
}
var output = [];
var arrayNos = listVSAccountArray.length;
var i = 0;
do {
var thisItemVSAccount = new String(listVSAccountArray[i]);
var thisItemVSUnits = new String(listVSUnitsArray[i]);
var thisItemVSPrice = new String(listVSPriceArray[i]);
var thisItemVSNotes = new String(listVSNotesArray[i]);
var thisItemVSVisitCall = new String(listVSVisitCallArray[i]);
var thisItemObj = {};
thisItemObj.itemVSAccount = thisItemVSAccount;
thisItemObj.itemVSUnits = thisItemVSUnits;
thisItemObj.itemVSPrice = thisItemVSPrice;
thisItemObj.itemVSNotes = thisItemVSNotes;
thisItemObj.itemVSVisitCall = thisItemVSVisitCall;
output.push({ thisItemObj });
i++;
} while (i < arrayNos);
//This is where the second zaps code is pasted in the combined version
if (inputData.stringOVAccount == null) {
var listOVAccountArray = [];
var listOVNotesArray = [];
var listOVVisitCallArray = [];
} else {
var listOVAccountArray = inputData.stringOVAccount.split(",");
var listOVNotesArray = inputData.stringOVNotes.split(",");
var listOVVisitCallArray = inputData.stringOVVisitCall.split(",");
}
var output = [];
var arrayNos = listOVAccountArray.length;
var i = 0;
do {
var thisItemOVAccount = new String(listOVAccountArray[i]);
var thisItemOVNotes = new String(listOVNotesArray[i]);
var thisItemOVVisitCall = new String(listOVVisitCallArray[i]);
var thisItemObj = {};
thisItemObj.itemOVAccount = thisItemOVAccount;
thisItemObj.itemOVNotes = thisItemOVNotes;
thisItemObj.itemOVVisitCall = thisItemOVVisitCall;
output.push({ thisItemObj });
i++;
} while (i < arrayNos);
Я только начал изучать JavaScript на этой неделе и чувствую, что упускаю что-то очевидное, возможно, набор скобок.Спасибо за любую помощь