From df57cb713d705c9fa8b3b11db014eba89c630a90 Mon Sep 17 00:00:00 2001
From: xyc <jc_xiong@hotmail.com>
Date: 星期三, 14 十月 2026 15:00:39 +0800
Subject: [PATCH] docs(交接): 记录Excel COM打不开部分生成件改用WPS KET.Application的坑与绕法

---
 HANDOFF.md |   44 ++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 44 insertions(+), 0 deletions(-)

diff --git a/HANDOFF.md b/HANDOFF.md
index 0de4f3c..2a4a1fc 100644
--- a/HANDOFF.md
+++ b/HANDOFF.md
@@ -4,6 +4,50 @@
 > **姣忓ぉ缁撴潫鏃�**锛氭妸褰撳ぉ杩涘睍銆佽俯杩囩殑鍧戙�佹柊闇�姹傘�佹湭瀹屾垚浜嬮」鏇存柊鍒版湰鏂囦欢锛岀劧鍚庡彲浠ユ斁蹇冨紑鏂板璇濄��
 > **鍗忎綔绾﹀畾锛�2026-08-31锛�**锛氳銆屾彁浜ゃ��= 鏈湴 commit + 鎺ㄩ�佸埌杩滅 git锛坥rigin main锛孏itblit锛夛紝涓嶅啀鍙仛鏈湴 commit銆�
 
+### 10-14锛�3锛夛細Excel COM 鎵撲笉寮�閮ㄥ垎鐢熸垚浠� 鈫� 鏀圭敤 WPS KET.Application锛堝潙涓庣粫娉曪級
+
+- **鐜拌薄**锛氱敤 `New-Object -ComObject Excel.Application` 鑷姩鏍稿鐢熸垚浠舵椂锛宍Workbooks.Open` 鎶ャ�屼笉鑳藉彇寰楃被 Workbooks 鐨� Open 灞炴�с�嶃��**鍚屼竴娆¤剼鏈噷**棰勬祴浠躲�佹瘝鐗� `2026骞�9鏈堥亾璺繍杈撻噺姹囨�昏〃.xlsx`銆乣鐢熸垚_閬撹矾杩愯緭閲忔眹鎬昏〃_2026-07_楠岃瘉.xlsx` 閮芥墦寰楀紑锛涙墦涓嶅紑鐨勬槸 `鐢熸垚_閬撹矾杩愯緭閲忔眹鎬昏〃_2026-09 (12).xlsx` 涓� `杈撳嚭\鐢熸垚_閬撹矾杩愯緭閲忔眹鎬昏〃_2026-08_鍥涢〉鏁版嵁椹卞姩_2026-09-13.xlsx` 鈫� **鏄枃浠剁骇鐨勶紝涓嶆槸鐜绾�**銆�
+- **宸叉帓闄わ紙鍧囧疄娴嬶紝涓嶆槸鍘熷洜锛�**锛氣憼 鏂囦欢琚� WPS/寰俊鍗犵敤鈥斺�旀寜瀛楄妭澶嶅埗鍒版湰鍦帮紙SHA256 涓�鑷达級鍚庡湪鐙珛 Excel 瀹炰緥閲�**浠嶇劧鎵撲笉寮�**锛涒憽 缃戠粶鏉ユ簮鏍囪鈥斺�斿壇鏈病鏈変换浣� Zone.Identifier 闄勫姞娴侊紱鈶� `calcPr fullCalcOnLoad="true"`鈥斺�旀妸瀹冨幓鎺夊悗浠嶅け璐ワ紱鈶� OPC 閮ㄤ欢缂哄け鈥斺�旀墦涓嶅紑鐨勬枃浠朵笌鑳芥墦寮�鐨勬枃浠�**閮ㄤ欢鍒楄〃瀹屽叏涓�鑷�**銆傛牴鍥犳湭瀹氫綅锛屼笉瑕佸啀鐩茬洰浜屽垎銆�
+- **鍙敤缁曟硶**锛氣憼 **WPS 鐨� COM 缁勪欢 `KET.Application`**锛堟敞鎰� `ET.Application` 鏈敞鍐岋紝鎶� 0x80040154锛夎兘鎵撳紑杩欎簺鏂囦欢锛宍WorksheetFunction.Sum` / `UsedRange` / `Count` 鍧囨甯糕�斺�旀湰杞疄娴嬭鍒扮敓鎴愪欢 594 涓暟鍊兼牸銆丼UM=`658615.2874963345`锛涒憽 `openpyxl(data_only=True)` 璇荤紦瀛樺�煎鎵�鏈夋枃浠堕兘鍙敤锛涒憿 闇�瑕佸湪 Python 閲屽鐜� Excel 鐘舵�佹爮姹傚拰鏃讹紝鎸�**琛屽簭**鐢� double 绱姞鈥斺�斿湪 Excel 鑳芥墦寮�鐨勯偅浠戒笂瀹炴祴涓� COM SUM **瀹屽叏涓�鑷�**锛坄658615.287496335`锛夈��
+- **椤哄甫鐨勬樉绀哄潙**锛欵xcel 鏄剧ず鏈綅鏄�"鍥涜垗浜斿叆"锛孭ython/.NET 鐨� `F8` 鏄�"閾惰瀹惰垗鍏�"锛屽悓涓�涓暟鍙兘鏄剧ず宸渶鍚庝竴浣嶃�傛湰杞細棰勬祴浠� SUM=`658615.287496335` 鈫� 鏄剧ず `鈥�49634`锛涚敓鎴愪欢 SUM=`658615.2874963345` 鈫� 鏄剧ず `鈥�49633`锛�**搴曞眰鍙樊 4.66e-10**锛屽嵈琚樉绀烘垚"宸� 1e-8"銆�
+- **杩涚▼鍗敓**锛歚Excel.Application` 浼氱湡鐨勬媺璧� `EXCEL.EXE`銆傛柊寤哄墠璁板綍 EXCEL/ET 鐨� PID锛岀敤瀹屽厛 `Quit()` 鍐� `ReleaseComObject`锛屽彧娓呯悊鑷繁鎷夎捣鐨� PID锛�**缁濅笉瑕佸"鎸備笂鍘�/澶嶇敤"鐨勫疄渚嬭皟 `Quit()`**鈥斺�擡xcel/WPS 閮戒細娉ㄥ唽鍒� ROT锛宍Quit` 鍙兘鎶婄敤鎴锋寮�鐫�鐨勭獥鍙e叧鎺夈��
+- **蹇煡鏂囦欢鏄惁琚崰鐢�**锛歚[System.IO.File]::Open($p, [System.IO.FileMode]::Open, [System.IO.FileAccess]::ReadWrite, [System.IO.FileShare]::None)` 鎶� Access denied 鍗宠鍗犵敤锛涗絾琚崰鐢ㄤ笉鏄湰鍧戠殑鍘熷洜锛堝壇鏈悓鏍锋墦涓嶅紑锛夈��
+- **宸叉寜 AGENTS 搂0 鍚屾鍒伴《灞�** `C:\Users\jcxiong\.codex\AGENTS.md` 绗� 11 鑺傦紙璺ㄩ」鐩�氱敤锛夈��
+- **鏁版嵁杈圭晫**锛氭湰杞彧璇伙紱鏈慨鏀�/鏈繚瀛樹换浣曞師濮嬩笟鍔℃枃浠躲�俙_tmp\_cmp_1014\` 涓嬬暀浜嗗壇鏈� `gen12_copy.xlsx` 涓庡幓鎺� `fullCalcOnLoad` 鐨勫鐓т欢 `gen12_nocalc.xlsx`锛堜复鏃朵骇鐗╋紝鎸夌害瀹氫笉鍒犮�佷笉鍏ュ簱锛夈��
+
+### 10-14锛�2锛夛細閲嶅惎鍚庣鍔犺浇鍚堝苟鍚庢柊浠g爜骞舵牳楠岀敓鏁堛�愭棤浠g爜鏀瑰姩銆�
+
+- **鍋氫簡浠�涔�**锛氭寜 10-14锛�1锛夌殑鎺ユ墜鎻愮ず锛屽彧鍋滃悗绔摼锛坄cmd 27476` 鈫� `maven java 3948` 鈫� `app java 28136`锛夛紝鍓嶇 8080 涓嶅姩锛涘啀鎵ц `start-dev.ps1`锛堣剼鏈娴嬪埌 8080 宸茬洃鍚� 鈫� 璺宠繃鍓嶇锛屽彧鎷夎捣鍚庣锛夈�傛柊鍚庣杩涚▼ **PID 21640**锛�08:35:08 鍚姩銆�
+- **鏍搁獙鐢熸晥**锛歚target/classes` 浜� 08:34:45 閲嶆柊缂栬瘧锛宍ReportExportService`銆乣SummaryLayoutExpander`銆乣SummaryMissingDataCheck`銆乣SummaryWorkbookFiller`銆乣FreightReadinessCheck` 鍧囦负鏈缂栬瘧浜х墿锛涘瓧鑺傜爜鍚柊鏄犲皠 `/summaryWorkbook/missing`銆乣/summaryWorkbook/freightCheck` 涓庡弬鏁� `titlesOnly`锛沗backend.log` 涓ゆ潯灏辩华鏍囧織榻愬叏锛坄Tomcat started on port(s): 8090`銆乣Started TrafficAuditApplication in 8.691 seconds`锛夛紱`GET /api/version` 杩斿洖 HTTP 200銆�
+- **鏈仛 / 杈圭晫**锛氭湰杞棤浠g爜鏀瑰姩銆佹湭瀵煎叆鎴栬鐩栦换浣曚笟鍔℃暟鎹紱鍙鎺ュ彛 `summaryWorkbook/missing|freightCheck` 鐩存帴璇锋眰杩斿洖 401锛坄JwtAuthFilter` 瑕佹眰鐧诲綍锛夛紝鏈敤璐﹀彿鐧诲綍璋冪敤銆傚悓浜嬭繖鎵广�屾眹鎬诲ぇ琛ㄣ�嶆敼鍔紙澶氫负銆愬緟楠屾敹銆戯級浠嶉渶鐢ㄦ埛鍦ㄩ〉闈㈤噸鏂扮敓鎴� 2026-09 楠屾敹銆�
+
+### 10-14锛�1锛夛細閲嶅惎鍚庢媺璧峰墠鍚庣 + 鎷夊彇鍚堝苟鍚屼簨 34 涓彁浜わ紙姹囨�诲ぇ琛級銆愭棤浠g爜鏀瑰姩銆�
+
+- **鏈疆锛堟湭鏀逛唬鐮侊級**锛氱數鑴戦噸鍚紝鐢� `start-dev.ps1` 鎷夎捣鍓嶅悗绔紝鑴氭湰杈撳嚭鍚庣 OK銆佸墠绔� OK锛涘墠绔� http://localhost:8080锛屽悗绔� 8090锛屾棩蹇楄 `backend.log` / `traffic-audit-web/frontend.log`銆�
+- **git**锛氭湰鍦板師涓� `a2dfe61`锛岃惤鍚� `origin/main` 34 涓彁浜わ紱宸� `git fetch origin` + `git merge --ff-only origin/main` 蹇繘鍒� `697891d`銆傝繖鎵规彁浜ゆ槸鍚屼簨"姹囨�诲ぇ琛�"绯诲垪锛歚ReportExportService`銆乣SummaryLayoutExpander`銆乣SummaryMissingDataCheck`銆乣FreightReadinessCheck`銆乣ReportExport.vue`锛屼互鍙婇厤濂楁瘝鐗�/瑙勬牸/楠岃瘉鏂规硶鏂囨。锛堝涓恒�愬緟楠屾敹銆戯級銆�
+- **銆愭帴鎵嬫敞鎰徛峰凡澶勭悊銆�**锛氬綋鏃� 8090 鐨勫悗绔槸鍚堝苟鍓嶏紙08:23锛夊惎鍔ㄧ殑鏃у瓧鑺傜爜锛涘凡鐢变笅涓�鑺� 10-14锛�2锛夐噸鍚紙鏂拌繘绋� PID 21640锛�08:35:08 鍚姩锛夊姞杞藉悓浜嬫渶鏂颁唬鐮侊紝骞舵牳楠岀敓鏁堛��
+- **鏁版嵁杈圭晫**锛氭湰杞湭鏀逛唬鐮併�佹湭璺戞祴璇曘�佹湭瀵煎叆/瑕嗙洊浠讳綍涓氬姟鏁版嵁銆�
+- **宸ヤ綔鍖�**锛氫粎淇濈暀绾﹀畾涓嶅叆搴撶殑涓存椂鐩綍/鏂囦欢锛坄_tmp_doc_compare/`銆乣_tmp_flow_table/`銆乣_tmp_holiday_verify/`銆乣_tmp_rail_label/`銆乣_tmp_pack_smoke_trend.docx`锛夊拰鐢ㄦ埛鏁版嵁 `docs/涓撻」缁熻/閲嶈鑺傚亣鏃�/瑙傛祴绔欏垎鏃ヨ皟鏌ユ暟鎹� (2026骞�10鏈�1鏃�).xls`锛屼笉瑕佸垹闄ゆ垨璇彁浜ゃ��
+
+### 10-13锛�1锛夛細姹囨�诲ぇ琛ㄣ�婅揣杩愬懆杞噺鎺掑悕銆嬪潡閿欎綅淇锛堟瘝鐗堝垹澶氫綑鏍囬琛� + 浠g爜鎸夈�屽叏鐪併�嶈閿氱偣瀵归綈 + 鍐欏悗鑷锛夈�愬緟楠屾敹銆�
+
+- **鐜拌薄锛堢敤鎴锋姤鍛� + 鏍稿锛�**锛�9 鏈� 鈶♀憿 鍏ュ簱鍚庯紝鐢熸垚浠躲�婅揣杩愬懆杞噺鎺掑悕銆嬫暣鍧楅敊浣嶄竴琛屸�斺�斿叏鐪佸�艰惤鍒�**琛ㄥご琛�**锛堣鐩栥�岀疮璁″畬鎴�(涓囧惃鍏噷锛夈�嶆枃瀛楋級銆佸競宸炲�间笌甯傚窞鍚�**閿欏紑涓�琛�**锛堟姹夎瑁呴粍鐭崇殑鏁扳�︽灄鍖鸿鏄瘝鐗堟棫鍊硷級銆�**姝︽眽鐨勫�间涪澶�**锛沗RANK/鍗犳瘮/Q/R` 闅忛敊浣嶄竴骞堕敊銆�
+- **鏍瑰洜锛堜袱灞傦級**锛氣憼 姣嶇増璇ラ〉姣忓潡姣旀簮搴曠 `docs/璐ц繍/鐢熸垚_鍛ㄨ浆閲忔帓鍚�.xlsx` **澶� 1 琛�**锛堟爣棰樺悎骞跺崰涓よ锛歚A1:R2`銆乣A23:R24`锛涘叏鐪佽鍦ㄧ 5/27 琛岋級锛涒憽 `ReportExportService.copyRankValues` 鎸夈�屽潡鏍囬琛� + 婧愯鍋忕Щ銆嶉�愯鐓ф惉锛屼笖 `:4334` 閬囧埌鐩爣鏍兼槸鍏紡灏辫烦杩� 鈫� 褰㈡垚"鍊煎垪淇濈暀 SUM銆佹帓鍚嶅垪琚啓鎴愪笂涓�琛屽競宸�"鐨勫崐閿欎綅銆傝缂洪櫡**涓�鐩村瓨鍦�**锛�7/8/9 鏈堟瘝鐗堝悓缁撴瀯锛夛紝鍥犺繖椤垫鍓嶈蛋"鏁村潡缂烘暟鐣欑┖"鍒嗘敮锛堚憽鈶㈡湭瀵硷級鑰屾湭鏆撮湶銆�
+- **淇**锛�
+  1. **姣嶇増**锛堢敤鎴� 19:47 鎵ц锛夛細`docs/鐢熸垚姹囨�诲ぇ琛�/2026骞�9鏈堥亾璺繍杈撻噺姹囨�昏〃.xlsx`銆婅揣杩愬懆杞噺鎺掑悕銆嬪垹鎺変袱鍧楀鍑虹殑鏍囬琛� 鈫� 鍏ㄧ渷琛屽洖鍒扮 **4/25** 琛岋紝涓庛�婅揣杩愰噺鎺掑悕銆嬪悓鏋勶紱Excel 宸茶嚜鍔ㄤ慨濂藉悎骞跺尯涓� `SUM(B5:B21)`/`SUM(B26:B42)` 绛夊叕寮忓尯闂淬��
+  2. **浠g爜**锛坄ReportExportService.copyRankValues` 鈫� 浼犲弬 `List<String> problems`锛夛細鏀规寜鐩爣鍧椼�屽叏鐪併�嶈鍋氶敋鐐癸紝`rowOff = 鐩爣鍏ㄧ渷琛� 鈭� 婧愬叏鐪佽`锛涜瘑鍒笉鍒伴敋鐐瑰洖閫�鏍囬琛屽亸绉诲苟 WARN锛涙柊澧�**鍐欏悗鑷**锛堢洰鏍囧叏鐪佽涓庢簮渚т笉涓�鑷� 鈮�2 鍒� 鈫� WARN + 鍐欏叆銆婃暟鎹己澶辨竻鍗曘�嬶級銆備笁涓帓鍚嶉〉锛堣揣杩愰噺/鍛ㄨ浆閲�/涓彛寰勶級缁熶竴鐢熸晥銆�
+- **楠岃瘉锛�20:06 閲嶆柊鐢熸垚 2026-09锛宒ev 8090/8080 宸查噸鍚姞杞芥柊浠g爜锛�**锛氥�婅揣杩愬懆杞噺鎺掑悕銆嬬疮璁″潡/褰撴湀鍧� 脳 鍏ㄧ渷 + 17 甯傚窞 脳 16 鍒楋紙瑙勪笂/瑙勪笅/鍚堣鍊笺�佸悕娆°�佸崰姣斻�佸悓姣斻�佸閫熷悕娆°�丵/R锛変笌搴撳唴 `scale_split_transport` 2026-09锛圕UMULATIVE/MONTH锛�**閫愭牸涓�鑷达紝0 澶勪笉涓�鑷�**锛涚己鏁版竻鍗� 4鈫�2 鏉★紙鈶♀憿宸插叆搴擄紝浠呭墿缃戠害杞� 2 鏉★級锛涢〉绛惧畾浣� 20 椤点�佺疮璁¢噸寤� 0 鏍笺�佸叕寮忛噸绠� 39969 鏍兼垚鍔熴��
+- **鎶ュ憡锛堟湰鍦般�佷笉鍏ュ簱锛�**锛歚docs/鍔熻兘娴嬭瘯鎶ュ憡/鍔熻兘娴嬭瘯鎶ュ憡_姹囨�诲ぇ琛ㄥ懆杞噺鎺掑悕閿氱偣瀵归綈_2026-10-13.md`銆備骇鐗╋細`_tmp/_fix_1013/鐢熸垚_閬撹矾杩愯緭閲忔眹鎬昏〃_2026-09_楠岃瘉.xlsx`锛堟湭鍏ュ簱锛夈��
+- **銆愬緟楠屾敹/寰呭畾澶�/寰呭鐞嗐��**锛�
+  1. 銆愬緟楠屾敹銆戙�婅揣杩愬懆杞噺鎺掑悕銆嬫瘝鐗堝垹琛� + 浠g爜閿氱偣瀵归綈涓庤嚜妫�锛堥〉闈㈤噸鏂扮敓鎴愬嵆鍙鐜伴獙璇侊級銆�
+  2. 銆愬緟鐢ㄦ埛鎷嶆澘銆戙�婅揣杩愰噺鎺掑悕銆嬬疮璁″潡銆岃涓嬪閫� / 澧為�熸帓鍚嶃��**30 鏍�**鍙e緞锛氱敓鎴愪欢锛堝叏鐪� 0.052525锛塿s 妗岄潰銆�2026骞�9鏈堝杩愰噺銆佽揣杩愰噺棰勬祴.xlsx銆嬶紙鍏ㄧ渷 -0.224015锛夛紝闇�瀹氫互鍝竟涓哄噯銆�
+  3. 銆愬緟鐢ㄦ埛鎷嶆澘銆戠増寮忔湡鏈涳細鍧楅『搴忥紙鐢熸垚浠�=绱鍦ㄤ笂锛涢娴嬩欢=褰撴湀鍦ㄤ笂锛夈�佸競宸炲悕甯︿笉甯�"甯�"銆�
+  4. 銆愬緟澶勭悊銆�7/8 鏈堟瘝鐗堝悓涓�"澶� 1 琛�"缁撴瀯锛堝湪 `褰掓。/`锛夆�斺�旈敋鐐瑰榻愬悗姝g‘鎬у凡涓嶅彈褰卞搷锛屼笅娆″彇鍥炲嚭琛ㄦ椂纭鍗冲彲锛屾殏涓嶆敼褰掓。浠躲��
+  5. 銆�12 鏈堝墠銆戣法骞存瘝鐗堥渶鏂板紑涓�鏈紙鎵╁垪 `month>=12` 鏄庣‘鎷掔粷锛夛紱寤鸿鍋氭垚鍗婅嚜鍔紝瑙勫垯寰呭畾锛堜繚鐣欏嚑骞村巻鍙插潡 / 鏂颁竴骞存湀搴﹀垪甯冩斁 / 2027-01 姣嶇増鏄惁鐣欐。锛夈��
+  6. 銆愮己鏁�/缂鸿銆戠綉绾﹁溅 9 鏈堬紙璁㈠崟銆佸叏鐪� pin銆佹簮鏂囦欢锛夛紱鍏氦 9 鏈� 141 琛� vs 142 琛岋紙婧愭枃浠剁己 `闅忓窞甯偮峰箍姘村競瀹夐『鍏氦鏈夐檺鍏徃`锛夈��
+- **鐜**锛歞ev 鍓嶅悗绔� 20:00 閲嶅惎锛坄backend.log` 瑙� `Started TrafficAuditApplication`銆乣Tomcat started on port(s): 8090`锛夛紱鍚姩鏃ュ織鍙︽湁涓�鏉′笌鏈鏃犲叧鐨� `traffic_audit.holiday_calendar` 琛ㄤ笉瀛樺湪鍛婅銆�
+- **鏁版嵁杈圭晫**锛氭湰杞彧鍋氱敓鎴愪笌鍙鏍稿锛堝簱鍐呮煡璇㈠彧璇伙級锛�**鏈鍏ャ�佹湭瑕嗙洊浠讳綍涓氬姟鏁版嵁**銆�
+
 ### 10-12锛�14锛夛細姹囨�诲ぇ琛ㄣ�岀己鏁版竻鍗曞脊绐� + 鐢熸垚浠躲�婃暟鎹己澶辨竻鍗曘�嬮〉銆�+ 浣撴鍋囬槼鎬т慨澶� + 鍏氦 9鏈堢己琛屾牳鏌ャ�愬緟楠屾敹銆�
 
 - **鍔ㄥ洜**锛氱敤鎴疯姹傛妸缂烘暟鎽嗗埌鍙伴潰涓婏紙P0-3 鍓╀綑锛夛紝骞跺湪鐢熸垚浠堕噷缁欎竴椤点�婃暟鎹己澶辨竻鍗曘�嬨��

--
Gitblit v1.9.1