889 lines
25 KiB
ObjectPascal
889 lines
25 KiB
ObjectPascal
unit U_BpGdYPCkEdit;
|
||
|
||
interface
|
||
|
||
uses
|
||
Windows, Messages, SysUtils, Variants, cxEdit,Classes, Graphics, Controls, Forms,
|
||
Dialogs, ComCtrls, ToolWin, StdCtrls, ExtCtrls, cxStyles, cxCustomData,
|
||
cxGraphics, cxFilter, cxData, cxDataStorage, DB, cxDBData,cxTextEdit,
|
||
cxButtonEdit, cxDropDownEdit, cxGridLevel, cxGridCustomTableView,
|
||
cxGridTableView, cxGridDBTableView, cxClasses, cxControls,
|
||
cxGridCustomView, cxGrid, DBClient, ADODB, cxGridCustomPopupMenu,
|
||
cxGridPopupMenu, cxCheckBox, BtnEdit, cxCurrencyEdit,strUtils, RM_Common,
|
||
RM_Class, RM_e_Xls, RM_GridReport, RM_System, RM_Dataset;
|
||
|
||
type
|
||
TfrmBpGdYPCkEdit = class(TForm)
|
||
ToolBar1: TToolBar;
|
||
TBRafresh: TToolButton;
|
||
TBExport: TToolButton;
|
||
TBPrint: TToolButton;
|
||
TBClose: TToolButton;
|
||
cxGrid1: TcxGrid;
|
||
Tv1: TcxGridDBTableView;
|
||
v1P_CodeName: TcxGridDBColumn;
|
||
v1QtyUnit: TcxGridDBColumn;
|
||
cxGrid1Level1: TcxGridLevel;
|
||
ADOQueryCmd: TADOQuery;
|
||
ADOQueryTmp: TADOQuery;
|
||
DataSource1: TDataSource;
|
||
CDS_Main: TClientDataSet;
|
||
cxGridPopupMenu1: TcxGridPopupMenu;
|
||
TOk: TToolButton;
|
||
v1P_Color: TcxGridDBColumn;
|
||
v1ckqty: TcxGridDBColumn;
|
||
v1price: TcxGridDBColumn;
|
||
v1money: TcxGridDBColumn;
|
||
Panel2: TPanel;
|
||
GroupBox1: TGroupBox;
|
||
CRTime: TDateTimePicker;
|
||
Label8: TLabel;
|
||
CRType: TComboBox;
|
||
Label5: TLabel;
|
||
Label9: TLabel;
|
||
cust: TBtnEditA;
|
||
ADOQuery1: TADOQuery;
|
||
ToolBar2: TToolBar;
|
||
ToolButton1: TToolButton;
|
||
ToolButton2: TToolButton;
|
||
Panel1: TPanel;
|
||
Label23: TLabel;
|
||
ADOPrint: TADOQuery;
|
||
RMDB_MD: TRMDBDataSet;
|
||
RMGridReport1: TRMGridReport;
|
||
RMXLSExport1: TRMXLSExport;
|
||
Label1: TLabel;
|
||
note: TEdit;
|
||
v1ssel: TcxGridDBColumn;
|
||
GroupBox2: TGroupBox;
|
||
Label2: TLabel;
|
||
P_CodeName: TBtnEditA;
|
||
Label3: TLabel;
|
||
Edit1: TEdit;
|
||
Label4: TLabel;
|
||
Edit2: TEdit;
|
||
Button1: TButton;
|
||
CheckBox1: TCheckBox;
|
||
custaddress: TEdit;
|
||
Label6: TLabel;
|
||
ADOQuery2: TADOQuery;
|
||
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
||
procedure FormDestroy(Sender: TObject);
|
||
procedure FormShow(Sender: TObject);
|
||
procedure FormCreate(Sender: TObject);
|
||
procedure TBCloseClick(Sender: TObject);
|
||
procedure TBRafreshClick(Sender: TObject);
|
||
procedure TBPrintClick(Sender: TObject);
|
||
procedure TBExportClick(Sender: TObject);
|
||
procedure TOkClick(Sender: TObject);
|
||
procedure custBtnClick(Sender: TObject);
|
||
procedure v1ckqtyPropertiesEditValueChanged(Sender: TObject);
|
||
procedure CheckBox1Click(Sender: TObject);
|
||
procedure ToolButton1Click(Sender: TObject);
|
||
procedure ToolButton2Click(Sender: TObject);
|
||
procedure v1P_CodeNamePropertiesEditValueChanged(Sender: TObject);
|
||
procedure v1P_ColorPropertiesEditValueChanged(Sender: TObject);
|
||
procedure Tv1CellClick(Sender: TcxCustomGridTableView;
|
||
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
|
||
AShift: TShiftState; var AHandled: Boolean);
|
||
procedure v1P_CodeNamePropertiesButtonClick(Sender: TObject;
|
||
AButtonIndex: Integer);
|
||
procedure P_CodeNameBtnClick(Sender: TObject);
|
||
procedure P_CodeNameExit(Sender: TObject);
|
||
procedure Button1Click(Sender: TObject);
|
||
procedure CRTimeKeyPress(Sender: TObject; var Key: Char);
|
||
private
|
||
procedure InitGrid();
|
||
procedure SetComboBox();
|
||
function savedate():Boolean;
|
||
function YSData(ckNo,CkID:string;Order_Main10:TClientDataSet):Boolean;
|
||
procedure DoKc();
|
||
{ Private declarations }
|
||
public
|
||
fType:integer;
|
||
fCKName:string;
|
||
fkeyNO:string;
|
||
|
||
{ Public declarations }
|
||
end;
|
||
|
||
var
|
||
frmBpGdYPCkEdit: TfrmBpGdYPCkEdit;
|
||
|
||
implementation
|
||
uses
|
||
U_DataLink,U_Fun10,U_ZDYHelp, U_BpRk, U_ZdyAttachCP, U_ZdyAttachment;
|
||
{$R *.dfm}
|
||
procedure TfrmBpGdYPCkEdit.DoKc();
|
||
begin
|
||
Label23.Caption:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0';
|
||
IF CDS_Main.IsEmpty then exit;
|
||
IF trim(CDS_Main.fieldbyname('P_CodeName').AsString)='' then exit;
|
||
IF trim(CDS_Main.fieldbyname('P_Color').AsString)='' then exit;
|
||
with ADOQuery1 do
|
||
begin
|
||
close;
|
||
sql.Clear;
|
||
sql.Add('select AA.* ');
|
||
sql.Add('FROM( select A.ckName,P_CodeName,A.P_Color,A.QtyUnit,ckQty=0.00,Price=0.00,money=0.00, ');
|
||
sql.Add(' SUM(case when CRFlag=''<27><><EFBFBD><EFBFBD>'' then Qty else -1 * Qty end ) as Qty ');
|
||
sql.Add('from BP_InOut A ');
|
||
sql.Add('where P_CodeName='+quotedstr(trim(CDS_Main.fieldbyname('P_CodeName').AsString)) );
|
||
sql.Add('and P_Color='+quotedstr(trim(CDS_Main.fieldbyname('P_Color').AsString)) );
|
||
if trim(FckName)<>'' then
|
||
sql.Add('and ckName='+quotedstr(trim(FckName)) );
|
||
sql.Add('group by A.ckName,P_CodeName,A.P_Color,A.QtyUnit)AA ');
|
||
open;
|
||
end;
|
||
IF not ADOQuery1.IsEmpty then
|
||
begin
|
||
// Label22.Caption:='ƥ<><C6A5><EFBFBD><EFBFBD>'+trim(ADOQuery1.fieldbyname('kcRollNum').AsString);
|
||
Label23.Caption:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'+trim(ADOQuery1.fieldbyname('Qty').AsString);
|
||
end;
|
||
end;
|
||
function TfrmBpGdYPCkEdit.YSData(ckNo,CkID:string;Order_Main10:TClientDataSet):Boolean;
|
||
var
|
||
CRID,YFID,Price,PriceUnit,OrderUnit,FComTaiTou:String;
|
||
begin
|
||
Result:=False;
|
||
with Order_Main10 do
|
||
begin
|
||
with ADOQuery1 do
|
||
begin
|
||
Close;
|
||
SQL.Clear;
|
||
sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(cust.text)+'''');
|
||
sql.Add('and YFDefFlag1=1 ');
|
||
Open;
|
||
end;
|
||
if not ADOQuery1.IsEmpty then
|
||
begin
|
||
CRID:=ADOQuery1.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(cust.text);
|
||
FieldByName('ZdyStr1').Value:='Ӧ<><D3A6><EFBFBD><EFBFBD>';
|
||
FieldByName('YFDefFlag1').Value:=1;
|
||
Post;
|
||
end;
|
||
end;
|
||
|
||
with ADOQuery1 do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('delete from YF_Money_CR ');
|
||
sql.Add(' where MainID='''+Trim(ckNo)+'''');
|
||
sql.Add(' and subID='''+Trim(ckID)+'''');
|
||
sql.Add(' and YFName=''<27>㶫<EFBFBD><E3B6AB><EFBFBD><EFBFBD>'' ');
|
||
execsql;
|
||
end;
|
||
with ADOQuery1 do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select * from YF_Money_CR ');
|
||
sql.Add(' where MainID='''+Trim(ckNo)+'''');
|
||
sql.Add(' and subID='''+Trim(ckID)+'''');
|
||
sql.Add(' and YFName=''<27>㶫<EFBFBD><E3B6AB><EFBFBD><EFBFBD>'' ');
|
||
Open;
|
||
end;
|
||
|
||
if ADOQuery1.IsEmpty then
|
||
begin
|
||
if GetLSNo(ADOQueryCmd,YFID,'CS','YF_Money_CR',4,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 1<>1');
|
||
Open;
|
||
end;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Append;
|
||
FieldByName('YFID').Value:=Trim(YFID);
|
||
FieldByName('YFTypeId').Value:=Trim(ckNo);
|
||
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(cust.Text);
|
||
FieldByName('CRTime').Value:=Trim(FormatDateTime('yyyy-MM-dd',CRTime.DateTime));
|
||
FieldByName('YFType').Value:='<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>';
|
||
FieldByName('ps').Value:=0;
|
||
FieldByName('Qty').Value:=Order_Main10.fieldbyname('Qty').AsFloat;
|
||
FieldByName('Price').Value:=Order_Main10.fieldbyname('Price').AsFloat;
|
||
FieldByName('Money').Value:=Order_Main10.fieldbyname('Money').AsFloat;
|
||
FieldByName('BBMoney').Value:=Order_Main10.fieldbyname('Money').AsFloat;
|
||
//FieldByName('HuiLv').Value:=1;
|
||
FieldByName('HuiLv').Value:=1;
|
||
FieldByName('BZType').Value:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
|
||
FieldByName('QtyUnit').Value:=Trim(Order_Main10.fieldbyname('QtyUnit').AsString);
|
||
FieldByName('ComTaiTou').Value:=Trim(cust.Text);
|
||
FieldByName('P_CodeName').Value:=trim(Order_Main10.fieldbyname('P_CodeName').AsString);
|
||
FieldByName('P_Color').Value:=trim(Order_Main10.fieldbyname('P_Color').AsString);
|
||
FieldByName('YFName').Value:='<27>㶫<EFBFBD><E3B6AB><EFBFBD><EFBFBD>';
|
||
FieldByName('MainId').Value:=Trim(ckNo);
|
||
FieldByName('subID').Value:=Trim(ckID);
|
||
FieldByName('YFDefFlag1').Value:=1;
|
||
FieldByName('syrName').Value:='<27>㶫<EFBFBD><E3B6AB><EFBFBD>в<EFBFBD>';
|
||
Post;
|
||
end;
|
||
end
|
||
else
|
||
begin
|
||
YFID:=Trim(ADOQuery1.fieldbyname('YFID').AsString);
|
||
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;
|
||
end;
|
||
Result:=True;
|
||
end;
|
||
function TfrmBpGdYPCkEdit.savedate():Boolean;
|
||
var
|
||
fkcID,i:integer;
|
||
Filler:string;
|
||
FillTime:TdateTime;
|
||
maxno:string;
|
||
begin
|
||
result:=false;
|
||
try
|
||
ADOQueryCmd.Connection.BeginTrans;
|
||
if FType=0 then
|
||
begin
|
||
if GetLSNo(ADOQueryCmd,fkeyNO,'GC','BP_InOut',3,1)=False then
|
||
begin
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
Application.MessageBox('ȡ<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
|
||
Exit;
|
||
end;
|
||
Filler:=DName;
|
||
FillTime:=SGetServerDateTime(adoqueryTmp);
|
||
end
|
||
else
|
||
begin
|
||
with adoqueryTmp do
|
||
begin
|
||
close;
|
||
sql.Clear;
|
||
sql.Add('select * from BP_InOut');
|
||
sql.Add('where CRNO='+quotedstr(trim(fkeyNO)));
|
||
open;
|
||
Filler:=adoqueryTmp.fieldbyname('Filler').AsString;
|
||
FillTime:=adoqueryTmp.fieldbyname('FillTime').AsDateTime;
|
||
end;
|
||
end;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('delete from YF_Money_CR ');
|
||
sql.Add(' where MainID='''+Trim(fkeyNO)+'''');
|
||
sql.Add(' and YFName=''<27>㶫<EFBFBD><E3B6AB><EFBFBD><EFBFBD>'' ');
|
||
sql.Add('and YFDefFlag1=1 ');
|
||
execsql;
|
||
end;
|
||
|
||
with ADOQueryCmd do
|
||
begin
|
||
close;
|
||
sql.Clear;
|
||
sql.Add('delete from BP_InOut');
|
||
sql.Add('where CRNO='+quotedstr(trim(fkeyNO)));
|
||
execsql;
|
||
end;
|
||
CDS_Main.DisableControls;
|
||
CDS_Main.First;
|
||
i:=1;
|
||
with CDS_Main do
|
||
begin
|
||
while not eof do
|
||
begin
|
||
with ADOQueryCmd do
|
||
begin
|
||
close;
|
||
sql.Clear;
|
||
sql.Add('select * from BP_InOut');
|
||
sql.Add('where 1=2 ');
|
||
open;
|
||
end;
|
||
ADOQueryCmd.Append;
|
||
ADOQueryCmd.FieldByName('CRNO').Value:=trim(fkeyNO);
|
||
ADOQueryCmd.FieldByName('CRID').Value:=i;
|
||
ADOQueryCmd.FieldByName('CKName').Value:=trim(fckName);
|
||
// ADOQueryCmd.FieldByName('mainID').Value:=trim(fmainID);
|
||
// ADOQueryCmd.FieldByName('subID').Value:=trim(fsubID);
|
||
ADOQueryCmd.FieldByName('CRTime').Value:=formatdateTime('yyyy-MM-dd',CRTime.Date);
|
||
ADOQueryCmd.FieldByName('CRType').Value:=trim(crType.Text);
|
||
ADOQueryCmd.FieldByName('CRFlag').Value:='<27><><EFBFBD><EFBFBD>';
|
||
// ADOQueryCmd.FieldByName('MJID').Value:=trim(fieldbyname('MJID').AsString);
|
||
// ADOQueryCmd.FieldByName('MJXH').Value:=trim(fieldbyname('MJXH').AsString);
|
||
// ADOQueryCmd.FieldByName('CPTYPE').Value:=trim(fieldbyname('CPTYPE').AsString);
|
||
// ADOQueryCmd.FieldByName('P_Code').Value:=trim(fieldbyname('P_Code').AsString);
|
||
ADOQueryCmd.FieldByName('P_CodeName').Value:=trim(fieldbyname('P_CodeName').AsString);
|
||
// ADOQueryCmd.FieldByName('P_spec').Value:=trim(fieldbyname('P_spec').AsString);
|
||
ADOQueryCmd.FieldByName('P_Color').Value:=trim(fieldbyname('P_Color').AsString);
|
||
// ADOQueryCmd.FieldByName('P_MF').Value:=fieldbyname('P_MF').AsFloat;
|
||
// ADOQueryCmd.FieldByName('P_KZ').Value:=fieldbyname('P_KZ').AsFloat;
|
||
ADOQueryCmd.FieldByName('RollNum').Value:=0;
|
||
ADOQueryCmd.FieldByName('Qty').Value:=fieldbyname('Qty').AsFloat;
|
||
ADOQueryCmd.FieldByName('Price').Value:=fieldbyname('Price').AsFloat;
|
||
ADOQueryCmd.FieldByName('money').Value:=fieldbyname('money').AsFloat;
|
||
ADOQueryCmd.FieldByName('QtyUnit').Value:=trim(fieldbyname('QtyUnit').AsString);
|
||
// ADOQueryCmd.FieldByName('note').Value:=trim(fieldbyname('note').AsString);
|
||
ADOQueryCmd.FieldByName('Filler').Value:=trim(Filler);
|
||
ADOQueryCmd.FieldByName('FillTime').Value:=dateTimetostr(FillTime);
|
||
ADOQueryCmd.FieldByName('cust').Value:=trim(cust.Text);
|
||
ADOQueryCmd.FieldByName('custaddress').Value:=trim(custaddress.Text);
|
||
ADOQueryCmd.FieldByName('note').Value:=trim(note.Text);
|
||
// ADOQueryCmd.FieldByName('FirstNo').Value:=trim(FirstName.TxtCode);
|
||
// ADOQueryCmd.FieldByName('FirstName').Value:=trim(FirstName.Text);
|
||
if FType=1 then
|
||
begin
|
||
ADOQueryCmd.FieldByName('editer').Value:=trim(dName);
|
||
ADOQueryCmd.FieldByName('editTime').Value:=SGetServerDateTime(ADOQuery1);
|
||
end;
|
||
ADOQueryCmd.Post;
|
||
IF trim(CRType.Text)='<27>㶫<EFBFBD><E3B6AB><EFBFBD><EFBFBD>' then
|
||
begin
|
||
if not YSData(fkeyNo,inttostr(i),CDS_Main) then
|
||
begin
|
||
CDS_Main.EnableControls;
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
exit;
|
||
end;
|
||
end;
|
||
i:=i+1;
|
||
next;
|
||
end;
|
||
end;
|
||
|
||
CDS_Main.EnableControls;
|
||
ADOQueryCmd.Connection.CommitTrans;
|
||
result:=true;
|
||
except
|
||
CDS_Main.EnableControls;
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
end;
|
||
end;
|
||
procedure TfrmBpGdYPCkEdit.SetComboBox();
|
||
begin
|
||
{ ckName.Items.Clear;
|
||
with adoQueryTmp do
|
||
begin
|
||
close;
|
||
sql.Clear;
|
||
sql.Add('select * from KH_ZDY where Type=''BPCK'' ');
|
||
if trim(fCKName)<>'' then
|
||
sql.Add('and zdyName='+quotedstr(trim(fCKName)));
|
||
open;
|
||
while not eof do
|
||
begin
|
||
ckName.Items.Add(trim(fieldbyname('zdyName').AsString));
|
||
next;
|
||
end;
|
||
end;
|
||
if ckName.Items.Count>0 then ckName.ItemIndex:=0; }
|
||
|
||
CRType.Items.Clear;
|
||
// CRType.Items.Add('');
|
||
with adoQueryTmp do
|
||
begin
|
||
close;
|
||
sql.Clear;
|
||
sql.Add('select * from KH_ZDY where Type=''BPCKTYPE''');
|
||
if trim(fCKName)<>'' then
|
||
sql.Add('and note='+quotedstr(trim(fCKName)));
|
||
open;
|
||
while not eof do
|
||
begin
|
||
CRType.Items.Add(trim(fieldbyname('zdyName').AsString));
|
||
next;
|
||
end;
|
||
end;
|
||
if CRType.Items.Count>0 then CRType.ItemIndex:=0;
|
||
end;
|
||
procedure TfrmBpGdYPCkEdit.InitGrid();
|
||
begin
|
||
try
|
||
with adoqueryTmp do
|
||
begin
|
||
close;
|
||
sql.Clear;
|
||
sql.Add('select A.* from BP_InOut A');
|
||
sql.Add('where A.CRNO='+quotedstr(trim(fkeyNO)));
|
||
open;
|
||
end;
|
||
SCreateCDS20(adoqueryTmp,CDS_Main);
|
||
SInitCDSData20(adoqueryTmp,CDS_Main);
|
||
if not CDS_Main.IsEmpty then
|
||
begin
|
||
CRTime.Date:= CDS_Main.fieldbyname('CRTime').AsDateTime;
|
||
// CKName.ItemIndex:=CKName.Items.IndexOf(trim(CDS_Main.fieldbyname('CKName').AsString));
|
||
CRType.ItemIndex:=CRType.Items.IndexOf(trim(CDS_Main.fieldbyname('CRType').AsString));
|
||
cust.Text:= trim(CDS_Main.fieldbyname('cust').AsString);
|
||
custaddress.Text:= trim(CDS_Main.fieldbyname('custaddress').AsString);
|
||
note.Text:= trim(CDS_Main.fieldbyname('note').AsString);
|
||
end;
|
||
finally
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmBpGdYPCkEdit.FormClose(Sender: TObject;
|
||
var Action: TCloseAction);
|
||
begin
|
||
writeCxGrid(self.Caption,Tv1,'<27><>ƥ<EFBFBD>ֿ<EFBFBD>');
|
||
if fType=10 then Action:=cahide
|
||
else Action:=cafree;
|
||
end;
|
||
|
||
procedure TfrmBpGdYPCkEdit.FormDestroy(Sender: TObject);
|
||
begin
|
||
frmBpGdYPCkEdit:=nil;
|
||
end;
|
||
|
||
procedure TfrmBpGdYPCkEdit.FormShow(Sender: TObject);
|
||
begin
|
||
{ if fType=10 then
|
||
begin
|
||
TOk.Visible:=true;
|
||
// v1Ssel.Visible:=true;
|
||
v1ckqty.Visible:=true;
|
||
v1price.Visible:=true;
|
||
v1money.Visible:=true;
|
||
GroupBox1.Visible:=true;
|
||
end
|
||
else
|
||
begin
|
||
TOk.Visible:=false;
|
||
// v1Ssel.Visible:=false;
|
||
v1ckqty.Visible:=false;
|
||
v1price.Visible:=false;
|
||
v1money.Visible:=false;
|
||
GroupBox1.Visible:=false;
|
||
end; }
|
||
readCxGrid(self.Caption,Tv1,'<27><>ƥ<EFBFBD>ֿ<EFBFBD>');
|
||
SetComboBox();
|
||
InitGrid();
|
||
end;
|
||
|
||
procedure TfrmBpGdYPCkEdit.FormCreate(Sender: TObject);
|
||
begin
|
||
//BegDate.Date:=DServerDate-7;
|
||
// EndDate.Date:=DServerDate;
|
||
CRTime.date:= DServerDate;
|
||
cxGrid1.Align:=alclient;
|
||
|
||
end;
|
||
|
||
procedure TfrmBpGdYPCkEdit.TBCloseClick(Sender: TObject);
|
||
begin
|
||
close;
|
||
end;
|
||
|
||
procedure TfrmBpGdYPCkEdit.TBRafreshClick(Sender: TObject);
|
||
begin
|
||
|
||
initGrid();
|
||
end;
|
||
|
||
procedure TfrmBpGdYPCkEdit.TBPrintClick(Sender: TObject);
|
||
var
|
||
filepath:string;
|
||
begin
|
||
if trim(fkeyNO)='' then exit;
|
||
|
||
with AdoPrint do
|
||
begin
|
||
close;
|
||
sql.Clear;
|
||
sql.Add('exec P_Do_PrintMd ');
|
||
sql.Add('@mainID='+quotedstr(trim(fkeyNO)));
|
||
sql.Add(',@flag='+quotedstr(trim('<27>㶫<EFBFBD><E3B6AB><EFBFBD><EFBFBD>')));
|
||
open;
|
||
end;
|
||
|
||
try
|
||
filepath:=ExtractFilePath(Application.ExeName) + 'report\<5C><><EFBFBD><EFBFBD><EFBFBD>뵥<EFBFBD><EBB5A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.rmf';
|
||
if not FileExists(Pchar(filepath)) then
|
||
begin
|
||
application.MessageBox(pchar('<27>ļ<EFBFBD>['+filepath+']<5D><><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD>'),'<27><>ʾ<EFBFBD><CABE>Ϣ',MB_IConError);
|
||
exit;
|
||
end;
|
||
RMVariables['dtxz'] :=FormatDateTime('yyyy-mm-dd',date());
|
||
RMVariables['zdr'] :=trim(DName);
|
||
RMVariables['Filler'] :=trim(DName);
|
||
RMGridReport1.LoadFromFile(filepath);
|
||
RMGridReport1.ShowReport;
|
||
finally
|
||
|
||
end;
|
||
|
||
end;
|
||
|
||
procedure TfrmBpGdYPCkEdit.TBExportClick(Sender: TObject);
|
||
begin
|
||
if CDS_Main.IsEmpty then Exit;
|
||
TcxGridToExcel(self.Caption,cxgrid1);
|
||
end;
|
||
|
||
procedure TfrmBpGdYPCkEdit.TOkClick(Sender: TObject);
|
||
begin
|
||
CRTIME.SetFocus;
|
||
IF CDS_Main.IsEmpty then exit;
|
||
if trim(CRType.Text)='' then
|
||
begin
|
||
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD><CDB2><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',0);
|
||
exit;
|
||
end;
|
||
if trim(cust.Text)=''then
|
||
begin
|
||
application.MessageBox('<27>ͻ<EFBFBD><CDBB><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',0);
|
||
exit;
|
||
end;
|
||
if savedate() then
|
||
begin
|
||
application.MessageBox('<27><><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ');
|
||
TOk.Enabled:=false;
|
||
TBPrint.Enabled:=true;
|
||
// ModalResult:=1;
|
||
end
|
||
else
|
||
begin
|
||
application.MessageBox('<27><><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',MB_ICONERROR);
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmBpGdYPCkEdit.custBtnClick(Sender: TObject);
|
||
begin
|
||
try
|
||
frmZdyAttachment:=TfrmZdyAttachment.Create(Application);
|
||
with frmZdyAttachment do
|
||
begin
|
||
fkhType:='<27>㶫<EFBFBD>ͻ<EFBFBD>';
|
||
if ShowModal=1 then
|
||
begin
|
||
cust.Text:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString);
|
||
custaddress.Text:=Trim(CDS_HZ.fieldbyname('defnote1').AsString);
|
||
end;
|
||
end;
|
||
finally
|
||
frmZdyAttachment.Free;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmBpGdYPCkEdit.v1ckqtyPropertiesEditValueChanged(Sender: TObject);
|
||
var
|
||
mvalue,fieldname,qty1,qty2:String;
|
||
num1:double;
|
||
|
||
begin
|
||
fieldname:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName;
|
||
with CDS_Main do
|
||
begin
|
||
Edit;
|
||
FieldByName(Trim(fieldname)).Value:=TcxTextEdit(Sender).EditingText;
|
||
num1:=FieldByName('Qty').AsFloat * FieldByName('Price').AsFloat;
|
||
FieldByName('Money').Value:=strtofloat(format('%.2f',[num1]));
|
||
Post;
|
||
end;
|
||
Tv1.Controller.EditingController.ShowEdit();
|
||
end;
|
||
|
||
procedure TfrmBpGdYPCkEdit.CheckBox1Click(Sender: TObject);
|
||
begin
|
||
IF CDS_Main.IsEmpty then exit;
|
||
with CDS_Main do
|
||
begin
|
||
DisableControls;
|
||
first;
|
||
while not eof do
|
||
begin
|
||
edit;
|
||
fieldbyname('ssel').Value:=checkbox1.Checked;
|
||
post;
|
||
next;
|
||
end;
|
||
First;
|
||
EnableControls;
|
||
end;
|
||
// TBRafresh.Click;
|
||
end;
|
||
|
||
procedure TfrmBpGdYPCkEdit.ToolButton1Click(Sender: TObject);
|
||
begin
|
||
CopyAddRow(Tv1,CDS_Main);
|
||
CDS_Main.edit;
|
||
CDS_Main.fieldbyname('QtyUnit').Value:='M';
|
||
CDS_Main.Post;
|
||
end;
|
||
|
||
procedure TfrmBpGdYPCkEdit.ToolButton2Click(Sender: TObject);
|
||
begin
|
||
if CDS_Main.IsEmpty then exit;
|
||
with CDS_Main do
|
||
begin
|
||
DisableControls;
|
||
first;
|
||
while not eof do
|
||
begin
|
||
if CDS_Main.Locate('ssel',true,[]) then
|
||
begin
|
||
CDS_Main.Delete;
|
||
end
|
||
else
|
||
begin
|
||
First;
|
||
EnableControls;
|
||
exit;
|
||
end;
|
||
//next;
|
||
end;
|
||
First;
|
||
EnableControls;
|
||
end;
|
||
|
||
end;
|
||
|
||
procedure TfrmBpGdYPCkEdit.v1P_CodeNamePropertiesEditValueChanged(
|
||
Sender: TObject);
|
||
var
|
||
mvalue:string;
|
||
begin
|
||
mvalue:=TcxTextEdit(Sender).EditingText;
|
||
|
||
IF trim(mvalue)='' then exit;
|
||
|
||
IF rightBstr(trim(mvalue),1)<>'#'THEN
|
||
BEGIn
|
||
mvalue:=trim(mvalue)+'#';
|
||
END;
|
||
|
||
|
||
with CDS_Main do
|
||
begin
|
||
Edit;
|
||
FieldByName('P_CodeName').Value:=Trim(mvalue);
|
||
Post;
|
||
end;
|
||
self.tv1.Controller.EditingController.ShowEdit();
|
||
DoKc();
|
||
|
||
with ADOQuery1 do
|
||
begin
|
||
close;
|
||
sql.Clear;
|
||
sql.Add('select * from KH_Zdy_Attachment A ');
|
||
sql.Add('where zdyName='+quotedstr(trim(CDS_Main.fieldbyname('P_CodeName').AsString)));
|
||
open;
|
||
end;
|
||
IF ADOQuery1.IsEmpty then
|
||
begin
|
||
application.MessageBox('Ʒ<><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',0);
|
||
with CDS_Main do
|
||
begin
|
||
Edit;
|
||
FieldByName('P_CodeName').Value:='';
|
||
Post;
|
||
end;
|
||
exit;
|
||
end;
|
||
|
||
end;
|
||
|
||
procedure TfrmBpGdYPCkEdit.v1P_ColorPropertiesEditValueChanged(
|
||
Sender: TObject);
|
||
var
|
||
mvalue:string;
|
||
begin
|
||
mvalue:=TcxTextEdit(Sender).EditingText;
|
||
|
||
IF trim(mvalue)='' then exit;
|
||
|
||
IF rightBstr(trim(mvalue),1)<>'#'THEN
|
||
BEGIn
|
||
mvalue:=trim(mvalue)+'#';
|
||
END;
|
||
|
||
|
||
with CDS_Main do
|
||
begin
|
||
Edit;
|
||
FieldByName('P_Color').Value:=Trim(mvalue);
|
||
Post;
|
||
end;
|
||
self.tv1.Controller.EditingController.ShowEdit();
|
||
DoKc();
|
||
|
||
with ADOQuery1 do
|
||
begin
|
||
close;
|
||
sql.Clear;
|
||
sql.Add('select * from KH_Zdy_Attachment A ');
|
||
sql.Add('where zdyName='+quotedstr(trim(CDS_Main.fieldbyname('P_CodeName').AsString)));
|
||
sql.Add('and DEFstr3='+quotedstr(trim(CDS_Main.fieldbyname('P_Color').AsString)));
|
||
open;
|
||
end;
|
||
IF ADOQuery1.IsEmpty then
|
||
begin
|
||
application.MessageBox('<27><>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',0);
|
||
with CDS_Main do
|
||
begin
|
||
Edit;
|
||
FieldByName('P_Color').Value:='';
|
||
Post;
|
||
end;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmBpGdYPCkEdit.Tv1CellClick(Sender: TcxCustomGridTableView;
|
||
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
|
||
AShift: TShiftState; var AHandled: Boolean);
|
||
begin
|
||
DoKc();
|
||
end;
|
||
|
||
procedure TfrmBpGdYPCkEdit.v1P_CodeNamePropertiesButtonClick(Sender: TObject;
|
||
AButtonIndex: Integer);
|
||
begin
|
||
try
|
||
frmZdyAttachCP:=TfrmZdyAttachCP.Create(Application);
|
||
with frmZdyAttachCP do
|
||
begin
|
||
if ShowModal=1 then
|
||
begin
|
||
Self.CDS_main.Edit;
|
||
Self.CDS_main.FieldByName('P_Code').Value:=Trim(CDS_HZ.fieldbyname('ZdyCode').AsString);
|
||
Self.CDS_main.FieldByName('P_CodeName').Value:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString);
|
||
Self.CDS_main.FieldByName('P_Color').Value:=Trim(CDS_HZ.fieldbyname('DEFstr3').AsString);
|
||
// Self.Order_Sub.FieldByName('SOrddefstr4').Value:=Trim(ClientDataSet1.fieldbyname('Note').AsString);
|
||
Self.CDS_main.Post;
|
||
end;
|
||
end;
|
||
finally
|
||
frmZdyAttachCP.Free;
|
||
end;
|
||
self.tv1.Controller.EditingController.ShowEdit();
|
||
end;
|
||
|
||
procedure TfrmBpGdYPCkEdit.P_CodeNameBtnClick(Sender: TObject);
|
||
begin
|
||
try
|
||
frmZdyAttachCP:=TfrmZdyAttachCP.Create(Application);
|
||
with frmZdyAttachCP do
|
||
begin
|
||
if ShowModal=1 then
|
||
begin
|
||
Self.P_COdeName.Text:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString);
|
||
end;
|
||
end;
|
||
finally
|
||
frmZdyAttachCP.Free;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmBpGdYPCkEdit.P_CodeNameExit(Sender: TObject);
|
||
var
|
||
mvalue:string;
|
||
begin
|
||
mvalue:=trim(P_CodeName.Text);
|
||
IF trim(mvalue)='' then exit;
|
||
|
||
IF rightBstr(trim(mvalue),1)<>'#'THEN
|
||
BEGIn
|
||
mvalue:=trim(mvalue)+'#';
|
||
END;
|
||
P_CodeName.Text:= trim(mvalue);
|
||
|
||
with ADOQuery1 do
|
||
begin
|
||
close;
|
||
sql.Clear;
|
||
sql.Add('select * from KH_Zdy_Attachment A ');
|
||
sql.Add('where zdyName='+quotedstr(trim(mvalue)));
|
||
open;
|
||
end;
|
||
IF ADOQuery1.IsEmpty then
|
||
begin
|
||
application.MessageBox('Ʒ<><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',0);
|
||
P_CodeName.Text:='';
|
||
exit;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmBpGdYPCkEdit.Button1Click(Sender: TObject);
|
||
begin
|
||
with ADOQuery1 do
|
||
begin
|
||
close;
|
||
sql.Clear;
|
||
sql.Add('select * from KH_Zdy_Attachment A ');
|
||
sql.Add('where zdyName='+quotedstr(trim(P_CodeName.Text)));
|
||
open;
|
||
end;
|
||
|
||
CDS_Main.DisableControls;
|
||
CDS_Main.Last;
|
||
while not ADOQuery1.Eof do
|
||
begin
|
||
CDS_Main.Append;
|
||
CDS_main.FieldByName('P_Code').Value:=Trim(ADOQuery1.fieldbyname('ZdyCode').AsString);
|
||
CDS_main.FieldByName('P_CodeName').Value:=Trim(ADOQuery1.fieldbyname('ZDYName').AsString);
|
||
CDS_main.FieldByName('P_Color').Value:=Trim(ADOQuery1.fieldbyname('DEFstr3').AsString);
|
||
CDS_main.FieldByName('Qty').Value:=strtofloatdef(trim(edit1.Text),0);
|
||
CDS_main.FieldByName('Price').Value:=strtofloatdef(trim(edit2.Text),0);
|
||
CDS_main.FieldByName('Money').Value:=strtofloat(format('%.2f',[CDS_main.FieldByName('Qty').AsFloat * CDS_main.FieldByName('Price').AsFloat]));
|
||
CDS_Main.Post;
|
||
ADOQuery1.Next;
|
||
end;
|
||
CDS_Main.EnableControls;
|
||
|
||
end;
|
||
|
||
procedure TfrmBpGdYPCkEdit.CRTimeKeyPress(Sender: TObject; var Key: Char);
|
||
begin
|
||
Key:=UpCase(Key);
|
||
if key=#13 then
|
||
begin
|
||
perform(WM_NEXTDLGCTL,0,0);
|
||
Key := #0;
|
||
end;
|
||
end;
|
||
|
||
end.
|