366 lines
9.3 KiB
ObjectPascal
366 lines
9.3 KiB
ObjectPascal
unit U_BPZdy_TJHXK;
|
||
|
||
interface
|
||
|
||
uses
|
||
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
|
||
cxDataStorage, cxEdit, DB, cxDBData, ToolWin, ComCtrls,
|
||
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGridLevel,
|
||
cxClasses, cxControls, cxGridCustomView, cxGrid, DBClient, ADODB, ImgList,
|
||
StdCtrls, ExtCtrls, cxTextEdit, cxGridCustomPopupMenu, cxGridPopupMenu,
|
||
cxButtonEdit, BtnEdit, cxTL, cxMaskEdit, cxInplaceContainer, cxDBTL,U_SLT_TJHX,U_CPType_TJTP,
|
||
cxTLData, cxContainer, cxCurrencyEdit, cxCheckBox, cxSplitter,jpeg,U_SLT_PBSK,U_SLT,Math, Menus, cxCalendar;
|
||
|
||
type
|
||
TfrmBPZDY_TJHXK = class(TForm)
|
||
ADOQueryMain: TADOQuery;
|
||
ADOQueryTemp: TADOQuery;
|
||
ADOQueryCmd: TADOQuery;
|
||
DataSource1: TDataSource;
|
||
Ord_TJ: TClientDataSet;
|
||
ADOConnection1: TADOConnection;
|
||
ThreeImgList: TImageList;
|
||
DataSource2: TDataSource;
|
||
Panel2: TPanel;
|
||
Panel4: TPanel;
|
||
DataSource4: TDataSource;
|
||
ADOQueryTree: TADOQuery;
|
||
Order_Tree: TClientDataSet;
|
||
cxGridPopupMenu1: TcxGridPopupMenu;
|
||
cxStyleRepository1: TcxStyleRepository;
|
||
cxStyle1: TcxStyle;
|
||
cxStyleRepository2: TcxStyleRepository;
|
||
cxStyle2: TcxStyle;
|
||
cxSplitter1: TcxSplitter;
|
||
ToolBar2: TToolBar;
|
||
TSH: TToolButton;
|
||
ToolBar1: TToolBar;
|
||
adoqueryPicture: TADOQuery;
|
||
ScrollBox2: TScrollBox;
|
||
THB: TToolButton;
|
||
ToolButton1: TToolButton;
|
||
TGB: TToolButton;
|
||
ADOQuery1: TADOQuery;
|
||
cxDBTreeList1: TcxDBTreeList;
|
||
cxDBTreeList1cxDBTreeListColumn2: TcxDBTreeListColumn;
|
||
procedure FormCreate(Sender: TObject);
|
||
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
||
procedure FormShow(Sender: TObject);
|
||
procedure TPBLBClick(Sender: TObject);
|
||
procedure ToolButton1Click(Sender: TObject);
|
||
procedure cxDBTreeList1Click(Sender: TObject);
|
||
procedure TSHClick(Sender: TObject);
|
||
procedure THBClick(Sender: TObject);
|
||
procedure FormDestroy(Sender: TObject);
|
||
procedure TGBClick(Sender: TObject);
|
||
private
|
||
FBPID,FCPID,FCPNo,FCPName:string;
|
||
procedure InitGrid();
|
||
procedure SaveData();
|
||
procedure initTree();
|
||
{ Private declarations }
|
||
public
|
||
flag,flagname,snote,MainType,FGYName,Fint,canshu1:string;
|
||
fnote,fnote1,forderno,fZdyFlag,ViewFlag,fHelpType:Boolean;
|
||
PPSTE:integer;
|
||
procedure initimageSH();
|
||
{ Public declarations }
|
||
end;
|
||
var
|
||
frmBPZDY_TJHXK: TfrmBPZDY_TJHXK;
|
||
Mach: array of TfrmSLT_PBSK;
|
||
Mach1: array of TfrmSLT_TJHX;
|
||
implementation
|
||
uses
|
||
U_DataLink,U_Fun10,U_BPZdy_SH, U_BPZdy_HXK,U_CPTypePB,U_FileUp_TP,U_FileUp,U_FileUp_PB,U_FileUp_TPSH,U_SLT_BF1;
|
||
|
||
{$R *.dfm}
|
||
procedure TfrmBPZDY_TJHXK.initTree();
|
||
begin
|
||
with ADOQueryTree do
|
||
begin
|
||
Close;
|
||
SQL.Clear;
|
||
SQL.Add('select *');
|
||
sql.Add(', Case when isnull(CPNo,'''')<>'''' then RTrim(CPNo)+''/''+CPName else CPName end as CP ');
|
||
SQL.Add('from CP_TypeTJ order by CPlevel,CPOrder,CPName');
|
||
Open;
|
||
end;
|
||
SCreateCDS20(ADOQueryTree,Order_Tree);
|
||
SInitCDSData20(ADOQueryTree,Order_Tree);
|
||
cxDBTreeList1.Items[0].Expand(true);
|
||
end;
|
||
|
||
procedure TfrmBPZDY_TJHXK.initimageSH();
|
||
var
|
||
i,j,p,x:integer;
|
||
jpg:TJpegImage;
|
||
myStream: TADOBlobStream;
|
||
FZGao:string;
|
||
begin
|
||
j:=length(Mach1);
|
||
if j>0 then
|
||
begin
|
||
for i:=0 to j-1 do
|
||
begin
|
||
Mach1[i].free;
|
||
end;
|
||
//Finalize(Mach1);
|
||
end;
|
||
SetLength(Mach1, 0);
|
||
try
|
||
with adoqueryPicture do
|
||
begin
|
||
close;
|
||
sql.Clear;
|
||
sql.Add(' select A.TFID,A.WBID,A.FilesOther,B.FileName,C.* from TJ_Base C ');
|
||
sql.Add(' inner join XD_File B on B.XFID=C.XFID');
|
||
SQL.Add(' inner join TP_File A on B.XFID=A.TFID');
|
||
sql.Add(' where C.CPID='+quotedstr(trim(Order_Tree.fieldbyname('CPID').AsString)));
|
||
//ShowMessage(sql.Text);
|
||
open;
|
||
end;
|
||
j:=adoqueryPicture.RecordCount;
|
||
if j<1 then exit;
|
||
adoqueryPicture.DisableControls;
|
||
adoqueryPicture.First;
|
||
SetLength(Mach1, j);
|
||
with adoqueryPicture do
|
||
begin
|
||
First;
|
||
i:=0;
|
||
x:=0;
|
||
p:=0;
|
||
while not eof do
|
||
begin
|
||
jpg:=TJpegImage.Create();
|
||
myStream:=tadoblobstream.Create(tblobfield(adoqueryPicture.fieldbyname('FilesOther')),bmread);
|
||
jpg.LoadFromStream(myStream);
|
||
if i<3*(p+1) then
|
||
begin
|
||
|
||
end
|
||
else
|
||
begin
|
||
p:=p+1;
|
||
end;
|
||
Mach1[i] := TfrmSLT_TJHX.Create(Self);
|
||
Mach1[i].Name:=trim(adoqueryPicture.fieldbyname('TFID').AsString);
|
||
Mach1[i].Parent := ScrollBox2;
|
||
Mach1[I].Left:=0+(x-3*p)*185;
|
||
Mach1[I].Top:=p*143;
|
||
if adoqueryPicture.fieldbyname('TFID').AsString='' then
|
||
begin
|
||
Mach1[I].ColorNo.Text:=inttostr(i+1);
|
||
Mach1[i].XFID.Text:=trim(adoqueryPicture.fieldbyname('XFID').AsString);
|
||
end
|
||
else
|
||
begin
|
||
SCSHDataNew(adoqueryPicture,Mach1[I].Panel1,2);
|
||
end;
|
||
Mach1[I].SH.Caption:=Trim(adoqueryPicture.fieldbyname('ColorNo').AsString);
|
||
Mach1[I].ZW.Caption:=Trim(adoqueryPicture.fieldbyname('ColorName').AsString);
|
||
Mach1[I].YW.Caption:=Trim(adoqueryPicture.fieldbyname('ColorNameEng').AsString);
|
||
if triM(adoqueryPicture.fieldbyname('TFID').AsString)<>'' then
|
||
begin
|
||
Mach1[i].Init(adoqueryPicture.fieldbyname('TFID').AsString,adoqueryPicture.fieldbyname('FileName').AsString,jpg);
|
||
end;
|
||
i:=i+1;
|
||
x:=x+1;
|
||
Next;
|
||
end;
|
||
end;
|
||
adoqueryPicture.EnableControls;
|
||
finally
|
||
jpg.free;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmBPZDY_TJHXK.SaveData();
|
||
begin
|
||
|
||
end;
|
||
|
||
procedure TfrmBPZDY_TJHXK.FormCreate(Sender: TObject);
|
||
begin
|
||
try
|
||
with ADOConnection1 do
|
||
begin
|
||
Connected:=false;
|
||
ConnectionString:=DConString;
|
||
Connected:=true;
|
||
end;
|
||
except;
|
||
frmBPZDY_TJHXK.Free;
|
||
end;
|
||
canshu1:=Trim(DParameters1);
|
||
end;
|
||
|
||
procedure TfrmBPZDY_TJHXK.FormClose(Sender: TObject;
|
||
var Action: TCloseAction);
|
||
begin
|
||
ToolBar1.SetFocus;
|
||
Finalize(Mach1);
|
||
Finalize(Mach);
|
||
Action:=caFree;
|
||
end;
|
||
|
||
procedure TfrmBPZDY_TJHXK.InitGrid();
|
||
begin
|
||
|
||
end;
|
||
|
||
procedure TfrmBPZDY_TJHXK.FormShow(Sender: TObject);
|
||
begin
|
||
initTree();
|
||
initimageSH();
|
||
ToolBar1.Visible:=false;
|
||
ToolButton1.Visible:=False;
|
||
TSH.Visible:=false;
|
||
if canshu1<>'<27><>ѯ' then
|
||
begin
|
||
ToolBar1.Visible:=true;
|
||
ToolButton1.Visible:=true;
|
||
TSH.Visible:=true;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmBPZDY_TJHXK.TPBLBClick(Sender: TObject);
|
||
begin
|
||
frmCPTypePB:=TfrmCPTypePB.Create(self);
|
||
with frmCPTypePB do
|
||
begin
|
||
if ShowModal=1 then
|
||
begin
|
||
|
||
end;
|
||
free;
|
||
end;
|
||
initTree();
|
||
end;
|
||
|
||
procedure TfrmBPZDY_TJHXK.ToolButton1Click(Sender: TObject);
|
||
var
|
||
maxno:string;
|
||
j,i:Integer;
|
||
begin
|
||
ToolBar1.SetFocus;
|
||
with ScrollBox2 do
|
||
begin
|
||
for i:=0 to ScrollBox2.ControlCount-1 do
|
||
begin
|
||
if Controls[i] is TfrmSLT_TJHX then
|
||
begin
|
||
with TfrmSLT_TJHX(Controls[i]).Panel1 do
|
||
begin
|
||
for j:=0 to ControlCount-1 do
|
||
begin
|
||
if Controls[j] is TButton then
|
||
begin
|
||
TButton(Controls[j]).Click;
|
||
end;
|
||
end;
|
||
end;
|
||
end;
|
||
end;
|
||
end;
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>','<27><>ʾ');
|
||
initimageSH();
|
||
end;
|
||
|
||
procedure TfrmBPZDY_TJHXK.cxDBTreeList1Click(Sender: TObject);
|
||
begin
|
||
initimageSH();
|
||
end;
|
||
|
||
procedure TfrmBPZDY_TJHXK.TSHClick(Sender: TObject);
|
||
var FSHID:string;
|
||
begin
|
||
try
|
||
frmFileUp_TPSH:=TfrmFileUp_TPSH.Create(Application);
|
||
with frmFileUp_TPSH do
|
||
begin
|
||
Code.Text:=Trim(Self.Order_Tree.fieldbyname('CPID').AsString); //ɫ<><C9AB><EFBFBD><EFBFBD>SKID
|
||
//CYID:=Trim(Self.Order_Tree.fieldbyname('CPID').AsString);
|
||
FSKID:=Trim(Self.Order_Tree.fieldbyname('CPID').AsString);
|
||
if ShowModal=1 then
|
||
begin
|
||
|
||
end;
|
||
end;
|
||
finally
|
||
frmFileUp_TPSH.Free;
|
||
end;
|
||
with self.ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
SQL.Clear;
|
||
SQL.Add('select * from XD_File A ');
|
||
sql.Add('where A.SKID='''+trim(Self.Order_Tree.fieldbyname('CPID').AsString)+'''');
|
||
SQL.Add(' and not exists (select B.XFID from TJ_Base B where B.XFID=A.XFID)');
|
||
//ShowMessage(sql.text);
|
||
Open;
|
||
end;
|
||
with self.ADOQueryCmd do
|
||
begin
|
||
First;
|
||
while not eof do
|
||
begin
|
||
if GetLSNo(ADOQuery1,FSHID,'TJ','TJ_Base',4,1)=False then
|
||
begin
|
||
Application.MessageBox('ȡͼƬ<CDBC><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
with self.ADOQuery1 do
|
||
begin
|
||
Close;
|
||
SQL.Clear;
|
||
SQL.Add('select * from TJ_Base A ');
|
||
sql.Add('where 1=2');
|
||
Open;
|
||
end;
|
||
with self.ADOQuery1 do
|
||
begin
|
||
append;
|
||
FieldByName('Filler').Value:=Trim(DName);
|
||
FieldByName('SKID').Value:=Trim(FSHID);
|
||
FieldByName('SHID').Value:=Trim(FSHID);
|
||
FieldByName('Valid').Value:='Y';
|
||
FieldByName('XFID').Value:=Trim(Self.ADOQueryCmd.fieldbyname('XFID').AsString);
|
||
FieldByName('CPID').Value:=Trim(Self.Order_Tree.fieldbyname('CPID').AsString);
|
||
FieldByName('WBID').Value:=Trim(Self.Order_Tree.fieldbyname('CPID').AsString);
|
||
post;
|
||
end;
|
||
next;
|
||
end;
|
||
end;
|
||
initimageSH();
|
||
end;
|
||
|
||
procedure TfrmBPZDY_TJHXK.THBClick(Sender: TObject);
|
||
begin
|
||
frmCPType_TJTP:=TfrmCPType_TJTP.Create(self);
|
||
with frmCPType_TJTP do
|
||
begin
|
||
if ShowModal=1 then
|
||
begin
|
||
InitTree();
|
||
end;
|
||
free;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmBPZDY_TJHXK.FormDestroy(Sender: TObject);
|
||
begin
|
||
frmBPZDY_TJHXK:=nil;
|
||
end;
|
||
|
||
procedure TfrmBPZDY_TJHXK.TGBClick(Sender: TObject);
|
||
begin
|
||
ToolBar1.SetFocus;
|
||
Close;
|
||
end;
|
||
|
||
end.
|