AnaFarms
09/29/2023, 4:32 PMvar numLines = itemRecord.getLineCount({ sublistId: vendorSublist });
for (var i = 0; i < numLines; i++) {
var currentVendor = itemRecord.getSublistValue({
sublistId: vendorSublist,
fieldId: 'vendor',
line: i
});
log.debug({ title: 'currentVendor', details: currentVendor + ', ' + 'line: ' + i });
if (currentVendor == vendorId) {
hasVendor = true;
var unformattedVendorPrice = itemRecord.getSublistValue({
sublistId: vendorSublist,
fieldId: 'purchaseprice',
line: i
});
var vendorPrice = parseFloat(unformattedVendorPrice).toFixed(2);
if (vendorPrice != tradePrice) {
itemRecord.selectLine({ sublistId: vendorSublist, line: i });
itemRecord.setCurrentSublistValue({
sublistId: vendorSublist,
fieldId: 'purchaseprice',
value: tradePrice
});
itemRecord.commitLine({ sublistId: vendorSublist });
}
break;
}
}
itemRecord.save();
battk
09/29/2023, 5:11 PMbattk
09/29/2023, 5:11 PMbattk
09/29/2023, 5:12 PMAnaFarms
09/29/2023, 5:12 PMAnaFarms
09/29/2023, 5:13 PMbattk
09/29/2023, 5:16 PMAnaFarms
09/29/2023, 5:17 PMitemRecord.selectLine({ sublistId:vendorSublist, line: i });
itemRecord.setCurrentSublistValue({
sublistId: vendorSublist,
fieldId: 'purchaseprice',
value: tradePrice
});
itemRecord.commitLine({ sublistId: vendorSublist });
AnaFarms
09/29/2023, 5:18 PMOld Code:
itemRecord.selectLine({ sublistId: vendorSublist, line: i });
itemRecord.setCurrentSublistValue({
sublistId: vendorSublist,
fieldId: 'purchaseprice',
value: tradePrice
});
itemRecord.commitLine({ sublistId: vendorSublist });
AnaFarms
09/29/2023, 5:19 PMNew code that does work... but I'd prefer to update the existing line.
//remove line
itemRecord.selectLine({
sublistId: vendorSublist,
line: i
});
itemRecord.removeLine({
sublistId: vendorSublist,
line: i
});
//readd it
itemRecord.selectNewLine({ sublistId: vendorSublist });
itemRecord.setCurrentSublistValue({
sublistId: vendorSublist,
fieldId: 'vendor',
value: vendorId
});
itemRecord.setCurrentSublistValue({
sublistId: vendorSublist,
fieldId: 'subsidiary',
value: 3
});
itemRecord.setCurrentSublistValue({
sublistId: vendorSublist,
fieldId: 'preferredvendor',
value: true
});
itemRecord.setCurrentSublistValue({
sublistId: vendorSublist,
fieldId: 'purchasepricecurrency',
value: 1
});
itemRecord.setCurrentSublistValue({
sublistId: vendorSublist,
fieldId: 'purchaseprice',
value: tradePrice
});
itemRecord.commitLine({ sublistId: vendorSublist });
battk
09/29/2023, 5:34 PMbattk
09/29/2023, 5:35 PMAnaFarms
09/29/2023, 5:38 PMAnaFarms
09/29/2023, 5:38 PMbattk
09/29/2023, 5:39 PMbattk
09/29/2023, 5:39 PMAnaFarms
09/29/2023, 5:39 PMAnaFarms
09/29/2023, 5:39 PMbattk
09/29/2023, 5:42 PMbattk
09/29/2023, 5:43 PMbattk
09/29/2023, 5:43 PMbattk
09/29/2023, 5:44 PMAnaFarms
09/29/2023, 6:59 PMitemRecord.selectLine({
sublistId: vendorSublist,
line: i
});
var vendorSubrecord = itemRecord.getCurrentSublistSubrecord({
sublistId: 'itemvendor',
fieldId: 'itemvendorprice'
});
log.debug({ title: 'vendorSubrecord', details: vendorSubrecord });
vendorSubrecord.setValue({
fieldId: 'vendorprice',
value: tradePrice
});
itemRecord.commitLine({ sublistId: vendorSublist });
AnaFarms
09/29/2023, 6:59 PM{
"id": "156863",
"type": "itemvendorprice",
"isDynamic": true,
"fields": {
"nsapiCT": "1696013507138",
"sys_id": "2609269057979792",
"sys_parentid": "2609268150473793",
"entryformquerystring": "item=5&e=T&vendor=3350973&id=156863",
"_eml_nkey_": "123456_SB1~-4~3~N",
"id": "156863",
"type": "itemvendorprice"
},
"sublists": {
"itemvendorpricelines": {
"currentline": {
"id": "",
"sys_id": "-2609269057862991",
"sys_parentid": "2609269057858487",
"vendorcurrency": "",
"vendorprice": "",
"#": "2"
},
"line 1": {
"id": "157013",
"sys_id": "2609269057963661",
"sys_parentid": "2609269057979792",
"vendorcurrency": "1",
"vendorprice": "1.00"
}
}
}
}
AnaFarms
09/29/2023, 6:59 PMbattk
09/29/2023, 7:01 PMbattk
09/29/2023, 7:01 PMbattk
09/29/2023, 7:01 PMbattk
09/29/2023, 7:01 PM