D7snShanfengT/山峰贸易管理/U_CLShuiPiao_Sub.pas

676 lines
18 KiB
ObjectPascal
Raw Normal View History

2026-02-26 09:41:35 +08:00
unit U_CLShuiPiao_Sub;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
cxDataStorage, cxEdit, DB, cxDBData, cxCalendar, cxDropDownEdit,
ComCtrls, ToolWin, cxGridLevel, cxGridCustomTableView, cxGridTableView,
cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid,
cxGridCustomPopupMenu, cxGridPopupMenu, ADODB, DBClient, cxButtonEdit,
cxTextEdit, ExtCtrls, StdCtrls, BtnEdit;
type
TfrmCLShuiPiao_Sub = class(TForm)
ToolBar1: TToolBar;
TBSave: TToolButton;
TBClose: TToolButton;
DataSource3: TDataSource;
CDS_Sub: TClientDataSet;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
cxGridPopupMenu2: TcxGridPopupMenu;
cxGrid2: TcxGrid;
Tv1: TcxGridDBTableView;
v1CRTime: TcxGridDBColumn;
v2CPFLQty: TcxGridDBColumn;
v1Price: TcxGridDBColumn;
v1Note: TcxGridDBColumn;
cxGrid2Level1: TcxGridLevel;
ToolButton1: TToolButton;
ToolButton2: TToolButton;
ADOQuery1: TADOQuery;
ADOQuery2: TADOQuery;
v1GLQty: TcxGridDBColumn;
v1JPSpec: TcxGridDBColumn;
v1CLQty: TcxGridDBColumn;
v1CLSpec: TcxGridDBColumn;
v1SJName: TcxGridDBColumn;
v1CPNo: TcxGridDBColumn;
v1CheHao: TcxGridDBColumn;
v1SPType: TcxGridDBColumn;
v1SPQty: TcxGridDBColumn;
v1KKMoney: TcxGridDBColumn;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBSaveClick(Sender: TObject);
procedure v1Column3PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v1Column14PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v2Column1PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v1Column5PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v1Column16PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v1Column13PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v2Column6PropertiesEditValueChanged(Sender: TObject);
procedure v1PricePropertiesEditValueChanged(Sender: TObject);
procedure QtyChange(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure v2CPFLQtyPropertiesEditValueChanged(Sender: TObject);
procedure v1CLSpecPropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v1SJNamePropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v1CPNoPropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v1CheHaoPropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v1PricePropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v1SPTypePropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v1CZNamePropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v1CheHaoPropertiesEditValueChanged(Sender: TObject);
private
{ Private declarations }
function SaveCKData():Boolean;
public
{ Public declarations }
FBCId,canshu3:String;
end;
var
frmCLShuiPiao_Sub: TfrmCLShuiPiao_Sub;
implementation
uses
U_DataLink,U_RTFun,U_ClothContractListHZCX,U_ZDYHelp, U_ZdyAttachGYS,U_ProductOrderListSel,
U_ZdyAttachCP,U_CLManage;
{$R *.dfm}
procedure TfrmCLShuiPiao_Sub.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
function TfrmCLShuiPiao_Sub.SaveCKData():Boolean;
var
FCRID,Maxno,FFSPID:string;
begin
try
ADOQueryCmd.Connection.BeginTrans;
with CDS_Sub do
begin
first;
while not eof do
begin
if Trim(fieldbyname('SPID').AsString)='' then
begin
if GetLSNo(ADOQueryCmd,Maxno,'SP','CL_SP_Main',3,1)=False then
begin
Result:=False;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('ȡԭ<C8A1><D4AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
Exit;
end;
end else
begin
Maxno:=Trim(fieldbyname('SPID').AsString);
end;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('select * from CL_SP_Main ');
sql.Add('where SPID='''+trim(MaxNo)+'''');
open;
end;
with ADOQueryCmd do
begin
if IsEmpty then
begin
Append;
end
else
begin
Edit;
end;
FieldByName('SPID').Value:=Trim(MaxNo);
RTSetSaveDataCDS(ADOQueryCmd,Tv1,CDS_Sub,'CL_SP_Main',2);
FieldByName('CPFLQty').Value:=CDS_Sub.fieldbyname('CPFLQty').AsFloat;
FieldByName('SPMoney').Value:=CDS_Sub.fieldbyname('SPMoney').AsFloat;
FieldByName('GLQty').Value:=CDS_Sub.fieldbyname('GLQty').AsFloat;
FieldByName('CLQty').Value:=CDS_Sub.fieldbyname('CLQty').AsFloat;
FieldByName('SPQty').Value:=CDS_Sub.fieldbyname('SPQty').AsFloat;
FieldByName('KKMoney').Value:=CDS_Sub.fieldbyname('KKMoney').AsFloat;
Post;
end;
with CDS_Sub do
begin
edit;
FieldByName('SPID').Value:=Trim(MaxNo);
end;
Next;
end;
end;
ADOQueryCmd.Connection.CommitTrans;
Result:=True;
except;
Result:=False;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>쳣!','<27><>ʾ',0);
end;
end;
procedure TfrmCLShuiPiao_Sub.TBCloseClick(Sender: TObject);
begin
WriteCxGrid('ˮƱ<CBAE>Ǽ<EFBFBD>',Tv1,'ˮƱ');
Close;
end;
procedure TfrmCLShuiPiao_Sub.FormShow(Sender: TObject);
var
fsj:String;
begin
ReadCxGrid('ˮƱ<CBAE>Ǽ<EFBFBD>',Tv1,'ˮƱ');
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add(' select A.* ');
sql.Add(' from CL_SP_Main A');
sql.Add(' where SPID='''+Trim(FBCId)+'''');
Open;
end;
SCreateCDS20(ADOQueryTemp,CDS_Sub);
SInitCDSData20(ADOQueryTemp,CDS_Sub);
end;
procedure TfrmCLShuiPiao_Sub.TBSaveClick(Sender: TObject);
begin
if CDS_Sub.IsEmpty then Exit;
ToolBar1.SetFocus;
if CDS_Sub.Locate('GCName','',[])=true then
begin
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʋ<EFBFBD><C6B2><EFBFBD>Ϊ<EFBFBD><CEAA>','<27><>ʾ');
exit;
end;
if CDS_Sub.Locate('SJName','',[])=true then
begin
application.MessageBox(<><CBBE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>','<27><>ʾ');
exit;
end;
if CDS_Sub.Locate('CPNo','',[])=true then
begin
application.MessageBox('<27><><EFBFBD>ƺ<EFBFBD><C6BA><EFBFBD><EBB2BB>Ϊ<EFBFBD><CEAA>','<27><>ʾ');
exit;
end;
if SaveCKData() then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>!','<27><>ʾ',0);
Exit;
end;
end;
procedure TfrmCLShuiPiao_Sub.v1Column3PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='QtyUnit';
flagname:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ';
if ShowModal=1 then
begin
with Self.CDS_Sub do
begin
Edit;
FieldByName('QtyUnit').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZdyName').AsString);
end;
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmCLShuiPiao_Sub.v1Column14PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
try
frmZdyAttachGYS:=TfrmZdyAttachGYS.Create(Application);
with frmZdyAttachGYS do
begin
if ShowModal=1 then
begin
with Self.CDS_Sub do
begin
edit;
FieldByName('FactoryNo').Value:=Trim(frmZdyAttachGYS.CDS_HZ.fieldbyname('ZdyCode').AsString) ;
FieldByName('FactoryName').Value:=Trim(frmZdyAttachGYS.CDS_HZ.fieldbyname('ZdyName').AsString);
//Post;
end;
end;
end;
finally
frmZdyAttachGYS.Free;
end;
end;
procedure TfrmCLShuiPiao_Sub.v2Column1PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
if Trim(canshu3)='' then
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='PBName';
flagname:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
if ShowModal=1 then
begin
with Self.CDS_Sub do
begin
Edit;
FieldByName('SPName').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZdyName').AsString);
end;
end;
end;
finally
frmZDYHelp.Free;
end;
end else
begin
try
frmZdyAttachCP:=TfrmZdyAttachCP.Create(Application);
with frmZdyAttachCP do
begin
if ShowModal=1 then
begin
with Self.CDS_Sub do
begin
Edit;
FieldByName('SPName').Value:=Trim(frmZdyAttachCP.CDS_HZ.fieldbyname('ZdyName').AsString);
FieldByName('SPSpec').Value:=Trim(frmZdyAttachCP.CDS_HZ.fieldbyname('DEFstr1').AsString);
FieldByName('SPCF').Value:=Trim(frmZdyAttachCP.CDS_HZ.fieldbyname('DEFstr2').AsString);
FieldByName('SPMF').Value:=Trim(frmZdyAttachCP.CDS_HZ.fieldbyname('DEFstr7').AsString);
FieldByName('SPKZ').Value:=Trim(frmZdyAttachCP.CDS_HZ.fieldbyname('DEFstr8').AsString);
FieldByName('SPKZ').Value:=Trim(frmZdyAttachCP.CDS_HZ.fieldbyname('DEFstr8').AsString);
FieldByName('SPCode').Value:=Trim(frmZdyAttachCP.CDS_HZ.fieldbyname('ZdyCode').AsString);
FieldByName('CPID').Value:=Trim(frmZdyAttachCP.CDS_HZ.fieldbyname('ATID').AsString);
end;
end;
end;
finally
frmZdyAttachCP.Free;
end;
end;
end;
procedure TfrmCLShuiPiao_Sub.v1Column5PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='PLName';
flagname:=<><D4AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
if ShowModal=1 then
begin
with Self.CDS_Sub do
begin
Edit;
FieldByName('YLName').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZdyName').AsString);
end;
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmCLShuiPiao_Sub.v1Column16PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
try
frmZdyAttachGYS:=TfrmZdyAttachGYS.Create(Application);
with frmZdyAttachGYS do
begin
if ShowModal=1 then
begin
with Self.CDS_Sub do
begin
edit;
FieldByName('FromFactoryNo').Value:=Trim(frmZdyAttachGYS.CDS_HZ.fieldbyname('ZdyCode').AsString) ;
FieldByName('FromFactoryName').Value:=Trim(frmZdyAttachGYS.CDS_HZ.fieldbyname('ZdyName').AsString);
//Post;
end;
end;
end;
finally
frmZdyAttachGYS.Free;
end;
end;
procedure TfrmCLShuiPiao_Sub.v1Column13PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
try
frmProductOrderListSel:=TfrmProductOrderListSel.Create(Application);
with frmProductOrderListSel do
begin
if ShowModal=1 then
begin
with Self.CDS_Sub do
begin
Edit;
FieldByName('ORDMainIdRK').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('MainId').AsString);
FieldByName('ORDSubIdRK').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('SubId').AsString);
FieldByName('OrderNo').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('OrderNo').AsString);
end;
end;
end;
finally
frmProductOrderListSel.Free;
end;
end;
procedure TfrmCLShuiPiao_Sub.v2Column6PropertiesEditValueChanged(
Sender: TObject);
var
mavlue:string;
begin
mavlue:=TcxTextEdit(Sender).EditingText;
if mavlue='' then
begin
mavlue:='0';
end;
with CDS_Sub do
begin
edit;
fieldbyname('Qty').Value:=trim(Mavlue);
end;
with CDS_Sub do
begin
edit;
fieldbyname('Money').Value:=fieldbyname('Qty').AsFloat*fieldbyname('Price').AsFloat;
end;
end;
procedure TfrmCLShuiPiao_Sub.v1PricePropertiesEditValueChanged(
Sender: TObject);
var
mavlue:string;
begin
mavlue:=TcxTextEdit(Sender).EditingText;
if mavlue='' then
begin
mavlue:='0';
end;
with CDS_Sub do
begin
edit;
fieldbyname('Price').Value:=trim(Mavlue);
end;
with CDS_Sub do
begin
edit;
fieldbyname('CPMoney').Value:=fieldbyname('Qty').AsFloat*fieldbyname('Price').AsFloat;
end;
end;
procedure TfrmCLShuiPiao_Sub.QtyChange(Sender: TObject);
var i:double;
begin
end;
procedure TfrmCLShuiPiao_Sub.ToolButton1Click(Sender: TObject);
begin
with CDS_Sub do
begin
append;
FieldByName('CRTime').Value:=SGetServerDate10(ADOQueryTemp);
post;
end;
end;
procedure TfrmCLShuiPiao_Sub.ToolButton2Click(Sender: TObject);
begin
if CDS_Sub.IsEmpty then exit;
CDS_Sub.Delete;
end;
procedure TfrmCLShuiPiao_Sub.v2CPFLQtyPropertiesEditValueChanged(
Sender: TObject);
var mvalue:string;
begin
mvalue:=Trim(TcxTextEdit(Sender).EditingText);
if mvalue='' then mvalue:='0';
with CDS_Sub do
begin
Edit;
FieldByName('CPFLQty').Value:=mvalue;
FieldByName('CPMoney').Value:=fieldbyname('Price').AsFloat*strtofloat(mvalue);
end;
end;
procedure TfrmCLShuiPiao_Sub.v1CLSpecPropertiesButtonClick(
Sender: TObject; AButtonIndex: Integer);
begin
try
frmCLManage:=TfrmCLManage.Create(Application);
with frmCLManage do
begin
TSsel.Visible:=true;
TBAdd.Visible:=false;
TBEdit.Visible:=false;
if ShowModal=1 then
begin
with Self.CDS_Sub do
begin
Edit;
FieldByName('CLSpec').Value:=Trim(CDS_Main.fieldbyname('CLXNo').AsString);
FieldByName('JPSpec').Value:=Trim(CDS_Main.fieldbyname('JPSpec').AsString);
FieldByName('CPNo').Value:=Trim(CDS_Main.fieldbyname('CPNo').AsString);
FieldByName('CheHao').Value:=Trim(CDS_Main.fieldbyname('CheHao').AsString);
end;
end;
end;
finally
frmCLManage.Free;
end;
end;
procedure TfrmCLShuiPiao_Sub.v1SJNamePropertiesButtonClick(
Sender: TObject; AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='SJName';
flagname:=<><CBBE>';
if ShowModal=1 then
begin
with Self.CDS_Sub do
begin
Edit;
FieldByName('SJName').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZdyName').AsString);
end;
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmCLShuiPiao_Sub.v1CPNoPropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='CPNo';
flagname:='<27><><EFBFBD>ƺ<EFBFBD><C6BA><EFBFBD>';
if ShowModal=1 then
begin
with Self.CDS_Sub do
begin
Edit;
FieldByName('CPNo').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZdyName').AsString);
end;
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmCLShuiPiao_Sub.v1CheHaoPropertiesButtonClick(
Sender: TObject; AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='CheHao';
flagname:='<27><><EFBFBD><EFBFBD>';
if ShowModal=1 then
begin
with Self.CDS_Sub do
begin
Edit;
FieldByName('CheHao').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZdyName').AsString);
end;
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmCLShuiPiao_Sub.v1PricePropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='GCName';
flagname:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
if ShowModal=1 then
begin
with Self.CDS_Sub do
begin
Edit;
FieldByName('GCName').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZdyName').AsString);
end;
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmCLShuiPiao_Sub.v1SPTypePropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='SPType';
flagname:='ˮƱ<CBAE><C6B1><EFBFBD><EFBFBD>';
if ShowModal=1 then
begin
with Self.CDS_Sub do
begin
Edit;
FieldByName('SPType').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZdyName').AsString);
end;
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmCLShuiPiao_Sub.v1CZNamePropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='CZName';
flagname:='<27><><EFBFBD><EFBFBD>Ա';
if ShowModal=1 then
begin
with Self.CDS_Sub do
begin
Edit;
FieldByName('CZName').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZdyName').AsString);
end;
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmCLShuiPiao_Sub.v1CheHaoPropertiesEditValueChanged(
Sender: TObject);
var mavlue:string;
begin
mavlue:=TcxTextEdit(Sender).EditingText;
with ADOQueryCmd do
begin
Filtered:=False;
Close;
sql.Clear;
sql.Add(' select A.* ');
sql.Add(' from CLXX_Main A');
sql.Add(' where isnull(CLStatus,'''')=''''');
sql.Add(' and CheHao='''+trim(mavlue)+'''');
open;
end;
if ADOQueryCmd.IsEmpty then
begin
application.MessageBox(<>иó<D0B8><C3B3><EFBFBD>','<27><>ʾ');
with Self.CDS_Sub do
begin
Edit;
fieldbyname('CheHao').Value:='';
end;
end;
with Self.CDS_Sub do
begin
Edit;
FieldByName('CLName').Value:=Trim(ADOQueryCmd.fieldbyname('CLName').AsString);
FieldByName('CLSpec').Value:=Trim(ADOQueryCmd.fieldbyname('CLXNo').AsString);
FieldByName('CPNo').Value:=Trim(ADOQueryCmd.fieldbyname('CPNo').AsString);
FieldByName('CheHao').Value:=Trim(ADOQueryCmd.fieldbyname('CheHao').AsString);
end;
end;
end.