Kenichiro NOGI
|
97f371db3f
|
debug: D3セルの状態メッセージをイミディエイトウィンドウにも出力
処理開始/完了/失敗のD3表示内容を[D3]プレフィックス付きでDebug.Printし、フリーズ調査時にログだけで状態を追えるようにした。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-18 19:01:48 +09:00 |
|
Kenichiro NOGI
|
49ef4c5358
|
fix: テーブルResizeでヘッダのみ(1行)への一時縮小がExcelにエラーとして拒否される問題を修正
前回のDataBodyRange Nothing対策で「一旦ヘッダ行のみにリサイズ」する方式にしたところ、
「テーブルには1行以上のデータが必要」という理由でExcel側にResize自体を拒否されるケースがあった。
現在の行数・目的の行数のいずれとも確実に異なる一時サイズ(rows.count+現在行数+1等)を経由する方式に変更し、
常に1行以上のデータ行を含んだ状態でリサイズすることで回避。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-18 19:01:05 +09:00 |
|
Kenichiro NOGI
|
e879b0f584
|
feat: runExportFlowにもGet方式と同じFilter/Sorter条件を適用
exportCSVDataのOptional viewObj引数にBuildViewFromSheet()の結果を渡すことで、
FilterTable/SorterTableの絞り込み・並び替え条件がExport方式にも反映されるようにした。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-18 18:57:06 +09:00 |
|
Kenichiro NOGI
|
a60244b7b0
|
fix: テーブルResize時にDataBodyRangeがNothingのままになる問題を修正
Excelのテーブル(ListObject)は、直前と同一サイズへのResizeを行うとDataBodyRangeの内部状態が更新されないことがあり、
データ行数が変わらない場合(前回0件クリア後に1件だけ取得した場合など)にDataBodyRange.Value代入が効かず、
テーブルにデータが書き込まれない不具合があった。
exportCSVDataToSheet/getRecordsDataToSheet/exportCSVDataToExistingTableの3箇所で、
一旦ヘッダ行のみにリサイズしてから目的のサイズにリサイズし直すことで回避。
調査用の詳細デバッグログ([DEBUG] records.count等)も合わせて追加。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-18 18:56:37 +09:00 |
|
Kenichiro NOGI
|
67b9f8c0f8
|
fix: Export/Get方式とも0件取得時にテーブルのデータ部分をクリアするよう修正
従来は0件時にMsgBoxを出して即終了し、テーブルの前回データがそのまま残ってしまっていた。
runGetFlowはrecords.count=0でもgetRecordsDataToSheetを呼ぶよう変更し、getRecordsDataToSheet/exportCSVDataToSheetは0件時にMsgBoxを出さずヘッダを維持したままDataBodyRangeだけクリアするよう修正。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-18 18:44:42 +09:00 |
|
Kenichiro NOGI
|
06340cdb7b
|
debug: レスポンスステータス・本文全文を出力するデバッグコードを追加
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-18 18:39:03 +09:00 |
|
Kenichiro NOGI
|
7745fc6858
|
debug: リクエストボディ出力ログを再度復活
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-18 18:38:05 +09:00 |
|
Kenichiro NOGI
|
413de865f0
|
fix: 入力チェックの名前付き範囲を「物件状況」から正しい「選択状況」に修正
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-18 18:34:10 +09:00 |
|
Kenichiro NOGI
|
51e1e166d4
|
chore: リクエストボディのデバッグログを削除
Filter/Sorter動作確認が完了したため撤去。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-18 18:31:17 +09:00 |
|
Kenichiro NOGI
|
b9150c0461
|
fix: 選択営業所/物件状況チェックの型不一致エラー(実行時エラー13)を解消
Range(...).Valueが配列やエラー値を返すケースでTrimが型不一致エラーになっていた。
Cells(1,1)で単一セル値を取得し、IsErrorチェック+CStrで文字列化してから判定するよう修正。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-18 18:29:48 +09:00 |
|
Kenichiro NOGI
|
bc03b2d47b
|
feat: run()実行前に「選択営業所」「物件状況」の入力チェックを追加
名前付き範囲が空欄の場合はアラート表示して処理中断する。runSalesOfficeExportには適用しない。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-18 18:28:09 +09:00 |
|
Kenichiro NOGI
|
d7a8457114
|
fix: exportCSVDataToSheetが既存テーブルでもヘッダ行を毎回CSVの最新列構成で更新するよう修正
従来は新規テーブル作成時のみヘッダを設定し、既存テーブルがある場合はヘッダを書き換えていなかったため、
Pleasanter側で列の追加・削除・並び替えが起きるとヘッダラベルとデータ列がズレる問題があった。
getRecordsDataToSheet(Get方式)と同様、テーブルの有無に関わらず毎回CSVの1行目でヘッダを上書きするよう変更。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-18 18:12:31 +09:00 |
|
Kenichiro NOGI
|
13cad20ead
|
fix: exportCSVDataToExistingTableをシート名指定からテーブル名検索(FindListObjectByName)に変更
「営業所」テーブルがどのシートにあってもブック全体から見つけられるよう、既存のFindListObjectByNameを再利用する方式に統一。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-14 10:02:27 +09:00 |
|
Kenichiro NOGI
|
6dc6ede9a9
|
fix: 営業所マスタExportを既存テーブルへの上書き専用に変更、新規シート・テーブル作成を廃止
exportCSVDataToSheetはtargetSheetと同名のテーブルを探す仕様のため、実際のテーブル名が一致せず新規シート・テーブルが作られてしまっていた。
exportCSVDataToExistingTableを新規追加し、テーブル名を問わず「営業所」シート上の既存テーブル(1つ目)に直接上書きする方式に変更。シート・テーブルが存在しない場合は新規作成せずエラー表示のみ。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-14 10:01:00 +09:00 |
|
Kenichiro NOGI
|
e455fe0a21
|
feat: runSalesOfficeExportにNumA昇順のソート条件を固定で追加
exportCSVDataにOptionalなviewObj引数を追加し、営業所Export専用にColumnSorterHash(NumA:asc)を渡すよう変更。
既存のrunExportFlowはviewObj省略のためViewなしのまま、既存動作に影響なし。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-14 09:58:00 +09:00 |
|
Kenichiro NOGI
|
70d9eb974b
|
feat: 営業所マスタ(96243)Export専用の独立Sub runSalesOfficeExportを追加
既存run()とは別の独立エントリポイント。テーブルID 96243をExport方式(ExportId=1)で全件取得し「営業所」シートの既存テーブルを更新する。
Filter/Sorterは使わない。exportCSVDataToSheetが既存テーブルのヘッダを書き換えずデータ部分のみ更新する仕様をそのまま利用し、CSVのヘッダ行は自動的に捨てられる。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-14 09:56:02 +09:00 |
|
Kenichiro NOGI
|
631e66242f
|
fix: FilterTable/SorterTableを基本情報シート限定でなく全シートから名前で検索するよう修正
defaultSh(基本情報シート)固定で探していたため、ユーザーが別シートにテーブルを配置した際にBuildViewFromSheetが見つけられずViewが常に空になっていた。
FindListObjectByNameを追加し、ブック内の全シートを走査してテーブル名で検索するよう変更。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-14 09:48:41 +09:00 |
|
Kenichiro NOGI
|
d83d74afdc
|
debug: リクエストボディ出力ログを復活
検証がまだ終わっていない段階で削除してしまったため復活。Filter/Sorter動作確認が完了するまで残す。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-14 09:44:38 +09:00 |
|
Kenichiro NOGI
|
1eb1a7dc87
|
fix: BuildViewFromSheetをセル座標指定からテーブル名(FilterTable/SorterTable)参照に変更
Filter表・Sorter表の配置をユーザーが移動したところ、固定セル座標(F3/J3)読み取りのため条件が反映されずViewが空になっていた。
ListObjects("FilterTable")/("SorterTable")をテーブル名で取得し、1列目=項目名・2列目=値/昇降順という列位置ベースで読むよう変更。テーブルをシート上のどこに配置しても動作する。
デバッグ用に追加していたリクエストボディ出力ログも削除。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-14 09:43:27 +09:00 |
|
Kenichiro NOGI
|
3bfdf3b73e
|
fix: Filter値をJSON配列文字列(["値"])として渡すよう修正
Pleasanter ColumnFilterHashは選択肢項目の値をJSON配列文字列で受け取る仕様のため、単純な値のままでは条件が無視され全件返っていた。単一値を1要素配列にラップして解消。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-13 18:33:10 +09:00 |
|
Kenichiro NOGI
|
460b540997
|
feat: Filter/Sorter条件をGet方式のみに適用、Export方式からは除外
exportCSVDataのBuildViewFromSheet呼び出しを削除。Export方式は常に全件取得、Get方式のみ基本情報シートのFilter表・Sorter表を反映する。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-13 18:09:07 +09:00 |
|
Kenichiro NOGI
|
a423b5fd6f
|
docs: Process4のValidateInputsが無くてもServerScript+条件タブで入力漏れが構造的に防げることを確認
CheckC(日程情報入力済)がServerScriptにより3項目全入力時のみtrueになり、
Process4の条件タブがCheckC=true限定のため、Process5実行時点で入力漏れは起きない。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-12 17:57:02 +09:00 |
|
Kenichiro NOGI
|
99d4bb1b34
|
fix: Num047列がProcess4「検査機関確定」用に既存予約されていたのに気づかず衝突、Num048へ分離
Process19用カウンタ追加時に「空き番号」と誤認して既存予約と衝突していた。
Num047を本来の用途(検査機関確定)へ戻し、診断書再提出依頼はNum048を
新規追加して分離。両サイトで実機確認済み。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-12 17:53:58 +09:00 |
|
Kenichiro NOGI
|
44a08c2753
|
fix: 508971の既存12件でClassZ・ClassD未入力を発見、504412から補完してファイル名歯抜けを解消
実施年度エリア・フリガナが空のまま運用すると、診断書PDFファイル名や
通知文が歯抜けになる不具合を事前に発見。社員マスタから姓・名カナを
照合して全件補完した。必須化はユーザー側で後日設定する方針。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-12 17:48:26 +09:00 |
|
Kenichiro NOGI
|
326307ad0e
|
feat: Process19「診断書再提出依頼」にNum047カウンタ列を追加、集計テーブルへも反映
既存17Processと同じパターンでカウンタ列・DataChanges・Summaries設定を
508971/513156両サイトへ追加し、実機でフラグ立ちと集計テーブルへの
反映を確認した。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-12 17:37:42 +09:00 |
|
Kenichiro NOGI
|
70492700e7
|
docs: HC-DOC-TIMEOUT重複バグ修正の再検証完了を記録
修正反映後の実行履歴でtargetsが正しく1件になることを確認、実機でも
1通のみ届くことを確認した。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-12 17:32:21 +09:00 |
|
Kenichiro NOGI
|
f9e85a29f5
|
fix: HC-DOC-TIMEOUT実機テストでn8n Data Tableノードの重複返却バグを発見・修正
returnAll:trueで取得した行が45件重複して返る不具合を確認。複数resultIdを
forループで個別処理する設計だったため実害リスクがあり、resultIdでの
ユニーク化を追加した。他ワークフローは最初の1件のみ参照または集約する
設計のため影響なしと確認。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-12 17:13:52 +09:00 |
|
Kenichiro NOGI
|
5e7bcb64be
|
fix: HC-REMINDER実機テストでDate004列欠如と⑥文言バグを発見・修正、②③⑥⑦全パターン確認完了
⑦日程未確定の催促が実装当初から一度も動作していなかった根本原因(Date004列が
508971に未定義)を特定し、列追加+EditorColumnHash配置で解消。⑥再検査催促の
文言も⑦と同じ導線修正漏れがあったため合わせて修正。n8nコンテナのタイムゾーン
(Asia/Tokyo)も確認し、Schedule Triggerの発火時刻に問題がないことを確認した。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-12 16:20:23 +09:00 |
|
Kenichiro NOGI
|
21b1593344
|
docs: Process→HC-WP通知の自動連携を実機確認、$btn未定義バグとCORSブロックの修正を記録
Pleasanter画面のボタンクリックのみでLINEWORKS通知が届くことを確認。
これまで挙げていた最優先の未実装課題(手動Webhook操作が必要な状態)が解消した。
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
2026-09-12 15:41:20 +09:00 |
|
Kenichiro NOGI
|
88351e4165
|
feat: Process実行→HC-WP通知の連携をクライアントスクリプトから自動化、実行ログのコメント記録を追加
これまで担当者がPleasanter画面でProcess実行した後、別途n8n Webhookを
手動で叩く必要があった。プロセス実行スクリプトのOnClickへWebhook自動POSTを
追加し、通知失敗時はプロセス実行自体を中断するようにした。あわせて
全Process実行時にコメント欄へ実行者・プロセス名を自動記録する。
|
2026-09-12 15:24:19 +09:00 |
|
Kenichiro NOGI
|
bbf43f6097
|
docs: 診断書再提出依頼プロセス(4-7)・Status=410再提出対応・ファイル名規則をマニュアルへ反映
md本体と撮影済みスクリーンショットを使ったPPTX版(30枚)の両方を更新。
|
2026-09-12 14:58:47 +09:00 |
|
Kenichiro NOGI
|
4575f14d22
|
feat: 診断書PDFファイル名規則変更・JST対応、Status=410でのPDF再提出対応、担当者からの再提出依頼プロセス(Id19)を追加
撮影完了後にファイル名の可読性・再提出フローの欠如が判明し追加実装。
ファイル名を内部ID直書きから表示名ベースの命名規則に変更しJSTタイムスタンプ化、
診断書保存後もBot対話から再提出できるようメニュー条件を拡張、
担当者が能動的に再提出を促すHC-WP通知(Process19)を新設。いずれも実機確認済み。
|
2026-09-12 14:51:23 +09:00 |
|
Kenichiro NOGI
|
3bccc4d1b9
|
docs: 撮影テスト完了・追加バグ4件(過去日付バリデーション欠如/文字化け/テストデータ不整合/CONTACT_MESSAGE巻き戻り)の発見・修正を記録
マニュアル用スクリーンショット撮影を全ケース実施完了(計50枚)。並行して発見した
過去日付が確定できてしまう不具合の修正、文字化け修正、担当者連絡文言の巻き戻り
修正をHC-WAへ反映し、いずれも実機再検証済み。
|
2026-09-12 14:08:53 +09:00 |
|
Kenichiro NOGI
|
7af3f5ff84
|
fix: 待機状態中の固定メニュー「健康診断について」再選択で日付パースに誤って落ちるバグを修正
schedule_confirm等の待機状態中に固定メニューを再タップすると、
承諾/自分手配/受診日時の変更いずれにも一致せず自由入力の日付パースに
フォールバックしてしまい無関係なエラーが返っていた。担当者に連絡・
キャンセルワードと同様、待機状態を横断してメニュー表示へ戻す処理を追加。
|
2026-09-12 09:09:19 +09:00 |
|
Kenichiro NOGI
|
ccd1fa3947
|
docs: マニュアル画像挿入用のスクリーンショット撮影テスト計画を追加
|
2026-09-11 18:55:12 +09:00 |
|
Kenichiro NOGI
|
57104c9e67
|
docs: 健康診断Bot運用マニュアル(管理担当者向け)を新仕様ベースで再作成
|
2026-09-11 18:53:45 +09:00 |
|
Kenichiro NOGI
|
74f6215c2e
|
docs: DescriptionB列のLabelText変更(健康診断内容)を記録
|
2026-09-11 18:44:59 +09:00 |
|
Kenichiro NOGI
|
b09c32a6c9
|
docs: 未対応事項3件(テストPDF削除/文言修正2件)の対応完了を記録
|
2026-09-11 18:39:32 +09:00 |
|
Kenichiro NOGI
|
e111d1405d
|
docs: パターンC/HC-WP実機テスト結果とDescriptionB構造変更を記録
|
2026-09-11 18:31:48 +09:00 |
|
Kenichiro NOGI
|
5dc5056ad8
|
docs: 「担当者に連絡」文言修正(総務・契約関連窓口URL)を記録
|
2026-09-11 18:08:48 +09:00 |
|
Kenichiro NOGI
|
44ee8781a9
|
docs: Botトークフロー再設計の実装完了を記録
|
2026-09-11 18:02:17 +09:00 |
|
Kenichiro NOGI
|
db25941158
|
feat: 508971へ自分手配Process用の反映スクリプトを追加
|
2026-09-11 16:08:40 +09:00 |
|
Kenichiro NOGI
|
3e51710d9f
|
feat: Get方式のISO8601日付文字列をyyyy/mm/dd表記に正規化、未設定日付(1899-12-30)は空欄化
NormalizeGetValueを追加し、getRecordsDataToSheetの値格納時に適用。
オブジェクト値の空欄化処理もこの関数に統合。
|
2026-09-11 14:30:01 +09:00 |
|
Kenichiro NOGI
|
cb01653d77
|
feat: runExportFlow/runGetFlowにAPI通信・書込処理の区間計測(Timer)を追加
Export方式の処理時間がGet方式より長い件を調査するため計測を追加。
結果、ボトルネックはAPI通信側(サーバー処理)でパース・書込処理ではないと判明したため、今後の検証用に計測コードは残す。
|
2026-09-11 14:26:56 +09:00 |
|
Kenichiro NOGI
|
81c9f67331
|
feat: D7切替を廃止しExport/Get両方を毎回実行、出力先をtableId+E/Gシートに分離
D7による方式切替をやめ、run()実行のたびにExport方式・Get方式を両方実行するよう変更。
Export結果は tableId&"E" シート、Get結果は tableId&"G" シートへ別々に保存。
両シートが分かれたため、Get→Export切替時のヘッダ残留対策(既存テーブル削除)は不要になり削除。
処理時間はD4〜D6に両方式合計で記録。
|
2026-09-11 14:20:30 +09:00 |
|
Kenichiro NOGI
|
2192c9718f
|
fix: Sorter表をH:I列からJ:K列に移動しFilter表との隣接によるテーブル自動結合を回避
F2:G2(Filter表)とH2:I2(Sorter表)が隣接していたため、ListObjects.Add実行時にExcelが1つの連続テーブルとして扱い「テーブルは他のテーブルと重ねることはできません」エラーが発生。間に1列(I列)空くよう配置変更。
|
2026-09-11 14:04:20 +09:00 |
|
Kenichiro NOGI
|
d4a6b5c12a
|
fix: getRecordsDataToSheetのrec変数をDictionary型に変更しByRef型不一致を解消
FlattenRecord(record As Dictionary)へVariant型変数をByRef渡ししていたためVBEでコンパイルエラー発生。呼び出し側の変数型をDictionaryに合わせて修正。
|
2026-09-11 14:01:42 +09:00 |
|
Kenichiro NOGI
|
243ecb1b4b
|
fix: run()のエラーハンドリング・失敗検知とGet→Export切替時のヘッダ残留・配列値クラッシュを修正
最終レビューで指摘されたImportant4件に対応:
- run()にエラーハンドラを追加し、失敗時もCalculation/ScreenUpdatingを確実に復元
- runExportFlow/runGetFlowをBoolean化し、データ取得失敗をD3に反映
- Get方式実行後のExport方式実行でヘッダが残留する問題を、既存テーブル削除で解消
- getRecordsDataToSheetでオブジェクト値(JSON配列等)による実行時エラーを回避
|
2026-09-11 13:50:06 +09:00 |
|
Kenichiro NOGI
|
fabee98ea1
|
feat: Filter表・Sorter表を自動作成するSetupFilterSorterTablesを追加
|
2026-09-11 13:37:17 +09:00 |
|
Kenichiro NOGI
|
2454478c65
|
feat: run()をExport/Get分岐フロー化し処理時間計測(D4-D6)を追加
|
2026-09-11 13:34:35 +09:00 |
|