Add Operations - WO Shortages page with MTS/MTO shortage tracking

Automates the production manager's manual workflow of checking xTuple WO
Schedule + Kit Material Shortage for FA department work orders. Two tabs:
WO Shortages (detail per WO + shortage line) and Critical Parts (aggregated
parts blocking near-term shipments). Nav button added to all pages.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-03 12:22:35 -04:00
parent e55d6acdbd
commit ac93d07e68
34 changed files with 2256 additions and 1 deletions

View File

@@ -52,6 +52,7 @@ statistics-app/
| Operations | Engineering Holds | Work orders with active engineering holds |
| Operations | Job Drawing Status | CAD drawing builds from `mpe.inventortools` |
| Operations | Unused Items | Items with no inventory transactions for X days (default 365), filterable via input widget |
| Operations | WO Shortages | 2 tabs: WO shortage details (MTS/MTO) for FA dept top-level WOs; Critical Parts aggregation. Uses `mpe.itematmdept`, `mpe.wogrpext`, `womatl`, `qtynetable()` |
## Critical Conventions
@@ -74,7 +75,7 @@ Every `widgetId` across all pages must be globally unique. Use short descriptive
- Active page button: `buttonColor` = `{{appsmith.theme.colors.backgroundColor}}` (dynamic binding).
- Inactive buttons: `buttonColor` = `#ffffff` (static, no dynamic binding).
- `parentId` for nav widgets = the Canvas `widgetId` inside that page's `Container1.json` (varies per page — always read it).
- Current nav sections: **Sales** (rows 016), **Engineering** (rows 1834), **Operations** (rows 3652).
- Current nav sections: **Sales** (rows 016), **Engineering** (rows 1834), **Operations** (rows 3656).
### Canvas Widget IDs (for parentId in Container1 children)
@@ -89,6 +90,7 @@ Every `widgetId` across all pages must be globally unique. Use short descriptive
| Operations - Job Drawing Status | `jd1canvas01` |
| Operations - Engineering Holds | `eh1canvas01` |
| Operations - Unused Items | `ui1canvas01` |
| Operations - WO Shortages | `ws1canvas01` |
### Grid Layout

View File

@@ -64,6 +64,10 @@
{
"id": "Operations - Unused Items",
"isDefault": false
},
{
"id": "Operations - WO Shortages",
"isDefault": false
}
],
"unpublishedAppLayout": {

View File

@@ -0,0 +1,45 @@
{
"animateLoading": true,
"borderRadius": "0.375rem",
"bottomRow": 56,
"boxShadow": "none",
"buttonColor": "#ffffff",
"buttonVariant": "PRIMARY",
"disabledWhenInvalid": false,
"dynamicBindingPathList": [],
"dynamicTriggerPathList": [
{
"key": "onClick"
}
],
"isDefaultClickDisabled": true,
"isDisabled": false,
"isLoading": false,
"isVisible": true,
"key": "eh1btnwosk",
"leftColumn": 0,
"minWidth": 120,
"mobileBottomRow": 56,
"mobileLeftColumn": 0,
"mobileRightColumn": 16,
"mobileTopRow": 52,
"needsErrorInfo": false,
"onClick": "{{navigateTo('Operations - WO Shortages', {}, 'SAME_WINDOW');}}",
"originalBottomRow": 56,
"originalTopRow": 52,
"parentColumnSpace": 3.841796875,
"parentId": "eh1canvas01",
"parentRowSpace": 10,
"placement": "START",
"recaptchaType": "V3",
"renderMode": "CANVAS",
"resetFormOnClick": false,
"responsiveBehavior": "hug",
"rightColumn": 64,
"text": "WO Shortages",
"topRow": 52,
"type": "BUTTON_WIDGET",
"version": 1,
"widgetId": "eh1btnwos",
"widgetName": "Button3Copy3"
}

View File

@@ -0,0 +1,45 @@
{
"animateLoading": true,
"borderRadius": "0.375rem",
"bottomRow": 56,
"boxShadow": "none",
"buttonColor": "#ffffff",
"buttonVariant": "PRIMARY",
"disabledWhenInvalid": false,
"dynamicBindingPathList": [],
"dynamicTriggerPathList": [
{
"key": "onClick"
}
],
"isDefaultClickDisabled": true,
"isDisabled": false,
"isLoading": false,
"isVisible": true,
"key": "jd1btnwosk",
"leftColumn": 0,
"minWidth": 120,
"mobileBottomRow": 56,
"mobileLeftColumn": 0,
"mobileRightColumn": 16,
"mobileTopRow": 52,
"needsErrorInfo": false,
"onClick": "{{navigateTo('Operations - WO Shortages', {}, 'SAME_WINDOW');}}",
"originalBottomRow": 56,
"originalTopRow": 52,
"parentColumnSpace": 3.841796875,
"parentId": "jd1canvas01",
"parentRowSpace": 10,
"placement": "START",
"recaptchaType": "V3",
"renderMode": "CANVAS",
"resetFormOnClick": false,
"responsiveBehavior": "hug",
"rightColumn": 64,
"text": "WO Shortages",
"topRow": 52,
"type": "BUTTON_WIDGET",
"version": 1,
"widgetId": "jd1btnwos",
"widgetName": "Button3Copy3"
}

View File

@@ -0,0 +1,45 @@
{
"animateLoading": true,
"borderRadius": "0.375rem",
"bottomRow": 56,
"boxShadow": "none",
"buttonColor": "#ffffff",
"buttonVariant": "PRIMARY",
"disabledWhenInvalid": false,
"dynamicBindingPathList": [],
"dynamicTriggerPathList": [
{
"key": "onClick"
}
],
"isDefaultClickDisabled": true,
"isDisabled": false,
"isLoading": false,
"isVisible": true,
"key": "ui1btnwosk",
"leftColumn": 0,
"minWidth": 120,
"mobileBottomRow": 56,
"mobileLeftColumn": 0,
"mobileRightColumn": 16,
"mobileTopRow": 52,
"needsErrorInfo": false,
"onClick": "{{navigateTo('Operations - WO Shortages', {}, 'SAME_WINDOW');}}",
"originalBottomRow": 56,
"originalTopRow": 52,
"parentColumnSpace": 3.841796875,
"parentId": "ui1canvas01",
"parentRowSpace": 10,
"placement": "START",
"recaptchaType": "V3",
"renderMode": "CANVAS",
"resetFormOnClick": false,
"responsiveBehavior": "hug",
"rightColumn": 64,
"text": "WO Shortages",
"topRow": 52,
"type": "BUTTON_WIDGET",
"version": 1,
"widgetId": "ui1btnwos",
"widgetName": "Button3Copy3"
}

View File

@@ -0,0 +1,33 @@
{
"gitSyncId": "5a6b061faad540f286ebea06_720e519a-3116-4557-ad8e-350b8cc846d1",
"unpublishedPage": {
"isHidden": false,
"layouts": [
{
"dsl": {
"backgroundColor": "none",
"bottomRow": 1240,
"canExtend": true,
"containerStyle": "none",
"detachFromLayout": true,
"dynamicBindingPathList": [],
"dynamicTriggerPathList": [],
"leftColumn": 0,
"minHeight": 1292,
"parentColumnSpace": 1,
"parentRowSpace": 1,
"rightColumn": 4896,
"snapColumns": 64,
"snapRows": 124,
"topRow": 0,
"type": "CANVAS_WIDGET",
"version": 94,
"widgetId": "0",
"widgetName": "MainContainer"
}
}
],
"name": "Operations - WO Shortages",
"slug": "operations-wo-shortages"
}
}

View File

@@ -0,0 +1,65 @@
WITH fa_wos AS (
SELECT w.wo_id, w.wo_duedate
FROM wo w
JOIN itemsite isite ON w.wo_itemsite_id = isite.itemsite_id
JOIN item i ON isite.itemsite_item_id = i.item_id
WHERE w.wo_status IN ('R','E','I')
AND w.wo_ordtype != 'W'
AND EXISTS (
SELECT 1 FROM mpe.itematmdept
WHERE itematmdept_item_id = i.item_id
AND 'FA' = ANY(itematmdept_departments)
)
AND i.item_id NOT IN (
SELECT itemgrpitem_item_id FROM itemgrpitem WHERE itemgrpitem_itemgrp_id = 97
)
AND w.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '11 days')
),
mts_shorts AS (
SELECT fw.wo_id AS top_wo_id,
mi.item_number, mi.item_descrip1, 'MTS' AS shortage_type,
(wm.womatl_qtyreq - wm.womatl_qtyiss) AS qty_needed,
qtynetable(mis.itemsite_id, true) AS qty_onhand
FROM fa_wos fw
JOIN mpe.wogrpext wwg ON fw.wo_id = wwg.wogrpext_wo_id
JOIN mpe.wogrpext rwg ON wwg.wogrpext_root_wo_id = rwg.wogrpext_root_wo_id
JOIN wo sub_wo ON rwg.wogrpext_wo_id = sub_wo.wo_id
JOIN womatl wm ON sub_wo.wo_id = wm.womatl_wo_id
JOIN itemsite mis ON wm.womatl_itemsite_id = mis.itemsite_id
JOIN item mi ON mis.itemsite_item_id = mi.item_id
WHERE sub_wo.wo_status IN ('R','I')
AND wm.womatl_picklist AND wm.womatl_qtyreq > wm.womatl_qtyiss
),
mto_shorts AS (
SELECT fw.wo_id AS top_wo_id,
mi.item_number, mi.item_descrip1, 'MTO' AS shortage_type,
(sub_wo.wo_qtyord - sub_wo.wo_qtyrcv) AS qty_needed,
NULL::numeric AS qty_onhand
FROM fa_wos fw
JOIN mpe.wogrpext wwg ON fw.wo_id = wwg.wogrpext_wo_id
JOIN mpe.wogrpext rwg ON wwg.wogrpext_root_wo_id = rwg.wogrpext_root_wo_id
JOIN wo sub_wo ON rwg.wogrpext_wo_id = sub_wo.wo_id
JOIN itemsite mis ON sub_wo.wo_itemsite_id = mis.itemsite_id
JOIN item mi ON mis.itemsite_item_id = mi.item_id
WHERE sub_wo.wo_qtyord > sub_wo.wo_qtyrcv
AND sub_wo.wo_status IN ('R','I')
AND mi.item_id IN (
SELECT DISTINCT itemgrpitem_item_id FROM itemgrpitem
JOIN itemgrp ON itemgrpitem_itemgrp_id = itemgrp_id
WHERE itemgrp_name IN ('MAGNETIC-TRANSFORMER','MAGNETIC-PLUMBING','SUB-ASSEMBLY','PCB GROUP-WORK','INPUT-BD')
)
),
all_shorts AS (
SELECT * FROM mts_shorts
UNION ALL
SELECT * FROM mto_shorts
)
SELECT item_number AS part_number,
item_descrip1 AS part_description,
shortage_type,
COUNT(DISTINCT top_wo_id) AS wos_blocked,
SUM(qty_needed) AS total_qty_needed,
MAX(qty_onhand) AS qty_available
FROM all_shorts
GROUP BY item_number, item_descrip1, shortage_type
ORDER BY wos_blocked DESC, total_qty_needed DESC;

View File

@@ -0,0 +1,31 @@
{
"gitSyncId": "5a6b061faad540f286ebea06_4161599c-ad00-4cae-814b-58edf5cbacd5",
"id": "Operations - WO Shortages_critical_parts",
"pluginId": "postgres-plugin",
"pluginType": "DB",
"unpublishedAction": {
"actionConfiguration": {
"body": "WITH fa_wos AS (\n SELECT w.wo_id, w.wo_duedate\n FROM wo w\n JOIN itemsite isite ON w.wo_itemsite_id = isite.itemsite_id\n JOIN item i ON isite.itemsite_item_id = i.item_id\n WHERE w.wo_status IN ('R','E','I')\n AND w.wo_ordtype != 'W'\n AND EXISTS (\n SELECT 1 FROM mpe.itematmdept\n WHERE itematmdept_item_id = i.item_id\n AND 'FA' = ANY(itematmdept_departments)\n )\n AND i.item_id NOT IN (\n SELECT itemgrpitem_item_id FROM itemgrpitem WHERE itemgrpitem_itemgrp_id = 97\n )\n AND w.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '11 days')\n),\nmts_shorts AS (\n SELECT fw.wo_id AS top_wo_id,\n mi.item_number, mi.item_descrip1, 'MTS' AS shortage_type,\n (wm.womatl_qtyreq - wm.womatl_qtyiss) AS qty_needed,\n qtynetable(mis.itemsite_id, true) AS qty_onhand\n FROM fa_wos fw\n JOIN mpe.wogrpext wwg ON fw.wo_id = wwg.wogrpext_wo_id\n JOIN mpe.wogrpext rwg ON wwg.wogrpext_root_wo_id = rwg.wogrpext_root_wo_id\n JOIN wo sub_wo ON rwg.wogrpext_wo_id = sub_wo.wo_id\n JOIN womatl wm ON sub_wo.wo_id = wm.womatl_wo_id\n JOIN itemsite mis ON wm.womatl_itemsite_id = mis.itemsite_id\n JOIN item mi ON mis.itemsite_item_id = mi.item_id\n WHERE sub_wo.wo_status IN ('R','I')\n AND wm.womatl_picklist AND wm.womatl_qtyreq > wm.womatl_qtyiss\n),\nmto_shorts AS (\n SELECT fw.wo_id AS top_wo_id,\n mi.item_number, mi.item_descrip1, 'MTO' AS shortage_type,\n (sub_wo.wo_qtyord - sub_wo.wo_qtyrcv) AS qty_needed,\n NULL::numeric AS qty_onhand\n FROM fa_wos fw\n JOIN mpe.wogrpext wwg ON fw.wo_id = wwg.wogrpext_wo_id\n JOIN mpe.wogrpext rwg ON wwg.wogrpext_root_wo_id = rwg.wogrpext_root_wo_id\n JOIN wo sub_wo ON rwg.wogrpext_wo_id = sub_wo.wo_id\n JOIN itemsite mis ON sub_wo.wo_itemsite_id = mis.itemsite_id\n JOIN item mi ON mis.itemsite_item_id = mi.item_id\n WHERE sub_wo.wo_qtyord > sub_wo.wo_qtyrcv\n AND sub_wo.wo_status IN ('R','I')\n AND mi.item_id IN (\n SELECT DISTINCT itemgrpitem_item_id FROM itemgrpitem\n JOIN itemgrp ON itemgrpitem_itemgrp_id = itemgrp_id\n WHERE itemgrp_name IN ('MAGNETIC-TRANSFORMER','MAGNETIC-PLUMBING','SUB-ASSEMBLY','PCB GROUP-WORK','INPUT-BD')\n )\n),\nall_shorts AS (\n SELECT * FROM mts_shorts\n UNION ALL\n SELECT * FROM mto_shorts\n)\nSELECT item_number AS part_number,\n item_descrip1 AS part_description,\n shortage_type,\n COUNT(DISTINCT top_wo_id) AS wos_blocked,\n SUM(qty_needed) AS total_qty_needed,\n MAX(qty_onhand) AS qty_available\nFROM all_shorts\nGROUP BY item_number, item_descrip1, shortage_type\nORDER BY wos_blocked DESC, total_qty_needed DESC;",
"encodeParamsToggle": true,
"paginationType": "NONE",
"pluginSpecifiedTemplates": [
{
"value": true
}
],
"timeoutInMillisecond": 30000
},
"confirmBeforeExecute": false,
"datasource": {
"id": "xTuple_GoLive",
"isAutoGenerated": false,
"name": "xTuple_GoLive",
"pluginId": "postgres-plugin"
},
"dynamicBindingPathList": [],
"name": "critical_parts",
"pageId": "Operations - WO Shortages",
"runBehaviour": "AUTOMATIC",
"userSetOnLoad": false
}
}

View File

@@ -0,0 +1,31 @@
{
"gitSyncId": "5a6b061faad540f286ebea06_b35a2922-d6c3-44b3-a553-8fd1177a6837",
"id": "Operations - WO Shortages_wo_shortages",
"pluginId": "postgres-plugin",
"pluginType": "DB",
"unpublishedAction": {
"actionConfiguration": {
"body": "WITH fa_wos AS (\n SELECT w.wo_id, w.wo_number, w.wo_subnumber, w.wo_status, w.wo_duedate,\n w.wo_qtyord, i.item_number AS wo_item, i.item_descrip1 AS wo_descrip\n FROM wo w\n JOIN itemsite isite ON w.wo_itemsite_id = isite.itemsite_id\n JOIN item i ON isite.itemsite_item_id = i.item_id\n WHERE w.wo_status IN ('R','E','I')\n AND w.wo_ordtype != 'W'\n AND EXISTS (\n SELECT 1 FROM mpe.itematmdept\n WHERE itematmdept_item_id = i.item_id\n AND 'FA' = ANY(itematmdept_departments)\n )\n AND i.item_id NOT IN (\n SELECT itemgrpitem_item_id FROM itemgrpitem\n WHERE itemgrpitem_itemgrp_id = 97\n )\n)\n-- MTS shortages (stock material lines)\nSELECT\n CASE\n WHEN fw.wo_duedate < CURRENT_DATE THEN 'Past Due'\n WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '4 days') THEN 'This Week'\n WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '11 days') THEN 'Next Week'\n WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '18 days') THEN '2 Weeks'\n WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '25 days') THEN '3 Weeks'\n ELSE '3+ Weeks'\n END AS due_group,\n CASE\n WHEN fw.wo_duedate < CURRENT_DATE THEN 1\n WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '4 days') THEN 2\n WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '11 days') THEN 3\n WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '18 days') THEN 4\n WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '25 days') THEN 5\n ELSE 6\n END AS due_group_sort,\n fw.wo_number || '-' || fw.wo_subnumber AS wo_num,\n fw.wo_status AS wo_status,\n fw.wo_duedate,\n fw.wo_item,\n fw.wo_descrip,\n 'MTS' AS shortage_type,\n formatwonumber(sub_wo.wo_id) AS sub_wo_num,\n mi.item_number AS short_part,\n mi.item_descrip1 AS short_part_desc,\n wm.womatl_qtyreq AS qty_required,\n wm.womatl_qtyiss AS qty_issued,\n qtynetable(mis.itemsite_id, true) AS qty_onhand\nFROM fa_wos fw\nJOIN mpe.wogrpext wwg ON fw.wo_id = wwg.wogrpext_wo_id\nJOIN mpe.wogrpext rwg ON wwg.wogrpext_root_wo_id = rwg.wogrpext_root_wo_id\nJOIN wo sub_wo ON rwg.wogrpext_wo_id = sub_wo.wo_id\nJOIN womatl wm ON sub_wo.wo_id = wm.womatl_wo_id\nJOIN itemsite mis ON wm.womatl_itemsite_id = mis.itemsite_id\nJOIN item mi ON mis.itemsite_item_id = mi.item_id\nWHERE sub_wo.wo_status IN ('R','I')\n AND wm.womatl_picklist\n AND wm.womatl_qtyreq > wm.womatl_qtyiss\n\nUNION ALL\n\n-- MTO shortages (manufactured sub-assemblies not complete)\nSELECT\n CASE\n WHEN fw.wo_duedate < CURRENT_DATE THEN 'Past Due'\n WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '4 days') THEN 'This Week'\n WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '11 days') THEN 'Next Week'\n WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '18 days') THEN '2 Weeks'\n WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '25 days') THEN '3 Weeks'\n ELSE '3+ Weeks'\n END AS due_group,\n CASE\n WHEN fw.wo_duedate < CURRENT_DATE THEN 1\n WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '4 days') THEN 2\n WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '11 days') THEN 3\n WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '18 days') THEN 4\n WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '25 days') THEN 5\n ELSE 6\n END AS due_group_sort,\n fw.wo_number || '-' || fw.wo_subnumber AS wo_num,\n fw.wo_status AS wo_status,\n fw.wo_duedate,\n fw.wo_item,\n fw.wo_descrip,\n 'MTO' AS shortage_type,\n formatwonumber(sub_wo.wo_id) AS sub_wo_num,\n mi.item_number AS short_part,\n mi.item_descrip1 AS short_part_desc,\n sub_wo.wo_qtyord AS qty_required,\n sub_wo.wo_qtyrcv AS qty_issued,\n NULL::numeric AS qty_onhand\nFROM fa_wos fw\nJOIN mpe.wogrpext wwg ON fw.wo_id = wwg.wogrpext_wo_id\nJOIN mpe.wogrpext rwg ON wwg.wogrpext_root_wo_id = rwg.wogrpext_root_wo_id\nJOIN wo sub_wo ON rwg.wogrpext_wo_id = sub_wo.wo_id\nJOIN itemsite mis ON sub_wo.wo_itemsite_id = mis.itemsite_id\nJOIN item mi ON mis.itemsite_item_id = mi.item_id\nWHERE sub_wo.wo_qtyord > sub_wo.wo_qtyrcv\n AND sub_wo.wo_status IN ('R','I')\n AND mi.item_id IN (\n SELECT DISTINCT itemgrpitem_item_id FROM itemgrpitem\n JOIN itemgrp ON itemgrpitem_itemgrp_id = itemgrp_id\n WHERE itemgrp_name IN ('MAGNETIC-TRANSFORMER','MAGNETIC-PLUMBING','SUB-ASSEMBLY','PCB GROUP-WORK','INPUT-BD')\n )\n\nORDER BY due_group_sort, wo_duedate, wo_num, shortage_type, short_part;",
"encodeParamsToggle": true,
"paginationType": "NONE",
"pluginSpecifiedTemplates": [
{
"value": true
}
],
"timeoutInMillisecond": 30000
},
"confirmBeforeExecute": false,
"datasource": {
"id": "xTuple_GoLive",
"isAutoGenerated": false,
"name": "xTuple_GoLive",
"pluginId": "postgres-plugin"
},
"dynamicBindingPathList": [],
"name": "wo_shortages",
"pageId": "Operations - WO Shortages",
"runBehaviour": "AUTOMATIC",
"userSetOnLoad": false
}
}

View File

@@ -0,0 +1,106 @@
WITH fa_wos AS (
SELECT w.wo_id, w.wo_number, w.wo_subnumber, w.wo_status, w.wo_duedate,
w.wo_qtyord, i.item_number AS wo_item, i.item_descrip1 AS wo_descrip
FROM wo w
JOIN itemsite isite ON w.wo_itemsite_id = isite.itemsite_id
JOIN item i ON isite.itemsite_item_id = i.item_id
WHERE w.wo_status IN ('R','E','I')
AND w.wo_ordtype != 'W'
AND EXISTS (
SELECT 1 FROM mpe.itematmdept
WHERE itematmdept_item_id = i.item_id
AND 'FA' = ANY(itematmdept_departments)
)
AND i.item_id NOT IN (
SELECT itemgrpitem_item_id FROM itemgrpitem
WHERE itemgrpitem_itemgrp_id = 97
)
)
-- MTS shortages (stock material lines)
SELECT
CASE
WHEN fw.wo_duedate < CURRENT_DATE THEN 'Past Due'
WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '4 days') THEN 'This Week'
WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '11 days') THEN 'Next Week'
WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '18 days') THEN '2 Weeks'
WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '25 days') THEN '3 Weeks'
ELSE '3+ Weeks'
END AS due_group,
CASE
WHEN fw.wo_duedate < CURRENT_DATE THEN 1
WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '4 days') THEN 2
WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '11 days') THEN 3
WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '18 days') THEN 4
WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '25 days') THEN 5
ELSE 6
END AS due_group_sort,
fw.wo_number || '-' || fw.wo_subnumber AS wo_num,
fw.wo_status AS wo_status,
fw.wo_duedate,
fw.wo_item,
fw.wo_descrip,
'MTS' AS shortage_type,
formatwonumber(sub_wo.wo_id) AS sub_wo_num,
mi.item_number AS short_part,
mi.item_descrip1 AS short_part_desc,
wm.womatl_qtyreq AS qty_required,
wm.womatl_qtyiss AS qty_issued,
qtynetable(mis.itemsite_id, true) AS qty_onhand
FROM fa_wos fw
JOIN mpe.wogrpext wwg ON fw.wo_id = wwg.wogrpext_wo_id
JOIN mpe.wogrpext rwg ON wwg.wogrpext_root_wo_id = rwg.wogrpext_root_wo_id
JOIN wo sub_wo ON rwg.wogrpext_wo_id = sub_wo.wo_id
JOIN womatl wm ON sub_wo.wo_id = wm.womatl_wo_id
JOIN itemsite mis ON wm.womatl_itemsite_id = mis.itemsite_id
JOIN item mi ON mis.itemsite_item_id = mi.item_id
WHERE sub_wo.wo_status IN ('R','I')
AND wm.womatl_picklist
AND wm.womatl_qtyreq > wm.womatl_qtyiss
UNION ALL
-- MTO shortages (manufactured sub-assemblies not complete)
SELECT
CASE
WHEN fw.wo_duedate < CURRENT_DATE THEN 'Past Due'
WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '4 days') THEN 'This Week'
WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '11 days') THEN 'Next Week'
WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '18 days') THEN '2 Weeks'
WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '25 days') THEN '3 Weeks'
ELSE '3+ Weeks'
END AS due_group,
CASE
WHEN fw.wo_duedate < CURRENT_DATE THEN 1
WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '4 days') THEN 2
WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '11 days') THEN 3
WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '18 days') THEN 4
WHEN fw.wo_duedate <= (date_trunc('week', CURRENT_DATE) + interval '25 days') THEN 5
ELSE 6
END AS due_group_sort,
fw.wo_number || '-' || fw.wo_subnumber AS wo_num,
fw.wo_status AS wo_status,
fw.wo_duedate,
fw.wo_item,
fw.wo_descrip,
'MTO' AS shortage_type,
formatwonumber(sub_wo.wo_id) AS sub_wo_num,
mi.item_number AS short_part,
mi.item_descrip1 AS short_part_desc,
sub_wo.wo_qtyord AS qty_required,
sub_wo.wo_qtyrcv AS qty_issued,
NULL::numeric AS qty_onhand
FROM fa_wos fw
JOIN mpe.wogrpext wwg ON fw.wo_id = wwg.wogrpext_wo_id
JOIN mpe.wogrpext rwg ON wwg.wogrpext_root_wo_id = rwg.wogrpext_root_wo_id
JOIN wo sub_wo ON rwg.wogrpext_wo_id = sub_wo.wo_id
JOIN itemsite mis ON sub_wo.wo_itemsite_id = mis.itemsite_id
JOIN item mi ON mis.itemsite_item_id = mi.item_id
WHERE sub_wo.wo_qtyord > sub_wo.wo_qtyrcv
AND sub_wo.wo_status IN ('R','I')
AND mi.item_id IN (
SELECT DISTINCT itemgrpitem_item_id FROM itemgrpitem
JOIN itemgrp ON itemgrpitem_itemgrp_id = itemgrp_id
WHERE itemgrp_name IN ('MAGNETIC-TRANSFORMER','MAGNETIC-PLUMBING','SUB-ASSEMBLY','PCB GROUP-WORK','INPUT-BD')
)
ORDER BY due_group_sort, wo_duedate, wo_num, shortage_type, short_part;

View File

@@ -0,0 +1,45 @@
{
"animateLoading": true,
"borderRadius": "0.375rem",
"bottomRow": 8,
"boxShadow": "none",
"buttonColor": "#ffffff",
"buttonVariant": "PRIMARY",
"disabledWhenInvalid": false,
"dynamicBindingPathList": [],
"dynamicTriggerPathList": [
{
"key": "onClick"
}
],
"isDefaultClickDisabled": true,
"isDisabled": false,
"isLoading": false,
"isVisible": true,
"key": "ws1btn1capk",
"leftColumn": 0,
"minWidth": 120,
"mobileBottomRow": 8,
"mobileLeftColumn": 0,
"mobileRightColumn": 16,
"mobileTopRow": 4,
"needsErrorInfo": false,
"onClick": "{{navigateTo('Sales - Capacity Planning', {}, 'SAME_WINDOW');}}",
"originalBottomRow": 8,
"originalTopRow": 4,
"parentColumnSpace": 3.841796875,
"parentId": "ws1canvas01",
"parentRowSpace": 10,
"placement": "START",
"recaptchaType": "V3",
"renderMode": "CANVAS",
"resetFormOnClick": false,
"responsiveBehavior": "hug",
"rightColumn": 64,
"text": "Capacity Planning",
"topRow": 4,
"type": "BUTTON_WIDGET",
"version": 1,
"widgetId": "ws1btn1cap",
"widgetName": "Button1"
}

View File

@@ -0,0 +1,45 @@
{
"animateLoading": true,
"borderRadius": "0.375rem",
"bottomRow": 12,
"boxShadow": "none",
"buttonColor": "#ffffff",
"buttonVariant": "PRIMARY",
"disabledWhenInvalid": false,
"dynamicBindingPathList": [],
"dynamicTriggerPathList": [
{
"key": "onClick"
}
],
"isDefaultClickDisabled": true,
"isDisabled": false,
"isLoading": false,
"isVisible": true,
"key": "ws1btn1shpk",
"leftColumn": 0,
"minWidth": 120,
"mobileBottomRow": 12,
"mobileLeftColumn": 0,
"mobileRightColumn": 16,
"mobileTopRow": 8,
"needsErrorInfo": false,
"onClick": "{{navigateTo('Sales - Units Shipped', {}, 'SAME_WINDOW');}}",
"originalBottomRow": 12,
"originalTopRow": 8,
"parentColumnSpace": 3.841796875,
"parentId": "ws1canvas01",
"parentRowSpace": 10,
"placement": "START",
"recaptchaType": "V3",
"renderMode": "CANVAS",
"resetFormOnClick": false,
"responsiveBehavior": "hug",
"rightColumn": 64,
"text": "Units Shipped",
"topRow": 8,
"type": "BUTTON_WIDGET",
"version": 1,
"widgetId": "ws1btn1shp",
"widgetName": "Button1Copy"
}

View File

@@ -0,0 +1,45 @@
{
"animateLoading": true,
"borderRadius": "0.375rem",
"bottomRow": 16,
"boxShadow": "none",
"buttonColor": "#ffffff",
"buttonVariant": "PRIMARY",
"disabledWhenInvalid": false,
"dynamicBindingPathList": [],
"dynamicTriggerPathList": [
{
"key": "onClick"
}
],
"isDefaultClickDisabled": true,
"isDisabled": false,
"isLoading": false,
"isVisible": true,
"key": "ws1btn1ordk",
"leftColumn": 0,
"minWidth": 120,
"mobileBottomRow": 16,
"mobileLeftColumn": 0,
"mobileRightColumn": 16,
"mobileTopRow": 12,
"needsErrorInfo": false,
"onClick": "{{navigateTo('Sales - Units Ordered', {}, 'SAME_WINDOW');}}",
"originalBottomRow": 16,
"originalTopRow": 12,
"parentColumnSpace": 3.841796875,
"parentId": "ws1canvas01",
"parentRowSpace": 10,
"placement": "START",
"recaptchaType": "V3",
"renderMode": "CANVAS",
"resetFormOnClick": false,
"responsiveBehavior": "hug",
"rightColumn": 64,
"text": "Units Ordered",
"topRow": 12,
"type": "BUTTON_WIDGET",
"version": 1,
"widgetId": "ws1btn1ord",
"widgetName": "Button1Copy2"
}

View File

@@ -0,0 +1,45 @@
{
"animateLoading": true,
"borderRadius": "0.375rem",
"bottomRow": 26,
"boxShadow": "none",
"buttonColor": "#ffffff",
"buttonVariant": "PRIMARY",
"disabledWhenInvalid": false,
"dynamicBindingPathList": [],
"dynamicTriggerPathList": [
{
"key": "onClick"
}
],
"isDefaultClickDisabled": true,
"isDisabled": false,
"isLoading": false,
"isVisible": true,
"key": "ws1btn2posk",
"leftColumn": 0,
"minWidth": 120,
"mobileBottomRow": 26,
"mobileLeftColumn": 0,
"mobileRightColumn": 16,
"mobileTopRow": 22,
"needsErrorInfo": false,
"onClick": "{{navigateTo('Pending POs', {}, 'SAME_WINDOW');}}",
"originalBottomRow": 26,
"originalTopRow": 22,
"parentColumnSpace": 3.841796875,
"parentId": "ws1canvas01",
"parentRowSpace": 10,
"placement": "START",
"recaptchaType": "V3",
"renderMode": "CANVAS",
"resetFormOnClick": false,
"responsiveBehavior": "hug",
"rightColumn": 64,
"text": "Pending POs",
"topRow": 22,
"type": "BUTTON_WIDGET",
"version": 1,
"widgetId": "ws1btn2pos",
"widgetName": "Button2All"
}

View File

@@ -0,0 +1,45 @@
{
"animateLoading": true,
"borderRadius": "0.375rem",
"bottomRow": 30,
"boxShadow": "none",
"buttonColor": "#ffffff",
"buttonVariant": "PRIMARY",
"disabledWhenInvalid": false,
"dynamicBindingPathList": [],
"dynamicTriggerPathList": [
{
"key": "onClick"
}
],
"isDefaultClickDisabled": true,
"isDisabled": false,
"isLoading": false,
"isVisible": true,
"key": "ws1btn2revk",
"leftColumn": 0,
"minWidth": 120,
"mobileBottomRow": 30,
"mobileLeftColumn": 0,
"mobileRightColumn": 16,
"mobileTopRow": 26,
"needsErrorInfo": false,
"onClick": "{{navigateTo('Pending Revisions', {}, 'SAME_WINDOW');}}",
"originalBottomRow": 30,
"originalTopRow": 26,
"parentColumnSpace": 3.841796875,
"parentId": "ws1canvas01",
"parentRowSpace": 10,
"placement": "START",
"recaptchaType": "V3",
"renderMode": "CANVAS",
"resetFormOnClick": false,
"responsiveBehavior": "hug",
"rightColumn": 64,
"text": "Pending Revisions",
"topRow": 26,
"type": "BUTTON_WIDGET",
"version": 1,
"widgetId": "ws1btn2rev",
"widgetName": "Button2Copy"
}

View File

@@ -0,0 +1,45 @@
{
"animateLoading": true,
"borderRadius": "0.375rem",
"bottomRow": 34,
"boxShadow": "none",
"buttonColor": "#ffffff",
"buttonVariant": "PRIMARY",
"disabledWhenInvalid": false,
"dynamicBindingPathList": [],
"dynamicTriggerPathList": [
{
"key": "onClick"
}
],
"isDefaultClickDisabled": true,
"isDisabled": false,
"isLoading": false,
"isVisible": true,
"key": "ws1btn2xgnk",
"leftColumn": 0,
"minWidth": 120,
"mobileBottomRow": 34,
"mobileLeftColumn": 0,
"mobileRightColumn": 16,
"mobileTopRow": 30,
"needsErrorInfo": false,
"onClick": "{{navigateTo('xGen', {}, 'SAME_WINDOW');}}",
"originalBottomRow": 34,
"originalTopRow": 30,
"parentColumnSpace": 3.841796875,
"parentId": "ws1canvas01",
"parentRowSpace": 10,
"placement": "START",
"recaptchaType": "V3",
"renderMode": "CANVAS",
"resetFormOnClick": false,
"responsiveBehavior": "hug",
"rightColumn": 64,
"text": "xGen",
"topRow": 30,
"type": "BUTTON_WIDGET",
"version": 1,
"widgetId": "ws1btn2xgn",
"widgetName": "Button2Copy2"
}

View File

@@ -0,0 +1,45 @@
{
"animateLoading": true,
"borderRadius": "0.375rem",
"bottomRow": 44,
"boxShadow": "none",
"buttonColor": "#ffffff",
"buttonVariant": "PRIMARY",
"disabledWhenInvalid": false,
"dynamicBindingPathList": [],
"dynamicTriggerPathList": [
{
"key": "onClick"
}
],
"isDefaultClickDisabled": true,
"isDisabled": false,
"isLoading": false,
"isVisible": true,
"key": "ws1btn3jdsk",
"leftColumn": 0,
"minWidth": 120,
"mobileBottomRow": 44,
"mobileLeftColumn": 0,
"mobileRightColumn": 16,
"mobileTopRow": 40,
"needsErrorInfo": false,
"onClick": "{{navigateTo('Operations - Job Drawing Status', {}, 'SAME_WINDOW');}}",
"originalBottomRow": 44,
"originalTopRow": 40,
"parentColumnSpace": 3.841796875,
"parentId": "ws1canvas01",
"parentRowSpace": 10,
"placement": "START",
"recaptchaType": "V3",
"renderMode": "CANVAS",
"resetFormOnClick": false,
"responsiveBehavior": "hug",
"rightColumn": 64,
"text": "Job Drawing Status",
"topRow": 40,
"type": "BUTTON_WIDGET",
"version": 1,
"widgetId": "ws1btn3jds",
"widgetName": "Button3"
}

View File

@@ -0,0 +1,45 @@
{
"animateLoading": true,
"borderRadius": "0.375rem",
"bottomRow": 48,
"boxShadow": "none",
"buttonColor": "#ffffff",
"buttonVariant": "PRIMARY",
"disabledWhenInvalid": false,
"dynamicBindingPathList": [],
"dynamicTriggerPathList": [
{
"key": "onClick"
}
],
"isDefaultClickDisabled": true,
"isDisabled": false,
"isLoading": false,
"isVisible": true,
"key": "ws1btn3enhk",
"leftColumn": 0,
"minWidth": 120,
"mobileBottomRow": 48,
"mobileLeftColumn": 0,
"mobileRightColumn": 16,
"mobileTopRow": 44,
"needsErrorInfo": false,
"onClick": "{{navigateTo('Operations - Engineering Holds', {}, 'SAME_WINDOW');}}",
"originalBottomRow": 48,
"originalTopRow": 44,
"parentColumnSpace": 3.841796875,
"parentId": "ws1canvas01",
"parentRowSpace": 10,
"placement": "START",
"recaptchaType": "V3",
"renderMode": "CANVAS",
"resetFormOnClick": false,
"responsiveBehavior": "hug",
"rightColumn": 64,
"text": "Engineering Holds",
"topRow": 44,
"type": "BUTTON_WIDGET",
"version": 1,
"widgetId": "ws1btn3enh",
"widgetName": "Button3Copy"
}

View File

@@ -0,0 +1,45 @@
{
"animateLoading": true,
"borderRadius": "0.375rem",
"bottomRow": 52,
"boxShadow": "none",
"buttonColor": "#ffffff",
"buttonVariant": "PRIMARY",
"disabledWhenInvalid": false,
"dynamicBindingPathList": [],
"dynamicTriggerPathList": [
{
"key": "onClick"
}
],
"isDefaultClickDisabled": true,
"isDisabled": false,
"isLoading": false,
"isVisible": true,
"key": "ws1btn3uik",
"leftColumn": 0,
"minWidth": 120,
"mobileBottomRow": 52,
"mobileLeftColumn": 0,
"mobileRightColumn": 16,
"mobileTopRow": 48,
"needsErrorInfo": false,
"onClick": "{{navigateTo('Operations - Unused Items', {}, 'SAME_WINDOW');}}",
"originalBottomRow": 52,
"originalTopRow": 48,
"parentColumnSpace": 3.841796875,
"parentId": "ws1canvas01",
"parentRowSpace": 10,
"placement": "START",
"recaptchaType": "V3",
"renderMode": "CANVAS",
"resetFormOnClick": false,
"responsiveBehavior": "hug",
"rightColumn": 64,
"text": "Unused Items",
"topRow": 48,
"type": "BUTTON_WIDGET",
"version": 1,
"widgetId": "ws1btn3ui",
"widgetName": "Button3Copy2"
}

View File

@@ -0,0 +1,49 @@
{
"animateLoading": true,
"borderRadius": "0.375rem",
"bottomRow": 56,
"boxShadow": "none",
"buttonColor": "{{appsmith.theme.colors.backgroundColor}}",
"buttonVariant": "PRIMARY",
"disabledWhenInvalid": false,
"dynamicBindingPathList": [
{
"key": "buttonColor"
}
],
"dynamicTriggerPathList": [
{
"key": "onClick"
}
],
"isDefaultClickDisabled": true,
"isDisabled": false,
"isLoading": false,
"isVisible": true,
"key": "ws1btn3wosk",
"leftColumn": 0,
"minWidth": 120,
"mobileBottomRow": 56,
"mobileLeftColumn": 0,
"mobileRightColumn": 16,
"mobileTopRow": 52,
"needsErrorInfo": false,
"onClick": "{{navigateTo('Operations - WO Shortages', {}, 'SAME_WINDOW');}}",
"originalBottomRow": 56,
"originalTopRow": 52,
"parentColumnSpace": 3.841796875,
"parentId": "ws1canvas01",
"parentRowSpace": 10,
"placement": "START",
"recaptchaType": "V3",
"renderMode": "CANVAS",
"resetFormOnClick": false,
"responsiveBehavior": "hug",
"rightColumn": 64,
"text": "WO Shortages",
"topRow": 52,
"type": "BUTTON_WIDGET",
"version": 1,
"widgetId": "ws1btn3wos",
"widgetName": "Button3Copy3"
}

View File

@@ -0,0 +1,87 @@
{
"animateLoading": true,
"backgroundColor": "#FFFFFF",
"borderColor": "#E0DEDE",
"borderRadius": "0px",
"borderWidth": "1",
"bottomRow": 124,
"boxShadow": "{{appsmith.theme.boxShadow.appBoxShadow}}",
"children": [
{
"borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}",
"bottomRow": 1240,
"boxShadow": "{{appsmith.theme.boxShadow.appBoxShadow}}",
"canExtend": false,
"containerStyle": "none",
"detachFromLayout": true,
"dynamicBindingPathList": [
{
"key": "borderRadius"
},
{
"key": "boxShadow"
}
],
"dynamicHeight": "AUTO_HEIGHT",
"flexLayers": [],
"isLoading": false,
"isVisible": true,
"key": "ws1cnvskey",
"leftColumn": 0,
"maxDynamicHeight": 9000,
"minDynamicHeight": 4,
"minHeight": 100,
"minWidth": 450,
"mobileBottomRow": 100,
"mobileLeftColumn": 0,
"mobileRightColumn": 132.9375,
"mobileTopRow": 0,
"needsErrorInfo": false,
"parentColumnSpace": 1,
"parentId": "ws1contain",
"parentRowSpace": 1,
"renderMode": "CANVAS",
"responsiveBehavior": "fill",
"rightColumn": 132.9375,
"topRow": 0,
"type": "CANVAS_WIDGET",
"version": 1,
"widgetId": "ws1canvas01",
"widgetName": "Canvas1"
}
],
"containerStyle": "card",
"dynamicBindingPathList": [
{
"key": "boxShadow"
}
],
"dynamicHeight": "FIXED",
"dynamicTriggerPathList": [],
"flexVerticalAlignment": "stretch",
"isCanvas": true,
"isLoading": false,
"isVisible": true,
"key": "ws1cntkey1",
"leftColumn": 0,
"maxDynamicHeight": 12,
"minDynamicHeight": 10,
"minWidth": 450,
"mobileBottomRow": 10,
"mobileLeftColumn": 0,
"mobileRightColumn": 3,
"mobileTopRow": 0,
"needsErrorInfo": false,
"parentColumnSpace": 44.3125,
"parentId": "0",
"parentRowSpace": 10,
"renderMode": "CANVAS",
"responsiveBehavior": "fill",
"rightColumn": 9,
"shouldScrollContents": true,
"topRow": 0,
"type": "CONTAINER_WIDGET",
"version": 1,
"widgetId": "ws1contain",
"widgetName": "Container1"
}

View File

@@ -0,0 +1,46 @@
{
"animateLoading": true,
"borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}",
"bottomRow": 4,
"dynamicBindingPathList": [
{"key": "truncateButtonColor"},
{"key": "fontFamily"},
{"key": "borderRadius"}
],
"dynamicHeight": "AUTO_HEIGHT",
"dynamicTriggerPathList": [],
"fontFamily": "{{appsmith.theme.fontFamily.appFont}}",
"fontSize": "1rem",
"fontStyle": "BOLD",
"isLoading": false,
"isVisible": true,
"key": "ws1t1salky",
"leftColumn": 0,
"maxDynamicHeight": 9000,
"minDynamicHeight": 4,
"minWidth": 450,
"mobileBottomRow": 6,
"mobileLeftColumn": 10,
"mobileRightColumn": 26,
"mobileTopRow": 2,
"needsErrorInfo": false,
"originalBottomRow": 4,
"originalTopRow": 0,
"overflow": "NONE",
"parentColumnSpace": 3.841796875,
"parentId": "ws1canvas01",
"parentRowSpace": 10,
"renderMode": "CANVAS",
"responsiveBehavior": "fill",
"rightColumn": 64,
"shouldTruncate": false,
"text": "Sales",
"textAlign": "LEFT",
"textColor": "#231F20",
"topRow": 0,
"truncateButtonColor": "{{appsmith.theme.colors.primaryColor}}",
"type": "TEXT_WIDGET",
"version": 1,
"widgetId": "ws1txt1sal",
"widgetName": "Text1"
}

View File

@@ -0,0 +1,46 @@
{
"animateLoading": true,
"borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}",
"bottomRow": 22,
"dynamicBindingPathList": [
{"key": "truncateButtonColor"},
{"key": "fontFamily"},
{"key": "borderRadius"}
],
"dynamicHeight": "AUTO_HEIGHT",
"dynamicTriggerPathList": [],
"fontFamily": "{{appsmith.theme.fontFamily.appFont}}",
"fontSize": "1rem",
"fontStyle": "BOLD",
"isLoading": false,
"isVisible": true,
"key": "ws1t2engky",
"leftColumn": 0,
"maxDynamicHeight": 9000,
"minDynamicHeight": 4,
"minWidth": 450,
"mobileBottomRow": 6,
"mobileLeftColumn": 10,
"mobileRightColumn": 26,
"mobileTopRow": 2,
"needsErrorInfo": false,
"originalBottomRow": 22,
"originalTopRow": 18,
"overflow": "NONE",
"parentColumnSpace": 3.841796875,
"parentId": "ws1canvas01",
"parentRowSpace": 10,
"renderMode": "CANVAS",
"responsiveBehavior": "fill",
"rightColumn": 64,
"shouldTruncate": false,
"text": "Engineering",
"textAlign": "LEFT",
"textColor": "#231F20",
"topRow": 18,
"truncateButtonColor": "{{appsmith.theme.colors.primaryColor}}",
"type": "TEXT_WIDGET",
"version": 1,
"widgetId": "ws1txt2eng",
"widgetName": "Text2"
}

View File

@@ -0,0 +1,46 @@
{
"animateLoading": true,
"borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}",
"bottomRow": 40,
"dynamicBindingPathList": [
{"key": "truncateButtonColor"},
{"key": "fontFamily"},
{"key": "borderRadius"}
],
"dynamicHeight": "AUTO_HEIGHT",
"dynamicTriggerPathList": [],
"fontFamily": "{{appsmith.theme.fontFamily.appFont}}",
"fontSize": "1rem",
"fontStyle": "BOLD",
"isLoading": false,
"isVisible": true,
"key": "ws1t3opsky",
"leftColumn": 0,
"maxDynamicHeight": 9000,
"minDynamicHeight": 4,
"minWidth": 450,
"mobileBottomRow": 6,
"mobileLeftColumn": 10,
"mobileRightColumn": 26,
"mobileTopRow": 2,
"needsErrorInfo": false,
"originalBottomRow": 40,
"originalTopRow": 36,
"overflow": "NONE",
"parentColumnSpace": 3.841796875,
"parentId": "ws1canvas01",
"parentRowSpace": 10,
"renderMode": "CANVAS",
"responsiveBehavior": "fill",
"rightColumn": 64,
"shouldTruncate": false,
"text": "Operations",
"textAlign": "LEFT",
"textColor": "#231F20",
"topRow": 36,
"truncateButtonColor": "{{appsmith.theme.colors.primaryColor}}",
"type": "TEXT_WIDGET",
"version": 1,
"widgetId": "ws1txt3ops",
"widgetName": "Text3"
}

View File

@@ -0,0 +1,52 @@
{
"animateLoading": true,
"borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}",
"bottomRow": 5,
"dynamicBindingPathList": [
{
"key": "truncateButtonColor"
},
{
"key": "fontFamily"
},
{
"key": "borderRadius"
}
],
"dynamicHeight": "AUTO_HEIGHT",
"dynamicTriggerPathList": [],
"fontFamily": "{{appsmith.theme.fontFamily.appFont}}",
"fontSize": "1.875rem",
"fontStyle": "BOLD",
"isLoading": false,
"isVisible": true,
"key": "ws1headkey",
"leftColumn": 9,
"maxDynamicHeight": 9000,
"minDynamicHeight": 4,
"minWidth": 450,
"mobileBottomRow": 5,
"mobileLeftColumn": 1,
"mobileRightColumn": 17,
"mobileTopRow": 1,
"needsErrorInfo": false,
"originalBottomRow": 5,
"originalTopRow": 0,
"overflow": "NONE",
"parentColumnSpace": 25.109375,
"parentId": "0",
"parentRowSpace": 10,
"renderMode": "CANVAS",
"responsiveBehavior": "fill",
"rightColumn": 64,
"shouldTruncate": false,
"text": "Operations - WO Shortages",
"textAlign": "LEFT",
"textColor": "#231F20",
"topRow": 0,
"truncateButtonColor": "{{appsmith.theme.colors.primaryColor}}",
"type": "TEXT_WIDGET",
"version": 1,
"widgetId": "ws1heading",
"widgetName": "Heading"
}

View File

@@ -0,0 +1,150 @@
{
"accentColor": "{{appsmith.theme.colors.primaryColor}}",
"animateLoading": true,
"backgroundColor": "#FFFFFF",
"borderColor": "#E0DEDE",
"borderRadius": "0.375rem",
"borderWidth": 1,
"bottomRow": 122,
"boxShadow": "{{appsmith.theme.boxShadow.appBoxShadow}}",
"children": [
{
"borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}",
"bottomRow": 1130,
"boxShadow": "{{appsmith.theme.boxShadow.appBoxShadow}}",
"canExtend": true,
"detachFromLayout": true,
"dynamicBindingPathList": [
{"key": "borderRadius"},
{"key": "boxShadow"}
],
"dynamicHeight": "AUTO_HEIGHT",
"dynamicTriggerPathList": [],
"flexLayers": [],
"isDisabled": false,
"isLoading": false,
"isVisible": true,
"key": "ws1cnvt1ky",
"leftColumn": 0,
"maxDynamicHeight": 9000,
"minDynamicHeight": 4,
"minHeight": 150,
"minWidth": 450,
"mobileBottomRow": 150,
"mobileLeftColumn": 0,
"mobileRightColumn": 602.625,
"mobileTopRow": 0,
"needsErrorInfo": false,
"parentColumnSpace": 1,
"parentId": "ws1tabs001",
"parentRowSpace": 1,
"renderMode": "CANVAS",
"responsiveBehavior": "fill",
"rightColumn": 602.625,
"shouldScrollContents": false,
"tabId": "tab1",
"tabName": "WO Shortages",
"topRow": 0,
"type": "CANVAS_WIDGET",
"version": 1,
"widgetId": "ws1cnvstab1",
"widgetName": "Canvas2"
},
{
"borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}",
"bottomRow": 1130,
"boxShadow": "{{appsmith.theme.boxShadow.appBoxShadow}}",
"canExtend": true,
"detachFromLayout": true,
"dynamicBindingPathList": [
{"key": "borderRadius"},
{"key": "boxShadow"}
],
"dynamicHeight": "AUTO_HEIGHT",
"dynamicTriggerPathList": [],
"flexLayers": [],
"isDisabled": false,
"isLoading": false,
"isVisible": true,
"key": "ws1cnvt2ky",
"leftColumn": 0,
"maxDynamicHeight": 9000,
"minDynamicHeight": 4,
"minHeight": 150,
"minWidth": 450,
"mobileBottomRow": 150,
"mobileLeftColumn": 0,
"mobileRightColumn": 602.625,
"mobileTopRow": 0,
"needsErrorInfo": false,
"parentColumnSpace": 1,
"parentId": "ws1tabs001",
"parentRowSpace": 1,
"renderMode": "CANVAS",
"responsiveBehavior": "fill",
"rightColumn": 602.625,
"shouldScrollContents": false,
"tabId": "tab2",
"tabName": "Critical Parts",
"topRow": 0,
"type": "CANVAS_WIDGET",
"version": 1,
"widgetId": "ws1cnvstab2",
"widgetName": "Canvas3"
}
],
"defaultTab": "WO Shortages",
"dynamicBindingPathList": [
{"key": "accentColor"},
{"key": "boxShadow"}
],
"dynamicHeight": "AUTO_HEIGHT",
"dynamicTriggerPathList": [],
"flexVerticalAlignment": "stretch",
"isCanvas": true,
"isLoading": false,
"isVisible": true,
"key": "ws1tabskey",
"leftColumn": 9,
"maxDynamicHeight": 9000,
"minDynamicHeight": 15,
"minWidth": 450,
"mobileBottomRow": 76,
"mobileLeftColumn": 2,
"mobileRightColumn": 26,
"mobileTopRow": 61,
"needsErrorInfo": false,
"originalBottomRow": 122,
"originalTopRow": 5,
"parentColumnSpace": 25.109375,
"parentId": "0",
"parentRowSpace": 10,
"renderMode": "CANVAS",
"responsiveBehavior": "fill",
"rightColumn": 64,
"shouldScrollContents": true,
"shouldShowTabs": true,
"tabsObj": {
"tab1": {
"id": "tab1",
"index": 0,
"isVisible": true,
"label": "WO Shortages",
"positioning": "vertical",
"widgetId": "ws1cnvstab1"
},
"tab2": {
"id": "tab2",
"index": 1,
"isVisible": true,
"label": "Critical Parts",
"positioning": "vertical",
"widgetId": "ws1cnvstab2"
}
},
"topRow": 5,
"type": "TABS_WIDGET",
"version": 3,
"widgetId": "ws1tabs001",
"widgetName": "Tabs1"
}

View File

@@ -0,0 +1,251 @@
{
"accentColor": "{{appsmith.theme.colors.primaryColor}}",
"animateLoading": true,
"borderColor": "#E0DEDE",
"borderRadius": "0.375rem",
"borderWidth": "1",
"bottomRow": 113,
"boxShadow": "{{appsmith.theme.boxShadow.appBoxShadow}}",
"canFreezeColumn": true,
"childStylesheet": {
"button": {
"borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}",
"boxShadow": "none",
"buttonColor": "{{appsmith.theme.colors.primaryColor}}"
},
"editActions": {
"discardBorderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}",
"discardButtonColor": "{{appsmith.theme.colors.primaryColor}}",
"saveBorderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}",
"saveButtonColor": "{{appsmith.theme.colors.primaryColor}}"
},
"iconButton": {
"borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}",
"boxShadow": "none",
"buttonColor": "{{appsmith.theme.colors.primaryColor}}"
},
"menuButton": {
"borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}",
"boxShadow": "none",
"menuColor": "{{appsmith.theme.colors.primaryColor}}"
}
},
"columnOrder": [
"part_number",
"part_description",
"shortage_type",
"wos_blocked",
"total_qty_needed",
"qty_available"
],
"columnWidthMap": {
"part_number": 100,
"wos_blocked": 100,
"total_qty_needed": 120,
"qty_available": 100,
"shortage_type": 80
},
"compactMode": "SHORT",
"defaultPageSize": 0,
"defaultSelectedRowIndex": 0,
"defaultSelectedRowIndices": [0],
"delimiter": ",",
"dynamicBindingPathList": [
{"key": "accentColor"},
{"key": "boxShadow"},
{"key": "tableData"},
{"key": "primaryColumns.part_number.computedValue"},
{"key": "primaryColumns.part_description.computedValue"},
{"key": "primaryColumns.shortage_type.computedValue"},
{"key": "primaryColumns.wos_blocked.computedValue"},
{"key": "primaryColumns.total_qty_needed.computedValue"},
{"key": "primaryColumns.qty_available.computedValue"}
],
"dynamicPropertyPathList": [
{"key": "textSize"}
],
"dynamicTriggerPathList": [],
"enableClientSideSearch": true,
"horizontalAlignment": "LEFT",
"inlineEditingSaveOption": "ROW_LEVEL",
"isLoading": false,
"isSortable": true,
"isVisible": true,
"isVisibleDownload": true,
"isVisibleFilters": true,
"isVisiblePagination": true,
"isVisibleSearch": true,
"key": "ws1tblptkey",
"label": "Data",
"leftColumn": 0,
"minWidth": 450,
"needsErrorInfo": false,
"parentColumnSpace": 11.265625,
"parentId": "ws1cnvstab2",
"parentRowSpace": 10,
"primaryColumns": {
"part_number": {
"alias": "part_number",
"allowCellWrapping": false,
"allowSameOptionsInNewRow": true,
"columnType": "text",
"computedValue": "{{(() => { const tableData = ws1tblparts.processedTableData || []; return tableData.length > 0 ? tableData.map((currentRow, currentIndex) => (currentRow[\"part_number\"])) : part_number })()}}",
"enableFilter": true,
"enableSort": true,
"horizontalAlignment": "LEFT",
"id": "part_number",
"index": 0,
"isCellEditable": false,
"isCellVisible": true,
"isDerived": false,
"isDisabled": false,
"isEditable": false,
"isVisible": true,
"label": "part_number",
"originalId": "part_number",
"sticky": "",
"textSize": "0.775rem",
"validation": {},
"verticalAlignment": "CENTER",
"width": 150
},
"part_description": {
"alias": "part_description",
"allowCellWrapping": false,
"allowSameOptionsInNewRow": true,
"columnType": "text",
"computedValue": "{{(() => { const tableData = ws1tblparts.processedTableData || []; return tableData.length > 0 ? tableData.map((currentRow, currentIndex) => (currentRow[\"part_description\"])) : part_description })()}}",
"enableFilter": true,
"enableSort": true,
"horizontalAlignment": "LEFT",
"id": "part_description",
"index": 1,
"isCellEditable": false,
"isCellVisible": true,
"isDerived": false,
"isDisabled": false,
"isEditable": false,
"isVisible": true,
"label": "part_description",
"originalId": "part_description",
"sticky": "",
"textSize": "0.775rem",
"validation": {},
"verticalAlignment": "CENTER",
"width": 150
},
"shortage_type": {
"alias": "shortage_type",
"allowCellWrapping": false,
"allowSameOptionsInNewRow": true,
"columnType": "text",
"computedValue": "{{(() => { const tableData = ws1tblparts.processedTableData || []; return tableData.length > 0 ? tableData.map((currentRow, currentIndex) => (currentRow[\"shortage_type\"])) : shortage_type })()}}",
"enableFilter": true,
"enableSort": true,
"horizontalAlignment": "LEFT",
"id": "shortage_type",
"index": 2,
"isCellEditable": false,
"isCellVisible": true,
"isDerived": false,
"isDisabled": false,
"isEditable": false,
"isVisible": true,
"label": "shortage_type",
"originalId": "shortage_type",
"sticky": "",
"textSize": "0.775rem",
"validation": {},
"verticalAlignment": "CENTER",
"width": 150
},
"wos_blocked": {
"alias": "wos_blocked",
"allowCellWrapping": false,
"allowSameOptionsInNewRow": true,
"columnType": "number",
"computedValue": "{{(() => { const tableData = ws1tblparts.processedTableData || []; return tableData.length > 0 ? tableData.map((currentRow, currentIndex) => (currentRow[\"wos_blocked\"])) : wos_blocked })()}}",
"enableFilter": true,
"enableSort": true,
"horizontalAlignment": "LEFT",
"id": "wos_blocked",
"index": 3,
"isCellEditable": false,
"isCellVisible": true,
"isDerived": false,
"isDisabled": false,
"isEditable": false,
"isVisible": true,
"label": "wos_blocked",
"originalId": "wos_blocked",
"sticky": "",
"textSize": "0.775rem",
"validation": {},
"verticalAlignment": "CENTER",
"width": 150
},
"total_qty_needed": {
"alias": "total_qty_needed",
"allowCellWrapping": false,
"allowSameOptionsInNewRow": true,
"columnType": "number",
"computedValue": "{{(() => { const tableData = ws1tblparts.processedTableData || []; return tableData.length > 0 ? tableData.map((currentRow, currentIndex) => (currentRow[\"total_qty_needed\"])) : total_qty_needed })()}}",
"enableFilter": true,
"enableSort": true,
"horizontalAlignment": "LEFT",
"id": "total_qty_needed",
"index": 4,
"isCellEditable": false,
"isCellVisible": true,
"isDerived": false,
"isDisabled": false,
"isEditable": false,
"isVisible": true,
"label": "total_qty_needed",
"originalId": "total_qty_needed",
"sticky": "",
"textSize": "0.775rem",
"validation": {},
"verticalAlignment": "CENTER",
"width": 150
},
"qty_available": {
"alias": "qty_available",
"allowCellWrapping": false,
"allowSameOptionsInNewRow": true,
"columnType": "number",
"computedValue": "{{(() => { const tableData = ws1tblparts.processedTableData || []; return tableData.length > 0 ? tableData.map((currentRow, currentIndex) => (currentRow[\"qty_available\"])) : qty_available })()}}",
"enableFilter": true,
"enableSort": true,
"horizontalAlignment": "LEFT",
"id": "qty_available",
"index": 5,
"isCellEditable": false,
"isCellVisible": true,
"isDerived": false,
"isDisabled": false,
"isEditable": false,
"isVisible": true,
"label": "qty_available",
"originalId": "qty_available",
"sticky": "",
"textSize": "0.775rem",
"validation": {},
"verticalAlignment": "CENTER",
"width": 150
}
},
"renderMode": "CANVAS",
"responsiveBehavior": "fill",
"rightColumn": 62,
"searchKey": "",
"tableData": "{{critical_parts.data}}",
"textSize": "0.775rem",
"topRow": 0,
"totalRecordsCount": 0,
"type": "TABLE_WIDGET_V2",
"version": 2,
"verticalAlignment": "CENTER",
"widgetId": "ws1tblparts",
"widgetName": "ws1tblparts"
}

View File

@@ -0,0 +1,446 @@
{
"accentColor": "{{appsmith.theme.colors.primaryColor}}",
"animateLoading": true,
"borderColor": "#E0DEDE",
"borderRadius": "0.375rem",
"borderWidth": "1",
"bottomRow": 113,
"boxShadow": "{{appsmith.theme.boxShadow.appBoxShadow}}",
"canFreezeColumn": true,
"childStylesheet": {
"button": {
"borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}",
"boxShadow": "none",
"buttonColor": "{{appsmith.theme.colors.primaryColor}}"
},
"editActions": {
"discardBorderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}",
"discardButtonColor": "{{appsmith.theme.colors.primaryColor}}",
"saveBorderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}",
"saveButtonColor": "{{appsmith.theme.colors.primaryColor}}"
},
"iconButton": {
"borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}",
"boxShadow": "none",
"buttonColor": "{{appsmith.theme.colors.primaryColor}}"
},
"menuButton": {
"borderRadius": "{{appsmith.theme.borderRadius.appBorderRadius}}",
"boxShadow": "none",
"menuColor": "{{appsmith.theme.colors.primaryColor}}"
}
},
"columnOrder": [
"due_group",
"wo_num",
"wo_status",
"wo_duedate",
"wo_item",
"wo_descrip",
"shortage_type",
"sub_wo_num",
"short_part",
"short_part_desc",
"qty_required",
"qty_issued",
"qty_onhand"
],
"columnWidthMap": {
"due_group": 100,
"wo_num": 100,
"wo_status": 70,
"wo_duedate": 100,
"wo_item": 80,
"shortage_type": 65,
"sub_wo_num": 110,
"short_part": 80,
"qty_required": 80,
"qty_issued": 80,
"qty_onhand": 80
},
"compactMode": "SHORT",
"defaultPageSize": 0,
"defaultSelectedRowIndex": 0,
"defaultSelectedRowIndices": [0],
"delimiter": ",",
"dynamicBindingPathList": [
{"key": "accentColor"},
{"key": "boxShadow"},
{"key": "tableData"},
{"key": "primaryColumns.due_group.computedValue"},
{"key": "primaryColumns.wo_num.computedValue"},
{"key": "primaryColumns.wo_status.computedValue"},
{"key": "primaryColumns.wo_duedate.computedValue"},
{"key": "primaryColumns.wo_item.computedValue"},
{"key": "primaryColumns.wo_descrip.computedValue"},
{"key": "primaryColumns.shortage_type.computedValue"},
{"key": "primaryColumns.sub_wo_num.computedValue"},
{"key": "primaryColumns.short_part.computedValue"},
{"key": "primaryColumns.short_part_desc.computedValue"},
{"key": "primaryColumns.qty_required.computedValue"},
{"key": "primaryColumns.qty_issued.computedValue"},
{"key": "primaryColumns.qty_onhand.computedValue"}
],
"dynamicPropertyPathList": [
{"key": "textSize"}
],
"dynamicTriggerPathList": [],
"enableClientSideSearch": true,
"horizontalAlignment": "LEFT",
"inlineEditingSaveOption": "ROW_LEVEL",
"isLoading": false,
"isSortable": true,
"isVisible": true,
"isVisibleDownload": true,
"isVisibleFilters": true,
"isVisiblePagination": true,
"isVisibleSearch": true,
"key": "ws1tblshkey",
"label": "Data",
"leftColumn": 0,
"minWidth": 450,
"needsErrorInfo": false,
"parentColumnSpace": 11.265625,
"parentId": "ws1cnvstab1",
"parentRowSpace": 10,
"primaryColumns": {
"due_group": {
"alias": "due_group",
"allowCellWrapping": false,
"allowSameOptionsInNewRow": true,
"columnType": "text",
"computedValue": "{{(() => { const tableData = ws1tblshort.processedTableData || []; return tableData.length > 0 ? tableData.map((currentRow, currentIndex) => (currentRow[\"due_group\"])) : due_group })()}}",
"enableFilter": true,
"enableSort": true,
"horizontalAlignment": "LEFT",
"id": "due_group",
"index": 0,
"isCellEditable": false,
"isCellVisible": true,
"isDerived": false,
"isDisabled": false,
"isEditable": false,
"isVisible": true,
"label": "due_group",
"originalId": "due_group",
"sticky": "",
"textSize": "0.775rem",
"validation": {},
"verticalAlignment": "CENTER",
"width": 150
},
"wo_num": {
"alias": "wo_num",
"allowCellWrapping": false,
"allowSameOptionsInNewRow": true,
"columnType": "text",
"computedValue": "{{(() => { const tableData = ws1tblshort.processedTableData || []; return tableData.length > 0 ? tableData.map((currentRow, currentIndex) => (currentRow[\"wo_num\"])) : wo_num })()}}",
"enableFilter": true,
"enableSort": true,
"horizontalAlignment": "LEFT",
"id": "wo_num",
"index": 1,
"isCellEditable": false,
"isCellVisible": true,
"isDerived": false,
"isDisabled": false,
"isEditable": false,
"isVisible": true,
"label": "wo_num",
"originalId": "wo_num",
"sticky": "",
"textSize": "0.775rem",
"validation": {},
"verticalAlignment": "CENTER",
"width": 150
},
"wo_status": {
"alias": "wo_status",
"allowCellWrapping": false,
"allowSameOptionsInNewRow": true,
"columnType": "text",
"computedValue": "{{(() => { const tableData = ws1tblshort.processedTableData || []; return tableData.length > 0 ? tableData.map((currentRow, currentIndex) => (currentRow[\"wo_status\"])) : wo_status })()}}",
"enableFilter": true,
"enableSort": true,
"horizontalAlignment": "LEFT",
"id": "wo_status",
"index": 2,
"isCellEditable": false,
"isCellVisible": true,
"isDerived": false,
"isDisabled": false,
"isEditable": false,
"isVisible": true,
"label": "wo_status",
"originalId": "wo_status",
"sticky": "",
"textSize": "0.775rem",
"validation": {},
"verticalAlignment": "CENTER",
"width": 150
},
"wo_duedate": {
"alias": "wo_duedate",
"allowCellWrapping": false,
"allowSameOptionsInNewRow": true,
"columnType": "date",
"computedValue": "{{(() => { const tableData = ws1tblshort.processedTableData || []; return tableData.length > 0 ? tableData.map((currentRow, currentIndex) => (currentRow[\"wo_duedate\"])) : wo_duedate })()}}",
"enableFilter": true,
"enableSort": true,
"horizontalAlignment": "LEFT",
"id": "wo_duedate",
"index": 3,
"isCellEditable": false,
"isCellVisible": true,
"isDerived": false,
"isDisabled": false,
"isEditable": false,
"isVisible": true,
"label": "wo_duedate",
"originalId": "wo_duedate",
"sticky": "",
"textSize": "0.775rem",
"validation": {},
"verticalAlignment": "CENTER",
"width": 150
},
"wo_item": {
"alias": "wo_item",
"allowCellWrapping": false,
"allowSameOptionsInNewRow": true,
"columnType": "text",
"computedValue": "{{(() => { const tableData = ws1tblshort.processedTableData || []; return tableData.length > 0 ? tableData.map((currentRow, currentIndex) => (currentRow[\"wo_item\"])) : wo_item })()}}",
"enableFilter": true,
"enableSort": true,
"horizontalAlignment": "LEFT",
"id": "wo_item",
"index": 4,
"isCellEditable": false,
"isCellVisible": true,
"isDerived": false,
"isDisabled": false,
"isEditable": false,
"isVisible": true,
"label": "wo_item",
"originalId": "wo_item",
"sticky": "",
"textSize": "0.775rem",
"validation": {},
"verticalAlignment": "CENTER",
"width": 150
},
"wo_descrip": {
"alias": "wo_descrip",
"allowCellWrapping": false,
"allowSameOptionsInNewRow": true,
"columnType": "text",
"computedValue": "{{(() => { const tableData = ws1tblshort.processedTableData || []; return tableData.length > 0 ? tableData.map((currentRow, currentIndex) => (currentRow[\"wo_descrip\"])) : wo_descrip })()}}",
"enableFilter": true,
"enableSort": true,
"horizontalAlignment": "LEFT",
"id": "wo_descrip",
"index": 5,
"isCellEditable": false,
"isCellVisible": true,
"isDerived": false,
"isDisabled": false,
"isEditable": false,
"isVisible": true,
"label": "wo_descrip",
"originalId": "wo_descrip",
"sticky": "",
"textSize": "0.775rem",
"validation": {},
"verticalAlignment": "CENTER",
"width": 150
},
"shortage_type": {
"alias": "shortage_type",
"allowCellWrapping": false,
"allowSameOptionsInNewRow": true,
"columnType": "text",
"computedValue": "{{(() => { const tableData = ws1tblshort.processedTableData || []; return tableData.length > 0 ? tableData.map((currentRow, currentIndex) => (currentRow[\"shortage_type\"])) : shortage_type })()}}",
"enableFilter": true,
"enableSort": true,
"horizontalAlignment": "LEFT",
"id": "shortage_type",
"index": 6,
"isCellEditable": false,
"isCellVisible": true,
"isDerived": false,
"isDisabled": false,
"isEditable": false,
"isVisible": true,
"label": "shortage_type",
"originalId": "shortage_type",
"sticky": "",
"textSize": "0.775rem",
"validation": {},
"verticalAlignment": "CENTER",
"width": 150
},
"sub_wo_num": {
"alias": "sub_wo_num",
"allowCellWrapping": false,
"allowSameOptionsInNewRow": true,
"columnType": "text",
"computedValue": "{{(() => { const tableData = ws1tblshort.processedTableData || []; return tableData.length > 0 ? tableData.map((currentRow, currentIndex) => (currentRow[\"sub_wo_num\"])) : sub_wo_num })()}}",
"enableFilter": true,
"enableSort": true,
"horizontalAlignment": "LEFT",
"id": "sub_wo_num",
"index": 7,
"isCellEditable": false,
"isCellVisible": true,
"isDerived": false,
"isDisabled": false,
"isEditable": false,
"isVisible": true,
"label": "sub_wo_num",
"originalId": "sub_wo_num",
"sticky": "",
"textSize": "0.775rem",
"validation": {},
"verticalAlignment": "CENTER",
"width": 150
},
"short_part": {
"alias": "short_part",
"allowCellWrapping": false,
"allowSameOptionsInNewRow": true,
"columnType": "text",
"computedValue": "{{(() => { const tableData = ws1tblshort.processedTableData || []; return tableData.length > 0 ? tableData.map((currentRow, currentIndex) => (currentRow[\"short_part\"])) : short_part })()}}",
"enableFilter": true,
"enableSort": true,
"horizontalAlignment": "LEFT",
"id": "short_part",
"index": 8,
"isCellEditable": false,
"isCellVisible": true,
"isDerived": false,
"isDisabled": false,
"isEditable": false,
"isVisible": true,
"label": "short_part",
"originalId": "short_part",
"sticky": "",
"textSize": "0.775rem",
"validation": {},
"verticalAlignment": "CENTER",
"width": 150
},
"short_part_desc": {
"alias": "short_part_desc",
"allowCellWrapping": false,
"allowSameOptionsInNewRow": true,
"columnType": "text",
"computedValue": "{{(() => { const tableData = ws1tblshort.processedTableData || []; return tableData.length > 0 ? tableData.map((currentRow, currentIndex) => (currentRow[\"short_part_desc\"])) : short_part_desc })()}}",
"enableFilter": true,
"enableSort": true,
"horizontalAlignment": "LEFT",
"id": "short_part_desc",
"index": 9,
"isCellEditable": false,
"isCellVisible": true,
"isDerived": false,
"isDisabled": false,
"isEditable": false,
"isVisible": true,
"label": "short_part_desc",
"originalId": "short_part_desc",
"sticky": "",
"textSize": "0.775rem",
"validation": {},
"verticalAlignment": "CENTER",
"width": 150
},
"qty_required": {
"alias": "qty_required",
"allowCellWrapping": false,
"allowSameOptionsInNewRow": true,
"columnType": "number",
"computedValue": "{{(() => { const tableData = ws1tblshort.processedTableData || []; return tableData.length > 0 ? tableData.map((currentRow, currentIndex) => (currentRow[\"qty_required\"])) : qty_required })()}}",
"enableFilter": true,
"enableSort": true,
"horizontalAlignment": "LEFT",
"id": "qty_required",
"index": 10,
"isCellEditable": false,
"isCellVisible": true,
"isDerived": false,
"isDisabled": false,
"isEditable": false,
"isVisible": true,
"label": "qty_required",
"originalId": "qty_required",
"sticky": "",
"textSize": "0.775rem",
"validation": {},
"verticalAlignment": "CENTER",
"width": 150
},
"qty_issued": {
"alias": "qty_issued",
"allowCellWrapping": false,
"allowSameOptionsInNewRow": true,
"columnType": "number",
"computedValue": "{{(() => { const tableData = ws1tblshort.processedTableData || []; return tableData.length > 0 ? tableData.map((currentRow, currentIndex) => (currentRow[\"qty_issued\"])) : qty_issued })()}}",
"enableFilter": true,
"enableSort": true,
"horizontalAlignment": "LEFT",
"id": "qty_issued",
"index": 11,
"isCellEditable": false,
"isCellVisible": true,
"isDerived": false,
"isDisabled": false,
"isEditable": false,
"isVisible": true,
"label": "qty_issued",
"originalId": "qty_issued",
"sticky": "",
"textSize": "0.775rem",
"validation": {},
"verticalAlignment": "CENTER",
"width": 150
},
"qty_onhand": {
"alias": "qty_onhand",
"allowCellWrapping": false,
"allowSameOptionsInNewRow": true,
"columnType": "number",
"computedValue": "{{(() => { const tableData = ws1tblshort.processedTableData || []; return tableData.length > 0 ? tableData.map((currentRow, currentIndex) => (currentRow[\"qty_onhand\"])) : qty_onhand })()}}",
"enableFilter": true,
"enableSort": true,
"horizontalAlignment": "LEFT",
"id": "qty_onhand",
"index": 12,
"isCellEditable": false,
"isCellVisible": true,
"isDerived": false,
"isDisabled": false,
"isEditable": false,
"isVisible": true,
"label": "qty_onhand",
"originalId": "qty_onhand",
"sticky": "",
"textSize": "0.775rem",
"validation": {},
"verticalAlignment": "CENTER",
"width": 150
}
},
"renderMode": "CANVAS",
"responsiveBehavior": "fill",
"rightColumn": 62,
"searchKey": "",
"tableData": "{{wo_shortages.data}}",
"textSize": "0.775rem",
"topRow": 0,
"totalRecordsCount": 0,
"type": "TABLE_WIDGET_V2",
"version": 2,
"verticalAlignment": "CENTER",
"widgetId": "ws1tblshort",
"widgetName": "ws1tblshort"
}

View File

@@ -0,0 +1,45 @@
{
"animateLoading": true,
"borderRadius": "0.375rem",
"bottomRow": 56,
"boxShadow": "none",
"buttonColor": "#ffffff",
"buttonVariant": "PRIMARY",
"disabledWhenInvalid": false,
"dynamicBindingPathList": [],
"dynamicTriggerPathList": [
{
"key": "onClick"
}
],
"isDefaultClickDisabled": true,
"isDisabled": false,
"isLoading": false,
"isVisible": true,
"key": "pa1btnwosk",
"leftColumn": 0,
"minWidth": 120,
"mobileBottomRow": 56,
"mobileLeftColumn": 0,
"mobileRightColumn": 16,
"mobileTopRow": 52,
"needsErrorInfo": false,
"onClick": "{{navigateTo('Operations - WO Shortages', {}, 'SAME_WINDOW');}}",
"originalBottomRow": 56,
"originalTopRow": 52,
"parentColumnSpace": 3.841796875,
"parentId": "pa1canvas01",
"parentRowSpace": 10,
"placement": "START",
"recaptchaType": "V3",
"renderMode": "CANVAS",
"resetFormOnClick": false,
"responsiveBehavior": "hug",
"rightColumn": 64,
"text": "WO Shortages",
"topRow": 52,
"type": "BUTTON_WIDGET",
"version": 1,
"widgetId": "pa1btnwos",
"widgetName": "Button3Copy3"
}

View File

@@ -0,0 +1,45 @@
{
"animateLoading": true,
"borderRadius": "0.375rem",
"bottomRow": 56,
"boxShadow": "none",
"buttonColor": "#ffffff",
"buttonVariant": "PRIMARY",
"disabledWhenInvalid": false,
"dynamicBindingPathList": [],
"dynamicTriggerPathList": [
{
"key": "onClick"
}
],
"isDefaultClickDisabled": true,
"isDisabled": false,
"isLoading": false,
"isVisible": true,
"key": "pr1btnwosk",
"leftColumn": 0,
"minWidth": 120,
"mobileBottomRow": 56,
"mobileLeftColumn": 0,
"mobileRightColumn": 16,
"mobileTopRow": 52,
"needsErrorInfo": false,
"onClick": "{{navigateTo('Operations - WO Shortages', {}, 'SAME_WINDOW');}}",
"originalBottomRow": 56,
"originalTopRow": 52,
"parentColumnSpace": 3.841796875,
"parentId": "pr1canvas01",
"parentRowSpace": 10,
"placement": "START",
"recaptchaType": "V3",
"renderMode": "CANVAS",
"resetFormOnClick": false,
"responsiveBehavior": "hug",
"rightColumn": 64,
"text": "WO Shortages",
"topRow": 52,
"type": "BUTTON_WIDGET",
"version": 1,
"widgetId": "pr1btnwos",
"widgetName": "Button3Copy3"
}

View File

@@ -0,0 +1,45 @@
{
"animateLoading": true,
"borderRadius": "0.375rem",
"bottomRow": 56,
"boxShadow": "none",
"buttonColor": "#ffffff",
"buttonVariant": "PRIMARY",
"disabledWhenInvalid": false,
"dynamicBindingPathList": [],
"dynamicTriggerPathList": [
{
"key": "onClick"
}
],
"isDefaultClickDisabled": true,
"isDisabled": false,
"isLoading": false,
"isVisible": true,
"key": "cp1btnwosk",
"leftColumn": 0,
"minWidth": 120,
"mobileBottomRow": 56,
"mobileLeftColumn": 0,
"mobileRightColumn": 16,
"mobileTopRow": 52,
"needsErrorInfo": false,
"onClick": "{{navigateTo('Operations - WO Shortages', {}, 'SAME_WINDOW');}}",
"originalBottomRow": 56,
"originalTopRow": 52,
"parentColumnSpace": 3.841796875,
"parentId": "x3pc17vp6q",
"parentRowSpace": 10,
"placement": "START",
"recaptchaType": "V3",
"renderMode": "CANVAS",
"resetFormOnClick": false,
"responsiveBehavior": "hug",
"rightColumn": 64,
"text": "WO Shortages",
"topRow": 52,
"type": "BUTTON_WIDGET",
"version": 1,
"widgetId": "cp1btnwos",
"widgetName": "Button3Copy3"
}

View File

@@ -0,0 +1,45 @@
{
"animateLoading": true,
"borderRadius": "0.375rem",
"bottomRow": 56,
"boxShadow": "none",
"buttonColor": "#ffffff",
"buttonVariant": "PRIMARY",
"disabledWhenInvalid": false,
"dynamicBindingPathList": [],
"dynamicTriggerPathList": [
{
"key": "onClick"
}
],
"isDefaultClickDisabled": true,
"isDisabled": false,
"isLoading": false,
"isVisible": true,
"key": "so1btnwosk",
"leftColumn": 0,
"minWidth": 120,
"mobileBottomRow": 56,
"mobileLeftColumn": 0,
"mobileRightColumn": 16,
"mobileTopRow": 52,
"needsErrorInfo": false,
"onClick": "{{navigateTo('Operations - WO Shortages', {}, 'SAME_WINDOW');}}",
"originalBottomRow": 56,
"originalTopRow": 52,
"parentColumnSpace": 3.841796875,
"parentId": "wj6fxg5wpg",
"parentRowSpace": 10,
"placement": "START",
"recaptchaType": "V3",
"renderMode": "CANVAS",
"resetFormOnClick": false,
"responsiveBehavior": "hug",
"rightColumn": 64,
"text": "WO Shortages",
"topRow": 52,
"type": "BUTTON_WIDGET",
"version": 1,
"widgetId": "so1btnwos",
"widgetName": "Button3Copy3"
}

View File

@@ -0,0 +1,45 @@
{
"animateLoading": true,
"borderRadius": "0.375rem",
"bottomRow": 56,
"boxShadow": "none",
"buttonColor": "#ffffff",
"buttonVariant": "PRIMARY",
"disabledWhenInvalid": false,
"dynamicBindingPathList": [],
"dynamicTriggerPathList": [
{
"key": "onClick"
}
],
"isDefaultClickDisabled": true,
"isDisabled": false,
"isLoading": false,
"isVisible": true,
"key": "su1btnwosk",
"leftColumn": 0,
"minWidth": 120,
"mobileBottomRow": 56,
"mobileLeftColumn": 0,
"mobileRightColumn": 16,
"mobileTopRow": 52,
"needsErrorInfo": false,
"onClick": "{{navigateTo('Operations - WO Shortages', {}, 'SAME_WINDOW');}}",
"originalBottomRow": 56,
"originalTopRow": 52,
"parentColumnSpace": 3.841796875,
"parentId": "wj6fxg5wpg",
"parentRowSpace": 10,
"placement": "START",
"recaptchaType": "V3",
"renderMode": "CANVAS",
"resetFormOnClick": false,
"responsiveBehavior": "hug",
"rightColumn": 64,
"text": "WO Shortages",
"topRow": 52,
"type": "BUTTON_WIDGET",
"version": 1,
"widgetId": "su1btnwos",
"widgetName": "Button3Copy3"
}

View File

@@ -0,0 +1,45 @@
{
"animateLoading": true,
"borderRadius": "0.375rem",
"bottomRow": 56,
"boxShadow": "none",
"buttonColor": "#ffffff",
"buttonVariant": "PRIMARY",
"disabledWhenInvalid": false,
"dynamicBindingPathList": [],
"dynamicTriggerPathList": [
{
"key": "onClick"
}
],
"isDefaultClickDisabled": true,
"isDisabled": false,
"isLoading": false,
"isVisible": true,
"key": "xg1btnwosk",
"leftColumn": 0,
"minWidth": 120,
"mobileBottomRow": 56,
"mobileLeftColumn": 0,
"mobileRightColumn": 16,
"mobileTopRow": 52,
"needsErrorInfo": false,
"onClick": "{{navigateTo('Operations - WO Shortages', {}, 'SAME_WINDOW');}}",
"originalBottomRow": 56,
"originalTopRow": 52,
"parentColumnSpace": 3.841796875,
"parentId": "xg1canvas01",
"parentRowSpace": 10,
"placement": "START",
"recaptchaType": "V3",
"renderMode": "CANVAS",
"resetFormOnClick": false,
"responsiveBehavior": "hug",
"rightColumn": 64,
"text": "WO Shortages",
"topRow": 52,
"type": "BUTTON_WIDGET",
"version": 1,
"widgetId": "xg1btnwos",
"widgetName": "Button3Copy3"
}