{ ============================================================================== 方法名稱: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;