D7wmguihua/应收应付/U_YSCROL.pas
DESKTOP-E401PHE\Administrator b4b5840f18 1
2025-01-18 16:22:10 +08:00

1088 lines
31 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_YSCROL;
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;
type
TfrmYSCROL = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBDel: TToolButton;
TBClose: TToolButton;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
Panel1: TPanel;
ToolButton2: TToolButton;
Label1: TLabel;
YFName: TEdit;
ADOQueryMain: TADOQuery;
ToolButton1: TToolButton;
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;
ToolButton3: TToolButton;
v2Column1: TcxGridDBColumn;
VHL: TcxGridDBColumn;
VBZ: TcxGridDBColumn;
VYB: TcxGridDBColumn;
VBB: TcxGridDBColumn;
v2Column6: TcxGridDBColumn;
VOrderNo: TcxGridDBColumn;
v2PS: TcxGridDBColumn;
v2Column2: TcxGridDBColumn;
v2KP: TcxGridDBColumn;
v2Column3: TcxGridDBColumn;
v2Column4: TcxGridDBColumn;
Label4: TLabel;
OrderNo: TEdit;
ToolButton4: TToolButton;
v2Column7: TcxGridDBColumn;
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 cxGridDBColumn8PropertiesEditValueChanged(Sender: TObject);
procedure cxGridDBColumn5PropertiesEditValueChanged(Sender: TObject);
procedure cxGridDBColumn1PropertiesEditValueChanged(Sender: TObject);
procedure ToolButton3Click(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 v2Column7PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v2PSPropertiesEditValueChanged(Sender: TObject);
procedure v2Column2PropertiesEditValueChanged(Sender: TObject);
procedure v2KPMoneyPropertiesEditValueChanged(Sender: TObject);
procedure OrderNoChange(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
private
{ Private declarations }
procedure InitGridHZ();
procedure InitGrid();
function SaveData():Boolean;
function YSData(Order_Main10:TClientDataSet):Boolean;
public
{ Public declarations }
RKFlag,FCYID:String;
end;
var
frmYSCROL: TfrmYSCROL;
implementation
uses
U_DataLink,U_Fun,U_ZDYHelp, U_ProductOrderListOLJ;
{$R *.dfm}
procedure TfrmYSCROL.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
SQL.Clear;
sql.Add(' select BB.Filler, A.* ');
sql.Add(',BB.OrderNo,BB.CustomerNoName,CC.SCNO,CC.PRTCodeName ');
sql.Add(',CC.PRTType,CC.PRTSpec,CC.PRTColor ');
sql.Add(',KHZJM=dbo.getPinYin(A.FactoryName)');
sql.Add(' from YF_Money_CR A');
sql.Add(' inner join YF_Money_KC B on A.CRID=B.CRID');
Sql.add(' left join JYOrder_Main BB on A.MainId=BB.MainId');
Sql.add(' left join JYOrder_Sub CC on A.SubId=CC.SubId');
sql.Add('where A.CRTime>='''+Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime))+'''');
sql.Add('and A.CRTime<'''+Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1))+'''');
sql.Add('and A.CRType='<>տ<EFBFBD><D5BF>Ǽ<EFBFBD>''');
Open;
end;
SCreateCDS20(ADOQueryMain,CDS_HZ);
SInitCDSData20(ADOQueryMain,CDS_HZ);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmYSCROL.InitGridHZ();
begin
end;
procedure TfrmYSCROL.FormDestroy(Sender: TObject);
begin
frmYSCROL:=nil;
end;
procedure TfrmYSCROL.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmYSCROL.TBCloseClick(Sender: TObject);
begin
WriteCxGrid(<>տ<EFBFBD><D5BF>Ǽ<EFBFBD>',Tv2,'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
{with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('delete CK_YP_CR where isnull(CRTime,'''')='''' and CYID='''+Trim(FCYID)+''' and CRType='''+Trim(RKFlag)+'''');
ExecSQL;
end;}
Close;
end;
procedure TfrmYSCROL.TBDelClick(Sender: TObject);
var
FBBMoney,CRID:string;
begin
if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then
begin
if Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD>ɣ<EFBFBD>ȷ<EFBFBD><C8B7>Ҫִ<D2AA>в<EFBFBD><D0B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
end;
if CDS_HZ.IsEmpty then Exit;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select isnull(BBMoney,0) BBMoney from YF_Money_CR where YFID='''+Trim(cds_hz.fieldbyname('YFID').AsString)+'''');
Open;
end;
FBBMoney:=ADOQueryTemp.fieldbyname('BBMoney').AsString;
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
if Trim(CDS_HZ.fieldbyname('YFID').AsString)<>'' then
begin
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 KCBBMoney=KCBBMoney-'+FBBMoney);
sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+'''');
ExecSQL;
end;
CRID:=Trim(CDS_HZ.fieldbyname('CRID').AsString);
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from YF_Money_CR where CRID='+CRID);
Open;
end;
if ADOQueryTemp.IsEmpty then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete YF_Money_KC where CRID='+CRID);
ExecSQL;
end;
end;
end;
CDS_HZ.Delete;
end;
procedure TfrmYSCROL.FormShow(Sender: TObject);
begin
ReadCxGrid(<>տ<EFBFBD><D5BF>Ǽ<EFBFBD>',Tv2,'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
Enddate.DateTime:=SGetServerDate(ADOQueryTemp);
begdate.DateTime:=Enddate.DateTime-50;
if Trim(DParameters1)='<27>޶<EFBFBD><DEB6><EFBFBD><EFBFBD><EFBFBD>' then
begin
VOrderNo.Hidden:=True;
VOrderNo.Visible:=False;
label4.Visible:=False;
OrderNo.Visible:=False;
end;
if Trim(DParameters2)='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
begin
VHL.Hidden:=True;
VHL.Visible:=False;
VBZ.Hidden:=True;
VBZ.Visible:=False;
VYB.Hidden:=True;
VYB.Visible:=False;
VBB.Caption:='<27><><EFBFBD><EFBFBD>';
end;
if Trim(DParameters5)<>'<27><>Ʊ' then
begin
v2KP.Hidden:=True;
v2KP.Visible:=False;
end else
begin
v2KP.Hidden:=False;
v2KP.Visible:=True;
end;
if Trim(DParameters7)<><><C6A5>' then
begin
v2PS.Hidden:=True;
v2PS.Visible:=False;
end else
begin
v2PS.Hidden:=False;
v2PS.Visible:=True;
end;
//InitGrid();
end;
procedure TfrmYSCROL.TBRafreshClick(Sender: TObject);
begin
begdate.SetFocus;
InitGrid();
end;
procedure TfrmYSCROL.ToolButton2Click(Sender: TObject);
var
fsj:string;
begin
if ADOQueryMain.Active=False then Exit;
if Trim(SGetFilters(Panel1,1,2))='' then
begin
if Trim(FactoryName.Text)<>'' then
begin
fsj:=' FactoryName like '''+'%'+Trim(FactoryName.Text)+'%'+''''
+' or KHZJM like '''+'%'+Trim(FactoryName.Text)+'%'+'''';
end;
end else
begin
if Trim(FactoryName.Text)<>'' then
begin
fsj:=SGetFilters(Panel1,1,2)+' and (FactoryName like '''+'%'+Trim(FactoryName.Text)+'%'+''''
+' or KHZJM like '''+'%'+Trim(FactoryName.Text)+'%'+''')';
end;
end;
SDofilter(ADOQueryMain,fsj);
SCreateCDS20(ADOQueryMain,CDS_HZ);
SInitCDSData20(ADOQueryMain,CDS_HZ);
end;
procedure TfrmYSCROL.FactoryNameChange(Sender: TObject);
begin
ToolButton2.Click;
end;
procedure TfrmYSCROL.Button2Click(Sender: TObject);
begin
if CDS_HZ.IsEmpty then Exit;
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
if Trim(CDS_HZ.fieldbyname('SubID').AsString)<>'' then
begin
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('delete YCL_SG_HZ where SubID='''+Trim(CDS_HZ.fieldbyname('SubID').AsString)+'''');
ExecSQL;
end;
end;
CDS_HZ.Delete;
end;
function TfrmYSCROL.SaveData():Boolean;
var
maxId,CRID:String;
begin
try
ADOQueryCmd.Connection.BeginTrans;
if GetLSNo(ADOQueryCmd,maxId,'YS','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:=<>տ<EFBFBD><D5BF>Ǽ<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:=SGetServerDate(ADOQueryTemp);
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 TfrmYSCROL.cxGridDBColumn8PropertiesEditValueChanged(
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 YCL_SG_HZ ');
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 SubId='''+Trim(CDS_HZ.fieldbyname('SubId').AsString)+'''');
ExecSQL;
end;
end;
procedure TfrmYSCROL.cxGridDBColumn5PropertiesEditValueChanged(
Sender: TObject);
var
mvalue,FQty,FPrice,FMoney,FHuiLv,FBBMoney,FKCBB,FFieldName:String;
begin
{if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then
begin
Application.MessageBox('<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2>ܸ<EFBFBD><DCB8><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:='0';
{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(StrToFloat(FQty)*StrToFloat(FPrice)*StrToFloat(FHuiLv));
FMoney:=FloatToStr(StrToFloat(FQty)*StrToFloat(FPrice));
end else
begin
FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv));
end;
end else
begin
FBBMoney:=FloatToStr(StrToFloat(FMoney)*StrToFloat(FHuiLv));
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;
end;
procedure TfrmYSCROL.cxGridDBColumn1PropertiesEditValueChanged(
Sender: TObject);
var
mvalue,FFieldName:String;
begin
{if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then
begin
Application.MessageBox('<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2>ܸ<EFBFBD><DCB8><EFBFBD>!','<27><>ʾ',0);
Exit;
end; }
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;
end;
procedure TfrmYSCROL.ToolButton3Click(Sender: TObject);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='CustomerNoName';
flagname:='<27>Է<EFBFBD><D4B7><EFBFBD>λ';
if Trim(DParameters4)='<27>Է<EFBFBD><D4B7><EFBFBD>λ<EFBFBD>ֿ<EFBFBD>' then
MainType:='<27>տ<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);
if Trim(DParameters2)='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
begin
FieldByName('HuiLv').Value:=1;
end;
Post;
end;
Self.SaveData();
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmYSCROL.cxGridDBColumn3PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then
begin
Application.MessageBox('<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2>ܸ<EFBFBD><DCB8><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>';
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 TfrmYSCROL.cxGridDBColumn6PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then
begin
Application.MessageBox('<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2>ܸ<EFBFBD><DCB8><EFBFBD>!','<27><>ʾ',0);
Exit;
end;
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 TfrmYSCROL.v2Column3PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then
begin
Application.MessageBox('<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2>ܸ<EFBFBD><DCB8><EFBFBD>!','<27><>ʾ',0);
Exit;
end;
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 TfrmYSCROL.ToolButton1Click(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then Exit;
SelExportData(Tv2,ADOQueryMain,<>տ<EFBFBD><D5BF>б<EFBFBD>');
end;
procedure TfrmYSCROL.v2Column7PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'' then
begin
Application.MessageBox('<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2><EFBFBD>ɾ<EFBFBD><C9BE>!','<27><>ʾ',0);
Exit;
end;
try
frmProductOrderListOLJ:=TfrmProductOrderListOLJ.Create(Application);
with frmProductOrderListOLJ do
begin
//frmProductOrderList.v1Column4.Visible:=True;
if ShowModal=1 then
begin
with Self.CDS_HZ do
begin
Edit;
FieldByName('MainId').Value:=Trim(frmProductOrderListOLJ.Order_Main.fieldbyname('MainId').AsString);
FieldByName('OrderNo').Value:=Trim(frmProductOrderListOLJ.Order_Main.fieldbyname('OrderNo').AsString);
FieldByName('PRTCodeName').Value:=Trim(frmProductOrderListOLJ.Order_Main.fieldbyname('PRTCodeName').AsString);
FieldByName('Filler').Value:=Trim(frmProductOrderListOLJ.Order_Main.fieldbyname('Filler').AsString);
FieldByName('PRTSpec').Value:=Trim(frmProductOrderListOLJ.Order_Main.fieldbyname('Filler').AsString);
FieldByName('SCNO').Value:=Trim(frmProductOrderListOLJ.Order_Main.fieldbyname('SCNO').AsString);
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate YF_Money_CR ');
sql.Add(' Set MainId='''+Trim(frmProductOrderListOLJ.Order_Main.fieldbyname('MainId').AsString)+'''');
sql.Add(' ,SubId='''+Trim(frmProductOrderListOLJ.Order_Main.fieldbyname('SubId').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
frmProductOrderListOLJ.Free;
end;
end;
procedure TfrmYSCROL.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 TfrmYSCROL.v2Column2PropertiesEditValueChanged(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 TfrmYSCROL.v2KPMoneyPropertiesEditValueChanged(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 ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select isnull(KPMoney,0) KPMoney from YF_Money_CR where YFID='''+cds_hz.fieldbyname('YFID').AsString+'''');
Open;
end;
FKCBB:=ADOQueryTemp.fieldbyname('KPMoney').AsString;
FBBMoney:=CDS_HZ.fieldbyname('KPMoney').AsString;
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)+'''');
SQL.Add('Update YF_Money_KC Set KCKPMoney=KCKPMoney-'+FKCBB+'+'+FBBMoney);
sql.Add(' where CRID='''+Trim(CDS_HZ.fieldbyname('CRID').AsString)+'''');
ExecSQL;
end;
end;
procedure TfrmYSCROL.OrderNoChange(Sender: TObject);
begin
if Length(Trim(OrderNo.Text))<3 then Exit;
ToolButton2.Click;
end;
function TfrmYSCROL.YSData(Order_Main10:TClientDataSet):Boolean;
var
CRID,YFID,Price,PriceUnit,OrderUnit,FFactoryName:String;
CRTime:TDateTime;
begin
Result:=False;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select Top 1* from CK_BanCP_CR where Mainid='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+'''');
Open;
end;
if ADOQueryTemp.IsEmpty=False then
begin
CRTime:=ADOQueryTemp.fieldbyname('CRTime').Value;
end else
begin
Result:=False;
Application.MessageBox(<>з<EFBFBD><D0B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC>Ӧ<EFBFBD>տ<EFBFBD>!','<27><>ʾ',0);
Exit;
end;
with ADOQueryTemp do
begin
close;
SQL.Clear;
sql.Add('select Case when isnull(CustomerNoName,'''')='''' then ');
sql.Add(' OrderNo else CustomerNoName end as KHName from JYOrder_Main');
sql.Add(' where Mainid='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+'''');
Open;
end;
FFactoryName:=Trim(ADOQueryTemp.fieldbyname('KHName').AsString);
with ADOQueryTemp do
begin
Close;
SQL.Clear;
sql.Add('select Top 1 * from JYOrder_Sub Where Mainid='''+Trim(Order_Main10.fieldbyname('MainId').AsString)+'''');
//sql.Add(' and PRTPrice>0');
Open;
end;
Price:=ADOQueryTemp.fieldbyname('PRTPrice').AsString;
if Trim(Price)='' then
begin
Price:='0';
end;
PriceUnit:=Trim(ADOQueryTemp.fieldbyname('PriceUnit').AsString);
OrderUnit:=Trim(ADOQueryTemp.fieldbyname('OrderUnit').AsString);
with ADOQueryTemp do
begin
Close;
SQL.Clear;
sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(FFactoryName)+'''');
Open;
end;
if ADOQueryTemp.IsEmpty=False then
begin
CRID:=ADOQueryTemp.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('FactoryName').Value:=Trim(FFactoryName);
FieldByName('ZdyStr1').Value:=<><D3A6><EFBFBD><EFBFBD>';
Post;
end;
end;
{with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from YF_Money_CR where FactoryName='''+Trim(FFactoryName)+'''');
sql.Add(' and YFTypeId='''+Trim(Order_Main10.fieldbyname('Mainid').AsString)+'''');
Open;
end;}
//if ADOQueryTemp.IsEmpty then
begin
{if GetLSNo(ADOQueryCmd,YFID,'CS','YF_Money_CR',3,1)=False then
begin
Application.MessageBox('ȡ<><C8A1><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
Exit;
end;}
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from YF_Money_CR where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+'''');
Open;
end;
with ADOQueryCmd do
begin
Edit;
// FieldByName('YFID').Value:=Trim(YFID);
FieldByName('YFTypeId').Value:=Trim(Order_Main10.fieldbyname('MainId').AsString);
FieldByName('CRID').Value:=StrToInt(CRID);
FieldByName('Filler').Value:=Trim(DName);
FieldByName('CRType').Value:=<>տ<EFBFBD><D5BF>Ǽ<EFBFBD>';
FieldByName('CRFlag').Value:=<><D3A6><EFBFBD><EFBFBD>';
FieldByName('QtyFlag').Value:=1;
FieldByName('FactoryName').Value:=Trim(FFactoryName);
FieldByName('CRTime').Value:=Trim(FormatDateTime('yyyy-MM-dd',CRTime));
FieldByName('YFType').Value:='<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>';
FieldByName('Price').Value:=Price;
//FieldByName('HuiLv').Value:=1;
FieldByName('BZType').Value:=Trim(PriceUnit);
FieldByName('QtyUnit').Value:=Trim(OrderUnit);
FieldByName('YFName').Value:='<27><><EFBFBD>۽<EFBFBD><DBBD><EFBFBD>';
FieldByName('MainId').Value:=Trim(Order_Main10.fieldbyname('Mainid').AsString);
Post;
end;
YFID:=Trim(CDS_HZ.fieldbyname('YFID').AsString);
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate YF_Money_CR Set CRTime='''+Trim(FormatDateTime('yyyy-MM-dd',CRTime))+'''');
sql.Add(' ,Price='+Price);
SQL.Add(',BZType='''+Trim(PriceUnit)+'''');
SQL.Add(',QtyUnit='''+Trim(OrderUnit)+'''');
sql.Add(' where YFID='''+Trim(YFID)+'''');
ExecSQL;
end;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('update YF_Money_CR Set Qty=(select isnull(Sum(Qty),0) from CK_BanCP_CR A where ');
SQL.Add(' A.MainId=YF_Money_CR.YFTypeId and A.CRType=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' )');
sql.Add(',PS=(select isnull(count(*),0) from CK_BanCP_CR A where ');
SQL.Add(' A.MainId=YF_Money_CR.YFTypeId and A.CRType=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' )');
sql.Add(' where YFTypeId='''+Trim(Order_Main10.fieldbyname('Mainid').AsString)+'''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update YF_Money_CR Set Money=Price*Qty,BBMoney=Price*Qty*HuiLv');
sql.Add(' where YFID='''+Trim(YFID)+'''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
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 CRID='+CRID);
ExecSQL;
end;
Result:=True;
end;
procedure TfrmYSCROL.ToolButton4Click(Sender: TObject);
var
FYFID:String;
begin
if Trim(CDS_HZ.fieldbyname('YFType').AsString)<>'<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>' then
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from YF_Money_CR where MainId='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+'''');
sql.Add(' and YFTypeId='''+Trim(CDS_HZ.fieldbyname('MainId').AsString)+'''');
sql.Add(' and CRType='<>տ<EFBFBD><D5BF>Ǽ<EFBFBD>'' ');
SQL.Add(' and YFType=''<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>'' ');
Open;
end;
if ADOQueryTemp.IsEmpty=False then
begin
Application.MessageBox('<27><>ǰ<EFBFBD><C7B0><EFBFBD>ݴ<EFBFBD><DDB4><EFBFBD><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD>ɵ<EFBFBD><C9B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC>!','<27><>ʾ',0);
Exit;
end;
end;
if Application.MessageBox(<><C8B7>Ҫͬ<D2AA><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
FYFID:=Trim(CDS_HZ.fieldbyname('YFID').AsString);
try
ADOQueryCmd.Connection.BeginTrans;
if YSData(CDS_HZ)=false then
begin
ADOQueryCmd.Connection.RollbackTrans;
//Application.MessageBox('ͬ<><CDAC>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
Exit;
end;
ADOQueryCmd.Connection.CommitTrans;
Application.MessageBox(<><CDAC><EFBFBD>ɹ<EFBFBD>!','<27><>ʾ',0);
TBRafresh.Click;
ToolButton2.Click;
//FactoryName.SetFocus;
CDS_HZ.Locate('YFID',FYFID,[]);
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><CDAC>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
end;
end;
end.