This commit is contained in:
“ddf” 2024-07-07 09:35:27 +08:00
commit 61630656e9
2325 changed files with 1582646 additions and 0 deletions

17
.gitignore vendored Normal file
View File

@ -0,0 +1,17 @@
**/layout
**/report
**/实施文件
**/image
**/doc
**/wav
**/__history
**/__recovery
*.dll
*.exe
*.ddp
*.dcu
*.~pas
*.~dfm
*.~ddp
*.~dpr
*.zip

View File

@ -0,0 +1,13 @@
program GetAddRess;
uses
Forms,
U_GetAddRess in 'U_GetAddRess.pas' {Form1};
{$R *.res}
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,468 @@
unit U_ColumnBandSet;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
cxDataStorage, cxEdit, DB, cxDBData, cxCheckBox, ADODB, DBClient,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGridLevel,
cxClasses, cxControls, cxGridCustomView, cxGrid, ComCtrls, ToolWin,
ImgList, cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore,
dxSkinsDefaultPainters, cxNavigator, dxDateRanges, System.ImageList;
type
TfrmColumnBandSet = class(TForm)
ToolBar1: TToolBar;
TBTP: TToolButton;
TBClose: TToolButton;
Tv1: TcxGridDBTableView;
cxGrid1Level1: TcxGridLevel;
cxGrid1: TcxGrid;
v1Column1: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
cxGridDBColumn1: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
v2Column1: TcxGridDBColumn;
ClientDataSet1: TClientDataSet;
ClientDataSet2: TClientDataSet;
DataSource1: TDataSource;
DataSource2: TDataSource;
ADOQuery1: TADOQuery;
ADOQuery2: TADOQuery;
ADOQuery3: TADOQuery;
ADOQuery4: TADOQuery;
ADOLink: TADOConnection;
ThreeImgList: TImageList;
ThreeColorBase: TcxStyleRepository;
SHuangSe: TcxStyle;
SkyBlue: TcxStyle;
Default: TcxStyle;
QHuangSe: TcxStyle;
Red: TcxStyle;
FontBlue: TcxStyle;
TextSHuangSe: TcxStyle;
FonePurple: TcxStyle;
FoneClMaroon: TcxStyle;
FoneRed: TcxStyle;
RowColor: TcxStyle;
handBlack: TcxStyle;
cxBlue: TcxStyle;
FenHongS: TcxStyle;
cxGrid3: TcxGrid;
Tv3: TcxGridDBTableView;
cxGridDBColumn3: TcxGridDBColumn;
cxGridDBColumn4: TcxGridDBColumn;
cxGridDBColumn5: TcxGridDBColumn;
cxGridLevel2: TcxGridLevel;
DSName: TDataSource;
CDSName: TClientDataSet;
ADOQuery5: TADOQuery;
v2Column2: TcxGridDBColumn;
procedure FormDestroy(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormShow(Sender: TObject);
procedure TBTPClick(Sender: TObject);
procedure Tv1CellClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
procedure SCreateCDS200(SADOQry:TADOQuery; mClientDataset:TclientDataSet );
procedure SInitCDSData200(fromADO:TADOQuery;toCDS:TclientDataSet);
function GetLSNo200(ADOQueryTmp:TADOQuery;
var mMaxNo:string;
mFlag:string;
mTable:string;
mlen:integer;
mtype:integer=0):Boolean;
public
MKName:String;
{ Public declarations }
end;
var
frmColumnBandSet: TfrmColumnBandSet;
implementation
uses
U_DataLink;
{$R *.dfm}
procedure TfrmColumnBandSet.FormDestroy(Sender: TObject);
begin
frmColumnBandSet:=nil;
end;
procedure TfrmColumnBandSet.SCreateCDS200(SADOQry:TADOQuery; mClientDataset:TclientDataSet );
var
i:integer;
mfieldName:string;
mSize:integer;
begin
mfieldName:='';
mClientDataset.FieldDefs.Clear;
with SADOQry do
begin
for i:=0 to fieldCount-1 do //
begin
if (Fields[i].DataType=ftString) and (Fields[i].Size=0) then
begin
msize:=1;
end
else
msize:=Fields[i].Size;
mfieldName:=trim(fields[i].FieldName);
mClientDataset.FieldDefs.Add(mfieldName,
Fields[i].DataType,msize);
end;
end;
mClientDataset.FieldDefs.Add('Sflag',ftString,1);
mClientDataset.FieldDefs.Add('Sindex',ftInteger,0);
mClientDataset.FieldDefs.Add('Ssel',ftBoolean,0);
mClientDataset.FieldDefs.Add('SDefNote',ftString,10);
mClientDataset.Close;
mClientDataset.CreateDataSet;
end;
procedure TfrmColumnBandSet.SInitCDSData200(fromADO:TADOQuery;toCDS:TclientDataSet);
var
i:integer;
k:integer;
begin
if fromADO.IsEmpty then exit;
fromADO.first;
K:=1;
try
toCDS.DisableControls;
toCDS.Filtered:=false;
while not fromADO.Eof do
begin
with toCDS do
begin
Append;
for i:=0 to fromADO.FieldCount-1 do
begin
fields[i].value:=fromADO.Fields[i].Value ;
end;
fieldByName('Sflag').AsString :='1';
fieldByName('Sindex').value :=k;
fieldByName('Ssel').value :=false;
inc(k);
Post;
end;
fromADO.Next;
end;
if not toCDS.IsEmpty then
begin
toCDS.First ;
end;
finally
toCDS.EnableControls;
end;
end;
procedure TfrmColumnBandSet.TBCloseClick(Sender: TObject);
begin
Close;
end;
procedure TfrmColumnBandSet.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmColumnBandSet.FormShow(Sender: TObject);
begin
try
ADOQuery1.DisableControls;
with ADOQuery1 do
begin
Close;
sql.Clear;
SQL.Add('select * from SY_User where UserId<>''Admin'' ');
Open;
end;
SCreateCDS200(ADOQuery1,ClientDataSet1);
SInitCDSData200(ADOQuery1,ClientDataSet1);
finally
ADOQuery1.EnableControls;
end;
end;
procedure TfrmColumnBandSet.TBTPClick(Sender: TObject);
var
MaxNo:String;
begin
if ClientDataSet1.IsEmpty then Exit;
if ClientDataSet1.Locate('SSel',True,[])=False then Exit;
try
ADOQuery3.Connection.BeginTrans;
if ClientDataSet1.Locate('SSel',True,[])=True then
begin
with ClientDataSet1 do
begin
First;
while not eof do
begin
if ClientDataSet1.FieldByName('SSel').AsBoolean=True then
begin
with ADOQuery3 do
begin
Close;
sql.Clear;
sql.Add('Delete Table_Column where ');
sql.Add(' Owner='''+Trim(ClientDataSet1.fieldbyname('UserId').AsString)+'''');
ExecSQL;
end;
with ADOQuery3 do
begin
Close;
sql.Clear;
sql.Add('select * from Table_Column where 1<>1 ');
open;
end;
ClientDataSet2.DisableControls;
with ClientDataSet2 do
begin
first;
while not Eof do
begin
with ADOQuery3 do
begin
Append;
if GetLSNo200(ADOQuery4,MaxNo,'CL','Table_Column',4,1)=False then
begin
ADOQuery3.Connection.RollbackTrans;
Application.MessageBox('取最大号失败!','提示',0);
Exit;
end;
FieldByName('TCID').Value:=Trim(MaxNo);
FieldByName('Owner').Value:=Trim(ClientDataSet1.fieldbyname('UserId').AsString);
//SSetSaveDataCDSNew(ADOQuery3,Tv2,ClientDataSet2,'Table_Column',0);
FieldByName('CxTabName').Value:=Trim(ClientDataSet2.fieldbyname('CxTabName').AsString);
FieldByName('CxColName').Value:=Trim(ClientDataSet2.fieldbyname('CxColName').AsString);
if ClientDataSet2.fieldbyname('TCNotVisble').AsBoolean=True then
FieldByName('TCNotVisble').Value:=1
else
FieldByName('TCNotVisble').Value:=0;
FieldByName('ColName').Value:=Trim(ClientDataSet2.fieldbyname('ColName').AsString);
FieldByName('OrderNo').Value:=ClientDataSet2.fieldbyname('OrderNo').Value;
FieldByName('FillTime').Value:=Now;
Post;
end;
Next;
end;
end;
ClientDataSet2.EnableControls;
end;
Next;
end;
end;
if ClientDataSet1.Locate('SSel',True,[])=True then
begin
with ClientDataSet1 do
begin
First;
while not eof do
begin
if ClientDataSet1.FieldByName('SSel').AsBoolean=True then
begin
with ADOQuery3 do
begin
Close;
sql.Clear;
sql.Add(' Delete Table_Name where');
sql.Add(' Owner='''+Trim(ClientDataSet1.fieldbyname('UserId').AsString)+'''');
ExecSQL;
end;
with ADOQuery3 do
begin
Close;
sql.Clear;
sql.Add('select * from Table_Name where 1<>1 ');
open;
end;
CDSName.DisableControls;
with CDSName do
begin
First;
while not eof do
begin
with ADOQuery3 do
begin
Append;
FieldByName('Owner').Value:=Trim(ClientDataSet1.fieldbyname('UserId').AsString);
FieldByName('CxTabName').Value:=Trim(CDSName.fieldbyname('CxTabName').AsString);
if CDSName.fieldbyname('TCNotVisble').AsBoolean=True then
FieldByName('TCNotVisble').Value:=1
else
FieldByName('TCNotVisble').Value:=0;
if CDSName.fieldbyname('InPut').AsBoolean=True then
FieldByName('InPut').Value:=1
else
FieldByName('InPut').Value:=0;
FieldByName('FillTime').Value:=Now;
FieldByName('OrderNo').Value:=CDSName.fieldbyname('OrderNo').Value;
Post;
end;
next;
end;
end;
CDSName.EnableControls;
end;
Next;
end;
end;
end;
end;
ADOQuery3.Connection.CommitTrans;
Application.MessageBox('保存成功!','提示',0);
except
ADOQuery3.Connection.RollbackTrans;
Application.MessageBox('保存失败!','提示',0);
end;
end;
function TfrmColumnBandSet.GetLSNo200(ADOQueryTmp:TADOQuery;
var mMaxNo:string;
mFlag:string;
mTable:string;
mlen:integer;
mtype:integer=0):Boolean;
begin
try
with ADOQueryTmp do
begin
Close;
sql.Clear ;
sql.Add('exec Get_SY_MaxBH ');
sql.Add(' '+quotedStr(mFlag));
sql.Add(','+quotedStr(mTable));
sql.Add(','+intTostr(mlen));
sql.Add(','+intTostr(mtype));
//ShowMessage(SQL.Text);
Open;
if RecordCount>0 then
begin
mMaxNo:=trim(fieldByName('MaxBH').AsString) ;
if mMaxNo<>'' then
result:=true
else
Result:=false;
end
else
begin
result:=false;
end;
end;
if not Result then
application.MessageBox(Pchar('无法生成流水号('+mflag+')'),'提示信息',MB_ICONINFORMATION);
Except
result:=false;
application.MessageBox(Pchar('无法生成流水号('+mflag+')'),'提示信息',MB_ICONINFORMATION);
end;
end;
procedure TfrmColumnBandSet.Tv1CellClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
ADOQuery2.DisableControls;
with ADOQuery2 do
begin
Close;
sql.Clear;
sql.Add('select * from Table_Column where ');
sql.Add(' Owner='''+Trim(ClientDataSet1.fieldbyname('UserId').AsString)+'''');
Open;
end;
if ADOQuery2.IsEmpty=False then
begin
with ADOQuery2 do
begin
Close;
sql.Clear;
sql.Add('select * from Table_Column where ');
sql.Add(' Owner='''+Trim(ClientDataSet1.fieldbyname('UserId').AsString)+'''');
sql.Add(' order by OrderNo ');
Open;
end;
SCreateCDS200(ADOQuery2,ClientDataSet2);
SInitCDSData200(ADOQuery2,ClientDataSet2);
end else
begin
while ClientDataSet2.Locate('TCNotVisble',True,[]) do
begin
with ClientDataSet2 do
begin
Edit;
FieldByName('TCNotVisble').Value:=0;
Post;
end;
end;
end;
ADOQuery2.EnableControls;
ADOQuery5.DisableControls;
with ADOQuery5 do
begin
Close;
sql.Clear;
sql.Add('select * from Table_Name where ');
sql.Add(' Owner='''+Trim(ClientDataSet1.fieldbyname('UserId').AsString)+'''');
Open;
end;
if ADOQuery5.IsEmpty=False then
begin
with ADOQuery5 do
begin
Close;
sql.Clear;
sql.Add('select * from Table_Name where ');
sql.Add(' Owner='''+Trim(ClientDataSet1.fieldbyname('UserId').AsString)+'''');
sql.Add(' order by OrderNo ');
Open;
end;
SCreateCDS200(ADOQuery5,CDSName);
SInitCDSData200(ADOQuery5,CDSName);
end else
begin
while CDSName.Locate('TCNotVisble',True,[]) do
begin
with CDSName do
begin
Edit;
FieldByName('TCNotVisble').Value:=0;
FieldByName('InPut').Value:=0;
Post;
end;
end;
end;
ADOQuery5.EnableControls;
end;
procedure TfrmColumnBandSet.FormCreate(Sender: TObject);
begin
with ADOLink do
begin
if not Connected then
begin
Connected:=false;
ConnectionString:=DConString;
//LoginPrompt:=false;
Connected:=true;
end;
end;
end;
end.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,348 @@
unit U_ColumnSet;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
cxDataStorage, cxEdit, DB, cxDBData, cxCheckBox, ADODB, DBClient,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGridLevel,
cxClasses, cxControls, cxGridCustomView, cxGrid, ComCtrls, ToolWin,
ImgList, cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore,
dxSkinsDefaultPainters, cxNavigator, dxDateRanges, System.ImageList;
type
TfrmColumnSet = class(TForm)
ToolBar1: TToolBar;
TBTP: TToolButton;
TBClose: TToolButton;
Tv1: TcxGridDBTableView;
cxGrid1Level1: TcxGridLevel;
cxGrid1: TcxGrid;
v1Column1: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
cxGridDBColumn1: TcxGridDBColumn;
cxGridDBColumn2: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
v2Column1: TcxGridDBColumn;
ClientDataSet1: TClientDataSet;
ClientDataSet2: TClientDataSet;
DataSource1: TDataSource;
DataSource2: TDataSource;
ADOQuery1: TADOQuery;
ADOQuery2: TADOQuery;
ADOQuery3: TADOQuery;
ADOQuery4: TADOQuery;
ADOLink: TADOConnection;
ThreeImgList: TImageList;
ThreeColorBase: TcxStyleRepository;
SHuangSe: TcxStyle;
SkyBlue: TcxStyle;
Default: TcxStyle;
QHuangSe: TcxStyle;
Red: TcxStyle;
FontBlue: TcxStyle;
TextSHuangSe: TcxStyle;
FonePurple: TcxStyle;
FoneClMaroon: TcxStyle;
FoneRed: TcxStyle;
RowColor: TcxStyle;
handBlack: TcxStyle;
cxBlue: TcxStyle;
FenHongS: TcxStyle;
procedure FormDestroy(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormShow(Sender: TObject);
procedure TBTPClick(Sender: TObject);
procedure Tv1CellClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
procedure SCreateCDS200(SADOQry:TADOQuery; mClientDataset:TclientDataSet );
procedure SInitCDSData200(fromADO:TADOQuery;toCDS:TclientDataSet);
function GetLSNo200(ADOQueryTmp:TADOQuery;
var mMaxNo:string;
mFlag:string;
mTable:string;
mlen:integer;
mtype:integer=0):Boolean;
public
MKName:String;
{ Public declarations }
end;
var
frmColumnSet: TfrmColumnSet;
implementation
uses
U_DataLink;
{$R *.dfm}
procedure TfrmColumnSet.FormDestroy(Sender: TObject);
begin
frmColumnSet:=nil;
end;
procedure TfrmColumnSet.SCreateCDS200(SADOQry:TADOQuery; mClientDataset:TclientDataSet );
var
i:integer;
mfieldName:string;
mSize:integer;
begin
mfieldName:='';
mClientDataset.FieldDefs.Clear;
with SADOQry do
begin
for i:=0 to fieldCount-1 do //
begin
if (Fields[i].DataType=ftString) and (Fields[i].Size=0) then
begin
msize:=1;
end
else
msize:=Fields[i].Size;
mfieldName:=trim(fields[i].FieldName);
mClientDataset.FieldDefs.Add(mfieldName,
Fields[i].DataType,msize);
end;
end;
mClientDataset.FieldDefs.Add('Sflag',ftString,1);
mClientDataset.FieldDefs.Add('Sindex',ftInteger,0);
mClientDataset.FieldDefs.Add('Ssel',ftBoolean,0);
mClientDataset.FieldDefs.Add('SDefNote',ftString,10);
mClientDataset.Close;
mClientDataset.CreateDataSet;
end;
procedure TfrmColumnSet.SInitCDSData200(fromADO:TADOQuery;toCDS:TclientDataSet);
var
i:integer;
k:integer;
begin
if fromADO.IsEmpty then exit;
fromADO.first;
K:=1;
try
toCDS.DisableControls;
toCDS.Filtered:=false;
while not fromADO.Eof do
begin
with toCDS do
begin
Append;
for i:=0 to fromADO.FieldCount-1 do
begin
fields[i].value:=fromADO.Fields[i].Value ;
end;
fieldByName('Sflag').AsString :='1';
fieldByName('Sindex').value :=k;
fieldByName('Ssel').value :=false;
inc(k);
Post;
end;
fromADO.Next;
end;
if not toCDS.IsEmpty then
begin
toCDS.First ;
end;
finally
toCDS.EnableControls;
end;
end;
procedure TfrmColumnSet.TBCloseClick(Sender: TObject);
begin
Close;
end;
procedure TfrmColumnSet.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmColumnSet.FormShow(Sender: TObject);
begin
try
ADOQuery1.DisableControls;
with ADOQuery1 do
begin
Close;
sql.Clear;
SQL.Add('select * from SY_User where UserId<>''Admin'' ');
Open;
end;
SCreateCDS200(ADOQuery1,ClientDataSet1);
SInitCDSData200(ADOQuery1,ClientDataSet1);
finally
ADOQuery1.EnableControls;
end;
end;
procedure TfrmColumnSet.TBTPClick(Sender: TObject);
var
MaxNo:String;
begin
if ClientDataSet1.Locate('SSel',True,[])=False then Exit;
try
ADOQuery3.Connection.BeginTrans;
with ClientDataSet1 do
begin
First;
while not eof do
begin
if ClientDataSet1.FieldByName('SSel').AsBoolean=True then
begin
with ADOQuery3 do
begin
Close;
sql.Clear;
sql.Add('Delete Table_Column where CxTabName='''+Trim(ClientDataSet2.fieldbyname('CxTabName').AsString)+'''');
sql.Add(' and Owner='''+Trim(ClientDataSet1.fieldbyname('UserId').AsString)+'''');
ExecSQL;
end;
with ADOQuery3 do
begin
Close;
sql.Clear;
sql.Add('select * from Table_Column where 1<>1 ');
open;
end;
with ClientDataSet2 do
begin
first;
while not Eof do
begin
with ADOQuery3 do
begin
Append;
if GetLSNo200(ADOQuery4,MaxNo,'CL','Table_Column',4,1)=False then
begin
ADOQuery3.Connection.RollbackTrans;
Application.MessageBox('取最大号失败!','提示',0);
Exit;
end;
FieldByName('TCID').Value:=Trim(MaxNo);
FieldByName('Owner').Value:=Trim(ClientDataSet1.fieldbyname('UserId').AsString);
//SSetSaveDataCDSNew(ADOQuery3,Tv2,ClientDataSet2,'Table_Column',0);
FieldByName('CxTabName').Value:=Trim(ClientDataSet2.fieldbyname('CxTabName').AsString);
FieldByName('CxColName').Value:=Trim(ClientDataSet2.fieldbyname('CxColName').AsString);
FieldByName('TCNotVisble').Value:=ClientDataSet2.fieldbyname('TCNotVisble').Value;
FieldByName('ColName').Value:=Trim(ClientDataSet2.fieldbyname('ColName').AsString);
Post;
end;
Next;
end;
end;
end;
Next;
end;
end;
ADOQuery3.Connection.CommitTrans;
Application.MessageBox('保存成功!','提示',0);
except
ADOQuery3.Connection.RollbackTrans;
Application.MessageBox('保存失败!','提示',0);
end;
end;
function TfrmColumnSet.GetLSNo200(ADOQueryTmp:TADOQuery;
var mMaxNo:string;
mFlag:string;
mTable:string;
mlen:integer;
mtype:integer=0):Boolean;
begin
try
with ADOQueryTmp do
begin
Close;
sql.Clear ;
sql.Add('exec Get_SY_MaxBH ');
sql.Add(' '+quotedStr(mFlag));
sql.Add(','+quotedStr(mTable));
sql.Add(','+intTostr(mlen));
sql.Add(','+intTostr(mtype));
//ShowMessage(SQL.Text);
Open;
if RecordCount>0 then
begin
mMaxNo:=trim(fieldByName('MaxBH').AsString) ;
if mMaxNo<>'' then
result:=true
else
Result:=false;
end
else
begin
result:=false;
end;
end;
if not Result then
application.MessageBox(Pchar('无法生成流水号('+mflag+')'),'提示信息',MB_ICONINFORMATION);
Except
result:=false;
application.MessageBox(Pchar('无法生成流水号('+mflag+')'),'提示信息',MB_ICONINFORMATION);
end;
end;
procedure TfrmColumnSet.Tv1CellClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
ADOQuery2.DisableControls;
with ADOQuery2 do
begin
Close;
sql.Clear;
sql.Add('select * from Table_Column where CxTabName='''+Trim(ClientDataSet2.fieldbyname('CxTabName').AsString)+'''');
sql.Add(' and Owner='''+Trim(ClientDataSet1.fieldbyname('UserId').AsString)+'''');
Open;
end;
if ADOQuery2.IsEmpty=False then
begin
SCreateCDS200(ADOQuery2,ClientDataSet2);
SInitCDSData200(ADOQuery2,ClientDataSet2);
end else
begin
while ClientDataSet2.Locate('TCNotVisble',True,[]) do
begin
with ClientDataSet2 do
begin
Edit;
FieldByName('TCNotVisble').Value:=0;
Post;
end;
end;
end;
ADOQuery2.EnableControls;
end;
procedure TfrmColumnSet.FormCreate(Sender: TObject);
begin
with ADOLink do
begin
if not Connected then
begin
Connected:=false;
ConnectionString:=DConString;
//LoginPrompt:=false;
Connected:=true;
end;
end;
end;
end.

View File

@ -0,0 +1,88 @@
unit U_CompressionFun;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, ToolWin, ShlObj, cxShellCommon, cxControls,
cxContainer, cxShellTreeView, cxShellListView, StdCtrls, BtnEdit,
OleCtnrs, DB, ADODB,ZLib;
procedure CompressionStream(var ASrcStream:TMemoryStream;ACompressionLevel:Integer = 2);
procedure UnCompressionStream(var ASrcStream:TMemoryStream);
implementation
uses
U_iniparam;
////////////////////////////////////////////////////
///////压缩流
////////////////////////////////////////////////////
procedure CompressionStream(var ASrcStream:TMemoryStream;ACompressionLevel:Integer = 2);
var
nDestStream:TMemoryStream;
nTmpStream:TCompressionStream;
nCompressionLevel:TCompressionLevel;
begin
ASrcStream.Position := 0;
nDestStream := TMemoryStream.Create;
try
//级别
case ACompressionLevel of
0:nCompressionLevel := clNone;
1:nCompressionLevel := clFastest;
2:nCompressionLevel := clDefault;
3:nCompressionLevel := clMax;
else
nCompressionLevel := clMax;
end;
//开始压缩
nTmpStream := TCompressionStream.Create(nCompressionLevel,nDestStream);
try
ASrcStream.SaveToStream(nTmpStream);
finally
nTmpStream.Free;//释放后nDestStream才会有数据
end;
ASrcStream.Clear;
ASrcStream.LoadFromStream(nDestStream);
ASrcStream.Position := 0;
finally
nDestStream.Clear;
nDestStream.Free;
end;
end;
////////////////////////////////////////////////////
///////解压缩流
////////////////////////////////////////////////////
procedure UnCompressionStream(var ASrcStream:TMemoryStream);
var
nTmpStream:TDecompressionStream;
nDestStream:TMemoryStream;
nBuf: array[1..512] of Byte;
nSrcCount: integer;
begin
ASrcStream.Position := 0;
nDestStream := TMemoryStream.Create;
nTmpStream := TDecompressionStream.Create(ASrcStream);
try
repeat
//读入实际大小
nSrcCount := nTmpStream.Read(nBuf, SizeOf(nBuf));
if nSrcCount > 0 then
nDestStream.Write(nBuf, nSrcCount);
until (nSrcCount = 0);
ASrcStream.Clear;
ASrcStream.LoadFromStream(nDestStream);
ASrcStream.Position := 0;
finally
nDestStream.Clear;
nDestStream.Free;
nTmpStream.Free;
end;
end;
end.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,312 @@
unit U_DxZDYHelp;
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, cxCheckBox, cxDropDownEdit, cxLookAndFeels,
cxLookAndFeelPainters, dxSkinsCore, dxSkinsDefaultPainters, cxNavigator,
dxDateRanges, System.ImageList;
type
TfrmDxZDYHelp = class(TForm)
TV1: TcxGridDBTableView;
cxGrid1Level1: TcxGridLevel;
cxGrid1: TcxGrid;
V1Code: TcxGridDBColumn;
V1Name: TcxGridDBColumn;
ToolBar1: TToolBar;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
DataSource1: TDataSource;
ClientDataSet1: TClientDataSet;
TBAdd: TToolButton;
TBSave: TToolButton;
TBDel: TToolButton;
TBClose: TToolButton;
ToolButton1: TToolButton;
TBEdit: TToolButton;
V1Note: TcxGridDBColumn;
V1OrderNo: TcxGridDBColumn;
ADOConnection1: TADOConnection;
Panel1: TPanel;
Label1: TLabel;
ZDYName: TEdit;
ThreeImgList: TImageList;
V1Sel: TcxGridDBColumn;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBAddClick(Sender: TObject);
procedure TBSaveClick(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure TBEditClick(Sender: TObject);
procedure TV1CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
procedure ZDYNameChange(Sender: TObject);
private
procedure InitGrid();
{ Private declarations }
public
flag,flagname,snote:string;
fnote,forderno:Boolean;
Mresult:string;
{ Public declarations }
end;
var
frmDxZDYHelp: TfrmDxZDYHelp;
implementation
uses
U_DataLink,U_Fun10, U_ZDYHelp;
{$R *.dfm}
procedure TfrmDxZDYHelp.FormCreate(Sender: TObject);
begin
cxGrid1.Align:=alClient;
with ADOConnection1 do
begin
Connected:=false;
ConnectionString:=DConString;
Connected:=true;
end;
end;
procedure TfrmDxZDYHelp.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=cahide;
end;
procedure TfrmDxZDYHelp.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Close;
sql.Clear;
sql.Add('select * from KH_ZDY where Type='''+flag+'''');
Open;
end;
SCreateCDS20(ADOQueryMain,ClientDataSet1);
SInitCDSData20(ADOQueryMain,ClientDataSet1);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmDxZDYHelp.TBAddClick(Sender: TObject);
begin
v1name.Options.Editing:=true;
//TV1.OptionsData.Editing:=True;
with ClientDataSet1 do
begin
Append;
Post;
end;
end;
procedure TfrmDxZDYHelp.TBSaveClick(Sender: TObject);
var
maxno:string;
begin
if ClientDataSet1.IsEmpty then Exit;
try
ADOQueryCmd.Connection.BeginTrans;
{with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('delete KH_ZDY where Type='''+Trim(Flag)+'''');
SQL.Add('delete KH_ZDY where ZDYNo='''+Trim(Flag)+'''');
sql.Add('insert into KH_ZDY(ZDYNo,ZDYName,Type) select :ZDYNo,:ZDYName,:Type ');
Parameters.ParamByName('ZDYNo').Value:=Trim(flag);
Parameters.ParamByName('ZDYName').Value:=Trim(flagname);
Parameters.ParamByName('Type').Value:='Main';
ExecSQL;
end;}
with ADOQueryCmd do
begin
with ClientDataSet1 do
begin
First;
while not eof do
begin
if Trim(ClientDataSet1.FieldByName('ZDYNO').AsString)='' then
begin
if GetLSNo(ADOQueryTemp,maxno,'SY','KH_ZDY',3,1)=False then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('取最大编号失败!','提示',0);
Exit;
end;
end else
begin
maxno:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString);
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
SQL.Add('delete KH_ZDY where ZDYNO='''+Trim(ClientDataSet1.fieldbyname('ZDYNO').AsString)+'''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from KH_ZDY where 1<>1');
Open;
end;
if Trim(ClientDataSet1.FieldByName('ZDYName').AsString)='' then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('名称不能为空!','提示',0);
Exit;
end;
ADOQueryCmd.Append;
ADOQueryCmd.FieldByName('ZDYNo').Value:=Trim(maxno);
ADOQueryCmd.FieldByName('ZDYName').Value:=ClientDataSet1.fieldbyname('ZDYName').AsString;
ADOQueryCmd.FieldByName('note').Value:=Trim(ClientDataSet1.fieldbyname('note').AsString);
//ADOQueryCmd.FieldByName('orderno').Value:=ClientDataSet1.fieldbyname('Name').AsString;
ADOQueryCmd.FieldByName('Type').Value:=flag;
ADOQueryCmd.FieldByName('valid').Value:='Y';
//ADOQueryCmd.FieldByName('sel').Value:=0;
ADOQueryCmd.Post;
ClientDataSet1.Edit;
ClientDataSet1.FieldByName('ZDYNo').Value:=Trim(maxno);
ClientDataSet1.Post;
Next;
end;
end;
end;
ADOQueryCmd.Connection.CommitTrans;
Application.MessageBox('保存成功!','提示',0);
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('保存失败!','提示',0);
end;
V1Name.Options.Editing:=false;
end;
procedure TfrmDxZDYHelp.TBDelClick(Sender: TObject);
begin
if ClientDataSet1.IsEmpty then Exit;
if (Trim(ClientDataSet1.FieldByName('ZDYNo').AsString)<>'') or
(Trim(ClientDataSet1.FieldByName('ZDYname').AsString)<>'') then
begin
if application.MessageBox('确定要删除吗?','提示信息',1)=2 then exit;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete KH_ZDY where ZDYNo='''+Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString)+'''');
SQL.Add(' and Type='''+Trim(flag)+'''');
ExecSQL;
end;
end;
ClientDataSet1.Delete;
end;
procedure TfrmDxZDYHelp.TBCloseClick(Sender: TObject);
begin
ModalResult:=2;
Close;
end;
procedure TfrmDxZDYHelp.FormShow(Sender: TObject);
var
fsj,fsj1:string;
begin
InitGrid();
fsj:=Trim(flag)+'01';
fsj1:=Trim(flagname)+'01';
{if ClientDataSet1.IsEmpty then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('insert into KH_ZDY(ZDYNo,ZDYname,Type,note)');
sql.Add('select '''+Trim(fsj)+'''');
sql.Add(','''+Trim(fsj1)+'''');
SQL.Add(','''+Trim(flag)+'''');
sql.Add(','''+Trim(snote)+'''');
ExecSQL;
end;
InitGrid();
end;}
frmDxZDYHelp.Caption:=Trim(flagname)+'<'+Trim(flag)+'>';
end;
procedure TfrmDxZDYHelp.ToolButton1Click(Sender: TObject);
var
ftype:string;
i:integer;
begin
i:=0;
with ClientDataSet1 do
begin
Mresult:='';
First;
DisableControls;
while not eof do
begin
if fieldbyname('Ssel').AsBoolean then
begin
if (i=1) and (ftype<>trim(fieldbyname('note').AsString)) then
begin
application.MessageBox('备注信息不同,不能选择!','提示信息',0);
EnableControls;
exit;
end;
Mresult:=Mresult+trim(fieldbyname('zdyname').AsString)+';';
ftype:=trim(fieldbyname('note').AsString);
i:=1;
end;
next;
end;
First;
EnableControls;
end;
ModalResult:=1;
end;
procedure TfrmDxZDYHelp.TBEditClick(Sender: TObject);
begin
v1name.Options.Editing:=true;
// TV1.OptionsData.Editing:=True;
end;
procedure TfrmDxZDYHelp.TV1CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
if v1name.Options.Editing=False then
begin
ToolButton1.Click;
end;
end;
procedure TfrmDxZDYHelp.ZDYNameChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
SCreateCDS20(ADOQueryMain,ClientDataSet1);
SInitCDSData20(ADOQueryMain,ClientDataSet1);
end;
end;
end.

View File

@ -0,0 +1,86 @@
object frmFilterHelp: TfrmFilterHelp
Left = 287
Top = 145
BorderStyle = bsDialog
Caption = #39640#32423#36807#28388
ClientHeight = 507
ClientWidth = 457
Color = clBtnFace
Font.Charset = GB2312_CHARSET
Font.Color = clWindowText
Font.Height = -12
Font.Name = #23435#20307
Font.Style = []
OldCreateOrder = False
PixelsPerInch = 96
TextHeight = 12
object ScrollBox1: TScrollBox
Left = 0
Top = 0
Width = 457
Height = 465
Align = alTop
Color = clSkyBlue
Font.Charset = GB2312_CHARSET
Font.Color = clWindowText
Font.Height = -12
Font.Name = #23435#20307
Font.Style = []
ParentColor = False
ParentFont = False
TabOrder = 0
object Label1: TLabel
Left = 184
Top = 8
Width = 68
Height = 16
Caption = #36807#28388#26465#20214
Font.Charset = ANSI_CHARSET
Font.Color = clRed
Font.Height = -16
Font.Name = #23435#20307
Font.Style = [fsBold]
ParentFont = False
end
object CheckBox1: TCheckBox
Left = 384
Top = 8
Width = 57
Height = 17
Caption = #31934#30830
TabOrder = 0
end
end
object Panel1: TPanel
Left = 0
Top = 465
Width = 457
Height = 43
Align = alTop
BevelInner = bvRaised
BevelOuter = bvLowered
TabOrder = 1
object Button1: TButton
Left = 112
Top = 9
Width = 75
Height = 25
Caption = #30830#23450
TabOrder = 0
OnClick = Button1Click
end
object Button2: TButton
Left = 264
Top = 9
Width = 75
Height = 25
Caption = #20851#38381
TabOrder = 1
OnClick = Button2Click
end
end
object XPManifest1: TXPManifest
Left = 280
Top = 328
end
end

View File

@ -0,0 +1,213 @@
unit U_FilterHelp;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls,cxGridLevel,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses,
cxControls, cxGridCustomView, cxGrid, cxStyles, cxCustomData, cxGraphics,
cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData,StrUtils,ADODB,
XPMan;
type
TfrmFilterHelp = class(TForm)
ScrollBox1: TScrollBox;
Panel1: TPanel;
Button1: TButton;
Button2: TButton;
Label1: TLabel;
CheckBox1: TCheckBox;
XPManifest1: TXPManifest;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
procedure CreateFilers(Tv1:TcxGridDBTableView);
function GSGetFilters():string;
procedure GSQryDofilter(ADOQry:TADOQuery;FilterStr:string);
procedure TcxGridToExcel(mfileName:string;gridName:TcxGrid);
{ Public declarations }
end;
var
frmFilterHelp: TfrmFilterHelp;
implementation
{$R *.dfm}
procedure TfrmFilterHelp.Button1Click(Sender: TObject);
begin
ModalResult:=1
end;
///////////////////////////////////////////////////////////////////
//函数功能利用cxGrid自带的功能导出到excel中
//////////////////////////////////////////////////////////////////
procedure TfrmFilterHelp.TcxGridToExcel(mfileName:string;gridName:TcxGrid);
var
saveDialog:TSaveDialog;
begin
try
saveDialog:=TSaveDialog.Create(nil);
saveDialog.Filter:='xls(*.xls)|*.xls|全部(*.*)|*.*';
saveDialog.Options:=[ofOverwritePrompt];
saveDialog.FileName:=mfileName;
if saveDialog.Execute then
if Assigned(gridName) then
begin
try
// ExportGrid4ToExcel(saveDialog.FileName,gridName);
except
application.MessageBox('创建失败,源文件可能处于编辑状态!','提示信息',0);
exit;
end;
application.MessageBox('成功导出!','提示信息',0);
end
else
application.MessageBox('导出失败!','提示信息',0);
finally
saveDialog.Free;
end;
end;
procedure TfrmFilterHelp.Button2Click(Sender: TObject);
begin
ModalResult:=-1;
end;
procedure TfrmFilterHelp.CreateFilers(Tv1:TcxGridDBTableView);
var
i,j,z,m,FTop,FLeft,Fdiv,FMod:Integer;// mod 余数div商
FLableEdit:TLabeledEdit;
begin
j:=0;
for i:=0 to Tv1.ColumnCount-1 do
begin
m:=0;
if Tv1.Columns[i].Visible=False then Continue;
if not ( (Tv1.DataController.DataSource.DataSet.FieldByName(Tv1.Columns[i].DataBinding.FieldName).DataType=ftBCD) or
(Tv1.DataController.DataSource.DataSet.FieldByName(Tv1.Columns[i].DataBinding.FieldName).DataType=ftString) ) then Continue;
Fdiv:=(j+1) div 3;
FMod:=(j+1) mod 3;
FLableEdit:=TLabeledEdit.Create(Self);
FLableEdit.EditLabel.Caption:=Trim(Tv1.Columns[i].Caption);
FLableEdit.Name:=Trim(Tv1.Columns[i].DataBinding.FieldName);
if Tv1.DataController.DataSource.DataSet.FieldByName(Tv1.Columns[i].DataBinding.FieldName).DataType=ftBCD then
begin
FLableEdit.EditLabel.Caption:=Trim(Tv1.Columns[i].Caption+'始');
FLableEdit.Hint:=Trim(Tv1.Columns[i].DataBinding.FieldName);
FLableEdit.Tag:=1;
end;
FLableEdit.Text:='';
FLableEdit.TabOrder:=j;
FLableEdit.Parent:=ScrollBox1;
if FMod>0 then
FLableEdit.Top:=50*(Fdiv+1)
else
FLableEdit.Top:=50*Fdiv;
if FMod=1 then
FLableEdit.Left:=29
else if FMod=2 then
FLableEdit.Left:=163
else if FMod=0 then
FLableEdit.Left:=305;
if Tv1.DataController.DataSource.DataSet.FieldByName(Tv1.Columns[i].DataBinding.FieldName).DataType=ftBCD then
begin
j:=j+1;
Fdiv:=(j+1) div 3;
FMod:=(j+1) mod 3;
FLableEdit:=TLabeledEdit.Create(Self);
FLableEdit.EditLabel.Caption:=Trim(Tv1.Columns[i].Caption+'止');
FLableEdit.Hint:=Trim(Tv1.Columns[i].DataBinding.FieldName);
FLableEdit.Tag:=2;
FLableEdit.Text:='';
FLableEdit.TabOrder:=j;
FLableEdit.Parent:=ScrollBox1;
if FMod>0 then
FLableEdit.Top:=50*(Fdiv+1)
else
FLableEdit.Top:=50*Fdiv;
if FMod=1 then
FLableEdit.Left:=29
else if FMod=2 then
FLableEdit.Left:=163
else if FMod=0 then
FLableEdit.Left:=305;
end;
j:=j+1;
end;
end;
function TfrmFilterHelp.GSGetFilters():string;
var
i:Integer;
FValue:Double;
begin
Result:='';
with ScrollBox1 do
begin
for i:=0 to ControlCount-1 do
begin
if Controls[i] is TLabel then Continue;
if Controls[i] is TLabeledEdit then
begin
if Trim(TLabeledEdit(Controls[i]).Text)<>'' then
begin
if TLabeledEdit(Controls[i]).Tag>0 then
begin
try
FValue:=StrToFloat(TLabeledEdit(Controls[i]).Text);
except
Application.MessageBox('不能输入非法数字!','提示',0);
Exit;
end;
end;
if TLabeledEdit(Controls[i]).Tag=1 then
begin
Result:=Result+'and '+Controls[i].Hint+'>='+Trim(TLabeledEdit(Controls[i]).Text);
end else
if TLabeledEdit(Controls[i]).Tag=2 then
begin
Result:=Result+'and '+Controls[i].Hint+'<='+Trim(TLabeledEdit(Controls[i]).Text);
end else
begin
if CheckBox1.Checked then
Result:=Result+'and '+Controls[i].Name+'='+QuotedStr(Trim(TLabeledEdit(Controls[i]).Text))
else
Result:=Result+'and '+Controls[i].Name+' like '+QuotedStr('%'+Trim(TLabeledEdit(Controls[i]).Text)+'%');
end;
end;
end;
end;
end;
if Trim(Result)<>'' then
Result:=Trim(RightBStr(Result,Length(Result)-4));
end;
procedure TfrmFilterHelp.GSQryDofilter(ADOQry:TADOQuery;FilterStr:string);
begin
try
ADOQry.DisableControls;
with ADOQry do
begin
if Trim(FilterStr)='' then
begin
Filtered:=False;
end else
begin
Filtered:=False;
Filter:=FilterStr;
Filtered:=True;
end;
end;
finally
ADOQry.EnableControls;
end;
end;
end.

View File

@ -0,0 +1,135 @@
object frmFjList: TfrmFjList
Left = 237
Top = 203
BorderIcons = [biSystemMenu, biMinimize]
Caption = #38468#20214#20449#24687
ClientHeight = 417
ClientWidth = 691
Color = clBtnFace
Font.Charset = GB2312_CHARSET
Font.Color = clWindowText
Font.Height = -12
Font.Name = #23435#20307
Font.Style = []
OldCreateOrder = False
Position = poScreenCenter
OnClose = FormClose
OnCreate = FormCreate
OnDestroy = FormDestroy
OnShow = FormShow
PixelsPerInch = 96
TextHeight = 12
object ListView1: TListView
Left = 0
Top = 0
Width = 540
Height = 417
Align = alClient
Columns = <>
TabOrder = 0
OnDblClick = ListView1DblClick
end
object Panel1: TPanel
Left = 540
Top = 0
Width = 151
Height = 417
Align = alRight
TabOrder = 1
object FileName: TcxButton
Left = 30
Top = 60
Width = 75
Height = 25
Hint = 'Filesother'
Caption = #28155#21152
LookAndFeel.Kind = lfOffice11
TabOrder = 0
OnClick = FileNameClick
end
object cxButton1: TcxButton
Left = 30
Top = 96
Width = 75
Height = 25
Hint = 'Filesother'
Caption = #21024#38500
LookAndFeel.Kind = lfOffice11
TabOrder = 1
OnClick = cxButton1Click
end
object cxButton2: TcxButton
Left = 30
Top = 132
Width = 75
Height = 25
Hint = 'Filesother'
Caption = #20445#23384
LookAndFeel.Kind = lfOffice11
TabOrder = 2
OnClick = cxButton2Click
end
object cxButton3: TcxButton
Left = 30
Top = 172
Width = 75
Height = 25
Hint = 'Filesother'
Caption = #20851#38381
LookAndFeel.Kind = lfOffice11
TabOrder = 3
Visible = False
OnClick = cxButton3Click
end
end
object Panel2: TPanel
Left = 176
Top = 140
Width = 193
Height = 41
BevelInner = bvRaised
BevelOuter = bvLowered
Caption = 'Panel2'
Font.Charset = GB2312_CHARSET
Font.Color = clBlue
Font.Height = -12
Font.Name = #23435#20307
Font.Style = [fsBold]
ParentFont = False
TabOrder = 2
Visible = False
OnDblClick = Panel2DblClick
end
object ADOQueryTmp: TADOQuery
Connection = ADOConnection1
Parameters = <>
Left = 520
Top = 28
end
object ADOQueryCmd: TADOQuery
Connection = ADOConnection1
Parameters = <>
Left = 568
Top = 32
end
object ImageList1: TImageList
Left = 536
Top = 228
end
object IdFTP1: TIdFTP
ConnectTimeout = 0
NATKeepAlive.UseKeepAlive = False
NATKeepAlive.IdleTimeMS = 0
NATKeepAlive.IntervalMS = 0
ProxySettings.ProxyType = fpcmNone
ProxySettings.Port = 0
ReadTimeout = 0
Left = 500
Top = 198
end
object ADOConnection1: TADOConnection
LoginPrompt = False
Left = 532
Top = 240
end
end

View File

@ -0,0 +1,395 @@
unit U_FjList;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, ComCtrls, Menus, cxLookAndFeelPainters, StdCtrls,
cxButtons, DB, ADODB, ImgList,shellapi, IdBaseComponent, IdComponent,
IdTCPConnection, IdTCPClient, IdFTP,strutils, cxGraphics, cxLookAndFeels,
dxSkinsCore, dxSkinsDefaultPainters, IdExplicitTLSClientServerBase,
System.ImageList;
type
TfrmFjList = class(TForm)
ListView1: TListView;
Panel1: TPanel;
FileName: TcxButton;
cxButton1: TcxButton;
cxButton2: TcxButton;
cxButton3: TcxButton;
ADOQueryTmp: TADOQuery;
ADOQueryCmd: TADOQuery;
ImageList1: TImageList;
Panel2: TPanel;
IdFTP1: TIdFTP;
ADOConnection1: TADOConnection;
procedure cxButton3Click(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure FileNameClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure ListView1DblClick(Sender: TObject);
procedure cxButton1Click(Sender: TObject);
procedure cxButton2Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Panel2DblClick(Sender: TObject);
private
procedure InitData();
{ Private declarations }
public
fkeyNO:string;
fType:string;
fId:integer;
fstatus:integer;
{ Public declarations }
end;
var
frmFjList: TfrmFjList;
implementation
uses
U_DataLink,U_Fun10;
{$R *.dfm}
procedure TfrmFjList.InitData();
var
ListItem: TListItem;
Flag: Cardinal;
info: TSHFileInfo;//SHFILEINFOA;
Icon: TIcon;
begin
ListView1.Items.Clear;
try
with adoqueryTmp do
begin
close;
sql.Clear;
sql.Add('select fileName from TP_File ');
sql.Add('where WBID='+quotedstr(trim(fkeyNO)));
sql.Add('and TFType='+quotedstr(trim(fType)));
open;
if not IsEmpty then
begin
while not eof do
begin
with ListView1 do
begin
LargeImages := ImageList1;
Icon := TIcon.Create;
ListItem := Items.Add;
Listitem.Caption := trim(fieldbyname('fileName').AsString);
// Listitem.SubItems.Add(OpenDiaLog.FileName);
Flag := (SHGFI_SMALLICON or SHGFI_ICON or SHGFI_USEFILEATTRIBUTES);
SHGetFileInfo(Pwidechar(trim(fieldbyname('fileName').AsString)), 0, info, Sizeof(info), Flag);
Icon.Handle := info.hIcon;
ImageList1.AddIcon(Icon);
ListItem.ImageIndex := ImageList1.Count - 1;
end;
next;
end;
end;
end;
except
end;
end;
procedure TfrmFjList.cxButton3Click(Sender: TObject);
begin
ADOQueryTmp.Close;
ADOQuerycmd.Close;
ListView1.Items.Free;
ModalResult:=-1;
end;
procedure TfrmFjList.FormDestroy(Sender: TObject);
begin
frmFjList:=nil;
end;
procedure TfrmFjList.FileNameClick(Sender: TObject);
var
OpenDiaLog: TOpenDialog;
fFileName:string;
fFilePath:string;
maxNo:string;
// myStream: TADOBlobStream;
// FJStream : TMemoryStream;
begin
try
OpenDiaLog := TOpenDialog.Create(Self);
if OpenDiaLog.Execute then
begin
fFilePath:=OpenDiaLog.FileName;
fFileName:=ExtractFileName(OpenDiaLog.FileName);
with adoqueryCmd do
begin
close;
sql.Clear;
sql.Add('select TFId from TP_File ');
sql.Add('where WBID<>'+quotedstr(trim(fkeyNO)));
sql.Add('and TFType='+quotedstr(trim(fType)));
sql.Add('and FileName='+quotedstr(trim(fFileName)));
open;
IF not adoqueryCmd.IsEmpty then
begin
application.MessageBox('此附件名称已存在,请修改文件名,继续上传!','提示信息',MB_ICONERROR);
exit;
end;
end;
Panel2.Caption:='正在上传数据,请稍等...';
Panel2.Visible:=true;
application.ProcessMessages;
if GetLSNo(ADOQueryCmd,maxNo,'FJ','TP_File',4,1)=False then
begin
Application.MessageBox('取最大号失败!','提示',0);
Exit;
end;
adoqueryCmd.Connection.BeginTrans;
with adoqueryCmd do
begin
close;
sql.Clear;
sql.Add('delete from TP_File ');
sql.Add('where WBID='+quotedstr(trim(fkeyNO)));
sql.Add('and TFType='+quotedstr(trim(fType)));
sql.Add('and FileName='+quotedstr(trim(fFileName)));
execsql;
end;
try
with adoqueryCmd do
begin
close;
sql.Clear;
sql.Add('select * from TP_File ');
sql.Add('where WBID='+quotedstr(trim(fkeyNO)));
sql.Add('and TFType='+quotedstr(trim(fType)));
sql.Add('and FileName='+quotedstr(trim(fFileName)));
open;
append;
fieldbyname('TFID').Value:=trim(maxNO);
fieldbyname('WBID').Value:=trim(fkeyNO);
fieldbyname('TFType').Value:=trim(fType);
fieldbyname('FileName').Value:=trim(fFileName);
// tblobfield(FieldByName('Filesother')).LoadFromFile(fFilePath);
post;
end;
if fFilePath <> '' then
begin
try
IdFTP1.Host := ReadINIFileStr('SYSTEMSET.INI','SERVER','FTP地址','127.0.0.1');
IdFTP1.Username := 'three';
IdFTP1.Password := '641010';
IdFTP1.Connect();
IdFTP1.Put(fFilePath, 'FJ\' + Trim(fFileName));
IdFTP1.Quit;
except
IdFTP1.Quit;
Application.MessageBox('上传客户图样文件失败,请检查文件服务器!', '提示', MB_ICONWARNING);
end;
end;
IdFTP1.Quit;
Panel2.Visible:=false;
initdata();
finally
// FJStream.Free;
end;
end;
adoqueryCmd.Connection.CommitTrans;
except
adoqueryCmd.Connection.RollbackTrans;
application.MessageBox('附件保存失败!','提示信息',0);
end;
end;
procedure TfrmFjList.FormCreate(Sender: TObject);
begin
with ADOConnection1 do
begin
Connected:=false;
ConnectionString:=DConString;
//ConnectionString:='';
Connected:=true;
end;
ListView1.Align:=alclient;
fstatus:=0;
end;
procedure TfrmFjList.FormShow(Sender: TObject);
begin
IF fstatus=0 then Panel1.Visible:=true
else Panel1.Visible:=false;
initdata();
end;
procedure TfrmFjList.ListView1DblClick(Sender: TObject);
var
sFieldName:string;
fileName:string;
begin
if ListView1.Items.Count<1 THEN EXIT;
if listView1.SelCount<1 then exit;
sFieldName:=leftbstr(ExtractFilePath(Application.ExeName),1)+':\图片查看';
if not DirectoryExists(pchar(sFieldName)) then
CreateDirectory(pchar(sFieldName),nil);
fileName:=ListView1.Selected.Caption;
sFieldName:=sFieldName+'\'+trim(fileName);
try
IdFTP1.Host := ReadINIFileStr('SYSTEMSET.INI','SERVER','FTP地址','127.0.0.1');
IdFTP1.Username := 'three';
IdFTP1.Password := '641010';
IdFTP1.Connect();
except
;
end;
if IdFTP1.Connected then
begin
Panel2.Caption:='正在下载数据,请稍等...';
Panel2.Visible:=true;
application.ProcessMessages;
try
IdFTP1.Get('FJ\'+ Trim(fileName), sFieldName,true, false);
except
Panel2.Visible:=false;
Application.MessageBox('客户图样文件不存在', '提示', MB_ICONWARNING);
IdFTP1.Quit;
Exit;
end;
end
else
begin
Panel2.Visible:=false;
Application.MessageBox('无法连接文件服务器', '提示', MB_ICONWARNING);
IdFTP1.Quit;
Exit;
end;
Panel2.Visible:=false;
if IdFTP1.Connected then IdFTP1.Quit;
ShellExecute(Handle, 'open',PChar(sFieldName),'', '', SW_SHOWNORMAL);
end;
procedure TfrmFjList.cxButton1Click(Sender: TObject);
var
fFileName:string;
fFilePath:string;
begin
if listView1.SelCount<1 then exit;
try
fFileName:=ListView1.Selected.Caption;
// ADOQueryTmp.Locate('fileName',fFileName,[]);
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('delete from TP_File ');
sql.Add('where WBID='+quotedstr(trim(fkeyNO)));
sql.Add('and TFType='+quotedstr(trim(fType)));
sql.Add('and FileName='+quotedstr(trim(fFileName)));
execsql;
end;
initData();
except
end;
end;
procedure TfrmFjList.cxButton2Click(Sender: TObject);
var
SaveDialog: TSaveDialog;
fFileName:string;
fFilePath:string;
begin
if listView1.SelCount<1 then exit;
try
fFileName:=ListView1.Selected.Caption;
SaveDialog := TSaveDialog.Create(Self);
SaveDialog.FileName:=fFileName;
if SaveDialog.Execute then
begin
Panel2.Caption:='正在保存数据,请稍等...';
Panel2.Visible:=true;
application.ProcessMessages;
fFilePath:=SaveDialog.FileName;
try
IdFTP1.Host := ReadINIFileStr('SYSTEMSET.INI','SERVER','FTP地址','127.0.0.1');;
IdFTP1.Username := 'three';
IdFTP1.Password := '641010';
IdFTP1.Connect();
except
;
end;
if IdFTP1.Connected then
begin
Panel2.Caption:='正在下载数据,请稍等...';
Panel2.Visible:=true;
application.ProcessMessages;
try
IdFTP1.Get('FJ\'+ Trim(fFileName), fFilePath,false, true);
except
Panel2.Visible:=false;
Application.MessageBox('客户图样文件不存在', '提示', MB_ICONWARNING);
IdFTP1.Quit;
Exit;
end;
end
else
begin
Panel2.Visible:=false;
Application.MessageBox('无法连接文件服务器', '提示', MB_ICONWARNING);
IdFTP1.Quit;
Exit;
end;
Panel2.Visible:=false;
if IdFTP1.Connected then IdFTP1.Quit;
end;
except
Panel2.Visible:=false;
end;
end;
procedure TfrmFjList.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if fId=10 then Action:=cafree
else
Action:=cahide;
end;
procedure TfrmFjList.Panel2DblClick(Sender: TObject);
begin
Panel2.Visible:=false;
end;
end.

View File

@ -0,0 +1,147 @@
object frmFjList10: TfrmFjList10
Left = 237
Top = 203
BorderIcons = [biSystemMenu, biMinimize]
Caption = #38468#20214#20449#24687
ClientHeight = 463
ClientWidth = 782
Color = clBtnFace
Font.Charset = GB2312_CHARSET
Font.Color = clWindowText
Font.Height = -12
Font.Name = #23435#20307
Font.Style = []
OldCreateOrder = False
Position = poScreenCenter
OnClose = FormClose
OnCreate = FormCreate
OnDestroy = FormDestroy
OnShow = FormShow
PixelsPerInch = 96
TextHeight = 12
object ListView1: TListView
Left = 0
Top = 0
Width = 631
Height = 463
Align = alClient
Columns = <
item
end>
Font.Charset = GB2312_CHARSET
Font.Color = clWindowText
Font.Height = -12
Font.Name = #23435#20307
Font.Style = []
ParentFont = False
TabOrder = 0
OnDblClick = ListView1DblClick
ExplicitHeight = 464
end
object Panel1: TPanel
Left = 631
Top = 0
Width = 151
Height = 463
Align = alRight
TabOrder = 1
ExplicitHeight = 464
object FileName: TcxButton
Left = 30
Top = 60
Width = 75
Height = 25
Hint = 'Filesother'
Caption = #28155#21152
LookAndFeel.Kind = lfOffice11
TabOrder = 0
OnClick = FileNameClick
end
object cxButton1: TcxButton
Left = 30
Top = 96
Width = 75
Height = 25
Hint = 'Filesother'
Caption = #21024#38500
LookAndFeel.Kind = lfOffice11
TabOrder = 1
OnClick = cxButton1Click
end
object cxButton2: TcxButton
Left = 30
Top = 132
Width = 75
Height = 25
Hint = 'Filesother'
Caption = #21478#23384#20026'...'
LookAndFeel.Kind = lfOffice11
TabOrder = 2
OnClick = cxButton2Click
end
object cxButton3: TcxButton
Left = 30
Top = 172
Width = 75
Height = 25
Hint = 'Filesother'
Caption = #20851#38381
LookAndFeel.Kind = lfOffice11
TabOrder = 3
Visible = False
OnClick = cxButton3Click
end
end
object Panel2: TPanel
Left = 176
Top = 140
Width = 193
Height = 41
BevelInner = bvRaised
BevelOuter = bvLowered
Caption = 'Panel2'
Font.Charset = GB2312_CHARSET
Font.Color = clBlue
Font.Height = -12
Font.Name = #23435#20307
Font.Style = [fsBold]
ParentFont = False
TabOrder = 2
Visible = False
OnDblClick = Panel2DblClick
end
object ADOQueryTmp: TADOQuery
Connection = ADOConnection1
Parameters = <>
Left = 520
Top = 28
end
object ADOQueryCmd: TADOQuery
Connection = ADOConnection1
Parameters = <>
Left = 568
Top = 32
end
object ImageList1: TImageList
Height = 32
Width = 32
Left = 536
Top = 228
end
object IdFTP1: TIdFTP
ConnectTimeout = 0
NATKeepAlive.UseKeepAlive = False
NATKeepAlive.IdleTimeMS = 0
NATKeepAlive.IntervalMS = 0
ProxySettings.ProxyType = fpcmNone
ProxySettings.Port = 0
ReadTimeout = 0
Left = 500
Top = 198
end
object ADOConnection1: TADOConnection
LoginPrompt = False
Left = 532
Top = 276
end
end

View File

@ -0,0 +1,441 @@
unit U_FjList10;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, ComCtrls, Menus, cxLookAndFeelPainters, StdCtrls,
cxButtons, DB, ADODB, ImgList,shellapi, IdBaseComponent, IdComponent,
IdTCPConnection, IdTCPClient, IdFTP,strutils, cxGraphics, cxLookAndFeels,
dxSkinsCore, dxSkinsDefaultPainters, IdExplicitTLSClientServerBase,
System.ImageList;
type
TfrmFjList10 = class(TForm)
ListView1: TListView;
Panel1: TPanel;
FileName: TcxButton;
cxButton1: TcxButton;
cxButton2: TcxButton;
cxButton3: TcxButton;
ADOQueryTmp: TADOQuery;
ADOQueryCmd: TADOQuery;
ImageList1: TImageList;
Panel2: TPanel;
IdFTP1: TIdFTP;
ADOConnection1: TADOConnection;
procedure cxButton3Click(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure FileNameClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure ListView1DblClick(Sender: TObject);
procedure cxButton1Click(Sender: TObject);
procedure cxButton2Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Panel2DblClick(Sender: TObject);
private
procedure InitData();
{ Private declarations }
public
fkeyNO:string;
fType:string;
fId:integer;
fstatus:integer;
{ Public declarations }
end;
var
frmFjList10: TfrmFjList10;
implementation
uses
U_DataLink,U_RTFun,U_CompressionFun;
{$R *.dfm}
procedure TfrmFjList10.InitData();
var
ListItem: TListItem;
Flag: Cardinal;
info:TSHFileInfo;// SHFILEINFOA;
Icon: TIcon;
begin
ListView1.Items.Clear;
try
with adoqueryTmp do
begin
close;
sql.Clear;
sql.Add('select * from TP_File ');
sql.Add('where WBID='+quotedstr(trim(fkeyNO)));
sql.Add('and TFType='+quotedstr(trim(fType)));
open;
if not IsEmpty then
begin
while not eof do
begin
with ListView1 do
begin
LargeImages := ImageList1;
Icon := TIcon.Create;
ListItem := Items.Add;
Listitem.Caption := trim(fieldbyname('fileName').AsString);
// Listitem.SubItems.Add(OpenDiaLog.FileName);
// Flag := (SHGFI_LARGEICON or SHGFI_ICON or SHGFI_USEFILEATTRIBUTES); //大图标, 改imagelist里面的宽度高度 32*32
Flag := (SHGFI_SMALLICON or SHGFI_ICON or SHGFI_USEFILEATTRIBUTES); //小图标, 16*16
SHGetFileInfo(Pwidechar(trim(fieldbyname('fileName').AsString)), 0, info, Sizeof(info), flag);
Icon.Handle := info.hIcon;
ImageList1.AddIcon(Icon);
ListItem.ImageIndex := ImageList1.Count - 1;
end;
next;
end;
end;
end;
except
end;
end;
procedure TfrmFjList10.cxButton3Click(Sender: TObject);
begin
ADOQueryTmp.Close;
ADOQuerycmd.Close;
ListView1.Items.Free;
ModalResult:=-1;
end;
procedure TfrmFjList10.FormDestroy(Sender: TObject);
begin
frmFjList10:=nil;
end;
procedure TfrmFjList10.FileNameClick(Sender: TObject);
var
OpenDiaLog: TOpenDialog;
fFileName:string;
fFilePath:string;
maxNo:string;
// myStream: TADOBlobStream;
// FJStream : TMemoryStream;
FJStream : TMemoryStream;
mfileSize:integer;
mCreationTime:TdateTime;
mWriteTime:TdateTime;
begin
try
OpenDiaLog := TOpenDialog.Create(Self);
if OpenDiaLog.Execute then
begin
fFilePath:=OpenDiaLog.FileName;
fFileName:=ExtractFileName(OpenDiaLog.FileName);
with adoqueryCmd do
begin
close;
sql.Clear;
sql.Add('select TFId from TP_File ');
sql.Add('where WBID<>'+quotedstr(trim(fkeyNO)));
sql.Add('and TFType='+quotedstr(trim(fType)));
sql.Add('and FileName='+quotedstr(trim(fFileName)));
open;
IF not adoqueryCmd.IsEmpty then
begin
application.MessageBox('此附件名称已存在,请修改文件名,继续上传!','提示信息',MB_ICONERROR);
exit;
end;
end;
Panel2.Caption:='正在上传数据,请稍等...';
Panel2.Visible:=true;
application.ProcessMessages;
if GetLSNo(ADOQueryCmd,maxNo,'FJ','TP_File',4,1)=False then
begin
Application.MessageBox('取最大号失败!','提示',0);
Exit;
end;
//获取文件信息
// GetFileInfo(fFilePath,mfileSize,mCreationTime,mWriteTime);
adoqueryCmd.Connection.BeginTrans;
with adoqueryCmd do
begin
close;
sql.Clear;
sql.Add('delete from TP_File ');
sql.Add('where WBID='+quotedstr(trim(fkeyNO)));
sql.Add('and TFType='+quotedstr(trim(fType)));
sql.Add('and FileName='+quotedstr(trim(fFileName)));
execsql;
end;
try
FJStream:=TMemoryStream.Create;
with adoqueryCmd do
begin
close;
sql.Clear;
sql.Add('select * from TP_File ');
sql.Add('where WBID='+quotedstr(trim(fkeyNO)));
sql.Add('and TFType='+quotedstr(trim(fType)));
sql.Add('and FileName='+quotedstr(trim(fFileName)));
open;
append;
fieldbyname('TFID').Value:=trim(maxNO);
fieldbyname('WBID').Value:=trim(fkeyNO);
fieldbyname('TFType').Value:=trim(fType);
fieldbyname('FileName').Value:=trim(fFileName);
FJStream.LoadFromFile(fFilePath);
CompressionStream(FJStream);
tblobfield(FieldByName('Filesother')).LoadFromStream(FJStream);
// tblobfield(FieldByName('Filesother')).LoadFromFile(fFilePath);
post;
end;
{ if fFilePath <> '' then
begin
try
IdFTP1.Host := PicSvr;
IdFTP1.Username := 'three';
IdFTP1.Password := '641010';
IdFTP1.Connect();
IdFTP1.Put(fFilePath, 'FJ\' + Trim(fFileName));
IdFTP1.Quit;
except
IdFTP1.Quit;
Application.MessageBox('上传客户图样文件失败,请检查文件服务器!', '提示', MB_ICONWARNING);
end;
end;
IdFTP1.Quit; }
Panel2.Visible:=false;
initdata();
finally
// FJStream.Free;
end;
adoqueryCmd.Connection.CommitTrans;
end;
except
adoqueryCmd.Connection.RollbackTrans;
application.MessageBox('附件保存失败!','提示信息',0);
end;
end;
procedure TfrmFjList10.FormCreate(Sender: TObject);
begin
with ADOConnection1 do
begin
Connected:=false;
ConnectionString:=DConString;
//ConnectionString:='';
Connected:=true;
end;
ListView1.Align:=alclient;
fstatus:=0;
end;
procedure TfrmFjList10.FormShow(Sender: TObject);
begin
IF fstatus=0 then Panel1.Visible:=true
else Panel1.Visible:=false;
initdata();
end;
procedure TfrmFjList10.ListView1DblClick(Sender: TObject);
var
sFieldName:string;
fileName:string;
ff: TADOBlobStream;
FJStream : TMemoryStream;
begin
if ListView1.Items.Count<1 THEN EXIT;
if listView1.SelCount<1 then exit;
sFieldName:=leftbstr(ExtractFilePath(Application.ExeName),1)+':\图片查看';
if not DirectoryExists(pchar(sFieldName)) then
CreateDirectory(pchar(sFieldName),nil);
fileName:=ListView1.Selected.Caption;
sFieldName:=sFieldName+'\'+trim(fileName);
{ try
IdFTP1.Host := PicSvr;
IdFTP1.Username := 'three';
IdFTP1.Password := '641010';
IdFTP1.Connect();
except
;
end;
if IdFTP1.Connected then
begin
Panel2.Caption:='正在下载数据,请稍等...';
Panel2.Visible:=true;
application.ProcessMessages;
try
IdFTP1.Get('FJ\'+ Trim(fileName), sFieldName,true, false);
except
Panel2.Visible:=false;
Application.MessageBox('客户图样文件不存在', '提示', MB_ICONWARNING);
IdFTP1.Quit;
Exit;
end;
end
else
begin
Panel2.Visible:=false;
Application.MessageBox('无法连接文件服务器', '提示', MB_ICONWARNING);
IdFTP1.Quit;
Exit;
end;
Panel2.Visible:=false;
if IdFTP1.Connected then IdFTP1.Quit;
ShellExecute(Handle, 'open',PChar(sFieldName),'', '', SW_SHOWNORMAL);
}
try
adoqueryTmp.Locate('FileName',fileName,[]);
ff := TADOBlobstream.Create(adoqueryTmp.fieldByName('FilesOther') as TblobField, bmRead);
fjStream:= TMemoryStream.Create ;
ff.SaveToStream(fjStream);
UnCompressionStream(fjStream);
fjStream.SaveToFile(sFieldName);
ShellExecute(Handle, 'open',PChar(sFieldName),'', '', SW_SHOWNORMAL);
finally
fjStream.free;
ff.Free;
end;
end;
procedure TfrmFjList10.cxButton1Click(Sender: TObject);
var
fFileName:string;
fFilePath:string;
begin
if listView1.SelCount<1 then exit;
try
fFileName:=ListView1.Selected.Caption;
// ADOQueryTmp.Locate('fileName',fFileName,[]);
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('delete from TP_File ');
sql.Add('where WBID='+quotedstr(trim(fkeyNO)));
sql.Add('and TFType='+quotedstr(trim(fType)));
sql.Add('and FileName='+quotedstr(trim(fFileName)));
execsql;
end;
initData();
except
end;
end;
procedure TfrmFjList10.cxButton2Click(Sender: TObject);
var
SaveDialog: TSaveDialog;
fFileName:string;
fFilePath:string;
ff: TADOBlobStream;
FJStream : TMemoryStream;
begin
if listView1.SelCount<1 then exit;
try
fFileName:=ListView1.Selected.Caption;
adoqueryTmp.Locate('FileName',fFileName,[]);
SaveDialog := TSaveDialog.Create(Self);
SaveDialog.FileName:=fFileName;
if SaveDialog.Execute then
begin
Panel2.Caption:='正在保存数据,请稍等...';
Panel2.Visible:=true;
application.ProcessMessages;
fFilePath:=SaveDialog.FileName;
try
ff := TADOBlobstream.Create(adoqueryTmp.fieldByName('FilesOther') as TblobField, bmRead);
fjStream:= TMemoryStream.Create ;
ff.SaveToStream(fjStream);
UnCompressionStream(fjStream);
fjStream.SaveToFile(fFilePath);
// ShellExecute(Handle, 'open',PChar(sFieldName),'', '', SW_SHOWNORMAL);
finally
fjStream.free;
ff.Free;
Panel2.Visible:=false;
end;
end;
{ try
IdFTP1.Host := PicSvr;
IdFTP1.Username := 'three';
IdFTP1.Password := '641010';
IdFTP1.Connect();
except
;
end;
if IdFTP1.Connected then
begin
Panel2.Caption:='正在下载数据,请稍等...';
Panel2.Visible:=true;
application.ProcessMessages;
try
IdFTP1.Get('FJ\'+ Trim(fFileName), fFilePath,false, true);
except
Panel2.Visible:=false;
Application.MessageBox('客户图样文件不存在', '提示', MB_ICONWARNING);
IdFTP1.Quit;
Exit;
end;
end
else
begin
Panel2.Visible:=false;
Application.MessageBox('无法连接文件服务器', '提示', MB_ICONWARNING);
IdFTP1.Quit;
Exit;
end;
Panel2.Visible:=false;
if IdFTP1.Connected then IdFTP1.Quit;
end; }
except
Panel2.Visible:=false;
end;
end;
procedure TfrmFjList10.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if fId=10 then Action:=cafree
else
Action:=cahide;
end;
procedure TfrmFjList10.Panel2DblClick(Sender: TObject);
begin
Panel2.Visible:=false;
end;
end.

View File

@ -0,0 +1,46 @@
object Form1: TForm1
Left = 387
Top = 243
Width = 520
Height = 376
Caption = 'Form1'
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
OldCreateOrder = False
PixelsPerInch = 96
TextHeight = 13
object Label1: TLabel
Left = 128
Top = 96
Width = 32
Height = 13
Caption = 'Label1'
end
object Label2: TLabel
Left = 208
Top = 104
Width = 32
Height = 13
Caption = 'Label2'
end
object Button1: TButton
Left = 112
Top = 48
Width = 75
Height = 25
Caption = 'Button1'
TabOrder = 0
OnClick = Button1Click
end
object Edit1: TEdit
Left = 200
Top = 48
Width = 121
Height = 21
TabOrder = 1
end
end

View File

@ -0,0 +1,43 @@
unit U_GetAddRess;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,StdCtrls,WinSock, ComCtrls;
Function sendarp(ipaddr:ulong;temp:dword;ulmacaddr:pointer;ulmacaddrleng:pointer) : DWord; StdCall; External 'Iphlpapi.dll' Name 'SendARP';
type
TForm1 = class(TForm)
Button1: TButton;
Label1: TLabel;
Label2: TLabel;
Edit1: TEdit;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
myip:ulong;
mymac:array[0..5] of byte;
mymaclength:ulong;
r:integer;
begin
{myip:=inet_addr(PChar(Trim(Edit1.Text)));
mymaclength:=length(mymac);
r:=sendarp(myip,0,@mymac,@mymaclength);
label1.caption:='errorcode:'+inttostr(r);
label2.caption:=format('%2.2x:%2.2x:%2.2x:%2.2x:%2.2x:%2.2x',[mymac[0],mymac[1],mymac[2],mymac[3],mymac[4],mymac[5]]); }
end;
end.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,265 @@
unit U_ItemManageNew;
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, cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore,
dxSkinsDefaultPainters, cxNavigator, dxDateRanges, System.ImageList;
type
TfrmItemManageNew = class(TForm)
TV1: TcxGridDBTableView;
cxGrid1Level1: TcxGridLevel;
cxGrid1: TcxGrid;
V1Code: TcxGridDBColumn;
V1Name: TcxGridDBColumn;
ToolBar1: TToolBar;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
DataSource1: TDataSource;
ClientDataSet1: TClientDataSet;
TBAdd: TToolButton;
TBSave: TToolButton;
TBDel: TToolButton;
TBClose: TToolButton;
ToolButton1: TToolButton;
TBEdit: TToolButton;
V1Note: TcxGridDBColumn;
V1OrderNo: TcxGridDBColumn;
ADOConnection1: TADOConnection;
ImageList24: TImageList;
Panel1: TPanel;
Label1: TLabel;
Edit1: TEdit;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBAddClick(Sender: TObject);
procedure TBSaveClick(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure TBEditClick(Sender: TObject);
procedure TV1CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
private
procedure InitGrid();
{ Private declarations }
public
flag,flagname,snote:string;
fnote,forderno:Boolean;
{ Public declarations }
end;
var
frmItemManageNew: TfrmItemManageNew;
implementation
uses
U_DataLink,U_Fun;
{$R *.dfm}
procedure TfrmItemManageNew.FormCreate(Sender: TObject);
begin
cxGrid1.Align:=alClient;
with ADOConnection1 do
begin
Connected:=false;
ConnectionString:=DConString;
Connected:=true;
end;
end;
procedure TfrmItemManageNew.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmItemManageNew.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Close;
sql.Clear;
sql.Add('select * from XC_Code where Flag='''+flag+'''');
Open;
end;
SCreateCDS20(ADOQueryMain,ClientDataSet1);
SInitCDSData20(ADOQueryMain,ClientDataSet1);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmItemManageNew.TBAddClick(Sender: TObject);
begin
TV1.OptionsData.Editing:=True;
with ClientDataSet1 do
begin
Append;
Post;
end;
end;
procedure TfrmItemManageNew.TBSaveClick(Sender: TObject);
begin
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('delete XC_Code where Flag='''+Flag+'''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from XC_Code where 1<>1');
Open;
end;
with ADOQueryCmd do
begin
if ClientDataSet1.IsEmpty then
begin
ADOQueryCmd.Close;
ADOQueryCmd.sql.Clear;
ADOQueryCmd.sql.Add('delete from XC_Code where Code='''+Flag+'''');
ADOQueryCmd.ExecSQL;
end else
begin
with ClientDataSet1 do
begin
First;
while not eof do
begin
if Trim(ClientDataSet1.FieldByName('Code').AsString)='' then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('编号不能为空!','提示',0);
Exit;
end;
if Trim(ClientDataSet1.FieldByName('Name').AsString)='' then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('名称不能为空!','提示',0);
Exit;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from XC_Code where Code='''+Trim(ClientDataSet1.fieldbyname('Code').AsString)+'''');
Open;
if not IsEmpty then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('编号重复!','提示',0);
Exit;
end;
end;
ADOQueryCmd.Append;
ADOQueryCmd.FieldByName('Code').Value:=ClientDataSet1.fieldbyname('Code').AsString;
ADOQueryCmd.FieldByName('Name').Value:=ClientDataSet1.fieldbyname('Name').AsString;
ADOQueryCmd.FieldByName('note').Value:=Trim(snote);
//ADOQueryCmd.FieldByName('orderno').Value:=ClientDataSet1.fieldbyname('Name').AsString;
ADOQueryCmd.FieldByName('Flag').Value:=flag;
ADOQueryCmd.FieldByName('valid').Value:='Y';
ADOQueryCmd.FieldByName('sel').Value:=0;
ADOQueryCmd.Post;
Next;
end;
end;
end;
end;
ADOQueryCmd.Connection.CommitTrans;
Application.MessageBox('保存成功!','提示',0);
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('保存失败!','提示',0);
end;
TV1.OptionsData.Editing:=False;
end;
procedure TfrmItemManageNew.TBDelClick(Sender: TObject);
begin
if ClientDataSet1.IsEmpty then Exit;
if (Trim(ClientDataSet1.FieldByName('Code').AsString)<>'') or
(Trim(ClientDataSet1.FieldByName('name').AsString)<>'') then
begin
if application.MessageBox('确定要删除吗?','提示信息',1)=2 then exit;
ClientDataSet1.Delete;
end;
end;
procedure TfrmItemManageNew.TBCloseClick(Sender: TObject);
begin
ModalResult:=2;
Close;
end;
procedure TfrmItemManageNew.FormShow(Sender: TObject);
var
fsj,fsj1:string;
begin
InitGrid();
fsj:=Trim(flag)+'01';
fsj1:=Trim(flagname)+'01';
if ClientDataSet1.IsEmpty then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
//sql.Add('insert into XC_Code(code,name,flag,note)');
//sql.Add('select '''+Trim(flag)+'''');
//sql.Add(','''+Trim(flagname)+'''');
//SQL.Add(',''BASECODE'' ');
//sql.Add(','''+Trim(snote)+'''');
sql.Add('insert into XC_Code(code,name,flag,note)');
sql.Add('select '''+Trim(fsj)+'''');
sql.Add(','''+Trim(fsj1)+'''');
SQL.Add(','''+Trim(flag)+'''');
sql.Add(','''+Trim(snote)+'''');
ExecSQL;
end;
InitGrid();
end;
frmItemManageNew.Caption:=Trim(flagname)+'<'+Trim(flag)+'>';
end;
procedure TfrmItemManageNew.ToolButton1Click(Sender: TObject);
begin
ModalResult:=1;
end;
procedure TfrmItemManageNew.TBEditClick(Sender: TObject);
begin
TV1.OptionsData.Editing:=True;
end;
procedure TfrmItemManageNew.TV1CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
if TV1.OptionsData.Editing=False then
begin
ModalResult:=1;
end;
end;
end.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,169 @@
unit U_KHHelp;
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,
cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore, dxSkinsDefaultPainters,
cxNavigator, dxDateRanges, dxBarBuiltInMenu, System.ImageList;
type
TfrmKHHelp = class(TForm)
TV1: TcxGridDBTableView;
cxGrid1Level1: TcxGridLevel;
cxGrid1: TcxGrid;
V1Name: TcxGridDBColumn;
ToolBar1: TToolBar;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
DataSource1: TDataSource;
ClientDataSet1: TClientDataSet;
TBClose: TToolButton;
ToolButton1: TToolButton;
ADOConnection1: TADOConnection;
Panel1: TPanel;
Label1: TLabel;
ZDYName: TEdit;
ThreeImgList: TImageList;
cxGridPopupMenu1: TcxGridPopupMenu;
V1Column1: TcxGridDBColumn;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure TV1CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
procedure ZDYNameChange(Sender: TObject);
procedure FormDestroy(Sender: TObject);
private
procedure InitGrid();
{ Private declarations }
public
flag,flagname,snote,MainType:string;
fnote,forderno,fZdyFlag:Boolean;
PPSTE:integer;
{ Public declarations }
end;
var
frmKHHelp: TfrmKHHelp;
implementation
uses
U_DataLink,U_Fun;
{$R *.dfm}
procedure TfrmKHHelp.FormCreate(Sender: TObject);
begin
try
cxGrid1.Align:=alClient;
with ADOConnection1 do
begin
Connected:=false;
ConnectionString:=DConString;
//ConnectionString:='';
Connected:=true;
end;
except
frmKHHelp.Free;
end;
end;
procedure TfrmKHHelp.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
ZDYName.SetFocus;
Action:=caFree;
end;
procedure TfrmKHHelp.InitGrid();
var
CYType:String;
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from SY_User where UserId='''+Trim(DCode)+'''');
Open;
end;
CYType:=Trim(ADOQueryTemp.fieldbyname('DPID').AsString);
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Close;
sql.Clear;
sql.Add('exec P_Select_User_KHName :CYType');
Parameters.ParamByName('CYType').Value:=Trim(CYType);
Open;
end;
SCreateCDS20(ADOQueryMain,ClientDataSet1);
SInitCDSData20(ADOQueryMain,ClientDataSet1);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmKHHelp.TBCloseClick(Sender: TObject);
begin
ModalResult:=2;
ZDYName.SetFocus;
WriteCxGrid('客户名称',TV1,'基础数据');
Close;
end;
procedure TfrmKHHelp.FormShow(Sender: TObject);
begin
InitGrid();
ReadCxGrid('客户名称',TV1,'基础数据');
end;
procedure TfrmKHHelp.ToolButton1Click(Sender: TObject);
begin
ZDYName.SetFocus;
ModalResult:=1;
end;
procedure TfrmKHHelp.TV1CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
if TV1.OptionsData.Editing=False then
begin
ModalResult:=1;
end;
end;
procedure TfrmKHHelp.ZDYNameChange(Sender: TObject);
var
fsj:String;
begin
if Trim(ZDYName.Text)<>'' then
begin
fsj:=' zdyname like '''+'%'+Trim(ZDYName.Text)+'%'+''''
+' or ZJM like '''+'%'+Trim(ZDYName.Text)+'%'+'''';
end;
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain,fsj);
SCreateCDS20(ADOQueryMain,ClientDataSet1);
SInitCDSData20(ADOQueryMain,ClientDataSet1);
end;
end;
procedure TfrmKHHelp.FormDestroy(Sender: TObject);
begin
frmKHHelp:=nil;
end;
end.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,279 @@
unit U_LbaelMap;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB,
cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin, StdCtrls,
cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls,
cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid,
cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common,
RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection,
IdTCPClient, IdFTP, ShellAPI, IniFiles, cxCheckBox, cxCalendar, cxButtonEdit,
cxTextEdit, cxPC, cxCheckComboBox, cxDropDownEdit, Menus, RM_e_Xls,
cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxSkinsCore,
dxSkinsDefaultPainters, dxDateRanges, dxBarBuiltInMenu, System.ImageList,
Vcl.ImgList;
type
TfrmLbaelMap = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBClose: TToolButton;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
ToolButton2: TToolButton;
ADOQueryMain: TADOQuery;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
cxGridLevel1: TcxGridLevel;
cxGridPopupMenu2: TcxGridPopupMenu;
DS_HZ: TDataSource;
CDS_HZ: TClientDataSet;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
Panel1: TPanel;
LMName: TEdit;
v2Column8: TcxGridDBColumn;
Label1: TLabel;
v2Column12: TcxGridDBColumn;
ToolButton4: TToolButton;
ToolButton5: TToolButton;
Label2: TLabel;
LMType: TEdit;
v2Column1: TcxGridDBColumn;
Tv2Column1: TcxGridDBColumn;
ADOConnection1: TADOConnection;
ImageList_new32: TImageList;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure CustomerChange(Sender: TObject);
procedure v2Column8PropertiesEditValueChanged(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
procedure ToolButton5Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
procedure InitGrid();
public
FLMType: string;
{ Public declarations }
end;
var
frmLbaelMap: TfrmLbaelMap;
implementation
uses
U_DataLink, U_RTFun, U_ZDYHelp;
{$R *.dfm}
procedure TfrmLbaelMap.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Close;
SQL.Clear;
sql.Add(' select A.* from Lbael_Map A ');
sql.Add(' where LMType= ' + QuotedStr(trim(FLMType)));
Open;
end;
SCreateCDS(ADOQueryMain, CDS_HZ);
SInitCDSData(ADOQueryMain, CDS_HZ);
finally
ADOQueryMain.EnableControls;
ToolButton2.Click;
end;
end;
procedure TfrmLbaelMap.FormDestroy(Sender: TObject);
begin
frmLbaelMap := nil;
end;
procedure TfrmLbaelMap.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TfrmLbaelMap.FormCreate(Sender: TObject);
begin
try
with ADOConnection1 do
begin
Connected := false;
ConnectionString := DConString;
//ConnectionString:='';
Connected := true;
end;
except
frmLbaelMap.Free;
end;
end;
procedure TfrmLbaelMap.TBCloseClick(Sender: TObject);
begin
WriteCxGrid(Trim(Self.Caption), Tv2, '标签管理');
Close;
end;
procedure TfrmLbaelMap.FormShow(Sender: TObject);
begin
ReadCxGrid(Trim(Self.Caption), Tv2, '标签管理');
InitGrid();
end;
procedure TfrmLbaelMap.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmLbaelMap.ToolButton2Click(Sender: TObject);
var
sql: string;
begin
if ADOQueryMain.Active then
begin
sql := SGetFilters(Panel1, 1, 2);
SDofilter(ADOQueryMain, sql);
SCreateCDS(ADOQueryMain, CDS_HZ);
SInitCDSData(ADOQueryMain, CDS_HZ);
end;
end;
procedure TfrmLbaelMap.cxTabControl1Change(Sender: TObject);
begin
InitGrid;
end;
procedure TfrmLbaelMap.N1Click(Sender: TObject);
begin
if CDS_HZ.IsEmpty then
exit;
with CDS_HZ do
begin
DisableControls;
first;
while not eof do
begin
edit;
fieldbyname('ssel').Value := true;
post;
next;
end;
First;
EnableControls;
end;
end;
procedure TfrmLbaelMap.N2Click(Sender: TObject);
begin
if CDS_HZ.IsEmpty then
exit;
with CDS_HZ do
begin
DisableControls;
first;
while not eof do
begin
edit;
fieldbyname('ssel').Value := false;
post;
next;
end;
First;
EnableControls;
end;
end;
procedure TfrmLbaelMap.CustomerChange(Sender: TObject);
begin
ToolButton2.Click;
end;
procedure TfrmLbaelMap.v2Column8PropertiesEditValueChanged(Sender: TObject);
var
mvalue, FFieldName: string;
begin
mvalue := TcxTextEdit(Sender).EditingText;
FFieldName := Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName);
try
ADOQueryCmd.Connection.BeginTrans;
with CDS_HZ do
begin
Edit;
FieldByName(FFieldName).Value := Trim(mvalue);
Post;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate Lbael_Map ');
sql.Add(' Set ' + FFieldName + '=''' + Trim(mvalue) + '''');
sql.Add(' , Editer=''' + Trim(DName) + '''');
sql.Add(' , Edittime=getdate()');
sql.Add(' where LMID=' + quotedstr(CDS_HZ.fieldbyname('LMID').AsString));
ExecSQL;
end;
ADOQueryCmd.Connection.CommitTrans;
tv2.Controller.EditingController.ShowEdit();
except
tv2.Controller.EditingController.ShowEdit();
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('保存失败!', '提示', 0);
end
end;
procedure TfrmLbaelMap.ToolButton4Click(Sender: TObject);
var
maxId: string;
begin
if GetLSNo(ADOQueryCmd, maxId, 'M', 'Lbael_Map', 4, 1) = False then
begin
Application.MessageBox('取最大号失败!', '提示', 0);
Exit;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('insert into Lbael_Map(LMType,Filler) values(' + quotedstr(Trim(FLMType)) + ',' + quotedstr(Trim(dname)) + ')');
ExecSQL;
end;
InitGrid();
end;
procedure TfrmLbaelMap.ToolButton5Click(Sender: TObject);
begin
if CDS_HZ.IsEmpty then
Exit;
if Application.MessageBox('确定要删除数据吗?', '提示', 32 + 4) <> IDYES then
Exit;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete Lbael_Map where LMID=' + QuotedStr(CDS_HZ.FieldByName('LMID').AsString));
ExecSQL;
end;
CDS_HZ.Delete;
end;
end.

View File

@ -0,0 +1,182 @@
object frmModulePromptList: TfrmModulePromptList
Left = 126
Top = 142
Caption = #25105#30340#31649#23478
ClientHeight = 508
ClientWidth = 1049
Color = clBtnFace
Font.Charset = GB2312_CHARSET
Font.Color = clWindowText
Font.Height = -12
Font.Name = #23435#20307
Font.Style = []
OldCreateOrder = False
OnClose = FormClose
OnDestroy = FormDestroy
OnShow = FormShow
PixelsPerInch = 96
TextHeight = 12
object ToolBar1: TToolBar
Left = 0
Top = 0
Width = 1049
Height = 29
AutoSize = True
ButtonHeight = 30
ButtonWidth = 59
Caption = 'ToolBar1'
Color = clSkyBlue
Font.Charset = GB2312_CHARSET
Font.Color = clWindowText
Font.Height = -12
Font.Name = #23435#20307
Font.Style = []
Images = DataLink_TradeManage.ThreeImgList
List = True
ParentColor = False
ParentFont = False
ShowCaptions = True
TabOrder = 0
object TBRafresh: TToolButton
Left = 0
Top = 0
AutoSize = True
Caption = #21047#26032
ImageIndex = 9
OnClick = TBRafreshClick
end
object TBClose: TToolButton
Left = 63
Top = 0
AutoSize = True
Caption = #20851#38381
ImageIndex = 55
OnClick = TBCloseClick
end
end
object Panel1: TPanel
Left = 0
Top = 29
Width = 1049
Height = 41
Align = alTop
BevelInner = bvRaised
BevelOuter = bvLowered
Color = clSkyBlue
TabOrder = 1
ExplicitTop = 32
object Panel2: TPanel
Left = 664
Top = 2
Width = 383
Height = 37
Align = alRight
BevelOuter = bvNone
Caption = #25552#31034#65306#21452#20987#25171#24320#22788#29702#20449#24687#30028#38754
Color = clSkyBlue
Font.Charset = GB2312_CHARSET
Font.Color = clRed
Font.Height = -12
Font.Name = #23435#20307
Font.Style = [fsBold]
ParentFont = False
TabOrder = 0
end
end
object cxGrid1: TcxGrid
Left = 0
Top = 70
Width = 1049
Height = 438
Align = alClient
TabOrder = 2
ExplicitTop = 73
ExplicitHeight = 436
object Tv1: TcxGridDBTableView
Navigator.Buttons.CustomButtons = <>
OnCellDblClick = Tv1CellDblClick
DataController.DataSource = DataSource1
DataController.Summary.DefaultGroupSummaryItems = <>
DataController.Summary.FooterSummaryItems = <
item
Kind = skSum
end
item
Kind = skSum
end
item
Kind = skSum
end
item
Kind = skSum
end
item
Kind = skSum
end
item
Kind = skSum
end>
DataController.Summary.SummaryGroups = <>
OptionsCustomize.ColumnFiltering = False
OptionsData.Deleting = False
OptionsData.Editing = False
OptionsSelection.CellSelect = False
OptionsView.GroupByBox = False
OptionsView.Indicator = True
Styles.Header = DataLink_TradeManage.FontBlue
object v1Column5: TcxGridDBColumn
Caption = #24453#22788#29702#20107#39033
DataBinding.FieldName = 'ModuleName'
HeaderAlignmentHorz = taCenter
Width = 235
end
object v1Column1: TcxGridDBColumn
Caption = #22788#29702#20154
DataBinding.FieldName = 'DName'
HeaderAlignmentHorz = taCenter
Width = 107
end
end
object cxGrid1Level1: TcxGridLevel
GridView = Tv1
end
end
object cxGridPopupMenu1: TcxGridPopupMenu
PopupMenus = <>
Left = 1128
end
object ADOQueryCmd: TADOQuery
Connection = DataLink_TradeManage.ADOLink
Parameters = <>
Left = 936
end
object ADOQueryMain: TADOQuery
Connection = DataLink_TradeManage.ADOLink
LockType = ltReadOnly
Parameters = <>
Left = 1000
end
object ADOQueryTemp: TADOQuery
Connection = DataLink_TradeManage.ADOLink
LockType = ltReadOnly
Parameters = <>
Left = 1040
Top = 8
end
object DataSource1: TDataSource
DataSet = Order_Main
Left = 1168
Top = 8
end
object Order_Main: TClientDataSet
Aggregates = <>
Params = <>
Left = 815
Top = 7
end
object cxGridPopupMenu2: TcxGridPopupMenu
PopupMenus = <>
Left = 506
Top = 195
end
end

View File

@ -0,0 +1,224 @@
unit U_ModulePromptList;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData,
cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB,
cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses,
cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView,
cxGridDBTableView, cxGrid, DBClient, cxCalendar, cxButtonEdit, cxSplitter,
RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport,
cxTextEdit, cxPC, cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore,
dxSkinsDefaultPainters, cxNavigator, dxDateRanges, dxBarBuiltInMenu;
type
TfrmModulePromptList = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
cxGridPopupMenu1: TcxGridPopupMenu;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
Order_Main: TClientDataSet;
cxGridPopupMenu2: TcxGridPopupMenu;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1Column5: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
v1Column1: TcxGridDBColumn;
Panel2: TPanel;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBCloseClick(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure cxPageControl1Change(Sender: TObject);
procedure Tv1CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
private
fDConString_link1:string;
procedure InitGrid();
procedure InitForm();
procedure InitDllEvt(FromFile:String;FormID:Integer;Para:String;FormType:Integer; Title: String;
Def1: String; Def2: String; Def3: String; Def4: String; Def5: String;
Def6: String; Def7: String; Def8: String; Def9: String; Def10: string);
{ Private declarations }
public
{ Public declarations }
userID,username:string;
end;
var
frmModulePromptList: TfrmModulePromptList;
implementation
uses
U_DataLink,U_Fun;
type
TMyF = function(
App: TApplication; //主应用程序 (对Delphi而言)
FormH: HWND; //创建窗口的父窗口句柄 (对PB而言)
FormID: Integer; //要调用dll中功能窗体的Id号; 如果只有一个功能窗口FormID默认为0
Language: Integer; //0=Delphi; 1=PB
WinStyle: Integer; //0=子窗口; 1:普通窗口 (PB中都为普通窗口)
UID: PChar; //用户Id
UName: PChar; //用户名
Para: PChar;
Title: PChar;
Defstr1: PChar;
Defstr2: PChar;
Defstr3: PChar;
Defstr4: PChar;
Defstr5: PChar;
Defstr6: PChar;
Defstr7: PChar;
Defstr8: PChar;
Defstr9: PChar;
Defstr10: PChar;
Datalink: PChar
): HWND; stdcall;
var
TP: FARPROC;
Tf: TMyF;
{$R *.dfm}
procedure TfrmModulePromptList.FormDestroy(Sender: TObject);
begin
frmModulePromptList:=nil;
end;
procedure TfrmModulePromptList.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmModulePromptList.TBCloseClick(Sender: TObject);
begin
Close;
WriteCxGrid('工作列表',Tv1,'我的管家');
end;
procedure TfrmModulePromptList.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Close;
sql.Clear;
SQL.Add(' exec P_Chk_Tishi :DName,:DCode');
Parameters.ParamByName('DName').Value:=Trim(DName);
Parameters.ParamByName('DCode').Value:=Trim(DCode);
ExecSQL;
Open;
end;
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmModulePromptList.InitForm();
begin
fDConString_link1:=Trim(DConString);
ReadCxGrid('工作列表',Tv1,'我的管家');
InitGrid();
end;
procedure TfrmModulePromptList.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmModulePromptList.FormShow(Sender: TObject);
begin
InitForm();
end;
procedure TfrmModulePromptList.cxPageControl1Change(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmModulePromptList.InitDllEvt(FromFile:String;FormID:Integer;Para:String;FormType:Integer; Title: String;
Def1: String; Def2: String; Def3: String; Def4: String; Def5: String;
Def6: String; Def7: String; Def8: String; Def9: String; Def10: string);
var
Th: HMODULE;
begin
Th := LoadLibrary(PChar(FromFile));
if Th > 0 then
begin
TP := GetProcAddress(Th, 'GetDllForm');
if TP <> nil then
begin
Tf := TMyF(Tp);
Tf(Application, 0, FormID, 0, FormType, PChar(DCode), PChar(DName), PChar(Para), PChar(Title),
PChar(Def1), PChar(Def2),PChar(Def3),PChar(Def4),PChar(Def5),
PChar(Def6),PChar(Def7),PChar(Def8),PChar(Def9),PChar(Def10),
pchar(fDConString_link1));
end;
end
else
begin
Application.MessageBox(PChar('打不开文件' + FromFile + ''), '错误', MB_ICONERROR);
end;
end;
procedure TfrmModulePromptList.Tv1CellDblClick(
Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from SY_ModuleSub where ModuleId='''+Trim(Order_Main.fieldbyname('ModuleId').AsString)+'''');
sql.Add(' and ModuleSubId='''+Trim(Order_Main.fieldbyname('ModuleSubId').AsString)+'''');
Open;
end;
IF (trim(Order_Main.FieldByName('ModuleId').AsString)='05' ) and (trim(Order_Main.FieldByName('ModuleSubId').AsString)='04' ) then
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('update JYOrder_Sub_AnPai SET Aordflag10=1 where Aordflag10=0 ');
execsql;
end;
end;
IF not ADOQueryTemp.IsEmpty then
begin
InitDllEvt(Trim(ADOQueryTemp.FieldByName('formFile').AsString),
ADOQueryTemp.FieldByName('FormID').AsInteger,
Trim(ADOQueryTemp.FieldByName('FormPara').AsString),
ADOQueryTemp.FieldByName('FormType').AsInteger,
Trim(ADOQueryTemp.FieldByName('Formname').AsString),
Trim(ADOQueryTemp.FieldByName('FormPara1').AsString),
Trim(ADOQueryTemp.FieldByName('FormPara2').AsString),
Trim(ADOQueryTemp.FieldByName('FormPara3').AsString),
Trim(ADOQueryTemp.FieldByName('FormPara4').AsString),
Trim(ADOQueryTemp.FieldByName('FormPara5').AsString),
Trim(ADOQueryTemp.FieldByName('FormPara6').AsString),
Trim(ADOQueryTemp.FieldByName('FormPara7').AsString),
Trim(ADOQueryTemp.FieldByName('FormPara8').AsString),
Trim(ADOQueryTemp.FieldByName('FormPara9').AsString),
Trim(ADOQueryTemp.FieldByName('FormPara10').AsString),
);
end;
end;
end.

View File

@ -0,0 +1,245 @@
object frmRTZDYHelp: TfrmRTZDYHelp
Left = 466
Top = 188
Caption = #39033#30446#32500#25252
ClientHeight = 489
ClientWidth = 479
Color = clWhite
Font.Charset = GB2312_CHARSET
Font.Color = clWindowText
Font.Height = -12
Font.Name = #23435#20307
Font.Style = []
OldCreateOrder = False
Position = poScreenCenter
OnClose = FormClose
OnCreate = FormCreate
OnShow = FormShow
PixelsPerInch = 96
TextHeight = 12
object cxGrid1: TcxGrid
Left = 8
Top = 88
Width = 417
Height = 200
TabOrder = 0
object TV1: TcxGridDBTableView
Navigator.Buttons.CustomButtons = <>
OnCellDblClick = TV1CellDblClick
DataController.DataSource = DataSource1
DataController.Filter.AutoDataSetFilter = True
DataController.Summary.DefaultGroupSummaryItems = <>
DataController.Summary.FooterSummaryItems = <>
DataController.Summary.SummaryGroups = <>
OptionsBehavior.FocusCellOnCycle = True
OptionsCustomize.ColumnFiltering = False
OptionsData.Editing = False
OptionsSelection.CellSelect = False
OptionsView.GroupByBox = False
Styles.Footer = DataLink_ProductWarehouse.Default
Styles.Header = DataLink_ProductWarehouse.Default
object V1Code: TcxGridDBColumn
Caption = #32534#21495
DataBinding.FieldName = 'ZDYNo'
Visible = False
HeaderAlignmentHorz = taCenter
Width = 97
end
object V1OrderNo: TcxGridDBColumn
Caption = #39034#24207#21495
DataBinding.FieldName = 'OrderNo'
PropertiesClassName = 'TcxTextEditProperties'
Properties.OnEditValueChanged = V1OrderNoPropertiesEditValueChanged
HeaderAlignmentHorz = taCenter
Width = 57
end
object V1Name: TcxGridDBColumn
Tag = 2
Caption = #21517#31216
DataBinding.FieldName = 'ZDYName'
PropertiesClassName = 'TcxTextEditProperties'
Properties.OnEditValueChanged = V1NamePropertiesEditValueChanged
HeaderAlignmentHorz = taCenter
Width = 146
end
object V1Note: TcxGridDBColumn
Caption = #22791#27880
DataBinding.FieldName = 'Note'
PropertiesClassName = 'TcxTextEditProperties'
Properties.OnEditValueChanged = V1NotePropertiesEditValueChanged
HeaderAlignmentHorz = taCenter
Width = 113
end
object V1ZdyFlag: TcxGridDBColumn
Caption = #26631#24535
DataBinding.FieldName = 'ZdyFlag'
PropertiesClassName = 'TcxTextEditProperties'
Properties.OnEditValueChanged = V1Column1PropertiesEditValueChanged
Visible = False
HeaderAlignmentHorz = taCenter
Width = 57
end
object V1HelpType: TcxGridDBColumn
Caption = #24110#21161#31867#27604
DataBinding.FieldName = 'HelpType'
PropertiesClassName = 'TcxTextEditProperties'
Properties.OnEditValueChanged = V1HelpTypePropertiesEditValueChanged
Visible = False
HeaderAlignmentHorz = taCenter
Width = 55
end
end
object cxGrid1Level1: TcxGridLevel
GridView = TV1
end
end
object ToolBar1: TToolBar
Tag = 1
Left = 0
Top = 0
Width = 479
Height = 38
AutoSize = True
ButtonHeight = 38
ButtonWidth = 75
Caption = 'ToolBar1'
DisabledImages = DataLink_ProductWarehouse.ImageList_new32
Font.Charset = GB2312_CHARSET
Font.Color = clWindowText
Font.Height = -12
Font.Name = #23435#20307
Font.Style = []
Images = DataLink_ProductWarehouse.ImageList_new32
List = True
ParentFont = False
ShowCaptions = True
TabOrder = 1
object ToolButton1: TToolButton
Left = 0
Top = 0
Caption = #36873#25321
ImageIndex = 12
OnClick = ToolButton1Click
end
object TBAdd: TToolButton
Left = 75
Top = 0
Caption = #22686#34892
ImageIndex = 2
OnClick = TBAddClick
end
object TBDel: TToolButton
Left = 150
Top = 0
Caption = #21024#34892
ImageIndex = 6
OnClick = TBDelClick
end
object TBEdit: TToolButton
Left = 225
Top = 0
Caption = #20462#25913
ImageIndex = 3
OnClick = TBEditClick
end
object TBSave: TToolButton
Left = 300
Top = 0
Caption = #20445#23384
ImageIndex = 16
Visible = False
OnClick = TBSaveClick
end
object TBClose: TToolButton
Left = 375
Top = 0
Caption = #20851#38381
ImageIndex = 7
OnClick = TBCloseClick
end
end
object Panel1: TPanel
Left = 0
Top = 38
Width = 479
Height = 44
Align = alTop
BevelInner = bvRaised
BevelOuter = bvLowered
TabOrder = 2
ExplicitTop = 18
object Label1: TLabel
Left = 18
Top = 17
Width = 24
Height = 12
Caption = #21517#31216
end
object Label2: TLabel
Left = 240
Top = 11
Width = 120
Height = 24
Caption = #27880#65306#28966#28857#31163#24320#24403#21069#32534#36753#13#10' '#21333#20803#26684#20445#23384#25968#25454#12290
Color = clBtnFace
Font.Charset = GB2312_CHARSET
Font.Color = clBlue
Font.Height = -12
Font.Name = #23435#20307
Font.Style = []
ParentColor = False
ParentFont = False
end
object ZDYName: TEdit
Tag = 2
Left = 53
Top = 12
Width = 169
Height = 20
TabOrder = 0
OnChange = ZDYNameChange
end
end
object ADOQueryMain: TADOQuery
Connection = ADOConnection1
LockType = ltReadOnly
Parameters = <>
Left = 48
Top = 136
end
object ADOQueryTemp: TADOQuery
Connection = ADOConnection1
LockType = ltReadOnly
Parameters = <>
Left = 80
Top = 144
end
object ADOQueryCmd: TADOQuery
Connection = ADOConnection1
Parameters = <>
Left = 112
Top = 152
end
object DataSource1: TDataSource
DataSet = ClientDataSet1
Left = 280
Top = 144
end
object ClientDataSet1: TClientDataSet
Aggregates = <>
Params = <>
Left = 208
Top = 144
end
object ADOConnection1: TADOConnection
LoginPrompt = False
Left = 80
Top = 232
end
object cxGridPopupMenu1: TcxGridPopupMenu
Grid = cxGrid1
PopupMenus = <>
Left = 168
Top = 152
end
end

View File

@ -0,0 +1,687 @@
unit U_RTZDYHelp;
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,
cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore, dxSkinsDefaultPainters,
cxNavigator, dxDateRanges, dxBarBuiltInMenu;
type
TfrmRTZDYHelp = class(TForm)
TV1: TcxGridDBTableView;
cxGrid1Level1: TcxGridLevel;
cxGrid1: TcxGrid;
V1Code: TcxGridDBColumn;
V1Name: TcxGridDBColumn;
ToolBar1: TToolBar;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
DataSource1: TDataSource;
ClientDataSet1: TClientDataSet;
TBAdd: TToolButton;
TBSave: TToolButton;
TBDel: TToolButton;
TBClose: TToolButton;
ToolButton1: TToolButton;
TBEdit: TToolButton;
V1Note: TcxGridDBColumn;
V1OrderNo: TcxGridDBColumn;
ADOConnection1: TADOConnection;
Panel1: TPanel;
Label1: TLabel;
ZDYName: TEdit;
Label2: TLabel;
cxGridPopupMenu1: TcxGridPopupMenu;
V1ZdyFlag: TcxGridDBColumn;
V1HelpType: TcxGridDBColumn;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBAddClick(Sender: TObject);
procedure TBSaveClick(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure TBEditClick(Sender: TObject);
procedure TV1CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
procedure ZDYNameChange(Sender: TObject);
procedure V1NamePropertiesEditValueChanged(Sender: TObject);
procedure V1OrderNoPropertiesEditValueChanged(Sender: TObject);
procedure V1NotePropertiesEditValueChanged(Sender: TObject);
procedure V1Column1PropertiesEditValueChanged(Sender: TObject);
procedure V1HelpTypePropertiesEditValueChanged(Sender: TObject);
private
procedure InitGrid();
{ Private declarations }
public
flag,flagname,snote,MainType:string;
fnote,forderno,fZdyFlag,ViewFlag:Boolean;
PPSTE:integer;
{ Public declarations }
end;
var
frmRTZDYHelp: TfrmRTZDYHelp;
implementation
uses
U_DataLink,U_RTFun;
{$R *.dfm}
procedure TfrmRTZDYHelp.FormCreate(Sender: TObject);
begin
try
cxGrid1.Align:=alClient;
with ADOConnection1 do
begin
Connected:=false;
ConnectionString:=DConString;
//ConnectionString:='';
Connected:=true;
end;
except
{if Application.MessageBox('网络连接失败,是否要再次连接?','提示',32+4)=IDYES then
begin
try
with ADOConnection1 do
begin
Connected:=false;
ConnectionString:=DConString;
//ConnectionString:='23242';
Connected:=true;
end;
except
end;
end; }
frmRTZDYHelp.Free;
end;
end;
procedure TfrmRTZDYHelp.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
ZDYName.SetFocus;
Action:=caFree;
end;
procedure TfrmRTZDYHelp.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Close;
sql.Clear;
sql.Add('select A.*,ZJM=dbo.getPinYin(A.ZdyName) from KH_ZDY A where A.Type='''+flag+'''');
if Trim(MainType)<>'' then
begin
sql.Add(' and A.MainType='''+Trim(MainType)+'''');
end;
Open;
end;
SCreateCDS(ADOQueryMain,ClientDataSet1);
SInitCDSData(ADOQueryMain,ClientDataSet1);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmRTZDYHelp.TBAddClick(Sender: TObject);
var
i:Integer;
begin
ZDYName.SetFocus;
TV1.OptionsData.Editing:=True;
TV1.OptionsSelection.CellSelect:=True;
for i:=0 to 5 do
begin
with ClientDataSet1 do
begin
Append;
Post;
end;
end;
end;
procedure TfrmRTZDYHelp.TBSaveClick(Sender: TObject);
var
maxno:string;
begin
if ClientDataSet1.IsEmpty then Exit;
ZDYName.SetFocus;
if ClientDataSet1.Locate('ZDYName',null,[]) then
begin
Application.MessageBox('名称不能为空!','提示',0);
Exit;
end;
if ClientDataSet1.Locate('ZDYName','',[]) then
begin
Application.MessageBox('名称不能为空!','提示',0);
Exit;
end;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryTemp do
begin
Close;
SQL.Clear;
SQL.Add('select * from KH_ZDY where ZdyNo='''+Trim(flag)+'''');
open;
end;
if ADOQueryTemp.IsEmpty then
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('insert into KH_ZDY(ZDYNo,ZDYName,Type,MainType) select :ZDYNo,:ZDYName,:Type,:MainType ');
Parameters.ParamByName('ZDYNo').Value:=Trim(flag);
Parameters.ParamByName('ZDYName').Value:=Trim(flagname);
Parameters.ParamByName('Type').Value:='Main';
Parameters.ParamByName('MainType').Value:=Trim(MainType);
ExecSQL;
end;
end;
with ADOQueryCmd do
begin
ClientDataSet1.DisableControls;
with ClientDataSet1 do
begin
First;
while not eof do
begin
if Trim(ClientDataSet1.FieldByName('ZDYNO').AsString)='' then
begin
if GetLSNo(ADOQueryTemp,maxno,'SY','KH_ZDY',3,1)=False then
begin
ADOQueryCmd.Connection.RollbackTrans;
ClientDataSet1.EnableControls;
Application.MessageBox('取最大编号失败!','提示',0);
Exit;
end;
end else
begin
maxno:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString);
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.add('select * from KH_Zdy where Type='''+Trim(flag)+'''');
if Trim(MainType)<>'' then
SQL.Add(' and MainType='''+Trim(MainType)+'''');
sql.Add(' and ZdyName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+'''');
Open;
end;
if ADOQueryTemp.IsEmpty=False then
begin
if ADOQueryTemp.RecordCount>1 then
begin
ADOQueryCmd.Connection.RollbackTrans;
ClientDataSet1.EnableControls;
Application.MessageBox('名称重复!','提示',0);
Exit;
end;
if Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)='' then
begin
ADOQueryCmd.Connection.RollbackTrans;
ClientDataSet1.EnableControls;
Application.MessageBox('名称重复!','提示',0);
Exit;
end else
begin
if Trim(ADOQueryTemp.fieldbyname('ZdyNo').AsString)<>Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString) then
begin
ADOQueryCmd.Connection.RollbackTrans;
ClientDataSet1.EnableControls;
Application.MessageBox('名称重复!','提示',0);
Exit;
end;
end;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
SQL.Add('delete KH_ZDY where ZDYNO='''+Trim(ClientDataSet1.fieldbyname('ZDYNO').AsString)+'''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from KH_ZDY where 1<>1');
Open;
end;
ADOQueryCmd.Append;
ADOQueryCmd.FieldByName('ZDYNo').Value:=Trim(maxno);
ADOQueryCmd.FieldByName('ZDYName').Value:=ClientDataSet1.fieldbyname('ZDYName').Value;
ADOQueryCmd.FieldByName('note').Value:=Trim(snote);
//ADOQueryCmd.FieldByName('orderno').Value:=ClientDataSet1.fieldbyname('Name').AsString;
ADOQueryCmd.FieldByName('Type').Value:=flag;
ADOQueryCmd.FieldByName('valid').Value:='Y';
if Trim(MainType)<>'' then
ADOQueryCmd.FieldByName('MainType').Value:=Trim(MainType);
//ADOQueryCmd.FieldByName('sel').Value:=0;
ADOQueryCmd.Post;
ClientDataSet1.Edit;
ClientDataSet1.FieldByName('ZDYNo').Value:=Trim(maxno);
ClientDataSet1.Post;
Next;
end;
end;
ClientDataSet1.EnableControls;
end;
ADOQueryCmd.Connection.CommitTrans;
Application.MessageBox('保存成功!','提示',0);
TV1.OptionsData.Editing:=False;
TV1.OptionsSelection.CellSelect:=False;
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('保存失败!','提示',0);
end;
end;
procedure TfrmRTZDYHelp.TBDelClick(Sender: TObject);
begin
if ClientDataSet1.IsEmpty then Exit;
if (Trim(ClientDataSet1.FieldByName('ZDYNo').AsString)<>'') or
(Trim(ClientDataSet1.FieldByName('ZDYname').AsString)<>'') then
begin
if application.MessageBox('确定要删除吗?','提示信息',1)=2 then exit;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete KH_ZDY where ZDYNo='''+Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString)+'''');
SQL.Add(' and Type='''+Trim(flag)+'''');
ExecSQL;
end;
end;
ClientDataSet1.Delete;
end;
procedure TfrmRTZDYHelp.TBCloseClick(Sender: TObject);
begin
ModalResult:=2;
ZDYName.SetFocus;
WriteCxGrid('自定义'+Trim(flag),TV1,'自定义数据');
Close;
end;
procedure TfrmRTZDYHelp.FormShow(Sender: TObject);
var
fsj,fsj1:string;
begin
{if PPSTE=1 then
begin
Application.Terminate;
Exit;
end; }
InitGrid();
fsj:=Trim(flag)+'01';
fsj1:=Trim(flagname)+'01';
{if ClientDataSet1.IsEmpty then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('insert into KH_ZDY(ZDYNo,ZDYname,Type,note)');
sql.Add('select '''+Trim(fsj)+'''');
sql.Add(','''+Trim(fsj1)+'''');
SQL.Add(','''+Trim(flag)+'''');
sql.Add(','''+Trim(snote)+'''');
ExecSQL;
end;
InitGrid();
end;}
//frmZDYHelp.Caption:=Trim(flagname)+'<'+Trim(flag)+'>';
//ReadCxGrid('自定义',TV1,'自定义数据');
ReadCxGrid('自定义'+Trim(flag),TV1,'自定义数据');
frmRTZDYHelp.Caption:=Trim(flagname);
V1Note.Visible:=fnote;
V1ZdyFlag.Visible:=fZdyFlag;
V1OrderNo.Visible:=forderno;
if ViewFlag=True then
begin
TBAdd.Visible:=False;
TBSave.Visible:=False;
TBDel.Visible:=False;
TBEdit.Visible:=False;
Label2.Visible:=False;
end;
end;
procedure TfrmRTZDYHelp.ToolButton1Click(Sender: TObject);
begin
ZDYName.SetFocus;
WriteCxGrid('自定义'+Trim(flag),TV1,'自定义数据');
ModalResult:=1;
end;
procedure TfrmRTZDYHelp.TBEditClick(Sender: TObject);
begin
TV1.OptionsData.Editing:=True;
TV1.OptionsSelection.CellSelect:=True;
end;
procedure TfrmRTZDYHelp.TV1CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
if TV1.OptionsData.Editing=False then
begin
ModalResult:=1;
end;
end;
procedure TfrmRTZDYHelp.ZDYNameChange(Sender: TObject);
var
fsj:String;
begin
if Trim(ZDYName.Text)<>'' then
begin
fsj:=' zdyname like '''+'%'+Trim(ZDYName.Text)+'%'+''''
+' or Note like '''+'%'+Trim(ZDYName.Text)+'%'+''''
+' or ZJM like '''+'%'+Trim(ZDYName.Text)+'%'+'''';
end;
if ADOQueryMain.Active then
begin
// SDofilter(ADOQueryMain,fsj);
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
if Trim(fsj)='' then
begin
Filtered:=False;
end else
begin
Filtered:=False;
Filter:=fsj;
Filtered:=True;
end;
end;
finally
ADOQueryMain.EnableControls;
end;
SCreateCDS(ADOQueryMain,ClientDataSet1);
SInitCDSData(ADOQueryMain,ClientDataSet1);
end;
end;
procedure TfrmRTZDYHelp.V1NamePropertiesEditValueChanged(Sender: TObject);
var
maxno,mvalue:string;
begin
mvalue:=TcxTextEdit(Sender).EditingText;
if Trim(mvalue)='' then
begin
//Application.MessageBox('名称不能为空!','提示',0);
Exit;
end;
with ClientDataSet1 do
begin
Edit;
FieldByName('ZdyName').Value:=Trim(mvalue);
//Post;
end;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryTemp do
begin
Close;
SQL.Clear;
SQL.Add('select * from KH_ZDY where ZdyNo='''+Trim(flag)+'''');
open;
end;
if ADOQueryTemp.IsEmpty then
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('insert into KH_ZDY(ZDYNo,ZDYName,Type,MainType) select :ZDYNo,:ZDYName,:Type,:MainType ');
Parameters.ParamByName('ZDYNo').Value:=Trim(flag);
Parameters.ParamByName('ZDYName').Value:=Trim(flagname);
Parameters.ParamByName('Type').Value:='Main';
Parameters.ParamByName('MainType').Value:=Trim(MainType);
ExecSQL;
end;
end;
with ADOQueryCmd do
begin
//ClientDataSet1.DisableControls;
//with ClientDataSet1 do
//begin
//First;
//while not eof do
//begin
if Trim(ClientDataSet1.FieldByName('ZDYNO').AsString)='' then
begin
if GetLSNo(ADOQueryTemp,maxno,'SY','KH_ZDY',3,1)=False then
begin
ADOQueryCmd.Connection.RollbackTrans;
//ClientDataSet1.EnableControls;
Application.MessageBox('取最大编号失败!','提示',0);
Exit;
end;
end else
begin
maxno:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString);
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.add('select * from KH_Zdy where Type='''+Trim(flag)+'''');
if Trim(MainType)<>'' then
SQL.Add(' and MainType='''+Trim(MainType)+'''');
sql.Add(' and ZdyName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+'''');
Open;
end;
if ADOQueryTemp.IsEmpty=False then
begin
if ADOQueryTemp.RecordCount>1 then
begin
ADOQueryCmd.Connection.RollbackTrans;
//ClientDataSet1.EnableControls;
Application.MessageBox('名称重复!','提示',0);
Exit;
end;
if Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)='' then
begin
ADOQueryCmd.Connection.RollbackTrans;
//ClientDataSet1.EnableControls;
Application.MessageBox('名称重复!','提示',0);
Exit;
end else
begin
if Trim(ADOQueryTemp.fieldbyname('ZdyNo').AsString)<>Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString) then
begin
ADOQueryCmd.Connection.RollbackTrans;
//ClientDataSet1.EnableControls;
Application.MessageBox('名称重复!','提示',0);
Exit;
end;
end;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
SQL.Add('delete KH_ZDY where ZDYNO='''+Trim(ClientDataSet1.fieldbyname('ZDYNO').AsString)+'''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from KH_ZDY where 1<>1');
Open;
end;
ADOQueryCmd.Append;
ADOQueryCmd.FieldByName('ZDYNo').Value:=Trim(maxno);
ADOQueryCmd.FieldByName('ZDYName').Value:=ClientDataSet1.fieldbyname('ZDYName').AsString;
ADOQueryCmd.FieldByName('note').Value:=Trim(snote);
//ADOQueryCmd.FieldByName('orderno').Value:=ClientDataSet1.fieldbyname('Name').AsString;
ADOQueryCmd.FieldByName('Type').Value:=flag;
ADOQueryCmd.FieldByName('valid').Value:='Y';
if Trim(MainType)<>'' then
ADOQueryCmd.FieldByName('MainType').Value:=Trim(MainType);
//ADOQueryCmd.FieldByName('sel').Value:=0;
ADOQueryCmd.Post;
ClientDataSet1.Edit;
ClientDataSet1.FieldByName('ZDYNo').Value:=Trim(maxno);
//ClientDataSet1.Post;
// Next;
//end;
//end;
// ClientDataSet1.EnableControls;
end;
ADOQueryCmd.Connection.CommitTrans;
//Application.MessageBox('保存成功!','提示',0);
//TV1.OptionsData.Editing:=False;
//TV1.OptionsSelection.CellSelect:=False;
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('保存失败!','提示',0);
end;
end;
procedure TfrmRTZDYHelp.V1OrderNoPropertiesEditValueChanged(Sender: TObject);
var
mvalue:string;
begin
if Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)='' then
begin
Application.MessageBox('名称不能为空!','提示',0);
Exit;
end;
mvalue:=TcxTextEdit(Sender).EditingText;
if Trim(mvalue)='' then
begin
mvalue:='0';
end;
with ClientDataSet1 do
begin
Edit;
FieldByName('OrderNo').Value:=mvalue;
Post;
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('Update KH_Zdy Set OrderNo='+mvalue);
sql.Add(' where ZdyNo='''+Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)+'''');
ExecSQL;
end;
end;
procedure TfrmRTZDYHelp.V1NotePropertiesEditValueChanged(Sender: TObject);
var
mvalue:string;
begin
if Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)='' then
begin
Application.MessageBox('名称不能为空!','提示',0);
Exit;
end;
mvalue:=TcxTextEdit(Sender).EditingText;
if Trim(mvalue)='' then
begin
mvalue:='0';
end;
with ClientDataSet1 do
begin
Edit;
FieldByName('Note').Value:=mvalue;
Post;
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('Update KH_Zdy Set Note='''+Trim(mvalue)+'''');
sql.Add(' where ZdyNo='''+Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)+'''');
ExecSQL;
end;
end;
procedure TfrmRTZDYHelp.V1Column1PropertiesEditValueChanged(Sender: TObject);
var
mvalue:String;
begin
if Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)='' then
begin
Application.MessageBox('名称不能为空!','提示',0);
Exit;
end;
mvalue:=TcxTextEdit(Sender).EditingText;
if Trim(mvalue)='' then
begin
mvalue:='0';
end;
with ClientDataSet1 do
begin
Edit;
FieldByName('ZdyFlag').Value:=StrToInt(mvalue);
Post;
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('Update KH_Zdy Set ZdyFlag='+Trim(mvalue));
sql.Add(' where ZdyNo='''+Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)+'''');
ExecSQL;
end;
end;
procedure TfrmRTZDYHelp.V1HelpTypePropertiesEditValueChanged(
Sender: TObject);
var
mvalue:string;
begin
if Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)='' then
begin
Application.MessageBox('名称不能为空!','提示',0);
Exit;
end;
mvalue:=TcxTextEdit(Sender).EditingText;
if Trim(mvalue)='' then
begin
mvalue:='0';
end;
with ClientDataSet1 do
begin
Edit;
FieldByName('HelpType').Value:=mvalue;
Post;
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('Update KH_Zdy Set HelpType='''+Trim(mvalue)+'''');
sql.Add(' where ZdyNo='''+Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)+'''');
ExecSQL;
end;
end;
end.

View File

@ -0,0 +1,104 @@
object frmSelExportField: TfrmSelExportField
Left = 473
Top = 162
BorderStyle = bsDialog
Caption = #23383#27573#23548#20986#36873#25321
ClientHeight = 493
ClientWidth = 430
Color = clBtnFace
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -12
Font.Name = #23435#20307
Font.Style = []
OldCreateOrder = False
Position = poScreenCenter
OnClose = FormClose
OnDestroy = FormDestroy
OnShow = FormShow
PixelsPerInch = 96
TextHeight = 12
object Button1: TButton
Left = 94
Top = 456
Width = 75
Height = 25
Caption = #30830#23450
TabOrder = 0
OnClick = Button1Click
end
object Button2: TButton
Left = 243
Top = 456
Width = 75
Height = 25
Caption = #20851#38381
TabOrder = 1
OnClick = Button2Click
end
object cxGrid1: TcxGrid
Left = 425
Top = 63
Width = 281
Height = 113
TabOrder = 2
Visible = False
object ExpGrid: TcxGridDBTableView
NavigatorButtons.ConfirmDelete = False
DataController.DataSource = ExportDataSource
DataController.Summary.DefaultGroupSummaryItems = <>
DataController.Summary.FooterSummaryItems = <>
DataController.Summary.SummaryGroups = <>
OptionsBehavior.AlwaysShowEditor = True
OptionsView.GroupByBox = False
end
object cxGrid1Level1: TcxGridLevel
GridView = ExpGrid
end
end
object Panel2: TScrollBox
Left = 2
Top = 0
Width = 423
Height = 438
HorzScrollBar.Visible = False
Color = clSkyBlue
ParentColor = False
TabOrder = 3
object Label4: TLabel
Left = 158
Top = 9
Width = 60
Height = 14
Caption = #23383#27573#36873#25321
Font.Charset = GB2312_CHARSET
Font.Color = clRed
Font.Height = -14
Font.Name = #23435#20307
Font.Style = [fsBold]
ParentFont = False
end
end
object CheckBox1: TCheckBox
Left = 20
Top = 449
Width = 49
Height = 17
Caption = #20840#36873
TabOrder = 4
OnClick = CheckBox1Click
end
object CheckBox2: TCheckBox
Left = 20
Top = 465
Width = 49
Height = 17
Caption = #20840#24323
TabOrder = 5
OnClick = CheckBox2Click
end
object ExportDataSource: TDataSource
Left = 424
Top = 233
end
end

View File

@ -0,0 +1,309 @@
unit U_SelExportField;
interface
uses
{Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, Grids, DBGrids, RM_FormReport, RM_PDBGrid,
DB,IniFiles, RM_Common, RM_Class, RM_e_Xls, cxStyles, cxCustomData,
cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData,
cxGridLevel, cxClasses, cxControls, cxGridCustomView,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGrid; }
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, ToolWin, StdCtrls, BtnEdit, cxStyles, cxCustomData,
cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit,DBGrids, DB, cxDBData,
cxGridLevel, cxClasses, cxControls, cxGridCustomView, ADODB,StrUtils,
Midas,cxGridCustomTableView, cxGridTableView, cxGridDBTableView,cxTimeEdit,
cxTreeView, cxGrid,cxDBLookupComboBox,cxCalendar, cxCurrencyEdit,cxExportGrid4Link,
ExtCtrls, Buttons,DBClient,FTComboBox,cxDropDownEdit,cxGridBandedTableView,
cxGridDBBandedTableView,cxRichEdit,cxButtonEdit,IniFiles,WinSock;
type
TfrmSelExportField = class(TForm)
Button1: TButton;
Button2: TButton;
ExportDataSource: TDataSource;
ExpGrid: TcxGridDBTableView;
cxGrid1Level1: TcxGridLevel;
cxGrid1: TcxGrid;
Panel2: TScrollBox;
Label4: TLabel;
CheckBox1: TCheckBox;
CheckBox2: TCheckBox;
procedure Button1Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormDestroy(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
procedure CheckBox2Click(Sender: TObject);
private
procedure CreateCheckBox();
procedure ExportData();
procedure ReadINIFile(fieldname:string);
procedure WriteINIFile(fieldname:string);
Function IsINIFile(fieldname:string):Boolean;
procedure GetExportFields();
procedure IsCheck();
procedure TcxGridToExcel(mfileName:string;gridName:TcxGrid);
{ Private declarations }
public
ExportFields,IniName:string;
{ Public declarations }
end;
var
frmSelExportField: TfrmSelExportField;
implementation
//uses U_SelPrintField,U_FormPas;
{$R *.dfm}
procedure TfrmSelExportField.CreateCheckBox();
var
i,j,FTop,FLeft,Fdiv,FMod:Integer;// mod 余数div商
FCheckBox:TCheckBox;
begin
for i:=0 to ExpGrid.ColumnCount-1 do
begin
Fdiv:=(i+1) div 3;
FMod:=(i+1) mod 3;
FCheckBox:=TCheckBox.Create(Self);
FCheckBox.Caption:=Trim(ExpGrid.Columns[i].Caption);
FCheckBox.TabOrder:=i;
FCheckBox.Parent:=Panel2;
FCheckBox.Checked:=True;
if FMod>0 then
FCheckBox.Top:=36*(Fdiv+1)
else
FCheckBox.Top:=36*Fdiv;
if FMod=1 then
FCheckBox.Left:=29
else if FMod=2 then
FCheckBox.Left:=163
else if FMod=0 then
FCheckBox.Left:=305;
end;
end;
procedure TfrmSelExportField.TcxGridToExcel(mfileName:string;gridName:TcxGrid);
var
saveDialog:TSaveDialog;
begin
try
saveDialog:=TSaveDialog.Create(nil);
saveDialog.Filter:='xls(*.xls)|*.xls|全部(*.*)|*.*';
saveDialog.Options:=[ofOverwritePrompt];
saveDialog.FileName:=mfileName;
if saveDialog.Execute then
if Assigned(gridName) then
begin
try
ExportGrid4ToExcel(saveDialog.FileName,gridName);
except
application.MessageBox('创建失败,源文件可能处于编辑状态!','提示信息',0);
exit;
end;
application.MessageBox('成功导出!','提示信息',0);
end
else
application.MessageBox('导出失败!','提示信息',0);
finally
saveDialog.Free;
end;
end;
procedure TfrmSelExportField.Button1Click(Sender: TObject);
begin
//ShowMessage('10除以3取余'+inttostr(10 mod 3)+',取整'+inttostr(10 div 3));
ExportData();
GetExportFields();
if IsINIFile(IniName)=True then
begin
DeleteFile(IniName);
end;
WriteINIFile(IniName);
end;
procedure TfrmSelExportField.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmSelExportField.FormDestroy(Sender: TObject);
begin
frmSelExportField:=nil;
end;
procedure TfrmSelExportField.FormShow(Sender: TObject);
begin
CreateCheckBox();
ReadINIFile(IniName);
IsCheck();
end;
procedure TfrmSelExportField.IsCheck();
var
i:Integer;
fsj:string;
begin
with Panel2 do
begin
for i:=0 to Panel2.ControlCount-1 do
begin
if Controls[i] is TCheckBox then
begin
fsj:=Trim(TCheckBox(Controls[i]).Caption);
if Pos(fsj,ExportFields)>0 then
TCheckBox(Controls[i]).Checked:=True
else
TCheckBox(Controls[i]).Checked:=False;
end;
end;
end;
end;
procedure TfrmSelExportField.ExportData();
var
i,j:Integer;
begin
j:=0;
with Panel2 do
begin
for i:=0 to Panel2.ControlCount-1 do
begin
if Controls[i] is TCheckBox then
begin
if TCheckBox(Controls[i]).Checked=True then
begin
j:=1;
ExpGrid.Columns[TCheckBox(Controls[i]).TabOrder].Visible:=True
end else
begin
ExpGrid.Columns[TCheckBox(Controls[i]).TabOrder].Visible:=False;
end;
end;
end;
end;
TcxGridToExcel(Trim(IniName),cxGrid1);
end;
procedure TfrmSelExportField.Button2Click(Sender: TObject);
begin
Close;
end;
procedure TfrmSelExportField.ReadINIFile(fieldname:string);
var
programIni:Tinifile; //配置文件名
FName:string;
begin
FName:=ExtractFilePath(Application.ExeName)+'FieldExportSet\' +trim(fieldname)+'.INI';
programIni:=Tinifile.create(FName);
ExportFields:=programIni.ReadString('导出设置','导出字段','');
programIni.Free;
end;
procedure TfrmSelExportField.GetExportFields();
var
i:Integer;
begin
ExportFields:='Begin';
with Panel2 do
begin
for i:=0 to Panel2.ControlCount-1 do
begin
if Controls[i] is TCheckBox then
begin
if TCheckBox(Controls[i]).Checked then
begin
ExportFields:=ExportFields+'/'+TCheckBox(Controls[i]).Caption;
end;
end;
end;
end;
end;
//////////////////////////////////////////////////////////////////
//写设置信息到INI文件
//参数
//////////////////////////////////////////////////////////////////
procedure TfrmSelExportField.WriteINIFile(fieldname:string);
var
programIni:Tinifile; //配置文件名
FName:string;
begin
FName:=ExtractFilePath(Application.ExeName)+'FieldExportSet\'+trim(fieldname)+'.INI';
if not DirectoryExists(ExtractFileDir(FName)) then
CreateDir(ExtractFileDir(FName));
programIni:=Tinifile.create(FName);
programIni.WriteString('导出设置','导出字段',ExportFields);
programIni.Free;
end;
//////////////////////////////////////////////////////////////////
//判断InI文件是否存在
//////////////////////////////////////////////////////////////////
Function TfrmSelExportField.IsINIFile(fieldname:string):Boolean;
var
FName:string;
begin
FName:=ExtractFilePath(Application.ExeName)+'FieldExportSet\'+trim(fieldname)+'.INI';
if FileExists(FName) then
Result:=True
else
Result:=false;
end;
procedure TfrmSelExportField.CheckBox1Click(Sender: TObject);
var
i:Integer;
begin
if CheckBox1.Checked then
begin
CheckBox2.Checked:=False;
with Panel2 do
begin
for i:=0 to Panel2.ControlCount-1 do
begin
if Controls[i] is TCheckBox then
begin
if (TCheckBox(Controls[i]).Name<>'CheckBox1') and (TCheckBox(Controls[i]).Name<>'CheckBox2') then
begin
TCheckBox(Controls[i]).Checked:=True;
end;
end;
end;
end;
end;
end;
procedure TfrmSelExportField.CheckBox2Click(Sender: TObject);
var
i:Integer;
begin
if CheckBox2.Checked then
begin
CheckBox1.Checked:=False;
with Panel2 do
begin
for i:=0 to Panel2.ControlCount-1 do
begin
if Controls[i] is TCheckBox then
begin
if (TCheckBox(Controls[i]).Name<>'CheckBox1') and (TCheckBox(Controls[i]).Name<>'CheckBox2') then
begin
TCheckBox(Controls[i]).Checked:=False;
end;
end;
end;
end;
end;
end;
end.

View File

@ -0,0 +1,154 @@
object frmSelPrintField: TfrmSelPrintField
Left = 329
Top = 100
Caption = #23383#27573#25171#21360#36873#25321
ClientHeight = 492
ClientWidth = 411
Color = clBtnFace
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -12
Font.Name = #23435#20307
Font.Style = []
OldCreateOrder = False
Position = poScreenCenter
OnClose = FormClose
OnDestroy = FormDestroy
OnShow = FormShow
PixelsPerInch = 96
TextHeight = 12
object Button1: TButton
Left = 94
Top = 456
Width = 75
Height = 25
Caption = #30830#23450
TabOrder = 0
OnClick = Button1Click
end
object Button2: TButton
Left = 243
Top = 456
Width = 75
Height = 25
Caption = #20851#38381
TabOrder = 1
OnClick = Button2Click
end
object PrnGrid: TDBGrid
Left = 497
Top = 93
Width = 200
Height = 120
DataSource = PrintDataSource
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -13
Font.Name = #23435#20307
Font.Style = []
ParentFont = False
TabOrder = 2
TitleFont.Charset = ANSI_CHARSET
TitleFont.Color = clWindowText
TitleFont.Height = -16
TitleFont.Name = #23435#20307
TitleFont.Style = []
Visible = False
end
object ScrollBox1: TScrollBox
Left = 2
Top = 0
Width = 415
Height = 438
Color = clSkyBlue
ParentColor = False
TabOrder = 3
object Label4: TLabel
Left = 158
Top = 9
Width = 60
Height = 14
Caption = #23383#27573#36873#25321
Font.Charset = GB2312_CHARSET
Font.Color = clRed
Font.Height = -14
Font.Name = #23435#20307
Font.Style = [fsBold]
ParentFont = False
end
end
object RMPrintDBGrid1: TRMPrintDBGrid
ReportOptions = [rmgoStretch, rmgoWordWrap, rmgoGridLines]
PageLayout.ColumnCount = 1
PageLayout.ColumnGap = 0
PageLayout.PageSize = 9
PageLayout.LeftMargin = 38
PageLayout.TopMargin = 38
PageLayout.RightMargin = 38
PageLayout.BottomMargin = 38
PageLayout.Height = 2970
PageLayout.Width = 2100
PageLayout.PageOrientation = rmpoPortrait
PageLayout.PageBin = 0
PageLayout.PrinterName = #40664#35748#25171#21360#26426
PageLayout.DoublePass = False
PageLayout.ColorPrint = False
PageHeaderMsg.Font.Charset = GB2312_CHARSET
PageHeaderMsg.Font.Color = clWindowText
PageHeaderMsg.Font.Height = -13
PageHeaderMsg.Font.Name = #23435#20307
PageHeaderMsg.Font.Style = []
PageFooterMsg.Font.Charset = GB2312_CHARSET
PageFooterMsg.Font.Color = clWindowText
PageFooterMsg.Font.Height = -15
PageFooterMsg.Font.Name = #23435#20307
PageFooterMsg.Font.Style = []
PageCaptionMsg.CaptionMsg.Font.Charset = GB2312_CHARSET
PageCaptionMsg.CaptionMsg.Font.Color = clWindowText
PageCaptionMsg.CaptionMsg.Font.Height = -13
PageCaptionMsg.CaptionMsg.Font.Name = #23435#20307
PageCaptionMsg.CaptionMsg.Font.Style = []
PageCaptionMsg.TitleFont.Charset = GB2312_CHARSET
PageCaptionMsg.TitleFont.Color = clWindowText
PageCaptionMsg.TitleFont.Height = -16
PageCaptionMsg.TitleFont.Name = #23435#20307
PageCaptionMsg.TitleFont.Style = [fsBold]
MasterDataBandOptions.ReprintColumnHeaderOnNewColumn = True
GridNumOptions.Text = 'No'
GridFontOptions.Font.Charset = ANSI_CHARSET
GridFontOptions.Font.Color = clWindowText
GridFontOptions.Font.Height = -15
GridFontOptions.Font.Name = #23435#20307
GridFontOptions.Font.Style = []
ReportSettings.InitialZoom = pzDefault
ReportSettings.PreviewButtons = [rmpbZoom, rmpbLoad, rmpbSave, rmpbPrint, rmpbFind, rmpbPageSetup, rmpbExit, rmpbExport, rmpbNavigator]
DBGrid = PrnGrid
Left = 339
Top = 449
end
object PrintDataSource: TDataSource
DataSet = ClientDataSet1
Left = 536
Top = 246
end
object RMXLSExport1: TRMXLSExport
ShowAfterExport = True
ExportPrecision = 1
PagesOfSheet = 1
ExportImages = True
ExportFrames = True
ExportImageFormat = ifBMP
JPEGQuality = 0
ScaleX = 1.000000000000000000
ScaleY = 1.000000000000000000
CompressFile = False
Left = 359
Top = 368
end
object ClientDataSet1: TClientDataSet
Aggregates = <>
Params = <>
Left = 378
Top = 340
end
end

View File

@ -0,0 +1,241 @@
unit U_SelPrintField;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, Grids, DBGrids, RM_FormReport, RM_PDBGrid,
DB,IniFiles, RM_Common, RM_Class, RM_e_Xls, DBClient;
type
TfrmSelPrintField = class(TForm)
RMPrintDBGrid1: TRMPrintDBGrid;
Button1: TButton;
Button2: TButton;
PrintDataSource: TDataSource;
PrnGrid: TDBGrid;
RMXLSExport1: TRMXLSExport;
ClientDataSet1: TClientDataSet;
ScrollBox1: TScrollBox;
Label4: TLabel;
procedure Button1Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormDestroy(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
procedure CreateCheckBox();
procedure PrintData();
procedure ReadINIFile(fieldname:string);
procedure WriteINIFile(fieldname:string);
Function IsINIFile(fieldname:string):Boolean;
procedure GetPrintFields();
procedure IsCheck();
{ Private declarations }
public
PrintFields,IniName:string;
{ Public declarations }
end;
var
frmSelPrintField: TfrmSelPrintField;
implementation
{$R *.dfm}
procedure TfrmSelPrintField.CreateCheckBox();
var
i,j,FTop,FLeft,Fdiv,FMod:Integer;// mod 余数div商
FCheckBox:TCheckBox;
begin
for i:=0 to PrnGrid.Columns.Count-1 do
begin
Fdiv:=(i+1) div 3;
FMod:=(i+1) mod 3;
FCheckBox:=TCheckBox.Create(Self);
FCheckBox.Caption:=Trim(PrnGrid.Columns[i].Title.Caption);
FCheckBox.TabOrder:=i;
FCheckBox.Parent:=ScrollBox1;
FCheckBox.Checked:=True;
if FMod>0 then
FCheckBox.Top:=36*(Fdiv+1)
else
FCheckBox.Top:=36*Fdiv;
if FMod=1 then
FCheckBox.Left:=29
else if FMod=2 then
FCheckBox.Left:=163
else if FMod=0 then
FCheckBox.Left:=305;
end;
end;
procedure TfrmSelPrintField.Button1Click(Sender: TObject);
begin
//ShowMessage('10除以3取余'+inttostr(10 mod 3)+',取整'+inttostr(10 div 3));
PrintData();
GetPrintFields();
if IsINIFile(IniName)=True then
begin
DeleteFile(IniName);
end;
WriteINIFile(IniName);
end;
procedure TfrmSelPrintField.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmSelPrintField.FormDestroy(Sender: TObject);
begin
frmSelPrintField:=nil;
end;
procedure TfrmSelPrintField.FormShow(Sender: TObject);
begin
CreateCheckBox();
ReadINIFile(IniName);
IsCheck();
end;
procedure TfrmSelPrintField.IsCheck();
var
i:Integer;
fsj:string;
begin
with ScrollBox1 do
begin
for i:=0 to ScrollBox1.ControlCount-1 do
begin
if Controls[i] is TCheckBox then
begin
fsj:=Trim(TCheckBox(Controls[i]).Caption);
if Pos(fsj,PrintFields)>0 then
TCheckBox(Controls[i]).Checked:=True
else
TCheckBox(Controls[i]).Checked:=False;
end;
end;
end;
end;
procedure TfrmSelPrintField.PrintData();
var
i,j,k:Integer;
FFieldName:string;
begin
j:=0;
k:=0;
with ScrollBox1 do
begin
for i:=0 to ScrollBox1.ControlCount-1 do
begin
if Controls[i] is TCheckBox then
begin
if TCheckBox(Controls[i]).Checked=True then
begin
j:=1;
PrnGrid.Columns[TCheckBox(Controls[i]).TabOrder].Visible:=True;
k:=k+1;
if k=1 then
begin
FFieldName:=PrnGrid.Columns[TCheckBox(Controls[i]).TabOrder].FieldName;
end;
end else
begin
PrnGrid.Columns[TCheckBox(Controls[i]).TabOrder].Visible:=False;
end;
end;
end;
end;
{ClientDataSet1.Last;
if Trim(ClientDataSet1.FieldByName('flag').AsString)='Y' then
begin
ClientDataSet1.Edit;
ClientDataSet1.FieldByName(FFieldName).Value:='合计';
ClientDataSet1.Post;
end;}
if j=1 then
begin
RMPrintDBGrid1.ShowReport ;
end
else
begin
Application.MessageBox('没有可打印的信息!','提示',0);
Exit;
end;
//Panel2.Visible:=False;
//RMPrintDBGrid1.ShowReport;
end;
procedure TfrmSelPrintField.Button2Click(Sender: TObject);
begin
Close;
end;
procedure TfrmSelPrintField.ReadINIFile(fieldname:string);
var
programIni:Tinifile; //配置文件名
FName:string;
begin
FName:=ExtractFilePath(Application.ExeName)+'FieldPrintSet\' +trim(fieldname)+'.INI';
programIni:=Tinifile.create(FName);
PrintFields:=programIni.ReadString('打印设置','打印字段','');
programIni.Free;
end;
procedure TfrmSelPrintField.GetPrintFields();
var
i:Integer;
begin
PrintFields:='Begin';
with ScrollBox1 do
begin
for i:=0 to ScrollBox1.ControlCount-1 do
begin
if Controls[i] is TCheckBox then
begin
if TCheckBox(Controls[i]).Checked then
begin
PrintFields:=PrintFields+'/'+TCheckBox(Controls[i]).Caption;
end;
end;
end;
end;
end;
//////////////////////////////////////////////////////////////////
//写设置信息到INI文件
//参数
//////////////////////////////////////////////////////////////////
procedure TfrmSelPrintField.WriteINIFile(fieldname:string);
var
programIni:Tinifile; //配置文件名
FName:string;
begin
FName:=ExtractFilePath(Application.ExeName)+'FieldPrintSet\'+trim(fieldname)+'.INI';
if not DirectoryExists(ExtractFileDir(FName)) then
CreateDir(ExtractFileDir(FName));
programIni:=Tinifile.create(FName);
programIni.WriteString('打印设置','打印字段',PrintFields);
programIni.Free;
end;
//////////////////////////////////////////////////////////////////
//判断InI文件是否存在
//////////////////////////////////////////////////////////////////
Function TfrmSelPrintField.IsINIFile(fieldname:string):Boolean;
var
FName:string;
begin
FName:=ExtractFilePath(Application.ExeName)+'FieldPrintSet\'+trim(fieldname)+'.INI';
if FileExists(FName) then
Result:=True
else
Result:=false;
end;
end.

View File

@ -0,0 +1,183 @@
object frmSelPrintFieldNew: TfrmSelPrintFieldNew
Left = 219
Top = 32
BorderStyle = bsDialog
Caption = #23383#27573#25171#21360#36873#25321
ClientHeight = 493
ClientWidth = 428
Color = clBtnFace
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -12
Font.Name = #23435#20307
Font.Style = []
OldCreateOrder = False
Position = poScreenCenter
OnClose = FormClose
OnDestroy = FormDestroy
OnShow = FormShow
PixelsPerInch = 96
TextHeight = 12
object Button1: TButton
Left = 94
Top = 456
Width = 75
Height = 25
Caption = #30830#23450
TabOrder = 0
OnClick = Button1Click
end
object Button2: TButton
Left = 243
Top = 456
Width = 75
Height = 25
Caption = #20851#38381
TabOrder = 1
OnClick = Button2Click
end
object PrnGrid: TDBGrid
Left = 17
Top = 165
Width = 320
Height = 120
DataSource = PrintDataSource
Font.Charset = GB2312_CHARSET
Font.Color = clWindowText
Font.Height = -12
Font.Name = #23435#20307
Font.Style = []
ParentFont = False
TabOrder = 2
TitleFont.Charset = GB2312_CHARSET
TitleFont.Color = clWindowText
TitleFont.Height = -12
TitleFont.Name = #23435#20307
TitleFont.Style = []
Visible = False
end
object Panel2: TScrollBox
Left = 2
Top = 0
Width = 423
Height = 438
HorzScrollBar.Visible = False
BevelInner = bvSpace
BevelKind = bkTile
BorderStyle = bsNone
Color = clSkyBlue
Font.Charset = GB2312_CHARSET
Font.Color = clWindowText
Font.Height = -12
Font.Name = #23435#20307
Font.Style = []
ParentColor = False
ParentFont = False
TabOrder = 3
object Label4: TLabel
Left = 166
Top = 9
Width = 60
Height = 14
Caption = #23383#27573#36873#25321
Font.Charset = GB2312_CHARSET
Font.Color = clRed
Font.Height = -14
Font.Name = #23435#20307
Font.Style = [fsBold]
ParentFont = False
end
end
object CheckBox1: TCheckBox
Left = 21
Top = 450
Width = 49
Height = 17
Caption = #20840#36873
TabOrder = 4
OnClick = CheckBox1Click
end
object CheckBox2: TCheckBox
Left = 21
Top = 466
Width = 49
Height = 17
Caption = #20840#24323
TabOrder = 5
OnClick = CheckBox2Click
end
object RMPrintDBGrid1: TRMPrintDBGrid
ReportOptions = [rmgoStretch, rmgoWordWrap, rmgoGridLines]
PageLayout.ColumnCount = 1
PageLayout.ColumnGap = 0
PageLayout.PageSize = 9
PageLayout.LeftMargin = 38
PageLayout.TopMargin = 38
PageLayout.RightMargin = 38
PageLayout.BottomMargin = 38
PageLayout.Height = 2970
PageLayout.Width = 2100
PageLayout.PageOrientation = rmpoPortrait
PageLayout.PageBin = 0
PageLayout.PrinterName = #40664#35748#25171#21360#26426
PageLayout.DoublePass = False
PageLayout.ColorPrint = False
PageHeaderMsg.Font.Charset = GB2312_CHARSET
PageHeaderMsg.Font.Color = clWindowText
PageHeaderMsg.Font.Height = -13
PageHeaderMsg.Font.Name = #23435#20307
PageHeaderMsg.Font.Style = []
PageFooterMsg.Font.Charset = GB2312_CHARSET
PageFooterMsg.Font.Color = clWindowText
PageFooterMsg.Font.Height = -15
PageFooterMsg.Font.Name = #23435#20307
PageFooterMsg.Font.Style = []
PageCaptionMsg.CaptionMsg.Font.Charset = GB2312_CHARSET
PageCaptionMsg.CaptionMsg.Font.Color = clWindowText
PageCaptionMsg.CaptionMsg.Font.Height = -12
PageCaptionMsg.CaptionMsg.Font.Name = #23435#20307
PageCaptionMsg.CaptionMsg.Font.Style = []
PageCaptionMsg.TitleFont.Charset = GB2312_CHARSET
PageCaptionMsg.TitleFont.Color = clWindowText
PageCaptionMsg.TitleFont.Height = -16
PageCaptionMsg.TitleFont.Name = #23435#20307
PageCaptionMsg.TitleFont.Style = [fsBold]
MasterDataBandOptions.ReprintColumnHeaderOnNewColumn = True
GridNumOptions.Text = 'No'
GridFontOptions.Font.Charset = ANSI_CHARSET
GridFontOptions.Font.Color = clWindowText
GridFontOptions.Font.Height = -15
GridFontOptions.Font.Name = #23435#20307
GridFontOptions.Font.Style = []
ReportSettings.InitialZoom = pzDefault
ReportSettings.PreviewButtons = [rmpbZoom, rmpbLoad, rmpbSave, rmpbPrint, rmpbFind, rmpbPageSetup, rmpbExit, rmpbExport, rmpbNavigator]
DBGrid = PrnGrid
Left = 339
Top = 449
end
object PrintDataSource: TDataSource
DataSet = ClientDataSet1
Left = 536
Top = 246
end
object RMXLSExport1: TRMXLSExport
ShowAfterExport = True
ExportPrecision = 1
PagesOfSheet = 1
ExportImages = True
ExportFrames = True
ExportImageFormat = ifBMP
JPEGQuality = 0
ScaleX = 1.000000000000000000
ScaleY = 1.000000000000000000
CompressFile = False
Left = 359
Top = 368
end
object ClientDataSet1: TClientDataSet
Aggregates = <>
Params = <>
Left = 378
Top = 340
end
end

View File

@ -0,0 +1,292 @@
unit U_SelPrintFieldNew;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, Grids, DBGrids, RM_FormReport, RM_PDBGrid,
DB,IniFiles, RM_Common, RM_Class, RM_e_Xls, DBClient;
type
TfrmSelPrintFieldNew = class(TForm)
RMPrintDBGrid1: TRMPrintDBGrid;
Button1: TButton;
Button2: TButton;
PrintDataSource: TDataSource;
PrnGrid: TDBGrid;
RMXLSExport1: TRMXLSExport;
ClientDataSet1: TClientDataSet;
Panel2: TScrollBox;
Label4: TLabel;
CheckBox1: TCheckBox;
CheckBox2: TCheckBox;
procedure Button1Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormDestroy(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
procedure CheckBox2Click(Sender: TObject);
private
procedure CreateCheckBox();
procedure PrintData();
procedure ReadINIFile(fieldname:string);
procedure WriteINIFile(fieldname:string);
Function IsINIFile(fieldname:string):Boolean;
procedure GetPrintFields();
procedure IsCheck();
{ Private declarations }
public
PrintFields,IniName:string;
{ Public declarations }
end;
var
frmSelPrintFieldNew: TfrmSelPrintFieldNew;
implementation
{$R *.dfm}
procedure TfrmSelPrintFieldNew.CreateCheckBox();
var
i,j,FTop,FLeft,Fdiv,FMod:Integer;// mod 余数div商
FCheckBox:TCheckBox;
begin
for i:=0 to PrnGrid.Columns.Count-1 do
begin
Fdiv:=(i+1) div 3;
FMod:=(i+1) mod 3;
FCheckBox:=TCheckBox.Create(Self);
FCheckBox.Caption:=Trim(PrnGrid.Columns[i].Title.Caption);
FCheckBox.TabOrder:=i;
FCheckBox.Parent:=Panel2;
FCheckBox.Checked:=True;
if FMod>0 then
FCheckBox.Top:=36*(Fdiv+1)
else
FCheckBox.Top:=36*Fdiv;
if FMod=1 then
FCheckBox.Left:=29
else if FMod=2 then
FCheckBox.Left:=163
else if FMod=0 then
FCheckBox.Left:=305;
end;
end;
procedure TfrmSelPrintFieldNew.Button1Click(Sender: TObject);
begin
//ShowMessage('10除以3取余'+inttostr(10 mod 3)+',取整'+inttostr(10 div 3));
PrintData();
GetPrintFields();
if IsINIFile(IniName)=True then
begin
DeleteFile(IniName);
end;
WriteINIFile(IniName);
end;
procedure TfrmSelPrintFieldNew.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmSelPrintFieldNew.FormDestroy(Sender: TObject);
begin
frmSelPrintFieldNew:=nil;
end;
procedure TfrmSelPrintFieldNew.FormShow(Sender: TObject);
begin
CreateCheckBox();
ReadINIFile(IniName);
IsCheck();
end;
procedure TfrmSelPrintFieldNew.IsCheck();
var
i:Integer;
fsj:string;
begin
with Panel2 do
begin
for i:=0 to Panel2.ControlCount-1 do
begin
if Controls[i] is TCheckBox then
begin
fsj:=Trim(TCheckBox(Controls[i]).Caption);
if Pos(fsj,PrintFields)>0 then
TCheckBox(Controls[i]).Checked:=True
else
TCheckBox(Controls[i]).Checked:=False;
end;
end;
end;
end;
procedure TfrmSelPrintFieldNew.PrintData();
var
i,j,k:Integer;
FFieldName:string;
begin
j:=0;
k:=0;
with Panel2 do
begin
for i:=0 to Panel2.ControlCount-1 do
begin
if Controls[i] is TCheckBox then
begin
if TCheckBox(Controls[i]).Checked=True then
begin
j:=1;
PrnGrid.Columns[TCheckBox(Controls[i]).TabOrder].Visible:=True;
k:=k+1;
if k=1 then
begin
FFieldName:=PrnGrid.Columns[TCheckBox(Controls[i]).TabOrder].FieldName;
end;
end else
begin
PrnGrid.Columns[TCheckBox(Controls[i]).TabOrder].Visible:=False;
end;
end;
end;
end;
{ClientDataSet1.Last;
if Trim(ClientDataSet1.FieldByName('flag').AsString)='Y' then
begin
ClientDataSet1.Edit;
ClientDataSet1.FieldByName(FFieldName).Value:='合计';
ClientDataSet1.Post;
end;}
if j=1 then
begin
RMPrintDBGrid1.ShowReport ;
end
else
begin
Application.MessageBox('没有可打印的信息!','提示',0);
Exit;
end;
//Panel2.Visible:=False;
//RMPrintDBGrid1.ShowReport;
end;
procedure TfrmSelPrintFieldNew.Button2Click(Sender: TObject);
begin
Close;
end;
procedure TfrmSelPrintFieldNew.ReadINIFile(fieldname:string);
var
programIni:Tinifile; //配置文件名
FName:string;
begin
FName:=ExtractFilePath(Application.ExeName)+'FieldPrintSet\' +trim(fieldname)+'.INI';
programIni:=Tinifile.create(FName);
PrintFields:=programIni.ReadString('打印设置','打印字段','');
programIni.Free;
end;
procedure TfrmSelPrintFieldNew.GetPrintFields();
var
i:Integer;
begin
PrintFields:='Begin';
with Panel2 do
begin
for i:=0 to Panel2.ControlCount-1 do
begin
if Controls[i] is TCheckBox then
begin
if TCheckBox(Controls[i]).Checked then
begin
PrintFields:=PrintFields+'/'+TCheckBox(Controls[i]).Caption;
end;
end;
end;
end;
end;
//////////////////////////////////////////////////////////////////
//写设置信息到INI文件
//参数
//////////////////////////////////////////////////////////////////
procedure TfrmSelPrintFieldNew.WriteINIFile(fieldname:string);
var
programIni:Tinifile; //配置文件名
FName:string;
begin
FName:=ExtractFilePath(Application.ExeName)+'FieldPrintSet\'+trim(fieldname)+'.INI';
if not DirectoryExists(ExtractFileDir(FName)) then
CreateDir(ExtractFileDir(FName));
programIni:=Tinifile.create(FName);
programIni.WriteString('打印设置','打印字段',PrintFields);
programIni.Free;
end;
//////////////////////////////////////////////////////////////////
//判断InI文件是否存在
//////////////////////////////////////////////////////////////////
Function TfrmSelPrintFieldNew.IsINIFile(fieldname:string):Boolean;
var
FName:string;
begin
FName:=ExtractFilePath(Application.ExeName)+'FieldPrintSet\'+trim(fieldname)+'.INI';
if FileExists(FName) then
Result:=True
else
Result:=false;
end;
procedure TfrmSelPrintFieldNew.CheckBox1Click(Sender: TObject);
var
i:Integer;
begin
if CheckBox1.Checked then
begin
CheckBox2.Checked:=False;
with Panel2 do
begin
for i:=0 to Panel2.ControlCount-1 do
begin
if Controls[i] is TCheckBox then
begin
if (TCheckBox(Controls[i]).Name<>'CheckBox1') and (TCheckBox(Controls[i]).Name<>'CheckBox2') then
begin
TCheckBox(Controls[i]).Checked:=True;
end;
end;
end;
end;
end;
end;
procedure TfrmSelPrintFieldNew.CheckBox2Click(Sender: TObject);
var
i:Integer;
begin
if CheckBox2.Checked then
begin
CheckBox1.Checked:=False;
with Panel2 do
begin
for i:=0 to Panel2.ControlCount-1 do
begin
if Controls[i] is TCheckBox then
begin
if (TCheckBox(Controls[i]).Name<>'CheckBox1') and (TCheckBox(Controls[i]).Name<>'CheckBox2') then
begin
TCheckBox(Controls[i]).Checked:=False;
end;
end;
end;
end;
end;
end;
end.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,204 @@
unit U_SysLogHelp;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, ToolWin, cxStyles, cxCustomData, cxGraphics, cxFilter,
cxData, cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, strUtils,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses,
cxControls, cxGridCustomView, cxGrid, ADODB, StdCtrls, ExtCtrls, ImgList,
cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore, dxSkinsDefaultPainters,
cxNavigator, dxDateRanges, System.ImageList;
type
TfrmSysLogHelp = class(TForm)
ToolBar1: TToolBar;
TQry: TToolButton;
Tclose: TToolButton;
ADOQueryLog: TADOQuery;
DataSource1: TDataSource;
ADOConnection1: TADOConnection;
cxGrid1: TcxGrid;
tv1: TcxGridDBTableView;
tv1OperMan: TcxGridDBColumn;
tv1jopertime: TcxGridDBColumn;
tv1Model: TcxGridDBColumn;
tv1acction: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
tv1Opevent: TcxGridDBColumn;
tv1Result: TcxGridDBColumn;
Panel1: TPanel;
Label2: TLabel;
begDate: TDateTimePicker;
endDate: TDateTimePicker;
Label3: TLabel;
edt_model: TEdit;
CheckBox1: TCheckBox;
Label4: TLabel;
Opevent: TEdit;
ThreeImgList: TImageList;
ImageList_new32: TImageList;
ThreeColorBase: TcxStyleRepository;
SHuangSe: TcxStyle;
SkyBlue: TcxStyle;
Default: TcxStyle;
QHuangSe: TcxStyle;
Red: TcxStyle;
FontBlue: TcxStyle;
TextSHuangSe: TcxStyle;
FonePurple: TcxStyle;
FoneClMaroon: TcxStyle;
FoneRed: TcxStyle;
RowColor: TcxStyle;
handBlack: TcxStyle;
cxBlue: TcxStyle;
SHuangSeCu: TcxStyle;
procedure TcloseClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TQryClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure OpeventKeyPress(Sender: TObject; var Key: Char);
private
procedure DoQuery();
procedure DoFilter();
public
fModel, facction: string;
fOtherWhere: string;
end;
var
frmSysLogHelp: TfrmSysLogHelp;
implementation
uses
U_DataLink, U_RTFun;
{$R *.dfm}
procedure TfrmSysLogHelp.TcloseClick(Sender: TObject);
begin
close;
end;
procedure TfrmSysLogHelp.FormCreate(Sender: TObject);
begin
cxGrid1.Align := alClient;
begDate.DateTime := date - 31;
endDate.DateTime := date;
with ADOConnection1 do
begin
Connected := false;
ConnectionString := DConString;
Connected := true;
end;
end;
/////////////////////////////////////////////////////////
//
////////////////////////////////////////////////////////
procedure TfrmSysLogHelp.DoQuery();
var
mbegdate, menddate: string;
begin
mbegdate := formatDatetime('yyyy-MM-dd', begDate.Date);
menddate := formatDatetime('yyyy-MM-dd', endDate.Date + 1);
try
with ADOQueryLog do
begin
close;
sql.clear;
filtered := false;
sql.add('select A.* ');
sql.add('from SY_sysLog A');
if CheckBox1.Checked then
begin
sql.Add('where OperTime>=' + quotedStr(mbegdate));
sql.Add('and OperTime<' + quotedStr(menddate));
end
else
begin
sql.Add('where 1=1');
end;
if trim(Opevent.Text) <> '' then
sql.add('and Opevent LIKE ' + quotedStr('%' + Opevent.Text + '%'));
if trim(fModel) <> '' then
sql.add('and Model=' + quotedStr(fModel));
if trim(facction) <> '' then
sql.add('and acction=' + quotedStr(facction));
if trim(fOtherWhere) <> '' then
begin
sql.add(fOtherWhere);
end;
sql.Add('order by operOr,Opertime');
Open;
end;
finally
end;
end;
///////////////////////////////////////////////////////////
//
///////////////////////////////////////////////////////////
procedure TfrmSysLogHelp.DoFilter();
var
filterStr: string;
begin
filterStr := '';
if trim(edt_model.text) <> '' then
begin
filterStr := ' and model =' + quotedStr(trim(edt_model.text));
end;
if trim(Opevent.text) <> '' then
begin
filterStr := ' and OpEvent like ' + quotedStr('%' + trim(Opevent.text) + '%');
end;
try
ADOQueryLog.DisableControls;
if trim(filterStr) = '' then
begin
ADOQueryLog.Filtered := false;
exit;
end;
filterStr := trim(RightBStr(filterStr, length(filterStr) - 3));
with ADOQueryLog do
begin
filtered := false;
filter := filterStr;
filtered := true;
end;
finally
ADOQueryLog.EnableControls;
end;
end;
procedure TfrmSysLogHelp.FormShow(Sender: TObject);
begin
DoQuery();
end;
procedure TfrmSysLogHelp.OpeventKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
DoQuery();
end;
end;
procedure TfrmSysLogHelp.TQryClick(Sender: TObject);
begin
DoQuery();
end;
procedure TfrmSysLogHelp.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := cafree;
end;
end.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,216 @@
unit U_UserHelp;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, cxFilter,
cxData, cxDataStorage, cxEdit, DB, cxDBData, StdCtrls, cxGridLevel,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses,
cxControls, cxGridCustomView, cxGrid, cxInplaceContainer, cxDBTL,
cxTLData, ComCtrls, ToolWin, ADODB, ImgList,StrUtils, ExtCtrls,
cxLookAndFeels, cxLookAndFeelPainters, cxTLdxBarBuiltInMenu, dxSkinsCore,
dxSkinsDefaultPainters, cxNavigator, dxDateRanges, System.ImageList;
type
TfrmUserHelp = class(TForm)
ToolBar2: TToolBar;
TOk: TToolButton;
TBClose: TToolButton;
cxDBTreeList1: TcxDBTreeList;
cxDBTreeList1cxDBTreeListColumn2: TcxDBTreeListColumn;
cxGrid1: TcxGrid;
tv1: TcxGridDBTableView;
tv1Code: TcxGridDBColumn;
tv1Name: TcxGridDBColumn;
DBGrid1Level1: TcxGridLevel;
GroupBox1: TGroupBox;
ADOQueryDept: TADOQuery;
DataSource1: TDataSource;
ADOConnection1: TADOConnection;
tv1Column1: TcxGridDBColumn;
cxStyleRepository1: TcxStyleRepository;
cxStyle1: TcxStyle;
cxStyle2: TcxStyle;
cxStyle_gridRow: TcxStyle;
cxStyle_gridFoot: TcxStyle;
cxStyle_gridHead: TcxStyle;
cxStyle_gridGroupBox: TcxStyle;
cxStyle_yellow: TcxStyle;
cxStyle_Red: TcxStyle;
ADOQueryHelp: TADOQuery;
DataSource2: TDataSource;
Label1: TLabel;
Edt_name: TEdit;
ImageList1: TImageList;
cxStyleTree: TcxStyle;
Label2: TLabel;
Edt_Code: TEdit;
Splitter1: TSplitter;
ThreeImgList: TImageList;
procedure FormShow(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure TOkClick(Sender: TObject);
procedure tv1DblClick(Sender: TObject);
procedure Edt_nameChange(Sender: TObject);
procedure cxDBTreeList1Click(Sender: TObject);
private
procedure InitTree();
procedure DoQuery();
procedure FilterData(strdepotno,strcode,strname:string);
public
fFrameNo:string;
fFrameName:string;
fIsYwy:boolean;
end;
var
frmUserHelp: TfrmUserHelp;
implementation
uses
U_DataLink;
{$R *.dfm}
///////////////////////////////////////////////////////////
//////功能:过滤数据
///////////////////////////////////////////////////////////
procedure TfrmUserHelp.FilterData(strdepotno,strcode,strname:string);
var
filterStr:string;
begin
filterStr:='';
if trim(strdepotno)<>'' then
filterStr:=filterStr+' and dept like '+quotedstr('%'+trim(strdepotno)+'%');
if trim(strcode)<>'' then
filterStr:=filterStr+' and userID like '+quotedstr('%'+trim(strcode)+'%');
if trim(strname)<>'' then
filterStr:=filterStr+' and userName like '+quotedstr('%'+trim(strname)+'%');
try
ADOQueryHelp.DisableControls ;
if trim(filterStr)='' then
begin
ADOQueryHelp.Filtered:=false;
ADOQueryHelp.EnableControls;
exit;
end;
filterStr:=trim(RightBStr(filterStr,length(filterStr)-5));
// showmessage(filterStr);
with ADOQueryHelp do
begin
filtered:=false;
filter:=filterStr;
filtered:=true;
end;
finally
ADOQueryHelp.EnableControls;
end;
end;
//////////////////////////////////////////////////////
procedure TfrmUserHelp.InitTree();
var
strsql,strwhere:string;
begin
strsql:=' SELECT distinct UDept=''ALL'',UDeptTop='''',UDeptName=''所有部门'',Framelevel=0 '+
' union '+
' SELECT distinct UDept,UDeptTop=''ALL'',UDept,Framelevel=1 '+
' FROM BD_staff A '+
' WHERE USERID<>''ADMIN'' and ISNULL(UDept,'''')<>'''' ';
strwhere:=' where A.Valid=''Y'' ';
{ if fIsYwy then
strwhere:=strwhere+' and A.YWYFlag=''Y'' ';
if trim(fFrameNo)<>'' then
strwhere:=strwhere+' and A.dept='+quotedstr(trim(fFrameNo));
if trim(fFrameName)<>'' then
strwhere:=strwhere+' and B.frameName like '+quotedstr('%'+trim(fFrameName)+'%');
strsql:=strsql+ strwhere; }
with ADOQueryDept do
begin
close;
sql.Clear ;
sql.Add( strsql);
Open;
end;
cxDBTreeList1.FullExpand;
DoQuery();
end;
procedure TfrmUserHelp.FormShow(Sender: TObject);
begin
InitTree();
end;
procedure TfrmUserHelp.FormCreate(Sender: TObject);
begin
cxGrid1.Align :=alclient;
with ADOConnection1 do
begin
Connected:=false;
ConnectionString:=DConString;
Connected:=true;
end;
end;
//////////////////////////////////////////////////
//
//////////////////////////////////////////////////
procedure TfrmUserHelp.DoQuery();
var
strsql,strwhere:string;
begin
strsql:=' select * '+
' from BD_staff A '+
' where isnull(UserID,'''')<>''ADMIN'' ';
strwhere:=' and A.Valid=''Y'' ';
if fIsYwy then
strwhere:=strwhere+' and A.Isywy=1 ';
strsql:=strsql+ strwhere +' order by A.userID ';
with ADOQueryHelp do
begin
close;
sql.Clear ;
sql.Add( strsql);
Open;
end;
end;
procedure TfrmUserHelp.TBCloseClick(Sender: TObject);
begin
close;
end;
procedure TfrmUserHelp.TOkClick(Sender: TObject);
begin
if ADOQueryHelp.IsEmpty then
begin
ModalResult:=-1
end
else
ModalResult:=1;
end;
procedure TfrmUserHelp.tv1DblClick(Sender: TObject);
begin
Tok.Click ;
end;
procedure TfrmUserHelp.Edt_nameChange(Sender: TObject);
begin
FilterData('',edt_code.Text,Edt_name.Text);
end;
procedure TfrmUserHelp.cxDBTreeList1Click(Sender: TObject);
begin
if ADOQueryDept.IsEmpty then exit;
if trim(ADOQueryDept.FieldByName('Framelevel').AsString)='0' then
FilterData('','','')
else
FilterData(ADOQueryDept.FieldByName('UDept').AsString,'','');
end;
end.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,245 @@
unit U_UserHelp_Dx;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, cxFilter,
cxData, cxDataStorage, cxEdit, DB, cxDBData, StdCtrls, cxGridLevel,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses,
cxControls, cxGridCustomView, cxGrid, cxInplaceContainer, cxDBTL,
cxTLData, ComCtrls, ToolWin, ADODB, ImgList,StrUtils, ExtCtrls, DBClient;
type
TfrmUserHelp_Dx = class(TForm)
ToolBar2: TToolBar;
TOk: TToolButton;
TBClose: TToolButton;
cxGrid1: TcxGrid;
tv1: TcxGridDBTableView;
tv1Code: TcxGridDBColumn;
tv1Name: TcxGridDBColumn;
DBGrid1Level1: TcxGridLevel;
GroupBox1: TGroupBox;
ADOQueryDept: TADOQuery;
DataSource1: TDataSource;
ADOConnection1: TADOConnection;
tv1Column1: TcxGridDBColumn;
cxStyleRepository1: TcxStyleRepository;
cxStyle1: TcxStyle;
cxStyle2: TcxStyle;
cxStyle_gridRow: TcxStyle;
cxStyle_gridFoot: TcxStyle;
cxStyle_gridHead: TcxStyle;
cxStyle_gridGroupBox: TcxStyle;
cxStyle_yellow: TcxStyle;
cxStyle_Red: TcxStyle;
ADOQueryHelp: TADOQuery;
DataSource2: TDataSource;
Label1: TLabel;
Edt_name: TEdit;
ImageList1: TImageList;
cxStyleTree: TcxStyle;
Label2: TLabel;
Edt_Code: TEdit;
ThreeImgList: TImageList;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
cxGridDBColumn1: TcxGridDBColumn;
cxGridDBColumn2: TcxGridDBColumn;
cxGridDBColumn3: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
GroupBox2: TGroupBox;
CDS_sel: TClientDataSet;
DataSourceSel: TDataSource;
cxDBTreeList1: TcxDBTreeList;
cxDBTreeList1cxDBTreeListColumn2: TcxDBTreeListColumn;
Splitter1: TSplitter;
procedure FormShow(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure TOkClick(Sender: TObject);
procedure tv1DblClick(Sender: TObject);
procedure Edt_nameChange(Sender: TObject);
procedure cxDBTreeList1Click(Sender: TObject);
procedure Tv2DblClick(Sender: TObject);
private
procedure InitTree();
procedure DoQuery();
procedure FilterData(strdepotno,strcode,strname:string);
public
fFrameNo:string;
fFrameName:string;
fIsYwy:boolean;
end;
var
frmUserHelp_Dx: TfrmUserHelp_Dx;
implementation
uses
U_DataLink,U_Fun10;
{$R *.dfm}
///////////////////////////////////////////////////////////
//////功能:过滤数据
///////////////////////////////////////////////////////////
procedure TfrmUserHelp_Dx.FilterData(strdepotno,strcode,strname:string);
var
filterStr:string;
begin
filterStr:='';
if trim(strdepotno)<>'' then
filterStr:=filterStr+' and dept like '+quotedstr('%'+trim(strdepotno)+'%');
if trim(strcode)<>'' then
filterStr:=filterStr+' and userID like '+quotedstr('%'+trim(strcode)+'%');
if trim(strname)<>'' then
filterStr:=filterStr+' and userName like '+quotedstr('%'+trim(strname)+'%');
try
ADOQueryHelp.DisableControls ;
if trim(filterStr)='' then
begin
ADOQueryHelp.Filtered:=false;
ADOQueryHelp.EnableControls;
exit;
end;
filterStr:=trim(RightBStr(filterStr,length(filterStr)-5));
// showmessage(filterStr);
with ADOQueryHelp do
begin
filtered:=false;
filter:=filterStr;
filtered:=true;
end;
finally
ADOQueryHelp.EnableControls;
end;
end;
//////////////////////////////////////////////////////
procedure TfrmUserHelp_Dx.InitTree();
var
strsql,strwhere:string;
begin
strsql:=' SELECT distinct UDept=''ALL'',UDeptTop='''',UDeptName=''所有部门'',Framelevel=0 '+
' union '+
' SELECT distinct UDept,UDeptTop=''ALL'',UDept,Framelevel=1 '+
' FROM BD_staff A '+
' WHERE USERID<>''ADMIN'' and ISNULL(UDept,'''')<>'''' ';
strwhere:=' where A.Valid=''Y'' ';
{ if fIsYwy then
strwhere:=strwhere+' and A.YWYFlag=''Y'' ';
if trim(fFrameNo)<>'' then
strwhere:=strwhere+' and A.dept='+quotedstr(trim(fFrameNo));
if trim(fFrameName)<>'' then
strwhere:=strwhere+' and B.frameName like '+quotedstr('%'+trim(fFrameName)+'%');
strsql:=strsql+ strwhere; }
with ADOQueryDept do
begin
close;
sql.Clear ;
sql.Add( strsql);
Open;
end;
cxDBTreeList1.FullExpand;
DoQuery();
end;
procedure TfrmUserHelp_Dx.FormShow(Sender: TObject);
begin
InitTree();
end;
procedure TfrmUserHelp_Dx.FormCreate(Sender: TObject);
begin
GroupBox2.Align :=alclient;
with ADOConnection1 do
begin
Connected:=false;
ConnectionString:=DConString;
Connected:=true;
end;
end;
//////////////////////////////////////////////////
//
//////////////////////////////////////////////////
procedure TfrmUserHelp_Dx.DoQuery();
var
strsql,strwhere:string;
begin
strsql:=' select * '+
' from BD_staff A '+
' where isnull(UserID,'''')<>''ADMIN'' ';
strwhere:=' and A.Valid=''Y'' ';
if fIsYwy then
strwhere:=strwhere+' and A.Isywy=1 ';
strsql:=strsql+ strwhere +' order by A.userID ';
with ADOQueryHelp do
begin
close;
sql.Clear ;
sql.Add( strsql);
Open;
end;
sCreateCDS20(ADOQueryHelp,cds_sel);
end;
procedure TfrmUserHelp_Dx.TBCloseClick(Sender: TObject);
begin
close;
end;
procedure TfrmUserHelp_Dx.TOkClick(Sender: TObject);
begin
if ADOQueryHelp.IsEmpty then
begin
ModalResult:=-1
end
else
ModalResult:=1;
end;
procedure TfrmUserHelp_Dx.tv1DblClick(Sender: TObject);
var
i:integer;
begin
if ADOQueryHelp.IsEmpty then exit;
if CDS_Sel.Locate('userID',trim(adoqueryHelp.fieldbyname('userID').AsString),[]) then exit;
with CDS_Sel do
begin
CDS_Sel.append;
for i:=0 to ADOQueryHelp.FieldCount-1 do
begin
fields[i].Value:=ADOQueryHelp.Fields[i].Value;
end;
CDS_Sel.Post;
end;
end;
procedure TfrmUserHelp_Dx.Edt_nameChange(Sender: TObject);
begin
FilterData('',edt_code.Text,Edt_name.Text);
end;
procedure TfrmUserHelp_Dx.cxDBTreeList1Click(Sender: TObject);
begin
if ADOQueryDept.IsEmpty then exit;
if trim(ADOQueryDept.FieldByName('Framelevel').AsString)='0' then
FilterData('','','')
else
FilterData(ADOQueryDept.FieldByName('UDept').AsString,'','');
end;
procedure TfrmUserHelp_Dx.Tv2DblClick(Sender: TObject);
begin
IF cds_sel.IsEmpty then exit;
cds_sel.Delete;
end;
end.

View File

@ -0,0 +1,63 @@
object frmYPTypeHelp: TfrmYPTypeHelp
Left = 320
Top = 178
Width = 371
Height = 524
Caption = #26679#21697#31867#21035#36873#25321#21015#34920
Color = clBtnFace
Font.Charset = GB2312_CHARSET
Font.Color = clWindowText
Font.Height = -12
Font.Name = #23435#20307
Font.Style = []
OldCreateOrder = False
Position = poScreenCenter
OnCreate = FormCreate
OnShow = FormShow
PixelsPerInch = 96
TextHeight = 12
object cxDBTreeList1: TcxDBTreeList
Left = 0
Top = 0
Width = 249
Height = 486
Align = alLeft
Bands = <
item
end>
BufferedPaint = False
DataController.DataSource = DataSource1
DataController.ParentField = 'CPParent'
DataController.KeyField = 'CPID'
OptionsBehavior.ExpandOnDblClick = False
OptionsSelection.CellSelect = False
OptionsView.CellAutoHeight = True
OptionsView.Headers = False
RootValue = -1
TabOrder = 0
OnDblClick = cxDBTreeList1DblClick
object cxDBTreeList1cxDBTreeListColumn2: TcxDBTreeListColumn
DataBinding.FieldName = 'CPName'
Width = 210
Position.ColIndex = 1
Position.RowIndex = 0
Position.BandIndex = 0
end
end
object ADOConnection1: TADOConnection
LoginPrompt = False
Left = 288
Top = 60
end
object DataSource1: TDataSource
DataSet = ADOQueryHelp
Left = 280
Top = 188
end
object ADOQueryHelp: TADOQuery
Connection = ADOConnection1
Parameters = <>
Left = 288
Top = 136
end
end

View File

@ -0,0 +1,67 @@
unit U_YPTypeHelp;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit,
cxInplaceContainer, cxDBTL, cxControls, cxTLData, DB, ADODB;
type
TfrmYPTypeHelp = class(TForm)
ADOConnection1: TADOConnection;
cxDBTreeList1: TcxDBTreeList;
cxDBTreeList1cxDBTreeListColumn2: TcxDBTreeListColumn;
DataSource1: TDataSource;
ADOQueryHelp: TADOQuery;
procedure FormCreate(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure cxDBTreeList1DblClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmYPTypeHelp: TfrmYPTypeHelp;
implementation
uses
U_DataLink;
{$R *.dfm}
procedure TfrmYPTypeHelp.FormCreate(Sender: TObject);
begin
cxDBTreeList1.Align:=alclient;
try
with ADOConnection1 do
begin
Connected:=false;
ConnectionString:=DConString;
//ConnectionString:='';
Connected:=true;
end;
except
end;
end;
procedure TfrmYPTypeHelp.FormShow(Sender: TObject);
begin
with ADOQueryHelp do
begin
Close;
SQL.Clear;
SQL.Add('select * from CP_Type order by CPlevel,CPOrder,CPName');
Open;
end;
cxDBTreeList1.Items[0].Expand(false);
end;
procedure TfrmYPTypeHelp.cxDBTreeList1DblClick(Sender: TObject);
begin
IF ADOQueryHelp.IsEmpty then exit;
ModalResult:=1;
end;
end.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,664 @@
unit U_ZDYHelp;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage,
cxEdit, DB, cxDBData, ToolWin, ComCtrls, U_BaseInput, cxGridCustomTableView,
cxGridTableView, cxGridDBTableView, cxGridLevel, cxClasses, cxControls,
cxGridCustomView, cxGrid, DBClient, ADODB, ImgList, StdCtrls, ExtCtrls,
cxTextEdit, cxGridCustomPopupMenu, cxGridPopupMenu, cxLookAndFeels,
cxLookAndFeelPainters, dxSkinsCore, dxSkinsDefaultPainters, cxNavigator,
dxDateRanges, dxBarBuiltInMenu, System.ImageList, cxContainer, cxImageList;
type
TfrmZDYHelp = class(TfrmBaseInput)
TV1: TcxGridDBTableView;
cxGrid1Level1: TcxGridLevel;
cxGrid1: TcxGrid;
V1Code: TcxGridDBColumn;
V1Name: TcxGridDBColumn;
ToolBar1: TToolBar;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
DataSource1: TDataSource;
ClientDataSet1: TClientDataSet;
TBAdd: TToolButton;
TBSave: TToolButton;
TBDel: TToolButton;
TBClose: TToolButton;
ToolButton1: TToolButton;
TBEdit: TToolButton;
V1Note: TcxGridDBColumn;
V1OrderNo: TcxGridDBColumn;
ADOConnection1: TADOConnection;
Panel1: TPanel;
Label1: TLabel;
ZDYName: TcxTextEdit;
ThreeImgList: TImageList;
Label2: TLabel;
cxGridPopupMenu1: TcxGridPopupMenu;
V1ZdyFlag: TcxGridDBColumn;
V1HelpType: TcxGridDBColumn;
V1note1: TcxGridDBColumn;
ImageList1: TImageList;
cxImageList_bar: TcxImageList;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBAddClick(Sender: TObject);
procedure TBSaveClick(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure TBEditClick(Sender: TObject);
procedure TV1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
procedure ZDYNameChange(Sender: TObject);
procedure V1NamePropertiesEditValueChanged(Sender: TObject);
procedure V1OrderNoPropertiesEditValueChanged(Sender: TObject);
procedure V1NotePropertiesEditValueChanged(Sender: TObject);
procedure V1Column1PropertiesEditValueChanged(Sender: TObject);
procedure V1HelpTypePropertiesEditValueChanged(Sender: TObject);
procedure FormDestroy(Sender: TObject);
private
procedure InitGrid();
{ Private declarations }
public
flag, flagname, snote, MainType: string;
fnote, forderno, fZdyFlag, ViewFlag, fnote1, FHelpType: Boolean;
PPSTE: integer;
{ Public declarations }
end;
var
frmZDYHelp: TfrmZDYHelp;
implementation
uses
U_DataLink, U_RTFun;
{$R *.dfm}
procedure TfrmZDYHelp.FormCreate(Sender: TObject);
begin
inherited;
with ADOConnection1 do
begin
Connected := false;
ConnectionString := DConString;
Connected := true;
end;
ADOQueryBaseCmd.Connection := ADOConnection1;
ADOQueryBaseTemp.Connection := ADOConnection1;
end;
procedure TfrmZDYHelp.FormClose(Sender: TObject; var Action: TCloseAction);
begin
ZDYName.SetFocus;
Action := cahide;
end;
procedure TfrmZDYHelp.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Close;
sql.Clear;
sql.Add('select A.*,ZJM=dbo.getPinYin(A.ZdyName) from KH_ZDY A where A.Type=''' + flag + '''');
if Trim(MainType) <> '' then
begin
sql.Add(' and A.MainType=''' + Trim(MainType) + '''');
end;
Open;
end;
SCreateCDS(ADOQueryMain, ClientDataSet1);
SInitCDSData(ADOQueryMain, ClientDataSet1);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmZDYHelp.TBAddClick(Sender: TObject);
var
i: Integer;
begin
ZDYName.SetFocus;
TV1.OptionsData.Editing := True;
TV1.OptionsSelection.CellSelect := True;
for i := 0 to 5 do
begin
with ClientDataSet1 do
begin
Append;
Post;
end;
end;
end;
procedure TfrmZDYHelp.TBSaveClick(Sender: TObject);
var
maxno: string;
begin
if ClientDataSet1.IsEmpty then
Exit;
ZDYName.SetFocus;
if ClientDataSet1.Locate('ZDYName', null, []) then
begin
Application.MessageBox('名称不能为空!', '提示', 0);
Exit;
end;
if ClientDataSet1.Locate('ZDYName', '', []) then
begin
Application.MessageBox('名称不能为空!', '提示', 0);
Exit;
end;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryTemp do
begin
Close;
SQL.Clear;
SQL.Add('select * from KH_ZDY where ZdyNo=''' + Trim(flag) + '''');
open;
end;
if ADOQueryTemp.IsEmpty then
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('select * from KH_ZDY where 1=2');
open;
ADOQueryCmd.Append;
ADOQueryCmd.FieldByName('ZDYNo').Value := Trim(flag);
ADOQueryCmd.FieldByName('ZDYName').Value := trim(flagname);
ADOQueryCmd.FieldByName('Type').Value := 'Main';
ADOQueryCmd.FieldByName('MainType').Value := Trim(MainType);
ADOQueryCmd.Post;
{ sql.Add('insert into KH_ZDY(ZDYNo,ZDYName,Type,MainType) select :ZDYNo,:ZDYName,:Type,:MainType ');
Parameters.ParamByName('ZDYNo').Value:=Trim(flag);
Parameters.ParamByName('ZDYName').Value:=Trim(flagname);
Parameters.ParamByName('Type').Value:='Main';
Parameters.ParamByName('MainType').Value:=Trim(MainType);
ExecSQL; }
end;
end;
with ADOQueryCmd do
begin
ClientDataSet1.DisableControls;
with ClientDataSet1 do
begin
First;
while not eof do
begin
if Trim(ClientDataSet1.FieldByName('ZDYNO').AsString) = '' then
begin
if GetLSNo(ADOQueryTemp, maxno, 'SY', 'KH_ZDY', 3, 1) = False then
begin
ADOQueryCmd.Connection.RollbackTrans;
ClientDataSet1.EnableControls;
Application.MessageBox('取最大编号失败!', '提示', 0);
Exit;
end;
end
else
begin
maxno := Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString);
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.add('select * from KH_Zdy where Type=''' + Trim(flag) + '''');
if Trim(MainType) <> '' then
SQL.Add(' and MainType=''' + Trim(MainType) + '''');
sql.Add(' and ZdyName=''' + Trim(ClientDataSet1.fieldbyname('ZdyName').AsString) + '''');
Open;
end;
if ADOQueryTemp.IsEmpty = False then
begin
if ADOQueryTemp.RecordCount > 1 then
begin
ADOQueryCmd.Connection.RollbackTrans;
ClientDataSet1.EnableControls;
Application.MessageBox('名称重复!', '提示', 0);
Exit;
end;
if Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString) = '' then
begin
ADOQueryCmd.Connection.RollbackTrans;
ClientDataSet1.EnableControls;
Application.MessageBox('名称重复!', '提示', 0);
Exit;
end
else
begin
if Trim(ADOQueryTemp.fieldbyname('ZdyNo').AsString) <> Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString) then
begin
ADOQueryCmd.Connection.RollbackTrans;
ClientDataSet1.EnableControls;
Application.MessageBox('名称重复!', '提示', 0);
Exit;
end;
end;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
SQL.Add('delete KH_ZDY where ZDYNO=''' + Trim(ClientDataSet1.fieldbyname('ZDYNO').AsString) + '''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from KH_ZDY where 1<>1');
Open;
end;
ADOQueryCmd.Append;
ADOQueryCmd.FieldByName('ZDYNo').Value := Trim(maxno);
ADOQueryCmd.FieldByName('ZDYName').Value := ClientDataSet1.fieldbyname('ZDYName').Value;
ADOQueryCmd.FieldByName('note').Value := Trim(snote);
//ADOQueryCmd.FieldByName('orderno').Value:=ClientDataSet1.fieldbyname('Name').AsString;
ADOQueryCmd.FieldByName('Type').Value := flag;
ADOQueryCmd.FieldByName('valid').Value := 'Y';
if Trim(MainType) <> '' then
ADOQueryCmd.FieldByName('MainType').Value := Trim(MainType);
//ADOQueryCmd.FieldByName('sel').Value:=0;
ADOQueryCmd.Post;
ClientDataSet1.Edit;
ClientDataSet1.FieldByName('ZDYNo').Value := Trim(maxno);
ClientDataSet1.Post;
Next;
end;
end;
ClientDataSet1.EnableControls;
end;
ADOQueryCmd.Connection.CommitTrans;
Application.MessageBox('保存成功!', '提示', 0);
TV1.OptionsData.Editing := False;
TV1.OptionsSelection.CellSelect := False;
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('保存失败!', '提示', 0);
end;
end;
procedure TfrmZDYHelp.TBDelClick(Sender: TObject);
begin
if ClientDataSet1.IsEmpty then
Exit;
if (Trim(ClientDataSet1.FieldByName('ZDYNo').AsString) <> '') or (Trim(ClientDataSet1.FieldByName('ZDYname').AsString) <> '') then
begin
if application.MessageBox('确定要删除吗?', '提示信息', 1) = 2 then
exit;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete KH_ZDY where ZDYNo=''' + Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString) + '''');
SQL.Add(' and Type=''' + Trim(flag) + '''');
ExecSQL;
end;
end;
ClientDataSet1.Delete;
end;
procedure TfrmZDYHelp.TBCloseClick(Sender: TObject);
begin
ModalResult := 2;
ZDYName.SetFocus;
Close;
end;
procedure TfrmZDYHelp.FormShow(Sender: TObject);
var
fsj, fsj1: string;
begin
inherited;
InitGrid();
fsj := Trim(flag) + '01';
fsj1 := Trim(flagname) + '01';
ReadCxGrid('自定义' + Trim(flag), TV1, '自定义数据');
frmZDYHelp.Caption := Trim(flagname);
V1Note.Visible := fnote;
V1ZdyFlag.Visible := fZdyFlag;
V1OrderNo.Visible := forderno;
v1note1.Visible := fnote1;
V1HelpType.Visible := fhelpType;
if ViewFlag = True then
begin
TBAdd.Visible := False;
TBSave.Visible := False;
TBDel.Visible := False;
TBEdit.Visible := False;
Label2.Visible := False;
end;
end;
procedure TfrmZDYHelp.ToolButton1Click(Sender: TObject);
begin
ZDYName.SetFocus;
// WriteCxGrid('自定义'+Trim(flag),TV1,'自定义数据');
ModalResult := 1;
end;
procedure TfrmZDYHelp.TBEditClick(Sender: TObject);
begin
TV1.OptionsData.Editing := True;
TV1.OptionsSelection.CellSelect := True;
end;
procedure TfrmZDYHelp.TV1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
begin
if TV1.OptionsData.Editing = False then
begin
ModalResult := 1;
end;
end;
procedure TfrmZDYHelp.ZDYNameChange(Sender: TObject);
var
fsj: string;
begin
if Trim(ZDYName.Text) <> '' then
begin
fsj := ' zdyname like ''' + '%' + Trim(ZDYName.Text) + '%' + '''' + ' or Note like ''' + '%' + Trim(ZDYName.Text) + '%' + '''' + ' or ZJM like ''' + '%' + Trim(ZDYName.Text) + '%' + '''';
end;
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, fsj);
SCreateCDS(ADOQueryMain, ClientDataSet1);
SInitCDSData(ADOQueryMain, ClientDataSet1);
end;
end;
procedure TfrmZDYHelp.V1NamePropertiesEditValueChanged(Sender: TObject);
var
maxno, mvalue: string;
begin
mvalue := TcxTextEdit(Sender).EditingText;
if Trim(mvalue) = '' then
begin
//Application.MessageBox('名称不能为空!','提示',0);
Exit;
end;
with ClientDataSet1 do
begin
Edit;
FieldByName('ZdyName').Value := Trim(mvalue);
//Post;
end;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryTemp do
begin
Close;
SQL.Clear;
SQL.Add('select * from KH_ZDY where ZdyNo=''' + Trim(flag) + '''');
open;
end;
if ADOQueryTemp.IsEmpty then
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('select * from KH_ZDY where 1=2');
open;
ADOQueryCmd.Append;
ADOQueryCmd.FieldByName('ZDYNo').Value := Trim(flag);
ADOQueryCmd.FieldByName('ZDYName').Value := trim(flagname);
ADOQueryCmd.FieldByName('Type').Value := 'Main';
ADOQueryCmd.FieldByName('MainType').Value := Trim(MainType);
ADOQueryCmd.Post;
end;
end;
with ADOQueryCmd do
begin
//ClientDataSet1.DisableControls;
//with ClientDataSet1 do
//begin
//First;
//while not eof do
//begin
if Trim(ClientDataSet1.FieldByName('ZDYNO').AsString) = '' then
begin
if GetLSNo(ADOQueryTemp, maxno, 'SY', 'KH_ZDY', 3, 1) = False then
begin
ADOQueryCmd.Connection.RollbackTrans;
//ClientDataSet1.EnableControls;
Application.MessageBox('取最大编号失败!', '提示', 0);
Exit;
end;
end
else
begin
maxno := Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString);
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.add('select * from KH_Zdy where Type=''' + Trim(flag) + '''');
if Trim(MainType) <> '' then
SQL.Add(' and MainType=''' + Trim(MainType) + '''');
sql.Add(' and ZdyName=''' + Trim(ClientDataSet1.fieldbyname('ZdyName').AsString) + '''');
sql.Add(' and note=''' + Trim(ClientDataSet1.fieldbyname('note').AsString) + '''');
Open;
end;
if ADOQueryTemp.IsEmpty = False then
begin
if ADOQueryTemp.RecordCount > 1 then
begin
ADOQueryCmd.Connection.RollbackTrans;
//ClientDataSet1.EnableControls;
Application.MessageBox('名称重复!', '提示', 0);
Exit;
end;
if Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString) = '' then
begin
ADOQueryCmd.Connection.RollbackTrans;
//ClientDataSet1.EnableControls;
Application.MessageBox('名称重复!', '提示', 0);
Exit;
end
else
begin
if Trim(ADOQueryTemp.fieldbyname('ZdyNo').AsString) <> Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString) then
begin
ADOQueryCmd.Connection.RollbackTrans;
//ClientDataSet1.EnableControls;
Application.MessageBox('名称重复!', '提示', 0);
Exit;
end;
end;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
SQL.Add('delete KH_ZDY where ZDYNO=''' + Trim(ClientDataSet1.fieldbyname('ZDYNO').AsString) + '''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from KH_ZDY where 1<>1');
Open;
end;
ADOQueryCmd.Append;
ADOQueryCmd.FieldByName('ZDYNo').Value := Trim(maxno);
ADOQueryCmd.FieldByName('ZDYName').Value := ClientDataSet1.fieldbyname('ZDYName').AsString;
ADOQueryCmd.FieldByName('note').Value := Trim(snote);
//ADOQueryCmd.FieldByName('orderno').Value:=ClientDataSet1.fieldbyname('Name').AsString;
ADOQueryCmd.FieldByName('Type').Value := flag;
ADOQueryCmd.FieldByName('valid').Value := 'Y';
if Trim(MainType) <> '' then
ADOQueryCmd.FieldByName('MainType').Value := Trim(MainType);
//ADOQueryCmd.FieldByName('sel').Value:=0;
ADOQueryCmd.Post;
ClientDataSet1.Edit;
ClientDataSet1.FieldByName('ZDYNo').Value := Trim(maxno);
//ClientDataSet1.Post;
// Next;
//end;
//end;
// ClientDataSet1.EnableControls;
end;
ADOQueryCmd.Connection.CommitTrans;
//Application.MessageBox('保存成功!','提示',0);
//TV1.OptionsData.Editing:=False;
//TV1.OptionsSelection.CellSelect:=False;
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('保存失败!', '提示', 0);
end;
end;
procedure TfrmZDYHelp.V1OrderNoPropertiesEditValueChanged(Sender: TObject);
var
mvalue: string;
begin
if Trim(ClientDataSet1.fieldbyname('ZdyName').AsString) = '' then
begin
Application.MessageBox('名称不能为空!', '提示', 0);
Exit;
end;
mvalue := TcxTextEdit(Sender).EditingText;
if Trim(mvalue) = '' then
begin
mvalue := '0';
end;
with ClientDataSet1 do
begin
Edit;
FieldByName('OrderNo').Value := mvalue;
Post;
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('Update KH_Zdy Set OrderNo=' + mvalue);
sql.Add(' where ZdyNo=''' + Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString) + '''');
ExecSQL;
end;
end;
procedure TfrmZDYHelp.V1NotePropertiesEditValueChanged(Sender: TObject);
var
mvalue: string;
begin
if Trim(ClientDataSet1.fieldbyname('ZdyName').AsString) = '' then
begin
Application.MessageBox('名称不能为空!', '提示', 0);
Exit;
end;
mvalue := TcxTextEdit(Sender).EditingText;
if Trim(mvalue) = '' then
begin
mvalue := '';
end;
with ClientDataSet1 do
begin
Edit;
FieldByName('Note').Value := mvalue;
Post;
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('Update KH_Zdy Set Note=''' + Trim(mvalue) + '''');
sql.Add(' where ZdyNo=''' + Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString) + '''');
ExecSQL;
end;
end;
procedure TfrmZDYHelp.V1Column1PropertiesEditValueChanged(Sender: TObject);
var
mvalue: string;
fieldname: string;
begin
fieldname := Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName;
if Trim(ClientDataSet1.fieldbyname('ZdyName').AsString) = '' then
begin
Application.MessageBox('名称不能为空!', '提示', 0);
Exit;
end;
mvalue := TcxTextEdit(Sender).EditingText;
with ClientDataSet1 do
begin
Edit;
FieldByName(fieldname).Value := mvalue;
Post;
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('Update KH_Zdy Set ' + fieldname + '=''' + Trim(mvalue) + ''' ');
sql.Add('where ZdyNo=''' + Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString) + '''');
ExecSQL;
end;
end;
procedure TfrmZDYHelp.V1HelpTypePropertiesEditValueChanged(Sender: TObject);
var
mvalue: string;
begin
if Trim(ClientDataSet1.fieldbyname('ZdyName').AsString) = '' then
begin
Application.MessageBox('名称不能为空!', '提示', 0);
Exit;
end;
mvalue := TcxTextEdit(Sender).EditingText;
if Trim(mvalue) = '' then
begin
mvalue := '0';
end;
with ClientDataSet1 do
begin
Edit;
FieldByName('HelpType').Value := mvalue;
Post;
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('Update KH_Zdy Set HelpType=''' + Trim(mvalue) + '''');
sql.Add(' where ZdyNo=''' + Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString) + '''');
ExecSQL;
end;
end;
procedure TfrmZDYHelp.FormDestroy(Sender: TObject);
begin
inherited;
WriteCxGrid('自定义' + Trim(flag), TV1, '自定义数据');
frmZDYHelp := nil;
end;
end.

View File

@ -0,0 +1,99 @@
[TBDel]
Coordinates=374,214,50,36
[Label2]
Coordinates=298,146,53,58
[ToolButton1]
Coordinates=280,214,84,36
[cxGrid1Level1]
Coordinates=361,155,97,36
[V1HelpType]
Coordinates=361,210,85,36
[TBEdit]
Coordinates=217,214,53,36
[V1Note]
Coordinates=342,251,57,36
[ADOQueryCmd]
Coordinates=121,146,104,58
[TBAdd]
Coordinates=153,214,54,36
[V1OrderNo]
Coordinates=194,251,79,36
[V1note1]
Coordinates=125,251,62,36
[TV1]
Coordinates=76,251,40,36
[TBClose]
Coordinates=79,214,64,36
[Panel1]
Coordinates=333,78,55,58
[cxGrid1]
Coordinates=10,214,59,36
[ZDYName]
Coordinates=249,78,74,58
[V1Name]
Coordinates=504,133,64,36
[ADOQueryTemp]
Coordinates=233,10,109,58
[cxGridPopupMenu1]
Coordinates=504,188,128,36
[ADOConnection1]
Coordinates=504,243,114,36
[ThreeImgList]
Coordinates=504,298,90,36
[V1Code]
Coordinates=435,325,61,36
[ClientDataSet1]
Coordinates=10,146,101,58
[V1ZdyFlag]
Coordinates=356,325,77,36
[DataSource1]
Coordinates=219,78,89,36
[Label1]
Coordinates=235,146,53,58
[TBSave]
Coordinates=438,146,60,36
[ADOQueryMain]
Coordinates=398,78,105,58
[DataLink_TradeManage.AdoDataLink]
Coordinates=10,78,229,58
[ToolBar1]
Coordinates=361,146,67,36
[frmBaseInput.ADOQueryBaseTemp]
Coordinates=352,10,219,58
[frmBaseInput.ADOQueryBaseCmd]
Coordinates=10,10,213,58
[]
Coordinates=405,251,91,36

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,294 @@
unit U_ZDYHelpDL;
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, cxTL, cxMaskEdit, cxInplaceContainer, cxDBTL,
cxTLData, cxDropDownEdit;
type
TfrmZDYDLHelp = class(TForm)
TV1: TcxGridDBTableView;
cxGrid1Level1: TcxGridLevel;
cxGrid1: TcxGrid;
V1Code: TcxGridDBColumn;
V1Name: TcxGridDBColumn;
ToolBar1: TToolBar;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
DataSource1: TDataSource;
ClientDataSet1: TClientDataSet;
TBAdd: TToolButton;
TBSave: TToolButton;
TBDel: TToolButton;
TBClose: TToolButton;
ToolButton1: TToolButton;
TBEdit: TToolButton;
V1Note: TcxGridDBColumn;
V1OrderNo: TcxGridDBColumn;
ADOConnection1: TADOConnection;
Panel1: TPanel;
Label1: TLabel;
ZDYName: TEdit;
ThreeImgList: TImageList;
ADOQueryChild: TADOQuery;
DataSource2: TDataSource;
cxDBTreeList1: TcxDBTreeList;
cxColumn2: TcxDBTreeListColumn;
V1Column1: TcxGridDBColumn;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBAddClick(Sender: TObject);
procedure TBSaveClick(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure TBEditClick(Sender: TObject);
procedure TV1CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
procedure ZDYNameChange(Sender: TObject);
procedure cxDBTreeList1Click(Sender: TObject);
private
procedure InitGrid();
{ Private declarations }
public
MainType,MainTypeName,flag,flagname,snote:string;
fnote,forderno:Boolean;
{ Public declarations }
end;
var
frmZDYDLHelp: TfrmZDYDLHelp;
implementation
uses
U_DataLink,U_Fun;
{$R *.dfm}
procedure TfrmZDYDLHelp.FormCreate(Sender: TObject);
begin
cxGrid1.Align:=alClient;
with ADOConnection1 do
begin
Connected:=false;
ConnectionString:=DConString;
Connected:=true;
end;
end;
procedure TfrmZDYDLHelp.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmZDYDLHelp.InitGrid();
begin
try
with ADOQueryMain do
begin
Close;
sql.Clear;
sql.Add('select A.*,TypeName=(select ZdyName from KH_Zdy B where B.ZdyNO=A.Type) from KH_Zdy A');
if Trim(ADOQueryChild.fieldbyname('frameNo').AsString)<>'QB' then
sql.Add('where Type='''+Trim(ADOQueryChild.fieldbyname('frameNo').AsString)+'''')
else
sql.Add('where MainType='''+Trim(MainType)+''' and Type<>''Main'' ');
Open;
end;
SCreateCDS20(ADOQueryMain,ClientDataSet1);
SInitCDSData20(ADOQueryMain,ClientDataSet1);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmZDYDLHelp.TBAddClick(Sender: TObject);
begin
TV1.OptionsData.Editing:=True;
with ClientDataSet1 do
begin
Append;
Post;
end;
end;
procedure TfrmZDYDLHelp.TBSaveClick(Sender: TObject);
var
maxno,fsj:string;
i:Integer;
begin
if ClientDataSet1.IsEmpty then Exit;
if Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)='' then
begin
Application.MessageBox('名称不能为空!','提示',0);
Exit;
end;
if Trim(ClientDataSet1.fieldbyname('TypeName').AsString)='' then
begin
Application.MessageBox('类别不能为空!','提示',0);
Exit;
end;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
with ClientDataSet1 do
begin
First;
while not eof do
begin
if Trim(ClientDataSet1.FieldByName('ZDYNO').AsString)='' then
begin
if GetLSNo(ADOQueryTemp,maxno,'SY','KH_ZDY',3,1)=False then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('取最大编号失败!','提示',0);
Exit;
end;
end else
begin
maxno:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString);
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
SQL.Add('delete KH_ZDY where ZDYNO='''+Trim(ClientDataSet1.fieldbyname('ZDYNO').AsString)+'''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from KH_ZDY where 1<>1');
Open;
end;
if Trim(ClientDataSet1.FieldByName('ZDYName').AsString)='' then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('名称不能为空!','提示',0);
Exit;
end;
ADOQueryCmd.Append;
ADOQueryCmd.FieldByName('ZDYNo').Value:=Trim(maxno);
ADOQueryCmd.FieldByName('ZDYName').Value:=ClientDataSet1.fieldbyname('ZDYName').AsString;
ADOQueryCmd.FieldByName('note').Value:=Trim(snote);
//ADOQueryCmd.FieldByName('orderno').Value:=ClientDataSet1.fieldbyname('Name').AsString;
// ADOQueryCmd.FieldByName('Type').Value:=TcxComboBox(V1Column1).Properties.Items.Strings[1];
i:=(V1Column1.Properties as TcxComboBoxProperties).Items.IndexOf(ClientDataSet1.fieldbyname('TypeName').AsString);
fsj:=TA((V1Column1.Properties as TcxComboBoxProperties).Items.Objects[i]).S;
ADOQueryCmd.FieldByName('Type').Value:=Trim(fsj);
ADOQueryCmd.FieldByName('valid').Value:='Y';
ADOQueryCmd.FieldByName('Maintype').Value:=Trim(MainType);
//ADOQueryCmd.FieldByName('sel').Value:=0;
ADOQueryCmd.Post;
ClientDataSet1.Edit;
ClientDataSet1.FieldByName('ZDYNo').Value:=Trim(maxno);
ClientDataSet1.Post;
Next;
end;
end;
end;
ADOQueryCmd.Connection.CommitTrans;
Application.MessageBox('保存成功!','提示',0);
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('保存失败!','提示',0);
end;
TV1.OptionsData.Editing:=False;
end;
procedure TfrmZDYDLHelp.TBDelClick(Sender: TObject);
begin
if ClientDataSet1.IsEmpty then Exit;
if (Trim(ClientDataSet1.FieldByName('ZDYNo').AsString)<>'') or
(Trim(ClientDataSet1.FieldByName('ZDYname').AsString)<>'') then
begin
if application.MessageBox('确定要删除吗?','提示信息',1)=2 then exit;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete KH_ZDY where ZDYNo='''+Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString)+'''');
SQL.Add(' and Type='''+Trim(ADOQueryChild.fieldbyname('frameNO').AsString)+'''');
ExecSQL;
end;
end;
ClientDataSet1.Delete;
end;
procedure TfrmZDYDLHelp.TBCloseClick(Sender: TObject);
begin
ModalResult:=2;
Close;
end;
procedure TfrmZDYDLHelp.FormShow(Sender: TObject);
var
fsj,fsj1:string;
begin
fsj:='select ZdyNo code,ZdyName name from KH_Zdy where MainType='''+MainType+''' and Type=''Main''';
SInitCxGridComboBoxBySql(ADOQueryTemp,V1Column1,fsj,1,True,'');
fsj:= ' select frameNo=''QB'',frameName=''全部'',TopFrameNo='''+Trim(MainType)+''''+
' union all select frameNo=ZdyNo,frameName=ZdyName,TopFrameNo=MainType '+
' from KH_Zdy A '+
' where A.MainType='''+MainType+''' and Type=''Main''';
with ADOQueryChild do
begin
Close;
sql.Clear;
sql.Add(fsj);
Open;
end;
cxDBTreeList1.FullExpand;
InitGrid();
frmZDYDLHelp.Caption:=Trim(MainTypename)+'<'+Trim(MainType)+'>';
end;
procedure TfrmZDYDLHelp.ToolButton1Click(Sender: TObject);
begin
ModalResult:=1;
end;
procedure TfrmZDYDLHelp.TBEditClick(Sender: TObject);
begin
TV1.OptionsData.Editing:=True;
end;
procedure TfrmZDYDLHelp.TV1CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
if TV1.OptionsData.Editing=False then
begin
ModalResult:=1;
end;
end;
procedure TfrmZDYDLHelp.ZDYNameChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
SCreateCDS20(ADOQueryMain,ClientDataSet1);
SInitCDSData20(ADOQueryMain,ClientDataSet1);
end;
end;
procedure TfrmZDYDLHelp.cxDBTreeList1Click(Sender: TObject);
begin
InitGrid();
end;
end.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,363 @@
unit U_ZDYHelpFZSel;
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,
cxCheckBox, cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore,
dxSkinsDefaultPainters, cxNavigator, dxDateRanges, System.ImageList,
System.Types, cxDropDownEdit, cxButtonEdit, dxBarBuiltInMenu,
cxGridCustomPopupMenu, cxGridPopupMenu, U_BaseHelp, BtnEdit;
type
TfrmZDYHelpFZSel = class(TForm)
TV1: TcxGridDBTableView;
cxGrid1Level1: TcxGridLevel;
cxGrid1: TcxGrid;
V1Name: TcxGridDBColumn;
ToolBar1: TToolBar;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
DataSource1: TDataSource;
ClientDataSet1: TClientDataSet;
TBAdd: TToolButton;
TBDel: TToolButton;
TBClose: TToolButton;
ToolButton1: TToolButton;
TBEdit: TToolButton;
ADOConnection1: TADOConnection;
Panel1: TPanel;
Label1: TLabel;
ZDYName: TEdit;
ThreeImgList: TImageList;
V1Column1: TcxGridDBColumn;
Label2: TLabel;
TV1Column1: TcxGridDBColumn;
cxgrdpmn1: TcxGridPopupMenu;
BZType: TBtnEditC;
Label3: TLabel;
ImageList_new32: TImageList;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBAddClick(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure TBEditClick(Sender: TObject);
procedure TV1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
procedure ZDYNameChange(Sender: TObject);
procedure V1NamePropertiesEditValueChanged(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure TV1Column1PropertiesEditValueChanged(Sender: TObject);
procedure BZTypeBtnDnClick(Sender: TObject);
procedure BZTypeBtnUpClick(Sender: TObject);
private
procedure InitGrid();
{ Private declarations }
public
flag, flagname, snote, MainType, ReturnStr, FGStr, FChkStr: string;
fnote, forderno: Boolean;
PPSTE, JiangeStr: integer;
{ Public declarations }
end;
var
frmZDYHelpFZSel: TfrmZDYHelpFZSel;
implementation
uses
U_DataLink, U_RTFun, U_ZDYHelp;
{$R *.dfm}
procedure TfrmZDYHelpFZSel.TBAddClick(Sender: TObject);
var
maxno: string;
begin
if Trim(BZType.Text) = '' then
begin
Application.MessageBox('类型不能为空!', '提示', 0);
Exit;
end;
ZDYName.SetFocus;
TV1.OptionsData.Editing := True;
TV1.OptionsSelection.CellSelect := True;
if GetLSNo(ADOQueryTemp, maxno, 'SY', 'KH_ZDY', 3, 1) = False then
begin
Application.MessageBox('取最大编号失败!', '提示', 0);
Exit;
end;
with ClientDataSet1 do
begin
Append;
fieldbyname('ZDYNo').Value := maxno;
fieldbyname('Note').Value := BZType.Text;
Post;
end;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('insert into KH_ZDY(Type,MainType,ZDYNo,Note) ');
sql.Add('values(' + quotedstr(Trim(flag)));
sql.Add(',' + quotedstr(Trim(MainType)));
sql.Add(',' + quotedstr(Trim(maxno)));
sql.Add(',' + quotedstr(Trim(BZType.Text)) + ') ');
ExecSQL;
end;
end;
procedure TfrmZDYHelpFZSel.FormCreate(Sender: TObject);
begin
try
cxGrid1.Align := alClient;
with ADOConnection1 do
begin
Connected := false;
ConnectionString := DConString;
//ConnectionString:='';
Connected := true;
end;
except
frmZDYHelpFZSel.Free;
end;
end;
procedure TfrmZDYHelpFZSel.BZTypeBtnDnClick(Sender: TObject);
begin
TBtnEditC(Sender).Text := '';
TBtnEditC(Sender).TxtCode := '';
end;
procedure TfrmZDYHelpFZSel.BZTypeBtnUpClick(Sender: TObject);
var
fsj: string;
FWZ: Integer;
begin
try
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag := Trim(self.flag) + 'MX';
flagname := '类型';
if ShowModal = 1 then
begin
TEdit(Sender).Text := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmZDYHelpFZSel.FormClose(Sender: TObject; var Action: TCloseAction);
begin
inherited;
writeCxGrid('自定义' + Trim(flag), TV1, '自定义数据');
ZDYName.SetFocus;
Action := caFree;
end;
procedure TfrmZDYHelpFZSel.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Close;
sql.Clear;
sql.Add('select * from KH_ZDY where Type=''' + flag + '''');
if Trim(MainType) <> '' then
begin
sql.Add(' and MainType=''' + Trim(MainType) + '''');
end;
Open;
end;
SCreateCDS(ADOQueryMain, ClientDataSet1);
SInitCDSData(ADOQueryMain, ClientDataSet1);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmZDYHelpFZSel.TBDelClick(Sender: TObject);
begin
if ClientDataSet1.IsEmpty then
Exit;
if (Trim(ClientDataSet1.FieldByName('ZDYNo').AsString) <> '') or (Trim(ClientDataSet1.FieldByName('ZDYname').AsString) <> '') then
begin
if application.MessageBox('确定要删除吗?', '提示信息', 1) = 2 then
exit;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete KH_ZDY where ZDYNo=''' + Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString) + '''');
SQL.Add('and Type=''' + Trim(flag) + '''');
ExecSQL;
end;
end;
ClientDataSet1.Delete;
end;
procedure TfrmZDYHelpFZSel.TBCloseClick(Sender: TObject);
begin
ModalResult := 2;
ZDYName.SetFocus;
WriteCxGrid('自定义包装要求1', TV1, '自定义数据');
Close;
end;
procedure TfrmZDYHelpFZSel.FormShow(Sender: TObject);
var
fsj, fsj1: string;
FStrs: TStringList;
i: integer;
begin
ReadCxGrid('自定义包装要求1', TV1, '自定义数据');
InitGrid();
fsj := Trim(flag) + '01';
fsj1 := Trim(flagname) + '01';
if Trim(FChkStr) <> '' then
begin
FStrs := TStringList.Create();
ExtractStrings(['|'], [' '], PChar(FChkStr), FStrs);
frmZDYHelpFZSel.Caption := Trim(flagname);
// for i := 0 to FStrs.Count-1 do
// showmessage(FStrs[i]);
with ClientDataSet1 do
begin
First;
while not eof do
begin
if FStrs.IndexOf(Trim(FieldByName('ZDYName').AsString)) >= 0 then
begin
Edit;
FieldByName('SSel').Value := true;
Post;
end;
Next;
end;
end;
FStrs.Free;
end;
end;
procedure TfrmZDYHelpFZSel.ToolButton1Click(Sender: TObject);
begin
ReturnStr := '';
with ClientDataSet1 do
begin
First;
while not Eof do
begin
if FieldByName('SSel').AsBoolean = True then
begin
if JiangeStr <> 99 then
begin
if FGStr <> '' then
ReturnStr := ReturnStr + Trim(fieldbyname('ZDYName').AsString) + FGStr
else
ReturnStr := ReturnStr + Trim(fieldbyname('ZDYName').AsString) + ';'
end
else
ReturnStr := ReturnStr + Trim(fieldbyname('ZDYName').AsString);
end;
Next;
end;
end;
if JiangeStr <> 99 then
ReturnStr := Copy(ReturnStr, 1, Length(ReturnStr) - 1);
ModalResult := 1;
end;
procedure TfrmZDYHelpFZSel.TBEditClick(Sender: TObject);
begin
TV1.OptionsData.Editing := True;
end;
procedure TfrmZDYHelpFZSel.TV1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
begin
if TV1.OptionsData.Editing = False then
begin
ModalResult := 1;
end;
end;
procedure TfrmZDYHelpFZSel.TV1Column1PropertiesEditValueChanged(Sender: TObject);
var
mvalue, FFieldName: string;
begin
mvalue := TcxTextEdit(Sender).EditingText;
FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName);
with ClientDataSet1 do
begin
Edit;
FieldByName(FFieldName).Value := mvalue;
Post;
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('Update KH_Zdy Set ' + FFieldName + '=' + quotedstr(Trim(mvalue)));
sql.Add(' where ZdyNo=''' + Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString) + '''');
ExecSQL;
end;
tv1.Controller.EditingController.ShowEdit();
end;
procedure TfrmZDYHelpFZSel.ZDYNameChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS(ADOQueryMain, ClientDataSet1);
SInitCDSData(ADOQueryMain, ClientDataSet1);
end;
end;
procedure TfrmZDYHelpFZSel.V1NamePropertiesEditValueChanged(Sender: TObject);
var
maxno, mvalue: string;
begin
mvalue := TcxTextEdit(Sender).EditingText;
with ClientDataSet1 do
begin
Edit;
FieldByName('ZDYName').Value := mvalue;
Post;
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('Update KH_Zdy Set ZDYName=''' + Trim(mvalue) + '''');
sql.Add(' where ZdyNo=''' + Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString) + '''');
ExecSQL;
end;
end;
procedure TfrmZDYHelpFZSel.FormDestroy(Sender: TObject);
begin
frmZDYHelpFZSel := nil;
end;
end.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,539 @@
unit U_ZDYHelpSM;
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;
type
TfrmZDYHelpSM = class(TForm)
TV1: TcxGridDBTableView;
cxGrid1Level1: TcxGridLevel;
cxGrid1: TcxGrid;
V1Code: TcxGridDBColumn;
V1Name: TcxGridDBColumn;
ToolBar1: TToolBar;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
DataSource1: TDataSource;
ClientDataSet1: TClientDataSet;
TBAdd: TToolButton;
TBSave: TToolButton;
TBDel: TToolButton;
TBClose: TToolButton;
ToolButton1: TToolButton;
TBEdit: TToolButton;
V1Note: TcxGridDBColumn;
ADOConnection1: TADOConnection;
Panel1: TPanel;
Label1: TLabel;
ZDYName: TEdit;
ThreeImgList: TImageList;
Label2: TLabel;
cxGridPopupMenu1: TcxGridPopupMenu;
V1ZdyFlag: TcxGridDBColumn;
V1HelpType: TcxGridDBColumn;
V1note1: TcxGridDBColumn;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBAddClick(Sender: TObject);
procedure TBSaveClick(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure TBEditClick(Sender: TObject);
procedure TV1CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
procedure ZDYNameChange(Sender: TObject);
procedure V1NamePropertiesEditValueChanged(Sender: TObject);
procedure V1Column1PropertiesEditValueChanged(Sender: TObject);
procedure FormDestroy(Sender: TObject);
private
procedure InitGrid();
{ Private declarations }
public
flag,flagname,snote,MainType:string;
fnote,forderno,fZdyFlag,ViewFlag,fnote1:Boolean;
PPSTE:integer;
{ Public declarations }
end;
var
frmZDYHelpSM: TfrmZDYHelpSM;
implementation
uses
U_DataLink,U_RTFun;
{$R *.dfm}
procedure TfrmZDYHelpSM.FormCreate(Sender: TObject);
begin
try
cxGrid1.Align:=alClient;
with ADOConnection1 do
begin
Connected:=false;
ConnectionString:=DConString;
Connected:=true;
end;
except
frmZDYHelpSM.Free;
end;
end;
procedure TfrmZDYHelpSM.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
ZDYName.SetFocus;
Action:=cahide;
end;
procedure TfrmZDYHelpSM.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Close;
sql.Clear;
sql.Add('select A.*,ZJM=dbo.getPinYin(A.ZdyName) ');
sql.Add('from KH_ZDY'+DSMFlag+' A ');
sql.Add('where A.Type='''+flag+'''');
if Trim(MainType)<>'' then
begin
sql.Add(' and A.MainType='''+Trim(MainType)+'''');
end;
Open;
end;
SCreateCDS20(ADOQueryMain,ClientDataSet1);
SInitCDSData20(ADOQueryMain,ClientDataSet1);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmZDYHelpSM.TBAddClick(Sender: TObject);
var
i:Integer;
begin
ZDYName.SetFocus;
TV1.OptionsData.Editing:=True;
TV1.OptionsSelection.CellSelect:=True;
for i:=0 to 5 do
begin
with ClientDataSet1 do
begin
Append;
Post;
end;
end;
end;
procedure TfrmZDYHelpSM.TBSaveClick(Sender: TObject);
var
maxno:string;
begin
if ClientDataSet1.IsEmpty then Exit;
ZDYName.SetFocus;
if ClientDataSet1.Locate('ZDYName',null,[]) then
begin
Application.MessageBox('名称不能为空!','提示',0);
Exit;
end;
if ClientDataSet1.Locate('ZDYName','',[]) then
begin
Application.MessageBox('名称不能为空!','提示',0);
Exit;
end;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryTemp do
begin
Close;
SQL.Clear;
SQL.Add('select * from KH_ZDY where ZdyNo='''+Trim(flag)+'''');
open;
end;
if ADOQueryTemp.IsEmpty then
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('select * from KH_ZDY where 1=2');
open;
ADOQueryCmd.Append;
ADOQueryCmd.FieldByName('ZDYNo').Value:=Trim(flag);
ADOQueryCmd.FieldByName('ZDYName').Value:=trim(flagname);
ADOQueryCmd.FieldByName('Type').Value:='Main';
ADOQueryCmd.FieldByName('MainType').Value:=Trim(MainType);
ADOQueryCmd.Post;
end;
end;
with ADOQueryCmd do
begin
ClientDataSet1.DisableControls;
with ClientDataSet1 do
begin
First;
while not eof do
begin
if Trim(ClientDataSet1.FieldByName('ZDYNO').AsString)='' then
begin
if GetLSNo(ADOQueryTemp,maxno,'SY','KH_ZDY',3,1)=False then
begin
ADOQueryCmd.Connection.RollbackTrans;
ClientDataSet1.EnableControls;
Application.MessageBox('取最大编号失败!','提示',0);
Exit;
end;
end else
begin
maxno:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString);
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.add('select * from KH_Zdy where Type='''+Trim(flag)+'''');
if Trim(MainType)<>'' then
SQL.Add(' and MainType='''+Trim(MainType)+'''');
sql.Add(' and ZdyName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+'''');
Open;
end;
if ADOQueryTemp.IsEmpty=False then
begin
if ADOQueryTemp.RecordCount>1 then
begin
ADOQueryCmd.Connection.RollbackTrans;
ClientDataSet1.EnableControls;
Application.MessageBox('名称重复!','提示',0);
Exit;
end;
if Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)='' then
begin
ADOQueryCmd.Connection.RollbackTrans;
ClientDataSet1.EnableControls;
Application.MessageBox('名称重复!','提示',0);
Exit;
end else
begin
if Trim(ADOQueryTemp.fieldbyname('ZdyNo').AsString)<>Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString) then
begin
ADOQueryCmd.Connection.RollbackTrans;
ClientDataSet1.EnableControls;
Application.MessageBox('名称重复!','提示',0);
Exit;
end;
end;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
SQL.Add('delete KH_ZDY where ZDYNO='''+Trim(ClientDataSet1.fieldbyname('ZDYNO').AsString)+'''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from KH_ZDY where 1<>1');
Open;
end;
ADOQueryCmd.Append;
ADOQueryCmd.FieldByName('ZDYNo').Value:=Trim(maxno);
ADOQueryCmd.FieldByName('ZDYName').Value:=ClientDataSet1.fieldbyname('ZDYName').Value;
ADOQueryCmd.FieldByName('note').Value:=Trim(snote);
//ADOQueryCmd.FieldByName('orderno').Value:=ClientDataSet1.fieldbyname('Name').AsString;
ADOQueryCmd.FieldByName('Type').Value:=flag;
ADOQueryCmd.FieldByName('valid').Value:='Y';
if Trim(MainType)<>'' then
ADOQueryCmd.FieldByName('MainType').Value:=Trim(MainType);
//ADOQueryCmd.FieldByName('sel').Value:=0;
ADOQueryCmd.Post;
ClientDataSet1.Edit;
ClientDataSet1.FieldByName('ZDYNo').Value:=Trim(maxno);
ClientDataSet1.Post;
Next;
end;
end;
ClientDataSet1.EnableControls;
end;
ADOQueryCmd.Connection.CommitTrans;
Application.MessageBox('保存成功!','提示',0);
TV1.OptionsData.Editing:=False;
TV1.OptionsSelection.CellSelect:=False;
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('保存失败!','提示',0);
end;
end;
procedure TfrmZDYHelpSM.TBDelClick(Sender: TObject);
begin
if ClientDataSet1.IsEmpty then Exit;
if (Trim(ClientDataSet1.FieldByName('ZDYNo').AsString)<>'') or
(Trim(ClientDataSet1.FieldByName('ZDYname').AsString)<>'') then
begin
if application.MessageBox('确定要删除吗?','提示信息',1)=2 then exit;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete KH_ZDY'+DSMFlag+' where ZDYNo='''+Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString)+'''');
SQL.Add(' and Type='''+Trim(flag)+'''');
ExecSQL;
end;
end;
ClientDataSet1.Delete;
end;
procedure TfrmZDYHelpSM.TBCloseClick(Sender: TObject);
begin
ModalResult:=2;
ZDYName.SetFocus;
Close;
end;
procedure TfrmZDYHelpSM.FormShow(Sender: TObject);
var
fsj,fsj1:string;
begin
InitGrid();
fsj:=Trim(flag)+'01';
fsj1:=Trim(flagname)+'01';
ReadCxGrid('自定义'+Trim(flag),TV1);
frmZDYHelpSM.Caption:=Trim(flagname);
V1Note.Visible:=fnote;
v1note1.Visible:=fnote1;
if ViewFlag=True then
begin
TBAdd.Visible:=False;
TBSave.Visible:=False;
TBDel.Visible:=False;
TBEdit.Visible:=False;
Label2.Visible:=False;
end;
end;
procedure TfrmZDYHelpSM.ToolButton1Click(Sender: TObject);
begin
ZDYName.SetFocus;
ModalResult:=1;
end;
procedure TfrmZDYHelpSM.TBEditClick(Sender: TObject);
begin
TV1.OptionsData.Editing:=True;
TV1.OptionsSelection.CellSelect:=True;
end;
procedure TfrmZDYHelpSM.TV1CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
if TV1.OptionsData.Editing=False then
begin
ModalResult:=1;
end;
end;
procedure TfrmZDYHelpSM.ZDYNameChange(Sender: TObject);
var
fsj:String;
begin
if Trim(ZDYName.Text)<>'' then
begin
fsj:=' zdyname like '''+'%'+Trim(ZDYName.Text)+'%'+''''
+' or Note like '''+'%'+Trim(ZDYName.Text)+'%'+''''
+' or ZJM like '''+'%'+Trim(ZDYName.Text)+'%'+'''';
end;
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain,fsj);
SCreateCDS20(ADOQueryMain,ClientDataSet1);
SInitCDSData20(ADOQueryMain,ClientDataSet1);
end;
end;
procedure TfrmZDYHelpSM.V1NamePropertiesEditValueChanged(Sender: TObject);
var
maxno,mvalue:string;
begin
mvalue:=TcxTextEdit(Sender).EditingText;
if Trim(mvalue)='' then Exit;
with ClientDataSet1 do
begin
Edit;
FieldByName('ZdyName').Value:=Trim(mvalue);
//Post;
end;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryTemp do
begin
Close;
SQL.Clear;
SQL.Add('select * from KH_ZDY'+DSMFlag+' where ZdyNo='''+Trim(flag)+'''');
open;
end;
if ADOQueryTemp.IsEmpty then
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('select * from KH_ZDY'+DSMFlag+' where 1=2');
open;
ADOQueryCmd.Append;
ADOQueryCmd.FieldByName('ZDYNo').Value:=Trim(flag);
ADOQueryCmd.FieldByName('ZDYName').Value:=trim(flagname);
ADOQueryCmd.FieldByName('Type').Value:='Main';
ADOQueryCmd.FieldByName('MainType').Value:=Trim(MainType);
ADOQueryCmd.FieldByName('SMFlag').Value:=trim(DSmflag);
ADOQueryCmd.Post;
end;
end;
with ADOQueryCmd do
begin
//ClientDataSet1.DisableControls;
//with ClientDataSet1 do
//begin
//First;
//while not eof do
//begin
if Trim(ClientDataSet1.FieldByName('ZDYNO').AsString)='' then
begin
if GetLSNo(ADOQueryTemp,maxno,'SY','KH_ZDY'+trim(DSMFlag),3,1)=False then
begin
ADOQueryCmd.Connection.RollbackTrans;
//ClientDataSet1.EnableControls;
Application.MessageBox('取最大编号失败!','提示',0);
Exit;
end;
end else
begin
maxno:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString);
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.add('select * from KH_Zdy'+DSMFlag+' ');
sql.add('where Type='''+Trim(flag)+'''');
if Trim(MainType)<>'' then
SQL.Add(' and MainType='''+Trim(MainType)+'''');
sql.Add(' and ZdyName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+'''');
sql.Add(' and note='''+Trim(ClientDataSet1.fieldbyname('note').AsString)+'''');
Open;
end;
if ADOQueryTemp.IsEmpty=False then
begin
if ADOQueryTemp.RecordCount>1 then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('名称重复!','提示',0);
Exit;
end;
if Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)='' then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('名称重复!','提示',0);
Exit;
end else
begin
if Trim(ADOQueryTemp.fieldbyname('ZdyNo').AsString)<>Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString) then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('名称重复!','提示',0);
Exit;
end;
end;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
SQL.Add('delete KH_ZDY'+DSMFlag+' where ZDYNO='''+Trim(ClientDataSet1.fieldbyname('ZDYNO').AsString)+'''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from KH_ZDY'+DSMFlag+' where 1=2 ');
Open;
end;
ADOQueryCmd.Append;
ADOQueryCmd.FieldByName('ZDYNo').Value:=Trim(maxno);
ADOQueryCmd.FieldByName('ZDYName').Value:=ClientDataSet1.fieldbyname('ZDYName').AsString;
ADOQueryCmd.FieldByName('note').Value:=Trim(snote);
ADOQueryCmd.FieldByName('Type').Value:=flag;
ADOQueryCmd.FieldByName('valid').Value:='Y';
ADOQueryCmd.FieldByName('SMFlag').Value:=trim(DSmflag);
if Trim(MainType)<>'' then
ADOQueryCmd.FieldByName('MainType').Value:=Trim(MainType);
//ADOQueryCmd.FieldByName('sel').Value:=0;
ADOQueryCmd.Post;
ClientDataSet1.Edit;
ClientDataSet1.FieldByName('ZDYNo').Value:=Trim(maxno);
end;
ADOQueryCmd.Connection.CommitTrans;
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('保存失败!','提示',0);
end;
end;
procedure TfrmZDYHelpSM.V1Column1PropertiesEditValueChanged(Sender: TObject);
var
mvalue:String;
fieldname:string;
begin
fieldname:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName;
if Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)='' then
begin
Application.MessageBox('名称不能为空!','提示',0);
Exit;
end;
mvalue:=TcxTextEdit(Sender).EditingText;
with ClientDataSet1 do
begin
Edit;
FieldByName(fieldname).Value:=mvalue;
Post;
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('Update KH_Zdy'+DSMFlag+' Set '+fieldname+'='''+Trim(mvalue)+''' ');
sql.Add('where ZdyNo='''+Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)+'''');
ExecSQL;
end;
end;
procedure TfrmZDYHelpSM.FormDestroy(Sender: TObject);
begin
frmZDYHelpSM:=nil;
WriteCxGrid('自定义'+Trim(flag),TV1);
end;
end.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,566 @@
unit U_ZDYHelpSel;
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,
cxCheckBox, cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore,
dxSkinsDefaultPainters, cxNavigator, dxDateRanges, System.ImageList,
System.Types, dxBarBuiltInMenu, cxGridCustomPopupMenu, cxGridPopupMenu;
type
TfrmZDYHelpSel = class(TForm)
TV1: TcxGridDBTableView;
cxGrid1Level1: TcxGridLevel;
cxGrid1: TcxGrid;
V1Code: TcxGridDBColumn;
V1Name: TcxGridDBColumn;
ToolBar1: TToolBar;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
DataSource1: TDataSource;
ClientDataSet1: TClientDataSet;
TBAdd: TToolButton;
TBSave: TToolButton;
TBDel: TToolButton;
TBClose: TToolButton;
ToolButton1: TToolButton;
TBEdit: TToolButton;
V1Note: TcxGridDBColumn;
V1OrderNo: TcxGridDBColumn;
ADOConnection1: TADOConnection;
Panel1: TPanel;
Label1: TLabel;
ZDYName: TEdit;
ThreeImgList: TImageList;
V1Column1: TcxGridDBColumn;
Label2: TLabel;
ImageList_new32: TImageList;
cxGridPopupMenu1: TcxGridPopupMenu;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBAddClick(Sender: TObject);
procedure TBSaveClick(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure TBEditClick(Sender: TObject);
procedure TV1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
procedure ZDYNameChange(Sender: TObject);
procedure V1NamePropertiesEditValueChanged(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure V1NotePropertiesEditValueChanged(Sender: TObject);
private
procedure InitGrid();
{ Private declarations }
public
flag, flagname, FChkStr, snote, MainType, ReturnStr, FGStr: string;
fnote, forderno: Boolean;
PPSTE, JiangeStr: integer;
{ Public declarations }
end;
var
frmZDYHelpSel: TfrmZDYHelpSel;
implementation
uses
U_DataLink, U_RTFun;
{$R *.dfm}
procedure TfrmZDYHelpSel.FormCreate(Sender: TObject);
begin
try
cxGrid1.Align := alClient;
with ADOConnection1 do
begin
Connected := false;
ConnectionString := DConString;
//ConnectionString:='';
Connected := true;
end;
except
{if Application.MessageBox('网络连接失败,是否要再次连接?','提示',32+4)=IDYES then
begin
try
with ADOConnection1 do
begin
Connected:=false;
ConnectionString:=DConString;
//ConnectionString:='23242';
Connected:=true;
end;
except
end;
end; }
frmZDYHelpSel.Free;
end;
end;
procedure TfrmZDYHelpSel.FormClose(Sender: TObject; var Action: TCloseAction);
begin
writeCxGrid('自定义' + Trim(flag), TV1, '自定义数据');
ZDYName.SetFocus;
Action := caFree;
end;
procedure TfrmZDYHelpSel.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Close;
sql.Clear;
sql.Add('select * from KH_ZDY where Type=''' + flag + '''');
if Trim(MainType) <> '' then
begin
sql.Add(' and MainType=''' + Trim(MainType) + '''');
end;
Open;
end;
SCreateCDS(ADOQueryMain, ClientDataSet1);
SInitCDSData(ADOQueryMain, ClientDataSet1);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmZDYHelpSel.TBAddClick(Sender: TObject);
var
i: Integer;
begin
ZDYName.SetFocus;
TV1.OptionsData.Editing := True;
TV1.OptionsSelection.CellSelect := True;
for i := 0 to TV1.ColumnCount - 1 do
begin
if uppercase(TV1.Columns[i].DataBinding.FieldName) <> 'SSEL' then
TV1.Columns[i].Options.Editing := True;
end;
for i := 0 to 5 do
begin
with ClientDataSet1 do
begin
Append;
Post;
end;
end;
end;
procedure TfrmZDYHelpSel.TBSaveClick(Sender: TObject);
var
maxno: string;
begin
if ClientDataSet1.IsEmpty then
Exit;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryTemp do
begin
Close;
SQL.Clear;
SQL.Add('select * from KH_ZDY where ZdyNo=''' + Trim(flag) + '''');
open;
end;
if ADOQueryTemp.IsEmpty then
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('insert into KH_ZDY(ZDYNo,ZDYName,Type,MainType) select :ZDYNo,:ZDYName,:Type,:MainType ');
Parameters.ParamByName('ZDYNo').Value := Trim(flag);
Parameters.ParamByName('ZDYName').Value := Trim(flagname);
Parameters.ParamByName('Type').Value := 'Main';
Parameters.ParamByName('MainType').Value := Trim(MainType);
ExecSQL;
end;
end;
with ADOQueryCmd do
begin
with ClientDataSet1 do
begin
First;
while not eof do
begin
if Trim(ClientDataSet1.FieldByName('ZDYNO').AsString) = '' then
begin
if GetLSNo(ADOQueryTemp, maxno, 'SY', 'KH_ZDY', 3, 1) = False then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('取最大编号失败!', '提示', 0);
Exit;
end;
end
else
begin
maxno := Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString);
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
SQL.Add('delete KH_ZDY where ZDYNO=''' + Trim(ClientDataSet1.fieldbyname('ZDYNO').AsString) + '''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from KH_ZDY where 1<>1');
Open;
end;
if Trim(ClientDataSet1.FieldByName('ZDYName').AsString) = '' then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('名称不能为空!', '提示', 0);
Exit;
end;
ADOQueryCmd.Append;
ADOQueryCmd.FieldByName('ZDYNo').Value := Trim(maxno);
ADOQueryCmd.FieldByName('ZDYName').Value := ClientDataSet1.fieldbyname('ZDYName').AsString;
ADOQueryCmd.FieldByName('note').Value := Trim(snote);
//ADOQueryCmd.FieldByName('orderno').Value:=ClientDataSet1.fieldbyname('Name').AsString;
ADOQueryCmd.FieldByName('Type').Value := flag;
ADOQueryCmd.FieldByName('valid').Value := 'Y';
if Trim(MainType) <> '' then
ADOQueryCmd.FieldByName('MainType').Value := Trim(MainType);
//ADOQueryCmd.FieldByName('sel').Value:=0;
ADOQueryCmd.Post;
ClientDataSet1.Edit;
ClientDataSet1.FieldByName('ZDYNo').Value := Trim(maxno);
ClientDataSet1.Post;
Next;
end;
end;
end;
ADOQueryCmd.Connection.CommitTrans;
Application.MessageBox('保存成功!', '提示', 0);
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('保存失败!', '提示', 0);
end;
// TV1.OptionsData.Editing:=False;
end;
procedure TfrmZDYHelpSel.TBDelClick(Sender: TObject);
begin
if ClientDataSet1.IsEmpty then
Exit;
if (Trim(ClientDataSet1.FieldByName('ZDYNo').AsString) <> '') or (Trim(ClientDataSet1.FieldByName('ZDYname').AsString) <> '') then
begin
if application.MessageBox('确定要删除吗?', '提示信息', 1) = 2 then
exit;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete KH_ZDY where ZDYNo=''' + Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString) + '''');
SQL.Add('and Type=''' + Trim(flag) + '''');
ExecSQL;
end;
end;
ClientDataSet1.Delete;
end;
procedure TfrmZDYHelpSel.TBCloseClick(Sender: TObject);
begin
ModalResult := 2;
ZDYName.SetFocus;
Close;
end;
procedure TfrmZDYHelpSel.FormShow(Sender: TObject);
var
fsj, fsj1: string;
FStrs: TStringList;
i: Integer;
begin
{if PPSTE=1 then
begin
Application.Terminate;
Exit;
end; }
for i := 0 to TV1.ColumnCount - 1 do
begin
if uppercase(TV1.Columns[i].DataBinding.FieldName) <> 'SSEL' then
TV1.Columns[i].Options.Editing := false;
end;
ReadCxGrid('自定义' + Trim(flag), TV1, '自定义数据');
InitGrid();
fsj := Trim(flag) + '01';
fsj1 := Trim(flagname) + '01';
if Trim(FChkStr) <> '' then
begin
FStrs := TStringList.Create();
ExtractStrings(['|'], [' '], PChar(FChkStr), FStrs);
frmZDYHelpSel.Caption := Trim(flagname);
with ClientDataSet1 do
begin
First;
while not eof do
begin
if FStrs.IndexOf(Trim(FieldByName('ZDYName').AsString)) >= 0 then
begin
Edit;
FieldByName('SSel').Value := true;
Post;
end;
Next;
end;
end;
FStrs.Free;
end;
end;
procedure TfrmZDYHelpSel.ToolButton1Click(Sender: TObject);
begin
ReturnStr := '';
with ClientDataSet1 do
begin
First;
while not Eof do
begin
if FieldByName('SSel').AsBoolean = True then
begin
if JiangeStr <> 99 then
begin
if FGStr <> '' then
ReturnStr := ReturnStr + Trim(fieldbyname('ZDYName').AsString) + FGStr
else
ReturnStr := ReturnStr + Trim(fieldbyname('ZDYName').AsString) + ';'
end
else
ReturnStr := ReturnStr + Trim(fieldbyname('ZDYName').AsString);
end;
Next;
end;
end;
if JiangeStr <> 99 then
ReturnStr := Copy(ReturnStr, 1, Length(ReturnStr) - 1);
ModalResult := 1;
end;
procedure TfrmZDYHelpSel.TBEditClick(Sender: TObject);
var
i: Integer;
begin
for i := 0 to TV1.ColumnCount - 1 do
begin
if uppercase(TV1.Columns[i].DataBinding.FieldName) <> 'SSEL' then
TV1.Columns[i].Options.Editing := True;
end;
end;
procedure TfrmZDYHelpSel.TV1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
begin
if TV1.OptionsData.Editing = False then
begin
ModalResult := 1;
end;
end;
procedure TfrmZDYHelpSel.ZDYNameChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS(ADOQueryMain, ClientDataSet1);
SInitCDSData(ADOQueryMain, ClientDataSet1);
end;
end;
procedure TfrmZDYHelpSel.V1NamePropertiesEditValueChanged(Sender: TObject);
var
maxno, mvalue: string;
begin
mvalue := TcxTextEdit(Sender).EditingText;
if Trim(mvalue) = '' then
begin
//Application.MessageBox('名称不能为空!','提示',0);
Exit;
end;
with ClientDataSet1 do
begin
Edit;
FieldByName('ZdyName').Value := Trim(mvalue);
//Post;
end;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryTemp do
begin
Close;
SQL.Clear;
SQL.Add('select * from KH_ZDY where ZdyNo=''' + Trim(flag) + '''');
open;
end;
if ADOQueryTemp.IsEmpty then
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('insert into KH_ZDY(ZDYNo,ZDYName,Type,MainType) select :ZDYNo,:ZDYName,:Type,:MainType ');
Parameters.ParamByName('ZDYNo').Value := Trim(flag);
Parameters.ParamByName('ZDYName').Value := Trim(flagname);
Parameters.ParamByName('Type').Value := 'Main';
Parameters.ParamByName('MainType').Value := Trim(MainType);
ExecSQL;
end;
end;
with ADOQueryCmd do
begin
//ClientDataSet1.DisableControls;
//with ClientDataSet1 do
//begin
//First;
//while not eof do
//begin
if Trim(ClientDataSet1.FieldByName('ZDYNO').AsString) = '' then
begin
if GetLSNo(ADOQueryTemp, maxno, 'SY', 'KH_ZDY', 3, 1) = False then
begin
ADOQueryCmd.Connection.RollbackTrans;
//ClientDataSet1.EnableControls;
Application.MessageBox('取最大编号失败!', '提示', 0);
Exit;
end;
end
else
begin
maxno := Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString);
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.add('select * from KH_Zdy where Type=''' + Trim(flag) + '''');
if Trim(MainType) <> '' then
SQL.Add(' and MainType=''' + Trim(MainType) + '''');
sql.Add(' and ZdyName=''' + Trim(ClientDataSet1.fieldbyname('ZdyName').AsString) + '''');
Open;
end;
if ADOQueryTemp.IsEmpty = False then
begin
if ADOQueryTemp.RecordCount > 1 then
begin
ADOQueryCmd.Connection.RollbackTrans;
//ClientDataSet1.EnableControls;
Application.MessageBox('名称重复!', '提示', 0);
Exit;
end;
if Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString) = '' then
begin
ADOQueryCmd.Connection.RollbackTrans;
//ClientDataSet1.EnableControls;
Application.MessageBox('名称重复!', '提示', 0);
Exit;
end
else
begin
if Trim(ADOQueryTemp.fieldbyname('ZdyNo').AsString) <> Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString) then
begin
ADOQueryCmd.Connection.RollbackTrans;
//ClientDataSet1.EnableControls;
Application.MessageBox('名称重复!', '提示', 0);
Exit;
end;
end;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
SQL.Add('delete KH_ZDY where ZDYNO=''' + Trim(ClientDataSet1.fieldbyname('ZDYNO').AsString) + '''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from KH_ZDY where 1<>1');
Open;
end;
ADOQueryCmd.Append;
ADOQueryCmd.FieldByName('ZDYNo').Value := Trim(maxno);
ADOQueryCmd.FieldByName('ZDYName').Value := ClientDataSet1.fieldbyname('ZDYName').AsString;
ADOQueryCmd.FieldByName('note').Value := Trim(snote);
//ADOQueryCmd.FieldByName('orderno').Value:=ClientDataSet1.fieldbyname('Name').AsString;
ADOQueryCmd.FieldByName('Type').Value := flag;
ADOQueryCmd.FieldByName('valid').Value := 'Y';
if Trim(MainType) <> '' then
ADOQueryCmd.FieldByName('MainType').Value := Trim(MainType);
//ADOQueryCmd.FieldByName('sel').Value:=0;
ADOQueryCmd.Post;
ClientDataSet1.Edit;
ClientDataSet1.FieldByName('ZDYNo').Value := Trim(maxno);
//ClientDataSet1.Post;
// Next;
//end;
//end;
// ClientDataSet1.EnableControls;
end;
ADOQueryCmd.Connection.CommitTrans;
//Application.MessageBox('保存成功!','提示',0);
//TV1.OptionsData.Editing:=False;
//TV1.OptionsSelection.CellSelect:=False;
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('保存失败!', '提示', 0);
end;
end;
procedure TfrmZDYHelpSel.V1NotePropertiesEditValueChanged(Sender: TObject);
var
mvalue: string;
begin
if Trim(ClientDataSet1.fieldbyname('ZdyName').AsString) = '' then
begin
Application.MessageBox('名称不能为空!', '提示', 0);
Exit;
end;
mvalue := TcxTextEdit(Sender).EditingText;
if Trim(mvalue) = '' then
begin
mvalue := '';
end;
with ClientDataSet1 do
begin
Edit;
FieldByName('Note').Value := mvalue;
Post;
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('Update KH_Zdy Set Note=''' + Trim(mvalue) + '''');
sql.Add(' where ZdyNo=''' + Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString) + '''');
ExecSQL;
end;
end;
procedure TfrmZDYHelpSel.FormDestroy(Sender: TObject);
begin
frmZDYHelpSel := nil;
end;
end.

View File

@ -0,0 +1,328 @@
object frmZdyAttachGYSHelp: TfrmZdyAttachGYSHelp
Left = 173
Top = 121
Caption = #20379#24212#21830#36164#26009#31649#29702
ClientHeight = 579
ClientWidth = 1022
Color = clBtnFace
Font.Charset = GB2312_CHARSET
Font.Color = clWindowText
Font.Height = -12
Font.Name = #23435#20307
Font.Style = []
OldCreateOrder = False
OnClose = FormClose
OnDestroy = FormDestroy
OnShow = FormShow
PixelsPerInch = 96
TextHeight = 12
object ToolBar1: TToolBar
Left = 0
Top = 0
Width = 1022
Height = 31
ButtonHeight = 30
ButtonWidth = 59
Caption = 'ToolBar1'
Color = clSkyBlue
DisabledImages = DataLink_TradeManage.ThreeImgList
Images = DataLink_TradeManage.ThreeImgList
List = True
ParentColor = False
ShowCaptions = True
TabOrder = 0
object TBRafresh: TToolButton
Left = 0
Top = 0
AutoSize = True
Caption = #21047#26032
ImageIndex = 9
OnClick = TBRafreshClick
end
object ToolButton2: TToolButton
Left = 63
Top = 0
AutoSize = True
Caption = #36807#28388
ImageIndex = 59
OnClick = ToolButton2Click
end
object ToolButton3: TToolButton
Left = 126
Top = 0
AutoSize = True
Caption = #26032#22686
ImageIndex = 3
Visible = False
OnClick = ToolButton3Click
end
object ToolButton4: TToolButton
Left = 189
Top = 0
Caption = #20462#25913
ImageIndex = 54
Visible = False
OnClick = ToolButton4Click
end
object TBDel: TToolButton
Left = 248
Top = 0
AutoSize = True
Caption = #21024#38500
ImageIndex = 17
Visible = False
OnClick = TBDelClick
end
object ToolButton1: TToolButton
Left = 311
Top = 0
AutoSize = True
Caption = #23548#20986
ImageIndex = 53
end
object TBClose: TToolButton
Left = 374
Top = 0
AutoSize = True
Caption = #20851#38381
ImageIndex = 55
OnClick = TBCloseClick
end
end
object Panel1: TPanel
Left = 0
Top = 31
Width = 1022
Height = 39
Align = alTop
BevelInner = bvRaised
BevelOuter = bvLowered
Color = clSkyBlue
TabOrder = 1
object Label3: TLabel
Left = 203
Top = 13
Width = 60
Height = 12
Caption = #20379#24212#21830#21517#31216
end
object Label1: TLabel
Left = 22
Top = 13
Width = 60
Height = 12
Caption = #20379#24212#21830#32534#21495
end
object Label2: TLabel
Left = 395
Top = 13
Width = 24
Height = 12
Caption = #31867#22411
end
object ZdyName: TEdit
Tag = 2
Left = 267
Top = 9
Width = 89
Height = 20
TabOrder = 0
OnChange = ZdyNameChange
end
object ZdyCode: TEdit
Tag = 2
Left = 83
Top = 9
Width = 89
Height = 20
TabOrder = 1
OnChange = ZdyNameChange
end
object DEFstr5: TComboBox
Tag = 1
Left = 424
Top = 8
Width = 81
Height = 20
Style = csDropDownList
TabOrder = 2
OnChange = ZdyNameChange
Items.Strings = (
#22383#24067
#21152#24037#21378)
end
end
object cxGrid2: TcxGrid
Left = 0
Top = 70
Width = 1022
Height = 509
Align = alClient
TabOrder = 2
ExplicitHeight = 510
object Tv2: TcxGridDBTableView
OnDblClick = Tv2DblClick
Navigator.Buttons.CustomButtons = <>
Navigator.Buttons.Delete.Enabled = False
Navigator.Buttons.Delete.Visible = False
DataController.DataSource = DS_HZ
DataController.Summary.DefaultGroupSummaryItems = <>
DataController.Summary.FooterSummaryItems = <
item
Kind = skSum
end
item
Kind = skSum
end
item
Kind = skSum
end>
DataController.Summary.SummaryGroups = <>
OptionsBehavior.GoToNextCellOnEnter = True
OptionsCustomize.ColumnFiltering = False
OptionsData.Deleting = False
OptionsData.DeletingConfirmation = False
OptionsSelection.CellSelect = False
OptionsView.Footer = True
OptionsView.GroupByBox = False
Styles.IncSearch = DataLink_TradeManage.SHuangSe
Styles.Header = DataLink_TradeManage.handBlack
Styles.Inactive = DataLink_TradeManage.SHuangSe
Styles.Selection = DataLink_TradeManage.SHuangSe
object v2Column6: TcxGridDBColumn
Caption = #20379#24212#21830#21517#31216
DataBinding.FieldName = 'ZdyName'
PropertiesClassName = 'TcxButtonEditProperties'
Properties.Buttons = <
item
Default = True
Kind = bkEllipsis
end>
Properties.ReadOnly = True
HeaderAlignmentHorz = taCenter
Options.Focusing = False
Width = 124
end
object v2Column2: TcxGridDBColumn
Caption = #20379#24212#21830#32534#21495
DataBinding.FieldName = 'ZdyCode'
PropertiesClassName = 'TcxTextEditProperties'
HeaderAlignmentHorz = taCenter
Width = 80
end
object v2Column8: TcxGridDBColumn
Caption = #31867#22411
DataBinding.FieldName = 'DEFstr5'
HeaderAlignmentHorz = taCenter
Width = 77
end
object v2Column3: TcxGridDBColumn
Caption = #30005#35805
DataBinding.FieldName = 'DEFstr1'
PropertiesClassName = 'TcxTextEditProperties'
HeaderAlignmentHorz = taCenter
Width = 72
end
object v2Column4: TcxGridDBColumn
Caption = #25163#26426
DataBinding.FieldName = 'DEFstr2'
PropertiesClassName = 'TcxTextEditProperties'
HeaderAlignmentHorz = taCenter
Width = 74
end
object v2Column5: TcxGridDBColumn
Caption = #20256#30495
DataBinding.FieldName = 'DEFstr3'
PropertiesClassName = 'TcxTextEditProperties'
HeaderAlignmentHorz = taCenter
Width = 68
end
object v2Column7: TcxGridDBColumn
Caption = #20844#21496#22320#22336
DataBinding.FieldName = 'DEFNote1'
PropertiesClassName = 'TcxTextEditProperties'
HeaderAlignmentHorz = taCenter
Width = 69
end
object v2Column9: TcxGridDBColumn
Caption = #32852#31995#20154
DataBinding.FieldName = 'DEFstr4'
PropertiesClassName = 'TcxTextEditProperties'
HeaderAlignmentHorz = taCenter
Width = 73
end
object v2Column1: TcxGridDBColumn
Caption = #22791#27880
DataBinding.FieldName = 'Note'
PropertiesClassName = 'TcxTextEditProperties'
HeaderAlignmentHorz = taCenter
Width = 114
end
end
object cxGridLevel1: TcxGridLevel
GridView = Tv2
end
end
object ADOQueryTemp: TADOQuery
Connection = DataLink_TradeManage.ADOLink
LockType = ltReadOnly
Parameters = <>
Left = 789
Top = 9
end
object ADOQueryCmd: TADOQuery
Connection = DataLink_TradeManage.ADOLink
Parameters = <>
Left = 829
Top = 1
end
object ADOQueryMain: TADOQuery
Connection = DataLink_TradeManage.ADOLink
LockType = ltReadOnly
Parameters = <>
Left = 949
Top = 225
end
object RM1: TRMGridReport
ThreadPrepareReport = True
InitialZoom = pzDefault
PreviewButtons = [rmpbZoom, rmpbLoad, rmpbSave, rmpbPrint, rmpbFind, rmpbPageSetup, rmpbExit, rmpbExport, rmpbNavigator]
DefaultCollate = False
SaveReportOptions.RegistryPath = 'Software\ReportMachine\ReportSettings\'
PreviewOptions.RulerUnit = rmutScreenPixels
PreviewOptions.RulerVisible = False
PreviewOptions.DrawBorder = False
PreviewOptions.BorderPen.Color = clGray
PreviewOptions.BorderPen.Style = psDash
Dataset = RMDB_Main
CompressLevel = rmzcFastest
CompressThread = False
LaterBuildEvents = True
OnlyOwnerDataSet = False
Left = 864
Top = 224
ReportData = {}
end
object RMDB_Main: TRMDBDataSet
Visible = True
Left = 928
Top = 216
end
object cxGridPopupMenu2: TcxGridPopupMenu
Grid = cxGrid2
PopupMenus = <>
Left = 888
Top = 224
end
object DS_HZ: TDataSource
DataSet = CDS_HZ
Left = 899
Top = 235
end
object CDS_HZ: TClientDataSet
Aggregates = <>
Params = <>
Left = 872
Top = 224
end
end

View File

@ -0,0 +1,205 @@
unit U_ZdyAttachGYSHelp;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB,
cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin,
StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls,
cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid,
cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common,
RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection,
IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar,
cxButtonEdit, cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore,
dxSkinsDefaultPainters, cxNavigator, dxDateRanges, dxBarBuiltInMenu;
type
TfrmZdyAttachGYSHelp = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBDel: TToolButton;
TBClose: TToolButton;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
Panel1: TPanel;
ToolButton2: TToolButton;
ADOQueryMain: TADOQuery;
ToolButton1: TToolButton;
RM1: TRMGridReport;
RMDB_Main: TRMDBDataSet;
Label3: TLabel;
ZdyName: TEdit;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
cxGridLevel1: TcxGridLevel;
cxGridPopupMenu2: TcxGridPopupMenu;
DS_HZ: TDataSource;
CDS_HZ: TClientDataSet;
ToolButton3: TToolButton;
v2Column6: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v2Column2: TcxGridDBColumn;
v2Column3: TcxGridDBColumn;
v2Column4: TcxGridDBColumn;
v2Column5: TcxGridDBColumn;
v2Column7: TcxGridDBColumn;
v2Column9: TcxGridDBColumn;
Label1: TLabel;
ZdyCode: TEdit;
ToolButton4: TToolButton;
v2Column8: TcxGridDBColumn;
Label2: TLabel;
DEFstr5: TComboBox;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBCloseClick(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure ZdyNameChange(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure Tv2DblClick(Sender: TObject);
private
{ Private declarations }
procedure InitGrid();
public
fkhType:string;
end;
var
frmZdyAttachGYSHelp: TfrmZdyAttachGYSHelp;
implementation
uses
U_DataLink,U_RTFun,U_ZDYHelp;
{$R *.dfm}
procedure TfrmZdyAttachGYSHelp.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
SQL.Clear;
sql.Add(' select * from KH_Zdy_Attachment where Type=''GYS'' and isnull(KHType,'''')='''+trim(fkhType)+'''');
Open;
end;
SCreateCDS(ADOQueryMain,CDS_HZ);
SInitCDSData(ADOQueryMain,CDS_HZ);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmZdyAttachGYSHelp.FormDestroy(Sender: TObject);
begin
frmZdyAttachGYSHelp:=nil;
end;
procedure TfrmZdyAttachGYSHelp.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmZdyAttachGYSHelp.TBCloseClick(Sender: TObject);
begin
WriteCxGrid('供应商资料',Tv2);
Close;
end;
procedure TfrmZdyAttachGYSHelp.TBDelClick(Sender: TObject);
begin
{ if CDS_HZ.IsEmpty then Exit;
if Application.MessageBox('确定要删除数据吗?','提示',32+4)<>IDYES then Exit;
if Trim(CDS_HZ.fieldbyname('ATID').AsString)<>'' then
begin
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('delete KH_Zdy_Attachment where ATID='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+'''');
sql.Add('delete KH_Zdy where ZdyNo='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+'''');
ExecSQL;
end;
end;
CDS_HZ.Delete;}
end;
procedure TfrmZdyAttachGYSHelp.FormShow(Sender: TObject);
begin
ReadCxGrid('供应商资料',Tv2);
InitGrid();
end;
procedure TfrmZdyAttachGYSHelp.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmZdyAttachGYSHelp.ToolButton2Click(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
SCreateCDS(ADOQueryMain,CDS_HZ);
SInitCDSData(ADOQueryMain,CDS_HZ);
end;
end;
procedure TfrmZdyAttachGYSHelp.ZdyNameChange(Sender: TObject);
begin
ToolButton2.Click;
end;
procedure TfrmZdyAttachGYSHelp.ToolButton4Click(Sender: TObject);
begin
{ try
frmZdyAttInputGYS:=TfrmZdyAttInputGYS.Create(Application);
with frmZdyAttInputGYS do
begin
FCYID:=Trim(Self.CDS_HZ.fieldbyname('ATID').AsString);
if ShowModal=1 then
begin
end;
end;
finally
frmZdyAttInputGYS.Free;
end; }
end;
procedure TfrmZdyAttachGYSHelp.ToolButton3Click(Sender: TObject);
begin
{ try
frmZdyAttInputGYS:=TfrmZdyAttInputGYS.Create(Application);
with frmZdyAttInputGYS do
begin
FCYID:='';
if ShowModal=1 then
begin
end;
end;
finally
frmZdyAttInputGYS.Free;
end; }
end;
procedure TfrmZdyAttachGYSHelp.Tv2DblClick(Sender: TObject);
begin
if CDS_HZ.IsEmpty then exit;
ModalResult:=1;
end;
end.

View File

@ -0,0 +1,331 @@
object frmZdyAttachmentHelp: TfrmZdyAttachmentHelp
Left = 157
Top = 76
Caption = #23458#25143#36164#26009#31649#29702
ClientHeight = 613
ClientWidth = 1048
Color = clBtnFace
Font.Charset = GB2312_CHARSET
Font.Color = clWindowText
Font.Height = -12
Font.Name = #23435#20307
Font.Style = []
OldCreateOrder = False
OnClose = FormClose
OnDestroy = FormDestroy
OnShow = FormShow
PixelsPerInch = 96
TextHeight = 12
object ToolBar1: TToolBar
Left = 0
Top = 0
Width = 1048
Height = 31
ButtonHeight = 30
ButtonWidth = 59
Caption = 'ToolBar1'
Color = clSkyBlue
DisabledImages = DataLink_TradeManage.ThreeImgList
Images = DataLink_TradeManage.ThreeImgList
List = True
ParentColor = False
ShowCaptions = True
TabOrder = 0
object TBRafresh: TToolButton
Left = 0
Top = 0
AutoSize = True
Caption = #21047#26032
ImageIndex = 9
OnClick = TBRafreshClick
end
object ToolButton2: TToolButton
Left = 63
Top = 0
AutoSize = True
Caption = #36807#28388
ImageIndex = 59
OnClick = ToolButton2Click
end
object ToolButton3: TToolButton
Left = 126
Top = 0
AutoSize = True
Caption = #26032#22686
ImageIndex = 3
Visible = False
end
object ToolButton4: TToolButton
Left = 189
Top = 0
Caption = #20462#25913
ImageIndex = 54
Visible = False
OnClick = ToolButton4Click
end
object TBDel: TToolButton
Left = 248
Top = 0
AutoSize = True
Caption = #21024#38500
ImageIndex = 17
Visible = False
OnClick = TBDelClick
end
object ToolButton1: TToolButton
Left = 311
Top = 0
AutoSize = True
Caption = #23548#20986
ImageIndex = 53
Visible = False
end
object TBClose: TToolButton
Left = 374
Top = 0
AutoSize = True
Caption = #20851#38381
ImageIndex = 55
OnClick = TBCloseClick
end
end
object Panel1: TPanel
Left = 0
Top = 31
Width = 1048
Height = 39
Align = alTop
BevelInner = bvRaised
BevelOuter = bvLowered
Color = clSkyBlue
TabOrder = 1
object Label3: TLabel
Left = 190
Top = 13
Width = 48
Height = 12
Caption = #23458#25143#21517#31216
end
object Label1: TLabel
Left = 22
Top = 13
Width = 48
Height = 12
Caption = #23458#25143#32534#21495
end
object Label2: TLabel
Left = 350
Top = 13
Width = 36
Height = 12
Caption = #19994#21153#21592
end
object ZdyName: TEdit
Tag = 2
Left = 238
Top = 9
Width = 89
Height = 20
TabOrder = 0
OnChange = ZdyNameChange
end
object ZdyCode: TEdit
Tag = 2
Left = 70
Top = 9
Width = 89
Height = 20
TabOrder = 1
OnChange = ZdyNameChange
end
object DEFstr5: TEdit
Tag = 2
Left = 388
Top = 9
Width = 89
Height = 20
TabOrder = 2
OnChange = ZdyNameChange
end
end
object cxGrid2: TcxGrid
Left = 0
Top = 70
Width = 1048
Height = 543
Align = alClient
TabOrder = 2
ExplicitHeight = 544
object Tv2: TcxGridDBTableView
Navigator.Buttons.CustomButtons = <>
Navigator.Buttons.Delete.Enabled = False
Navigator.Buttons.Delete.Visible = False
OnCellDblClick = Tv2CellDblClick
DataController.DataSource = DS_HZ
DataController.Summary.DefaultGroupSummaryItems = <>
DataController.Summary.FooterSummaryItems = <
item
Kind = skSum
end
item
Kind = skSum
end
item
Kind = skSum
end>
DataController.Summary.SummaryGroups = <>
OptionsBehavior.GoToNextCellOnEnter = True
OptionsCustomize.ColumnFiltering = False
OptionsData.Deleting = False
OptionsData.DeletingConfirmation = False
OptionsSelection.CellSelect = False
OptionsView.Footer = True
OptionsView.GroupByBox = False
Styles.IncSearch = DataLink_TradeManage.SHuangSe
Styles.Header = DataLink_TradeManage.handBlack
Styles.Inactive = DataLink_TradeManage.SHuangSe
Styles.Selection = DataLink_TradeManage.SHuangSe
object v2Column2: TcxGridDBColumn
Caption = #23458#25143#32534#21495
DataBinding.FieldName = 'ZdyCode'
PropertiesClassName = 'TcxTextEditProperties'
HeaderAlignmentHorz = taCenter
Width = 86
end
object v2Column6: TcxGridDBColumn
Caption = #23458#25143#21517#31216
DataBinding.FieldName = 'ZdyName'
PropertiesClassName = 'TcxButtonEditProperties'
Properties.Buttons = <
item
Default = True
Kind = bkEllipsis
end>
Properties.ReadOnly = True
HeaderAlignmentHorz = taCenter
Options.Focusing = False
Width = 127
end
object v2Column10: TcxGridDBColumn
Caption = #19994#21153#21592
DataBinding.FieldName = 'DEFstr5'
HeaderAlignmentHorz = taCenter
Width = 56
end
object v2Column3: TcxGridDBColumn
Caption = #30005#35805
DataBinding.FieldName = 'DEFstr1'
PropertiesClassName = 'TcxTextEditProperties'
HeaderAlignmentHorz = taCenter
Width = 71
end
object v2Column4: TcxGridDBColumn
Caption = #25163#26426
DataBinding.FieldName = 'DEFstr2'
PropertiesClassName = 'TcxTextEditProperties'
HeaderAlignmentHorz = taCenter
Width = 74
end
object v2Column5: TcxGridDBColumn
Caption = #20256#30495
DataBinding.FieldName = 'DEFstr3'
PropertiesClassName = 'TcxTextEditProperties'
HeaderAlignmentHorz = taCenter
Width = 68
end
object v2Column7: TcxGridDBColumn
Caption = #20844#21496#22320#22336
DataBinding.FieldName = 'DEFNote1'
PropertiesClassName = 'TcxTextEditProperties'
HeaderAlignmentHorz = taCenter
Width = 67
end
object v2Column8: TcxGridDBColumn
Caption = #21457#36135#22320#22336
DataBinding.FieldName = 'DEFNote2'
PropertiesClassName = 'TcxTextEditProperties'
HeaderAlignmentHorz = taCenter
Width = 72
end
object v2Column9: TcxGridDBColumn
Caption = #32852#31995#20154
DataBinding.FieldName = 'DEFstr4'
PropertiesClassName = 'TcxTextEditProperties'
HeaderAlignmentHorz = taCenter
Width = 73
end
object v2Column1: TcxGridDBColumn
Caption = #22791#27880
DataBinding.FieldName = 'Note'
PropertiesClassName = 'TcxTextEditProperties'
HeaderAlignmentHorz = taCenter
Width = 165
end
end
object cxGridLevel1: TcxGridLevel
GridView = Tv2
end
end
object ADOQueryTemp: TADOQuery
Connection = DataLink_TradeManage.ADOLink
LockType = ltReadOnly
Parameters = <>
Left = 789
Top = 9
end
object ADOQueryCmd: TADOQuery
Connection = DataLink_TradeManage.ADOLink
Parameters = <>
Left = 829
Top = 1
end
object ADOQueryMain: TADOQuery
Connection = DataLink_TradeManage.ADOLink
LockType = ltReadOnly
Parameters = <>
Left = 949
Top = 225
end
object RM1: TRMGridReport
ThreadPrepareReport = True
InitialZoom = pzDefault
PreviewButtons = [rmpbZoom, rmpbLoad, rmpbSave, rmpbPrint, rmpbFind, rmpbPageSetup, rmpbExit, rmpbExport, rmpbNavigator]
DefaultCollate = False
SaveReportOptions.RegistryPath = 'Software\ReportMachine\ReportSettings\'
PreviewOptions.RulerUnit = rmutScreenPixels
PreviewOptions.RulerVisible = False
PreviewOptions.DrawBorder = False
PreviewOptions.BorderPen.Color = clGray
PreviewOptions.BorderPen.Style = psDash
Dataset = RMDB_Main
CompressLevel = rmzcFastest
CompressThread = False
LaterBuildEvents = True
OnlyOwnerDataSet = False
Left = 864
Top = 224
ReportData = {}
end
object RMDB_Main: TRMDBDataSet
Visible = True
Left = 928
Top = 216
end
object cxGridPopupMenu2: TcxGridPopupMenu
Grid = cxGrid2
PopupMenus = <>
Left = 888
Top = 224
end
object DS_HZ: TDataSource
DataSet = CDS_HZ
Left = 899
Top = 235
end
object CDS_HZ: TClientDataSet
Aggregates = <>
Params = <>
Left = 872
Top = 224
end
end

View File

@ -0,0 +1,195 @@
unit U_ZdyAttachmentHelp;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB,
cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin,
StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls,
cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid,
cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common,
RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection,
IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar,
cxButtonEdit, cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore,
dxSkinsDefaultPainters, cxNavigator, dxDateRanges, dxBarBuiltInMenu;
type
TfrmZdyAttachmentHelp = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBDel: TToolButton;
TBClose: TToolButton;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
Panel1: TPanel;
ToolButton2: TToolButton;
ADOQueryMain: TADOQuery;
ToolButton1: TToolButton;
RM1: TRMGridReport;
RMDB_Main: TRMDBDataSet;
Label3: TLabel;
ZdyName: TEdit;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
cxGridLevel1: TcxGridLevel;
cxGridPopupMenu2: TcxGridPopupMenu;
DS_HZ: TDataSource;
CDS_HZ: TClientDataSet;
ToolButton3: TToolButton;
v2Column6: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v2Column2: TcxGridDBColumn;
v2Column3: TcxGridDBColumn;
v2Column4: TcxGridDBColumn;
v2Column5: TcxGridDBColumn;
v2Column7: TcxGridDBColumn;
v2Column8: TcxGridDBColumn;
v2Column9: TcxGridDBColumn;
Label1: TLabel;
ZdyCode: TEdit;
v2Column10: TcxGridDBColumn;
ToolButton4: TToolButton;
Label2: TLabel;
DEFstr5: TEdit;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBCloseClick(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure ZdyNameChange(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
procedure Tv2CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
private
{ Private declarations }
procedure InitGrid();
public
fkhType:string;
end;
var
frmZdyAttachmentHelp: TfrmZdyAttachmentHelp;
implementation
uses
U_DataLink,U_RTFun,U_ZDYHelp;
{$R *.dfm}
procedure TfrmZdyAttachmentHelp.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
SQL.Clear;
sql.Add(' select * from KH_Zdy_Attachment where Type=''KHName'' ');
sql.Add(' and isnull(khType,'''')='+quotedstr(trim(fkhType)));
Open;
end;
SCreateCDS(ADOQueryMain,CDS_HZ);
SInitCDSData(ADOQueryMain,CDS_HZ);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmZdyAttachmentHelp.FormDestroy(Sender: TObject);
begin
frmZdyAttachmentHelp:=nil;
end;
procedure TfrmZdyAttachmentHelp.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmZdyAttachmentHelp.TBCloseClick(Sender: TObject);
begin
WriteCxGrid('客户资料',Tv2,'客户自定义');
Close;
end;
procedure TfrmZdyAttachmentHelp.TBDelClick(Sender: TObject);
begin
{ if CDS_HZ.IsEmpty then Exit;
if Application.MessageBox('确定要删除数据吗?','提示',32+4)<>IDYES then Exit;
if Trim(CDS_HZ.fieldbyname('ATID').AsString)<>'' then
begin
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('delete KH_Zdy_Attachment where ATID='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+'''');
sql.Add('delete KH_Zdy where ZdyNo='''+Trim(CDS_HZ.fieldbyname('ATID').AsString)+'''');
ExecSQL;
end;
end;
CDS_HZ.Delete; }
end;
procedure TfrmZdyAttachmentHelp.FormShow(Sender: TObject);
begin
ReadCxGrid('客户资料',Tv2,'客户自定义');
InitGrid();
end;
procedure TfrmZdyAttachmentHelp.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmZdyAttachmentHelp.ToolButton2Click(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
SCreateCDS(ADOQueryMain,CDS_HZ);
SInitCDSData(ADOQueryMain,CDS_HZ);
end;
end;
procedure TfrmZdyAttachmentHelp.ZdyNameChange(Sender: TObject);
begin
ToolButton2.Click;
end;
procedure TfrmZdyAttachmentHelp.ToolButton4Click(Sender: TObject);
begin
{ try
frmZdyAttInput:=TfrmZdyAttInput.Create(Application);
with frmZdyAttInput do
begin
FCYID:=Trim(Self.CDS_HZ.fieldbyname('ATID').AsString);
if ShowModal=1 then
begin
end;
end;
finally
frmZdyAttInput.Free;
end; }
end;
procedure TfrmZdyAttachmentHelp.Tv2CellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
if CDS_HZ.IsEmpty then exit;
ModalResult:=1;
end;
end.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,108 @@
unit U_CompressionFun;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, ToolWin, ShlObj, cxShellCommon, cxControls,
cxContainer, cxShellTreeView, cxShellListView, StdCtrls, BtnEdit,
OleCtnrs, DB, ADODB,ZLib;
procedure CompressionStream(var ASrcStream:TMemoryStream;ACompressionLevel:Integer = 2);
procedure UnCompressionStream(var ASrcStream:TMemoryStream);
procedure GetFileInfo(mFile:string;var mfileSize:integer;var CreationTime:tdatetime;var WriteTime:tdatetime);
function CovFileDate(Fd:_FileTime):TDateTime;
implementation
procedure GetFileInfo(mFile:string;var mfileSize:integer;var CreationTime:tdatetime;var WriteTime:tdatetime);
var
vSearchRec: TSearchRec;
begin
FindFirst(mFile,faAnyFile,vSearchRec);
mfileSize:=vSearchRec.Size;
CreationTime:=CovFileDate(vSearchRec.FindData.ftCreationTime);//创建时间
//vSearchRec.FindData.ftLastAccessTime//访问时间
WriteTime:=CovFileDate(vSearchRec.FindData.ftLastWriteTime);//修改时间
FindClose(vSearchRec);
end;
function CovFileDate(Fd:_FileTime):TDateTime;
var
Tct:_SystemTime;
Temp:_FileTime;
begin
FileTimeToLocalFileTime(Fd,Temp);
FileTimeToSystemTime(Temp,Tct);
CovFileDate:=SystemTimeToDateTime(Tct);
end;
////////////////////////////////////////////////////
///////压缩流
////////////////////////////////////////////////////
procedure CompressionStream(var ASrcStream:TMemoryStream;ACompressionLevel:Integer = 2);
var
nDestStream:TMemoryStream;
nTmpStream:TCompressionStream;
nCompressionLevel:TCompressionLevel;
begin
ASrcStream.Position := 0;
nDestStream := TMemoryStream.Create;
try
//级别
case ACompressionLevel of
0:nCompressionLevel := clNone;
1:nCompressionLevel := clFastest;
2:nCompressionLevel := clDefault;
3:nCompressionLevel := clMax;
else
nCompressionLevel := clMax;
end;
//开始压缩
nTmpStream := TCompressionStream.Create(nCompressionLevel,nDestStream);
try
ASrcStream.SaveToStream(nTmpStream);
finally
nTmpStream.Free;//释放后nDestStream才会有数据
end;
ASrcStream.Clear;
ASrcStream.LoadFromStream(nDestStream);
ASrcStream.Position := 0;
finally
nDestStream.Clear;
nDestStream.Free;
end;
end;
////////////////////////////////////////////////////
///////解压缩流
////////////////////////////////////////////////////
procedure UnCompressionStream(var ASrcStream:TMemoryStream);
var
nTmpStream:TDecompressionStream;
nDestStream:TMemoryStream;
nBuf: array[1..512] of Byte;
nSrcCount: integer;
begin
ASrcStream.Position := 0;
nDestStream := TMemoryStream.Create;
nTmpStream := TDecompressionStream.Create(ASrcStream);
try
repeat
//读入实际大小
nSrcCount := nTmpStream.Read(nBuf, SizeOf(nBuf));
if nSrcCount > 0 then
nDestStream.Write(nBuf, nSrcCount);
until (nSrcCount = 0);
ASrcStream.Clear;
ASrcStream.LoadFromStream(nDestStream);
ASrcStream.Position := 0;
finally
nDestStream.Clear;
nDestStream.Free;
nTmpStream.Free;
end;
end;
end.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,38 @@
-$A8
-$B-
-$C+
-$D+
-$E-
-$F-
-$G+
-$H+
-$I+
-$J-
-$K-
-$L+
-$M-
-$N+
-$O+
-$P+
-$Q-
-$R-
-$S-
-$T-
-$U-
-$V+
-$W-
-$X+
-$YD
-$Z1
-cg
-AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
-H+
-W+
-M
-$M16384,1048576
-K$00400000
-LE"d:\program files (x86)\borland\delphi7\Projects\Bpl"
-LN"d:\program files (x86)\borland\delphi7\Projects\Bpl"
-w-UNSAFE_TYPE
-w-UNSAFE_CODE
-w-UNSAFE_CAST

View File

@ -0,0 +1,136 @@
[FileVersion]
Version=7.0
[Compiler]
A=8
B=0
C=1
D=1
E=0
F=0
G=1
H=1
I=1
J=0
K=0
L=1
M=0
N=1
O=1
P=1
Q=0
R=0
S=0
T=0
U=0
V=1
W=0
X=1
Y=1
Z=1
ShowHints=1
ShowWarnings=1
UnitAliases=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
NamespacePrefix=
SymbolDeprecated=1
SymbolLibrary=1
SymbolPlatform=1
UnitLibrary=1
UnitPlatform=1
UnitDeprecated=1
HResultCompat=1
HidingMember=1
HiddenVirtual=1
Garbage=1
BoundsError=1
ZeroNilCompat=1
StringConstTruncated=1
ForLoopVarVarPar=1
TypedConstVarPar=1
AsgToTypedConst=1
CaseLabelRange=1
ForVariable=1
ConstructingAbstract=1
ComparisonFalse=1
ComparisonTrue=1
ComparingSignedUnsigned=1
CombiningSignedUnsigned=1
UnsupportedConstruct=1
FileOpen=1
FileOpenUnitSrc=1
BadGlobalSymbol=1
DuplicateConstructorDestructor=1
InvalidDirective=1
PackageNoLink=1
PackageThreadVar=1
ImplicitImport=1
HPPEMITIgnored=1
NoRetVal=1
UseBeforeDef=1
ForLoopVarUndef=1
UnitNameMismatch=1
NoCFGFileFound=1
MessageDirective=1
ImplicitVariants=1
UnicodeToLocale=1
LocaleToUnicode=1
ImagebaseMultiple=1
SuspiciousTypecast=1
PrivatePropAccessor=1
UnsafeType=0
UnsafeCode=0
UnsafeCast=0
[Linker]
MapFile=0
OutputObjs=0
ConsoleApp=1
DebugInfo=0
RemoteSymbols=0
MinStackSize=16384
MaxStackSize=1048576
ImageBase=4194304
ExeDescription=
[Directories]
OutputDir=
UnitOutputDir=
PackageDLLOutputDir=
PackageDCPOutputDir=
SearchPath=
Packages=
Conditionals=
DebugSourceDirs=
UsePackages=0
[Parameters]
RunParams=
HostApplication=
Launcher=
UseLauncher=0
DebugCWD=
[Language]
ActiveLang=
ProjectLang=
RootDir=
[Version Info]
IncludeVerInfo=0
AutoIncBuild=0
MajorVer=1
MinorVer=0
Release=0
Build=0
Debug=0
PreRelease=0
Special=0
Private=0
DLL=0
Locale=2052
CodePage=936
[Version Info Keys]
CompanyName=
FileDescription=
FileVersion=1.0.0.0
InternalName=
LegalCopyright=
LegalTrademarks=
OriginalFilename=
ProductName=
ProductVersion=1.0.0.0
Comments=

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,124 @@
unit U_PublicFunction;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, ToolWin, StdCtrls, BtnEdit, cxStyles, cxCustomData,
cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit,DBGrids, DB, cxDBData,
cxGridLevel, cxClasses, cxControls, cxGridCustomView, ADODB,StrUtils,
Midas,cxGridCustomTableView, cxGridTableView, cxGridDBTableView,cxTimeEdit,
cxGrid,cxDBLookupComboBox,cxCalendar, cxCurrencyEdit,cxGridExportLink,
ExtCtrls, Buttons,DBClient,RTComboBox,cxDropDownEdit,CXmemo;
function GetMaxBh(ADOQueryTmp:TADOQuery;
var mMaxBh:string;
mBhType:string;
mFlag:string;
mStatus:string;
lsLen:integer=3):Boolean;
procedure CreateAdoToCds(Ado1:TADOQuery; Cds1:TclientDataSet );
procedure InitAdoToCds(Ado1:TADOQuery;Cds1:TclientDataSet);
implementation
function GetMaxBh(ADOQueryTmp:TADOQuery;
var mMaxBh:string;
mBhType:string;
mFlag:string;
mStatus:string;
lsLen:integer=3):Boolean;
begin
try
with ADOQueryTmp do
begin
Close;
sql.Clear ;
sql.Add(' exec Get_SY_MaxBH ');
sql.Add(' @BHstr='+quotedstr(mFlag));
sql.Add(',@BHType='+quotedStr(mBhType));
sql.Add(',@Len='+inttostr(LsLen));
sql.Add(',@status='+quotedStr(mStatus));
Open;
if RecordCount>0 then
begin
mMaxBh:=trim(fieldByName('MaxBH').AsString) ;
if mMaxBh<>'' then
result:=true
else
Result:=false;
end
else
begin
result:=false;
end;
end;
if not Result then
application.MessageBox(Pchar('无法生成自动编号('+mflag+')'),'提示信息',MB_ICONINFORMATION);
Except
result:=false;
application.MessageBox(Pchar('无法生成自动编号('+mflag+')'),'提示信息',MB_ICONINFORMATION);
end;
end;
procedure CreateAdoToCds(Ado1:TADOQuery; Cds1:TclientDataSet );
var
i:integer;
mfieldName:string;
mSize:integer;
begin
mfieldName:='';
Cds1.FieldDefs.Clear;
with Ado1 do
begin
for i:=0 to fieldCount-1 do //
begin
if (Fields[i].DataType=ftString) and (Fields[i].Size=0) then
begin
msize:=1;
end
else
msize:=Fields[i].Size;
mfieldName:=trim(fields[i].FieldName);
Cds1.FieldDefs.Add(mfieldName,Fields[i].DataType,msize);
end;
end;
Cds1.FieldDefs.Add('flag',ftString,1);
Cds1.FieldDefs.Add('index',ftInteger,0);
Cds1.Close;
Cds1.CreateDataSet;
end;
procedure InitAdoToCds(Ado1:TADOQuery;Cds1:TclientDataSet);
var
i:integer;
k:integer;
begin
Ado1.DisableControls;
Cds1.DisableControls;
Ado1.first;
K:=1;
while not Ado1.Eof do
begin
with Cds1 do
begin
Append;
for i:=0 to Ado1.FieldCount-1 do
begin
fields[i].value:=Ado1.Fields[i].Value ;
end;
fieldByName('flag').AsString :='1';
fieldByName('index').value :=k;
inc(k);
Post;
end;
Ado1.Next;
end;
if not Cds1.IsEmpty then
begin
Cds1.First ;
end;
Ado1.EnableControls;
Cds1.EnableControls;
end;
end.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,104 @@
object frmSelExportField: TfrmSelExportField
Left = 206
Top = 131
BorderStyle = bsDialog
Caption = #23383#27573#23548#20986#36873#25321
ClientHeight = 491
ClientWidth = 423
Color = clBtnFace
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -12
Font.Name = #23435#20307
Font.Style = []
OldCreateOrder = False
Position = poScreenCenter
OnClose = FormClose
OnDestroy = FormDestroy
OnShow = FormShow
PixelsPerInch = 96
TextHeight = 12
object Button1: TButton
Left = 94
Top = 456
Width = 75
Height = 25
Caption = #30830#23450
TabOrder = 0
OnClick = Button1Click
end
object Button2: TButton
Left = 243
Top = 456
Width = 75
Height = 25
Caption = #20851#38381
TabOrder = 1
OnClick = Button2Click
end
object cxGrid1: TcxGrid
Left = 329
Top = 151
Width = 200
Height = 162
TabOrder = 2
Visible = False
object ExpGrid: TcxGridDBTableView
Navigator.Buttons.CustomButtons = <>
DataController.DataSource = ExportDataSource
DataController.Summary.DefaultGroupSummaryItems = <>
DataController.Summary.FooterSummaryItems = <>
DataController.Summary.SummaryGroups = <>
OptionsBehavior.AlwaysShowEditor = True
OptionsView.GroupByBox = False
end
object cxGrid1Level1: TcxGridLevel
GridView = ExpGrid
end
end
object Panel2: TScrollBox
Left = 2
Top = 0
Width = 423
Height = 438
HorzScrollBar.Visible = False
Color = clSkyBlue
ParentColor = False
TabOrder = 3
object Label4: TLabel
Left = 158
Top = 9
Width = 60
Height = 14
Caption = #23383#27573#36873#25321
Font.Charset = GB2312_CHARSET
Font.Color = clRed
Font.Height = -14
Font.Name = #23435#20307
Font.Style = [fsBold]
ParentFont = False
end
end
object CheckBox1: TCheckBox
Left = 20
Top = 449
Width = 49
Height = 17
Caption = #20840#36873
TabOrder = 4
OnClick = CheckBox1Click
end
object CheckBox2: TCheckBox
Left = 20
Top = 465
Width = 49
Height = 17
Caption = #20840#24323
TabOrder = 5
OnClick = CheckBox2Click
end
object ExportDataSource: TDataSource
Left = 424
Top = 233
end
end

View File

@ -0,0 +1,278 @@
unit U_SelExportField;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, Grids, DBGrids, RM_FormReport, RM_PDBGrid,
DB,IniFiles, RM_Common, RM_Class, RM_e_Xls, cxStyles, cxCustomData,
cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData,
cxGridLevel, cxClasses, cxControls, cxGridCustomView,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGrid,
cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore, dxSkinsDefaultPainters,
cxNavigator, dxDateRanges;
type
TfrmSelExportField = class(TForm)
Button1: TButton;
Button2: TButton;
ExportDataSource: TDataSource;
ExpGrid: TcxGridDBTableView;
cxGrid1Level1: TcxGridLevel;
cxGrid1: TcxGrid;
Panel2: TScrollBox;
Label4: TLabel;
CheckBox1: TCheckBox;
CheckBox2: TCheckBox;
procedure Button1Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormDestroy(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
procedure CheckBox2Click(Sender: TObject);
private
procedure CreateCheckBox();
procedure ExportData();
procedure ReadINIFile(fieldname:string);
procedure WriteINIFile(fieldname:string);
Function IsINIFile(fieldname:string):Boolean;
procedure GetExportFields();
procedure IsCheck();
{ Private declarations }
public
ExportFields,IniName:string;
{ Public declarations }
end;
var
frmSelExportField: TfrmSelExportField;
implementation
uses U_Fun;
{$R *.dfm}
procedure TfrmSelExportField.CreateCheckBox();
var
i,j,FTop,FLeft,Fdiv,FMod,z:Integer;// mod 余数div商
FCheckBox:TCheckBox;
begin
z:=0;
for i:=0 to ExpGrid.ColumnCount-1 do
begin
if ExpGrid.Columns[i].Visible=True then
begin
Fdiv:=(z+1) div 3;
FMod:=(z+1) mod 3;
FCheckBox:=TCheckBox.Create(Self);
FCheckBox.Caption:=Trim(ExpGrid.Columns[i].Caption);
FCheckBox.Tag:=i;
FCheckBox.Parent:=Panel2;
FCheckBox.Checked:=True;
if FMod>0 then
FCheckBox.Top:=36*(Fdiv+1)
else
FCheckBox.Top:=36*Fdiv;
if FMod=1 then
FCheckBox.Left:=29
else if FMod=2 then
FCheckBox.Left:=163
else if FMod=0 then
FCheckBox.Left:=305;
z:=z+1;
end;
end;
end;
procedure TfrmSelExportField.Button1Click(Sender: TObject);
begin
//ShowMessage('10除以3取余'+inttostr(10 mod 3)+',取整'+inttostr(10 div 3));
ExportData();
GetExportFields();
if IsINIFile(IniName)=True then
begin
DeleteFile(IniName);
end;
WriteINIFile(IniName);
end;
procedure TfrmSelExportField.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmSelExportField.FormDestroy(Sender: TObject);
begin
frmSelExportField:=nil;
end;
procedure TfrmSelExportField.FormShow(Sender: TObject);
begin
CreateCheckBox();
ReadINIFile(IniName);
IsCheck();
end;
procedure TfrmSelExportField.IsCheck();
var
i:Integer;
fsj:string;
begin
with Panel2 do
begin
for i:=0 to Panel2.ControlCount-1 do
begin
if Controls[i] is TCheckBox then
begin
fsj:=Trim(TCheckBox(Controls[i]).Caption);
if Pos(fsj,ExportFields)>0 then
TCheckBox(Controls[i]).Checked:=True
else
TCheckBox(Controls[i]).Checked:=False;
end;
end;
end;
end;
procedure TfrmSelExportField.ExportData();
var
i,j:Integer;
begin
j:=0;
with Panel2 do
begin
for i:=0 to Panel2.ControlCount-1 do
begin
if Controls[i] is TCheckBox then
begin
if TCheckBox(Controls[i]).Checked=True then
begin
j:=1;
ExpGrid.Columns[TCheckBox(Controls[i]).Tag].Visible:=True
end else
begin
ExpGrid.Columns[TCheckBox(Controls[i]).Tag].Visible:=False;
end;
end;
end;
end;
TcxGridToExcel(Trim(IniName),cxGrid1);
end;
procedure TfrmSelExportField.Button2Click(Sender: TObject);
begin
Close;
end;
procedure TfrmSelExportField.ReadINIFile(fieldname:string);
var
programIni:Tinifile; //配置文件名
FName:string;
begin
FName:=ExtractFilePath(Application.ExeName)+'FieldExportSet\' +trim(fieldname)+'.INI';
programIni:=Tinifile.create(FName);
ExportFields:=programIni.ReadString('导出设置','导出字段','');
programIni.Free;
end;
procedure TfrmSelExportField.GetExportFields();
var
i:Integer;
begin
ExportFields:='Begin';
with Panel2 do
begin
for i:=0 to Panel2.ControlCount-1 do
begin
if Controls[i] is TCheckBox then
begin
if TCheckBox(Controls[i]).Checked then
begin
ExportFields:=ExportFields+'/'+TCheckBox(Controls[i]).Caption;
end;
end;
end;
end;
end;
//////////////////////////////////////////////////////////////////
//写设置信息到INI文件
//参数
//////////////////////////////////////////////////////////////////
procedure TfrmSelExportField.WriteINIFile(fieldname:string);
var
programIni:Tinifile; //配置文件名
FName:string;
begin
FName:=ExtractFilePath(Application.ExeName)+'FieldExportSet\'+trim(fieldname)+'.INI';
if not DirectoryExists(ExtractFileDir(FName)) then
CreateDir(ExtractFileDir(FName));
programIni:=Tinifile.create(FName);
programIni.WriteString('导出设置','导出字段',ExportFields);
programIni.Free;
end;
//////////////////////////////////////////////////////////////////
//判断InI文件是否存在
//////////////////////////////////////////////////////////////////
Function TfrmSelExportField.IsINIFile(fieldname:string):Boolean;
var
FName:string;
begin
FName:=ExtractFilePath(Application.ExeName)+'FieldExportSet\'+trim(fieldname)+'.INI';
if FileExists(FName) then
Result:=True
else
Result:=false;
end;
procedure TfrmSelExportField.CheckBox1Click(Sender: TObject);
var
i:Integer;
begin
if CheckBox1.Checked then
begin
CheckBox2.Checked:=False;
with Panel2 do
begin
for i:=0 to Panel2.ControlCount-1 do
begin
if Controls[i] is TCheckBox then
begin
if (TCheckBox(Controls[i]).Name<>'CheckBox1') and (TCheckBox(Controls[i]).Name<>'CheckBox2') then
begin
TCheckBox(Controls[i]).Checked:=True;
end;
end;
end;
end;
end;
end;
procedure TfrmSelExportField.CheckBox2Click(Sender: TObject);
var
i:Integer;
begin
if CheckBox2.Checked then
begin
CheckBox1.Checked:=False;
with Panel2 do
begin
for i:=0 to Panel2.ControlCount-1 do
begin
if Controls[i] is TCheckBox then
begin
if (TCheckBox(Controls[i]).Name<>'CheckBox1') and (TCheckBox(Controls[i]).Name<>'CheckBox2') then
begin
TCheckBox(Controls[i]).Checked:=False;
end;
end;
end;
end;
end;
end;
end.

View File

@ -0,0 +1,30 @@
unit U_getDogServer;
interface
uses
SysUtils,Windows,IniFiles,StrUtils;
function GetLink(H: THandle;var ADOConnString:PAnsiChar):Integer;stdcall; external 'PUBLICDLL.DLL';
function GetLinkDog(H: THandle;var ADOConnString:string):Integer;
implementation
function GetLinkDog(H: THandle;var ADOConnString:string):Integer;
var
str1:string;
Pstr1: PChar;
begin
try
SetLength(str1,255);
pstr1:=pchar(str1);
result:= GetLink(H,pstr1);
ADOConnString:=trim(pstr1);
finally
SetLength(str1,0);
end;
end;
end.

View File

@ -0,0 +1,13 @@
unit U_printPdf;
interface
uses
Windows,forms;
// formId =1 功能id
//mRecid='文件表记录号'
//printNumber=1 打印份数
//printFlag=1 '打印预览;0立即打印
//DataBaseStr
function printPdf(App:Tapplication; FormID:integer;Title:PChar; GCode: PChar; GName: PChar;mRecid:PChar;printNumber:Integer;printFlag:Integer;printer:integer;DataBaseStr:PChar):hwnd;stdcall;external 'pdfPrint.dll' Name 'GetDllForm' ;
implementation
end.

View File

@ -0,0 +1,23 @@
program Project1;
uses
Vcl.Forms,
U_BaseInput in 'U_BaseInput.pas' {frmBaseInput},
Unit1 in 'E:\test\xx\Unit1.pas' {frmBaseInput1},
U_WindowFormdesign in 'U_WindowFormdesign.pas',
U_cxGridCustomCss in 'U_cxGridCustomCss.pas',
U_globalVar in 'U_globalVar.pas',
U_DataLink in 'E:\test\xx\U_DataLink.pas' {DataLink_Company: TDataModule},
U_Fun10 in '..\..\public2\ThreeFun\Fun\U_Fun10.pas',
U_Fun in '..\..\public2\ThreeFun\Fun\U_Fun.pas';
{$R *.res}
begin
Application.Initialize;
Application.MainFormOnTaskbar := True;
Application.CreateForm(TfrmBaseInput, frmBaseInput);
Application.CreateForm(TfrmBaseInput1, frmBaseInput1);
Application.CreateForm(TDataLink_Company, DataLink_Company);
Application.Run;
end.

View File

@ -0,0 +1,928 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{4A13C1D8-92BC-4103-8B79-6191678CC58B}</ProjectGuid>
<ProjectVersion>19.2</ProjectVersion>
<FrameworkType>VCL</FrameworkType>
<Base>True</Base>
<Config Condition="'$(Config)'==''">Debug</Config>
<Platform Condition="'$(Platform)'==''">Win32</Platform>
<TargetedPlatforms>1</TargetedPlatforms>
<AppType>Application</AppType>
<MainSource>Project1.dpr</MainSource>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Base)'=='true') or '$(Base_Win32)'!=''">
<Base_Win32>true</Base_Win32>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Base)'=='true') or '$(Base_Win64)'!=''">
<Base_Win64>true</Base_Win64>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Debug' or '$(Cfg_1)'!=''">
<Cfg_1>true</Cfg_1>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_1)'=='true') or '$(Cfg_1_Win32)'!=''">
<Cfg_1_Win32>true</Cfg_1_Win32>
<CfgParent>Cfg_1</CfgParent>
<Cfg_1>true</Cfg_1>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Release' or '$(Cfg_2)'!=''">
<Cfg_2>true</Cfg_2>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_2)'=='true') or '$(Cfg_2_Win32)'!=''">
<Cfg_2_Win32>true</Cfg_2_Win32>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Base)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_ExeOutput>.\$(Platform)\$(Config)</DCC_ExeOutput>
<DCC_E>false</DCC_E>
<DCC_N>false</DCC_N>
<DCC_S>false</DCC_S>
<DCC_F>false</DCC_F>
<DCC_K>false</DCC_K>
<DCC_Namespace>System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)</DCC_Namespace>
<Icon_MainIcon>$(BDS)\bin\delphi_PROJECTICON.ico</Icon_MainIcon>
<UWP_DelphiLogo44>$(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png</UWP_DelphiLogo44>
<UWP_DelphiLogo150>$(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png</UWP_DelphiLogo150>
<SanitizedProjectName>Project1</SanitizedProjectName>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_Win32)'!=''">
<DCC_UsePackage>DBXSqliteDriver;RESTComponents;DataSnapServerMidas;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;bindcompvclsmp;emsclientfiredac;DataSnapFireDAC;tethering;svnui;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;svn;DBXOracleDriver;inetdb;SysCoreEditor;RaizeComponentsVcl;FmxTeeUI;emsedge;RaizeComponentsVclDb;FireDACIBDriver;fmx;fmxdae;vcledge;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;DataSnapConnectors;FlatVcls;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;CloudService;FireDACOracleDriver;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;vcl;DBXSybaseASEDriver;IndyIPServer;IndySystem;FireDACDb2Driver;bindcompvclwinx;dsnapcon;FireDACMSAccDriver;FireDACInfxDriver;fmxFireDAC;vclimg;SysCorePrint;TeeDB;FireDAC;SysCoreEx;SysCore;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;SysCoreOther;DataSnapServer;xmlrtl;DataSnapNativeClient;ibxbindings;fmxobj;vclwinx;FireDACDSDriver;rtl;emsserverresource;DbxClientDriver;soapmidas;DBXSybaseASADriver;RTComboBoxPac;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;dclusr;TeeUI;FlatStyle;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;DataSnapProviderClient;dsnapxml;dbrtl;FireDACMongoDBDriver;IndyProtocols;inetdbxpress;btneditpac;fmxase;$(DCC_UsePackage)</DCC_UsePackage>
<DCC_Namespace>Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace>
<BT_BuildType>Debug</BT_BuildType>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Keys>CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
<VerInfo_Locale>1033</VerInfo_Locale>
<Manifest_File>$(BDS)\bin\default_app.manifest</Manifest_File>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_Win64)'!=''">
<DCC_UsePackage>DBXSqliteDriver;RESTComponents;DataSnapServerMidas;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;bindcompvclsmp;emsclientfiredac;DataSnapFireDAC;tethering;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;DBXOracleDriver;inetdb;FmxTeeUI;emsedge;FireDACIBDriver;fmx;fmxdae;vcledge;vclib;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;CloudService;FireDACOracleDriver;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;IndyIPCommon;vcl;DBXSybaseASEDriver;IndyIPServer;IndySystem;FireDACDb2Driver;bindcompvclwinx;dsnapcon;FireDACMSAccDriver;FireDACInfxDriver;fmxFireDAC;vclimg;TeeDB;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;DataSnapNativeClient;ibxbindings;fmxobj;vclwinx;FireDACDSDriver;rtl;emsserverresource;DbxClientDriver;soapmidas;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;DataSnapProviderClient;dsnapxml;dbrtl;FireDACMongoDBDriver;IndyProtocols;inetdbxpress;fmxase;$(DCC_UsePackage)</DCC_UsePackage>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1)'!=''">
<DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
<DCC_DebugDCUs>true</DCC_DebugDCUs>
<DCC_Optimize>false</DCC_Optimize>
<DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
<DCC_DebugInfoInExe>true</DCC_DebugInfoInExe>
<DCC_RemoteDebug>true</DCC_RemoteDebug>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
<DCC_RemoteDebug>false</DCC_RemoteDebug>
<AppEnableRuntimeThemes>true</AppEnableRuntimeThemes>
<AppDPIAwarenessMode>PerMonitorV2</AppDPIAwarenessMode>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2)'!=''">
<DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
<DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
<DCC_DebugInformation>0</DCC_DebugInformation>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
<AppEnableRuntimeThemes>true</AppEnableRuntimeThemes>
<AppDPIAwarenessMode>PerMonitorV2</AppDPIAwarenessMode>
</PropertyGroup>
<ItemGroup>
<DelphiCompile Include="$(MainSource)">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="U_BaseInput.pas">
<Form>frmBaseInput</Form>
<FormType>dfm</FormType>
</DCCReference>
<DCCReference Include="E:\test\xx\Unit1.pas">
<Form>frmBaseInput1</Form>
<FormType>dfm</FormType>
</DCCReference>
<DCCReference Include="U_WindowFormdesign.pas"/>
<DCCReference Include="U_cxGridCustomCss.pas"/>
<DCCReference Include="U_globalVar.pas"/>
<DCCReference Include="E:\test\xx\U_DataLink.pas">
<Form>DataLink_Company</Form>
<FormType>dfm</FormType>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="..\..\public2\ThreeFun\Fun\U_Fun10.pas"/>
<DCCReference Include="..\..\public2\ThreeFun\Fun\U_Fun.pas"/>
<BuildConfiguration Include="Release">
<Key>Cfg_2</Key>
<CfgParent>Base</CfgParent>
</BuildConfiguration>
<BuildConfiguration Include="Base">
<Key>Base</Key>
</BuildConfiguration>
<BuildConfiguration Include="Debug">
<Key>Cfg_1</Key>
<CfgParent>Base</CfgParent>
</BuildConfiguration>
</ItemGroup>
<ProjectExtensions>
<Borland.Personality>Delphi.Personality.12</Borland.Personality>
<Borland.ProjectType>Application</Borland.ProjectType>
<BorlandProject>
<Delphi.Personality>
<Source>
<Source Name="MainSource">Project1.dpr</Source>
</Source>
</Delphi.Personality>
<Deployment Version="3">
<DeployFile LocalName="Win32\Debug\Project1.exe" Configuration="Debug" Class="ProjectOutput">
<Platform Name="Win32">
<RemoteName>Project1.exe</RemoteName>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployClass Name="AdditionalDebugSymbols">
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
<Platform Name="OSX32">
<RemoteDir>Contents\MacOS</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidClassesDexFile">
<Platform Name="Android">
<RemoteDir>classes</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>classes</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidFileProvider">
<Platform Name="Android">
<RemoteDir>res\xml</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\xml</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidGDBServer">
<Platform Name="Android">
<RemoteDir>library\lib\armeabi-v7a</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidLibnativeArmeabiFile">
<Platform Name="Android">
<RemoteDir>library\lib\armeabi</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>library\lib\armeabi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidLibnativeArmeabiv7aFile">
<Platform Name="Android64">
<RemoteDir>library\lib\armeabi-v7a</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidLibnativeMipsFile">
<Platform Name="Android">
<RemoteDir>library\lib\mips</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>library\lib\mips</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidServiceOutput">
<Platform Name="Android">
<RemoteDir>library\lib\armeabi-v7a</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>library\lib\arm64-v8a</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidServiceOutput_Android32">
<Platform Name="Android64">
<RemoteDir>library\lib\armeabi-v7a</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidSplashImageDef">
<Platform Name="Android">
<RemoteDir>res\drawable</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidSplashStyles">
<Platform Name="Android">
<RemoteDir>res\values</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\values</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidSplashStylesV21">
<Platform Name="Android">
<RemoteDir>res\values-v21</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\values-v21</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_Colors">
<Platform Name="Android">
<RemoteDir>res\values</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\values</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_DefaultAppIcon">
<Platform Name="Android">
<RemoteDir>res\drawable</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon144">
<Platform Name="Android">
<RemoteDir>res\drawable-xxhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-xxhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon192">
<Platform Name="Android">
<RemoteDir>res\drawable-xxxhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-xxxhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon36">
<Platform Name="Android">
<RemoteDir>res\drawable-ldpi</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-ldpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon48">
<Platform Name="Android">
<RemoteDir>res\drawable-mdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-mdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon72">
<Platform Name="Android">
<RemoteDir>res\drawable-hdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-hdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon96">
<Platform Name="Android">
<RemoteDir>res\drawable-xhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-xhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_NotificationIcon24">
<Platform Name="Android">
<RemoteDir>res\drawable-mdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-mdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_NotificationIcon36">
<Platform Name="Android">
<RemoteDir>res\drawable-hdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-hdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_NotificationIcon48">
<Platform Name="Android">
<RemoteDir>res\drawable-xhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-xhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_NotificationIcon72">
<Platform Name="Android">
<RemoteDir>res\drawable-xxhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-xxhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_NotificationIcon96">
<Platform Name="Android">
<RemoteDir>res\drawable-xxxhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-xxxhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_SplashImage426">
<Platform Name="Android">
<RemoteDir>res\drawable-small</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-small</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_SplashImage470">
<Platform Name="Android">
<RemoteDir>res\drawable-normal</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-normal</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_SplashImage640">
<Platform Name="Android">
<RemoteDir>res\drawable-large</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-large</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_SplashImage960">
<Platform Name="Android">
<RemoteDir>res\drawable-xlarge</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-xlarge</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_Strings">
<Platform Name="Android">
<RemoteDir>res\values</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\values</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="DebugSymbols">
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
<Platform Name="OSX32">
<RemoteDir>Contents\MacOS</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
</Platform>
</DeployClass>
<DeployClass Name="DependencyFramework">
<Platform Name="OSX32">
<RemoteDir>Contents\MacOS</RemoteDir>
<Operation>1</Operation>
<Extensions>.framework</Extensions>
</Platform>
<Platform Name="OSX64">
<RemoteDir>Contents\MacOS</RemoteDir>
<Operation>1</Operation>
<Extensions>.framework</Extensions>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
</Platform>
</DeployClass>
<DeployClass Name="DependencyModule">
<Platform Name="iOSDevice32">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="iOSDevice64">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="OSX32">
<RemoteDir>Contents\MacOS</RemoteDir>
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="OSX64">
<RemoteDir>Contents\MacOS</RemoteDir>
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
<Extensions>.dll;.bpl</Extensions>
</Platform>
</DeployClass>
<DeployClass Required="true" Name="DependencyPackage">
<Platform Name="iOSDevice32">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="iOSDevice64">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="OSX32">
<RemoteDir>Contents\MacOS</RemoteDir>
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="OSX64">
<RemoteDir>Contents\MacOS</RemoteDir>
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
<Extensions>.bpl</Extensions>
</Platform>
</DeployClass>
<DeployClass Name="File">
<Platform Name="Android">
<Operation>0</Operation>
</Platform>
<Platform Name="Android64">
<Operation>0</Operation>
</Platform>
<Platform Name="iOSDevice32">
<Operation>0</Operation>
</Platform>
<Platform Name="iOSDevice64">
<Operation>0</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>0</Operation>
</Platform>
<Platform Name="OSX32">
<RemoteDir>Contents\Resources\StartUp\</RemoteDir>
<Operation>0</Operation>
</Platform>
<Platform Name="OSX64">
<RemoteDir>Contents\Resources\StartUp\</RemoteDir>
<Operation>0</Operation>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iOS_AppStore1024">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPad_AppIcon152">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPad_AppIcon167">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPad_Launch2x">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPad_LaunchDark2x">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPad_Notification40">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPad_Setting58">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPad_SpotLight80">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_AppIcon120">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_AppIcon180">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_Launch2x">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_Launch3x">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_LaunchDark2x">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_LaunchDark3x">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_Notification40">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_Notification60">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_Setting58">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_Setting87">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_Spotlight120">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_Spotlight80">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectAndroidManifest">
<Platform Name="Android">
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSDeviceDebug">
<Platform Name="iOSDevice32">
<RemoteDir>..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSEntitlements">
<Platform Name="iOSDevice32">
<RemoteDir>..\</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSDevice64">
<RemoteDir>..\</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSInfoPList">
<Platform Name="iOSDevice32">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSDevice64">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSLaunchScreen">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen</RemoteDir>
<Operation>64</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen</RemoteDir>
<Operation>64</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSResource">
<Platform Name="iOSDevice32">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSDevice64">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectOSXDebug">
<Platform Name="OSX64">
<RemoteDir>..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectOSXEntitlements">
<Platform Name="OSX32">
<RemoteDir>..\</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="OSX64">
<RemoteDir>..\</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectOSXInfoPList">
<Platform Name="OSX32">
<RemoteDir>Contents</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="OSX64">
<RemoteDir>Contents</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectOSXResource">
<Platform Name="OSX32">
<RemoteDir>Contents\Resources</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="OSX64">
<RemoteDir>Contents\Resources</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Required="true" Name="ProjectOutput">
<Platform Name="Android">
<RemoteDir>library\lib\armeabi-v7a</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>library\lib\arm64-v8a</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSDevice32">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSDevice64">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
<Platform Name="Linux64">
<Operation>1</Operation>
</Platform>
<Platform Name="OSX32">
<RemoteDir>Contents\MacOS</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="OSX64">
<RemoteDir>Contents\MacOS</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectOutput_Android32">
<Platform Name="Android64">
<RemoteDir>library\lib\armeabi-v7a</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectUWPManifest">
<Platform Name="Win32">
<Operation>1</Operation>
</Platform>
<Platform Name="Win64">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="UWP_DelphiLogo150">
<Platform Name="Win32">
<RemoteDir>Assets</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Win64">
<RemoteDir>Assets</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="UWP_DelphiLogo44">
<Platform Name="Win32">
<RemoteDir>Assets</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Win64">
<RemoteDir>Assets</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<ProjectRoot Platform="iOSDevice64" Name="$(PROJECTNAME).app"/>
<ProjectRoot Platform="Win64" Name="$(PROJECTNAME)"/>
<ProjectRoot Platform="iOSDevice32" Name="$(PROJECTNAME).app"/>
<ProjectRoot Platform="Linux64" Name="$(PROJECTNAME)"/>
<ProjectRoot Platform="Win32" Name="$(PROJECTNAME)"/>
<ProjectRoot Platform="OSX32" Name="$(PROJECTNAME).app"/>
<ProjectRoot Platform="Android" Name="$(PROJECTNAME)"/>
<ProjectRoot Platform="OSX64" Name="$(PROJECTNAME).app"/>
<ProjectRoot Platform="iOSSimulator" Name="$(PROJECTNAME).app"/>
<ProjectRoot Platform="Android64" Name="$(PROJECTNAME)"/>
</Deployment>
<Platforms>
<Platform value="Win32">True</Platform>
<Platform value="Win64">False</Platform>
</Platforms>
</BorlandProject>
<ProjectFileVersion>12</ProjectFileVersion>
</ProjectExtensions>
<Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/>
<Import Project="$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj" Condition="Exists('$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj')"/>
<Import Project="$(MSBuildProjectName).deployproj" Condition="Exists('$(MSBuildProjectName).deployproj')"/>
</Project>

View File

@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<BorlandProject>
<Transactions>
<Transaction>2022/01/09 15:41:36.000.064,=C:\Users\Administrator\Documents\Embarcadero\Studio\Projects\Unit1.pas</Transaction>
<Transaction>2022/01/23 22:36:34.000.136,=C:\Users\Administrator\Documents\Embarcadero\Studio\Projects\Unit1.pas</Transaction>
<Transaction>2022/02/05 18:45:29.000.246,=C:\Users\Administrator\Documents\Embarcadero\Studio\Projects\Unit1.pas</Transaction>
<Transaction>2022/03/06 20:31:55.166,=C:\Users\Administrator\Documents\Embarcadero\Studio\Projects\Unit1.pas</Transaction>
<Transaction>2022/03/06 20:32:25.200,=E:\官工\public\design\U_BaseInput.pas</Transaction>
<Transaction>2022/03/06 20:32:46.919,=C:\Users\Administrator\Documents\Embarcadero\Studio\Projects\Unit1.pas</Transaction>
<Transaction>2022/03/06 20:34:12.006,=E:\官工\public\design\U_WindowFormdesign.pas</Transaction>
<Transaction>2022/03/06 20:34:38.658,=E:\官工\public\design\U_cxGridCustomCss.pas</Transaction>
<Transaction>2022/03/06 20:35:26.997,=E:\官工\public\design\U_globalVar.pas</Transaction>
<Transaction>2022/03/06 20:36:17.355,E:\test\xx\Unit1.pas=C:\Users\Administrator\Documents\Embarcadero\Studio\Projects\Unit1.pas</Transaction>
<Transaction>2022/03/06 20:36:17.355,E:\test\xx\Unit1.dfm=C:\Users\Administrator\Documents\Embarcadero\Studio\Projects\Unit1.dfm</Transaction>
<Transaction>2022/03/06 20:36:18.664,E:\官工\public\design\Project1.dproj=C:\Users\Administrator\Documents\Embarcadero\Studio\Projects\Project1.dproj</Transaction>
<Transaction>2022/03/06 20:37:43.826,=E:\test\xx\U_DataLink.pas</Transaction>
<Transaction>2022/03/06 20:38:17.714,=E:\官工\public2\ThreeFun\Fun\U_Fun10.pas</Transaction>
<Transaction>2022/03/06 20:38:44.273,=E:\官工\public2\ThreeFun\Fun\U_Fun.pas</Transaction>
</Transactions>
</BorlandProject>

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,91 @@
unit U_BaseDataLink;
interface
uses
System.SysUtils,windows,forms, System.Classes, dxSkinsCore,
dxSkinsDefaultPainters, dxCore, cxClasses,
cxLookAndFeels, dxSkinsForm, cxContainer, cxEdit,
System.ImageList, Vcl.ImgList, Vcl.Controls, cxImageList, cxGraphics, cxStyles,
dxSkinBasic, dxSkinWXI, dxLayoutLookAndFeels,
cxLocalization, dxSkinBlack, dxSkinBlue, dxSkinBlueprint, dxSkinCaramel,
dxSkinCoffee, dxSkinDarkroom, dxSkinDarkSide, dxSkinDevExpressDarkStyle,
dxSkinDevExpressStyle, dxSkinFoggy, dxSkinGlassOceans, dxSkinHighContrast,
dxSkiniMaginary, dxSkinLilian, dxSkinLiquidSky, dxSkinLondonLiquidSky,
dxSkinMcSkin, dxSkinMetropolis, dxSkinMetropolisDark, dxSkinMoneyTwins,
dxSkinOffice2007Black, dxSkinOffice2007Blue, dxSkinOffice2007Green,
dxSkinOffice2007Pink, dxSkinOffice2007Silver, dxSkinOffice2010Black,
dxSkinOffice2010Blue, dxSkinOffice2010Silver, dxSkinOffice2013DarkGray,
dxSkinOffice2013LightGray, dxSkinOffice2013White, dxSkinOffice2016Colorful,
dxSkinOffice2016Dark, dxSkinOffice2019Black, dxSkinOffice2019Colorful,
dxSkinOffice2019DarkGray, dxSkinOffice2019White, dxSkinPumpkin, dxSkinSeven,
dxSkinSevenClassic, dxSkinSharp, dxSkinSharpPlus, dxSkinSilver,
dxSkinSpringtime, dxSkinStardust, dxSkinSummer2008, dxSkinTheAsphaltWorld,
dxSkinTheBezier, dxSkinValentine, dxSkinVisualStudio2013Blue,
dxSkinVisualStudio2013Dark, dxSkinVisualStudio2013Light, dxSkinVS2010,
dxSkinWhiteprint, dxSkinXmas2008Blue;
type
TBaseDataLink = class(TDataModule)
dxSkinController1: TdxSkinController;
cxEditStyleController1: TcxEditStyleController;
ThreeLookAndFeelCol: TcxLookAndFeelController;
cxDefaultEditStyleController1: TcxDefaultEditStyleController;
cxImageList_bar: TcxImageList;
ThreeColorBase: TcxStyleRepository;
SHuangSe: TcxStyle;
SkyBlue: TcxStyle;
Default: TcxStyle;
QHuangSe: TcxStyle;
Red: TcxStyle;
FontBlue: TcxStyle;
TextSHuangSe: TcxStyle;
FonePurple: TcxStyle;
FoneClMaroon: TcxStyle;
FoneRed: TcxStyle;
RowColor: TcxStyle;
handBlack: TcxStyle;
cxBlue: TcxStyle;
SHuangSeCu: TcxStyle;
dxLayoutLookAndFeelList1: TdxLayoutLookAndFeelList;
dxLayoutSkinLookAndFeel1: TdxLayoutSkinLookAndFeel;
cxLocalizer1: TcxLocalizer;
procedure DataModuleCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
BaseDataLink: TBaseDataLink;
implementation
{%CLASSGROUP 'Vcl.Controls.TControl'}
{$R *.dfm}
procedure TBaseDataLink.DataModuleCreate(Sender: TObject);
var
str :String;
pathStr:String;
begin
RootLookAndFeel.NativeStyle := False;
// pathStr:=ExtractFilePath(Application.ExeName) + '\AllSkins.skinres';
// if FileExists(pathStr) then
// begin
// dxSkinsUserSkinLoadFromFile(pathStr, 'WXI');
// RootLookAndFeel.SkinName := sdxSkinsUserSkinName;
// end;
if (fileexists(ExtractFilePath(Application.ExeName) + 'devchs.ini') = true)
then
begin
cxLocalizer1.FileName := ExtractFilePath(Application.ExeName) +
'devchs.ini';
cxLocalizer1.Active := true;
cxLocalizer1.LanguageIndex := 1;
end;
end;
end.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,47 @@
unit U_BaseHelp;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, System.ImageList, Vcl.ImgList, Data.DB,
Data.Win.ADODB,U_WindowFormdesign;
type
TfrmBaseHelp = class(TForm)
ADOQueryBaseCmd: TADOQuery;
ADOQueryBaseTemp: TADOQuery;
ImageList_new32: TImageList;
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure FormShow(Sender: TObject);
private
fWindowDesign:TWindowFormdesign;
public
{ Public declarations }
end;
var
frmBaseHelp: TfrmBaseHelp;
implementation
uses
U_RTFun ,U_globalVar;
{$R *.dfm}
procedure TfrmBaseHelp.FormCreate(Sender: TObject);
begin
fWindowDesign:=TWindowFormDeSign.Create();
end;
procedure TfrmBaseHelp.FormDestroy(Sender: TObject);
begin
fWindowDesign.free;
end;
procedure TfrmBaseHelp.FormShow(Sender: TObject);
begin
fWindowDesign.FormStyleInit(self,0,ADOQueryBaseTemp,ADOQueryBaseCmd);
end;
end.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,48 @@
unit U_BaseInput;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs,U_WindowFormdesign, Data.DB,
Data.Win.ADODB, System.ImageList, Vcl.ImgList, Vcl.ToolWin, Vcl.ComCtrls;
type
TfrmBaseInput = class(TForm)
ADOQueryBaseCmd: TADOQuery;
ADOQueryBaseTemp: TADOQuery;
ImageList_new32: TImageList;
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure FormShow(Sender: TObject);
private
fWindowDesign:TWindowFormdesign;
public
{ Public declarations }
end;
var
frmBaseInput: TfrmBaseInput;
implementation
uses
U_RTFun ,U_globalVar;
{$R *.dfm}
procedure TfrmBaseInput.FormCreate(Sender: TObject);
begin
fWindowDesign:=TWindowFormDeSign.Create();
end;
procedure TfrmBaseInput.FormDestroy(Sender: TObject);
begin
fWindowDesign.free;
end;
procedure TfrmBaseInput.FormShow(Sender: TObject);
begin
fWindowDesign.FormStyleInit(self,0,ADOQueryBaseTemp,ADOQueryBaseCmd);
end;
end.

View File

@ -0,0 +1,31 @@
object frmBaseList: TfrmBaseList
Left = 0
Top = 0
Caption = 'frmBaseList'
ClientHeight = 349
ClientWidth = 741
Color = clWhite
Font.Charset = GB2312_CHARSET
Font.Color = clWindowText
Font.Height = -12
Font.Name = #24494#36719#38597#40657
Font.Style = []
OldCreateOrder = False
OnClose = FormClose
OnCreate = FormCreate
OnDestroy = FormDestroy
OnShow = FormShow
PixelsPerInch = 96
TextHeight = 17
object ADOQueryBaseCmd: TADOQuery
Parameters = <>
Left = 273
Top = 120
end
object ADOQueryBaseTemp: TADOQuery
LockType = ltReadOnly
Parameters = <>
Left = 233
Top = 65
end
end

View File

@ -0,0 +1,90 @@
unit U_BaseList;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,
System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Data.DB,
Data.Win.ADODB, U_WindowFormdesign, cxGraphics, cxControls, cxLookAndFeels,
cxLookAndFeelPainters, dxSkinsCore, dxSkinsDefaultPainters, dxSkinWXI,
cxStyles, cxCustomData, cxFilter, cxData, cxDataStorage, cxEdit, cxNavigator,
dxDateRanges, dxScrollbarAnnotations, cxDBData, cxGridLevel, cxClasses,
cxGridCustomView, cxGridCustomTableView, cxGridTableView, cxGridDBTableView,
cxGrid;
type
TfrmBaseList = class(TForm)
ADOQueryBaseCmd: TADOQuery;
ADOQueryBaseTemp: TADOQuery;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure FormDestroy(Sender: TObject);
private
fWindowDesign: TWindowFormdesign;
protected
fParameters1: string;
fParameters2: string;
fParameters3: string;
fParameters4: string;
fParameters5: string;
fParameters10: string;
public
fFormId: integer;
fIsCanDesign:boolean;
constructor Create(AOwner: TComponent; ACaption: string=''; Parameters1: string=''; Parameters2: string=''; Parameters3: string=''; Parameters4: string=''; Parameters5: string=''; Parameters10: string='';FormID:Integer=0);
// procedure CreateCxGridColumn(tv1: TcxGridDBTableView; ADOQueryTmp: TADOQuery; mdesignCode, mGridName: string; HasFooter: boolean = true);
end;
var
frmBaseList: TfrmBaseList;
implementation
uses
U_RTFun, U_globalVar, U_dataLink;
{$R *.dfm}
constructor TfrmBaseList.Create(AOwner: TComponent; ACaption: string=''; Parameters1: string=''; Parameters2: string=''; Parameters3: string=''; Parameters4: string=''; Parameters5: string=''; Parameters10: string='';FormID:Integer=0);
begin
inherited Create(AOwner);
if ACaption <> '' then
Caption := ACaption;
fParameters1 := Parameters1;
fParameters2 := Parameters2;
fParameters3 := Parameters3;
fParameters4 := Parameters4;
fParameters5 := Parameters5;
fParameters10 := Parameters10;
fFormId:=FormID;
end;
procedure TfrmBaseList.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if WriteCloseWin(ADOQueryBaseCmd, self.Caption, fFormId, gDllFileName) then
begin
Sendmessage(application.MainForm.Handle, WM_CloseForm, 4, 0);
end;
end;
procedure TfrmBaseList.FormCreate(Sender: TObject);
begin
fWindowDesign := TWindowFormdesign.Create();
//gIsCanDesign :=fWindowDesign.IsHasDesignRight(ADOQueryBaseTemp) ;
end;
procedure TfrmBaseList.FormDestroy(Sender: TObject);
begin
fWindowDesign.free;
end;
procedure TfrmBaseList.FormShow(Sender: TObject);
begin
fWindowDesign.FormStyleInit(self, fFormId, ADOQueryBaseTemp, ADOQueryBaseCmd, '', fParameters10);
end;
end.

View File

@ -0,0 +1,158 @@
unit U_FormLayOutDesign;
interface
uses
Windows, SysUtils, Messages, Classes, Controls, StdCtrls, ComCtrls, Forms,
ExtCtrls, ComObj, DXCORE, ActiveX, cxMemo, cxButtons, Graphics, IniFiles,
Dialogs, Menus, DB, ADODB, cxLabel, BtnEdit, RTComboBox, cxTextEdit, cxMRUEdit,
cxDBData, cxGridLevel, cxButtonEdit, cxCurrencyEdit, cxGridTableView, cxGrid,
cxGridCustomTableView, cxGraphics, cxCalendar, cxCheckBox, cxGridDBTableView,
cxGridDBBandedTableView, cxStyles, cxPc, cxGroupBox, dxLayoutContainer,
cxCustomData, cxClasses, cxTimeEdit, cxEdit, cxLookAndFeels, dxLayoutControl,
cxLookAndFeelPainters, cxGridCustomView, Buttons, cxDropDownEdit,dxSkinsCore, dxSkinWXI,dxSkinsDefaultPainters;
//function saveLayOut(dxLayoutControl1:TdxLayoutControl; ADOCmd: TADOQuery;mdesignCode:string):Boolean;
//function readLayOut(dxLayoutControl1:TdxLayoutControl; ADOTmp: TADOQuery;mdesignCode:string):Boolean;
//function mustInCheck(dxLayoutControl1:TdxLayoutControl ;textFlag:string='*'):Boolean;
procedure SetFormOperRight(app:Tapplication;mParent: TwinControl; mRightCaptions: PWideChar)stdcall;external 'rtCommon.dll' Name 'SetFormOperRight_A';
function getSystemFontSize(ADOTmp: TADOQuery;mStyleCode:PWideChar): Integer;stdcall;external 'rtCommon.dll' Name 'getSystemFontSize_A';
function mustInCheck(app:Tapplication;dxLayoutControl1:TdxLayoutControl;textFlag:PWideChar):boolean;stdcall;external 'rtCommon.dll' Name 'mustInCheck_A';
function isHasDesignRight(ADOTmp: TADOQuery;userId:PWideChar): boolean;stdcall;external 'rtCommon.dll' Name 'isHasDesignRight_A';
function readLayOut(app:Tapplication;dxLayoutControl1:TdxLayoutControl; ADOTmp: TADOQuery;mdesignCode:PWideChar):integer;stdcall;external 'rtCommon.dll' Name 'readLayOut_A';
function saveLayOut(app:Tapplication;dxLayoutControl1:TdxLayoutControl; ADOCmd: TADOQuery;mdesignCode:PWideChar):integer;stdcall;external 'rtCommon.dll' Name 'saveLayOut_A';
procedure layoutDesign(dxLayoutControl1:TdxLayoutControl;ADOTmp: TADOQuery;userId:PWideChar )stdcall;external 'rtCommon.dll' Name 'layoutDesign_A';
implementation
//function saveLayOut(dxLayoutControl1:TdxLayoutControl; ADOCmd: TADOQuery;mdesignCode:string):Boolean;
//var
// LayoutStream: TMemoryStream;
//begin
// LayoutStream := TMemoryStream.Create;
// try
// dxLayoutControl1.SaveToStream(LayoutStream);
// with ADOCmd do
// begin
// close;
// sql.Clear;
// sql.Add('select A.* ');
// sql.Add('from SD_Design_FormLayout A');
// sql.Add('where A.designCode=' + quotedStr(mdesignCode));
// open;
//
// if RecordCount>0 then
// begin
// edit;
// end
// else
// begin
// append;
// FieldByName('designCode').value:=mdesignCode;
// FieldByName('fileGroup').value:='1';
// FieldByName('height').value:=0;
//
// end;
// TBlobField(FieldByName('fileContent')).LoadFromStream(LayoutStream);
// Post;
// end;
// finally
// LayoutStream.Free; // 释放内存流
// end;
//end;
//
//function readLayOut(dxLayoutControl1:TdxLayoutControl; ADOTmp: TADOQuery;mdesignCode:string):Boolean;
//var
// LayoutStream: TMemoryStream;
//begin
// LayoutStream := TMemoryStream.Create;
// try
// dxLayoutControl1.BeginUpdate ;
// with ADOTmp do
// begin
// close;
// sql.Clear;
// sql.Add('select A.* ');
// sql.Add('from SD_Design_FormLayout A');
// sql.Add('where A.designCode=' + quotedStr(mdesignCode));
// open;
//
// if RecordCount>0 then
// begin
// TBlobField(FieldByName('fileContent')).SaveToStream(LayoutStream) ;
// LayoutStream.Seek(0,soFromBeginning);
// dxLayoutControl1.LoadFromStream(LayoutStream);
// end;
// Close;
// end;
// finally
// dxLayoutControl1.EndUpdate();
// LayoutStream.Free; // 释放内存流
// end;
//end;
//必须输入控制
// function mustInCheck(dxLayoutControl1:TdxLayoutControl ;textFlag:string='*'):Boolean;
// var
// i:integer;
// j:Integer;
// mcatpion:string;
// layGroup:TdxLayoutGroup;
// begin
// result:=false;
// for I := 0 to dxLayoutControl1.Items.Count-1 do
// begin
// // mcatpion:= TdxLayoutItem(dxLayoutControl1.Controls[i].Parent).caption ;
// // if pos(textFlag, mcatpion)>=0 then
// // begin
// // ShowMessage(dxLayoutControl1.Items[i].name);
// // end;
//
// if dxLayoutControl1.Items[i] is TdxLayoutGroup then
// begin
// layGroup := TdxLayoutGroup( dxLayoutControl1.Items[i]) ;
// for j := 0 to layGroup.Count -1 do
// begin
// // ShowMessage(layGroup.items[j].name);
// mcatpion:= TdxLayoutItem(layGroup.items[j]).Caption ;
// if pos(textFlag, mcatpion)>0 then
// begin
// if TdxLayoutItem(layGroup.items[j]).Control is TcxTextEdit then
// begin
// if Trim(TcxTextEdit(TdxLayoutItem(layGroup.items[j]).Control).Text) ='' then
// begin
// //
// mcatpion:=StringReplace(mcatpion,'[COLOR=#FF0000]*[/COLOR]','',[]);
// TcxTextEdit(TdxLayoutItem(layGroup.items[j]).Control).TextHint:='请输入数据!';
// TcxTextEdit(TdxLayoutItem(layGroup.items[j]).Control).SetFocus;
// ShowMessage('【'+mcatpion+'】,数据不能为空!');
//
// exit ;
// end;
// continue;
// end;
// //
// if TdxLayoutItem(layGroup.items[j]).Control is TcxButtonEdit then
// begin
// if Trim(TcxButtonEdit(TdxLayoutItem(layGroup.items[j]).Control).Text) ='' then
// begin
// //
// mcatpion:=StringReplace(mcatpion,'[COLOR=#FF0000]*[/COLOR]','',[]);
// // TcxButtonEdit(TdxLayoutItem(layGroup.items[j]).Control).TextHint:='请输入数据!';
// TcxButtonEdit(TdxLayoutItem(layGroup.items[j]).Control).SetFocus;
// ShowMessage('【'+mcatpion+'】,数据不能为空!');
//
// exit ;
// end;
// continue;
// end;
//
// end;
// end;
//
// end;
//
// end;
// result:=true;
// end;
end.

View File

@ -0,0 +1,901 @@
unit U_WindowFormdesign;
interface
uses
Windows, SysUtils, Messages, Classes, Controls, StdCtrls, ComCtrls, Forms,
ExtCtrls, ComObj, DXCORE, ActiveX, cxMemo, cxButtons, Graphics, IniFiles, DBClient,
Dialogs, Menus, DB, ADODB, cxLabel, BtnEdit, RTComboBox, cxTextEdit, cxMRUEdit,
cxDBData, cxGridLevel, cxButtonEdit, cxCurrencyEdit, cxGridTableView, cxGrid,
cxGridCustomTableView, cxGraphics, cxCalendar, cxCheckBox, cxGridDBTableView,
cxGridDBBandedTableView, cxStyles, cxPc, cxGroupBox, U_cxGridCustomCss,dxSkinsCore, dxSkinWXI,dxSkinsDefaultPainters,
cxCustomData, cxClasses, cxTimeEdit, cxEdit, cxLookAndFeels,dxLayoutControl,
cxLookAndFeelPainters, cxGridCustomView, Buttons, cxDropDownEdit;
type
TWindowFormDeSign = class(TObject)
private
fFontSize: integer;
fWhatDesign: string;
fFormCaption: string;
fDllName: string;
fFormName: string;
fFormId: integer;
fIsShowColumnfilter: boolean;
ADOQueryCmd: TADOQuery;
ADOQueryTmp: TADOQuery;
client1:TClientDataSet ;
// procedure SetCxGridColumnBestWidth(cxGrid: TcxGridDBTableView);
// function SaveFormGridInfo(mCxGridView: TcxGridDBTableView; ADOCmd: TADOQuery; mdesignCode: string; mGridName: string; mGridType: integer): boolean;
// procedure SetFormOperRight(mParent: TwinControl; mRightCaptions: string);
function GetMaxId(): integer;
procedure cxGridViewKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
procedure cxGridViewSelectionChanged(Sender: TcxCustomGridTableView);
function InitCtrlData(mCtrl: TControl; mSql: string; mdefault: string): boolean;
procedure OpenGridDesignWin(mCxGridView: TcxGridDBTableView);
function getChgDefaultValue(mValue: string): string;
procedure dxLayoutControl1DblClick(Sender: TObject);
function getColumnRelation(tv1:TcxGridDBTableView):TclientDataSet;
procedure cxGridViewCustomDrawIndicatorCell(Sender: TcxGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxCustomGridIndicatorItemViewInfo; var ADone: Boolean);
public
function FormStyleInit(mForm: Tform; mFormId: integer; ADOTmp: TADOQuery; ADOQCmd: TADOQuery; mStyleCode: string = '01'; mRightCaptions: string = ''): boolean;
procedure QueryDataPlus(ADOTmp: TADOQuery);
//function IsHasDesignRight(ADOTmp: TADOQuery): boolean;
end;
const
// panel背景
clPanelBack = TColor($00FAF8F7);
clToolBarBack = TColor($00FAF8F7);
// 窗口背景色
clFormBack = TColor($00FAF8F7);
implementation
uses
U_DataLink, U_globalVar,U_cxGridCustomSet,U_FormLayOutDesign;
/// //////////////////////////////////////////////////////
// 窗口样式,其它界面信息设置;
/// //////////////////////////////////////////////////////
function TWindowFormDeSign.FormStyleInit(mForm: Tform; mFormId: integer; ADOTmp: TADOQuery; ADOQCmd: TADOQuery; mStyleCode: string = '01'; mRightCaptions: string = ''): boolean;
var
i: integer;
cxStyle_GridOddRow: TcxStyle;
cxStyle_GridEvenRow: TcxStyle;
cxStyle_active: TcxStyle;
cxStyle_gridGroupBox: TcxStyle;
cxStyle_gridFoot: TcxStyle;
cxStyle_selection: TcxStyle;
mvalue: TcxStyleValues;
mCtl3D, mToolBarList: boolean;
mIsCustomBackColor: boolean;
mIsDrawGridHeader: boolean;
mdesignCode: string;
begin
ADOQueryCmd := ADOQCmd;
ADOQueryTmp := ADOTmp;
fDllName := gDllFileName;
fFormName := Tform(mForm).name;
fFormId := mFormId;
gIsCanDesign :=IsHasDesignRight(ADOTmp,PWideChar(dCode)) ;
if trim(mStyleCode) = '' then
mStyleCode := '01';
fFontSize := getSystemFontSize(ADOTmp,PWideChar(mStyleCode));
if fFontSize <= 9 then
fFontSize := 9;
mForm.Font.Size := fFontSize;
// 窗口背景色
if mIsCustomBackColor then
mForm.Color := clFormBack;
for i := 0 to mForm.ComponentCount - 1 do
begin
if (fFontSize > 9) then
begin
if mForm.Components[i] is Tlabel then
begin
if Tlabel(mForm.Components[i]).Left >= fFontSize then
Tlabel(mForm.Components[i]).Left := Tlabel(mForm.Components[i]).Left - fFontSize;
continue;
end;
if mForm.Components[i] is TdatetimePicker then
begin
if TdatetimePicker(mForm.Components[i]).Width <= 90 then
TdatetimePicker(mForm.Components[i]).Width := TdatetimePicker(mForm.Components[i]).Width + ffontsize * 2;
continue;
end;
end;
if mForm.Components[i] is TcxdateEdit then
begin
if mForm.Components[i].Tag<999 then
TcxdateEdit(mForm.Components[i]).ParentFont:=True;
continue;
end;
if mForm.Components[i] is TcxTextEdit then
begin
if mForm.Components[i].Tag<999 then
TcxTextEdit(mForm.Components[i]).ParentFont:=True;
continue;
end;
if mForm.Components[i] is TcxButtonEdit then
begin
if mForm.Components[i].Tag<999 then
TcxButtonEdit(mForm.Components[i]).ParentFont:=True;
continue;
end;
if mForm.Components[i] is TcxMemo then
begin
if mForm.Components[i].Tag<999 then
TcxMemo(mForm.Components[i]).ParentFont:=True;
continue;
end;
if mForm.Components[i] is Tlabel and (mForm.Components[i].Tag=99) then
begin
Tlabel(mForm.Components[i]).Font.Size:=fFontSize;
Tlabel(mForm.Components[i]).Font.Name:=mForm.Font.Name ;
continue;
end;
if mForm.Components[i] is TToolBar then
begin
if mForm.Components[i].Tag<999 then
TToolBar(mForm.Components[i]).ParentFont:=True;
TToolBar(mForm.Components[i]).AutoSize := true;
TToolBar(mForm.Components[i]).Flat := true;
if mIsCustomBackColor then
TToolBar(mForm.Components[i]).Color := clToolBarBack;
if mForm.Components[i].Tag = 0 then
begin
if ADOTmp.IsEmpty then
TToolBar(mForm.Components[i]).List := false
else
TToolBar(mForm.Components[i]).List := mToolBarList;
end;
if mRightCaptions<>'' then
SetFormOperRight(application,TToolBar(mForm.Components[i]), PWideChar(mRightCaptions));
continue;
end;
if mForm.Components[i] is TcxTabControl then
begin
if mForm.Components[i].Tag<999 then
TdxLayoutControl(mForm.Components[i]).ParentFont:=true;
continue;
end;
if mForm.Components[i] is TcomBoBox then
begin
if mForm.Components[i].Tag<999 then
TcomBoBox(mForm.Components[i]).ParentFont:=true;
continue;
end;
if mForm.Components[i] is TdxCustomLayoutControl then
begin
if mForm.Components[i].Tag<999 then
TdxLayoutControl(mForm.Components[i]).ParentFont:=true;
if mForm.Components[i].Tag<>1000 then
begin
TdxLayoutControl(mForm.Components[i]).OnDblClick := dxLayoutControl1DblClick ;
readLayOut(application,TdxLayoutControl(mForm.Components[i]),ADOTmp,PWideChar( fDllFileName+'|'+mForm.name+'|'+TdxLayoutControl(mForm.Components[i]).Name+'.ini'));
end;
continue;
end;
// Tpanel
if mForm.Components[i] is Tpanel then
begin
if mForm.Components[i].Tag<999 then
Tpanel(mForm.Components[i]).ParentFont:=True;
if mIsCustomBackColor and (Tpanel(mForm.Components[i]).Tag < 99) then
Tpanel(mForm.Components[i]).Color := clPanelBack;
Tpanel(mForm.Components[i]).Ctl3D := mCtl3D;
mdesignCode := fFormName + '_' + intTostr(fFormId) + '_' + Tpanel(mForm.Components[i]).name;
continue;
end;
// Tpanel
if mForm.Components[i] is TScrollBox then
begin
if mForm.Components[i].Tag<999 then
TScrollBox(mForm.Components[i]).ParentFont:=true;
if mIsCustomBackColor and (Tpanel(mForm.Components[i]).Tag < 99) then
Tpanel(mForm.Components[i]).Color := clPanelBack;
Tpanel(mForm.Components[i]).Ctl3D := mCtl3D;
mdesignCode := fFormName + '_' + intTostr(fFormId) + '_' + TScrollBox(mForm.Components[i]).name;
continue;
end;
// Tcxgroup
if mForm.Components[i] is TgroupBox then
begin
if mForm.Components[i].Tag<999 then
TgroupBox(mForm.Components[i]).ParentFont:=true;
if mIsCustomBackColor then
TgroupBox(mForm.Components[i]).Color := clPanelBack;
TgroupBox(mForm.Components[i]).Ctl3D := mCtl3D;
continue;
end;
// TcxPageControl
if mForm.Components[i] is TcxPageControl then
begin
if mForm.Components[i].Tag<999 then
TcxPageControl(mForm.Components[i]).ParentFont:=True;
if mIsCustomBackColor then
TcxPageControl(mForm.Components[i]).Color := clPanelBack;
continue;
end;
// Tcxgroup
if mForm.Components[i] is TcxgroupBox then
begin
if mForm.Components[i].Tag<999 then
TcxgroupBox(mForm.Components[i]).ParentFont:=True;
if mIsCustomBackColor then
TcxgroupBox(mForm.Components[i]).Color := clPanelBack;
TcxgroupBox(mForm.Components[i]).Ctl3D := mCtl3D;
mdesignCode := fFormName + '_' + intTostr(fFormId) + '_' + TcxgroupBox(mForm.Components[i]).name;
continue;
end;
if mForm.Components[i] is Tcxtimeedit then
begin
if mForm.Components[i].Tag<999 then
Tcxtimeedit(mForm.Components[i]).ParentFont:=true;
Tcxtimeedit(mForm.Components[i]).Style.BorderStyle := ebsFlat;
continue;
end;
// TcxGrid and gIsCustomDrawGridHeader
if mForm.Components[i] is TcxGrid then
begin
if mForm.Components[i].Tag>=999 then Continue;
TcxGrid(mForm.Components[i]).ParentFont:=true;
TcxGrid(mForm.Components[i]).LookAndFeel.ScrollbarMode := sbmClassic;
// cxStyle_GridOddRow := TcxStyle.Create(mForm.Components[i]);
// cxStyle_GridEvenRow := TcxStyle.Create(mForm.Components[i]);
// cxStyle_active := TcxStyle.Create(mForm.Components[i]);
// cxStyle_selection := TcxStyle.Create(mForm.Components[i]);
// cxStyle_gridGroupBox := TcxStyle.Create(mForm.Components[i]);
// cxStyle_gridFoot := TcxStyle.Create(mForm.Components[i]);
//
// cxStyle_active.Font.name := '微软雅黑';
//
// cxStyle_gridGroupBox.Color := $20F3FBFB;
// cxStyle_selection.Color := $0047D5FE;
// cxStyle_gridFoot.Color := clPanelBack;
// cxStyle_gridFoot.Font.Color := clBlack;
//
// cxStyle_selection.Font.Color := clBlack;
// cxStyle_selection.Font.Style := [];
// cxStyle_selection.Font.name := '微软雅黑';
//
//
// cxStyle_active.Font.Size := fFontsize;
// cxStyle_gridFoot.Font.Size := ffontsize;
// cxStyle_selection.Font.Size := ffontsize;
// if TcxGridDBTableView(TcxGrid(mForm.Components[i]).Views[0]).styles.Header <> nil then
// TcxStyle(TcxGridDBTableView(TcxGrid(mForm.Components[i]).Views[0]).styles.Header).Font.Size := ffontsize;
//
// if TcxGridDBTableView(TcxGrid(mForm.Components[i]).Views[0]).styles.contentOdd = nil then
// TcxGridDBTableView(TcxGrid(mForm.Components[i]).Views[0]).styles.contentOdd := cxStyle_GridOddRow;
// if TcxGridDBTableView(TcxGrid(mForm.Components[i]).Views[0]).styles.contentEven = nil then
// TcxGridDBTableView(TcxGrid(mForm.Components[i]).Views[0]).styles.contentEven := cxStyle_GridEvenRow;
// if TcxGridDBTableView(TcxGrid(mForm.Components[i]).Views[0]).styles.inactive = nil then
// TcxGridDBTableView(TcxGrid(mForm.Components[i]).Views[0]).styles.inactive := cxStyle_active
// else
// TcxStyle(TcxGridDBTableView(TcxGrid(mForm.Components[i]).Views[0]).styles.inactive).Font.Size := ffontsize;
//
// if TcxGridDBTableView(TcxGrid(mForm.Components[i]).Views[0]).styles.selection = nil then
// begin
// TcxGridDBTableView(TcxGrid(mForm.Components[i]).Views[0]).styles.selection := cxStyle_selection;
// TcxGridDBTableView(TcxGrid(mForm.Components[i]).Views[0]).styles.selection.AssignedValues := [];
// end
// else
// TcxStyle(TcxGridDBTableView(TcxGrid(mForm.Components[i]).Views[0]).styles.selection).Font.Size := ffontsize;
//
TcxGridDBTableView(TcxGrid(mForm.Components[i]).Views[0]).optionsView.groupByBox := false;
// if mIsDrawGridHeader and (TcxGrid(mForm.Components[i]).Tag <> 1) then
// begin
// TcxGridDBTableView(TcxGrid(mForm.Components[i]).Views[0]).optionsCustomize.columnfiltering := true;
// end;
//自动响应过滤
TcxGridDBTableView(TcxGrid(mForm.Components[i]).Views[0]).dataController.filter.AutoDataSetFilter := true;
//if mForm.Components[i].Tag < 99 then
// SetCxGridColumnBestWidth(TcxGridDBTableView(TcxGrid(mForm.Components[i]).Views[0]));
TcxGridDBTableView(TcxGrid(mForm.Components[i]).Views[0]).OnKeyDown := cxGridViewKeyDown;
TcxGridDBTableView(TcxGrid(mForm.Components[i]).Views[0]).OnSelectionChanged := cxGridViewSelectionChanged;
TcxGridDBTableView(TcxGrid(mForm.Components[i]).Views[0]).OnCustomDrawIndicatorCell := cxGridViewCustomDrawIndicatorCell;
TcxGridDBTableView(TcxGrid(mForm.Components[i]).Views[0]).optionsCustomize.columnfiltering := true;
mdesignCode := fDllFileName +'|'+mForm.name+ '|' + intTostr(fFormId) + '|' + TcxGrid(mForm.Components[i]).name;
CreateCxGridColumn(application, TcxGridDBTableView(TcxGrid(mForm.Components[i]).Views[0]),ADOQueryTmp,PWideChar(mdesignCode));
continue;
end;
end;
end;
/// ////////////////////////////////////////////////////////////////////
// 保存窗口表格列的原始信息
/// ///////////////////////////////////////////////////////////////////////
//function TWindowFormDeSign.SaveFormGridInfo(mCxGridView: TcxGridDBTableView; ADOCmd: TADOQuery; mdesignCode: string; mGridName: string; mGridType: integer): boolean;
//var
// i: integer;
// mfieldName: string;
//begin
// result := false;
// try
// /// ////////////////
// /// ////////////////
// with ADOQueryCmd do
// begin
// close;
// sql.Clear;
// sql.Add('select * from SD_FormGrid_Main A');
// sql.Add('where A.designCode=' + quotedStr(mdesignCode));
// open;
// if RecordCount <= 0 then
// begin
// append;
// fieldByName('designCode').value := mdesignCode;
// fieldByName('GridType').value := mGridType;
// fieldByName('gridName').value := TcxGrid(TcxGridLevel(mCxGridView.level).Control).name;
// end
// else
// edit;
//
// fieldByName('ProcedureParam').value := '';
// fieldByName('newProcedureName').value := '';
// post;
//
// close;
//
// end;
// // 子信息
// with ADOCmd do
// begin
// close;
// sql.Clear;
// sql.Add('select * from SD_FormGrid_Design');
// sql.Add('where designCode=' + quotedStr(mdesignCode));
// sql.Add('and formId=' + intTostr(fFormId));
// sql.Add('and formName=' + quotedStr(fFormName));
// // sql.Add('and GridName='+QuotedStr(mgridName));
// open;
//
// for i := mCxGridView.ColumnCount - 1 downto 0 do
// begin
// mfieldName := TcxGridDBColumn(mCxGridView.Columns[i]).DataBinding.FieldName;
//
// if locate('fieldName', mfieldName, []) then
// begin
// continue;
// end
// else
// begin
// append;
// fieldByName('Id').value := GetMaxId();
// fieldByName('formId').value := fFormId;
// fieldByName('formName').value := fFormName;
// fieldByName('designCode').value := mdesignCode;
// fieldByName('GridName').value := mGridName;
//
// fieldByName('ColumnName').value := mCxGridView.Columns[i].name;
// fieldByName('Visible').value := mCxGridView.Columns[i].Visible;
// fieldByName('ColumnHide').value := mCxGridView.Columns[i].Hidden;
// fieldByName('oldCaption').value := mCxGridView.Columns[i].Caption;
// fieldByName('Valid').value := 1;
// end;
//
// fieldByName('GridIndex').value := mGridType;
// fieldByName('FieldName').value := trim(TcxGridDBColumn(mCxGridView.Columns[i]).DataBinding.FieldName);
// fieldByName('Caption').value := mCxGridView.Columns[i].Caption;
// fieldByName('ColumnType').value := trim(TcxGridDBColumn(mCxGridView.Columns[i]).DataBinding.ValueType);
//
// fieldByName('Width').value := mCxGridView.Columns[i].Width;
// fieldByName('IsOrder').value := 1;
// fieldByName('ColumnFilter').value := mCxGridView.Columns[i].Filtered;
// fieldByName('ColumnOrder').value := mCxGridView.Columns[i].Index;
// if mCxGridView.Columns[i].FixedKind= fkLeftDynamic then
// begin
// fieldByName('fixColumn').value := True;
// end
// else
// begin
// fieldByName('fixColumn').value := false;
// end;
// post;
// end;
//
// close;
// end;
//
// /// /////////////////////////////////////////////
// //
// for i := 0 to mCxGridView.dataController.DataSet.FieldCount - 1 do
// begin
// mfieldName := trim(mCxGridView.dataController.DataSet.Fields[i].FieldName);
// if mfieldName = '' then
// continue;
// with ADOCmd do
// begin
// close;
// sql.Clear;
// sql.Add('select * from SD_FormGrid_Design');
// sql.Add('where designCode=' + quotedStr(mdesignCode));
// // sql.Add('and GridName='+QuotedStr(mgridName));
// sql.Add('and fieldName=' + quotedStr(mfieldName));
// open;
// if RecordCount <= 0 then
// begin
// append;
// fieldByName('Id').value := GetMaxId();
// fieldByName('formName').value := fFormName;
// fieldByName('formId').value := fFormId;
// fieldByName('GridName').value := mGridName;
// fieldByName('GridIndex').value := mGridType;
// fieldByName('designCode').value := mdesignCode;
//
// fieldByName('fieldName').value := mfieldName;
//
// fieldByName('ColumnType').value := mCxGridView.dataController.DataSet.Fields[i].DataType;
// fieldByName('Caption').value := '未启用';
// fieldByName('ColumnName').value := mCxGridView.name + mfieldName;
// fieldByName('Visible').value := false;
// fieldByName('AddFlag').value := true;
//
// fieldByName('Width').value := 60;
// fieldByName('ColumnOrder').value := 99;
//
// fieldByName('Valid').value := 0;
// post;
// end;
// close;
// end;
// end;
// result := true;
// except
// application.MessageBox('保存窗口表格信息时发生错误', '提示信息', 0);
// end;
//end;
/// /////////////////////////////////////////////////
//
/// ///////////////////////////////////////////////////
/// ////////////////////////////////////////////////////////////////
// 初始化控件的默认数据 设置了取数SQL的控件
/// ////////////////////////////////////////////////////////////////
function TWindowFormDeSign.InitCtrlData(mCtrl: TControl; mSql: string; mdefault: string): boolean;
var
idx: integer;
begin
result := false;
try
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add(mSql);
open;
end;
if mCtrl is TcomBoBox then
begin
if ADOQueryTmp.RecordCount > 0 then
TcomBoBox(mCtrl).Clear;
while not ADOQueryTmp.Eof do
begin
TcomBoBox(mCtrl).Items.Add(trim(ADOQueryCmd.Fields[0].AsString));
ADOQueryCmd.Next;
end;
if mdefault <> '' then
begin
idx := TcomBoBox(mCtrl).Items.IndexOf(mdefault);
if idx >= 0 then
begin
TcomBoBox(mCtrl).ItemIndex := idx;
end;
end;
exit;
end;
/// //////////////
if mCtrl is TcxComboBox then
begin
if ADOQueryCmd.RecordCount > 0 then
begin
TcxComboBox(mCtrl).Clear;
TcxComboBox(mCtrl).Properties.Items.Clear;
end;
while not ADOQueryCmd.Eof do
begin
TcxComboBox(mCtrl).Properties.Items.Add(trim(ADOQueryCmd.Fields[0].AsString));
ADOQueryCmd.Next;
end;
if mdefault <> '' then
begin
idx := TcxComboBox(mCtrl).Properties.Items.IndexOf(mdefault);
if idx >= 0 then
begin
TcxComboBox(mCtrl).ItemIndex := idx;
end;
end;
exit;
end;
if mCtrl is Tdatetimepicker then
begin
Tdatetimepicker(mCtrl).Date := ADOQueryCmd.Fields[0].AsDateTime;
exit;
end;
if mCtrl is TcxDateEdit then
begin
TcxDateEdit(mCtrl).Date := ADOQueryCmd.Fields[0].AsDateTime;
exit;
end;
result := true;
except
application.MessageBox('初始化控件数据时发生错误!', '提示信息', 0);
end;
end;
/// ///////////////////////////////////////////////////////////////////////////////////////
//
/// ///////////////////////////////////////////////////////////////////////////////////////
//procedure TWindowFormDeSign.SetCxGridColumnBestWidth(cxGrid: TcxGridDBTableView);
//var
// i: integer;
// mCaption: string;
// mMinWidth: integer;
//begin
// try
// cxGrid.BeginUpdate;
// for i := 0 to cxGrid.ColumnCount - 1 do
// begin
// if cxGrid.ColumnCount < 6 then
// begin
// cxGrid.Columns[i].Width := 120;
// continue;
// end;
// mCaption := trim(cxGrid.Columns[i].Caption);
// if length(mCaption) <= 2 then
// mMinWidth := (length(mCaption) + 3) * 12
// else if (length(mCaption) > 2) and (length(mCaption) <= 4) then
// mMinWidth := (length(mCaption) + 2) * 12
// else if (length(mCaption) > 4) and (length(mCaption) <= 8) then
// mMinWidth := (length(mCaption) + 1) * 12
// else
// mMinWidth := (length(mCaption)) * 9;
// cxGrid.Columns[i].Width := mMinWidth;
// end;
// finally
// cxGrid.EndUpdate;
// end;
//end;
/// ////////////////////////////////////////
procedure TWindowFormDeSign.cxGridViewKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
var
mGridDBTableView: TcxGridDBTableView;
begin
if Key = vk_f12 then
begin
mGridDBTableView := TcxGridDBTableView(TcxGridSite(Sender).ViewInfo.GridView);
OpenGridDesignWin(mGridDBTableView);
end;
end;
/////////////////////////////////////////////
procedure TWindowFormDeSign.dxLayoutControl1DblClick(Sender: TObject);
begin
layoutDesign(TdxLayoutControl(Sender),ADOQueryCmd,PWideChar(dcode));
end;
/// ////////////////////////////////////////////////////////////////
// 打开表格设计窗口
// 0: mGridType 查询; 1:输入
/// /////////////////////////////////////////////////////////////////
procedure TWindowFormDeSign.OpenGridDesignWin(mCxGridView: TcxGridDBTableView);
type
TMyFunc = function(App: Tapplication; FormH: hwnd; FormID: integer; UID: pchar; UName: pchar; dataBase: pchar; Title: pchar; Parameters1: pchar; Parameters2: pchar): hwnd; stdcall;
var
Tf: TMyFunc;
Tp: TFarProc;
Th: Thandle;
newh: hwnd;
mGridType: integer;
mdesignCode: string;
mGridName: string;
k: integer;
client1:TClientDataSet;
begin
/// ////////////////////////////////////
// 权限控制
mdesignCode := fFormName + '|' + intTostr(fFormId) + '|' + mCxGridView.name;
mGridName := TcxGrid(TcxGridLevel(mCxGridView.level).Control).name;
if not IsHasDesignRight(ADOQueryCmd,PWideChar(dcode)) then
exit;
ShowCxGridDesign(application, mCxGridView, getColumnRelation(mCxGridView),AdOQueryCmd,PWideChar(fFormName) ,PWideChar(mGridName),PWideChar(fDllFileName),fformId,0);
CreateCxGridColumn(application, mCxGridView,ADOQueryTmp,PWideChar(mdesignCode));
end;
/// //////////////////////////////////////
//
/// ///////////////////////////////////////
function TWindowFormDeSign.GetMaxId(): integer;
begin
result := 0;
try
with ADOQueryTmp do
begin
close;
sql.Clear;
Filtered := false;
sql.Add('select max(id) as id');
sql.Add('from SD_FormGrid_Design A');
open;
result := fieldByName('id').AsInteger + 1;
end;
except
end;
end;
/// //////////////////////////////////////////////////////////////
// 设置toolbar按钮权限参数
/// //////////////////////////////////////////////////////////////
//procedure TWindowFormDeSign.SetFormOperRight(mParent: TwinControl; mRightCaptions: string);
//var
// i: integer;
// mCaption: string;
// mOperRight: string;
//begin
// mOperRight := mRightCaptions;
//
// if mOperRight = '' then
// exit;
//
// try
// /// ////////////////////////////////////////////
// if mParent is TToolBar then
// begin
// for i := 0 to TToolBar(mParent).ButtonCount - 1 do
// begin
// mCaption := trim(TToolBar(mParent).Buttons[i].Caption);
// if (mCaption = '关闭') or (mCaption = '退出') or (mCaption = '放弃') then
// exit;
// /// //////////////////////////
// if trim(mOperRight) = '查询' then
// begin
// if pos(mCaption, '查询,刷新,过滤,高级过滤,高级查询') > 0 then // ,查看,详细
// begin
// TToolBar(mParent).Buttons[i].Visible := true;
// end
// else
// begin
// TToolBar(mParent).Buttons[i].Visible := false;
// end;
// end
// else
// begin
// if (pos(mCaption, mOperRight) > 0) or (pos(mCaption, '查询,刷新,过滤,高级过滤,高级查询') > 0) then // 查看,
// begin
// TToolBar(mParent).Buttons[i].Visible := true;
// end
// else
// begin
// TToolBar(mParent).Buttons[i].Visible := false;
// end;
// end;
// end;
// exit;
// end;
// /// ////////////////////////////////////////////////
// if trim(mOperRight) = '查询' then
// exit;
// with mParent do
// begin
// for i := 0 to ControlCount - 1 do
// begin
// mCaption := '';
// if (Controls[i] is TBitBtn) then
// mCaption := trim(TBitBtn(Controls[i]).Caption)
// else if (Controls[i] is TButton) then
// mCaption := trim(TButton(Controls[i]).Caption)
// else if (Controls[i] is TSpeedButton) then
// mCaption := trim(TSpeedButton(Controls[i]).Caption)
// else
// continue;
// if (Controls[i] is TBitBtn) or (Controls[i] is TButton) or (Controls[i] is TSpeedButton) then
// begin
// if (pos(mCaption, mOperRight) > 0) or (mCaption = '查询') or (mCaption = '过滤') or (mCaption = '高级过滤') then
// begin
// Controls[i].Visible := true;
// end
// else
// Controls[i].Visible := false;
// end;
// end;
// end;
//
// except
// application.MessageBox('初始化窗口按钮权限发生错误', '警告信息', 0);
// end;
//end;
/// ////////////////////////////////////////////////////////////
//
/// ////////////////////////////////////////////////////////////
function TWindowFormDeSign.getChgDefaultValue(mValue: string): string;
begin
if '$$USERNAME' = mValue then
begin
result := DName;
end
else
result := mValue;
end;
/// ////////////////////////////////////////////////////
// 查询数据增强
/// /////////////////////////////////////////////////////
procedure TWindowFormDeSign.QueryDataPlus(ADOTmp: TADOQuery);
begin
end;
/////////////////////////////////////////////////////////
///
//////////////////////////////////////////////////////////
procedure TWindowFormDeSign.cxGridViewSelectionChanged(Sender: TcxCustomGridTableView);
var
i, J, idx: integer;
FocusedRowIndex: integer;
begin
if Sender.Tag = 888 then
exit;
try
Sender.BeginUpdate();
TcxGridDbTableView(Sender).BeginUpdate();
FocusedRowIndex := TcxGridDbTableView(Sender).Controller.FocusedRowIndex;
Sender.DataController.GotoFirst;
if TcxGridDbTableView(Sender).DataController.DataSet.FieldByName('ssel') = nil then
exit;
if TcxGridDbTableView(Sender).GetColumnByFieldName('ssel') = nil then
exit;
idx := TcxGridDbTableView(Sender).GetColumnByFieldName('ssel').Index;
for i := 0 to Sender.DataController.RecordCount - 1 do
begin
if TcxGridDbTableView(Sender).DataController.GetItemByFieldName('ssel').EditValue = true then
begin
TcxGridDbTableView(Sender).DataController.Edit;
TcxGridDbTableView(Sender).DataController.GetItemByFieldName('ssel').EditValue := false;
TcxGridDbTableView(Sender).DataController.Post();
end;
Sender.DataController.GotoNext;
end;
for i := 0 to Sender.DataController.GetSelectedCount - 1 do
begin
TcxGridDbTableView(Sender).Controller.FocusedRow := TcxGridDbTableView(Sender).Controller.SelectedRows[i];
if TcxGridDbTableView(Sender).DataController.GetItemByFieldName('ssel').EditValue = false then
begin
TcxGridDbTableView(Sender).DataController.Edit;
TcxGridDbTableView(Sender).DataController.GetItemByFieldName('ssel').EditValue := true;
TcxGridDbTableView(Sender).DataController.Post();
end;
end;
finally
TcxGridDbTableView(Sender).Controller.FocusedRowIndex := FocusedRowIndex;
TcxGridDbTableView(Sender).EndUpdate;
Sender.EndUpdate;
end;
end;
///////////////////////////////////////////////////////////////
///
///
procedure TWindowFormDeSign.cxGridViewCustomDrawIndicatorCell(Sender: TcxGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxCustomGridIndicatorItemViewInfo; var ADone: Boolean);
var
AIndicatorViewInfo: TcxGridIndicatorRowItemViewInfo;
ATextRect: TRect;
// AStyle: TcxStyle;
aCV: TcxCanvas;
begin
if not (AViewInfo is TcxGridIndicatorRowItemViewInfo) then
Exit;
Sender.BeginUpdate() ;
aCV := ACanvas;
AViewInfo.GetBestFitWidth ;
ATextRect := AViewInfo.ContentBounds;
AIndicatorViewInfo := AViewInfo as TcxGridIndicatorRowItemViewInfo;
InflateRect(ATextRect, -2, -1);
if AIndicatorViewInfo.GridRecord.Selected then //这个if段是为了在行号处把把选中的行号跟别的区分开可不用
begin
aCV.Font.Style := ACanvas.Font.Style + [fsBold];
aCV.Font.Color := clRed;
end
else
begin
aCV.Font.Style := ACanvas.Font.Style - [fsBold];
aCV.Font.Color := clblack;
end;
Sender.LookAndFeelPainter.DrawHeader(ACanvas, AViewInfo.ContentBounds, ATextRect, [], cxBordersAll, cxbsNormal, taCenter, vaCenter, False, False, IntToStr(AIndicatorViewInfo.GridRecord.Index + 1),
aCV.Font, aCV.font.Color, aCV.Brush.color);
Sender.EndUpdate;
ADone := True;
end;
/////////////////////////////////////////////////////////////////
///
function TWindowFormDeSign.getColumnRelation(tv1:TcxGridDBTableView):TclientDataSet;
var
i:Integer;
begin
if client1=nil then
begin
client1 := TClientDataSet.Create(nil);
client1.FieldDefs.Add('fieldName', ftString, 100);
client1.FieldDefs.Add('caption', ftString,100);
client1.FieldDefs.Add('ValueType', ftString,100);
client1.CreateDataSet;
end
else
client1.EmptyDataSet;
for i := 0 to tv1.ColumnCount - 1 do
begin
client1.Append;
client1.FieldByName('fieldName').Value:=tv1.Columns[i].DataBinding.FieldName;
client1.FieldByName('caption').Value:=tv1.Columns[i].Caption;
client1.FieldByName('ValueType').Value:=tv1.Columns[i].DataBinding.ValueType;
client1.Post;
end;
result:=client1;
end;
end.

View File

@ -0,0 +1,135 @@
unit U_cxGridCustomCss;
//{$I ..\cxVer.inc}
interface
uses
{$IFDEF DELPHI6}Types,{$ENDIF} Windows, Graphics, DB;
type
TCustomDrawingStyle = (cdsBkImage, cdsGradient, cdsDependOnData, cdsDefaultDrawing);
TCustomDrawArea = (cdaCell, cdaColumnHeader, cdaFooterCell, cdaGroupCell, cdaIndicatorCell, cdaPartBackGround);
TViewType = (vtMaster, vtDetail);
TColorScheme = (csGrey, csGold, csBlue, csGreen);
TBkImage = (bkiTile, bkiSky, bkiEgypt, bkiMyFace, bkiUserDefined);
TBkImages = array [0..1, 0..5] of TBkImage;
TColorSchemes = array [0..1, 0..5] of TColorScheme;
TColorSchemeArr = array [0..3, 0..2] of TColor;
TCustomDrawingStyleArr = array [0..1, 0..5] of TCustomDrawingStyle;
TUserDefinedBitMaps = array [0..1, 0..5] of TBitmap;
TFonts = array [0..1, 0..5] of TFont;
TCustomDrawItem = class
ViewType: TViewType;
CustomDrawArea: TCustomDrawArea;
end;
const
clBlueDark = TColor($00C56A31);
clBlueLight = TColor($00F7EAD9);
clBlueBright = TColor($00FF953D);
clBlueSky = TColor($00EBC4A4);
clGold = TColor($0047D5FE);
clGoldDark = TColor($0001BDF3);
clGreyLight = TColor($00E2EFF1);
clBlueZdy = TColor($f7f7f7); //00F8E4D8
clBlueZdy1 = TColor($00F0E7E0); //00F8E4D8
clBlueZdy2 = TColor($00EABE84);
clBlueZdy3 = TColor($00F4DFC4);
clBlueZdy4 = TColor($00F9EDDF);
clGreyDark = TColor($00B9D9DD);
clYellowLight = TColor($00E1FFFF);
clGreenBright = TColor($0082E887);
clGreenLight = TColor($00C9F5CB);
clGreenObscured = TColor($00ACF0AF);
clGreenDark = TColor($0044DD4B);
clSilverDark = TColor($00A6A6A6); //clGreyLight clGold
ColorScheme : TColorSchemeArr = ((clSilver, clWhite, clGray),(clBlueZdy, clBlueZdy3 , clGoldDark),(clBlueDark, clBlueLight, clBlueDark),(clGreenDark, clGreenLight, clGreen));
procedure DrawGradient(Canvas: TCanvas; const ARect: TRect;
FromColor, ToColor: TColor; AStepCount: Integer; IsVertical: Boolean = False);
procedure LoadImageFromRes(ABitmap: TBitMap; AResName: String);
procedure SetStringFieldValue(AField: TStringField; AValue: string);
implementation
uses
SysUtils, Classes, cxEditPaintUtils;
procedure DrawGradient(Canvas: TCanvas; const ARect: TRect;
FromColor, ToColor: TColor; AStepCount: Integer; IsVertical: Boolean = False);
var
SR: TRect;
H, I: Integer;
R, G, B: Byte;
FromR, ToR, FromG, ToG, FromB, ToB: Byte;
begin
FromR := GetRValue(FromColor);
FromG := GetGValue(FromColor);
FromB := GetBValue(FromColor);
ToR := GetRValue(ToColor);
ToG := GetGValue(ToColor);
ToB := GetBValue(ToColor);
SR := ARect;
with ARect do
if IsVertical then
H := Bottom - Top
else
H := Right - Left;
for I := 0 to AStepCount - 1 do
begin
if IsVertical then
SR.Bottom := ARect.Top + MulDiv(I + 1, H, AStepCount)
else
SR.Right := ARect.Left + MulDiv(I + 1, H, AStepCount);
with Canvas do
begin
R := FromR + MulDiv(I, ToR - FromR, AStepCount - 1);
G := FromG + MulDiv(I, ToG - FromG, AStepCount - 1);
B := FromB + MulDiv(I, ToB - FromB, AStepCount - 1);
Brush.Color := RGB(R, G, B);
FillRect(SR);
end;
if IsVertical then
SR.Top := SR.Bottom
else
SR.Left := SR.Right;
end;
end;
procedure LoadImageFromRes(ABitmap: TBitMap; AResName: String);
var
Rs: TResourceStream;
BitMap: TBitMap;
begin
BitMap := TBitMap.Create;
Rs := TResourceStream.Create(hInstance, AResName, RT_RCDATA);
try
BitMap.LoadFromStream(Rs);
ABitMap.Assign(BitMap);
finally
BitMap.Free;
Rs.Free;
end;
end;
procedure SetStringFieldValue(AField: TStringField; AValue: string);
begin
AField.Value := AValue;
end;
end.

View File

@ -0,0 +1,456 @@
unit U_cxGridCustomSet;
interface
uses
Windows, SysUtils, Messages, Classes, Controls, StdCtrls, ComCtrls, Forms,
ExtCtrls, ComObj, DXCORE, ActiveX, cxMemo, cxButtons, Graphics, IniFiles,
Variants, DBClient,
Dialogs, Menus, DB, ADODB, cxLabel, BtnEdit, RTComboBox, cxTextEdit,
cxMRUEdit,
cxDBData, cxGridLevel, cxButtonEdit, cxCurrencyEdit, cxGridTableView, cxGrid,
cxGridCustomTableView, cxGraphics, cxCalendar, cxCheckBox, cxGridDBTableView,
cxGridDBBandedTableView, cxStyles, cxPc, cxGroupBox, U_cxGridCustomCss,
dxLayoutContainer,
cxCustomData, cxClasses, cxTimeEdit, cxEdit, cxLookAndFeels, dxLayoutControl,
cxLookAndFeelPainters, cxGridCustomView, Buttons, cxDropDownEdit;
// procedure createFindLayout(dxLayoutControl1: TdxLayoutControl; ADOTmp: TADOQuery; mdesignCode: string);
procedure CreateCxGridColumn(application: TApplication; tv1: TcxGridDBTableView;
ADOQueryTmp: TADOQuery; mdesignCode: string);
// stdcall;external 'rtCommon.dll' Name 'CreateCxGridColumn_A';
procedure CreateCxGridColumn_A(application: TApplication;
tv1: TcxGridDBTableView; ADOQueryTmp: TADOQuery; mdesignCode: string);
stdcall; external 'rtCommon.dll';
procedure ShowCxGridDesign(application: TApplication;
mCxGridView: TcxGridDBTableView; client1: TClientDataSet; ADOCmd: TADOQuery;
mFormName: PWideChar; mGridName: PWideChar; mDllName: PWideChar;
mFormId: integer; mGridType: integer = 0); stdcall;
external 'rtCommon.dll' Name 'ShowCxGridDesign_A';
function SaveGridSetInfoToBase(mCxGridView: TcxGridDBTableView;
ADOCmd: TADOQuery; designCode: PWideChar): Boolean; stdcall;
external 'rtCommon.dll' Name 'SaveGridSetInfoToBase_A';
//
function checkColumnMustIn(app: TApplication; tv1: TcxGridDBTableView;
mFlag: integer): Boolean;
// stdcall;external 'rtCommon.dll' Name 'checkColumnMustIn_A';
function checkColumnMustIn_A(app: TApplication; tv1: TcxGridDBTableView;
client1: TClientDataSet; mFlag: integer): Boolean; stdcall;
external 'rtCommon.dll';
procedure getColumnRelation(tv1: TcxGridDBTableView; client1: TClientDataSet);
implementation
// uses
// U_globalVar, U_DataLink;
/// ////////////////////////////////////////////////////////////////
// 显示表格设计窗口
// 0: mGridType 查询; 1:输入
/// /////////////////////////////////////////////////////////////////
// procedure ShowCxGridDesign(mCxGridView: TcxGridDBTableView; ADOCmd: TADOQuery;
// mFormName: string; mGridName: string; mDllName: string; mFormId: integer;
// mGridType: integer = 0);
// type
// TMyFunc = function(App: Tapplication; FormH: hwnd; FormID: integer;
// UID: String; UName: String; dataBase: string; Title: string; Def1: string;
// Def2: string): hwnd; stdcall;
// var
// Tf: TMyFunc;
// Tp: TFarProc;
// Th: Thandle;
// newh: hwnd;
// mdesignCode: string;
// begin
//
// /// ////////////////////////////////////
// // 权限控制
// with ADOCmd do
// begin
// close;
// sql.Clear;
// filtered := false;
// sql.Add('select count(*) as cnt');
// sql.Add('from sy_user A');
// sql.Add('where userid=' + quotedStr(gUserId));
// sql.Add('and valid=''Y''');
// sql.Add('and candesign=1');
// open;
// if fieldByName('cnt').AsInteger <= 0 then
// begin
// close;
// // exit;
// end;
// close;
//
// mdesignCode := mDllName +mFormName+ '|' + intTostr(mFormId) + '|' + mGridName;
//
// /// ////////////////////////////////////////
// // 保存当前控件信息
// if not SaveGridSetInfoToBase(mCxGridView, ADOCmd, mdesignCode) then
// begin
// exit;
// end;
// end;
//
// /// ////////////////////////////////////////
// //
// Th := LoadLibrary('rtDesign.dll');
// if Th > 0 then
// begin
// try
// Tp := GetProcAddress(Th, 'GetDllForm');
// if Tp <> nil then
// begin
// Tf := TMyFunc(Tp);
// newh := Tf(Application, 0, 2, PChar(gUserId), PChar(gUserName),
// PChar(DConString), PChar('表格设计'), PChar(mdesignCode), PChar(''));
// end
// else
// begin
// ShowMessage('调用rtDesign.dll时发生错误!');
// end;
// finally
// // FreeLibrary();
// end;
// end
// else
// begin
// ShowMessage('找不到rtDesign.dll');
// end;
// // CreateCxGridColumn(mCxGridView,ADOCmd,mwinCode,mFormName,mGridName);
//
// CreateCxGridColumn(mCxGridView, ADOCmd, mdesignCode);
//
// end;
/// ////////////////////////////////////////////////////////////////////
// 保存表格列信息
/// ///////////////////////////////////////////////////////////////////////
// function SaveGridSetInfoToBase(mCxGridView: TcxGridDBTableView;
// ADOCmd: TADOQuery; designCode: string): Boolean;
// var
// i: integer;
// mfieldName: string;
// begin
// result := false;
//
// try
// with ADOCmd do
// begin
// close;
// sql.Clear;
// sql.Add('select * from SD_FormGrid_Design');
// sql.Add('where designCode=' + quotedStr(designCode));
// open;
//
// for i := mCxGridView.ColumnCount - 1 downto 0 do
// begin
// mfieldName := TcxGridDBColumn(mCxGridView.Columns[i])
// .DataBinding.FieldName;
//
// if locate('fieldName', mfieldName, []) then
// begin
// // Edit ;
// continue;
// end
// else
// begin
//
// Append;
// fieldByName('designCode').value := designCode;
//
// fieldByName('ColumnName').value := mCxGridView.Columns[i].Name;
// fieldByName('oldCaption').value := mCxGridView.Columns[i].Caption;
// fieldByName('ColumnLock').value := 0;
// fieldByName('ColumnHide').value := mCxGridView.Columns[i].Hidden;
// fieldByName('ColumnOrder').value := mCxGridView.Columns[i].SortOrder;
// fieldByName('Visible').value := mCxGridView.Columns[i].Visible;
//
// fieldByName('Valid').value := 1;
// end;
//
// fieldByName('FieldName').value :=
// trim(TcxGridDBColumn(mCxGridView.Columns[i]).DataBinding.FieldName);
// fieldByName('Caption').value := mCxGridView.Columns[i].Caption;
// fieldByName('ColumnType').value :=
// trim(TcxGridDBColumn(mCxGridView.Columns[i]).DataBinding.ValueType);
//
// if mCxGridView.Columns[i].FixedKind = fkLeftDynamic then
// begin
// fieldByName('fixColumn').value := True;
// end
// else
// begin
// fieldByName('fixColumn').value := false;
// end;
//
// fieldByName('Width').value := mCxGridView.Columns[i].Width;
//
// if mCxGridView.Columns[i].Tag=9 then
// begin
// fieldByName('mustIn').value := true;
// end
// else
// begin
// fieldByName('mustIn').value := false;
// end;
// fieldByName('IsOrder').value := 1;
//
// Post;
// end;
//
// end;
//
// /// /////////////////////////////////////////////
// //
// for i := 0 to mCxGridView.DataController.DataSet.FieldCount - 1 do
// begin
// mfieldName := trim(mCxGridView.DataController.DataSet.Fields[i]
// .FieldName);
// if mfieldName = '' then
// continue;
// with ADOCmd do
// begin
// close;
// sql.Clear;
// sql.Add('select * from SD_FormGrid_Design');
// sql.Add('where designcode=' + quotedStr(designCode));
// sql.Add('and fieldName=' + quotedStr(mfieldName));
// open;
// if RecordCount <= 0 then
// begin
// Append;
// fieldByName('designcode').value := designCode;
// fieldByName('fieldName').value := mfieldName;
// fieldByName('Caption').value := '未起用';
// fieldByName('ColumnName').value := mCxGridView.Name + mfieldName;
// fieldByName('Visible').value := false;
// fieldByName('AddFlag').value := True;
// fieldByName('Width').value := 60;
// fieldByName('ColumnOrder').value := 99;
//
// fieldByName('Valid').value := 0;
// Post;
//
// end;
// end;
// end;
// result := True;
// except
// Application.MessageBox('保存信息时发生错误', '提示信息', 0);
// end;
// end;
//
/// ////////////////////////////////////////////////////////
// 函数功能动态创建CxGrid列
/// ////////////////////////////////////////////////////////
procedure CreateCxGridColumn(application: TApplication; tv1: TcxGridDBTableView;
ADOQueryTmp: TADOQuery; mdesignCode: string);
var
ADBColumn: TcxGridDBColumn;
strField, strCaption: string;
mColumnName: string;
mCalcWidth: integer;
mWidth: integer;
mAvgWidth, mGridWidth: integer;
HeaderStyle: TcxStyle;
begin mWidth := 12;
mGridWidth := TcxGrid(TcxGridLevel(tv1.level).Control).Width;
try
HeaderStyle := TcxStyle.Create(nil);
HeaderStyle.Font := TcxGrid(TcxGridLevel(tv1.level).Control).Font;
HeaderStyle.TextColor := clBlue;
tv1.BeginUpdate;
// CreateCxGridColumn_A(application,tv1,ADOQueryTmp,mdesignCode);
with ADOQueryTmp do begin close;
sql.Clear;
sql.Add('select A.* ');
sql.Add('from SD_FormGrid_Design A');
sql.Add('where A.designCode=' + quotedStr(mdesignCode));
open;
if IsEmpty then begin exit;
end;
First;
while not Eof do
begin
ADBColumn := tv1.GetColumnByFieldName
(trim(fieldByName('fieldName').AsString));
if ADBColumn <> nil then begin
// 作废不显示
if not fieldByName('valid').AsBoolean then
begin
ADBColumn.Visible := false;
ADBColumn.Hidden := True;
Next;
continue;
end;
ADBColumn.Name := trim(tv1.Name) +
trim(fieldByName('fieldName').AsString);
if fieldByName('fixColumn').AsBoolean then
begin
ADBColumn.FixedKind := fkLeftDynamic;
end
else begin ADBColumn.FixedKind := fkNone;
end;
if fieldByName('mustIn').AsBoolean then
begin
ADBColumn.Tag := 9;
end;
if ADBColumn.Tag = 9 then
ADBColumn.Styles.Header := HeaderStyle;
ADBColumn.Hidden := fieldByName('ColumnHide').AsBoolean;
if ADBColumn.Hidden then begin ADBColumn.Visible := false;
end
else begin ADBColumn.Visible := fieldByName('Visible').AsBoolean;
end;
ADBColumn.Caption := trim(fieldByName('caption').AsString);
Next;
continue;
end;
if not fieldByName('valid').AsBoolean then
begin
ADOQueryTmp.Next;
continue;
end;
// 判断列是否已存在
mColumnName := trim(tv1.Name) + trim(fieldByName('fieldName').AsString);
if tv1.FindItemByName(mColumnName) <> nil then
begin
ADOQueryTmp.Next;
continue;
end;
// 新的列
ADBColumn := tv1.CreateColumn;
ADBColumn.DataBinding.FieldName :=
trim(fieldByName('fieldName').AsString);
ADBColumn.Caption := trim(fieldByName('Caption').AsString);
// 宽度
ADBColumn.Width := fieldByName('width').AsInteger;
if fieldByName('fixColumn').AsBoolean then
begin
ADBColumn.FixedKind := fkLeftDynamic;
end;
//
if fieldByName('mustIn').AsBoolean then
begin
ADBColumn.Tag := 9;
end;
ADBColumn.Visible := fieldByName('visible').AsBoolean;
// ADBColumn.Hidden := fieldByName('ColumnHide').AsBoolean;
ADBColumn.HeaderAlignmentHorz := taCenter;
ADBColumn.MinWidth := 100;
ADBColumn.Name := mColumnName;
ADBColumn.Options.Editing := not fieldByName('ReadOnly').AsBoolean;
ADBColumn.Options.Focusing := not fieldByName('ReadOnly').AsBoolean;
/// /////////////
ADOQueryTmp.Next;
end;
close;
end;
finally
tv1.EndUpdate;
end;
end;
// 创建查询loyout
// procedure createFindLayout(dxLayoutControl1: TdxLayoutControl;
// ADOTmp: TADOQuery; mdesignCode: string);
// var
// LayoutItem: TdxLayoutItem;
// cxTextEdit: TcxTextEdit;
// i: integer;
// begin
// with ADOTmp do
// begin
// close;
// sql.Clear;
// sql.Add('select A.* ');
// sql.Add('from SD_FormGrid_Design A');
// sql.Add('where A.designCode=' + quotedStr(mdesignCode));
// sql.Add('and (A.columnQuery=1 or A.ColumnFilter=1)');
// sql.Add('and A.valid=1');
// open;
//
// while not Eof do
// begin
// cxTextEdit := TcxTextEdit.Create(nil);
// cxTextEdit.Name := trim(fieldByName('fieldName').AsString);
// cxTextEdit.Text := '';
// cxTextEdit.Tag := 2;
//
// if (dxLayoutControl1.FindComponent('layitem' +
// trim(fieldByName('fieldName').AsString)) = nil) and
// (dxLayoutControl1.FindItem(cxTextEdit) = nil) then
// begin
// LayoutItem := dxLayoutControl1.CreateItemForControl(cxTextEdit, nil);
// LayoutItem.Name := 'layitem' + trim(fieldByName('fieldName').AsString);
// LayoutItem.CaptionOptions.Text := trim(fieldByName('caption').AsString);
// LayoutItem.Control := cxTextEdit;
//
// LayoutItem.SizeOptions.SizableHorz := True;
// LayoutItem.SizeOptions.SizableVert := True;
// end;
// Next;
// end;
//
// end;
// end;
//
function checkColumnMustIn(app: TApplication; tv1: TcxGridDBTableView;
mFlag: integer): Boolean;
var
i: integer;
client1: TClientDataSet;
begin client1 := TClientDataSet.Create(nil);
try
client1.FieldDefs.Add('fieldName', ftString, 100);
client1.FieldDefs.Add('caption', ftString, 100);
client1.FieldDefs.Add('ValueType', ftString, 100);
client1.CreateDataSet;
getColumnRelation(tv1, client1);
Result := checkColumnMustIn_A(app, tv1, client1, mFlag);
finally
client1.Free;
end;
end;
/// //////////////////////////////////////////////////////////////
///
procedure getColumnRelation(tv1: TcxGridDBTableView; client1: TClientDataSet);
var
i: integer;
begin
client1.EmptyDataSet;
for i := 0 to tv1.ColumnCount - 1 do begin client1.Append;
client1.fieldByName('fieldName').Value := tv1.Columns[i]
.DataBinding.FieldName;
client1.fieldByName('caption').Value := tv1.Columns[i].Caption;
client1.fieldByName('ValueType').Value := tv1.Columns[i]
.DataBinding.ValueType;
client1.Post;
end;
end;
end.

View File

@ -0,0 +1,20 @@
unit U_globalVar;
interface
uses
Messages;
var
gUserName:string;
gUserId:string;
gDllFileName :string;
gDllFileCaption :string;
gConString:string ;
gIsCanDesign:Boolean;
const
WM_CloseForm = WM_USER + 100 ;
implementation
end.

View File

@ -0,0 +1,4 @@
[生产车间配置]
卷条码机台标志=99
成品DLL文件=CYZZ.dll
成品DLL调用号=11

View File

@ -0,0 +1,7 @@
[FILEPATH]
FileClass=YP,AA,BB,HT
YP=D:\YP
AA=D:\AA
BB=D:\BB
HT=D:\HT
OTHER=D:\OTHER

View File

@ -0,0 +1,42 @@
-$A8
-$B-
-$C+
-$D+
-$E-
-$F-
-$G+
-$H+
-$I+
-$J-
-$K-
-$L+
-$M-
-$N+
-$O+
-$P+
-$Q-
-$R-
-$S-
-$T-
-$U-
-$V+
-$W-
-$X+
-$YD
-$Z1
-cg
-AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
-H+
-W+
-M
-$M16384,1048576
-K$00400000
-LE"c:\program files (x86)\borland\delphi7\Projects\Bpl"
-LN"c:\program files (x86)\borland\delphi7\Projects\Bpl"
-U"D:\말繫ERP"
-O"D:\말繫ERP"
-I"D:\말繫ERP"
-R"D:\말繫ERP"
-w-UNSAFE_TYPE
-w-UNSAFE_CODE
-w-UNSAFE_CAST

View File

@ -0,0 +1,138 @@
[FileVersion]
Version=7.0
[Compiler]
A=8
B=0
C=1
D=1
E=0
F=0
G=1
H=1
I=1
J=0
K=0
L=1
M=0
N=1
O=1
P=1
Q=0
R=0
S=0
T=0
U=0
V=1
W=0
X=1
Y=1
Z=1
ShowHints=1
ShowWarnings=1
UnitAliases=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;
NamespacePrefix=
SymbolDeprecated=1
SymbolLibrary=1
SymbolPlatform=1
UnitLibrary=1
UnitPlatform=1
UnitDeprecated=1
HResultCompat=1
HidingMember=1
HiddenVirtual=1
Garbage=1
BoundsError=1
ZeroNilCompat=1
StringConstTruncated=1
ForLoopVarVarPar=1
TypedConstVarPar=1
AsgToTypedConst=1
CaseLabelRange=1
ForVariable=1
ConstructingAbstract=1
ComparisonFalse=1
ComparisonTrue=1
ComparingSignedUnsigned=1
CombiningSignedUnsigned=1
UnsupportedConstruct=1
FileOpen=1
FileOpenUnitSrc=1
BadGlobalSymbol=1
DuplicateConstructorDestructor=1
InvalidDirective=1
PackageNoLink=1
PackageThreadVar=1
ImplicitImport=1
HPPEMITIgnored=1
NoRetVal=1
UseBeforeDef=1
ForLoopVarUndef=1
UnitNameMismatch=1
NoCFGFileFound=1
MessageDirective=1
ImplicitVariants=1
UnicodeToLocale=1
LocaleToUnicode=1
ImagebaseMultiple=1
SuspiciousTypecast=1
PrivatePropAccessor=1
UnsafeType=0
UnsafeCode=0
UnsafeCast=0
[Linker]
MapFile=0
OutputObjs=0
ConsoleApp=1
DebugInfo=0
RemoteSymbols=0
MinStackSize=16384
MaxStackSize=1048576
ImageBase=4194304
ExeDescription=
[Directories]
OutputDir=
UnitOutputDir=
PackageDLLOutputDir=
PackageDCPOutputDir=
SearchPath=D:\말繫ERP
Packages=vcl;rtl;vclx;indy;inet;xmlrtl;vclie;inetdbbde;inetdbxpress;dbrtl;dsnap;dsnapcon;vcldb;soaprtl;VclSmp;dbexpress;dbxcds;bdertl;vcldbx;webdsnap;websnap;adortl;ibxpress;teeui;teedb;tee;dss;visualclx;visualdbclx;vclactnband;vclshlctrls;IntrawebDB_50_70;Intraweb_50_70;dclOffice2k;Rave50CLX;Rave50VCL
Conditionals=
DebugSourceDirs=
UsePackages=0
[Parameters]
RunParams=
HostApplication=D:\땀둑룟역랙덜쯤\淃커덜쯤\낀菫介놉\虔廉셕뺍데(ShuttleSchedule.dll)\testDll.exe
Launcher=
UseLauncher=0
DebugCWD=
[Language]
ActiveLang=
ProjectLang=
RootDir=
[Version Info]
IncludeVerInfo=0
AutoIncBuild=0
MajorVer=1
MinorVer=0
Release=0
Build=0
Debug=0
PreRelease=0
Special=0
Private=0
DLL=0
Locale=2052
CodePage=936
[Version Info Keys]
CompanyName=
FileDescription=
FileVersion=1.0.0.0
InternalName=
LegalCopyright=
LegalTrademarks=
OriginalFilename=
ProductName=
ProductVersion=1.0.0.0
Comments=
[Excluded Packages]
c:\program files\borland\delphi7\Bin\DBWEBXPRT.BPL=Borland Web Wizard Package

View File

@ -0,0 +1,56 @@
library InformationBase;
uses
SysUtils,
classes,
forms,
WinTypes,
WinProcs,
midaslib,
U_GetDllForm in 'U_GetDllForm.pas',
U_DataLink in 'U_DataLink.pas' {DataLink_InformationBase: TDataModule},
U_iniParam in 'U_iniParam.pas',
U_BaseHelp in '..\..\..\public10\design\U_BaseHelp.pas' {frmBaseHelp},
U_BaseInput in '..\..\..\public10\design\U_BaseInput.pas' {frmBaseInput},
U_BaseList in '..\..\..\public10\design\U_BaseList.pas' {frmBaseList},
U_cxGridCustomCss in '..\..\..\public10\design\U_cxGridCustomCss.pas',
U_globalVar in '..\..\..\public10\design\U_globalVar.pas',
U_WindowFormdesign in '..\..\..\public10\design\U_WindowFormdesign.pas',
U_CompressionFun in '..\..\..\public10\ThreeFun\Fun\U_CompressionFun.pas',
U_RTFun in '..\..\..\public10\ThreeFun\Fun\U_RTFun.pas',
U_ZDYHelp in '..\..\..\public10\ThreeFun\Form\U_ZDYHelp.pas' {frmZDYHelp},
Unit1 in 'Unit1.pas' {Form1},
U_AttachmentUpload in '..\A00通用窗体\U_AttachmentUpload.pas' {frmFjList_RZ},
U_ClothInfoSel in '..\A00通用窗体\U_ClothInfoSel.pas' {frmClothInfoSel},
U_CompanySel in '..\A00通用窗体\U_CompanySel.pas' {frmCompanySel},
U_EmployeeSel in '..\A00通用窗体\U_EmployeeSel.pas' {frmEmployeeSel},
U_LabelMapSet in '..\A00通用窗体\U_LabelMapSet.pas' {frmLabelMapSet},
U_LabelPrint in '..\A00通用窗体\U_LabelPrint.pas' {frmLabelPrint},
U_BaseDataLink in '..\..\..\public10\design\U_BaseDataLink.pas' {BaseDataLink: TDataModule};
{$R *.res}
procedure DllEnterPoint(dwReason: DWORD); far; stdcall;
begin
DLLProc := @DLLEnterPoint;
DllEnterPoint(DLL_PROCESS_ATTACH);
end;
procedure DLLUnloadProc(Reason: Integer); register;
begin
// if (Reason = DLL_PROCESS_DETACH) or (Reason = DLL_THREAD_DETACH) then
// Application := NewDllApp;
end;
exports
GetDllForm;
begin
try
NewDllApp := Application;
DLLProc := @DLLUnloadProc;
except
end;
end.

View File

@ -0,0 +1,928 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{7B70AA99-C84C-40AE-B4AE-13C5223B874C}</ProjectGuid>
<MainSource>InformationBase.dpr</MainSource>
<Base>True</Base>
<Config Condition="'$(Config)'==''">Debug</Config>
<TargetedPlatforms>38017</TargetedPlatforms>
<AppType>Library</AppType>
<FrameworkType>VCL</FrameworkType>
<ProjectVersion>19.2</ProjectVersion>
<Platform Condition="'$(Platform)'==''">Win32</Platform>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Android64' and '$(Base)'=='true') or '$(Base_Android64)'!=''">
<Base_Android64>true</Base_Android64>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSDevice64' and '$(Base)'=='true') or '$(Base_iOSDevice64)'!=''">
<Base_iOSDevice64>true</Base_iOSDevice64>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Base)'=='true') or '$(Base_Win32)'!=''">
<Base_Win32>true</Base_Win32>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Base)'=='true') or '$(Base_Win64)'!=''">
<Base_Win64>true</Base_Win64>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Release' or '$(Cfg_1)'!=''">
<Cfg_1>true</Cfg_1>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Debug' or '$(Cfg_2)'!=''">
<Cfg_2>true</Cfg_2>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Android64' and '$(Cfg_2)'=='true') or '$(Cfg_2_Android64)'!=''">
<Cfg_2_Android64>true</Cfg_2_Android64>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSDevice64' and '$(Cfg_2)'=='true') or '$(Cfg_2_iOSDevice64)'!=''">
<Cfg_2_iOSDevice64>true</Cfg_2_iOSDevice64>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='OSX64' and '$(Cfg_2)'=='true') or '$(Cfg_2_OSX64)'!=''">
<Cfg_2_OSX64>true</Cfg_2_OSX64>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_2)'=='true') or '$(Cfg_2_Win32)'!=''">
<Cfg_2_Win32>true</Cfg_2_Win32>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Base)'!=''">
<DCC_E>false</DCC_E>
<DCC_F>false</DCC_F>
<DCC_K>false</DCC_K>
<DCC_N>true</DCC_N>
<DCC_S>false</DCC_S>
<DCC_ImageBase>00400000</DCC_ImageBase>
<DCC_DebugInformation>1</DCC_DebugInformation>
<DCC_SymbolReferenceInfo>1</DCC_SymbolReferenceInfo>
<DCC_UnitSearchPath>D:\富通ERP;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<DCC_UsePackage>vcl;rtl;vclx;indy;inet;xmlrtl;vclie;inetdbbde;inetdbxpress;dbrtl;dsnap;dsnapcon;vcldb;soaprtl;VclSmp;dbexpress;dbxcds;bdertl;vcldbx;webdsnap;websnap;adortl;ibxpress;teeui;teedb;tee;dss;visualclx;visualdbclx;vclactnband;vclshlctrls;IntrawebDB_50_70;Intraweb_50_70;dclOffice2k;Rave50CLX;Rave50VCL;$(DCC_UsePackage)</DCC_UsePackage>
<GenDll>true</GenDll>
<SanitizedProjectName>InformationBase</SanitizedProjectName>
<DCC_Namespace>Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;Data.Win;$(DCC_Namespace)</DCC_Namespace>
<VerInfo_Locale>2052</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_Android64)'!=''">
<Android_LauncherIcon192>$(BDS)\bin\Artwork\Android\FM_LauncherIcon_192x192.png</Android_LauncherIcon192>
<EnabledSysJars>android-support-v4.dex.jar;cloud-messaging.dex.jar;com-google-android-gms.play-services-ads-base.17.2.0.dex.jar;com-google-android-gms.play-services-ads-identifier.16.0.0.dex.jar;com-google-android-gms.play-services-ads-lite.17.2.0.dex.jar;com-google-android-gms.play-services-ads.17.2.0.dex.jar;com-google-android-gms.play-services-analytics-impl.16.0.8.dex.jar;com-google-android-gms.play-services-analytics.16.0.8.dex.jar;com-google-android-gms.play-services-base.16.0.1.dex.jar;com-google-android-gms.play-services-basement.16.2.0.dex.jar;com-google-android-gms.play-services-gass.17.2.0.dex.jar;com-google-android-gms.play-services-identity.16.0.0.dex.jar;com-google-android-gms.play-services-maps.16.1.0.dex.jar;com-google-android-gms.play-services-measurement-base.16.4.0.dex.jar;com-google-android-gms.play-services-measurement-sdk-api.16.4.0.dex.jar;com-google-android-gms.play-services-stats.16.0.1.dex.jar;com-google-android-gms.play-services-tagmanager-v4-impl.16.0.8.dex.jar;com-google-android-gms.play-services-tasks.16.0.1.dex.jar;com-google-android-gms.play-services-wallet.16.0.1.dex.jar;com-google-firebase.firebase-analytics.16.4.0.dex.jar;com-google-firebase.firebase-common.16.1.0.dex.jar;com-google-firebase.firebase-iid-interop.16.0.1.dex.jar;com-google-firebase.firebase-iid.17.1.1.dex.jar;com-google-firebase.firebase-measurement-connector.17.0.1.dex.jar;com-google-firebase.firebase-messaging.17.5.0.dex.jar;fmx.dex.jar;google-play-billing.dex.jar;google-play-licensing.dex.jar</EnabledSysJars>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_iOSDevice64)'!=''">
<iOS_AppStore1024>$(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_1024x1024.png</iOS_AppStore1024>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_Win32)'!=''">
<DCC_Namespace>System.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace>
<BT_BuildType>Debug</BT_BuildType>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Keys>CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName)</VerInfo_Keys>
<VerInfo_Locale>1033</VerInfo_Locale>
<Icon_MainIcon>InformationBase_Icon.ico</Icon_MainIcon>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_Win64)'!=''">
<Icon_MainIcon>InformationBase_Icon.ico</Icon_MainIcon>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1)'!=''">
<DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
<DCC_DebugInformation>0</DCC_DebugInformation>
<DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2)'!=''">
<DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
<DCC_Optimize>false</DCC_Optimize>
<DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Android64)'!=''">
<BT_BuildType>Debug</BT_BuildType>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_iOSDevice64)'!=''">
<BT_BuildType>Debug</BT_BuildType>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_OSX64)'!=''">
<BT_BuildType>Debug</BT_BuildType>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
<VerInfo_Keys>CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName)</VerInfo_Keys>
<Debugger_HostApplication>D:\Dp10RepoV1\项目代码\RTBasicsV1\A00通用模板\testDll.exe</Debugger_HostApplication>
</PropertyGroup>
<ItemGroup>
<DelphiCompile Include="$(MainSource)">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="U_GetDllForm.pas"/>
<DCCReference Include="U_DataLink.pas">
<Form>DataLink_InformationBase</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="U_iniParam.pas"/>
<DCCReference Include="..\..\..\public10\design\U_BaseHelp.pas">
<Form>frmBaseHelp</Form>
<FormType>dfm</FormType>
</DCCReference>
<DCCReference Include="..\..\..\public10\design\U_BaseInput.pas">
<Form>frmBaseInput</Form>
<FormType>dfm</FormType>
</DCCReference>
<DCCReference Include="..\..\..\public10\design\U_BaseList.pas">
<Form>frmBaseList</Form>
<FormType>dfm</FormType>
</DCCReference>
<DCCReference Include="..\..\..\public10\design\U_cxGridCustomCss.pas"/>
<DCCReference Include="..\..\..\public10\design\U_globalVar.pas"/>
<DCCReference Include="..\..\..\public10\design\U_WindowFormdesign.pas"/>
<DCCReference Include="..\..\..\public10\ThreeFun\Fun\U_CompressionFun.pas"/>
<DCCReference Include="..\..\..\public10\ThreeFun\Fun\U_RTFun.pas"/>
<DCCReference Include="..\..\..\public10\ThreeFun\Form\U_ZDYHelp.pas">
<Form>frmZDYHelp</Form>
<FormType>dfm</FormType>
</DCCReference>
<DCCReference Include="Unit1.pas">
<Form>Form1</Form>
<FormType>dfm</FormType>
</DCCReference>
<DCCReference Include="..\A00通用窗体\U_AttachmentUpload.pas">
<Form>frmFjList_RZ</Form>
<FormType>dfm</FormType>
</DCCReference>
<DCCReference Include="..\A00通用窗体\U_ClothInfoSel.pas">
<Form>frmClothInfoSel</Form>
<FormType>dfm</FormType>
</DCCReference>
<DCCReference Include="..\A00通用窗体\U_CompanySel.pas">
<Form>frmCompanySel</Form>
<FormType>dfm</FormType>
</DCCReference>
<DCCReference Include="..\A00通用窗体\U_EmployeeSel.pas">
<Form>frmEmployeeSel</Form>
<FormType>dfm</FormType>
</DCCReference>
<DCCReference Include="..\A00通用窗体\U_LabelMapSet.pas">
<Form>frmLabelMapSet</Form>
<FormType>dfm</FormType>
</DCCReference>
<DCCReference Include="..\A00通用窗体\U_LabelPrint.pas">
<Form>frmLabelPrint</Form>
<FormType>dfm</FormType>
</DCCReference>
<DCCReference Include="..\..\..\public10\design\U_BaseDataLink.pas">
<Form>BaseDataLink</Form>
<FormType>dfm</FormType>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<BuildConfiguration Include="Debug">
<Key>Cfg_2</Key>
<CfgParent>Base</CfgParent>
</BuildConfiguration>
<BuildConfiguration Include="Base">
<Key>Base</Key>
</BuildConfiguration>
<BuildConfiguration Include="Release">
<Key>Cfg_1</Key>
<CfgParent>Base</CfgParent>
</BuildConfiguration>
</ItemGroup>
<ProjectExtensions>
<Borland.Personality>Delphi.Personality.12</Borland.Personality>
<Borland.ProjectType/>
<BorlandProject>
<Delphi.Personality>
<Source>
<Source Name="MainSource">InformationBase.dpr</Source>
</Source>
</Delphi.Personality>
<Platforms>
<Platform value="Android64">True</Platform>
<Platform value="iOSDevice64">True</Platform>
<Platform value="Linux64">True</Platform>
<Platform value="OSX64">True</Platform>
<Platform value="Win32">True</Platform>
<Platform value="Win64">False</Platform>
</Platforms>
<Deployment Version="3">
<DeployFile LocalName="InformationBase.dll" Configuration="Debug" Class="ProjectOutput">
<Platform Name="Win32">
<RemoteName>InformationBase.dll</RemoteName>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployClass Name="AdditionalDebugSymbols">
<Platform Name="OSX32">
<Operation>1</Operation>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidClassesDexFile">
<Platform Name="Android">
<RemoteDir>classes</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>classes</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidFileProvider">
<Platform Name="Android">
<RemoteDir>res\xml</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\xml</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidGDBServer">
<Platform Name="Android">
<RemoteDir>library\lib\armeabi-v7a</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidLibnativeArmeabiFile">
<Platform Name="Android">
<RemoteDir>library\lib\armeabi</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>library\lib\armeabi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidLibnativeArmeabiv7aFile">
<Platform Name="Android64">
<RemoteDir>library\lib\armeabi-v7a</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidLibnativeMipsFile">
<Platform Name="Android">
<RemoteDir>library\lib\mips</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>library\lib\mips</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidServiceOutput">
<Platform Name="Android">
<RemoteDir>library\lib\armeabi-v7a</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>library\lib\arm64-v8a</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidServiceOutput_Android32">
<Platform Name="Android64">
<RemoteDir>library\lib\armeabi-v7a</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidSplashImageDef">
<Platform Name="Android">
<RemoteDir>res\drawable</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidSplashStyles">
<Platform Name="Android">
<RemoteDir>res\values</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\values</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidSplashStylesV21">
<Platform Name="Android">
<RemoteDir>res\values-v21</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\values-v21</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_Colors">
<Platform Name="Android">
<RemoteDir>res\values</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\values</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_DefaultAppIcon">
<Platform Name="Android">
<RemoteDir>res\drawable</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon144">
<Platform Name="Android">
<RemoteDir>res\drawable-xxhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-xxhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon192">
<Platform Name="Android">
<RemoteDir>res\drawable-xxxhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-xxxhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon36">
<Platform Name="Android">
<RemoteDir>res\drawable-ldpi</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-ldpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon48">
<Platform Name="Android">
<RemoteDir>res\drawable-mdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-mdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon72">
<Platform Name="Android">
<RemoteDir>res\drawable-hdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-hdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon96">
<Platform Name="Android">
<RemoteDir>res\drawable-xhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-xhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_NotificationIcon24">
<Platform Name="Android">
<RemoteDir>res\drawable-mdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-mdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_NotificationIcon36">
<Platform Name="Android">
<RemoteDir>res\drawable-hdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-hdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_NotificationIcon48">
<Platform Name="Android">
<RemoteDir>res\drawable-xhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-xhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_NotificationIcon72">
<Platform Name="Android">
<RemoteDir>res\drawable-xxhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-xxhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_NotificationIcon96">
<Platform Name="Android">
<RemoteDir>res\drawable-xxxhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-xxxhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_SplashImage426">
<Platform Name="Android">
<RemoteDir>res\drawable-small</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-small</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_SplashImage470">
<Platform Name="Android">
<RemoteDir>res\drawable-normal</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-normal</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_SplashImage640">
<Platform Name="Android">
<RemoteDir>res\drawable-large</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-large</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_SplashImage960">
<Platform Name="Android">
<RemoteDir>res\drawable-xlarge</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\drawable-xlarge</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_Strings">
<Platform Name="Android">
<RemoteDir>res\values</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>res\values</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="DebugSymbols">
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
<Platform Name="OSX32">
<Operation>1</Operation>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
</Platform>
</DeployClass>
<DeployClass Name="DependencyFramework">
<Platform Name="OSX32">
<Operation>1</Operation>
<Extensions>.framework</Extensions>
</Platform>
<Platform Name="OSX64">
<Operation>1</Operation>
<Extensions>.framework</Extensions>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
</Platform>
</DeployClass>
<DeployClass Name="DependencyModule">
<Platform Name="OSX32">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="OSX64">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
<Extensions>.dll;.bpl</Extensions>
</Platform>
</DeployClass>
<DeployClass Required="true" Name="DependencyPackage">
<Platform Name="iOSDevice32">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="iOSDevice64">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="OSX32">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="OSX64">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
<Extensions>.bpl</Extensions>
</Platform>
</DeployClass>
<DeployClass Name="File">
<Platform Name="Android">
<Operation>0</Operation>
</Platform>
<Platform Name="Android64">
<Operation>0</Operation>
</Platform>
<Platform Name="iOSDevice32">
<Operation>0</Operation>
</Platform>
<Platform Name="iOSDevice64">
<Operation>0</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>0</Operation>
</Platform>
<Platform Name="OSX32">
<Operation>0</Operation>
</Platform>
<Platform Name="OSX64">
<Operation>0</Operation>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iOS_AppStore1024">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPad_AppIcon152">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPad_AppIcon167">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPad_Launch2x">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPad_LaunchDark2x">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPad_Notification40">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPad_Setting58">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPad_SpotLight80">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_AppIcon120">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_AppIcon180">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_Launch2x">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_Launch3x">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_LaunchDark2x">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_LaunchDark3x">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\LaunchScreenImage.imageset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_Notification40">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_Notification60">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_Setting58">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_Setting87">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_Spotlight120">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_Spotlight80">
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<RemoteDir>..\$(PROJECTNAME).launchscreen\Assets\AppIcon.appiconset</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectAndroidManifest">
<Platform Name="Android">
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSDeviceDebug">
<Platform Name="iOSDevice32">
<RemoteDir>..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSDevice64">
<RemoteDir>..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSEntitlements"/>
<DeployClass Name="ProjectiOSInfoPList"/>
<DeployClass Name="ProjectiOSLaunchScreen"/>
<DeployClass Name="ProjectiOSResource">
<Platform Name="iOSDevice32">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSDevice64">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectOSXDebug"/>
<DeployClass Name="ProjectOSXEntitlements"/>
<DeployClass Name="ProjectOSXInfoPList"/>
<DeployClass Name="ProjectOSXResource">
<Platform Name="OSX32">
<RemoteDir>Contents\Resources</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="OSX64">
<RemoteDir>Contents\Resources</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Required="true" Name="ProjectOutput">
<Platform Name="Android">
<RemoteDir>library\lib\armeabi-v7a</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Android64">
<RemoteDir>library\lib\arm64-v8a</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="iOSDevice32">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSDevice64">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
<Platform Name="Linux64">
<Operation>1</Operation>
</Platform>
<Platform Name="OSX32">
<Operation>1</Operation>
</Platform>
<Platform Name="OSX64">
<Operation>1</Operation>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectOutput_Android32">
<Platform Name="Android64">
<RemoteDir>library\lib\armeabi-v7a</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectUWPManifest">
<Platform Name="Win32">
<Operation>1</Operation>
</Platform>
<Platform Name="Win64">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="UWP_DelphiLogo150">
<Platform Name="Win32">
<RemoteDir>Assets</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Win64">
<RemoteDir>Assets</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="UWP_DelphiLogo44">
<Platform Name="Win32">
<RemoteDir>Assets</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Win64">
<RemoteDir>Assets</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<ProjectRoot Platform="iOSDevice64" Name="$(PROJECTNAME).app"/>
<ProjectRoot Platform="Win64" Name="$(PROJECTNAME)"/>
<ProjectRoot Platform="iOSDevice32" Name="$(PROJECTNAME).app"/>
<ProjectRoot Platform="Linux64" Name="$(PROJECTNAME)"/>
<ProjectRoot Platform="Win32" Name="$(PROJECTNAME)"/>
<ProjectRoot Platform="OSX32" Name="$(PROJECTNAME)"/>
<ProjectRoot Platform="Android" Name="$(PROJECTNAME)"/>
<ProjectRoot Platform="OSX64" Name="$(PROJECTNAME)"/>
<ProjectRoot Platform="iOSSimulator" Name="$(PROJECTNAME).app"/>
<ProjectRoot Platform="Android64" Name="$(PROJECTNAME)"/>
</Deployment>
</BorlandProject>
<ProjectFileVersion>12</ProjectFileVersion>
</ProjectExtensions>
<Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/>
<Import Project="$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj" Condition="Exists('$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj')"/>
<Import Project="$(MSBuildProjectName).deployproj" Condition="Exists('$(MSBuildProjectName).deployproj')"/>
</Project>

View File

@ -0,0 +1,104 @@
<?xml version="1.0" encoding="utf-8"?>
<BorlandProject>
<Transactions>
<Transaction>1899-12-30 00:00:00.000.873,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LbaelMapSet.pas</Transaction>
<Transaction>1899-12-30 00:00:00.000.975,=D:\Dp10Repo\public10\ThreeFun\Fun\U_CompressionFun.pas</Transaction>
<Transaction>1899-12-30 00:00:00.000.844,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_AttachmentUpload.pas</Transaction>
<Transaction>1899-12-30 00:00:00.000.135,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LabelPrint.pas</Transaction>
<Transaction>1899-12-30 00:00:00.000.716,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ProcessSel.pas</Transaction>
<Transaction>1899-12-30 00:00:00.000.692,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.dfm</Transaction>
<Transaction>1899-12-30 00:00:00.000.832,=D:\Dp10Repo\public10\design\U_BaseHelp.pas</Transaction>
<Transaction>1899-12-30 00:00:00.000.493,=D:\Dp10Repo\项目代码\RTBasics\A00通用模板\Unit1.pas</Transaction>
<Transaction>1899-12-30 00:00:00.000.149,=D:\Dp10Repo\public10\ThreeFun\Form\U_ZDYHelp.pas</Transaction>
<Transaction>1899-12-30 00:00:00.000.339,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.pas</Transaction>
<Transaction>1899-12-30 00:00:00.000.048,=D:\Dp10Repo\public10\design\U_BaseList.pas</Transaction>
<Transaction>1899-12-30 00:00:00.000.135,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ZDYHelp.pas=</Transaction>
<Transaction>1899-12-30 00:00:00.000.939,=D:\Dp10Repo\public10\design\U_BaseInput.pas</Transaction>
<Transaction>1899-12-30 00:00:00.000.487,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ZDYHelpSel.pas=</Transaction>
<Transaction>1899-12-30 00:00:00.000.086,=D:\Dp10Repo\public10\design\U_cxGridCustomCss.pas</Transaction>
<Transaction>1899-12-30 00:00:00.000.123,=D:\Dp10Repo\public10\design\U_globalVar.pas</Transaction>
<Transaction>1899-12-30 00:00:00.000.736,D:\Dp10Repo\项目代码\睿特\新DLL初始化(CSH.dll)\U_ModuleNote.pas=</Transaction>
<Transaction>1899-12-30 00:00:00.000.931,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LabelMapSet.pas</Transaction>
<Transaction>1899-12-30 00:00:00.000.616,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LablePrint.dfm=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.dfm</Transaction>
<Transaction>1899-12-30 00:00:00.000.015,=D:\Dp10Repo\public10\ThreeFun\Fun\U_RTFun.pas</Transaction>
<Transaction>1899-12-30 00:00:00.000.178,=D:\Dp10Repo\public10\design\U_WindowFormdesign.pas</Transaction>
<Transaction>1899-12-30 00:00:00.000.692,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_ClothInfoSel.pas</Transaction>
<Transaction>1899-12-30 00:00:00.000.616,D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_LablePrint.pas=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas</Transaction>
<Transaction>1899-12-30 00:00:00.000.092,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_EmployeeSel.pas</Transaction>
<Transaction>1899-12-30 00:00:00.000.734,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas</Transaction>
<Transaction>1899-12-30 00:00:00.000.422,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas</Transaction>
<Transaction>1899-12-30 00:00:00.000.630,=D:\Dp10Repo\项目代码\RTBasics\A00通用窗体\U_CompanySel.pas</Transaction>
<Transaction>2024-03-15 11:53:29.905,=D:\Dp10RepoV1\public10\design\U_BaseDataLink.pas</Transaction>
</Transactions>
<ProjectSortOrder AutoSort="0" SortType="0">
<File Path="android-support-v4.dex.jar"/>
<File Path="cloud-messaging.dex.jar"/>
<File Path="com-google-android-gms.play-services-ads-base.17.2.0.dex.jar"/>
<File Path="com-google-android-gms.play-services-ads-identifier.16.0.0.dex.jar"/>
<File Path="com-google-android-gms.play-services-ads-lite.17.2.0.dex.jar"/>
<File Path="com-google-android-gms.play-services-ads.17.2.0.dex.jar"/>
<File Path="com-google-android-gms.play-services-analytics-impl.16.0.8.dex.jar"/>
<File Path="com-google-android-gms.play-services-analytics.16.0.8.dex.jar"/>
<File Path="com-google-android-gms.play-services-base.16.0.1.dex.jar"/>
<File Path="com-google-android-gms.play-services-basement.16.2.0.dex.jar"/>
<File Path="com-google-android-gms.play-services-gass.17.2.0.dex.jar"/>
<File Path="com-google-android-gms.play-services-identity.16.0.0.dex.jar"/>
<File Path="com-google-android-gms.play-services-maps.16.1.0.dex.jar"/>
<File Path="com-google-android-gms.play-services-measurement-base.16.4.0.dex.jar"/>
<File Path="com-google-android-gms.play-services-measurement-sdk-api.16.4.0.dex.jar"/>
<File Path="com-google-android-gms.play-services-stats.16.0.1.dex.jar"/>
<File Path="com-google-android-gms.play-services-tagmanager-v4-impl.16.0.8.dex.jar"/>
<File Path="com-google-android-gms.play-services-tasks.16.0.1.dex.jar"/>
<File Path="com-google-android-gms.play-services-wallet.16.0.1.dex.jar"/>
<File Path="com-google-firebase.firebase-analytics.16.4.0.dex.jar"/>
<File Path="com-google-firebase.firebase-common.16.1.0.dex.jar"/>
<File Path="com-google-firebase.firebase-iid-interop.16.0.1.dex.jar"/>
<File Path="com-google-firebase.firebase-iid.17.1.1.dex.jar"/>
<File Path="com-google-firebase.firebase-measurement-connector.17.0.1.dex.jar"/>
<File Path="com-google-firebase.firebase-messaging.17.5.0.dex.jar"/>
<File Path="fmx.dex.jar"/>
<File Path="google-play-billing.dex.jar"/>
<File Path="google-play-licensing.dex.jar"/>
<File Path="..\..\RTBasicsV1"/>
<File Path="..\A00通用窗体"/>
<File Path="..\A00通用窗体\U_AttachmentUpload.pas"/>
<File Path="..\A00通用窗体\U_AttachmentUpload.dfm"/>
<File Path="..\A00通用窗体\U_ClothInfoSel.pas"/>
<File Path="..\A00通用窗体\U_ClothInfoSel.dfm"/>
<File Path="..\A00通用窗体\U_EmployeeSel.pas"/>
<File Path="..\A00通用窗体\U_EmployeeSel.dfm"/>
<File Path="..\A00通用窗体\U_CompanySel.pas"/>
<File Path="..\A00通用窗体\U_CompanySel.dfm"/>
<File Path="..\A00通用窗体\U_LabelMapSet.pas"/>
<File Path="..\A00通用窗体\U_LabelMapSet.dfm"/>
<File Path="..\A00通用窗体\U_LabelPrint.pas"/>
<File Path="..\A00通用窗体\U_LabelPrint.dfm"/>
<File Path="D:\Dp10RepoV1"/>
<File Path="..\..\..\public10"/>
<File Path="..\..\..\public10\design"/>
<File Path="..\..\..\public10\design\U_BaseDataLink.pas"/>
<File Path="..\..\..\public10\design\U_BaseDataLink.dfm"/>
<File Path="..\..\..\public10\design\U_BaseHelp.pas"/>
<File Path="..\..\..\public10\design\U_BaseHelp.dfm"/>
<File Path="..\..\..\public10\design\U_BaseInput.pas"/>
<File Path="..\..\..\public10\design\U_BaseInput.dfm"/>
<File Path="..\..\..\public10\design\U_BaseList.pas"/>
<File Path="..\..\..\public10\design\U_BaseList.dfm"/>
<File Path="..\..\..\public10\design\U_cxGridCustomCss.pas"/>
<File Path="..\..\..\public10\design\U_globalVar.pas"/>
<File Path="..\..\..\public10\design\U_WindowFormdesign.pas"/>
<File Path="..\..\..\public10\ThreeFun"/>
<File Path="..\..\..\public10\ThreeFun\Form"/>
<File Path="..\..\..\public10\ThreeFun\Form\U_ZDYHelp.pas"/>
<File Path="..\..\..\public10\ThreeFun\Form\U_ZDYHelp.dfm"/>
<File Path="..\..\..\public10\ThreeFun\Fun"/>
<File Path="..\..\..\public10\ThreeFun\Fun\U_CompressionFun.pas"/>
<File Path="..\..\..\public10\ThreeFun\Fun\U_RTFun.pas"/>
<File Path="U_DataLink.pas"/>
<File Path="U_DataLink.dfm"/>
<File Path="U_GetDllForm.pas"/>
<File Path="U_iniParam.pas"/>
<File Path="Unit1.pas"/>
<File Path="Unit1.dfm"/>
</ProjectSortOrder>
</BorlandProject>

Binary file not shown.

After

Width:  |  Height:  |  Size: 766 B

View File

@ -0,0 +1,23 @@
#------------------------------------------------------------------------------
VERSION = BWS.01
#------------------------------------------------------------------------------
!ifndef ROOT
ROOT = $(MAKEDIR)\..
!endif
#------------------------------------------------------------------------------
MAKE = $(ROOT)\bin\make.exe -$(MAKEFLAGS) -f$**
DCC = $(ROOT)\bin\dcc32.exe $**
BRCC = $(ROOT)\bin\brcc32.exe $**
#------------------------------------------------------------------------------
PROJECTS = testDll.exe ProductPrice.dll
#------------------------------------------------------------------------------
default: $(PROJECTS)
#------------------------------------------------------------------------------
testDll.exe: testDll.dpr
$(DCC)
ProductPrice.dll: ProductPrice.dpr
$(DCC)

View File

@ -0,0 +1,48 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{D75EC075-444C-40C2-8ACB-0AAD801B39FF}</ProjectGuid>
</PropertyGroup>
<ItemGroup>
<Projects Include="InformationBase.dproj">
<Dependencies/>
</Projects>
<Projects Include="testDll.dproj">
<Dependencies/>
</Projects>
</ItemGroup>
<ProjectExtensions>
<Borland.Personality>Default.Personality.12</Borland.Personality>
<Borland.ProjectType/>
<BorlandProject>
<Default.Personality/>
</BorlandProject>
</ProjectExtensions>
<Target Name="InformationBase">
<MSBuild Projects="InformationBase.dproj"/>
</Target>
<Target Name="InformationBase:Clean">
<MSBuild Projects="InformationBase.dproj" Targets="Clean"/>
</Target>
<Target Name="InformationBase:Make">
<MSBuild Projects="InformationBase.dproj" Targets="Make"/>
</Target>
<Target Name="testDll">
<MSBuild Projects="testDll.dproj"/>
</Target>
<Target Name="testDll:Clean">
<MSBuild Projects="testDll.dproj" Targets="Clean"/>
</Target>
<Target Name="testDll:Make">
<MSBuild Projects="testDll.dproj" Targets="Make"/>
</Target>
<Target Name="Build">
<CallTarget Targets="InformationBase;testDll"/>
</Target>
<Target Name="Clean">
<CallTarget Targets="InformationBase:Clean;testDll:Clean"/>
</Target>
<Target Name="Make">
<CallTarget Targets="InformationBase:Make;testDll:Make"/>
</Target>
<Import Project="$(BDS)\Bin\CodeGear.Group.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Group.Targets')"/>
</Project>

Some files were not shown because too many files have changed in this diff Show More