From 0756bf12d10cf1b7f78c571de0a9ad69cbaeb7ca Mon Sep 17 00:00:00 2001
From: curtis <curtis@i-mps.com>
Date: 星期一, 30 三月 2026 14:24:17 +0800
Subject: [PATCH] fix: 更新內部引用方法參照

---
 reassemble/bloc/entityMapping.pas |   59 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 59 insertions(+), 0 deletions(-)

diff --git a/reassemble/bloc/entityMapping.pas b/reassemble/bloc/entityMapping.pas
new file mode 100644
index 0000000..d53f2d8
--- /dev/null
+++ b/reassemble/bloc/entityMapping.pas
@@ -0,0 +1,59 @@
+{ ==============================================================================
+  方法名稱:BarCode2CaseID
+  引用相依:
+  方法描述:從目前掃瞄到的條碼清單中提取案件編號 (CaseID)。方法會遍歷條碼暫存對象
+             (MpsBarcodeinf),並將第一個長度正好等於預設 CaseIDLength 的條碼值視
+            為合法的案件編號返回。若遍歷結束仍未找到符合長度限制的條碼,則返回空字
+            串。
+============================================================================== }
+Function TCB_IMGPSScanX.BarCode2CaseID : String; //Barcode依規則轉成CaseID
+var
+  i : Integer;
+  iCaseID : String;
+begin
+  Result := ''; //沒找到
+  iCaseID := '';
+  for i := 1 to MpsBarcodeinf.Count  do    //20180920 拿掉-1
+  begin
+    if (Length(MpsBarcodeinf.text[i]) = CaseIDLength) then
+    begin
+      iCaseID := MpsBarcodeinf.text[i];
+      Result := iCaseID;
+      Break;
+    end;
+  end;
+end;
+
+
+{ ==============================================================================
+  方法名稱:BarCode2FormID
+  引用相依:
+  方法描述:從目前掃瞄到的條碼清單中識別有效的表單代碼 (FormID)。方法會過濾長度符
+            合 FormIDLength 的條碼,並呼叫 FormIDAppear 驗證其格式。若初步驗證通過
+            ,會進一步呼叫 FormIDExists 確認該代碼在系統中已註冊且可用。返回第一個
+            完全符合條件的表單代碼,否則返回空。
+============================================================================== }
+Function TCB_IMGPSScanX.BarCode2FormID : String; //Barcode依規則轉成FormID
+var
+  i : Integer;
+  FormID : String;
+begin
+  Result := ''; //沒找到
+  FormID := '';
+  for i := 1 to MpsBarcodeinf.Count  do
+  begin
+    if (Length(MpsBarcodeinf.Text[i]) = FormIDLength) then
+    begin
+      FormID := MpsBarcodeinf.text[i];
+      if not FormIDAppear(FormID) then
+        FormID := '';
+    end;
+    if (FormID <> '') and FormIDExists(FormID,False,0) then   //有可用的FormID就離開
+    begin
+      Result := FormID;
+      Break;
+    end;
+  end;
+end;
+
+

--
Gitblit v1.8.0