cleaned up docs and further documentation
parent
601c6652b3
commit
74c8735d1b
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"collapse-filter": true,
|
"collapse-filter": false,
|
||||||
"search": "",
|
"search": "",
|
||||||
"showTags": false,
|
"showTags": false,
|
||||||
"showAttachments": false,
|
"showAttachments": false,
|
||||||
|
|
|
@ -4,31 +4,21 @@
|
||||||
"type": "split",
|
"type": "split",
|
||||||
"children": [
|
"children": [
|
||||||
{
|
{
|
||||||
"id": "a3a76ef5e7f288b6",
|
"id": "440bc9d29e3748f6",
|
||||||
"type": "tabs",
|
"type": "tabs",
|
||||||
"children": [
|
"children": [
|
||||||
{
|
{
|
||||||
"id": "caa3f00cbffc2666",
|
"id": "54de382f7fbbc343",
|
||||||
"type": "leaf",
|
"type": "leaf",
|
||||||
"state": {
|
"state": {
|
||||||
"type": "markdown",
|
"type": "markdown",
|
||||||
"state": {
|
"state": {
|
||||||
"file": "Forms/DS Pem Press Manual.md",
|
"file": "Queries/AddnlMakeQ.md",
|
||||||
"mode": "source",
|
"mode": "source",
|
||||||
"source": false
|
"source": false
|
||||||
},
|
},
|
||||||
"icon": "lucide-file",
|
"icon": "lucide-file",
|
||||||
"title": "DS Pem Press Manual"
|
"title": "AddnlMakeQ"
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "22a3b2a859e069e4",
|
|
||||||
"type": "leaf",
|
|
||||||
"state": {
|
|
||||||
"type": "graph",
|
|
||||||
"state": {},
|
|
||||||
"icon": "lucide-git-fork",
|
|
||||||
"title": "Graph view"
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
@ -84,8 +74,7 @@
|
||||||
"title": "Bookmarks"
|
"title": "Bookmarks"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
],
|
]
|
||||||
"currentTab": 1
|
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"direction": "horizontal",
|
"direction": "horizontal",
|
||||||
|
@ -105,7 +94,7 @@
|
||||||
"state": {
|
"state": {
|
||||||
"type": "backlink",
|
"type": "backlink",
|
||||||
"state": {
|
"state": {
|
||||||
"file": "Forms/DS Pem Press Manual.md",
|
"file": "Queries/AddnlMakeQ.md",
|
||||||
"collapseAll": false,
|
"collapseAll": false,
|
||||||
"extraContext": false,
|
"extraContext": false,
|
||||||
"sortOrder": "alphabetical",
|
"sortOrder": "alphabetical",
|
||||||
|
@ -115,7 +104,7 @@
|
||||||
"unlinkedCollapsed": true
|
"unlinkedCollapsed": true
|
||||||
},
|
},
|
||||||
"icon": "links-coming-in",
|
"icon": "links-coming-in",
|
||||||
"title": "Backlinks for DS Pem Press Manual"
|
"title": "Backlinks for AddnlMakeQ"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -124,12 +113,12 @@
|
||||||
"state": {
|
"state": {
|
||||||
"type": "outgoing-link",
|
"type": "outgoing-link",
|
||||||
"state": {
|
"state": {
|
||||||
"file": "Forms/DS Pem Press Manual.md",
|
"file": "Queries/AddnlMakeQ.md",
|
||||||
"linksCollapsed": false,
|
"linksCollapsed": false,
|
||||||
"unlinkedCollapsed": true
|
"unlinkedCollapsed": true
|
||||||
},
|
},
|
||||||
"icon": "links-going-out",
|
"icon": "links-going-out",
|
||||||
"title": "Outgoing links from DS Pem Press Manual"
|
"title": "Outgoing links from AddnlMakeQ"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -153,13 +142,13 @@
|
||||||
"state": {
|
"state": {
|
||||||
"type": "outline",
|
"type": "outline",
|
||||||
"state": {
|
"state": {
|
||||||
"file": "Forms/DS Pem Press Manual.md",
|
"file": "Queries/AddnlMakeQ.md",
|
||||||
"followCursor": false,
|
"followCursor": false,
|
||||||
"showSearch": false,
|
"showSearch": false,
|
||||||
"searchQuery": ""
|
"searchQuery": ""
|
||||||
},
|
},
|
||||||
"icon": "lucide-list",
|
"icon": "lucide-list",
|
||||||
"title": "Outline of DS Pem Press Manual"
|
"title": "Outline of AddnlMakeQ"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
@ -179,33 +168,33 @@
|
||||||
"command-palette:Open command palette": false
|
"command-palette:Open command palette": false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"active": "caa3f00cbffc2666",
|
"active": "54de382f7fbbc343",
|
||||||
"lastOpenFiles": [
|
"lastOpenFiles": [
|
||||||
"Forms/DS Pedestal.md",
|
"Modules/processvariables.md",
|
||||||
"Forms/DS Paper Peel.md",
|
"Modules/SummaryModule.md",
|
||||||
"Forms/DS MultShear.md",
|
"Modules/Module1.md",
|
||||||
"Forms/DS Misc Weld.md",
|
"Modules/MacroModule.md",
|
||||||
"Forms/DS Laser.md",
|
"Modules/MainModule.md",
|
||||||
"Forms/DS Hand Deburr.md",
|
|
||||||
"Forms/DS CNC.md",
|
|
||||||
"Forms/Delete this.md",
|
|
||||||
"Tables/DedicatedCells.md",
|
|
||||||
"Tables/DataSheet.md",
|
|
||||||
"Forms/Data Sheet Select.md",
|
|
||||||
"Macros/Create Util 1.md",
|
|
||||||
"Forms/Copy of Process Sheet.md",
|
|
||||||
"Tables/Copy of Metals Header.md",
|
|
||||||
"Tables/Conversion Errors.md",
|
|
||||||
"Tables/ConfigurationTable.md",
|
|
||||||
"Tables/CntlPanel.md",
|
|
||||||
"Modules/CNCTapeRoutines.md",
|
"Modules/CNCTapeRoutines.md",
|
||||||
"Forms/CNCDefinitions.md",
|
"Macros/Zero Util Matrix.md",
|
||||||
"Tables/c1 - 2.md",
|
"Macros/AS400 Utiliz Results.md",
|
||||||
"Tables/Base Price Info.md",
|
"Overview.md",
|
||||||
"Macros/AutoExec.md",
|
"Forms/YESORNO.md",
|
||||||
"Macros/AS400 Utiliz Results for steve.md",
|
"Forms/xyz.md",
|
||||||
"Forms/AllProcessSubform14.md",
|
"Tables/WorkCenter.md",
|
||||||
"Forms/AllProcessSubform.md",
|
"Forms/Utilization on Multiple Sheets old.md",
|
||||||
"Tables/AddnlPROC.md"
|
"Forms/Utilization on Multiple Sheets.md",
|
||||||
|
"Forms/Utilization on MS hold.md",
|
||||||
|
"Forms/Utilities.md",
|
||||||
|
"Tables/Util Selection C2.md",
|
||||||
|
"Tables/Util Selection C1 - D2.md",
|
||||||
|
"Tables/Util Selection C1 - D1.md",
|
||||||
|
"Tables/Util Selection C1.md",
|
||||||
|
"Tables/Util Selection C0.md",
|
||||||
|
"Tables/Util Selection 2.md",
|
||||||
|
"Tables/Util Selection 1.md",
|
||||||
|
"Tables/Util Selection 0b.md",
|
||||||
|
"Tables/Util Selection 0a.md",
|
||||||
|
"Tables/Util Selection 0.md"
|
||||||
]
|
]
|
||||||
}
|
}
|
|
@ -1,5 +1,4 @@
|
||||||
# DS Polish
|
# DS Polish
|
||||||
Analysis generated on: 4/1/2025 4:10:56 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Queries/DataSheetQ1]]
|
- [[Queries/DataSheetQ1]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# DS PressBrake
|
# DS PressBrake
|
||||||
Analysis generated on: 4/1/2025 4:10:45 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Queries/DataSheetQ1]]
|
- [[Queries/DataSheetQ1]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# DS Salvagnini
|
# DS Salvagnini
|
||||||
Analysis generated on: 4/1/2025 4:11:39 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Queries/DataSheetQ1]]
|
- [[Queries/DataSheetQ1]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# DS Shake And Break
|
# DS Shake And Break
|
||||||
Analysis generated on: 4/1/2025 4:05:07 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Queries/DataSheetQ1]]
|
- [[Queries/DataSheetQ1]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# DS Shear
|
# DS Shear
|
||||||
Analysis generated on: 4/1/2025 4:10:37 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Queries/DataSheetQ1]]
|
- [[Queries/DataSheetQ1]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# DS Spot Weld
|
# DS Spot Weld
|
||||||
Analysis generated on: 4/1/2025 4:10:05 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Queries/DataSheetQ1]]
|
- [[Queries/DataSheetQ1]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# DS Timesaver
|
# DS Timesaver
|
||||||
Analysis generated on: 4/1/2025 4:09:26 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Queries/DataSheetQ1]]
|
- [[Queries/DataSheetQ1]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# ErrorForm
|
# ErrorForm
|
||||||
Analysis generated on: 4/1/2025 4:09:34 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- *None*
|
- *None*
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Filtered Parts old
|
# Filtered Parts old
|
||||||
Analysis generated on: 4/1/2025 4:09:40 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- *None*
|
- *None*
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Filtered Parts
|
# Filtered Parts
|
||||||
Analysis generated on: 4/1/2025 4:09:54 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- *None*
|
- *None*
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Form1
|
# Form1
|
||||||
Analysis generated on: 4/1/2025 4:11:39 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Tables/AddnlProc]]
|
- [[Tables/AddnlProc]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Gauge
|
# Gauge
|
||||||
Analysis generated on: 4/1/2025 4:11:39 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Queries/metalQ1]]
|
- [[Queries/metalQ1]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# HoldPartNumberForm
|
# HoldPartNumberForm
|
||||||
Analysis generated on: 4/1/2025 4:09:19 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- *None*
|
- *None*
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Latest Revision of parts
|
# Latest Revision of parts
|
||||||
Analysis generated on: 4/1/2025 4:03:20 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Queries/Processes by material]]
|
- [[Queries/Processes by material]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Main Menu
|
# Main Menu
|
||||||
Analysis generated on: 4/1/2025 4:08:03 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- *None*
|
- *None*
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# MakeForm
|
# MakeForm
|
||||||
Analysis generated on: 4/1/2025 4:00:41 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Queries/Qmake1-14]]
|
- [[Queries/Qmake1-14]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Material Selection Screen
|
# Material Selection Screen
|
||||||
Analysis generated on: 4/1/2025 4:04:59 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- *None*
|
- *None*
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Material Upgrade old
|
# Material Upgrade old
|
||||||
Analysis generated on: 4/1/2025 4:09:00 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Queries/Processes by material]]
|
- [[Queries/Processes by material]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Material Upgrade
|
# Material Upgrade
|
||||||
Analysis generated on: 4/1/2025 4:07:02 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Queries/Processes by material]]
|
- [[Queries/Processes by material]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Miscellaneous
|
# Miscellaneous
|
||||||
Analysis generated on: 4/1/2025 4:02:40 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- *None*
|
- *None*
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# New Process Sheet
|
# New Process Sheet
|
||||||
Analysis generated on: 4/1/2025 4:04:01 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Tables/Process]]
|
- [[Tables/Process]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# PROCESS97
|
# PROCESS97
|
||||||
Analysis generated on: 4/1/2025 4:08:09 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Queries/UniversalQ]]
|
- [[Queries/UniversalQ]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Parts Per Sheet
|
# Parts Per Sheet
|
||||||
Analysis generated on: 4/1/2025 4:05:46 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- *None*
|
- *None*
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# PemPress Ops subform
|
# PemPress Ops subform
|
||||||
Analysis generated on: 4/1/2025 4:11:39 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Tables/SELECT DISTINCTROW [PemPress Ops].[PartNumber], [PemPress Ops].[OpCode], [PemPress Ops].[PemNumber], [PemPress Ops].[AutoManual], [PemPress Ops].[Hits] FROM [PemPress Ops];]]
|
- [[Tables/SELECT DISTINCTROW [PemPress Ops].[PartNumber], [PemPress Ops].[OpCode], [PemPress Ops].[PemNumber], [PemPress Ops].[AutoManual], [PemPress Ops].[Hits] FROM [PemPress Ops];]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Phantom Selection Screen
|
# Phantom Selection Screen
|
||||||
Analysis generated on: 4/1/2025 4:04:51 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- *None*
|
- *None*
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# PressBrakeSubForm
|
# PressBrakeSubForm
|
||||||
Analysis generated on: 4/1/2025 4:11:39 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Queries/PressBrakeQ1]]
|
- [[Queries/PressBrakeQ1]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Process Sheet test
|
# Process Sheet test
|
||||||
Analysis generated on: 4/1/2025 4:01:17 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- *None*
|
- *None*
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Process Sheet
|
# Process Sheet
|
||||||
Analysis generated on: 4/1/2025 4:08:21 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Queries/UniversalQ]]
|
- [[Queries/UniversalQ]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Restart Process Sheet
|
# Restart Process Sheet
|
||||||
Analysis generated on: 4/1/2025 4:06:13 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Tables/Process]]
|
- [[Tables/Process]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# SP Delete
|
# SP Delete
|
||||||
Analysis generated on: 4/1/2025 4:06:48 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- *None*
|
- *None*
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Scott's Utilization of C6-C9
|
# Scott's Utilization of C6-C9
|
||||||
Analysis generated on: 4/1/2025 4:07:47 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- *None*
|
- *None*
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# SetupPaths
|
# SetupPaths
|
||||||
Analysis generated on: 4/1/2025 4:07:36 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- *None*
|
- *None*
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Sheet Metal Weight
|
# Sheet Metal Weight
|
||||||
Analysis generated on: 4/1/2025 4:03:52 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- *None*
|
- *None*
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Sheet Utilization Utilites
|
# Sheet Utilization Utilites
|
||||||
Analysis generated on: 4/1/2025 4:02:30 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- *None*
|
- *None*
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Sorted by Machine old
|
# Sorted by Machine old
|
||||||
Analysis generated on: 4/1/2025 4:01:48 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- *None*
|
- *None*
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Sorted by Machine
|
# Sorted by Machine
|
||||||
Analysis generated on: 4/1/2025 4:07:22 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- *None*
|
- *None*
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# T
|
# T
|
||||||
Analysis generated on: 4/1/2025 4:02:48 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Queries/UniversalQ]]
|
- [[Queries/UniversalQ]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# TRASH
|
# TRASH
|
||||||
Analysis generated on: 4/1/2025 4:05:15 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Queries/UniversalQ]]
|
- [[Queries/UniversalQ]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Tricks
|
# Tricks
|
||||||
Analysis generated on: 4/1/2025 4:11:39 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Tables/Tricks]]
|
- [[Tables/Tricks]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Universal Selection Screen
|
# Universal Selection Screen
|
||||||
Analysis generated on: 4/1/2025 4:04:39 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- *None*
|
- *None*
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Update Work Centers
|
# Update Work Centers
|
||||||
Analysis generated on: 4/1/2025 4:08:03 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Queries/PBWCUpdateQuery]]
|
- [[Queries/PBWCUpdateQuery]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Util Adder
|
# Util Adder
|
||||||
Analysis generated on: 4/1/2025 4:04:28 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- *None*
|
- *None*
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Util L X W subform
|
# Util L X W subform
|
||||||
Analysis generated on: 4/1/2025 4:09:19 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Tables/SELECT DISTINCTROW [Util L X W].IDNo, [Util L X W].SheetW, [Util L X W].SheetL, [Util L X W].GrossWeight, [Util L X W].ErrCount, [Util L X W].TotalPrice FROM [Util L X W];]]
|
- [[Tables/SELECT DISTINCTROW [Util L X W].IDNo, [Util L X W].SheetW, [Util L X W].SheetL, [Util L X W].GrossWeight, [Util L X W].ErrCount, [Util L X W].TotalPrice FROM [Util L X W];]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Util Result1
|
# Util Result1
|
||||||
Analysis generated on: 4/1/2025 4:03:04 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Tables/Util Selection C1]]
|
- [[Tables/Util Selection C1]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Util Result2
|
# Util Result2
|
||||||
Analysis generated on: 4/1/2025 4:04:12 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Tables/Util Selection C1]]
|
- [[Tables/Util Selection C1]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Util Select picker
|
# Util Select picker
|
||||||
Analysis generated on: 4/1/2025 4:03:39 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Queries/Util Select 0 Q1]]
|
- [[Queries/Util Select 0 Q1]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Utilities
|
# Utilities
|
||||||
Analysis generated on: 4/1/2025 4:03:12 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Tables/Process]]
|
- [[Tables/Process]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Utilization on MS hold
|
# Utilization on MS hold
|
||||||
Analysis generated on: 4/1/2025 4:00:27 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- *None*
|
- *None*
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Utilization on Multiple Sheets old
|
# Utilization on Multiple Sheets old
|
||||||
Analysis generated on: 4/1/2025 4:02:00 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- *None*
|
- *None*
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Utilization on Multiple Sheets
|
# Utilization on Multiple Sheets
|
||||||
Analysis generated on: 4/1/2025 4:02:13 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- *None*
|
- *None*
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# YESORNO
|
# YESORNO
|
||||||
Analysis generated on: 4/1/2025 4:00:54 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- *None*
|
- *None*
|
||||||
|
|
|
@ -1,13 +0,0 @@
|
||||||
# frmOllamaProgress
|
|
||||||
Analysis generated on: 4/1/2025 4:11:49 PM
|
|
||||||
---
|
|
||||||
## Record Source
|
|
||||||
- *None*
|
|
||||||
## Controls
|
|
||||||
| Control Name | Reference |
|
|
||||||
|--------------|-----------|
|
|
||||||
| *None* | - |
|
|
||||||
## VBA Code
|
|
||||||
*None*
|
|
||||||
## What it does
|
|
||||||
*No VBA code to document*
|
|
|
@ -1,5 +1,4 @@
|
||||||
# temp
|
# temp
|
||||||
Analysis generated on: 4/1/2025 4:06:31 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Queries/UniversalQ]]
|
- [[Queries/UniversalQ]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# term Process Sheet
|
# term Process Sheet
|
||||||
Analysis generated on: 4/1/2025 4:05:57 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Tables/Process]]
|
- [[Tables/Process]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# test1
|
# test1
|
||||||
Analysis generated on: 4/1/2025 4:05:35 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- [[Tables/Util Selection C1]]
|
- [[Tables/Util Selection C1]]
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# xyz
|
# xyz
|
||||||
Analysis generated on: 4/1/2025 4:01:32 PM
|
|
||||||
---
|
---
|
||||||
## Record Source
|
## Record Source
|
||||||
- *None*
|
- *None*
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Filter across Materials Utilitzation
|
# Filter across Materials Utilitzation
|
||||||
Analysis generated on: 4/1/2025 3:41:10 PM
|
|
||||||
---
|
---
|
||||||
## Macro Definition
|
## Macro Definition
|
||||||
| Action | Arguments | Condition |
|
| Action | Arguments | Condition |
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Macro1
|
# Macro1
|
||||||
Analysis generated on: 4/1/2025 3:41:10 PM
|
|
||||||
---
|
---
|
||||||
## Macro Definition
|
## Macro Definition
|
||||||
| Action | Arguments | Condition |
|
| Action | Arguments | Condition |
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Macro2
|
# Macro2
|
||||||
Analysis generated on: 4/1/2025 3:41:08 PM
|
|
||||||
---
|
---
|
||||||
## Macro Definition
|
## Macro Definition
|
||||||
| Action | Arguments | Condition |
|
| Action | Arguments | Condition |
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Material Selections for Utilitzation
|
# Material Selections for Utilitzation
|
||||||
Analysis generated on: 4/1/2025 3:41:09 PM
|
|
||||||
---
|
---
|
||||||
## Macro Definition
|
## Macro Definition
|
||||||
| Action | Arguments | Condition |
|
| Action | Arguments | Condition |
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Material Upgrade
|
# Material Upgrade
|
||||||
Analysis generated on: 4/1/2025 3:41:06 PM
|
|
||||||
---
|
---
|
||||||
## Macro Definition
|
## Macro Definition
|
||||||
| Action | Arguments | Condition |
|
| Action | Arguments | Condition |
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# MaterialCalculate
|
# MaterialCalculate
|
||||||
Analysis generated on: 4/1/2025 3:41:11 PM
|
|
||||||
---
|
---
|
||||||
## Macro Definition
|
## Macro Definition
|
||||||
| Action | Arguments | Condition |
|
| Action | Arguments | Condition |
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Notes for Util
|
# Notes for Util
|
||||||
Analysis generated on: 4/1/2025 3:41:11 PM
|
|
||||||
---
|
---
|
||||||
## Macro Definition
|
## Macro Definition
|
||||||
| Action | Arguments | Condition |
|
| Action | Arguments | Condition |
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Open Processes by List
|
# Open Processes by List
|
||||||
Analysis generated on: 4/1/2025 3:41:13 PM
|
|
||||||
---
|
---
|
||||||
## Macro Definition
|
## Macro Definition
|
||||||
| Action | Arguments | Condition |
|
| Action | Arguments | Condition |
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# OpenUpC1
|
# OpenUpC1
|
||||||
Analysis generated on: 4/1/2025 3:41:14 PM
|
|
||||||
---
|
---
|
||||||
## Macro Definition
|
## Macro Definition
|
||||||
| Action | Arguments | Condition |
|
| Action | Arguments | Condition |
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# OpenUpGaugeTable
|
# OpenUpGaugeTable
|
||||||
Analysis generated on: 4/1/2025 3:41:14 PM
|
|
||||||
---
|
---
|
||||||
## Macro Definition
|
## Macro Definition
|
||||||
| Action | Arguments | Condition |
|
| Action | Arguments | Condition |
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# PASSMATER
|
# PASSMATER
|
||||||
Analysis generated on: 4/1/2025 3:41:08 PM
|
|
||||||
---
|
---
|
||||||
## Macro Definition
|
## Macro Definition
|
||||||
- *No actions found or failed to parse macro definition*
|
- *No actions found or failed to parse macro definition*
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Process 14 two
|
# Process 14 two
|
||||||
Analysis generated on: 4/1/2025 3:41:15 PM
|
|
||||||
---
|
---
|
||||||
## Macro Definition
|
## Macro Definition
|
||||||
| Action | Arguments | Condition |
|
| Action | Arguments | Condition |
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# QueryfromFilterParts3
|
# QueryfromFilterParts3
|
||||||
Analysis generated on: 4/1/2025 3:41:15 PM
|
|
||||||
---
|
---
|
||||||
## Macro Definition
|
## Macro Definition
|
||||||
| Action | Arguments | Condition |
|
| Action | Arguments | Condition |
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Restore Util Selection C1
|
# Restore Util Selection C1
|
||||||
Analysis generated on: 4/1/2025 3:41:16 PM
|
|
||||||
---
|
---
|
||||||
## Macro Definition
|
## Macro Definition
|
||||||
| Action | Arguments | Condition |
|
| Action | Arguments | Condition |
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Return to Utilization Form
|
# Return to Utilization Form
|
||||||
Analysis generated on: 4/1/2025 3:41:16 PM
|
|
||||||
---
|
---
|
||||||
## Macro Definition
|
## Macro Definition
|
||||||
| Action | Arguments | Condition |
|
| Action | Arguments | Condition |
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# SP C1 Report Macro
|
# SP C1 Report Macro
|
||||||
Analysis generated on: 4/1/2025 3:41:17 PM
|
|
||||||
---
|
---
|
||||||
## Macro Definition
|
## Macro Definition
|
||||||
| Action | Arguments | Condition |
|
| Action | Arguments | Condition |
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# SP Make table
|
# SP Make table
|
||||||
Analysis generated on: 4/1/2025 3:41:17 PM
|
|
||||||
---
|
---
|
||||||
## Macro Definition
|
## Macro Definition
|
||||||
| Action | Arguments | Condition |
|
| Action | Arguments | Condition |
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Tricks
|
# Tricks
|
||||||
Analysis generated on: 4/1/2025 3:41:13 PM
|
|
||||||
---
|
---
|
||||||
## Macro Definition
|
## Macro Definition
|
||||||
| Action | Arguments | Condition |
|
| Action | Arguments | Condition |
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Zero Util Matrix
|
# Zero Util Matrix
|
||||||
Analysis generated on: 4/1/2025 3:41:12 PM
|
|
||||||
---
|
---
|
||||||
## Macro Definition
|
## Macro Definition
|
||||||
| Action | Arguments | Condition |
|
| Action | Arguments | Condition |
|
||||||
|
|
|
@ -2486,13 +2486,7 @@ End Function
|
||||||
|
|
||||||
```
|
```
|
||||||
## What it does
|
## What it does
|
||||||
#### Chunk 1
|
|
||||||
*Failed to generate documentation with Ollama*
|
|
||||||
#### Chunk 2
|
|
||||||
*Failed to generate documentation with Ollama*
|
|
||||||
#### Chunk 3
|
|
||||||
*Failed to generate documentation with Ollama*
|
|
||||||
#### Chunk 4
|
|
||||||
**VBA Code Description**
|
**VBA Code Description**
|
||||||
==========================
|
==========================
|
||||||
|
|
||||||
|
@ -2884,7 +2878,7 @@ This VBA code is a complex piece of software that handles multiple commands rela
|
||||||
**VBA Code Description**
|
**VBA Code Description**
|
||||||
==========================
|
==========================
|
||||||
|
|
||||||
This VBA code is designed to control a robotic arm, likely in a simulation or game environment. The code reads input commands from the console and calculates the time required for each command to be executed.
|
This VBA code is designed to control a robotic arm, in a manufacturing environment potentially running simulations. The code reads input commands from the console and calculates the time required for each command to be executed.
|
||||||
|
|
||||||
**Overview**
|
**Overview**
|
||||||
------------
|
------------
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# MacroModule
|
# MacroModule
|
||||||
Analysis generated on: 4/1/2025 5:16:54 PM
|
|
||||||
---
|
---
|
||||||
## VBA Code
|
## VBA Code
|
||||||
```vba
|
```vba
|
||||||
|
|
|
@ -1,388 +0,0 @@
|
||||||
# MainModule
|
|
||||||
Analysis generated on: 4/1/2025 5:16:51 PM
|
|
||||||
---
|
|
||||||
## VBA Code
|
|
||||||
```vba
|
|
||||||
Attribute VB_Name = "MainModule"
|
|
||||||
Option Compare Database
|
|
||||||
Option Explicit
|
|
||||||
|
|
||||||
' Global queue for API requests
|
|
||||||
Public Type ApiRequest
|
|
||||||
code As String
|
|
||||||
filePath As String
|
|
||||||
ItemType As String ' To track the type of item (Form, Query, Table, Module)
|
|
||||||
ItemName As String ' To track the name of the item for progress display
|
|
||||||
End Type
|
|
||||||
|
|
||||||
' Declare Sleep for both 32-bit and 64-bit Office
|
|
||||||
#If VBA7 Then
|
|
||||||
Public Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
|
|
||||||
#Else
|
|
||||||
Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
|
|
||||||
#End If
|
|
||||||
|
|
||||||
' Main subroutine to generate the Obsidian vault
|
|
||||||
Public Sub GenerateObsidianVault()
|
|
||||||
On Error GoTo ErrorHandler
|
|
||||||
|
|
||||||
' Create the overview file
|
|
||||||
Dim fso As Object
|
|
||||||
Set fso = CreateObject("Scripting.FileSystemObject")
|
|
||||||
Dim vaultPath As String
|
|
||||||
vaultPath = CurrentProject.Path & "\ObsidianVault"
|
|
||||||
Dim overviewPath As String
|
|
||||||
overviewPath = vaultPath & "\Overview.md"
|
|
||||||
Dim overviewFile As Object
|
|
||||||
Set overviewFile = fso.CreateTextFile(overviewPath, True)
|
|
||||||
If overviewFile Is Nothing Then
|
|
||||||
MsgBox "Failed to create Overview.md. Error: " & Err.Description, vbCritical
|
|
||||||
Exit Sub
|
|
||||||
End If
|
|
||||||
|
|
||||||
overviewFile.WriteLine "# Overview"
|
|
||||||
overviewFile.WriteLine "Generated on: " & Now
|
|
||||||
|
|
||||||
' Run each analysis section
|
|
||||||
FormsModule.AnalyzeFormsForObsidianVault overviewFile, fso, vaultPath
|
|
||||||
QueriesModule.AnalyzeQueriesForObsidianVault overviewFile, fso, vaultPath
|
|
||||||
TablesModule.AnalyzeTablesForObsidianVault overviewFile, fso, vaultPath
|
|
||||||
ModulesModule.AnalyzeModulesForObsidianVault overviewFile, fso, vaultPath
|
|
||||||
|
|
||||||
' Finalize and clean up
|
|
||||||
overviewFile.WriteLine "---"
|
|
||||||
overviewFile.WriteLine "## Analysis Complete"
|
|
||||||
overviewFile.Close
|
|
||||||
Set overviewFile = Nothing
|
|
||||||
Set fso = Nothing
|
|
||||||
|
|
||||||
MsgBox "Analysis complete. Files saved to: " & vaultPath, vbInformation
|
|
||||||
Exit Sub
|
|
||||||
|
|
||||||
ErrorHandler:
|
|
||||||
Debug.Print "Error in GenerateObsidianVault: " & Err.Number & ": " & Err.Description & " at " & Now
|
|
||||||
MsgBox "Error " & Err.Number & ": " & Err.Description, vbCritical
|
|
||||||
If Not overviewFile Is Nothing Then overviewFile.Close
|
|
||||||
Set overviewFile = Nothing
|
|
||||||
Set fso = Nothing
|
|
||||||
Exit Sub
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
' Helper function to sanitize filenames
|
|
||||||
Public Function SanitizeFileName(fileName As String) As String
|
|
||||||
Dim invalidChars As String
|
|
||||||
Dim i As Integer
|
|
||||||
invalidChars = "\/:*?""<>|#" ' Added # to the list of invalid characters
|
|
||||||
SanitizeFileName = fileName
|
|
||||||
For i = 1 To Len(invalidChars)
|
|
||||||
SanitizeFileName = Replace(SanitizeFileName, Mid(invalidChars, i, 1), "_")
|
|
||||||
Next i
|
|
||||||
End Function
|
|
||||||
|
|
||||||
' Helper function to parse JSON (basic implementation)
|
|
||||||
Public Function ParseJson(jsonStr As String) As Object
|
|
||||||
On Error GoTo JsonError
|
|
||||||
Dim scriptControl As Object
|
|
||||||
Set scriptControl = CreateObject("ScriptControl")
|
|
||||||
If scriptControl Is Nothing Then
|
|
||||||
Set ParseJson = Nothing
|
|
||||||
Exit Function
|
|
||||||
End If
|
|
||||||
scriptControl.Language = "JScript"
|
|
||||||
Set ParseJson = scriptControl.Eval("(" & jsonStr & ")")
|
|
||||||
Exit Function
|
|
||||||
|
|
||||||
JsonError:
|
|
||||||
Set ParseJson = Nothing
|
|
||||||
End Function
|
|
||||||
Public Function SplitVBACode(code As Variant) As Collection
|
|
||||||
Dim chunks As New Collection
|
|
||||||
Dim lines() As String
|
|
||||||
Dim currentChunk As String
|
|
||||||
Dim i As Long
|
|
||||||
Dim chunkSize As Long
|
|
||||||
Const MAX_CHUNK_SIZE As Long = 12000 ' Approx 3000 tokens (assuming 1 token = 4 chars)
|
|
||||||
|
|
||||||
' Handle invalid or empty input
|
|
||||||
If IsNull(code) Or IsEmpty(code) Or TypeName(code) <> "String" Then
|
|
||||||
Debug.Print "SplitVBACode: Invalid input, code is " & TypeName(code)
|
|
||||||
chunks.Add "*No VBA code to document*"
|
|
||||||
Set SplitVBACode = chunks
|
|
||||||
Exit Function
|
|
||||||
End If
|
|
||||||
|
|
||||||
' Handle empty or whitespace-only code
|
|
||||||
If Trim(code) = "" Then
|
|
||||||
Debug.Print "SplitVBACode: Code is empty or whitespace-only"
|
|
||||||
chunks.Add "*No VBA code to document*"
|
|
||||||
Set SplitVBACode = chunks
|
|
||||||
Exit Function
|
|
||||||
End If
|
|
||||||
|
|
||||||
' Split the code into lines
|
|
||||||
On Error Resume Next
|
|
||||||
lines = Split(code, vbCrLf)
|
|
||||||
If Err.Number <> 0 Then
|
|
||||||
Debug.Print "SplitVBACode: Error splitting code: " & Err.Description
|
|
||||||
chunks.Add "*Error splitting VBA code: " & Err.Description & "*"
|
|
||||||
Err.Clear
|
|
||||||
Set SplitVBACode = chunks
|
|
||||||
Exit Function
|
|
||||||
End If
|
|
||||||
On Error GoTo 0
|
|
||||||
|
|
||||||
' Check if the lines array is valid
|
|
||||||
Dim linesLowerBound As Long
|
|
||||||
Dim linesUpperBound As Long
|
|
||||||
On Error Resume Next
|
|
||||||
linesLowerBound = LBound(lines)
|
|
||||||
linesUpperBound = UBound(lines)
|
|
||||||
If Err.Number <> 0 Then
|
|
||||||
Debug.Print "SplitVBACode: Error accessing lines array bounds: " & Err.Description
|
|
||||||
chunks.Add "*Error accessing lines array: " & Err.Description & "*"
|
|
||||||
Err.Clear
|
|
||||||
Set SplitVBACode = chunks
|
|
||||||
Exit Function
|
|
||||||
End If
|
|
||||||
On Error GoTo 0
|
|
||||||
|
|
||||||
' Check if the lines array is empty
|
|
||||||
If linesUpperBound < linesLowerBound Then
|
|
||||||
Debug.Print "SplitVBACode: Lines array is empty"
|
|
||||||
chunks.Add "*No VBA code to document*"
|
|
||||||
Set SplitVBACode = chunks
|
|
||||||
Exit Function
|
|
||||||
End If
|
|
||||||
|
|
||||||
currentChunk = ""
|
|
||||||
chunkSize = 0
|
|
||||||
|
|
||||||
For i = linesLowerBound To linesUpperBound
|
|
||||||
Dim line As String
|
|
||||||
On Error Resume Next
|
|
||||||
line = lines(i)
|
|
||||||
If Err.Number <> 0 Then
|
|
||||||
Debug.Print "SplitVBACode: Error accessing lines(" & i & "): " & Err.Description
|
|
||||||
chunks.Add "*Error accessing line " & i & ": " & Err.Description & "*"
|
|
||||||
Err.Clear
|
|
||||||
Set SplitVBACode = chunks
|
|
||||||
Exit Function
|
|
||||||
End If
|
|
||||||
On Error GoTo 0
|
|
||||||
|
|
||||||
' Add the line to the current chunk
|
|
||||||
currentChunk = currentChunk & IIf(currentChunk = "", "", vbCrLf) & line
|
|
||||||
chunkSize = chunkSize + Len(line) + 2 ' +2 for vbCrLf
|
|
||||||
|
|
||||||
' Check if the current chunk is too large or if we've reached a logical boundary
|
|
||||||
If chunkSize > MAX_CHUNK_SIZE Or (i < linesUpperBound And IsLogicalBoundary(lines(i), lines(i + 1))) Then
|
|
||||||
If currentChunk <> "" Then
|
|
||||||
chunks.Add currentChunk
|
|
||||||
currentChunk = ""
|
|
||||||
chunkSize = 0
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
Next i
|
|
||||||
|
|
||||||
' Add the last chunk if it exists
|
|
||||||
If currentChunk <> "" Then
|
|
||||||
chunks.Add currentChunk
|
|
||||||
End If
|
|
||||||
|
|
||||||
' Ensure at least one chunk is added
|
|
||||||
If chunks.Count = 0 Then
|
|
||||||
Debug.Print "SplitVBACode: No chunks created"
|
|
||||||
chunks.Add "*No VBA code to document*"
|
|
||||||
End If
|
|
||||||
|
|
||||||
Set SplitVBACode = chunks
|
|
||||||
End Function
|
|
||||||
' Helper function to determine if we're at a logical boundary (e.g., between subroutines)
|
|
||||||
Public Function IsLogicalBoundary(currentLine As String, nextLine As String) As Boolean
|
|
||||||
currentLine = Trim(currentLine)
|
|
||||||
nextLine = Trim(nextLine)
|
|
||||||
|
|
||||||
' Check if the current line ends a subroutine/function and the next line starts a new one
|
|
||||||
If (UCase(Right(currentLine, 7)) = "END SUB" Or UCase(Right(currentLine, 12)) = "END FUNCTION") And _
|
|
||||||
(UCase(Left(nextLine, 3)) = "SUB" Or UCase(Left(nextLine, 8)) = "FUNCTION") Then
|
|
||||||
IsLogicalBoundary = True
|
|
||||||
Else
|
|
||||||
IsLogicalBoundary = False
|
|
||||||
End If
|
|
||||||
End Function
|
|
||||||
' Helper function to process API requests to Ollama
|
|
||||||
Public Sub ProcessApiQueue(ApiQueue() As ApiRequest, QueueSize As Long, fso As Object)
|
|
||||||
Dim i As Long
|
|
||||||
Dim http As Object
|
|
||||||
Dim requestBody As String
|
|
||||||
Dim response As String
|
|
||||||
Dim txtFile As Object
|
|
||||||
|
|
||||||
' Open the progress form
|
|
||||||
On Error Resume Next
|
|
||||||
DoCmd.OpenForm "frmOllamaProgress", acNormal
|
|
||||||
If Err.Number <> 0 Then
|
|
||||||
Debug.Print "Failed to open progress form: " & Err.Description
|
|
||||||
Err.Clear
|
|
||||||
' Continue without the progress form
|
|
||||||
GoTo SkipProgressForm
|
|
||||||
End If
|
|
||||||
On Error GoTo 0
|
|
||||||
|
|
||||||
Dim frm As Form
|
|
||||||
Set frm = Forms("frmOllamaProgress")
|
|
||||||
|
|
||||||
' Set the maximum width of the progress bar (in twips; 1 inch = 1440 twips)
|
|
||||||
Const PROGRESS_BAR_MAX_WIDTH As Long = 5760 ' 4 inches
|
|
||||||
|
|
||||||
' Check if the queue is empty
|
|
||||||
If QueueSize = 0 Then
|
|
||||||
Debug.Print "ApiQueue is empty, no items to process for Ollama"
|
|
||||||
frm.Controls("lblProgress").Caption = "Processing complete (0 of 0 requests)"
|
|
||||||
frm.Controls("rectProgressBar").Width = PROGRESS_BAR_MAX_WIDTH
|
|
||||||
frm.Controls("lblCurrentTask").Caption = "Finished"
|
|
||||||
DoEvents
|
|
||||||
DoCmd.Close acForm, "frmOllamaProgress"
|
|
||||||
GoTo SkipProgressForm
|
|
||||||
End If
|
|
||||||
|
|
||||||
' Verify array bounds
|
|
||||||
On Error Resume Next
|
|
||||||
Dim upperBound As Long
|
|
||||||
upperBound = UBound(ApiQueue)
|
|
||||||
On Error GoTo 0
|
|
||||||
Debug.Print "ApiQueue UBound: " & upperBound & ", QueueSize: " & QueueSize
|
|
||||||
If upperBound + 1 < QueueSize Then
|
|
||||||
Debug.Print "QueueSize (" & QueueSize & ") exceeds ApiQueue bounds (" & (upperBound + 1) & "). Adjusting QueueSize."
|
|
||||||
QueueSize = upperBound + 1
|
|
||||||
End If
|
|
||||||
|
|
||||||
For i = 0 To QueueSize - 1
|
|
||||||
' Debug: Log the current item being processed
|
|
||||||
Debug.Print "Processing ApiQueue(" & i & "): ItemType=" & ApiQueue(i).ItemType & ", ItemName=" & ApiQueue(i).ItemName & ", FilePath=" & ApiQueue(i).filePath
|
|
||||||
|
|
||||||
' Validate ApiQueue(i).Code
|
|
||||||
Debug.Print "Validating ApiQueue(" & i & ").Code"
|
|
||||||
If IsNull(ApiQueue(i).code) Or ApiQueue(i).code = "" Then
|
|
||||||
Debug.Print "ApiQueue(" & i & ").Code is empty or null for " & ApiQueue(i).ItemName
|
|
||||||
GoTo NextRequest
|
|
||||||
End If
|
|
||||||
Debug.Print "ApiQueue(" & i & ").Code length: " & Len(ApiQueue(i).code)
|
|
||||||
|
|
||||||
' Update overall progress
|
|
||||||
Debug.Print "Updating progress for item " & i
|
|
||||||
Dim progressPercent As Double
|
|
||||||
progressPercent = (i / QueueSize) * 100
|
|
||||||
frm.Controls("lblProgress").Caption = "Processing " & (i + 1) & " of " & QueueSize & " requests (" & Format(progressPercent, "0.0") & "%)"
|
|
||||||
frm.Controls("rectProgressBar").Width = (progressPercent / 100) * PROGRESS_BAR_MAX_WIDTH
|
|
||||||
frm.Controls("lblCurrentTask").Caption = "Processing " & LCase(ApiQueue(i).ItemType) & ": " & ApiQueue(i).ItemName
|
|
||||||
DoEvents ' Allow the form to refresh
|
|
||||||
|
|
||||||
' Split the code into chunks if necessary
|
|
||||||
Debug.Print "Splitting code into chunks for item " & i
|
|
||||||
Dim codeChunks As Collection
|
|
||||||
Set codeChunks = SplitVBACode(ApiQueue(i).code)
|
|
||||||
|
|
||||||
' Debug: Log the number of chunks
|
|
||||||
Debug.Print "Number of chunks for " & ApiQueue(i).ItemName & ": " & codeChunks.Count
|
|
||||||
|
|
||||||
' Open the file for appending
|
|
||||||
Debug.Print "Opening file for appending: " & ApiQueue(i).filePath
|
|
||||||
Set txtFile = fso.OpenTextFile(ApiQueue(i).filePath, 8, True)
|
|
||||||
If txtFile Is Nothing Then
|
|
||||||
Debug.Print "Failed to open file for appending: " & ApiQueue(i).filePath
|
|
||||||
GoTo NextRequest
|
|
||||||
End If
|
|
||||||
|
|
||||||
txtFile.WriteLine "## VBA Documentation (Generated by Ollama)"
|
|
||||||
|
|
||||||
' Process each chunk
|
|
||||||
Dim chunkIndex As Long
|
|
||||||
For chunkIndex = 1 To codeChunks.Count
|
|
||||||
Debug.Print "Processing chunk " & chunkIndex & " for " & ApiQueue(i).ItemName
|
|
||||||
Dim chunk As String
|
|
||||||
chunk = codeChunks(chunkIndex)
|
|
||||||
|
|
||||||
' Debug: Log the chunk being processed
|
|
||||||
Debug.Print "Processing chunk " & chunkIndex & " for " & ApiQueue(i).ItemName & ": " & Left(chunk, 100) & "..."
|
|
||||||
|
|
||||||
' Prepare the request to Ollama
|
|
||||||
Set http = CreateObject("WinHttp.WinHttpRequest.5.1")
|
|
||||||
If http Is Nothing Then
|
|
||||||
Debug.Print "Failed to create WinHttpRequest object for chunk " & chunkIndex & " of " & ApiQueue(i).ItemName
|
|
||||||
txtFile.WriteLine "#### Chunk " & chunkIndex
|
|
||||||
txtFile.WriteLine "*Error: Failed to create WinHttpRequest object.*"
|
|
||||||
GoTo NextChunk
|
|
||||||
End If
|
|
||||||
|
|
||||||
http.Open "POST", "http://localhost:11434/api/generate", False
|
|
||||||
http.SetRequestHeader "Content-Type", "application/json"
|
|
||||||
|
|
||||||
' Build the JSON payload with the chunk
|
|
||||||
requestBody = "{""model"": ""llama3.2:3b"", ""prompt"": ""Generate detailed Markdown documentation for the following VBA code. Include a high-level overview section titled \""What it does\"" that summarizes the overall purpose of the code, followed by detailed documentation of each subroutine or function, including descriptions, parameters, details, and dependencies:\n\n" & Replace(chunk, """", "\""") & """" & ", ""stream"": false}"
|
|
||||||
Debug.Print "Sending request to Ollama for chunk " & chunkIndex & " of " & ApiQueue(i).ItemName
|
|
||||||
http.Send requestBody
|
|
||||||
|
|
||||||
' Get the response
|
|
||||||
If http.Status = 200 Then
|
|
||||||
response = http.ResponseText
|
|
||||||
Debug.Print "Received response from Ollama for chunk " & chunkIndex & " of " & ApiQueue(i).ItemName & ": " & Left(response, 100) & "..."
|
|
||||||
' Parse the response (Ollama returns JSON with a "response" field)
|
|
||||||
Dim json As Object
|
|
||||||
Set json = ParseJson(response)
|
|
||||||
If Not json Is Nothing Then
|
|
||||||
Dim doc As String
|
|
||||||
On Error Resume Next
|
|
||||||
doc = json("response")
|
|
||||||
If Err.Number <> 0 Then
|
|
||||||
doc = "*Error parsing JSON response: " & Err.Description & "*"
|
|
||||||
Debug.Print "Error parsing JSON response for chunk " & chunkIndex & " of " & ApiQueue(i).ItemName & ": " & Err.Description
|
|
||||||
Err.Clear
|
|
||||||
End If
|
|
||||||
On Error GoTo 0
|
|
||||||
|
|
||||||
' Append the documentation for this chunk
|
|
||||||
Debug.Print "Writing documentation for chunk " & chunkIndex & " of " & ApiQueue(i).ItemName & ": " & Left(doc, 100) & "..."
|
|
||||||
txtFile.WriteLine "#### Chunk " & chunkIndex
|
|
||||||
txtFile.WriteLine doc
|
|
||||||
Else
|
|
||||||
Debug.Print "Failed to parse Ollama response for chunk " & chunkIndex & " of " & ApiQueue(i).ItemName
|
|
||||||
txtFile.WriteLine "#### Chunk " & chunkIndex
|
|
||||||
txtFile.WriteLine "*Failed to parse Ollama response*"
|
|
||||||
End If
|
|
||||||
Else
|
|
||||||
Debug.Print "Ollama API call failed for chunk " & chunkIndex & " of " & ApiQueue(i).ItemName & ": Status " & http.Status & " - " & http.StatusText
|
|
||||||
txtFile.WriteLine "#### Chunk " & chunkIndex
|
|
||||||
txtFile.WriteLine "*Error calling Ollama API: " & http.Status & " - " & http.StatusText & "*"
|
|
||||||
End If
|
|
||||||
|
|
||||||
NextChunk:
|
|
||||||
' Clean up
|
|
||||||
Set http = Nothing
|
|
||||||
|
|
||||||
' Add a delay to avoid overwhelming the API (e.g., 1 second)
|
|
||||||
Sleep 1000
|
|
||||||
Next chunkIndex
|
|
||||||
|
|
||||||
txtFile.Close
|
|
||||||
NextRequest:
|
|
||||||
' Clean up
|
|
||||||
Set txtFile = Nothing
|
|
||||||
Next i
|
|
||||||
|
|
||||||
' Update the form to show completion
|
|
||||||
frm.Controls("lblProgress").Caption = "Processing complete (" & QueueSize & " of " & QueueSize & " requests)"
|
|
||||||
frm.Controls("rectProgressBar").Width = PROGRESS_BAR_MAX_WIDTH
|
|
||||||
frm.Controls("lblCurrentTask").Caption = "Finished"
|
|
||||||
DoEvents
|
|
||||||
|
|
||||||
' Close the progress form
|
|
||||||
DoCmd.Close acForm, "frmOllamaProgress"
|
|
||||||
|
|
||||||
SkipProgressForm:
|
|
||||||
Set fso = Nothing
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
```
|
|
||||||
## What it does
|
|
||||||
*No VBA code to document due to export failure*
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Module1
|
# Module1
|
||||||
Analysis generated on: 4/1/2025 5:13:26 PM
|
|
||||||
---
|
---
|
||||||
## VBA Code
|
## VBA Code
|
||||||
```vba
|
```vba
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Module2
|
# Module2
|
||||||
Analysis generated on: 4/1/2025 5:16:51 PM
|
|
||||||
---
|
---
|
||||||
## VBA Code
|
## VBA Code
|
||||||
```vba
|
```vba
|
||||||
|
|
|
@ -1,262 +0,0 @@
|
||||||
# SummaryModule
|
|
||||||
Analysis generated on: 4/1/2025 5:16:54 PM
|
|
||||||
---
|
|
||||||
## VBA Code
|
|
||||||
```vba
|
|
||||||
Attribute VB_Name = "SummaryModule"
|
|
||||||
Option Compare Database
|
|
||||||
Option Explicit
|
|
||||||
|
|
||||||
' Subroutine to generate a summary of the entire database
|
|
||||||
Public Sub GenerateDatabaseSummary()
|
|
||||||
Dim fso As Object
|
|
||||||
Dim overviewFile As Object
|
|
||||||
Dim summaryFile As Object
|
|
||||||
Dim vaultPath As String
|
|
||||||
Dim overviewPath As String
|
|
||||||
Dim summaryPath As String
|
|
||||||
|
|
||||||
On Error GoTo ErrorHandler
|
|
||||||
|
|
||||||
' Set up the FileSystemObject
|
|
||||||
Debug.Print "Creating FileSystemObject"
|
|
||||||
Set fso = CreateObject("Scripting.FileSystemObject")
|
|
||||||
If fso Is Nothing Then
|
|
||||||
Debug.Print "Failed to create FileSystemObject"
|
|
||||||
MsgBox "Failed to create FileSystemObject. Error: " & Err.Description, vbCritical
|
|
||||||
Exit Sub
|
|
||||||
End If
|
|
||||||
Debug.Print "FileSystemObject created successfully"
|
|
||||||
|
|
||||||
' Define paths
|
|
||||||
vaultPath = CurrentProject.Path & "\ObsidianVault"
|
|
||||||
overviewPath = vaultPath & "\Overview.md"
|
|
||||||
summaryPath = vaultPath & "\WhatItDoes.md"
|
|
||||||
|
|
||||||
' Check if the vault folder exists
|
|
||||||
Debug.Print "Checking vault folder: " & vaultPath
|
|
||||||
If Not fso.FolderExists(vaultPath) Then
|
|
||||||
Debug.Print "Vault folder does not exist: " & vaultPath
|
|
||||||
MsgBox "Vault folder does not exist: " & vaultPath & ". Please run the other documentation modules first.", vbCritical
|
|
||||||
Exit Sub
|
|
||||||
End If
|
|
||||||
|
|
||||||
' Create the summary file
|
|
||||||
Debug.Print "Creating summary file: " & summaryPath
|
|
||||||
Set summaryFile = fso.CreateTextFile(summaryPath, True)
|
|
||||||
If summaryFile Is Nothing Then
|
|
||||||
Debug.Print "Failed to create WhatItDoes.md"
|
|
||||||
MsgBox "Failed to create WhatItDoes.md. Error: " & Err.Description, vbCritical
|
|
||||||
Exit Sub
|
|
||||||
End If
|
|
||||||
Debug.Print "Summary file created successfully"
|
|
||||||
|
|
||||||
' Write the summary header
|
|
||||||
summaryFile.WriteLine "# What It Does: Database Summary"
|
|
||||||
summaryFile.WriteLine "Generated on: " & Now
|
|
||||||
summaryFile.WriteLine "---"
|
|
||||||
summaryFile.WriteLine "## Overview"
|
|
||||||
summaryFile.WriteLine "This document provides a high-level summary of the Access database, aggregating information from the documentation of its Queries, Forms, Tables, Modules, and Macros."
|
|
||||||
summaryFile.WriteLine ""
|
|
||||||
|
|
||||||
' Initialize counters
|
|
||||||
Dim queryCount As Long
|
|
||||||
Dim formCount As Long
|
|
||||||
Dim tableCount As Long
|
|
||||||
Dim moduleCount As Long
|
|
||||||
Dim macroCount As Long
|
|
||||||
queryCount = 0
|
|
||||||
formCount = 0
|
|
||||||
tableCount = 0
|
|
||||||
moduleCount = 0
|
|
||||||
macroCount = 0
|
|
||||||
|
|
||||||
' Lists to store component names
|
|
||||||
Dim queriesList As String
|
|
||||||
Dim formsList As String
|
|
||||||
Dim tablesList As String
|
|
||||||
Dim modulesList As String
|
|
||||||
Dim macrosList As String
|
|
||||||
queriesList = ""
|
|
||||||
formsList = ""
|
|
||||||
tablesList = ""
|
|
||||||
modulesList = ""
|
|
||||||
macrosList = ""
|
|
||||||
|
|
||||||
' Check if Overview.md exists
|
|
||||||
If fso.FileExists(overviewPath) Then
|
|
||||||
Debug.Print "Reading Overview.md: " & overviewPath
|
|
||||||
Set overviewFile = fso.OpenTextFile(overviewPath, 1) ' 1 = ForReading
|
|
||||||
Dim overviewText As String
|
|
||||||
overviewText = overviewFile.ReadAll
|
|
||||||
overviewFile.Close
|
|
||||||
Set overviewFile = Nothing
|
|
||||||
|
|
||||||
' Split the overview text into lines
|
|
||||||
Dim lines() As String
|
|
||||||
lines = Split(overviewText, vbCrLf)
|
|
||||||
Dim i As Long
|
|
||||||
Dim currentSection As String
|
|
||||||
currentSection = ""
|
|
||||||
|
|
||||||
For i = LBound(lines) To UBound(lines)
|
|
||||||
Dim line As String
|
|
||||||
line = Trim(lines(i))
|
|
||||||
|
|
||||||
' Identify the current section
|
|
||||||
If InStr(1, line, "## Queries", vbTextCompare) > 0 Then
|
|
||||||
currentSection = "Queries"
|
|
||||||
ElseIf InStr(1, line, "## Forms", vbTextCompare) > 0 Then
|
|
||||||
currentSection = "Forms"
|
|
||||||
ElseIf InStr(1, line, "## Tables", vbTextCompare) > 0 Then
|
|
||||||
currentSection = "Tables"
|
|
||||||
ElseIf InStr(1, line, "## Modules", vbTextCompare) > 0 Then
|
|
||||||
currentSection = "Modules"
|
|
||||||
ElseIf InStr(1, line, "## Macros", vbTextCompare) > 0 Then
|
|
||||||
currentSection = "Macros"
|
|
||||||
ElseIf InStr(1, line, "## Analysis Complete", vbTextCompare) > 0 Then
|
|
||||||
currentSection = ""
|
|
||||||
End If
|
|
||||||
|
|
||||||
' Process the line based on the current section
|
|
||||||
If currentSection <> "" And Left(line, 2) = "- " And Not InStr(1, line, "Error:", vbTextCompare) > 0 Then
|
|
||||||
' Extract the component name from the link
|
|
||||||
Dim componentName As String
|
|
||||||
Dim startPos As Long
|
|
||||||
Dim endPos As Long
|
|
||||||
startPos = InStr(1, line, "[[") + 2
|
|
||||||
endPos = InStr(startPos, line, "]]")
|
|
||||||
If startPos > 2 And endPos > startPos Then
|
|
||||||
componentName = Mid(line, startPos, endPos - startPos)
|
|
||||||
' Remove the section prefix (e.g., "Queries/")
|
|
||||||
Dim slashPos As Long
|
|
||||||
slashPos = InStr(1, componentName, "/")
|
|
||||||
If slashPos > 0 Then
|
|
||||||
componentName = Mid(componentName, slashPos + 1)
|
|
||||||
End If
|
|
||||||
|
|
||||||
' Add to the appropriate list and increment the counter
|
|
||||||
Select Case currentSection
|
|
||||||
Case "Queries"
|
|
||||||
queryCount = queryCount + 1
|
|
||||||
queriesList = queriesList & "- [[" & currentSection & "/" & componentName & "]]" & vbCrLf
|
|
||||||
Case "Forms"
|
|
||||||
formCount = formCount + 1
|
|
||||||
formsList = formsList & "- [[" & currentSection & "/" & componentName & "]]" & vbCrLf
|
|
||||||
Case "Tables"
|
|
||||||
tableCount = tableCount + 1
|
|
||||||
tablesList = tablesList & "- [[" & currentSection & "/" & componentName & "]]" & vbCrLf
|
|
||||||
Case "Modules"
|
|
||||||
moduleCount = moduleCount + 1
|
|
||||||
modulesList = modulesList & "- [[" & currentSection & "/" & componentName & "]]" & vbCrLf
|
|
||||||
Case "Macros"
|
|
||||||
macroCount = macroCount + 1
|
|
||||||
macrosList = macrosList & "- [[" & currentSection & "/" & componentName & "]]" & vbCrLf
|
|
||||||
End Select
|
|
||||||
End If
|
|
||||||
ElseIf currentSection <> "" And InStr(1, line, "*No ", vbTextCompare) > 0 Then
|
|
||||||
' Handle the case where no components are found
|
|
||||||
Select Case currentSection
|
|
||||||
Case "Queries"
|
|
||||||
queryCount = 0
|
|
||||||
queriesList = "- *No queries found*" & vbCrLf
|
|
||||||
Case "Forms"
|
|
||||||
formCount = 0
|
|
||||||
formsList = "- *No forms found*" & vbCrLf
|
|
||||||
Case "Tables"
|
|
||||||
tableCount = 0
|
|
||||||
tablesList = "- *No tables found*" & vbCrLf
|
|
||||||
Case "Modules"
|
|
||||||
moduleCount = 0
|
|
||||||
modulesList = "- *No modules found*" & vbCrLf
|
|
||||||
Case "Macros"
|
|
||||||
macroCount = 0
|
|
||||||
macrosList = "- *No macros found*" & vbCrLf
|
|
||||||
End Select
|
|
||||||
End If
|
|
||||||
Next i
|
|
||||||
Else
|
|
||||||
Debug.Print "Overview.md not found: " & overviewPath
|
|
||||||
summaryFile.WriteLine "## Error"
|
|
||||||
summaryFile.WriteLine "- *Overview.md not found. Please run the other documentation modules first.*"
|
|
||||||
summaryFile.Close
|
|
||||||
Set summaryFile = Nothing
|
|
||||||
Set fso = Nothing
|
|
||||||
MsgBox "Overview.md not found: " & overviewPath & ". Please run the other documentation modules first.", vbCritical
|
|
||||||
Exit Sub
|
|
||||||
End If
|
|
||||||
|
|
||||||
' Write the summary counts
|
|
||||||
summaryFile.WriteLine "## Summary Counts"
|
|
||||||
summaryFile.WriteLine "- **Total Queries**: " & queryCount
|
|
||||||
summaryFile.WriteLine "- **Total Forms**: " & formCount
|
|
||||||
summaryFile.WriteLine "- **Total Tables**: " & tableCount
|
|
||||||
summaryFile.WriteLine "- **Total Modules**: " & moduleCount
|
|
||||||
summaryFile.WriteLine "- **Total Macros**: " & macroCount
|
|
||||||
summaryFile.WriteLine ""
|
|
||||||
|
|
||||||
' Write the detailed lists
|
|
||||||
summaryFile.WriteLine "## Queries (" & queryCount & ")"
|
|
||||||
If queryCount > 0 Then
|
|
||||||
summaryFile.Write queriesList
|
|
||||||
Else
|
|
||||||
summaryFile.WriteLine queriesList
|
|
||||||
End If
|
|
||||||
summaryFile.WriteLine ""
|
|
||||||
|
|
||||||
summaryFile.WriteLine "## Forms (" & formCount & ")"
|
|
||||||
If formCount > 0 Then
|
|
||||||
summaryFile.Write formsList
|
|
||||||
Else
|
|
||||||
summaryFile.WriteLine formsList
|
|
||||||
End If
|
|
||||||
summaryFile.WriteLine ""
|
|
||||||
|
|
||||||
summaryFile.WriteLine "## Tables (" & tableCount & ")"
|
|
||||||
If tableCount > 0 Then
|
|
||||||
summaryFile.Write tablesList
|
|
||||||
Else
|
|
||||||
summaryFile.WriteLine tablesList
|
|
||||||
End If
|
|
||||||
summaryFile.WriteLine ""
|
|
||||||
|
|
||||||
summaryFile.WriteLine "## Modules (" & moduleCount & ")"
|
|
||||||
If moduleCount > 0 Then
|
|
||||||
summaryFile.Write modulesList
|
|
||||||
Else
|
|
||||||
summaryFile.WriteLine modulesList
|
|
||||||
End If
|
|
||||||
summaryFile.WriteLine ""
|
|
||||||
|
|
||||||
summaryFile.WriteLine "## Macros (" & macroCount & ")"
|
|
||||||
If macroCount > 0 Then
|
|
||||||
summaryFile.Write macrosList
|
|
||||||
Else
|
|
||||||
summaryFile.WriteLine macrosList
|
|
||||||
End If
|
|
||||||
summaryFile.WriteLine ""
|
|
||||||
|
|
||||||
' Finalize and clean up
|
|
||||||
Debug.Print "Closing summary file"
|
|
||||||
summaryFile.Close
|
|
||||||
Set summaryFile = Nothing
|
|
||||||
Set fso = Nothing
|
|
||||||
|
|
||||||
MsgBox "Database summary complete. File saved to: " & summaryPath, vbInformation
|
|
||||||
Exit Sub
|
|
||||||
|
|
||||||
ErrorHandler:
|
|
||||||
Debug.Print "Error in GenerateDatabaseSummary: " & Err.Number & ": " & Err.Description & " at " & Now
|
|
||||||
If Not summaryFile Is Nothing Then
|
|
||||||
Debug.Print "Closing summaryFile in error handler"
|
|
||||||
summaryFile.Close
|
|
||||||
Set summaryFile = Nothing
|
|
||||||
End If
|
|
||||||
Set fso = Nothing
|
|
||||||
MsgBox "Error " & Err.Number & ": " & Err.Description, vbCritical
|
|
||||||
Exit Sub
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
```
|
|
||||||
## What it does
|
|
||||||
*No VBA code to document due to export failure*
|
|
|
@ -1,5 +1,4 @@
|
||||||
# processvariables
|
# processvariables
|
||||||
Analysis generated on: 4/1/2025 5:03:02 PM
|
|
||||||
---
|
---
|
||||||
## VBA Code
|
## VBA Code
|
||||||
```vba
|
```vba
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Filtered Parts
|
# Filtered Parts
|
||||||
Analysis generated on: 4/1/2025 4:23:54 PM
|
|
||||||
---
|
---
|
||||||
## Record Count
|
## Record Count
|
||||||
- 13
|
- 13
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# GREGS PARTS
|
# GREGS PARTS
|
||||||
Analysis generated on: 4/1/2025 4:23:54 PM
|
|
||||||
---
|
---
|
||||||
## Record Count
|
## Record Count
|
||||||
- 149
|
- 149
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# GREGS_PARTS
|
# GREGS_PARTS
|
||||||
Analysis generated on: 4/1/2025 4:23:54 PM
|
|
||||||
---
|
---
|
||||||
## Record Count
|
## Record Count
|
||||||
- 149
|
- 149
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# IEMUP1A0_Fake
|
# IEMUP1A0_Fake
|
||||||
Analysis generated on: 4/1/2025 4:23:54 PM
|
|
||||||
---
|
---
|
||||||
## Record Count
|
## Record Count
|
||||||
- 0
|
- 0
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# KM TBL Shreve Park Material Usage
|
# KM TBL Shreve Park Material Usage
|
||||||
Analysis generated on: 4/1/2025 4:23:54 PM
|
|
||||||
---
|
---
|
||||||
## Record Count
|
## Record Count
|
||||||
- 0
|
- 0
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# LINE REGENERATED 20 GA
|
# LINE REGENERATED 20 GA
|
||||||
Analysis generated on: 4/1/2025 4:23:54 PM
|
|
||||||
---
|
---
|
||||||
## Record Count
|
## Record Count
|
||||||
- 271
|
- 271
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# LINE REGENERATED 20 GA1
|
# LINE REGENERATED 20 GA1
|
||||||
Analysis generated on: 4/1/2025 4:23:54 PM
|
|
||||||
---
|
---
|
||||||
## Record Count
|
## Record Count
|
||||||
- 16
|
- 16
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Labor
|
# Labor
|
||||||
Analysis generated on: 4/1/2025 4:23:54 PM
|
|
||||||
---
|
---
|
||||||
## Record Count
|
## Record Count
|
||||||
- 42
|
- 42
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Line 18ga S_S on 2 Sheets
|
# Line 18ga S_S on 2 Sheets
|
||||||
Analysis generated on: 4/1/2025 4:23:54 PM
|
|
||||||
---
|
---
|
||||||
## Record Count
|
## Record Count
|
||||||
- 523
|
- 523
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Line 20ga 8110840 Current 4_4_02
|
# Line 20ga 8110840 Current 4_4_02
|
||||||
Analysis generated on: 4/1/2025 4:23:54 PM
|
|
||||||
---
|
---
|
||||||
## Record Count
|
## Record Count
|
||||||
- 185
|
- 185
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Line 20ga 8110840_8110841 B4 calculating 4_4_02
|
# Line 20ga 8110840_8110841 B4 calculating 4_4_02
|
||||||
Analysis generated on: 4/1/2025 4:23:54 PM
|
|
||||||
---
|
---
|
||||||
## Record Count
|
## Record Count
|
||||||
- 271
|
- 271
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Line 20ga 8110840_8110841 Regenerated 4_4_02
|
# Line 20ga 8110840_8110841 Regenerated 4_4_02
|
||||||
Analysis generated on: 4/1/2025 4:23:54 PM
|
|
||||||
---
|
---
|
||||||
## Record Count
|
## Record Count
|
||||||
- 271
|
- 271
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Line 20ga 8110841 Current 4_4_02
|
# Line 20ga 8110841 Current 4_4_02
|
||||||
Analysis generated on: 4/1/2025 4:23:54 PM
|
|
||||||
---
|
---
|
||||||
## Record Count
|
## Record Count
|
||||||
- 86
|
- 86
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Line 8110435 16ga SS
|
# Line 8110435 16ga SS
|
||||||
Analysis generated on: 4/1/2025 4:23:54 PM
|
|
||||||
---
|
---
|
||||||
## Record Count
|
## Record Count
|
||||||
- 193
|
- 193
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Line 8110731 18ga 304L SS
|
# Line 8110731 18ga 304L SS
|
||||||
Analysis generated on: 4/1/2025 4:23:54 PM
|
|
||||||
---
|
---
|
||||||
## Record Count
|
## Record Count
|
||||||
- 5
|
- 5
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Line 8110731 Best on 1 Sheet
|
# Line 8110731 Best on 1 Sheet
|
||||||
Analysis generated on: 4/1/2025 4:23:54 PM
|
|
||||||
---
|
---
|
||||||
## Record Count
|
## Record Count
|
||||||
- 5
|
- 5
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue