edit C1
This commit is contained in:
194
src/module/Test_Cache.bas
Normal file
194
src/module/Test_Cache.bas
Normal file
@@ -0,0 +1,194 @@
|
||||
' ============================================================
|
||||
' Test Cache Module
|
||||
' Debug: Print cache contents to Test_Cache sheet
|
||||
' ============================================================
|
||||
|
||||
Sub Test_PrintAllCaches()
|
||||
' Refresh all caches first
|
||||
Call RefreshM1Cache
|
||||
Call RefreshM1KukanDCache
|
||||
Call RefreshM2Cache
|
||||
Call RefreshZ1Cache
|
||||
Call RefreshO1Cache
|
||||
|
||||
' Get or create Test_Cache sheet
|
||||
Dim wb As Workbook
|
||||
Set wb = ThisWorkbook
|
||||
|
||||
Dim ws As Worksheet
|
||||
On Error Resume Next
|
||||
Set ws = wb.Worksheets("Test_Cache")
|
||||
On Error GoTo 0
|
||||
|
||||
If ws Is Nothing Then
|
||||
Set ws = wb.Worksheets.Add
|
||||
ws.Name = "Test_Cache"
|
||||
End If
|
||||
|
||||
ws.Cells.Clear
|
||||
|
||||
Dim row As Long
|
||||
row = 1
|
||||
|
||||
' Print M1 Cache
|
||||
ws.Cells(row, 1).Value = "=== M1 Cache ==="
|
||||
row = row + 1
|
||||
Call PrintM1CacheToSheet(ws, row)
|
||||
|
||||
' Print M1_KukanD Cache
|
||||
row = row + 1
|
||||
ws.Cells(row, 1).Value = "=== M1_KukanD Cache ==="
|
||||
row = row + 1
|
||||
Call PrintM1KukanDCacheToSheet(ws, row)
|
||||
|
||||
' Print M2 Cache
|
||||
row = row + 1
|
||||
ws.Cells(row, 1).Value = "=== M2 Cache ==="
|
||||
row = row + 1
|
||||
Call PrintM2CacheToSheet(ws, row)
|
||||
|
||||
' Print Z1 Cache
|
||||
row = row + 1
|
||||
ws.Cells(row, 1).Value = "=== Z1 Cache ==="
|
||||
row = row + 1
|
||||
Call PrintZ1CacheToSheet(ws, row)
|
||||
|
||||
' Print O1 Cache
|
||||
row = row + 1
|
||||
ws.Cells(row, 1).Value = "=== O1 Cache ==="
|
||||
row = row + 1
|
||||
Call PrintO1CacheToSheet(ws, row)
|
||||
|
||||
ws.Columns.AutoFit
|
||||
End Sub
|
||||
|
||||
Private Sub PrintM1CacheToSheet(ws As Worksheet, ByRef row As Long)
|
||||
If m1Cache Is Nothing Then
|
||||
ws.Cells(row, 1).Value = "m1Cache is Nothing"
|
||||
row = row + 1
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
ws.Cells(row, 1).Value = "Count: " & m1Cache.Count
|
||||
row = row + 1
|
||||
|
||||
Dim key As Variant
|
||||
For Each key In m1Cache.Keys
|
||||
Dim vals As Variant
|
||||
vals = m1Cache(key)
|
||||
ws.Cells(row, 1).Value = key
|
||||
ws.Cells(row, 2).Value = vals(1) & ": " & vals(2)
|
||||
ws.Cells(row, 3).Value = vals(3)
|
||||
ws.Cells(row, 4).Value = vals(4)
|
||||
ws.Cells(row, 5).Value = vals(5)
|
||||
row = row + 1
|
||||
Next key
|
||||
End Sub
|
||||
|
||||
Private Sub PrintM1KukanDCacheToSheet(ws As Worksheet, ByRef row As Long)
|
||||
If m1KukanDCache Is Nothing Then
|
||||
ws.Cells(row, 1).Value = "m1KukanDCache is Nothing"
|
||||
row = row + 1
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
ws.Cells(row, 1).Value = "Count: " & m1KukanDCache.Count
|
||||
row = row + 1
|
||||
|
||||
Dim dKey As Variant
|
||||
For Each dKey In m1KukanDCache.Keys
|
||||
ws.Cells(row, 1).Value = "D: " & dKey
|
||||
row = row + 1
|
||||
|
||||
Dim innerDict As Object
|
||||
Set innerDict = m1KukanDCache(dKey)
|
||||
Dim fKey As Variant
|
||||
For Each fKey In innerDict.Keys
|
||||
ws.Cells(row, 2).Value = "F: " & fKey
|
||||
row = row + 1
|
||||
|
||||
Dim arr As Object
|
||||
Set arr = innerDict(fKey)
|
||||
Dim gKey As Variant
|
||||
For Each gKey In arr.Keys
|
||||
ws.Cells(row, 3).Value = "G: " & gKey
|
||||
row = row + 1
|
||||
Next gKey
|
||||
Next fKey
|
||||
Next dKey
|
||||
End Sub
|
||||
|
||||
Private Sub PrintM2CacheToSheet(ws As Worksheet, ByRef row As Long)
|
||||
If m2Cache Is Nothing Then
|
||||
ws.Cells(row, 1).Value = "m2Cache is Nothing"
|
||||
row = row + 1
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
ws.Cells(row, 1).Value = "Count: " & m2Cache.Count
|
||||
row = row + 1
|
||||
|
||||
Dim kukanKey As Variant
|
||||
For Each kukanKey In m2Cache.Keys
|
||||
ws.Cells(row, 1).Value = "KukanCode: " & kukanKey
|
||||
row = row + 1
|
||||
|
||||
Dim innerDict As Object
|
||||
Set innerDict = m2Cache(kukanKey)
|
||||
Dim kanshuKey As Variant
|
||||
For Each kanshuKey In innerDict.Keys
|
||||
ws.Cells(row, 2).Value = "Kanshu: " & kanshuKey
|
||||
row = row + 1
|
||||
|
||||
Dim innermostDict As Object
|
||||
Set innermostDict = innerDict(kanshuKey)
|
||||
Dim codeKey As Variant
|
||||
For Each codeKey In innermostDict.Keys
|
||||
ws.Cells(row, 3).Value = "Code: " & codeKey
|
||||
ws.Cells(row, 4).Value = innermostDict(codeKey)
|
||||
row = row + 1
|
||||
Next codeKey
|
||||
Next kanshuKey
|
||||
Next kukanKey
|
||||
End Sub
|
||||
|
||||
Private Sub PrintZ1CacheToSheet(ws As Worksheet, ByRef row As Long)
|
||||
If z1Cache Is Nothing Then
|
||||
ws.Cells(row, 1).Value = "z1Cache is Nothing"
|
||||
row = row + 1
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
ws.Cells(row, 1).Value = "Count: " & z1Cache.Count
|
||||
row = row + 1
|
||||
|
||||
Dim key As Variant
|
||||
For Each key In z1Cache.Keys
|
||||
Dim vals As Variant
|
||||
vals = z1Cache(key)
|
||||
ws.Cells(row, 1).Value = key
|
||||
ws.Cells(row, 2).Value = vals(0)
|
||||
row = row + 1
|
||||
Next key
|
||||
End Sub
|
||||
|
||||
Private Sub PrintO1CacheToSheet(ws As Worksheet, ByRef row As Long)
|
||||
If o1Cache Is Nothing Then
|
||||
ws.Cells(row, 1).Value = "o1Cache is Nothing"
|
||||
row = row + 1
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
ws.Cells(row, 1).Value = "Count: " & o1Cache.Count
|
||||
row = row + 1
|
||||
|
||||
Dim key As Variant
|
||||
For Each key In o1Cache.Keys
|
||||
Dim vals As Variant
|
||||
vals = o1Cache(key)
|
||||
ws.Cells(row, 1).Value = key
|
||||
ws.Cells(row, 2).Value = vals(0)
|
||||
ws.Cells(row, 3).Value = vals(1)
|
||||
row = row + 1
|
||||
Next key
|
||||
End Sub
|
||||
Reference in New Issue
Block a user