From 6170e07c5c65c59a1043154d8f79aadb5bba4ea2 Mon Sep 17 00:00:00 2001
From: doom4ster <doom4ster@gmail.com>
Date: 星期五, 18 八月 2017 15:39:23 +0800
Subject: [PATCH] 針對補件作入庫非入庫區別做法
---
CB_IMGPSScanImp.pas | 301 +++++++++++++++++++++++++++++++++++++++----------
1 files changed, 239 insertions(+), 62 deletions(-)
diff --git a/CB_IMGPSScanImp.pas b/CB_IMGPSScanImp.pas
index dd1bda9..5b82dcc 100644
--- a/CB_IMGPSScanImp.pas
+++ b/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);
@@ -11711,26 +11846,49 @@
Exit;
end;
CreatePreViewISB(GetCasePage(ImageSavePath,NowCaseno));
- //Showmessage(inttostr(GetCasePage(ImageSavePath,NowCaseno)));
+//Showmessage(inttostr(GetCasePage(ImageSavePath,NowCaseno)));
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,
--
Gitblit v1.8.0