doom4ster
2017-08-18 6170e07c5c65c59a1043154d8f79aadb5bba4ea2
針對補件作入庫非入庫區別做法
修改9個檔案
313 ■■■■ 已變更過的檔案
CB_IMGPSScan.dproj 4 ●●●● 修補檔 | 檢視 | 原始 | 究查 | 歷程
CB_IMGPSScan.ocx 修補檔 | 檢視 | 原始 | 究查 | 歷程
CB_IMGPSScan.res 修補檔 | 檢視 | 原始 | 究查 | 歷程
CB_IMGPSScan.ridl 6 ●●●● 修補檔 | 檢視 | 原始 | 究查 | 歷程
CB_IMGPSScan.tlb 修補檔 | 檢視 | 原始 | 究查 | 歷程
CB_IMGPSScanImp.dcu 修補檔 | 檢視 | 原始 | 究查 | 歷程
CB_IMGPSScanImp.pas 297 ●●●● 修補檔 | 檢視 | 原始 | 究查 | 歷程
CB_IMGPSScan_TLB.dcu 修補檔 | 檢視 | 原始 | 究查 | 歷程
CB_IMGPSScan_TLB.pas 6 ●●●● 修補檔 | 檢視 | 原始 | 究查 | 歷程
CB_IMGPSScan.dproj
@@ -95,7 +95,7 @@
                        <VersionInfo Name="MajorVer">2</VersionInfo>
                        <VersionInfo Name="MinorVer">0</VersionInfo>
                        <VersionInfo Name="Release">1</VersionInfo>
                        <VersionInfo Name="Build">33</VersionInfo>
                        <VersionInfo Name="Build">34</VersionInfo>
                        <VersionInfo Name="Debug">False</VersionInfo>
                        <VersionInfo Name="PreRelease">False</VersionInfo>
                        <VersionInfo Name="Special">False</VersionInfo>
@@ -107,7 +107,7 @@
                    <VersionInfoKeys>
                        <VersionInfoKeys Name="CompanyName"/>
                        <VersionInfoKeys Name="FileDescription"/>
                        <VersionInfoKeys Name="FileVersion">2.0.1.33</VersionInfoKeys>
                        <VersionInfoKeys Name="FileVersion">2.0.1.34</VersionInfoKeys>
                        <VersionInfoKeys Name="InternalName"/>
                        <VersionInfoKeys Name="LegalCopyright"/>
                        <VersionInfoKeys Name="LegalTrademarks"/>
CB_IMGPSScan.ocx
Binary files differ
CB_IMGPSScan.res
Binary files differ
CB_IMGPSScan.ridl
@@ -6,7 +6,7 @@
// However, when applying changes via the Editor this file will be regenerated
// and comments or formatting changes will be lost.
// ************************************************************************ //
// File generated on 2017/3/16 ¤W¤È 12:29:28 (- $Rev: 12980 $, 706234).
// File generated on 2017/8/18 ¤U¤È 03:12:43 (- $Rev: 12980 $, 104663453).
[
  uuid(F7D1C429-BE85-4FAD-A058-36A41C2AAA89),
@@ -322,6 +322,10 @@
    HRESULT _stdcall check_main_form([out, retval] BSTR* Value);
    [propput, id(0x00000101)]
    HRESULT _stdcall check_main_form([in] BSTR Value);
    [propget, id(0x00000102)]
    HRESULT _stdcall WH_CATEGORY([out, retval] BSTR* Value);
    [propput, id(0x00000102)]
    HRESULT _stdcall WH_CATEGORY([in] BSTR Value);
  };
  [
CB_IMGPSScan.tlb
Binary files differ
CB_IMGPSScanImp.dcu
Binary files differ
CB_IMGPSScanImp.pas
@@ -407,6 +407,7 @@
    FImgDelete:string; // Y/N  有權限可在補件時刪除影像
    FIsExternal:string;//Y/N
    FCheck_main_form:string; //Y/N
    FWH_category:string;  //Y/N  Y是歸類時有區分入庫非入庫文件  N 是不區分
    ////////傳入參數///////
    //********Http參數********
@@ -958,6 +959,8 @@
    function Get_isExternal: WideString; safecall;
    procedure Set_check_main_form(const Value: WideString); safecall;
    procedure Set_isExternal(const Value: WideString); safecall;
    function Get_WH_CATEGORY: WideString; safecall;
    procedure Set_WH_CATEGORY(const Value: WideString); safecall;
  public
    { Public declarations }
    procedure Initialize; override;
@@ -1982,7 +1985,7 @@
      FormID :=  GetSQLData(FORM_INF_List,'T1.FORM_ID',i);
      FormName := GetSQLData(FORM_INF_List,'T1.FORM_DESC',i);
      DocNo := GetSQLData(FORM_INF_List,'T1.DOC_NO',i)+GetSQLData(FORM_INF_List,'T1.DOC_VERSION',i);
      if not FormIDAppear(FormID) then Continue;
      if not FormIDAppear(FormID) then Continue;   //20170816 先秀全部
      //Showmessage(FORM_INF_List.Text);
      //showmessage(inttostr(FORM_INF_List.Count)+#13+inttostr(self.Doc_Inf_List.Count));
@@ -2014,7 +2017,7 @@
          Else
            DocDir := FindLastestDocDir(NowCaseno,DocNo);
//ShowMessage('DocNoNeedDiv(DocNo)='+BoolToStr(DocNoNeedDiv(DocNo),true));
          if DocNoNeedDiv(DocNo) then   //要分份數
          begin
            if ((FormCode2Page(FormID) = '01') and (GetDocDir_Page(NowCaseno,DocDir)>0)) or (DocDir = '') then
@@ -2923,7 +2926,7 @@
    begin
      NewFormID := GetSQLData(FORM_INF_List,'T1.FORM_ID',i);
      NewFormName := GetSQLData(FORM_INF_List,'T1.FORM_DESC',i);
      if not FormIDAppear(NewFormID) then Continue;
      if not FormIDAppear(NewFormID) then Continue;   //20170816 先秀全部的
      if (NewFormID <> FileName2FormCode(DisplayISB.FileName)) and FormIDExists(NewFormID,False,i) then
      begin
        DocListForm.FormIDList.Add(NewFormID+'#@#'+NewFormName);
@@ -5609,6 +5612,14 @@
      iPage := Add_Zoo(i,2);
      for n := 0 to S.Count - 1 do
      begin
        if FWH_category='N' then
        begin
          if ISExistImg(ImageSavePath+CaseID+'\upload\'+S.Strings[n]) then
          begin
            Continue;
          end;
        end;
        FormCode := FileName2FormCode(S.Strings[n]);
//Showmessage('1:'+version+','+FormCode2Version(FormCode)+','+DocNo+','+FormCode2DocNo(FormCode)+','+iPage+','+FormCode2Page(FormCode));
        if (version = FormCode2Version(FormCode)) and (DocNo = FormCode2DocNo(FormCode)) and (ipage = FormCode2Page(FormCode)) then
@@ -5638,6 +5649,13 @@
    S.LoadFromFile(ImageSavePath+CaseID+'\upload\Context.dat');
    for i := 0 to S.Count - 1 do
    begin
      if FWH_category='N' then
      begin
        if ISExistImg(ImageSavePath+CaseID+'\upload\'+S.Strings[i]) then
        begin
          Continue;
        end;
      end;
      iFormCode := FileName2FormCode(S.Strings[i]);
      if FormCode = iFormCode then
      begin
@@ -5939,8 +5957,6 @@
  +'&in_doc2='+HTTPEncode(UTF8Encode(In_Doc2));
//ShowMessage('SendData='+SendData);
//ShowMessage(FData+#10#13+Doc_Data);
//exit;
  if not upFile(HTTPSClient,FUrl,'service/imgpsc/IMGPSC02/caseupload',SendData,'file',Path+'Img.zip',FReWrite,Memo1,False) then
  begin
    Showmessage(Format(_Msg('傳送案件編號(%s)檔案時,網路發生錯誤!!'+_Msg('錯誤代碼:')),[CaseID])+Inttostr(HttpError.HttpErrorCode)+' '+HttpError.HttpReason);
@@ -6530,6 +6546,13 @@
    S.LoadFromFile(Path+'Context.dat');
    for I := 0 to S.Count - 1 do
    begin
      if FWH_category='N' then
      begin
        if ISExistImg(Path+S.Strings[i]) then
        begin
          Continue;
        end;
      end;
      FormCode := FileName2FormCode(S.Strings[i]);
      DocNo := FormCode2DocNo(FormCode);
      Ver := FormCode2Version(FormCode);
@@ -7019,13 +7042,14 @@
Function TCB_IMGPSScanX.GetCasePage(Path,CaseID:String):Integer;
var
  DocDirList,FileList :TStringlist;
  DocDirList,FileList,ST1 :TStringlist;
  iDocDir,iDocNo : String;
  i,Count : Integer;
  i,n,Count : Integer;
begin
  Count := 0;
  DocDirList := TStringlist.Create;
  FileList := TStringlist.Create;
  ST1:=TStringList.Create;
  try
    if FileExists(Path+CaseID+'\CaseDocNo.dat') then
      DocDirList.LoadFromFile(Path+CaseID+'\CaseDocNo.dat');
@@ -7040,11 +7064,35 @@
      begin
        Continue;
      end;}
      if not DocNoAppear(iDocNo) then Continue;
      //if not DocNoAppear(iDocNo) then Continue; //20170817 先註解
      FileList.Clear;
      if FileExists(Path+CaseID+'\'+iDocDir+'\Context.dat') then
      begin
        FileList.LoadFromFile(Path+CaseID+'\'+iDocDir+'\Context.dat');
        if FWH_category='N' then
        begin
          ST1.Clear;
          for n := 0 to FileList.Count - 1 do
          begin
            if ISExistImg(Path+CaseID+'\'+iDocDir+'\'+FileList.Strings[n]) then
            begin
              ST1.Add(FileList.Strings[n]);
            end;
          end;
          for n := 0 to ST1.Count - 1 do
          begin
            if (FileList.IndexOf(ST1.Strings[n])<>-1) and (not DocNoIs_In_WH(iDocNo)) then
            begin
              FileList.Delete(FileList.IndexOf(ST1.Strings[n]));
            end;
          end;
        end;
      end;
      Count := Count+ FileList.Count;
    end;
    if FileExists(Path+CaseID+'\'+AttName+'\Context.dat') then
@@ -7057,6 +7105,7 @@
  finally
  DocDirList.Free;
  FileList.Free;
  ST1.free;
  end;
end;
@@ -7963,12 +8012,14 @@
  FormName : String;
  CaseDocNoList,CaseDocNo_CopiesList,StrList : TStringlist;
  iiDocNo,iiFormID,iiDocVer : String;
  ST1:TStringList;
begin
  Result := False;
  FileList := TStringlist.Create;
  CaseDocNoList := TStringlist.Create;
  CaseDocNo_CopiesList := TStringlist.Create;
  StrList := TStringlist.Create;
  ST1:=TStringList.Create;
  try
    CaseNode.ImageIndex := 1;
    CaseNode.SelectedIndex := 1;
@@ -7987,6 +8038,32 @@
      //Showmessage(ImageSavePath+Caseno+'\'+CaseDocNoList.Strings[i]+'\Context.dat');
      if FileExists(ImageSavePath+Caseno+'\'+CaseDocNoList.Strings[i]+'\Context.dat') then
        FileList.LoadFromFile(ImageSavePath+Caseno+'\'+CaseDocNoList.Strings[i]+'\Context.dat');
      iDocNo := DocNoDir2DocNo(CaseDocNoList.Strings[i]);
      ST1.Clear;
      if FWH_category='N' then
      begin
        for n := 0 to FileList.Count - 1 do
        begin
          if ISExistImg(ImageSavePath+Caseno+'\'+CaseDocNoList.Strings[i]+'\'+FileList.Strings[n]) then
          begin
            ST1.Add(FileList.Strings[n]);
          end;
        end;
        for n := 0 to ST1.Count - 1 do
        begin
          if (FileList.IndexOf(ST1.Strings[n])<>-1) and (not DocNoIs_In_WH(iDocNo)) then
          begin
            FileList.Delete(FileList.IndexOf(ST1.Strings[n]));
          end;
        end;
      end;
      if FileList.Count=0 then Continue;
      //Showmessage('aaa '+FileList.Text);
      DocNoCopies := Strtoint(CaseDocNo_CopiesList.Strings[i]);
      DocNoPage := FileList.Count;
@@ -7999,7 +8076,8 @@
      begin
        Continue;
      end;}
      if not DocNoAppear(iDocNo) then Continue;
      //if not DocNoAppear(iDocNo) then Continue;
      //DocNode := TreeView1.Items.AddChild(CaseNode,Format('%s{%s}-%d'+_msg('頁'),[CaseDocNoList.Strings[i],DocNo2DocName(Caseno,iDocNo),DocNoPage]));
@@ -8131,6 +8209,7 @@
  CaseDocNoList.Free;
  CaseDocNo_CopiesList.Free;
  StrList.Free;
  ST1.Free;
  end;
end;
@@ -9747,6 +9826,20 @@
     ((FIs_In_Wh  = 'N') and (DocNoIs_In_WH(iDocNo)))) and      //非入庫掃描不看入庫文件
     ((iDocNo <> 'Attach') and (iDocNo <> 'S_Attach') and (Copy(iDocNo,1,5)<>'ZZZZZ')) then
       Result := False;
  if (FIs_In_Wh='Y') and (FWH_category='Y') then //20170816 新加
  begin
    if (((FIs_In_Wh  = 'Y') and (not DocNoIs_In_WH(iDocNo))) or   //入庫掃描不看非入庫文件
     ((FIs_In_Wh  = 'N') and (DocNoIs_In_WH(iDocNo)))) and      //非入庫掃描不看入庫文件
     ((iDocNo <> 'Attach') and (iDocNo <> 'S_Attach') and (Copy(iDocNo,1,5)<>'ZZZZZ')) then
       Result := False;
  end;
  if (FIs_In_Wh='Y') and (FWH_category='N') then //20170816 新加
  begin
    Result:=True;
  end;
end;
Function TCB_IMGPSScanX.DocNoAppear(DocNo:String):Boolean;   //DocNo是否可出現
@@ -9756,6 +9849,7 @@
     ((FIs_In_Wh  = 'N') and (DocNoIs_In_WH(DocNo)) or (DocNo ='Attach') )) {and      //非入庫掃描不看入庫文件
     (Copy(DocNo,1,5)<>'ZZZZZ')} then
       Result := False;
end;
Function TCB_IMGPSScanX.GetDocNoCount(CaseID,DocNo:String):Integer; //取DocNo數量
@@ -10812,6 +10906,14 @@
    S.LoadFromFile(ImageSavePath + CaseID+'\upload\Context.dat');
    for i := 0 to S.Count - 1 do
    begin
      if FWH_category='N' then
      begin
        if ISExistImg(ImageSavePath+CaseID+'\upload\'+S.Strings[i]) then
        begin
          Continue;
        end;
      end;
      LForm := FileName2FormCode(S.Strings[i]);
      AddOk := True;
      for n := 0 to OMRFileList.Count - 1 do
@@ -10911,7 +11013,7 @@
        begin
          //////主要非主要文件//////
          DistinctDocinCase(ImageSavePath+CaseID+'\upload\');
//ShowMessage(DocNo_VerinCase.Text);
          if ModeNeedCheck(OMRErrInfo[1].Mode,FMode) then //是否要檢核
          begin
            for i := 0 to DocNo_VerinCase.Count - 1 do
@@ -10954,6 +11056,13 @@
            begin
              if not Case_DocNoExists(CaseID,List.Strings[i]) then  //沒附相依文件
              begin
                if FWH_category='N' then
                begin
                  if ISExistImg(ImageSavePath+CaseID+'\upload\'+List.Strings[i]) then
                  begin
                    Continue;
                  end;
                end;
                ErrStr:=Format(OMRErrInfo[2].Info,[DocNo2DocName(CaseID,List.Strings[i])]);   //沒附相依文件
                OMRErr2ini(CaseID,ErrStr,'','','','','','',False,OMRErrInfo[2].Ignore,OMRErrInfo[2].Display);
                if OMRErrInfo[2].Display then
@@ -10971,6 +11080,13 @@
            begin
              if Case_DocNoExists(CaseID,List.Strings[i]) then  //附了互斥文件
              begin
                if FWH_category='N' then
                begin
                  if ISExistImg(ImageSavePath+CaseID+'\upload\'+List.Strings[i]) then
                  begin
                    Continue;
                  end;
                end;
                ErrStr:=Format(OMRErrInfo[3].Info,[DocNo2DocName(CaseID,List.Strings[i])]);   //有附互斥文件
                OMRErr2ini(CaseID,ErrStr,'','','','','','',False,OMRErrInfo[3].Ignore,OMRErrInfo[3].Display);
                if OMRErrInfo[3].Display then
@@ -11023,9 +11139,16 @@
      DistinctFormCode(CaseID);
      if ModeNeedCheck(OMRErrInfo[10].Mode,FMode) then //是否要檢核
      begin
//ShowMessage(OMRFileList.Text);
//ShowMessage('AAA'+OMRFileList.Text);
        For i := 0 to OMRFileList.Count - 1 do
        begin
          if FWH_category='N' then
          begin
            if ISExistImg(ImageSavePath+CaseID+'\upload\'+OMRFileList.Strings[i]) then
            begin
              Continue;
            end;
          end;
          FormCode := FileName2FormCode(OMRFileList.Strings[i]);
          FormDataPages := GetDataFormCodePages(FormCode);
@@ -11048,22 +11171,31 @@
      DistinctFormCode(CaseID);
      ValueXT := TXmltool.Create;
      Try
//ShowMessage('必填'+OMRFileList.Text);
        For i := 0 to OMRFileList.Count - 1 do
        begin
//          if FWH_category='N' then
//          begin
//            if ISExistImg(ImageSavePath+CaseID+'\upload\'+OMRFileList.Strings[i]) then
//            begin
//              Continue;
//            end;
//          end;
          OMRFile := OMRFileList.Strings[i];
          OMRFormCode := FileName2FormCode(OMRFileList.Strings[i]);
          OMRFormName := FormCode2FormName(CaseID,OMRFormCode);
          Anchor := FormID2Anchor(OMRFormCode);
          ///依十字定位點縮放////
          ImageReSize_FormID(CaseID,OMRFile);
          ////依十字定位點縮放////
          ////依十字定位點縮放///
//Display1.Lines.Add('OMRFile='+OMRFile+',OMRFormCode='+OMRFormCode+',OMRFormName='+OMRFormName);
          if not FileExists(CheckXmlPath+OMRFormCode+'.xml') then  //沒有Xml就不用檢核
            Continue;
          XT := TXmltool.Create(CheckXmlPath+OMRFormCode+'.xml');
          RelaXT := TXmltool.Create;
//ShowMessage('ModeNeedCheck='+BoolToStr(ModeNeedCheck(OMRErrInfo[4].Mode,FMode),true));
          try
            //*******必填********
            if ModeNeedCheck(OMRErrInfo[4].Mode,FMode) then //是否要檢核
@@ -11698,10 +11830,13 @@
    v ,v1 : Integer;
    List_DocNo,Trans_DocNo,List_FormCode,Form_Page: String;
    iDocNo : String;
    iGroupNo,page,Ct : Integer;
    iGroupNo,page,Ct,int1 : Integer;
    ST1:TStringList;
begin
   ShowText := '影像顯示中,請稍候';
   DataLoading(True,True);
   //DataLoading(True,True);
ST1:=TStringList.Create;
//Display1.Lines.Clear;
   IF DocNo = 'ShowAll' then  //顯示所有的影像 (因為附件會傳空字串,所以用ShowAll)
   begin
     ClearView(1);
@@ -11715,22 +11850,45 @@
     Ct := 0;
     For i := 0 to CaseDocNoList.Count-1 do
     begin
       {iDocno := DocNoDir2DocNo(CaseDocNoList.Strings[i]);
       if (((FIs_In_Wh  = 'Y') and (not DocNoIs_In_WH(iDocNo))) or   //入庫掃描不看非入庫文件
          ((FIs_In_Wh  = 'N') and (DocNoIs_In_WH(iDocNo)))) and
          ((iDocNo <> 'Attach') and (Copy(iDocNo,1,5)<>'ZZZZZ')) then     //非入庫掃描不看入庫文件
       if FWH_category='N' then
       begin
         Continue;
       end; }
         if FileExists(ImageSavePath+NowCaseno+'\EditedDocDir.dat') then
         begin
           ST1.LoadFromFile(ImageSavePath+NowCaseno+'\EditedDocDir.dat');
         end;
       end;
       iDocNo := CaseDocNoList.Strings[i];
       if not DocNoAppear(DocNoDir2DocNo(iDocNo)) then continue;
       if ST1.Count<>0 then
       begin
         if ST1.IndexOf(iDocNo)<>-1 then
         begin
         end
         else
         begin
           if not DocNoAppear(DocNoDir2DocNo(iDocNo)) then continue;  //20170817 這不能被註解
         end;
       end
       else
       begin
         if not DocNoAppear(DocNoDir2DocNo(iDocNo)) then continue;  //20170817 這不能被註解
       end;
       ContextList.Clear;
       if FileExists(Path+iDocNo+'\Context.dat') then
         ContextList.LoadFromFile(Path+iDocNo+'\Context.dat');
       for n := 0 to ContextList.Count - 1 do
       begin
         if FWH_category='N' then
         begin
           if ISExistImg(Path+iDocNo+'\'+ContextList.Strings[n]) then
           begin
             Continue;
           end;
         end;
         inc(Ct);
         ISB := TImageScrollBox(FindComponent(ISBName+intToStr(Ct)));
         ISB.AntiAliased := True;
@@ -11742,6 +11900,7 @@
         ISB.Redraw(true);
       end;
     end;
     //if DirectoryExists(Path+'Attach') then
     if DirectoryExists(Path+AttName) then
@@ -11761,7 +11920,9 @@
         ISB.LoadFromFile(Path+iDocNo+'\'+ContextList.Strings[n],1);
       end;
     end;
     FitPreViewISB;
   end
   Else if (DocNo <> '') and (FormID = '') then  //顯示指定DocNo+組別的影像  附件傳 Attach
   begin
@@ -11769,10 +11930,32 @@
     ContextList.Clear;
     if FileExists(Path+iDocNo+'\Context.dat') then
       ContextList.LoadFromFile(Path+iDocNo+'\Context.dat');
//     Ct:=0 ;
//     for I := 0 to ContextList.Count - 1 do
//     begin
//       if FWH_category='N' then
//       begin
//         if ISExistImg(Path+iDocNo+'\'+ContextList.Strings[i]) then
//         begin
//           Inc(Ct);
//           //ContextList.Delete(ContextList.IndexOf(ContextList.Strings[i]));
//         end;
//       end;
//     end;
     CreatePreViewISB(ContextList.Count);
//ShowMessage(IntToStr(ContextList.Count-Ct));
     int1:=0;
     For i := 0 to ContextList.Count -1 do
     begin
       ISB := TImageScrollBox(FindComponent(ISBName+intToStr(i+1)));
       if FWH_category='N' then
       begin
         if ISExistImg(Path+iDocNo+'\'+ContextList.Strings[i]) then
         begin
           inc(int1);
           Continue;
         end;
       end;
       ISB := TImageScrollBox(FindComponent(ISBName+intToStr(i+1-int1)));
       ISB.AntiAliased := True;
       if ISB.ZoomPercent > 100  then
         ISB.AntiAliased := False;
@@ -11794,60 +11977,41 @@
       page := 0;
       Ct := 0;
       CreatePreViewISB(Pages);
//ShowMessage('formID page'+IntToStr(Pages)+', ContextList='+ContextList.Text);
       For i := 0 to ContextList.Count -1 do
       begin
         if FileName2FormCode(ContextList.Strings[i]) = FormID then
         begin
           if FWH_category='N' then
           begin
//ShowMessage(Path+iDocNo+'\'+ContextList.Strings[i]);
//ShowMessage(BoolToStr(ISExistImg(Path+iDocNo+'\'+ContextList.Strings[i]),true));
             if ISExistImg(Path+iDocNo+'\'+ContextList.Strings[i]) then
             begin
               Continue;
             end;
           end;
           inc(Ct);
           ISB := TImageScrollBox(FindComponent(ISBName+intToStr(Ct)));
//ShowMessage(ISB.Name);
           ISB.AntiAliased := True;
           if ISB.ZoomPercent > 100  then
             ISB.AntiAliased := False;
           ISB.LoadFromFile(Path+iDocNo+'\'+ContextList.Strings[i],1);
           DpiResize(ISB.Graphic,36);
           ISB.Redraw(true);
           //NowShowFileList.Add(ContextList.Strings[i]);
         end;
       end;
       FitPreViewISB;
     end;
   end;
   {Else if (DocNo = 'Attach') and (FormID = 'Attach') then  //附件傳 Attach
   begin
     If (TreeView1.Selected <> nil) Then
     begin
       iGroupNo := 0;
       page := 0;
       CreatePreViewISB(Pages);
       For i := 0 to ContextList.Count -1 do
       begin
         List_FormCode := FileName2FormCode(ContextList.Strings[i]);
         Form_Page := FormCode2Page(List_FormCode);
         List_DocNo := FormCode2DocNo(List_FormCode);
         Trans_DocNo := Context_DocnoList.Strings[i];
         if (Trans_DocNo = DocNo) then
         begin
           if List_FormCode = FormID then
           begin
             inc(Page);
             if Page = GroupNo+1 then
             begin
               ISB := TImageScrollBox(FindComponent(ISBName+intToStr(1)));
               ISB.AntiAliased := True;
               if ISB.ZoomPercent > 100  then
                 ISB.AntiAliased := False;
               ISB.LoadFromFile(Path+ContextList.Strings[i],1);
               NowShowFileList.Add(ContextList.Strings[i]);
             end;
           end;
         end;
       end;
       FitPreViewISB;
     end;
   end;}
   if FindComponent(ISBName+'1') <> nil then
   begin
     ISBClick(TImageScrollBox(FindComponent(ISBName+'1')));
   end;
   ISB1Click(ISB1);
   DataLoading(False,False);
end;
@@ -12170,6 +12334,9 @@
  ln := length(SelectISB.Name);
  SelectPage := Strtoint(Copy(SelectISB.Name,v+1,ln-v));
  ISB1.ZoomMode := zmFittoPage;
//ShowMessage('SelectISB.FileName='+SelectISB.FileName);
  //if SelectISB.FileName='' then exit;
  ISB1.LoadFromFile(SelectISB.FileName,1);
  if (ISB1.Graphic.ImageFormat <> ifBlackWhite) and (SmoothCB.Checked)then
    Image_Smooth(ISB1.Graphic);
@@ -13352,8 +13519,9 @@
  i: Integer;
begin
  Timer1.Enabled := False;
  //FIs_In_Wh:='Y';
//  FIs_In_Wh:='Y'; /// test 記得關掉
//  FWH_category :='N';  // test 記得關掉
//  FImgDelete := 'Y'; //test 記得關掉
  //Showmessage('a');
  //self.FIs_OldCase := 'Y';
  PageLVclear := True;
@@ -13842,7 +14010,6 @@
      ///////檢核//////
      ShowText := CaseID+_Msg('資料上傳中,請稍候');
      DataLoading(True,True);
//ShowMessage('NNNNN');
//ShowMessage('退出');DataLoading(False,False);Exit;
      If Not TransCaseID(TransPath,CaseID,True) Then  //傳送案件
      begin
@@ -14711,6 +14878,16 @@
  FIsExternal:=Value;
end;
function TCB_IMGPSScanX.Get_WH_CATEGORY: WideString;
begin
end;
procedure TCB_IMGPSScanX.Set_WH_CATEGORY(const Value: WideString);
begin
  FWH_category:=Value;
end;
initialization
  TActiveFormFactory.Create(
    ComServer,
CB_IMGPSScan_TLB.dcu
Binary files differ
CB_IMGPSScan_TLB.pas
@@ -12,7 +12,7 @@
// ************************************************************************ //
// $Rev: 17252 $
// File generated on 2017/3/16 ¤W¤È 12:29:25 from Type Library described below.
// File generated on 2017/8/18 ¤U¤È 03:12:38 from Type Library described below.
// ************************************************************************  //
// Type Lib: C:\Users\Hong\Desktop\Delphi2009_project\work_project\°ê®õ±M®×\°ê®õ©Ð¶U\±½´y¤¸¥óCB_IMGPSScan\20170208_³]¸mgit\CB_IMGPSScan (1)
@@ -232,6 +232,8 @@
    procedure Set_isExternal(const Value: WideString); safecall;
    function Get_check_main_form: WideString; safecall;
    procedure Set_check_main_form(const Value: WideString); safecall;
    function Get_WH_CATEGORY: WideString; safecall;
    procedure Set_WH_CATEGORY(const Value: WideString); safecall;
    property Visible: WordBool read Get_Visible write Set_Visible;
    property AutoScroll: WordBool read Get_AutoScroll write Set_AutoScroll;
    property AutoSize: WordBool read Get_AutoSize write Set_AutoSize;
@@ -293,6 +295,7 @@
    property imgdelete: WideString read Get_imgdelete write Set_imgdelete;
    property isExternal: WideString read Get_isExternal write Set_isExternal;
    property check_main_form: WideString read Get_check_main_form write Set_check_main_form;
    property WH_CATEGORY: WideString read Get_WH_CATEGORY write Set_WH_CATEGORY;
  end;
// *********************************************************************//
@@ -363,6 +366,7 @@
    property imgdelete: WideString dispid 255;
    property isExternal: WideString dispid 256;
    property check_main_form: WideString dispid 257;
    property WH_CATEGORY: WideString dispid 258;
  end;
// *********************************************************************//