745 lines
20 KiB
ObjectPascal
745 lines
20 KiB
ObjectPascal
unit U_ZHCPInPut;
|
||
|
||
interface
|
||
|
||
uses
|
||
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
|
||
cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView,
|
||
cxGridTableView, cxGridDBTableView, cxClasses, cxControls,
|
||
cxGridCustomView, cxGrid, cxMemo, cxRichEdit, ComCtrls, cxContainer,
|
||
cxTextEdit, cxMaskEdit, cxButtonEdit, StdCtrls, ToolWin, DBClient, ADODB,
|
||
ExtCtrls, BtnEdit, cxCalendar,StrUtils, cxDropDownEdit,jpeg,
|
||
IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdFTP, cxPC,
|
||
cxGridCustomPopupMenu, cxGridPopupMenu, cxGroupBox, cxCheckBox,
|
||
RM_Dataset, RM_System, RM_Common, RM_Class, RM_GridReport,IniFiles;
|
||
|
||
type
|
||
TfrmZHCPInPut = class(TForm)
|
||
ToolBar1: TToolBar;
|
||
TBClose: TToolButton;
|
||
ADOTemp: TADOQuery;
|
||
ADOCmd: TADOQuery;
|
||
ADOQuery1: TADOQuery;
|
||
TBSave: TToolButton;
|
||
Label26: TLabel;
|
||
CDS_PRT: TClientDataSet;
|
||
RM1: TRMGridReport;
|
||
Panel3: TPanel;
|
||
Panel6: TPanel;
|
||
Panel5: TPanel;
|
||
Label12: TLabel;
|
||
Label14: TLabel;
|
||
Label15: TLabel;
|
||
Label16: TLabel;
|
||
Label2: TLabel;
|
||
ZIKZ: TEdit;
|
||
ZIMF: TEdit;
|
||
ZICF: TEdit;
|
||
Panel8: TPanel;
|
||
Button1: TButton;
|
||
ODPat: TOpenDialog;
|
||
Image1: TImage;
|
||
IdFTP1: TIdFTP;
|
||
SaveDialog1: TSaveDialog;
|
||
Label1: TLabel;
|
||
Panel66: TPanel;
|
||
Image2: TImage;
|
||
Panel2: TPanel;
|
||
Label3: TLabel;
|
||
Button2: TButton;
|
||
ToolButton1: TToolButton;
|
||
Label4: TLabel;
|
||
ZIID: TEdit;
|
||
adoqueryPicture: TADOQuery;
|
||
Panel1: TPanel;
|
||
Image11: TImage;
|
||
Image22: TImage;
|
||
RMDBMain: TRMDBDataSet;
|
||
Label5: TLabel;
|
||
Edit1: TEdit;
|
||
Label6: TLabel;
|
||
Edit2: TEdit;
|
||
ZIGY: TMemo;
|
||
Label7: TLabel;
|
||
Label8: TLabel;
|
||
ZIName: TEdit;
|
||
procedure TBCloseClick(Sender: TObject);
|
||
procedure FormShow(Sender: TObject);
|
||
procedure TBSaveClick(Sender: TObject);
|
||
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
||
procedure Button1Click(Sender: TObject);
|
||
procedure FormCreate(Sender: TObject);
|
||
procedure Button2Click(Sender: TObject);
|
||
procedure ToolButton1Click(Sender: TObject);
|
||
procedure Image1DblClick(Sender: TObject);
|
||
procedure Image2DblClick(Sender: TObject);
|
||
private
|
||
lstPat,lstPat2:TStringList;
|
||
FangXiang1,FangXiang2:String;
|
||
procedure InitData();
|
||
procedure SaveImage(maxnoWB:String;FIMNO:String);
|
||
procedure ReadINIFile10();
|
||
function SaveData():Boolean;
|
||
{ Private declarations }
|
||
public
|
||
canshu1:String;
|
||
PState,CopyInt:Integer;
|
||
FMainId:String;
|
||
{ Public declarations }
|
||
end;
|
||
|
||
var
|
||
frmZHCPInPut: TfrmZHCPInPut;
|
||
implementation
|
||
uses
|
||
U_DataLink,U_ZDYHelp,U_RTFun,U_ZHCPBigTP;
|
||
|
||
{$R *.dfm}
|
||
|
||
procedure TfrmZHCPInPut.TBCloseClick(Sender: TObject);
|
||
begin
|
||
Close;
|
||
end;
|
||
|
||
procedure TfrmZHCPInPut.InitData();
|
||
var
|
||
jpg:TJpegImage;
|
||
myStream: TADOBlobStream;
|
||
FStr:string;
|
||
begin
|
||
with ADOQuery1 do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add(' select * ');
|
||
sql.Add(' from ZH_CP_Info ');
|
||
sql.Add(' where ZIID='''+Trim(FMainId)+'''');
|
||
Open;
|
||
end;
|
||
SCSHDataNew(ADOQuery1,Panel5,9);
|
||
SCSHDataNew(ADOQuery1,Panel5,2);
|
||
SCSHDataNew(ADOQuery1,Panel3,9);
|
||
with adoqueryPicture do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select * from Image_Info A');
|
||
sql.Add(' inner join Image_File B on A.IMID=B.IMID');
|
||
sql.Add(' and A.WBID='''+Trim(FMainId)+'''');
|
||
sql.Add(' and isnull(A.IMNo,'''')=''<27><><EFBFBD><EFBFBD>'' and A.Valid=''Y'' ');
|
||
Open;
|
||
end;
|
||
if adoqueryPicture.IsEmpty=False then
|
||
begin
|
||
Fstr:=Trim(adoqueryPicture.fieldbyname('ImageName').AsString);
|
||
Edit1.Text:=Copy(FStr,1,Length(FStr)-4);
|
||
jpg:=TJpegImage.Create();
|
||
myStream:=tadoblobstream.Create(tblobfield(adoqueryPicture.fieldbyname('ImageFile')),bmread);
|
||
jpg.LoadFromStream(myStream);
|
||
Image1.Picture.Assign(jpg);
|
||
Image1.Width:=adoqueryPicture.fieldbyname('ImageWidth').Value;
|
||
Image1.Height:=adoqueryPicture.fieldbyname('ImageHeight').Value;
|
||
if Trim(adoqueryPicture.fieldbyname('FangXiang').AsString)='<27><>ֱ' then
|
||
begin
|
||
Image1.Top:=1;
|
||
Image1.Left:=Round((Panel6.Width-Image1.Width)/2);
|
||
end else
|
||
begin
|
||
Image1.Left:=1;
|
||
Image1.Top:=Round((Panel6.Height-Image1.Height)/2);
|
||
end;
|
||
Image1.Visible:=True;
|
||
end;
|
||
with adoqueryPicture do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select * from Image_Info A');
|
||
sql.Add(' inner join Image_File B on A.IMID=B.IMID');
|
||
sql.Add(' and A.WBID='''+Trim(FMainId)+'''');
|
||
sql.Add(' and isnull(A.IMNo,'''')=''ͼƬ'' and A.Valid=''Y'' ');
|
||
Open;
|
||
end;
|
||
if adoqueryPicture.IsEmpty=False then
|
||
begin
|
||
Fstr:=Trim(adoqueryPicture.fieldbyname('ImageName').AsString);
|
||
Edit2.Text:=Copy(FStr,1,Length(FStr)-4);
|
||
jpg:=TJpegImage.Create();
|
||
myStream:=tadoblobstream.Create(tblobfield(adoqueryPicture.fieldbyname('ImageFile')),bmread);
|
||
jpg.LoadFromStream(myStream);
|
||
Image2.Picture.Assign(jpg);
|
||
Image2.Width:=adoqueryPicture.fieldbyname('ImageWidth').Value;
|
||
Image2.Height:=adoqueryPicture.fieldbyname('ImageHeight').Value;
|
||
if Trim(adoqueryPicture.fieldbyname('FangXiang').AsString)='<27><>ֱ' then
|
||
begin
|
||
Image2.Top:=1;
|
||
Image2.Left:=Round((Panel66.Width-Image2.Width)/2);
|
||
end else
|
||
begin
|
||
Image2.Left:=1;
|
||
Image2.Top:=Round((Panel66.Height-Image2.Height)/2);
|
||
end;
|
||
Image2.Visible:=True;
|
||
end;
|
||
if TBSave.Visible=False then
|
||
begin
|
||
Button1.Visible:=False;
|
||
Button2.Visible:=False;
|
||
ZIMF.Color:=ZIID.Color;
|
||
ZIKZ.Color:=ZIID.Color;
|
||
ZICF.Color:=ZIID.Color;
|
||
ZIName.Color:=ZIID.Color;
|
||
ZIGY.Color:=ZIID.Color;
|
||
end;
|
||
end;
|
||
|
||
|
||
|
||
procedure TfrmZHCPInPut.FormShow(Sender: TObject);
|
||
begin
|
||
InitData();
|
||
end;
|
||
|
||
function TfrmZHCPInPut.SaveData():Boolean;
|
||
var
|
||
maxno:String;
|
||
begin
|
||
Result:=False;
|
||
try
|
||
ADOCmd.Connection.BeginTrans;
|
||
///<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
if Trim(FMainId)='' then
|
||
begin
|
||
if GetLSNoHZ(ADOCmd,maxno,'Y','ZH_CP_Info',3,1,1)=False then
|
||
begin
|
||
ADOCmd.Connection.RollbackTrans;
|
||
Application.MessageBox('ȡ<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
end else
|
||
begin
|
||
maxno:=Trim(FMainId);
|
||
end;
|
||
with ADOCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
SQL.Add('select * from ZH_CP_Info where ZIId='''+Trim(maxno)+'''');
|
||
Open;
|
||
end;
|
||
with ADOCmd do
|
||
begin
|
||
if Trim(FMainId)='' then
|
||
begin
|
||
Append;
|
||
end
|
||
else begin
|
||
Edit;
|
||
end;
|
||
FieldByName('ZIId').Value:=Trim(maxno);
|
||
if Trim(FMainId)='' then
|
||
begin
|
||
FieldByName('Filler').Value:=Trim(DName);
|
||
FieldByName('FillerCode').Value:=Trim(DCode);
|
||
FieldByName('Valid').Value:='Y';
|
||
FieldByName('ZIDate').Value:=SGetServerDate(ADOTemp);
|
||
end else
|
||
begin
|
||
FieldByName('Editer').Value:=Trim(DName);
|
||
FieldByName('EditerCode').Value:=Trim(DCode);
|
||
FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp);
|
||
end;
|
||
RTSetsavedata(ADOCmd,'ZH_CP_Info',Panel5,2);
|
||
RTSetsavedata(ADOCmd,'ZH_CP_Info',Panel3,9);
|
||
Post;
|
||
end;
|
||
FMainId:=Trim(maxno);
|
||
if Trim(Image1.Hint)<>'' then
|
||
begin
|
||
SaveImage(maxno,'<27><><EFBFBD><EFBFBD>');
|
||
end;
|
||
if Trim(Image2.Hint)<>'' then
|
||
begin
|
||
SaveImage(maxno,'ͼƬ');
|
||
end;
|
||
ADOCmd.Connection.CommitTrans;
|
||
FMainId:=Trim(maxno);
|
||
Result:=True;
|
||
except
|
||
Result:=False;
|
||
ADOCmd.Connection.RollbackTrans;
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ',0);
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmZHCPInPut.TBSaveClick(Sender: TObject);
|
||
begin
|
||
ToolBar1.SetFocus;
|
||
if Trim(ZIMF.Text)='' then
|
||
begin
|
||
Application.MessageBox('<27>ŷ<EFBFBD><C5B7><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
if Trim(ZIKZ.Text)='' then
|
||
begin
|
||
Application.MessageBox('<27><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
if Trim(ZICF.Text)='' then
|
||
begin
|
||
Application.MessageBox('<27>ɷݲ<C9B7><DDB2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
Panel1.Visible:=True;
|
||
Panel1.Refresh;
|
||
if SaveData() then
|
||
begin
|
||
Panel1.Visible:=False;
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>','<27><>ʾ',0);
|
||
ModalResult:=1;
|
||
end;
|
||
end;
|
||
procedure TfrmZHCPInPut.ReadINIFile10();
|
||
var
|
||
programIni:Tinifile; //<2F><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>
|
||
FileName:string;
|
||
begin
|
||
FileName:=ExtractFilePath(Paramstr(0))+'SYSTEMSET.INI';
|
||
programIni:=Tinifile.create(FileName);
|
||
server:=programIni.ReadString('SERVER','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ','127.0.0.1');
|
||
programIni.Free;
|
||
end;
|
||
procedure TfrmZHCPInPut.SaveImage(maxnoWB:string;FIMNO:String);
|
||
var
|
||
ImagePath,ImagName,MaxNo,MaxNoFile:String;
|
||
AJpeg:TJPEGImage;
|
||
myStream:TADOBlobStream;
|
||
begin
|
||
try
|
||
if Trim(FIMNO)='<27><><EFBFBD><EFBFBD>' then
|
||
begin
|
||
ImagePath:=Image1.Hint;
|
||
ImagName:=Image1.Hint;
|
||
end else
|
||
if Trim(FIMNO)='ͼƬ' then
|
||
begin
|
||
ImagePath:=Image2.Hint;
|
||
ImagName:=Image2.Hint;
|
||
end;
|
||
AJpeg:=TJpegImage.Create();
|
||
with ADOCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
SQL.Add('UPdate Image_File Set Valid=''N'' ');
|
||
sql.Add(' where IMID=(select IMID from Image_Info');
|
||
Sql.Add('where WBID='''+Trim(maxnoWB)+''' and Valid=''Y'' and IMNO='''+Trim(FIMNO)+''')');
|
||
ExecSQL;
|
||
end;
|
||
with ADOCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
SQL.Add('UPdate Image_Info Set Editer='''+Trim(DName)+''',EditerCode='''+Trim(DCode)+''',EditTime=getdate()');
|
||
sql.Add(',Valid=''N'' where WBID='''+Trim(maxnoWB)+''' and Valid=''Y'' and IMNO='''+Trim(FIMNO)+''' ');
|
||
ExecSQL;
|
||
end;
|
||
if GetLSNo(ADOCmd,MaxNo,'IM','Image_Info',4,1)=False then
|
||
begin
|
||
ADOCmd.Connection.RollbackTrans;
|
||
Application.MessageBox('ȡͼƬ<CDBC><C6AC>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
with ADOCmd do
|
||
begin
|
||
Close;
|
||
SQL.Clear;
|
||
SQL.Add('select * from Image_Info where 1=2');
|
||
Open;
|
||
end;
|
||
with ADOCmd do
|
||
begin
|
||
Append;
|
||
FieldByName('IMID').Value:=Trim(MaxNo);
|
||
FieldByName('IMNo').Value:=FIMNO;
|
||
FieldByName('WBID').Value:=Trim(maxnoWB);
|
||
FieldByName('ImageName').Value:=Trim(ImagName);
|
||
FieldByName('ImagePath').Value:=Trim(MaxNo)+Trim(ImagName);
|
||
FieldByName('ImageDate').Value:=SGetServerDate(ADOTemp);
|
||
Fieldbyname('ImageType').value:=Trim('YP');
|
||
Fieldbyname('Valid').value:=Trim('Y');
|
||
Post;
|
||
end;
|
||
if GetLSNo(ADOCmd,MaxNoFile,'IF','Image_File',4,1)=False then
|
||
begin
|
||
ADOCmd.Connection.RollbackTrans;
|
||
Application.MessageBox('ȡͼƬ<CDBC>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
with ADOCmd do
|
||
begin
|
||
close;
|
||
sql.Clear;
|
||
sql.Add(' select * from Image_File where 1=2');
|
||
open;
|
||
end;
|
||
with ADOCmd do
|
||
begin
|
||
Append;
|
||
FieldByName('IMID').Value:=Trim(MaxNo);
|
||
FieldByName('IFID').Value:=Trim(MaxNoFile);
|
||
Fieldbyname('Valid').value:=Trim('Y');
|
||
if Trim(FIMNO)='<27><><EFBFBD><EFBFBD>' then
|
||
begin
|
||
FieldByName('ImageWidth').Value:=Image1.Width;
|
||
FieldByName('ImageHeight').Value:=Image1.Height;
|
||
FieldByName('FangXiang').Value:=FangXiang1;
|
||
end else
|
||
if Trim(FIMNO)='ͼƬ' then
|
||
begin
|
||
FieldByName('ImageWidth').Value:=Image2.Width;
|
||
FieldByName('ImageHeight').Value:=Image2.Height;
|
||
FieldByName('FangXiang').Value:=FangXiang2;
|
||
end;
|
||
FieldByName('IFType').Value:='С';
|
||
myStream := TADOBlobStream.Create(TBlobField(ADOCmd.FieldByName('ImageFile')), bmWrite);
|
||
if Trim(FIMNO)='<27><><EFBFBD><EFBFBD>' then
|
||
begin
|
||
AJpeg.Assign(Image1.Picture.Graphic);
|
||
end else
|
||
if Trim(FIMNO)='ͼƬ' then
|
||
begin
|
||
AJpeg.Assign(Image2.Picture.Graphic);
|
||
end;
|
||
AJpeg.SaveToStream(myStream);
|
||
myStream.Free;
|
||
Post;
|
||
end;
|
||
with ADOCmd do
|
||
begin
|
||
Append;
|
||
FieldByName('IMID').Value:=Trim(MaxNo);
|
||
FieldByName('IFID').Value:=Trim(MaxNoFile)+'D';
|
||
Fieldbyname('Valid').value:=Trim('Y');
|
||
if Trim(FIMNO)='<27><><EFBFBD><EFBFBD>' then
|
||
begin
|
||
FieldByName('ImageWidth').Value:=Image11.Width;
|
||
FieldByName('ImageHeight').Value:=Image11.Height;
|
||
FieldByName('FangXiang').Value:=FangXiang1;
|
||
end else
|
||
if Trim(FIMNO)='ͼƬ' then
|
||
begin
|
||
FieldByName('ImageWidth').Value:=Image22.Width;
|
||
FieldByName('ImageHeight').Value:=Image22.Height;
|
||
FieldByName('FangXiang').Value:=FangXiang2;
|
||
end;
|
||
FieldByName('IFType').Value:='<27><>';
|
||
myStream := TADOBlobStream.Create(TBlobField(ADOCmd.FieldByName('ImageFile')), bmWrite);
|
||
if Trim(FIMNO)='<27><><EFBFBD><EFBFBD>' then
|
||
begin
|
||
AJpeg.Assign(Image11.Picture.Graphic);
|
||
end else
|
||
if Trim(FIMNO)='ͼƬ' then
|
||
begin
|
||
AJpeg.Assign(Image22.Picture.Graphic);
|
||
end;
|
||
AJpeg.SaveToStream(myStream);
|
||
myStream.Free;
|
||
Post;
|
||
end;
|
||
try
|
||
ReadINIFile10();
|
||
server:=ReadINIFileStr('SYSTEMSET.INI','SERVER','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ','127.0.0.1');
|
||
IdFTP1.Host :=server;//PicSvr;
|
||
IdFTP1.Username := 'three';
|
||
IdFTP1.Password := '641010';
|
||
IdFTP1.Connect();
|
||
except
|
||
IdFTP1.Quit;
|
||
Application.MessageBox('<27><EFBFBD><DEB7><EFBFBD><EFBFBD>ӵ<EFBFBD><D3B5>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>飡', '<27><>ʾ', MB_ICONWARNING);
|
||
Exit;
|
||
end;
|
||
if IdFTP1.Connected then
|
||
begin
|
||
if Trim(FIMNO)='<27><><EFBFBD><EFBFBD>' then
|
||
begin
|
||
IdFTP1.Put(lstPat[0], 'YP'+'\'+Trim(MaxNo)+Trim(ImagName));
|
||
end else
|
||
if Trim(FIMNO)='ͼƬ' then
|
||
begin
|
||
IdFTP1.Put(lstPat2[0], 'YP'+'\'+Trim(MaxNo)+Trim(ImagName));
|
||
end;
|
||
end;
|
||
if IdFTP1.Connected then IdFTP1.Quit;
|
||
except
|
||
ADOCmd.Connection.RollbackTrans;
|
||
Application.MessageBox('ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ',0);
|
||
end;
|
||
end;
|
||
|
||
Procedure TfrmZHCPInPut.FormClose(Sender: TObject;
|
||
var Action: TCloseAction);
|
||
begin
|
||
ModalResult:=1;
|
||
end;
|
||
|
||
|
||
procedure TfrmZHCPInPut.Button1Click(Sender: TObject);
|
||
var
|
||
AJpeg:TJPEGImage;
|
||
Bitmap,Bitmap11: TBitmap;
|
||
ARect,ARect11: TRect;
|
||
TPHeight, AHeightOffset: Integer;
|
||
TPWidth, AWidthOffset: Integer;
|
||
WZShuiPing,WZChuiZhi:Integer;
|
||
WZFlag:String;
|
||
begin
|
||
lstPat.Clear;
|
||
if ODPat.Execute then
|
||
begin
|
||
lstPat.AddStrings(ODPat.Files);
|
||
end else
|
||
begin
|
||
Exit;
|
||
end;
|
||
if lstPat.Count>1 then
|
||
begin
|
||
lstPat.Clear;
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>ͼƬ!','<27><>ʾ',0);
|
||
Exit;
|
||
end else
|
||
if lstPat.Count<1 then
|
||
begin
|
||
Exit;
|
||
end;
|
||
Panel1.Visible:=True;
|
||
Panel1.Refresh;
|
||
Panel6.Color:=clBtnFace;
|
||
Panel6.Hint:='';
|
||
AJpeg:=TJpegImage.Create();
|
||
AJpeg.LoadFromFile(ExtractFileName(ODPat.FileName));
|
||
Image1.Hint:=ExtractFileName(ODPat.FileName);
|
||
TPWidth:=AJpeg.Width;
|
||
TPHeight:=AJpeg.Height;
|
||
Bitmap := TBitmap.Create;
|
||
Bitmap11 := TBitmap.Create;
|
||
Bitmap.Width :=Panel6.Width-2;
|
||
Bitmap.Height :=Round(Panel6.Width/TPWidth*TPHeight);
|
||
if Bitmap.Height>Panel6.Height then
|
||
begin
|
||
WZFlag:='<27><>ֱ';
|
||
Bitmap.Height:=Panel6.Height-2;
|
||
Bitmap.Width :=Round(Panel6.Height/TPHeight*TPWidth);
|
||
end;
|
||
Bitmap11.Width:=Bitmap.Width*2;
|
||
Bitmap11.Height:=Bitmap.Height*2;
|
||
Bitmap.Canvas.FillRect(Rect(0, 0, Bitmap.Width, Bitmap.Height));
|
||
ARect := Rect(0, 0, Bitmap.Width, Bitmap.Height);
|
||
Bitmap.Canvas.StretchDraw(ARect, AJPeg);
|
||
Image1.Height:=Bitmap.Height;
|
||
Image1.Width:=Bitmap.Width;
|
||
Image1.Picture.Assign(BitMap);
|
||
if Trim(WZFlag)='<27><>ֱ' then
|
||
begin
|
||
Image1.Top:=1;
|
||
Image1.Left:=Round((Panel6.Width-Image1.Width)/2);
|
||
end else
|
||
begin
|
||
Image1.Left:=1;
|
||
Image1.Top:=Round((Panel6.Height-Image1.Height)/2);
|
||
end;
|
||
FangXiang1:=WZFlag;
|
||
Image1.Visible:=True;
|
||
Bitmap11.Canvas.FillRect(Rect(0, 0, Bitmap11.Width, Bitmap11.Height));
|
||
ARect11 := Rect(0, 0, Bitmap11.Width, Bitmap11.Height);
|
||
Bitmap11.Canvas.StretchDraw(ARect11, AJPeg);
|
||
Image11.Height:=Bitmap11.Height;
|
||
Image11.Width:=Bitmap11.Width;
|
||
Image11.Picture.Assign(BitMap11);
|
||
// Image11.Visible:=True;
|
||
Edit1.Text:=Copy(Image1.Hint,1,Length(Image1.Hint)-4);
|
||
ZIGY.Text:=Edit1.Text;
|
||
Panel1.Visible:=False;
|
||
end;
|
||
procedure TfrmZHCPInPut.FormCreate(Sender: TObject);
|
||
begin
|
||
lstPat := TStringList.Create;
|
||
lstPat2 := TStringList.Create;
|
||
end;
|
||
|
||
procedure TfrmZHCPInPut.Button2Click(Sender: TObject);
|
||
var
|
||
AJpeg:TJPEGImage;
|
||
Bitmap,Bitmap22: TBitmap;
|
||
ARect,ARect22: TRect;
|
||
TPHeight, AHeightOffset: Integer;
|
||
TPWidth, AWidthOffset: Integer;
|
||
WZShuiPing,WZChuiZhi:Integer;
|
||
WZFlag:String;
|
||
begin
|
||
lstPat2.Clear;
|
||
if ODPat.Execute then
|
||
begin
|
||
lstPat2.AddStrings(ODPat.Files);
|
||
end else
|
||
begin
|
||
Exit;
|
||
end;
|
||
if lstPat2.Count>1 then
|
||
begin
|
||
lstPat2.Clear;
|
||
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD>ͼƬ!','<27><>ʾ',0);
|
||
Exit;
|
||
end else
|
||
if lstPat2.Count<1 then
|
||
begin
|
||
Exit;
|
||
end;
|
||
Panel1.Visible:=True;
|
||
Panel1.Refresh;
|
||
AJpeg:=TJpegImage.Create();
|
||
AJpeg.LoadFromFile(ExtractFileName(ODPat.FileName));
|
||
Image2.Hint:=ExtractFileName(ODPat.FileName);
|
||
TPWidth:=AJpeg.Width;
|
||
TPHeight:=AJpeg.Height;
|
||
Bitmap := TBitmap.Create;
|
||
Bitmap22 := TBitmap.Create;
|
||
Bitmap.Width :=Panel66.Width-2;
|
||
Bitmap.Height :=Round(Panel66.Width/TPWidth*TPHeight);
|
||
if Bitmap.Height>Panel66.Height then
|
||
begin
|
||
WZFlag:='<27><>ֱ';
|
||
Bitmap.Height:=Panel66.Height-2;
|
||
Bitmap.Width :=Round(Panel66.Height/TPHeight*TPWidth);
|
||
end;
|
||
Bitmap22.Width:=Bitmap.Width*2;
|
||
Bitmap22.Height:=Bitmap.Height*2;
|
||
Bitmap.Canvas.FillRect(Rect(0, 0, Bitmap.Width, Bitmap.Height));
|
||
ARect := Rect(0, 0, Bitmap.Width, Bitmap.Height);
|
||
Bitmap.Canvas.StretchDraw(ARect, AJPeg);
|
||
Image2.Height:=Bitmap.Height;
|
||
Image2.Width:=Bitmap.Width;
|
||
Image2.Picture.Assign(BitMap);
|
||
if Trim(WZFlag)='<27><>ֱ' then
|
||
begin
|
||
Image2.Top:=1;
|
||
Image2.Left:=Round((Panel66.Width-Image2.Width)/2);
|
||
end else
|
||
begin
|
||
Image2.Left:=1;
|
||
Image2.Top:=Round((Panel66.Height-Image2.Height)/2);
|
||
end;
|
||
FangXiang2:=WZFlag;
|
||
Bitmap22.Canvas.FillRect(Rect(0, 0, Bitmap22.Width, Bitmap22.Height));
|
||
ARect22 := Rect(0, 0, Bitmap22.Width, Bitmap22.Height);
|
||
Bitmap22.Canvas.StretchDraw(ARect22, AJPeg);
|
||
Image22.Height:=Bitmap22.Height;
|
||
Image22.Width:=Bitmap22.Width;
|
||
Image22.Picture.Assign(Bitmap22);
|
||
Image2.Visible:=True;
|
||
Edit2.Text:=Copy(Image2.Hint,1,Length(Image2.Hint)-4);
|
||
ZIName.Text:=Edit2.Text;
|
||
Panel1.Visible:=False;
|
||
end;
|
||
procedure TfrmZHCPInPut.ToolButton1Click(Sender: TObject);
|
||
var
|
||
fPrintFile,Txt,fImagePath:string;
|
||
i,j:Integer;
|
||
Moudle: THandle;
|
||
Makebar:TMakebar;
|
||
Mixtext:TMixtext;
|
||
begin
|
||
if Trim(FMainId)='' then
|
||
begin
|
||
Application.MessageBox('û<>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD>ܴ<EFBFBD>ӡ!','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
fPrintFile:= ExtractFilePath(Application.ExeName) + 'Report\չ<><D5B9><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7>ǩ85.rmf';
|
||
if FileExists(fPrintFile)=False then
|
||
begin
|
||
Application.MessageBox(PChar('û<><C3BB><EFBFBD><EFBFBD>'+ExtractFilePath(Application.ExeName)+'Report\չ<><D5B9><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7>ǩ85.rmf'),'<27><>ʾ',0);
|
||
exit;
|
||
end;
|
||
with ADOTemp do
|
||
begin
|
||
Close;
|
||
SQL.Clear;
|
||
sql.Add(' select A.* ,C.ImageFile');
|
||
sql.Add(' from ZH_CP_Info A');
|
||
sql.Add(' inner join Image_Info B on A.ZIID=B.WBID');
|
||
sql.Add(' inner join Image_File C on B.IMID=C.IMID');
|
||
sql.Add(' where A.ZIID='''+Trim(FMainId)+'''');
|
||
sql.Add(' and B.IMNO=''ͼƬ'' and A.Valid=''Y'' and B.Valid=''Y'' and C.Valid=''Y'' ');
|
||
Open;
|
||
end;
|
||
SCreateCDS20(ADOTemp,CDS_PRT);
|
||
SInitCDSData20(ADOTemp,CDS_PRT);
|
||
try
|
||
Moudle:=LoadLibrary('MakeQRBarcode.dll');
|
||
@Makebar:=GetProcAddress(Moudle,'Make');
|
||
@Mixtext:=GetProcAddress(Moudle,'MixText');
|
||
Txt:=Trim(FMainId);
|
||
fImagePath:=ExtractFilePath(Application.ExeName)+'image\temp.bmp';
|
||
if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName)+'image')) then
|
||
CreateDirectory(pchar(ExtractFilePath(Application.ExeName)+'image'),nil);
|
||
if FileExists(fImagePath) then DeleteFile(fImagePath);
|
||
Makebar(pchar(Txt),Length(Txt),3,3,0,PChar(fImagePath),3);
|
||
except
|
||
application.MessageBox('<27><>ά<EFBFBD><CEAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',MB_ICONERROR);
|
||
exit;
|
||
end;
|
||
RMVariables['QRBARCODE']:=fImagePath;
|
||
RM1.LoadFromFile(fPrintFile);
|
||
//RM1.ShowReport;
|
||
RM1.PrintReport;
|
||
end;
|
||
|
||
procedure TfrmZHCPInPut.Image1DblClick(Sender: TObject);
|
||
begin
|
||
if Trim(FMainId)='' then
|
||
begin
|
||
Application.MessageBox('û<>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD>ܲ鿴<DCB2><E9BFB4>ͼ!','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
try
|
||
frmZHCPBigTP:=TfrmZHCPBigTP.Create(Application);
|
||
with frmZHCPBigTP do
|
||
begin
|
||
frmZHCPBigTP.FMainId:=Self.FMainId;
|
||
frmZHCPBigTP.FIMNO:='<27><><EFBFBD><EFBFBD>';
|
||
if ShowModal=1 then
|
||
begin
|
||
|
||
end;
|
||
end;
|
||
finally
|
||
frmZHCPBigTP.Free;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmZHCPInPut.Image2DblClick(Sender: TObject);
|
||
begin
|
||
if Trim(FMainId)='' then
|
||
begin
|
||
Application.MessageBox('û<>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD>ܲ鿴<DCB2><E9BFB4>ͼ!','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
try
|
||
frmZHCPBigTP:=TfrmZHCPBigTP.Create(Application);
|
||
with frmZHCPBigTP do
|
||
begin
|
||
frmZHCPBigTP.FMainId:=Self.FMainId;
|
||
frmZHCPBigTP.FIMNO:='ͼƬ';
|
||
if ShowModal=1 then
|
||
begin
|
||
|
||
end;
|
||
end;
|
||
finally
|
||
frmZHCPBigTP.Free;
|
||
end;
|
||
end;
|
||
|
||
end.
|