D7snShanfengT/山峰贸易管理/U_CaiGouSQInPut.pas
DESKTOP-E401PHE\Administrator c363cb75a7 调整之后的山凤水泥厂
2026-02-26 09:41:35 +08:00

290 lines
7.1 KiB
ObjectPascal
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

unit U_CaiGouSQInPut;
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, cxDropDownEdit, cxCalendar, cxGridCustomPopupMenu,
cxGridPopupMenu;
type
TfrmCaiGouSQInPut = class(TForm)
ToolBar1: TToolBar;
TBSave: TToolButton;
TBClose: TToolButton;
ADOTemp: TADOQuery;
ADOCmd: TADOQuery;
DataSource1: TDataSource;
Order_Sub: TClientDataSet;
ADOQuery1: TADOQuery;
cxGridPopupMenu1: TcxGridPopupMenu;
ToolButton3: TToolButton;
ToolButton4: TToolButton;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1Column7: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
v1Column13: TcxGridDBColumn;
v1Column11: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
ADOQueryTemp: TADOQuery;
v1Column1: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
v1Column6: TcxGridDBColumn;
v1SQQty: TcxGridDBColumn;
v1SQPirce: TcxGridDBColumn;
v1SQGYSName: TcxGridDBColumn;
v1SQMoney: TcxGridDBColumn;
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBSaveClick(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
procedure v1SQGYSNamePropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v1SQQtyPropertiesEditValueChanged(Sender: TObject);
procedure v1SQPircePropertiesEditValueChanged(Sender: TObject);
private
procedure InitData();
function SaveData():Boolean;
{ Private declarations }
public
PState:Integer;
FMainId,FSQType:String;
{ Public declarations }
end;
var
frmCaiGouSQInPut: TfrmCaiGouSQInPut;
implementation
uses
U_DataLink,U_ZDYHelp,U_RTFun;
{$R *.dfm}
procedure TfrmCaiGouSQInPut.TBCloseClick(Sender: TObject);
begin
Close;
WriteCxGrid('<27>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ǽ<EFBFBD>',Tv1,'<27>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
end;
procedure TfrmCaiGouSQInPut.InitData();
begin
with ADOQuery1 do
begin
Close;
SQL.Clear;
sql.Add(' select A.*');
SQL.Add(' from CaiGou_SQ A ');
sql.Add(' where A.SQId='''+Trim(FMainId)+'''');
Open;
end;
SCreateCDS20(ADOQuery1,Order_Sub);
SInitCDSData20(ADOQuery1,Order_Sub);
end;
procedure TfrmCaiGouSQInPut.FormShow(Sender: TObject);
begin
ReadCxGrid('<27>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ǽ<EFBFBD>',Tv1,'<27>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
InitData();
end;
function TfrmCaiGouSQInPut.SaveData():Boolean;
var
maxno,FSKID:string;
begin
try
Result:=False;
ADOCmd.Connection.BeginTrans;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
Order_Sub.DisableControls;
with Order_Sub do
begin
First;
while not Eof do
begin
with ADOTemp do
begin
Close;
sql.Clear;
sql.Add('select * from CaiGou_SQ where SQID='''+Trim(Order_Sub.fieldbyname('SQID').AsString)+'''');
Open;
end;
FSKID:=Trim(ADOTemp.fieldbyname('SQID').AsString);
if Trim(FSKID)='' then
begin
if GetLSNo(ADOCmd,maxno,'SQ','CaiGou_SQ',4,1)=False then
begin
Order_Sub.EnableControls;
ADOCmd.Connection.RollbackTrans;
Application.MessageBox(<>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǼDZ<C7BC><C7B1><EFBFBD>ˮ<EFBFBD><CBAE>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
Exit;
end;
end else
begin
maxno:=Trim(FSKID);
end;
with ADOCmd do
begin
Close;
sql.Clear;
SQL.Add('select * from CaiGou_SQ where SQID='''+Trim(FSKID)+'''');
Open;
end;
with ADOCmd do
begin
if Trim(FSKID)='' then
begin
Append;
end
else begin
Edit;
end;
FieldByName('SQID').Value:=Trim(maxno);
RTSetSaveDataCDS(ADOCmd,Tv1,Order_Sub,'CaiGou_SQ',0);
FieldByName('SQPirce').Value:=Order_Sub.fieldbyname('SQPirce').AsFloat;
FieldByName('SQType').Value:=FSQType;
if Trim(FSKID)='' then
begin
FieldByName('Filler').Value:=Trim(DName);
end else
begin
FieldByName('Editer').Value:=Trim(DName);
FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp);
end;
Post;
end;
Edit;
FieldByName('SQID').Value:=Trim(maxno);
Next;
end;
end;
Order_Sub.EnableControls;
ADOCmd.Connection.CommitTrans;
Result:=True;
except
Result:=False;
ADOCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ',0);
end;
end;
procedure TfrmCaiGouSQInPut.TBSaveClick(Sender: TObject);
begin
ToolBar1.SetFocus;
if Order_Sub.IsEmpty then
begin
Application.MessageBox('<27><>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ',0);
exit;
end;
if Order_Sub.Locate('SQDate',null,[]) then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڲ<EFBFBD><DAB2><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 TfrmCaiGouSQInPut.ToolButton3Click(Sender: TObject);
begin
with Order_Sub do
begin
Append;
Post;
end;
end;
procedure TfrmCaiGouSQInPut.ToolButton4Click(Sender: TObject);
var
FWorker,FDate:String;
begin
if Order_Sub.IsEmpty then Exit;
if Trim(Order_Sub.fieldbyname('SQID').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 CaiGou_SQ where SQId='''+Trim(Order_Sub.fieldbyname('SQId').AsString)+'''');
ExecSQL;
end;
end;
Order_Sub.Delete;
end;
procedure TfrmCaiGouSQInPut.v1SQGYSNamePropertiesButtonClick(
Sender: TObject; AButtonIndex: Integer);
begin
frmZDYHelp:=TfrmZDYHelp.Create(self);
with frmZDYHelp do
begin
flag:='GYSBG';
flagname:='<27><>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
if ShowModal=1 then
begin
with Order_Sub do
begin
edit;
FieldByName('SQGYSName').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
end;
end;
free;
end;
end;
procedure TfrmCaiGouSQInPut.v1SQQtyPropertiesEditValueChanged(
Sender: TObject);
var mavlue:string;
begin
mavlue:=TcxTextEdit(Sender).EditingText;
if mavlue='' then mavlue:='0';
with Order_Sub do
begin
edit;
FieldByName('SQQty').Value:=mavlue;
end;
with Order_Sub do
begin
edit;
FieldByName('SQMoney').Value:=FieldByName('SQPirce').AsFloat*FieldByName('SQQty').AsFloat;
end;
end;
procedure TfrmCaiGouSQInPut.v1SQPircePropertiesEditValueChanged(
Sender: TObject);
var mavlue:string;
begin
mavlue:=TcxTextEdit(Sender).EditingText;
if mavlue='' then mavlue:='0';
with Order_Sub do
begin
edit;
FieldByName('SQPirce').Value:=mavlue;
end;
with Order_Sub do
begin
edit;
FieldByName('SQMoney').Value:=FieldByName('SQPirce').AsFloat*FieldByName('SQQty').AsFloat;
end;
end;
end.