D7DJshengxing/应收应付(YSYF.dll)/U_YFlist.pas

1066 lines
30 KiB
ObjectPascal
Raw Permalink Normal View History

2025-07-22 13:47:41 +08:00
unit U_YFlist;
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;
type
TfrmYFlist = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBClose: TToolButton;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
Panel1: TPanel;
ToolButton2: TToolButton;
Label1: TLabel;
ADOQueryMain: TADOQuery;
RM1: TRMGridReport;
RMDB_Main: TRMDBDataSet;
Label3: TLabel;
FactoryName: TEdit;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
cxGridDBColumn1: TcxGridDBColumn;
cxGridDBColumn3: TcxGridDBColumn;
cxGridDBColumn5: TcxGridDBColumn;
cxGridDBColumn6: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
Label2: TLabel;
Label6: TLabel;
begdate: TDateTimePicker;
Enddate: TDateTimePicker;
cxGridPopupMenu2: TcxGridPopupMenu;
DS_HZ: TDataSource;
CDS_HZ: TClientDataSet;
v2Column1: TcxGridDBColumn;
VHL: TcxGridDBColumn;
VBZ: TcxGridDBColumn;
VYB: TcxGridDBColumn;
VBB: TcxGridDBColumn;
v2Column6: TcxGridDBColumn;
VOrderNo: TcxGridDBColumn;
v2PayMent: TcxGridDBColumn;
v2Note: TcxGridDBColumn;
v2C_CodeName: TcxGridDBColumn;
v2Column2: TcxGridDBColumn;
v2Column4: TcxGridDBColumn;
v2ssel: TcxGridDBColumn;
P_CodeName: TEdit;
Label4: TLabel;
Label5: TLabel;
P_spec: TEdit;
CheckBox1: TCheckBox;
YFName: TComboBox;
v2OrderNO: TcxGridDBColumn;
v2Column3: TcxGridDBColumn;
gdy: TEdit;
Label8: TLabel;
v2Column5: TcxGridDBColumn;
v2Column7: TcxGridDBColumn;
v2Column8: TcxGridDBColumn;
OrderNO: TEdit;
Label10: TLabel;
ToolButton1: TToolButton;
Edit1: TEdit;
Label7: TLabel;
Label9: TLabel;
Edit2: TEdit;
Button2: TButton;
Button1: TButton;
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 FactoryNameChange(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject);
procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject);
procedure TBADDClick(Sender: TObject);
procedure cxGridDBColumn3PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure cxGridDBColumn6PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v2Column3PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure ToolButton1Click(Sender: TObject);
procedure v2Column2PropertiesEditValueChanged(Sender: TObject);
procedure v2PSPropertiesEditValueChanged(Sender: TObject);
procedure v2BatchNoPropertiesEditValueChanged(Sender: TObject);
procedure v2PayMentPropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure Button1Click(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
procedure TchkClick(Sender: TObject);
procedure TnochkClick(Sender: TObject);
procedure TBZJClick(Sender: TObject);
procedure v2OrderNOPropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView;
APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord;
ANewItemRecordFocusingChanged: Boolean);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure Edit2KeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations }
procedure InitGrid();
function SaveData():Boolean;
procedure SetStatus();
public
fFlag:integer;
{ Public declarations }
RKFlag,FCYID,fmanage:String;
end;
var
frmYFlist: TfrmYFlist;
implementation
uses
U_DataLink,U_Fun,U_ZDYHelp, U_ProductOrderList, U_ProductOrderNewList,
U_PbProductList, U_ZdyAttachGYS, U_SXCKNewList, U_ProductOrderListSel;
{$R *.dfm}
procedure TfrmYFlist.SetStatus();
begin
InitGrid();
end;
procedure TfrmYFlist.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Close;
SQL.Clear;
Filtered:=False;
sql.Add(' select A.*, ');
sql.Add(' gdy=(select top 1 OrdPerson1 from JYOrder_Main X where X.OrderNO=A.OrderNO) ');
sql.Add(' from YF_Money_CR A');
sql.Add('where A.CRTime>='''+FormatDateTime('yyyy-MM-dd',begdate.DateTime)+''' ');
sql.Add(' and A.CRTime<'''+FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1)+''' ');
sql.Add(' and A.CRType='<><D3A6><EFBFBD><EFBFBD><EFBFBD>Ǽ<EFBFBD>'' ');
// sql.Add(' and A.status='''+inttostr(cxTabControl1.TabIndex)+''' ');
Open;
end;
SCreateCDS20(ADOQueryMain,CDS_HZ);
SInitCDSData20(ADOQueryMain,CDS_HZ);
finally
ADOQueryMain.EnableControls;
ToolButton2.Click;
end;
end;
procedure TfrmYFlist.FormDestroy(Sender: TObject);
begin
frmYFlist:=nil;
end;
procedure TfrmYFlist.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmYFlist.TBCloseClick(Sender: TObject);
begin
WriteCxGrid(<><D3A6><EFBFBD><EFBFBD><EFBFBD>Ǽ<EFBFBD>',Tv2,'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1');
Close;
end;
procedure TfrmYFlist.TBDelClick(Sender: TObject);
var
FBBMoney,CRID:string;
begin
if CDS_HZ.IsEmpty then Exit;
if CDS_HZ.Locate('ssel',true,[])=false then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!','<27><>ʾ',0);
Exit;
end;
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
try
ADOQueryCmd.Connection.BeginTrans;
with CDS_HZ do
begin
DisableControls;
First;
while not eof do
begin
IF Fieldbyname('ssel').AsBoolean then
begin
// IF fieldbyname('YFType').AsString='<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>' then
// begin
// EnableControls;
// ADOQueryCmd.Connection.RollbackTrans;
// Application.MessageBox('<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD>ɵ<EFBFBD><C9B5><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2><EFBFBD>ɾ<EFBFBD><C9BE>!','<27><>ʾ',0);
// exit;
// end;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('delete YF_Money_CR where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+'''');
sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)');
sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)');
sql.Add(' where FactoryName='''+Trim(CDS_HZ.fieldbyname('FactoryName').AsString)+'''');
sql.Add(' and ZDYStr1='<><D3A6><EFBFBD><EFBFBD>'' ');
execsql;
end;
end;
next;
end;
First;
EnableControls;
end;
InitGrid();
ADOQueryCmd.Connection.CommitTrans;
except
ADOQueryCmd.Connection.RollbackTrans;
application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',0);
end;
end;
procedure TfrmYFlist.FormShow(Sender: TObject);
begin
ReadCxGrid(<><D3A6><EFBFBD><EFBFBD><EFBFBD>Ǽ<EFBFBD>',Tv2,'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
Enddate.DateTime:=SGetServerDate(ADOQueryTemp);
begdate.DateTime:=Enddate.DateTime;
SetStatus();
InitGrid();
end;
procedure TfrmYFlist.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmYFlist.ToolButton2Click(Sender: TObject);
var
sql:string;
begin
if ADOQueryMain.Active then
begin
sql:=SGetFilters(Panel1,1,2);
SDofilter(ADOQueryMain,sql);
SCreateCDS20(ADOQueryMain,CDS_HZ);
SInitCDSData20(ADOQueryMain,CDS_HZ);
end;
end;
procedure TfrmYFlist.FactoryNameChange(Sender: TObject);
begin
ToolButton2.Click;
end;
procedure TfrmYFlist.Button2Click(Sender: TObject);
begin
IF CDS_HZ.IsEmpty then exit;
if CDS_HZ.Locate('ssel',true,[])=false then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!','<27><>ʾ',0);
Exit;
end;
ADOQueryCmd.Connection.BeginTrans;
try
with CDS_HZ do
begin
DisableControls;
First;
while not eof do
begin
If fieldbyname('ssel').AsBoolean then
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('select * from YF_Money_CR ');
sql.Add('where YFID='+quotedstr(trim(CDS_HZ.fieldbyname('YFID').AsString)));
open;
edit;
Fieldbyname('Money').Value:=strtofloatdef(Edit2.Text,0);
Fieldbyname('BBMoney').Value:=strtofloatdef(Edit2.Text,0);
Fieldbyname('Price').Value:=format('%.2f',[ strtofloatdef(Edit2.Text,0) / Fieldbyname('Qty').AsFloat ]);
post;
end;
end;
next;
end;
First;
EnableControls;
end;
ADOQueryCmd.Connection.CommitTrans;
InitGrid();
except
ADOQueryCmd.Connection.RollbackTrans;
application.MessageBox('<27><><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',0);
end;
end;
function TfrmYFlist.SaveData():Boolean;
var
maxId,CRID:String;
begin
try
ADOQueryCmd.Connection.BeginTrans;
if GetLSNo(ADOQueryCmd,maxId,'YF','YF_Money_CR',4,1)=False then
begin
Result:=False;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ',0);
Exit;
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(CDS_HZ.fieldbyname('FactoryName').AsString)+''' ');
Open;
end;
if ADOQueryCmd.IsEmpty=False then
begin
CRID:=ADOQueryCmd.fieldbyname('CRID').AsString;
end else
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update YF_Money_CRID set CRID=CRID+1');
sql.Add('select * from YF_Money_CRID ');
Open;
end;
CRID:=ADOQueryCmd.fieldbyname('CRID').AsString;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('select * from YF_Money_KC where 1<>1');
Open;
end;
with ADOQueryCmd do
begin
Append;
FieldByName('CRID').Value:=StrToInt(CRID);
FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString);
FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString);
FieldByName('ZdyStr1').Value:=<><D3A6><EFBFBD><EFBFBD>';
Post;
end;
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('select * from YF_Money_CR where 1<>1');
Open;
end;
with ADOQueryCmd do
begin
Append;
FieldByName('YFID').Value:=Trim(maxId);
FieldByName('CRID').Value:=StrToInt(CRID);
//SSetSaveDataCDSNew(ADOQueryCmd,Tv2,CDS_HZ,'YF_Money_CR',3);
FieldByName('Filler').Value:=Trim(DName);
FieldByName('CRType').Value:=<><D3A6><EFBFBD><EFBFBD><EFBFBD>Ǽ<EFBFBD>';
FieldByName('CRFlag').Value:=<><D3A6><EFBFBD><EFBFBD>';
FieldByName('QtyFlag').Value:=1;
FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('FactoryNo').AsString);
FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('FactoryName').AsString);
FieldByName('CRTime').Value:=formatdateTIme('yyyy-MM-dd',CDS_HZ.fieldbyname('CRTime').AsDateTime);
FieldByName('status').Value:='0';
Post;
end;
with CDS_HZ do
begin
Edit;
FieldByName('YFId').Value:=Trim(maxId);
FieldByName('CRID').Value:=StrToInt(CRID);
end;
ADOQueryCmd.Connection.CommitTrans;
Result:=True;
except
Result:=True;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
end;
end;
procedure TfrmYFlist.cxGridDBColumn5PropertiesEditValueChanged(
Sender: TObject);
var
mvalue,FQty,FPrice,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String;
begin
{ if Trim(CDS_HZ.FieldByName('YFType').AsString)='<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>' then
begin
Application.MessageBox('<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD>ɵ<EFBFBD><C9B5><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2><EFBFBD><EFBFBD>޸<EFBFBD>!','<27><>ʾ',0);
Exit;
end;}
mvalue:=TcxTextEdit(Sender).EditingText;
if Trim(mvalue)='' then
begin
mvalue:='0';
end;
FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName);
with CDS_HZ do
begin
Edit;
FieldByName(FFieldName).Value:=Trim(mvalue);
if Trim(DParameters2)='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
begin
FieldByName('HuiLv').Value:=1;
end;
Post;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+'''');
Open;
end;
FKCBB:=ADOQueryTemp.fieldbyname('BBMoney').AsString;
FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString);
if Trim(FQty)='' then FQty:='0';
FPrice:=Trim(CDS_HZ.fieldbyname('Price').AsString);
if Trim(FPrice)='' then FPrice:='0';
FQty:=Trim(CDS_HZ.fieldbyname('Qty').AsString);
if Trim(FQty)='' then FQty:='0';
FMoney:=Trim(CDS_HZ.fieldbyname('Money').AsString);
if Trim(FMoney)='' then FMoney:='0';
FHuiLv:=Trim(CDS_HZ.fieldbyname('HuiLv').AsString);
if Trim(FHuiLv)='' then FHuiLv:='1';
{FBBMoney:=Trim(CDS_HZ.fieldbyname('BBMoney').AsString);
if Trim(FBBMoney)='' then FBBMoney:='0'; }
if Trim(FFieldName)<>'Money' then
begin
if Trim(FFieldName)<>'HuiLv' then
begin
FBBMoney:=FloatToStr(RoundFloat(StrToFloat(FQty)*StrToFloat(FPrice)*StrToFloat(FHuiLv),2));
FMoney:=FloatToStr(RoundFloat(StrToFloat(FQty)*StrToFloat(FPrice),2));
end else
begin
FBBMoney:=FloatToStr(RoundFloat(StrToFloat(FMoney)*StrToFloat(FHuiLv),2));
end;
end else
begin
FBBMoney:=FloatToStr(RoundFloat(StrToFloat(FMoney)*StrToFloat(FHuiLv),2));
end;
with CDS_HZ do
begin
Edit;
FieldByName('Money').Value:=StrToFloat(FMoney);
FieldByName('BBMoney').Value:=StrToFloat(FBBMoney);
Post;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate YF_Money_CR ');
sql.Add(' Set '+FFieldName+'='+Trim(mvalue));
if Trim(FFieldName)<>'Money' then
begin
sql.Add(',Money='+FMoney);
end;
sql.Add(',BBMoney='+FBBMoney);
SQL.Add(',Editer='''+Trim(DName)+'''');
SQL.Add(',Edittime=getdate() ');
SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+'''');
SQL.Add('Update YF_Money_KC Set KCBBMoney=KCBBMoney-'+FKCBB+'+'+FBBMoney);
sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+'''');
ExecSQL;
end;
tv2.Controller.EditingController.ShowEdit();
end;
procedure TfrmYFlist.cxGridDBColumn1PropertiesEditValueChanged(
Sender: TObject);
var
mvalue,FFieldName:String;
begin
mvalue:=TcxTextEdit(Sender).EditingText;
FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName);
with CDS_HZ do
begin
Edit;
FieldByName(FFieldName).Value:=Trim(mvalue);
Post;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate YF_Money_CR ');
if Trim(mvalue)<>'' then
begin
sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+'''');
end else
begin
sql.Add(' Set '+FFieldName+'=NULL');
end;
SQL.Add(',Editer='''+Trim(DName)+'''');
SQL.Add(',Edittime=getdate() ');
SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+'''');
ExecSQL;
end;
tv2.Controller.EditingController.ShowEdit();
end;
procedure TfrmYFlist.TBADDClick(Sender: TObject);
begin
try
frmZdyAttachGYS:=TfrmZdyAttachGYS.Create(Application);
with frmZdyAttachGYS do
begin
if ShowModal=1 then
begin
with Self.CDS_HZ do
begin
Append;
FieldByName('FactoryNo').Value:=Trim(CDS_HZ.fieldbyname('ZdyCode').AsString);
FieldByName('FactoryName').Value:=Trim(CDS_HZ.fieldbyname('ZdyName').AsString);
FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp);
FieldByName('BZType').Value:='RMB';
FieldByName('HuiLv').Value:=1;
Post;
end;
Self.SaveData();
end;
end;
finally
frmZdyAttachGYS.Free;
end;
tv2.Controller.EditingController.ShowEdit();
{ try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='FactoryNo1Name';
flagname:='<27><><EFBFBD><EFBFBD>';
MainType:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
if ShowModal=1 then
begin
with Self.CDS_HZ do
begin
Append;
FieldByName('FactoryNo').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString);
FieldByName('FactoryName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString);
FieldByName('CRTime').Value:=SGetServerDate(ADOQueryTemp);
Post;
end;
Self.SaveData();
end;
end;
finally
frmZDYHelp.Free;
end;
}
end;
procedure TfrmYFlist.cxGridDBColumn3PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
if Trim(CDS_HZ.FieldByName('YFType').AsString)='<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>' then
begin
Application.MessageBox('<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD>ɵ<EFBFBD><C9B5><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2><EFBFBD><EFBFBD>޸<EFBFBD>!','<27><>ʾ',0);
Exit;
end;
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='YFName';
flagname:='<27><>Ŀ<EFBFBD><C4BF>ժҪ';
if Trim(DParameters3)='<27><>Ŀ<EFBFBD>ֿ<EFBFBD>' then
MainType:='<27><><EFBFBD><EFBFBD>';
if ShowModal=1 then
begin
with Self.CDS_HZ do
begin
Edit;
FieldByName('YFCode').Value:=Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString);
FieldByName('YFName').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString);
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate YF_Money_CR ');
sql.Add(' Set YFCode='''+Trim(ClientDataSet1.fieldbyname('ZdyNo').AsString)+'''');
sql.Add(' ,YFName='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+'''');
SQL.Add(',Editer='''+Trim(DName)+'''');
SQL.Add(',Edittime=getdate() ');
SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+'''');
ExecSQL;
end;
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmYFlist.cxGridDBColumn6PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='OrderUnit';
flagname:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ';
if ShowModal=1 then
begin
Self.CDS_HZ.Edit;
Self.CDS_HZ.FieldByName('QtyUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add(' UPdate YF_Money_CR ');
sql.Add(' Set QtyUnit='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+'''');
SQL.Add(',Editer='''+Trim(DName)+'''');
SQL.Add(',Edittime=getdate() ');
SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+'''');
ExecSQL;
end;
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmYFlist.v2Column3PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='BZType';
flagname:='<27><><EFBFBD><EFBFBD>';
if ShowModal=1 then
begin
Self.CDS_HZ.Edit;
Self.CDS_HZ.FieldByName('BZType').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate YF_Money_CR ');
sql.Add(' Set BZType='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+'''');
SQL.Add(',Editer='''+Trim(DName)+'''');
SQL.Add(',Edittime=getdate() ');
SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+'''');
ExecSQL;
end;
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmYFlist.ToolButton1Click(Sender: TObject);
begin
IF CDS_HZ.IsEmpty then exit;
ModalResult:=1;
end;
procedure TfrmYFlist.v2Column2PropertiesEditValueChanged(Sender: TObject);
var
mvalue,FBBMoney,FKCBB,FFieldName:String;
begin
mvalue:=TcxTextEdit(Sender).EditingText;
if Trim(mvalue)='' then
begin
mvalue:='0';
end;
FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName);
with CDS_HZ do
begin
Edit;
FieldByName(FFieldName).Value:=Trim(mvalue);
Post;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate YF_Money_CR ');
sql.Add(' Set '+FFieldName+'='+Trim(mvalue));
SQL.Add(',Editer='''+Trim(DName)+'''');
SQL.Add(',Edittime=getdate() ');
SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+'''');
ExecSQL;
end;
end;
procedure TfrmYFlist.v2PSPropertiesEditValueChanged(Sender: TObject);
var
mvalue,FFieldName:String;
begin
mvalue:=TcxTextEdit(Sender).EditingText;
if Trim(mvalue)='' then
begin
mvalue:='0';
end;
FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName);
with CDS_HZ do
begin
Edit;
FieldByName(FFieldName).Value:=Trim(mvalue);
Post;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate YF_Money_CR ');
sql.Add(' Set '+FFieldName+'='+Trim(mvalue));
SQL.Add(',Editer='''+Trim(DName)+'''');
SQL.Add(',Edittime=getdate() ');
SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+'''');
ExecSQL;
end;
end;
procedure TfrmYFlist.v2BatchNoPropertiesEditValueChanged(Sender: TObject);
var
mvalue,FFieldName:String;
begin
mvalue:=TcxTextEdit(Sender).EditingText;
FFieldName:=Trim(Tv2.Controller.FocusedColumn.DataBinding.FilterFieldName);
with CDS_HZ do
begin
Edit;
FieldByName(FFieldName).Value:=Trim(mvalue);
Post;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate YF_Money_CR ');
sql.Add(' Set '+FFieldName+'='''+Trim(mvalue)+'''');
SQL.Add(',Editer='''+Trim(DName)+'''');
SQL.Add(',Edittime=getdate() ');
SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+'''');
ExecSQL;
end;
end;
procedure TfrmYFlist.v2PayMentPropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='FKTYPE';
flagname:='<27><><EFBFBD>ʽ';
if ShowModal=1 then
begin
with Self.CDS_HZ do
begin
Edit;
FieldByName('PayMent').Value:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString);
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate YF_Money_CR ');
sql.Add(' Set PayMent='''+Trim(ClientDataSet1.fieldbyname('ZdyName').AsString)+'''');
SQL.Add(',Editer='''+Trim(DName)+'''');
SQL.Add(',Edittime=getdate() ');
SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+'''');
ExecSQL;
end;
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmYFlist.Button1Click(Sender: TObject);
begin
IF CDS_HZ.IsEmpty then exit;
if CDS_HZ.Locate('ssel',true,[])=false then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!','<27><>ʾ',0);
Exit;
end;
ADOQueryCmd.Connection.BeginTrans;
try
with CDS_HZ do
begin
DisableControls;
First;
while not eof do
begin
If fieldbyname('ssel').AsBoolean then
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('select * from YF_Money_CR ');
sql.Add('where YFID='+quotedstr(trim(CDS_HZ.fieldbyname('YFID').AsString)));
open;
edit;
Fieldbyname('Price').Value:=strtofloatdef(edit1.Text,0);
Fieldbyname('Money').Value:=format('%.2f',[Fieldbyname('Qty').AsFloat * strtofloatdef(edit1.Text,0) ]);
Fieldbyname('BBMoney').Value:=format('%.2f',[Fieldbyname('Qty').AsFloat * strtofloatdef(edit1.Text,0) ]);
post;
end;
end;
next;
end;
First;
EnableControls;
end;
ADOQueryCmd.Connection.CommitTrans;
InitGrid();
except
ADOQueryCmd.Connection.RollbackTrans;
application.MessageBox('<27><><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',0);
end;
end;
procedure TfrmYFlist.CheckBox1Click(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:=checkbox1.Checked;
post;
next;
end;
First;
EnableControls;
end;
end;
procedure TfrmYFlist.cxTabControl1Change(Sender: TObject);
begin
SetStatus();
end;
procedure TfrmYFlist.TchkClick(Sender: TObject);
begin
IF CDS_HZ.IsEmpty then exit;
if CDS_HZ.Locate('ssel',true,[])=false then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!','<27><>ʾ',0);
Exit;
end;
try
ADOQueryCmd.Connection.BeginTrans;
with CDS_HZ do
begin
DisableControls;
First;
while not eof do
begin
IF Fieldbyname('ssel').AsBoolean then
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('update YF_Money_CR SET status=''1'' ');
sql.Add('where YFID ='+quotedstr(trim(CDS_HZ.fieldbyname('YFID').AsString)));
execsql;
end;
end;
next;
end;
First;
EnableControls;
end;
InitGrid();
ADOQueryCmd.Connection.CommitTrans;
except
ADOQueryCmd.Connection.RollbackTrans;
application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',0);
end;
end;
procedure TfrmYFlist.TnochkClick(Sender: TObject);
begin
IF CDS_HZ.IsEmpty then exit;
if CDS_HZ.Locate('ssel',true,[])=false then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!','<27><>ʾ',0);
Exit;
end;
try
ADOQueryCmd.Connection.BeginTrans;
with CDS_HZ do
begin
DisableControls;
First;
while not eof do
begin
IF Fieldbyname('ssel').AsBoolean then
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('update YF_Money_CR SET status=''0'' ');
sql.Add('where YFID ='+quotedstr(trim(CDS_HZ.fieldbyname('YFID').AsString)));
execsql;
end;
end;
next;
end;
First;
EnableControls;
end;
InitGrid();
ADOQueryCmd.Connection.CommitTrans;
except
ADOQueryCmd.Connection.RollbackTrans;
application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',0);
end;
end;
procedure TfrmYFlist.TBZJClick(Sender: TObject);
begin
frmSXCKNewList:=TfrmSXCKNewList.create(self) ;
with frmSXCKNewList do
begin
show;
end;
end;
procedure TfrmYFlist.v2OrderNOPropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
try
frmProductOrderListSel:=TfrmProductOrderListSel.Create(Application);
with frmProductOrderListSel do
begin
FFInt:=1;
//frmProductOrderList.v1Column4.Visible:=True;
if ShowModal=1 then
begin
with Self.CDS_HZ do
begin
Edit;
FieldByName('OrderNo').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('OrderNo').AsString);
FieldByName('P_CodeName').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('MPrtCodeName').AsString);
FieldByName('P_Spec').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('Mprtspec').AsString);
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate YF_Money_CR ');
sql.Add(' Set OrderNO='''+Trim(frmProductOrderListSel.Order_Main.fieldbyname('OrderNO').AsString)+'''');
sql.Add(' ,P_CodeName='''+Trim(frmProductOrderListSel.Order_Main.fieldbyname('MPrtCodeName').AsString)+'''');
sql.Add(' ,P_Spec='''+Trim(frmProductOrderListSel.Order_Main.fieldbyname('Mprtspec').AsString)+'''');
SQL.Add(',Editer='''+Trim(DName)+'''');
SQL.Add(',Edittime=getdate() ');
SQL.Add(' where YFId='''+Trim(CDS_HZ.fieldbyname('YFId').AsString)+'''');
ExecSQL;
end;
end;
end;
end;
finally
frmProductOrderListSel.Free;
end;
end;
procedure TfrmYFlist.Tv2FocusedRecordChanged(Sender: TcxCustomGridTableView;
APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord;
ANewItemRecordFocusingChanged: Boolean);
var
i:integer;
begin
// IF CDS_HZ.fieldbyname('YFType').AsString='<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>' then
// begin
//// if cxTabControl1.TabIndex=0 then
// begin
// for i:=0 to tv2.ColumnCount-1 do
// begin
// IF ( (uppercase(tv2.Columns[i].DataBinding.FieldName)<>'SSEL') and
// (uppercase(tv2.Columns[i].DataBinding.FieldName)<>'NOTE') ) then
// tv2.Columns[i].Options.Editing:=false;
// end;
// end else
// begin
// for i:=0 to tv2.ColumnCount-1 do
// begin
// IF (uppercase(tv2.Columns[i].DataBinding.FieldName)<>'SSEL') then
// tv2.Columns[i].Options.Editing:=false;
// end;
// end;
// end
// else
// begin
// for i:=0 to tv2.ColumnCount-1 do
// begin
// IF uppercase(tv2.Columns[i].DataBinding.FieldName)<>'SSEL' then
// tv2.Columns[i].Options.Editing:=true;
// end;
// end;
end;
procedure TfrmYFlist.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if not (Key in [#8,#127,'.','0'..'9']) then Key:=#0;
end;
procedure TfrmYFlist.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
if not (Key in [#8,#127,'.','0'..'9']) then Key:=#0;
end;
end.