440 lines
10 KiB
ObjectPascal
440 lines
10 KiB
ObjectPascal
![]() |
unit U_KHDYInPut;
|
|||
|
|
|||
|
interface
|
|||
|
|
|||
|
uses
|
|||
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|||
|
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
|
|||
|
cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView,
|
|||
|
cxGridTableView, cxGridDBTableView, cxClasses, cxControls,
|
|||
|
cxGridCustomView, cxGrid, cxMemo, cxRichEdit, ComCtrls, cxContainer,
|
|||
|
cxTextEdit, cxMaskEdit, cxButtonEdit, StdCtrls, ToolWin, DBClient, ADODB,
|
|||
|
ExtCtrls, BtnEdit, cxCalendar,StrUtils, cxDropDownEdit,jpeg,
|
|||
|
IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdFTP, cxPC,
|
|||
|
cxGridCustomPopupMenu, cxGridPopupMenu, FTComboBox;
|
|||
|
|
|||
|
type
|
|||
|
TfrmKHDYInPut = class(TForm)
|
|||
|
ToolBar1: TToolBar;
|
|||
|
TBClose: TToolButton;
|
|||
|
ScrollBox1: TScrollBox;
|
|||
|
ADOTemp: TADOQuery;
|
|||
|
ADOCmd: TADOQuery;
|
|||
|
ADOQuery1: TADOQuery;
|
|||
|
TBSave: TToolButton;
|
|||
|
Panel3: TPanel;
|
|||
|
Label1: TLabel;
|
|||
|
Label10: TLabel;
|
|||
|
Label34: TLabel;
|
|||
|
Label4: TLabel;
|
|||
|
Note: TRichEdit;
|
|||
|
DYDate: TDateTimePicker;
|
|||
|
FactoryName: TBtnEditA;
|
|||
|
CPName: TEdit;
|
|||
|
Label5: TLabel;
|
|||
|
StyleNo: TEdit;
|
|||
|
Label6: TLabel;
|
|||
|
KHName: TBtnEditA;
|
|||
|
Label8: TLabel;
|
|||
|
DuiSeGuangYuan: TBtnEditA;
|
|||
|
Label9: TLabel;
|
|||
|
ChiCunNote: TBtnEditA;
|
|||
|
Label11: TLabel;
|
|||
|
ColorHZ: TEdit;
|
|||
|
Label12: TLabel;
|
|||
|
HXHZ: TEdit;
|
|||
|
Label13: TLabel;
|
|||
|
DYPerson: TBtnEditA;
|
|||
|
Label2: TLabel;
|
|||
|
KHNameJC: TEdit;
|
|||
|
Label3: TLabel;
|
|||
|
YWY: TEdit;
|
|||
|
ToolBar2: TToolBar;
|
|||
|
ToolButton1: TToolButton;
|
|||
|
ToolButton2: TToolButton;
|
|||
|
cxGrid1: TcxGrid;
|
|||
|
Tv1: TcxGridDBTableView;
|
|||
|
v1Column14: TcxGridDBColumn;
|
|||
|
v1Column20: TcxGridDBColumn;
|
|||
|
v1SOrddefstr1: TcxGridDBColumn;
|
|||
|
cxGrid1Level1: TcxGridLevel;
|
|||
|
v1Column1: TcxGridDBColumn;
|
|||
|
DataSource1: TDataSource;
|
|||
|
Order_Sub: TClientDataSet;
|
|||
|
Label7: TLabel;
|
|||
|
GDPerson: TBtnEditA;
|
|||
|
DYNo: TEdit;
|
|||
|
procedure TBCloseClick(Sender: TObject);
|
|||
|
procedure FormShow(Sender: TObject);
|
|||
|
procedure TBSaveClick(Sender: TObject);
|
|||
|
procedure FactoryNameBtnClick(Sender: TObject);
|
|||
|
procedure KHNameBtnClick(Sender: TObject);
|
|||
|
procedure DuiSeGuangYuanBtnClick(Sender: TObject);
|
|||
|
procedure ChiCunNoteBtnClick(Sender: TObject);
|
|||
|
procedure DYPersonBtnClick(Sender: TObject);
|
|||
|
procedure ToolButton1Click(Sender: TObject);
|
|||
|
procedure ToolButton2Click(Sender: TObject);
|
|||
|
procedure GDPersonBtnClick(Sender: TObject);
|
|||
|
private
|
|||
|
procedure InitData();
|
|||
|
function SaveData():Boolean;
|
|||
|
{ Private declarations }
|
|||
|
public
|
|||
|
canshu1:String;
|
|||
|
PState,CopyInt:Integer;
|
|||
|
FMainId:String;
|
|||
|
{ Public declarations }
|
|||
|
end;
|
|||
|
|
|||
|
var
|
|||
|
frmKHDYInPut: TfrmKHDYInPut;
|
|||
|
implementation
|
|||
|
uses
|
|||
|
U_DataLink,U_ZDYHelp,U_RTFun,U_ZDYHelpSel,U_GYSList, U_ZdyAttachment;
|
|||
|
|
|||
|
{$R *.dfm}
|
|||
|
|
|||
|
procedure TfrmKHDYInPut.TBCloseClick(Sender: TObject);
|
|||
|
begin
|
|||
|
Close;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmKHDYInPut.InitData();
|
|||
|
begin
|
|||
|
with ADOQuery1 do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('select * from KH_DaYang where DYId='''+Trim(FMainId)+'''');
|
|||
|
Open;
|
|||
|
end;
|
|||
|
SCSHDataNew(ADOQuery1,Panel3,0);
|
|||
|
DYNo.Text:=trim(ADOQuery1.fieldbyname('DYNo').AsString);
|
|||
|
with ADOQuery1 do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('select * from KH_DaYang_MX where DYId='''+Trim(FMainId)+'''');
|
|||
|
Open;
|
|||
|
end;
|
|||
|
SCreateCDS20(ADOQuery1,Order_Sub);
|
|||
|
SInitCDSData20(ADOQuery1,Order_Sub);
|
|||
|
if PState=0 then
|
|||
|
begin
|
|||
|
DYDate.Date:=SGetServerDate(ADOTemp);
|
|||
|
end;
|
|||
|
if CopyInt=99 then
|
|||
|
begin
|
|||
|
FMainId:='';
|
|||
|
with Order_Sub do
|
|||
|
begin
|
|||
|
first;
|
|||
|
while not eof do
|
|||
|
begin
|
|||
|
edit;
|
|||
|
fieldbyname('DYID').AsString:='';
|
|||
|
Fieldbyname('DMId').AsString:='';
|
|||
|
next;
|
|||
|
end;
|
|||
|
end;
|
|||
|
end;
|
|||
|
end;
|
|||
|
|
|||
|
|
|||
|
procedure TfrmKHDYInPut.FormShow(Sender: TObject);
|
|||
|
begin
|
|||
|
InitData();
|
|||
|
end;
|
|||
|
|
|||
|
function TfrmKHDYInPut.SaveData():Boolean;
|
|||
|
var
|
|||
|
maxno,maxsubno:String;
|
|||
|
begin
|
|||
|
Result:=False;
|
|||
|
try
|
|||
|
ADOCmd.Connection.BeginTrans;
|
|||
|
///<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
if Trim(FMainId)='' then
|
|||
|
begin
|
|||
|
if GetLSNo(ADOCmd,maxno,'SK','KH_DaYang',3,1)=False then
|
|||
|
begin
|
|||
|
ADOCmd.Connection.RollbackTrans;
|
|||
|
Application.MessageBox('ȡ<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
|
|||
|
Exit;
|
|||
|
end;
|
|||
|
end else
|
|||
|
begin
|
|||
|
maxno:=Trim(FMainId);
|
|||
|
end;
|
|||
|
with ADOCmd do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
SQL.Add('select * from KH_DaYang where DYId='''+Trim(FMainId)+'''');
|
|||
|
Open;
|
|||
|
end;
|
|||
|
with ADOCmd do
|
|||
|
begin
|
|||
|
if Trim(FMainId)='' then
|
|||
|
begin
|
|||
|
Append;
|
|||
|
if CopyInt=99 then
|
|||
|
begin
|
|||
|
FieldByName('DYNo').Value:=trim(DYNo.Text);
|
|||
|
end
|
|||
|
else
|
|||
|
FieldByName('DYNo').Value:='SK'+Trim(KHNameJC.Text)+Copy(Trim(maxno),3,9);
|
|||
|
end
|
|||
|
else begin
|
|||
|
Edit;
|
|||
|
FieldByName('DYNo').Value:=trim(DYNo.Text);
|
|||
|
end;
|
|||
|
FieldByName('DYId').Value:=Trim(maxno);
|
|||
|
if Trim(FMainId)='' then
|
|||
|
begin
|
|||
|
FieldByName('Filler').Value:=Trim(DName);
|
|||
|
FieldByName('FillerCode').Value:=Trim(DCode);
|
|||
|
end else
|
|||
|
begin
|
|||
|
FieldByName('Editer').Value:=Trim(DName);
|
|||
|
FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp);
|
|||
|
end;
|
|||
|
RTSetsavedata(ADOCmd,'KH_DaYang',Panel3,0);
|
|||
|
FieldByName('Valid').Value:='Y';
|
|||
|
Post;
|
|||
|
end;
|
|||
|
///<2F><><EFBFBD><EFBFBD><EFBFBD>ӱ<EFBFBD>
|
|||
|
with Order_Sub do
|
|||
|
begin
|
|||
|
First;
|
|||
|
while not Eof do
|
|||
|
begin
|
|||
|
if Trim(Order_Sub.fieldbyname('DMId').AsString)='' then
|
|||
|
begin
|
|||
|
if GetLSNo(ADOCmd,maxsubno,'DM','KH_DaYang_MX',3,1)=False then
|
|||
|
begin
|
|||
|
ADOCmd.Connection.RollbackTrans;
|
|||
|
Application.MessageBox('ȡ<><C8A1><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ',0);
|
|||
|
Exit;
|
|||
|
end;
|
|||
|
end else
|
|||
|
begin
|
|||
|
maxsubno:=Trim(Order_Sub.fieldbyname('DMId').AsString);
|
|||
|
end;
|
|||
|
with ADOCmd do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
SQL.Clear;
|
|||
|
sql.Add('select * from KH_DaYang_MX where DMId='''+Trim(maxsubno)+'''');
|
|||
|
Open;
|
|||
|
end;
|
|||
|
with ADOCmd do
|
|||
|
begin
|
|||
|
if Trim(Order_Sub.fieldbyname('DMId').AsString)='' then
|
|||
|
Append
|
|||
|
else
|
|||
|
Edit;
|
|||
|
FieldByName('DYId').Value:=Trim(maxno);
|
|||
|
FieldByName('DMId').Value:=Trim(maxsubno);
|
|||
|
RTSetSaveDataCDS(ADOCmd,Tv1,Order_Sub,'KH_DaYang_MX',0);
|
|||
|
Post;
|
|||
|
end;
|
|||
|
Order_Sub.Edit;
|
|||
|
Order_Sub.FieldByName('DMId').Value:=Trim(maxsubno);
|
|||
|
//Order_Sub.Post;
|
|||
|
Next;
|
|||
|
end;
|
|||
|
end;
|
|||
|
ADOCmd.Connection.CommitTrans;
|
|||
|
FMainId:=Trim(maxno);
|
|||
|
Result:=True;
|
|||
|
except
|
|||
|
Result:=False;
|
|||
|
ADOCmd.Connection.RollbackTrans;
|
|||
|
Application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ',0);
|
|||
|
end;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmKHDYInPut.TBSaveClick(Sender: TObject);
|
|||
|
begin
|
|||
|
ToolBar1.SetFocus;
|
|||
|
if Trim(FactoryName.Text)='' then
|
|||
|
begin
|
|||
|
Application.MessageBox('<27>ӹ<EFBFBD><D3B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ',0);
|
|||
|
Exit;
|
|||
|
end;
|
|||
|
if Trim(CPName.Text)='' then
|
|||
|
begin
|
|||
|
Application.MessageBox('Ʒ<><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
|
|||
|
Exit;
|
|||
|
end;
|
|||
|
if Trim(KHName.Text)='' then
|
|||
|
begin
|
|||
|
Application.MessageBox('<27>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
|
|||
|
Exit;
|
|||
|
end;
|
|||
|
if Trim(DYPerson.Text)='' then
|
|||
|
begin
|
|||
|
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>˲<EFBFBD><CBB2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
|
|||
|
Exit;
|
|||
|
end;
|
|||
|
if Trim(GDPerson.Text)='' then
|
|||
|
begin
|
|||
|
Application.MessageBox('<27><><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
|
|||
|
Exit;
|
|||
|
end;
|
|||
|
if SaveData() then
|
|||
|
begin
|
|||
|
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>','<27><>ʾ',0);
|
|||
|
Modalresult:=1;
|
|||
|
end;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmKHDYInPut.FactoryNameBtnClick(Sender: TObject);
|
|||
|
begin
|
|||
|
try
|
|||
|
frmGYSList:=TfrmGYSList.Create(Application);
|
|||
|
with frmGYSList do
|
|||
|
begin
|
|||
|
if ShowModal=1 then
|
|||
|
begin
|
|||
|
Self.FactoryName.Text:=Trim(frmGYSList.CDS_HZ.fieldbyname('ZdyName').AsString);
|
|||
|
Self.FactoryName.TxtCode:=Trim(frmGYSList.CDS_HZ.fieldbyname('ZdyCode').AsString);
|
|||
|
end;
|
|||
|
end;
|
|||
|
finally
|
|||
|
frmGYSList.Free;
|
|||
|
end;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmKHDYInPut.KHNameBtnClick(Sender: TObject);
|
|||
|
begin
|
|||
|
try
|
|||
|
frmZdyAttachment:=TfrmZdyAttachment.Create(Application);
|
|||
|
with frmZdyAttachment do
|
|||
|
begin
|
|||
|
fkhType:='';
|
|||
|
if ShowModal=1 then
|
|||
|
begin
|
|||
|
KHName.Text:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString);
|
|||
|
KHName.TxtCode:=Trim(CDS_HZ.fieldbyname('ZDYCode').AsString);
|
|||
|
KHNameJC.Text:=Trim(CDS_HZ.fieldbyname('zdyNameZ').AsString);
|
|||
|
YWY.Text:=Trim(CDS_HZ.fieldbyname('DEFstr5').AsString);
|
|||
|
end;
|
|||
|
end;
|
|||
|
finally
|
|||
|
frmZdyAttachment.Free;
|
|||
|
end;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmKHDYInPut.DuiSeGuangYuanBtnClick(Sender: TObject);
|
|||
|
begin
|
|||
|
try
|
|||
|
frmZDYHelp:=TfrmZDYHelp.Create(Application);
|
|||
|
with frmZDYHelp do
|
|||
|
begin
|
|||
|
flag:='DuiSeGuangYuan';
|
|||
|
flagname:='<27><>ɫ<EFBFBD><C9AB>Դ';
|
|||
|
if ShowModal=1 then
|
|||
|
begin
|
|||
|
DuiSeGuangYuan.Text:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString);
|
|||
|
end;
|
|||
|
end;
|
|||
|
finally
|
|||
|
frmZDYHelp.Free;
|
|||
|
end;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmKHDYInPut.ChiCunNoteBtnClick(Sender: TObject);
|
|||
|
begin
|
|||
|
try
|
|||
|
frmZDYHelp:=TfrmZDYHelp.Create(Application);
|
|||
|
with frmZDYHelp do
|
|||
|
begin
|
|||
|
flag:='ChiCunNote';
|
|||
|
flagname:='<27>ߴ<EFBFBD>Ҫ<EFBFBD><D2AA>';
|
|||
|
if ShowModal=1 then
|
|||
|
begin
|
|||
|
ChiCunNote.Text:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString);
|
|||
|
end;
|
|||
|
end;
|
|||
|
finally
|
|||
|
frmZDYHelp.Free;
|
|||
|
end;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmKHDYInPut.DYPersonBtnClick(Sender: TObject);
|
|||
|
begin
|
|||
|
try
|
|||
|
frmZDYHelp:=TfrmZDYHelp.Create(Application);
|
|||
|
with frmZDYHelp do
|
|||
|
begin
|
|||
|
flag:='DYPerson';
|
|||
|
flagname:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
|
|||
|
fnote:=True;
|
|||
|
V1Note.Caption:='<27>绰';
|
|||
|
if ShowModal=1 then
|
|||
|
begin
|
|||
|
DYPerson.Text:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString);
|
|||
|
end;
|
|||
|
end;
|
|||
|
finally
|
|||
|
frmZDYHelp.Free;
|
|||
|
end;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmKHDYInPut.ToolButton1Click(Sender: TObject);
|
|||
|
begin
|
|||
|
with Order_Sub do
|
|||
|
begin
|
|||
|
Append;
|
|||
|
|
|||
|
Post;
|
|||
|
end;
|
|||
|
with Order_Sub do
|
|||
|
begin
|
|||
|
Edit;
|
|||
|
FieldByName('XHInt').Value:=Order_Sub.RecordCount;
|
|||
|
Post;
|
|||
|
end;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmKHDYInPut.ToolButton2Click(Sender: TObject);
|
|||
|
begin
|
|||
|
if Order_Sub.IsEmpty then Exit;
|
|||
|
if Trim(Order_Sub.fieldbyname('DMId').AsString)<>'' then
|
|||
|
begin
|
|||
|
if Application.MessageBox('ȷ<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
|
|||
|
with ADOCmd do
|
|||
|
begin
|
|||
|
Close;
|
|||
|
sql.Clear;
|
|||
|
sql.Add('delete KH_DaYang_MX where DMId='''+Trim(Order_Sub.fieldbyname('DMId').AsString)+'''');
|
|||
|
ExecSQL;
|
|||
|
end;
|
|||
|
end;
|
|||
|
Order_Sub.Delete;
|
|||
|
end;
|
|||
|
|
|||
|
procedure TfrmKHDYInPut.GDPersonBtnClick(Sender: TObject);
|
|||
|
begin
|
|||
|
try
|
|||
|
frmZDYHelp:=TfrmZDYHelp.Create(Application);
|
|||
|
with frmZDYHelp do
|
|||
|
begin
|
|||
|
flag:='PFGenDanPerson';
|
|||
|
flagname:='<27><><EFBFBD><EFBFBD>Ա';
|
|||
|
fnote:=True;
|
|||
|
V1Note.Caption:='<27>绰';
|
|||
|
if ShowModal=1 then
|
|||
|
begin
|
|||
|
GDPerson.Text:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZdyName').AsString);
|
|||
|
end;
|
|||
|
end;
|
|||
|
finally
|
|||
|
frmZDYHelp.Free;
|
|||
|
end;
|
|||
|
end;
|
|||
|
|
|||
|
end.
|