unit U_CPRK_Other; interface uses Windows, Messages,strutils, SysUtils, Variants, cxTextEdit,Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, ComCtrls, ToolWin, StdCtrls, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, cxButtonEdit, cxDropDownEdit, cxGridLevel, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, DBClient, ADODB, BtnEdit, cxCurrencyEdit; type TfrmCPRK_Other = class(TForm) ToolBar1: TToolBar; TBSave: TToolButton; TBClose: TToolButton; Panel1: TPanel; Label1: TLabel; CRTIME: TDateTimePicker; cxGrid1: TcxGrid; Tv1: TcxGridDBTableView; v1Column1: TcxGridDBColumn; v1PRTSpec: TcxGridDBColumn; v1PRTColor: TcxGridDBColumn; v1PRTKZ: TcxGridDBColumn; v1ClothQty: TcxGridDBColumn; v1Column5: TcxGridDBColumn; v1ClothUnit: TcxGridDBColumn; v1Column2: TcxGridDBColumn; v1Column3: TcxGridDBColumn; v1money: TcxGridDBColumn; cxGrid1Level1: TcxGridLevel; ToolBar2: TToolBar; ToolButton1: TToolButton; ToolButton2: TToolButton; ADOQueryTmp: TADOQuery; ADOQueryCmd: TADOQuery; DataSource1: TDataSource; CDS_main: TClientDataSet; v1C_Color: TcxGridDBColumn; v1MJXH: TcxGridDBColumn; v1MJId: TcxGridDBColumn; Label2: TLabel; kcKw: TBtnEditA; Edit1: TEdit; Label3: TLabel; v1Column8: TcxGridDBColumn; v1CRType: TcxGridDBColumn; CRType: TComboBox; Label16: TLabel; Label4: TLabel; CustomerNoName: TBtnEditC; Label5: TLabel; Edit2: TEdit; ADOQueryTemp: TADOQuery; Label6: TLabel; note: TEdit; v1Price: TcxGridDBColumn; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormDestroy(Sender: TObject); procedure FormCreate(Sender: TObject); procedure v1Column1PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure ToolButton1Click(Sender: TObject); procedure ToolButton2Click(Sender: TObject); procedure FormShow(Sender: TObject); procedure TBCloseClick(Sender: TObject); procedure TBSaveClick(Sender: TObject); procedure v1C_ColorPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure kcKwBtnClick(Sender: TObject); procedure Edit1KeyPress(Sender: TObject; var Key: Char); procedure v1Column1PropertiesEditValueChanged(Sender: TObject); procedure v1C_ColorPropertiesEditValueChanged(Sender: TObject); procedure CustomerNoNameBtnUpClick(Sender: TObject); procedure CustomerNoNameBtnDnClick(Sender: TObject); procedure Edit2KeyPress(Sender: TObject; var Key: Char); procedure v1Column8PropertiesEditValueChanged(Sender: TObject); procedure v1PricePropertiesEditValueChanged(Sender: TObject); private procedure IntGrid(); function savedate():boolean; function YSData(crkNo:string):Boolean; function YFData(crkNo:string):Boolean; { Private declarations } public fkeyNo:string; fBCID:string; fFlag:integer; { Public declarations } end; var frmCPRK_Other: TfrmCPRK_Other; implementation uses U_DataLink,U_ZDYHelp,U_Fun,U_ZDYHelpSel, U_ZdyAttachCP, U_ZdyAttachment; {$R *.dfm} function TfrmCPRK_Other.YFData(crkNo:string):Boolean; var CRID,YFID,Price,PriceUnit,OrderUnit,FComTaiTou,fYFDefFlag1,fCustomerNoName:String; begin Result:=False; fYFDefFlag1:='2'; // fYFDefFlag1:='1'; fCustomerNoName:=trim(CustomerNoName.text); // IF trim(CustomerNoName.text)='�������в�'then // fCustomerNoName:='������֯'; with ADOQueryTemp do begin Close; SQL.Clear; sql.Add('select * from YF_Money_KC where FactoryName='''+trim(fCustomerNoName)+''''); sql.Add(' and YFDefFlag1='''+trim(fYFDefFlag1)+''' '); Open; end; if not ADOQueryTemp.IsEmpty 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(fCustomerNoName); FieldByName('YFDefFlag1').Value:=fYFDefFlag1; FieldByName('ZdyStr1').Value:='Ӧ����'; Post; end; end; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('delete from YF_Money_CR '); sql.Add(' where MainID='''+Trim(crkNO)+''''); sql.Add(' and YFName='''+trim(CRType.Text)+''' '); execsql; end; with ADOQueryTemp do begin Close; sql.Clear; sql.Add('select C_CodeName,C_Color,SUM(RollNum) as RollNum,SUM(Qty) as Qty from CK_BanCP_CR1 '); sql.Add(' where CKOrdNo='''+Trim(crkNO)+''''); sql.Add(' and CRType='''+trim(CRType.Text)+''' '); sql.Add(' group by C_CodeName,C_Color '); Open; end; while not ADOQueryTemp.eof do begin if GetLSNo(ADOQueryCmd,YFID,'CS','YF_Money_CR',3,1)=False then begin Application.MessageBox('ȡ����Ӧ������ʧ��!','��ʾ',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(crkNO); FieldByName('CRID').Value:=StrToInt(CRID); FieldByName('Filler').Value:=Trim(DName); FieldByName('CRType').Value:='Ӧ����Ǽ�'; FieldByName('CRFlag').Value:='Ӧ����'; FieldByName('QtyFlag').Value:=1; FieldByName('FactoryName').Value:=trim(fCustomerNoName); FieldByName('CRTime').Value:=Trim(FormatDateTime('yyyy-MM-dd',CRTIME.DateTime)); FieldByName('YFType').Value:='�Զ�����'; FieldByName('Price').Value:=0; FieldByName('PS').Value:= ADOQueryTemp.fieldbyname('RollNum').AsFloat; FieldByName('Qty').Value:= ADOQueryTemp.fieldbyname('Qty').AsFloat; FieldByName('P_CodeName').Value:=ADOQueryTemp.fieldbyname('C_CodeName').AsString; FieldByName('P_Color').Value:=ADOQueryTemp.fieldbyname('C_Color').AsString; //FieldByName('HuiLv').Value:=1; FieldByName('HuiLv').Value:=1; FieldByName('BZType').Value:='�����'; FieldByName('QtyUnit').Value:='M'; FieldByName('ComTaiTou').Value:=trim(CustomerNoName.Text); FieldByName('YFName').Value:=trim(CRType.Text); FieldByName('MainId').Value:=Trim(crkNO); FieldByName('subID').Value:=''; FieldByName('YFDefFlag1').Value:=fYFDefFlag1; FieldByName('syrName').Value:='���˷�֯'; // FieldByName('status').Value:='1'; Post; end; ADOQueryTemp.next; 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; function TfrmCPRK_Other.YSData(crkNo:string):Boolean; var CRID,YFID,Price,PriceUnit,OrderUnit,FComTaiTou,fYFDefFlag1:String; begin Result:=False; fYFDefFlag1:='2'; with ADOQueryTemp do begin Close; SQL.Clear; sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(CustomerNoName.Text)+''''); sql.Add(' and YFDefFlag1='''+trim(fYFDefFlag1)+''' '); Open; end; if not ADOQueryTemp.IsEmpty 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(CustomerNoName.Text); FieldByName('YFDefFlag1').Value:=fYFDefFlag1; FieldByName('ZdyStr1').Value:='Ӧ����'; Post; end; end; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('delete from YF_Money_CR '); sql.Add(' where MainID='''+Trim(crkNO)+''''); sql.Add(' and YFName=''�˻����'' '); execsql; end; with ADOQueryTemp do begin Close; sql.Clear; sql.Add('select C_CodeName,C_Color,SUM(RollNum) as RollNum,SUM(Qty) as Qty,sum(money) as Money,Price from CK_BanCP_CR1 '); sql.Add(' where CKOrdNo='''+Trim(crkNO)+''''); sql.Add(' and CRType=''�˻����'' '); sql.Add(' group by C_CodeName,C_Color,Price '); Open; end; while not ADOQueryTemp.eof do begin if GetLSNo(ADOQueryCmd,YFID,'CS','YF_Money_CR',3,1)=False then begin Application.MessageBox('ȡ����Ӧ������ʧ��!','��ʾ',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(crkNO); FieldByName('CRID').Value:=StrToInt(CRID); FieldByName('Filler').Value:=Trim(DName); FieldByName('CRType').Value:='Ӧ�տ�Ǽ�'; FieldByName('CRFlag').Value:='Ӧ����'; FieldByName('QtyFlag').Value:=1; FieldByName('FactoryName').Value:=Trim(CustomerNoName.Text); FieldByName('CRTime').Value:=Trim(FormatDateTime('yyyy-MM-dd',CRTIME.DateTime)); FieldByName('YFType').Value:='�Զ�����'; FieldByName('Price').Value:=0; FieldByName('PS').Value:=-1 * ADOQueryTemp.fieldbyname('RollNum').AsFloat; FieldByName('Qty').Value:=-1 * ADOQueryTemp.fieldbyname('Qty').AsFloat; FieldByName('Price').Value:= ADOQueryTemp.fieldbyname('Price').AsFloat; FieldByName('money').Value:= -1* ADOQueryTemp.fieldbyname('money').AsFloat; FieldByName('BBmoney').Value:= -1* ADOQueryTemp.fieldbyname('money').AsFloat; FieldByName('P_CodeName').Value:=ADOQueryTemp.fieldbyname('C_CodeName').AsString; FieldByName('P_Color').Value:=ADOQueryTemp.fieldbyname('C_Color').AsString; //FieldByName('HuiLv').Value:=1; FieldByName('HuiLv').Value:=1; FieldByName('BZType').Value:='�����'; FieldByName('QtyUnit').Value:='M'; FieldByName('ComTaiTou').Value:=Trim(CustomerNoName.Text); FieldByName('YFName').Value:='�˻����'; FieldByName('MainId').Value:=Trim(crkNO); FieldByName('subID').Value:=''; FieldByName('status').Value:='1'; FieldByName('YFDefFlag1').Value:=fYFDefFlag1; FieldByName('syrName').Value:='���˷�֯'; Post; end; ADOQueryTemp.next; 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; function TfrmCPRK_Other.savedate():boolean; var maxno:String; CRID:Integer; MaxCkNo:String; begin result:=false; ADOQueryCmd.Connection.BeginTrans; try if fflag=0 then begin if GetLSNo(ADOQueryCmd,fkeyNo,'RT','CK_BanCP_CR1',4,1)=False then begin ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('ȡ��Ʒ�ֿ�����ʧ�ܣ�','��ʾ',0); Exit; end; end; CDS_Main.DisableControls; with CDS_Main do begin First; while not Eof do begin if trim(Fieldbyname('BCID').AsString)='' then begin with ADOQueryCmd do begin Close; sql.Clear; SQL.add('Update CK_BanCP_CRID1 Set CRID=CRID+1'); sql.Add('select * from CK_BanCP_CRID1'); Open; end; CRID:=ADOQueryCmd.fieldbyname('CRID').AsInteger; if GetLSNo(ADOQueryCmd,MaxCkNo,'JT','CK_BanCP_CR1',4,1)=False then begin ADOQueryCmd.Connection.RollbackTrans; Exit; end; end else begin CRID:=fieldbyname('CRID').AsInteger; MaxCkNo:=fieldbyname('BCID').AsString; end; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('select * from CK_BanCP_CR1 '); sql.Add('where BCID='+quotedstr(trim(MaxCkNo))); sql.Add('and CRID='+inttostr(CRID)); Open; end; with ADOQueryCmd do begin if IsEmpty then Append else edit; IF trim(CRType.Text)='�ڳ����' then begin FieldByName('MainId').Value:='CM001'; FieldByName('SubId').Value:='CS001'; end else begin FieldByName('MainId').Value:=''; FieldByName('SubId').Value:=''; end; FieldByName('MainId').Value:='CM001'; FieldByName('SubId').Value:='CS001'; FieldByName('C_Code').Value:=Trim(CDS_Main.fieldbyname('C_Code').AsString); FieldByName('C_CodeName').Value:=Trim(CDS_Main.fieldbyname('C_CodeName').AsString); FieldByName('C_SPec').Value:=Trim(CDS_Main.fieldbyname('C_SPec').AsString); FieldByName('C_Color').Value:=Trim(CDS_Main.fieldbyname('C_Color').AsString); FieldByName('APID').Value:=Trim(CDS_Main.fieldbyname('APID').AsString); FieldByName('MJID').Value:=Trim(CDS_Main.fieldbyname('MJId').AsString); FieldByName('MJxh').Value:=Trim(CDS_Main.fieldbyname('MJxh').AsString); FieldByName('kcKw').Value:=Trim(CDS_Main.fieldbyname('kcKw').AsString); FieldByName('RCGangNo').Value:=Trim(CDS_Main.fieldbyname('RCGangNo').AsString); FieldByName('BCGangNo').Value:=Trim(CDS_Main.fieldbyname('BCGangNo').AsString); FieldByName('BCID').Value:=Trim(MaxCkNo); FieldByName('ckordNo').Value:=Trim(fkeyNo); FieldByName('CRTime').Value:=FormatDateTime('yyyy-MM-dd',CRTime.DateTime); FieldByName('CRFlag').Value:='���'; FieldByName('CRType').Value:=trim(CRType.Text); //FieldByName('JTType').Value:=Trim(XJFlag); FieldByName('CRID').Value:=CRID; FieldByName('KGQty').Value:=CDS_Main.fieldbyname('KGQty').AsFloat; FieldByName('Qty').Value:=CDS_Main.fieldbyname('Qty').AsFloat; FieldByName('RollNum').Value:=CDS_Main.fieldbyname('RollNum').AsFloat; FieldByName('Price').Value:=CDS_Main.fieldbyname('Price').AsFloat; FieldByName('Money').Value:=CDS_Main.fieldbyname('Money').AsFloat; FieldByName('QtyUnit').Value:=CDS_Main.fieldbyname('QtyUnit').Value; FieldByName('CPType').Value:=Trim(CDS_Main.fieldbyname('CPType').AsString); FieldByName('Filler').Value:=Trim(DName); FieldByName('FillTime').Value:=SGetServerDateTime(ADOQueryTmp); // FieldByName('kcKw').Value:=Trim(kcKw.Text); fieldbyname('kcKw').Value:=GetKw(ADOQueryTemp,CDS_Main.fieldbyname('C_CodeName').AsString,CDS_Main.fieldbyname('C_Color').AsString); FieldByName('ThCust').Value:=Trim(CustomerNoName.Text); FieldByName('note').Value:=Trim(note.Text); Post; end; with ADOQueryCmd do begin Close; sql.Clear; sql.Add('select * from CK_BanCP_KC1 '); sql.Add('where BCID='+quotedstr(trim(MaxCkNo))); sql.Add('and CRID='+inttostr(CRID)); Open; end; with ADOQueryCmd do begin if IsEmpty then Append else edit; FieldByName('CRID').Value:=CRID; FieldByName('BCID').Value:=Trim(MaxCkNo); FieldByName('MJID').Value:=Trim(CDS_Main.fieldbyname('MJID').AsString); FieldByName('MJxh').Value:=Trim(CDS_Main.fieldbyname('MJxh').AsString); FieldByName('kcKw').Value:=Trim(CDS_Main.fieldbyname('kcKw').AsString); FieldByName('KCKGQty').Value:=CDS_Main.fieldbyname('KGQty').AsFloat; FieldByName('KCQty').Value:=CDS_Main.fieldbyname('Qty').AsFloat; FieldByName('KCRollNum').Value:=CDS_Main.fieldbyname('RollNum').AsFloat; FieldByName('KCQtyUnit').Value:=CDS_Main.fieldbyname('QtyUnit').Value; FieldByName('CRTime').Value:=FormatDateTime('yyyy-MM-dd',CRTime.DateTime); FieldByName('CPType').Value:=Trim(CDS_Main.fieldbyname('CPType').AsString); FieldByName('CRType').Value:=trim(CRType.Text); FieldByName('C_Code').Value:=Trim(CDS_Main.fieldbyname('C_Code').AsString); FieldByName('C_CodeName').Value:=Trim(CDS_Main.fieldbyname('C_CodeName').AsString); FieldByName('C_SPec').Value:=Trim(CDS_Main.fieldbyname('C_SPec').AsString); FieldByName('C_Color').Value:=Trim(CDS_Main.fieldbyname('C_Color').AsString); FieldByName('RCGangNo').Value:=Trim(CDS_Main.fieldbyname('RCGangNo').AsString); FieldByName('BCGangNo').Value:=Trim(CDS_Main.fieldbyname('BCGangNo').AsString); fieldbyname('kcKw').Value:=GetKw(ADOQueryTemp,CDS_Main.fieldbyname('C_CodeName').AsString,CDS_Main.fieldbyname('C_Color').AsString); // FieldByName('kcKw').Value:=Trim(kcKw.Text); Post; end; CDS_Main.Next; end; end; CDS_Main.EnableControls; IF trim(CRType.Text)='�˻����' then begin iF not YSData(fkeyNO) then begin ADOQueryCmd.Connection.RollbackTrans; exit; end; { IF (trim(CustomerNoName.Text)='�㶫���в�') or (trim(CustomerNoName.Text)='�������в�') then begin iF not YFData(fkeyNO) then begin ADOQueryCmd.Connection.RollbackTrans; exit; end; end else begin iF not YSData(fkeyNO) then begin ADOQueryCmd.Connection.RollbackTrans; exit; end; end; } end; IF trim(CRType.Text)='�ɹ����' then begin iF not YFData(fkeyNO) then begin ADOQueryCmd.Connection.RollbackTrans; exit; end; end; ADOQueryCmd.Connection.CommitTrans; result:=true; except ADOQueryCmd.Connection.RollbackTrans; end; end; procedure TfrmCPRK_Other.IntGrid(); begin with adoqueryTmp do begin Close; SQL.Clear; sql.Add(' select * from CK_BanCP_CR1 '); sql.Add('where ckordNo='+quotedstr(fkeyNO)); sql.Add('and BCID='+quotedstr(fBCID)); open; end; SCreateCDS20(adoqueryTmp,CDS_main); SInitCDSData20(adoqueryTmp,CDS_main); if not CDS_main.IsEmpty then begin CRTIME.DateTime:=CDS_main.fieldbyname('CRTime').AsDateTime; kcKw.Text:=CDS_main.fieldbyname('kckw').AsString; CRType.ItemIndex:=CRType.Items.IndexOf(trim(CDS_main.fieldbyname('CRType').AsString)); CustomerNoName.Text:=CDS_main.fieldbyname('thcust').AsString; note.Text:=CDS_main.fieldbyname('note').AsString; end; end; procedure TfrmCPRK_Other.FormClose(Sender: TObject; var Action: TCloseAction); begin Action:=cahide; end; procedure TfrmCPRK_Other.FormDestroy(Sender: TObject); begin frmCPRK_Other:=nil; end; procedure TfrmCPRK_Other.FormCreate(Sender: TObject); begin cxGrid1.Align:=alclient; CRTIME.DateTime:=date(); end; procedure TfrmCPRK_Other.v1Column1PropertiesButtonClick(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('C_Code').Value:=Trim(CDS_HZ.fieldbyname('ZdyCode').AsString); Self.CDS_main.FieldByName('C_CodeName').Value:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString); Self.CDS_main.FieldByName('C_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 TfrmCPRK_Other.ToolButton1Click(Sender: TObject); var maxno:string; begin if GetLSNo(ADOQueryCmd,maxno,'T','APTM',4,1)=False then begin Application.MessageBox('ȡ����ʧ��!','��ʾ',0); Exit; end; with CDS_main do begin Append; fieldbyname('BCID').Value:=''; fieldbyname('CPTYpe').Value:='��Ʒ'; fieldbyname('MJID').Value:=maxno; fieldbyname('MJXH').Value:=1; fieldbyname('QtyUnit').Value:='M'; Post; end; end; procedure TfrmCPRK_Other.ToolButton2Click(Sender: TObject); begin if CDS_main.IsEmpty then exit; { with ADOQueryCmd do begin close; sql.Clear; sql.Add('delete from CK_BanCP_CR '); sql.Add('where BCID='+quotedstr(trim(CDS_main.fieldbyname('BCID').AsString))); sql.Add('and CKOrdNo='+quotedstr(trim(CDS_main.fieldbyname('CKOrdNo').AsString))); sql.Add('delete from CK_BanCP_KC '); sql.Add('where BCID='+quotedstr(trim(CDS_main.fieldbyname('BCID').AsString))); sql.Add('AND crid='+quotedstr(trim(CDS_main.fieldbyname('crid').AsString))); execsql; end; } CDS_main.Delete; end; procedure TfrmCPRK_Other.FormShow(Sender: TObject); begin IntGrid(); end; procedure TfrmCPRK_Other.TBCloseClick(Sender: TObject); begin close; end; procedure TfrmCPRK_Other.TBSaveClick(Sender: TObject); begin CRTIME.SetFocus; if CDS_main.IsEmpty then exit; if trim(CRType.Text)='' then begin application.MessageBox('������Ͳ���Ϊ�գ�','��ʾ��Ϣ',0); exit; end; if trim(CRType.Text)='�˻����' then begin if trim(CustomerNoName.Text)='' then begin application.MessageBox('�˻��ͻ�����Ϊ�գ�','��ʾ��Ϣ',0); exit; end; end; if CDS_main.Locate('Qtyunit','',[]) then begin application.MessageBox('������λ����Ϊ�գ�','��ʾ��Ϣ',0); exit; end; if CDS_main.Locate('Qtyunit',NULL,[]) then begin application.MessageBox('������λ����Ϊ�գ�','��ʾ��Ϣ',0); exit; end; if CDS_main.Locate('MJID',NULL,[]) then begin application.MessageBox('�����벻��Ϊ�գ�','��ʾ��Ϣ',0); exit; end; if CDS_main.Locate('MJXH',NULL,[]) then begin application.MessageBox('���Ų���Ϊ�գ�','��ʾ��Ϣ',0); exit; end; if savedate() then begin application.MessageBox('���ݱ���ɹ���','��ʾ��Ϣ'); ModalResult:=1; end else application.MessageBox('���ݱ���ʧ�ܣ�','��ʾ��Ϣ',0); end; procedure TfrmCPRK_Other.v1C_ColorPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin try frmZDYHelp:=TfrmZDYHelp.Create(Application); with frmZDYHelp do begin flag:='OrdColor'; flagname:='��ɫ'; V1Name.Caption:='��������'; V1Note.Caption:='Ӣ������'; MainType:=Trim(DName); // fnote:=True; if ShowModal=1 then begin Self.CDS_main.Edit; Self.CDS_main.FieldByName('C_Color').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString)+'#'; // Self.CDS_Sub.FieldByName('SOrddefstr4').Value:=Trim(ClientDataSet1.fieldbyname('Note').AsString); end; end; finally frmZDYHelp.Free; end; end; procedure TfrmCPRK_Other.kcKwBtnClick(Sender: TObject); begin try frmZDYHelp:=TfrmZDYHelp.Create(Application); with frmZDYHelp do begin flag:='CPKWFlag'; flagname:='��λ��Ϣ'; V1Name.Caption:='��λ����'; V1Note.Caption:='Ӣ������'; // MainType:=Trim(DName); fnote:=FALSE; if ShowModal=1 then begin kcKw.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); end; end; finally frmZDYHelp.Free; end; end; procedure TfrmCPRK_Other.Edit1KeyPress(Sender: TObject; var Key: Char); var FReal:Double; maxno:string; begin if Key=#13 then begin if Trim(Edit1.Text)='' then Exit; if TryStrToFloat(Edit1.Text,FReal)=False then begin Application.MessageBox('�����Ƿ�����!','��ʾ',0); Exit; end; if CDS_main.IsEmpty then begin CDS_main.Append; CDS_main.fieldbyname('Qty').Value:=Edit1.Text; CDS_main.fieldbyname('kcKw').Value:=kcKw.Text; CDS_main.fieldbyname('RollNum').Value:=1; CDS_main.fieldbyname('MJXH').Value:=1; CDS_main.fieldbyname('CPTYpe').Value:='��Ʒ'; CDS_main.fieldbyname('QtyUnit').Value:='M'; try ADOQueryCmd.Connection.BeginTrans; if GetLSNo(ADOQueryCmd,maxno,'T','APTM',4,1)=False then begin ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('ȡ����ʧ��!','��ʾ',0); Exit; end; ADOQueryCmd.Connection.CommitTrans; except ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('ȡ����ʧ��!','��ʾ',0); end; CDS_main.fieldbyname('MJID').Value:=Trim(maxno); CDS_main.Post; end else begin CopyAddRowCDS(CDS_main); tv1.Controller.EditingController.ShowEdit(); with CDS_main do begin Edit; FieldByName('MJXH').Value:=FieldByName('MJXH').Value+1; try ADOQueryCmd.Connection.BeginTrans; if GetLSNo(ADOQueryCmd,maxno,'T','APTM',4,1)=False then begin ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('ȡ����ʧ��!','��ʾ',0); Exit; end; ADOQueryCmd.Connection.CommitTrans; except ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('ȡ����ʧ��!','��ʾ',0); end; FieldByName('MJId').Value:=Trim(maxno); fieldbyname('Qty').Value:=Edit1.Text; fieldbyname('kcKw').Value:=kcKw.Text; fieldbyname('RollNum').Value:=1; Post; end; end; Edit1.Text:=''; end; tv1.Controller.EditingController.ShowEdit(); end; procedure TfrmCPRK_Other.v1Column1PropertiesEditValueChanged(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('C_CodeName').Value:=Trim(mvalue); Post; end; with ADOQueryCmd do begin close; sql.Clear; sql.Add('select * from KH_Zdy_Attachment A '); sql.Add('where zdyName='+quotedstr(trim(CDS_main.fieldbyname('C_CodeName').AsString))); open; end; IF ADOQueryCmd.IsEmpty then begin application.MessageBox('Ʒ�������ڣ�','��ʾ��Ϣ',0); with CDS_main do begin Edit; FieldByName('C_CodeName').Value:=''; Post; end; end; self.tv1.Controller.EditingController.ShowEdit(); end; procedure TfrmCPRK_Other.v1C_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('C_Color').Value:=Trim(mvalue); Post; end; with ADOQueryCmd do begin close; sql.Clear; sql.Add('select * from KH_Zdy_Attachment A '); sql.Add('where zdyName='+quotedstr(trim(CDS_main.fieldbyname('C_CodeName').AsString))); sql.Add('and DEFstr3='+quotedstr(trim(CDS_main.fieldbyname('C_Color').AsString))); open; end; IF ADOQueryCmd.IsEmpty then begin application.MessageBox('��ɫ�����ڣ�','��ʾ��Ϣ',0); with CDS_main do begin Edit; FieldByName('C_Color').Value:=''; Post; end; end; self.tv1.Controller.EditingController.ShowEdit(); end; procedure TfrmCPRK_Other.CustomerNoNameBtnUpClick(Sender: TObject); begin { try frmZDYHelp:=TfrmZDYHelp.Create(Application); with frmZDYHelp do begin flag:='CustomerNoName'; flagname:='�ͻ�����'; if ShowModal=1 then begin CustomerNoName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString); CustomerNoName.TxtCode:=Trim(ClientDataSet1.fieldbyname('ZDYNo').AsString); end; end; finally frmZDYHelp.Free; end; } try frmZdyAttachment:=TfrmZdyAttachment.Create(Application); with frmZdyAttachment do begin fkhType:='���˷�֯'; if ShowModal=1 then begin CustomerNoName.Text:=Trim(frmZdyAttachment.CDS_HZ.fieldbyname('ZDYName').AsString); CustomerNoName.TxtCode:=Trim(frmZdyAttachment.CDS_HZ.fieldbyname('ZdyCode').AsString); end; end; finally frmZdyAttachment.Free; end; end; procedure TfrmCPRK_Other.CustomerNoNameBtnDnClick(Sender: TObject); begin CustomerNoName.Text:=''; CustomerNoName.TxtCode:=''; end; procedure TfrmCPRK_Other.Edit2KeyPress(Sender: TObject; var Key: Char); var FReal:Double; maxno:string; I:integer; begin if Key=#13 then begin if Trim(Edit2.Text)='' then Exit; if TryStrToFlOAT(Edit2.Text,FReal)=False then begin Application.MessageBox('�����Ƿ�����!','��ʾ',0); Exit; end; if CDS_main.IsEmpty then exit; i:=STRTOintdef(Edit2.Text,0); for i:=1 to STRTOintdef(Edit2.Text,0) do begin CopyAddRowCDS(CDS_main); with CDS_main do begin Edit; FieldByName('MJXH').Value:=FieldByName('MJXH').Value+1; try ADOQueryCmd.Connection.BeginTrans; if GetLSNo(ADOQueryCmd,maxno,'9','WFB_MJJY',4,1)=False then begin ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('ȡ����ʧ��!','��ʾ',0); Exit; end; ADOQueryCmd.Connection.CommitTrans; except ADOQueryCmd.Connection.RollbackTrans; Application.MessageBox('ȡ����ʧ��!','��ʾ',0); end; FieldByName('MJId').Value:=Trim(maxno); // fieldbyname('Qty').Value:=Edit1.Text; // fieldbyname('kcKw').Value:=kcKw.Text; // fieldbyname('RollNum').Value:=1; Post; end; end; Edit1.Text:=''; end; tv1.Controller.EditingController.ShowEdit(); end; procedure TfrmCPRK_Other.v1Column8PropertiesEditValueChanged(Sender: TObject); var mvalue:string; begin mvalue:=TcxTextEdit(Sender).EditingText; IF trim(mvalue)='' then exit; IF rightBstr(trim(mvalue),1)<>'W'THEN BEGIn mvalue:=trim(mvalue)+'W'; END; with CDS_main do begin Edit; FieldByName('BCgangNo').Value:=Trim(mvalue); Post; end; self.tv1.Controller.EditingController.ShowEdit(); end; procedure TfrmCPRK_Other.v1PricePropertiesEditValueChanged( Sender: TObject); var mvalue,FFieldName:String; begin mvalue:=TcxTextEdit(Sender).EditingText; if Trim(mvalue)='' then begin mvalue:='0'; end; FFieldName:=Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); with CDS_main do begin Edit; FieldByName(FFieldName).Value:=Trim(mvalue); FieldByName('Money').Value:=format('%.2f',[fieldbyname('Qty').AsFloat * fieldbyname('Price').AsFloat]); Post; end; tv1.Controller.EditingController.ShowEdit(); end; end.