// Check ItemTemplateLinks for Big Dean's (BusinessID 27) bizId = 27; // Count total links qCount = queryExecute("SELECT COUNT(*) as cnt FROM ItemTemplateLinks", {}, { datasource: "payfrit" }); // Get template item IDs for this business qTemplates = queryExecute(" SELECT DISTINCT tl.TemplateItemID, i.ItemName FROM ItemTemplateLinks tl JOIN Items i ON i.ItemID = tl.TemplateItemID WHERE i.ItemBusinessID = :bizId ", { bizId: bizId }, { datasource: "payfrit" }); templates = []; for (row in qTemplates) { arrayAppend(templates, { "TemplateItemID": row.TemplateItemID, "ItemName": row.ItemName }); } // Get items that should be categories (ParentItemID=0, not templates) qCategories = queryExecute(" SELECT i.ItemID, i.ItemName, i.ItemParentItemID, i.ItemIsCollapsible FROM Items i WHERE i.ItemBusinessID = :bizId AND i.ItemParentItemID = 0 AND i.ItemIsCollapsible = 0 AND NOT EXISTS (SELECT 1 FROM ItemTemplateLinks tl WHERE tl.TemplateItemID = i.ItemID) ORDER BY i.ItemSortOrder ", { bizId: bizId }, { datasource: "payfrit" }); categories = []; for (row in qCategories) { arrayAppend(categories, { "ItemID": row.ItemID, "ItemName": row.ItemName }); } writeOutput(serializeJSON({ "OK": true, "totalTemplateLinks": qCount.cnt, "templatesForBusiness": templates, "categoriesForBusiness": categories }));