how do I debug a mobile app builder actionitem script?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-30-2025 01:01 AM - edited 03-30-2025 01:02 AM
Hi All,
has anyone some description on how I could debug a script which has been created in #Mobile App Builder in an ActionItem Script? (see attached Screen Shoot
I no not know if this is possible at all, I want to check what the content of the function parameters (parm_input, parm_variable, actionResult) are?
(function WriteBackAction(parm_input, parm_variable, actionResult) {
// Type appropriate comment here, and begin script below
for (i = 0; i < parm_input["barcodes.asset_number"].length; i++) {
var assetNumber = parm_input["barcodes.asset_number"][i];
var modelNumber = parm_input["barcodes.model_number"][i];
var SMAssetUsage = new global.SMAssetUsage();
SMAssetUsage.addAssetToStockroom(assetNumber, modelNumber);
}
})(parm_input, parm_variable, actionResult);
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-30-2025 04:30 AM
Hello @Gerald Fuchs,
Can you please give a try with below script
function WriteBackAction(parm_input, parm_variable, actionResult) {
// Check if required parameters are present
if (!parm_input || !parm_input["barcodes.asset_number"] || !parm_input["barcodes.model_number"]) {
gs.log("Error: Missing required parameters");
return;
}
// Loop through asset numbers and model numbers
for (var i = 0; i < parm_input["barcodes.asset_number"].length; i++) {
var assetNumber = parm_input["barcodes.asset_number"][i];
var modelNumber = parm_input["barcodes.model_number"][i];
// Check if asset number and model number are present
if (!assetNumber || !modelNumber) {
gs.log("Error: Missing asset number or model number");
continue;
}
try {
var SMAssetUsage = new global.SMAssetUsage();
SMAssetUsage.addAssetToStockroom(assetNumber, modelNumber);
} catch (e) {
gs.log("Error: " + e.message);
}
}
}
Please accept my solution and mark it as helpful if it works.
Thanks,
Vijay
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-30-2025 08:48 AM
Hi @Gerald Fuchs ,
(function WriteBackAction(parm_input, parm_variable, actionResult) {
// Log the entire input objects
gs.info("parm_input: " + JSON.stringify(parm_input));
gs.info("parm_variable: " + JSON.stringify(parm_variable));
gs.info("actionResult: " + JSON.stringify(actionResult));
for (var i = 0; i < parm_input["barcodes.asset_number"].length; i++) {
var assetNumber = parm_input["barcodes.asset_number"][i];
var modelNumber = parm_input["barcodes.model_number"][i];
gs.info("Processing Asset - Asset Number: " + assetNumber + ", Model Number: " + modelNumber);
var SMAssetUsage = new global.SMAssetUsage();
SMAssetUsage.addAssetToStockroom(assetNumber, modelNumber);
}
})(parm_input, parm_variable, actionResult);
use the above script.
Thanks and Regards,
Pratap Singh Sisodia