unit U_CaiGouSQInPut; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, cxMemo, cxRichEdit, ComCtrls, cxContainer, cxTextEdit, cxMaskEdit, cxButtonEdit, StdCtrls, ToolWin, DBClient, ADODB, ExtCtrls, BtnEdit, cxDropDownEdit, cxCalendar, cxGridCustomPopupMenu, cxGridPopupMenu, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator; type TfrmCaiGouSQInPut = class(TForm) ToolBar1: TToolBar; TBSave: TToolButton; TBClose: TToolButton; ADOTemp: TADOQuery; ADOCmd: TADOQuery; DataSource1: TDataSource; Order_Sub: TClientDataSet; ADOQuery1: TADOQuery; cxGridPopupMenu1: TcxGridPopupMenu; ToolButton4: TToolButton; cxGrid1: TcxGrid; Tv1: TcxGridDBTableView; v1Column7: TcxGridDBColumn; v1Column5: TcxGridDBColumn; v1Column13: TcxGridDBColumn; cxGrid1Level1: TcxGridLevel; ADOQueryTemp: TADOQuery; v1Column3: TcxGridDBColumn; v1Column4: TcxGridDBColumn; v1Column6: TcxGridDBColumn; v1Column8: TcxGridDBColumn; v1Column2: TcxGridDBColumn; v1Column10: TcxGridDBColumn; v1Column12: TcxGridDBColumn; v1Column14: TcxGridDBColumn; TBTP: TToolButton; v1Column16: TcxGridDBColumn; v1Column19: TcxGridDBColumn; v1Column24: TcxGridDBColumn; cv1Column15: TcxGridDBColumn; cv1Column9: TcxGridDBColumn; cv1Column1: TcxGridDBColumn; procedure TBCloseClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure TBSaveClick(Sender: TObject); // procedure ToolButton3Click(Sender: TObject); procedure ToolButton4Click(Sender: TObject); procedure v1Column4PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure v1Column6PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure v1Column10PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure v1Column12PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure v1Column14PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure v1Column3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure TBTPClick(Sender: TObject); procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure v1Column20PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure ToolButton1Click(Sender: TObject); procedure v1Column23PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure cv1Column9PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); procedure v1Column2PropertiesEditValueChanged(Sender: TObject); private procedure InitData(); function SaveData(): Boolean; { Private declarations } public PState: Integer; FMainId, FSQType, Canshu1, ZFormName: string; { Public declarations } end; var frmCaiGouSQInPut: TfrmCaiGouSQInPut; implementation uses U_DataLink, U_ZDYHelp, U_RTFun, U_ZdyAttachGYS, U_CPManageFMSel, U_ProductOrderListSel; {$R *.dfm} procedure TfrmCaiGouSQInPut.TBCloseClick(Sender: TObject); begin Close; WriteCxGrid('采购申请登记', Tv1, '采购申请管理'); end; procedure TfrmCaiGouSQInPut.InitData(); begin with ADOQuery1 do begin Close; SQL.Clear; sql.Add(' select A.*'); SQL.Add(' from CaiGou_SQ A '); sql.Add(' where A.SQId=''' + Trim(FMainId) + ''''); Open; end; SCreateCDS20(ADOQuery1, Order_Sub); SInitCDSData20(ADOQuery1, Order_Sub); end; procedure TfrmCaiGouSQInPut.FormShow(Sender: TObject); begin ReadCxGrid('采购申请登记', Tv1, '采购申请管理1'); InitData(); if Trim(Canshu1) = '高权限' then begin TBTP.Visible := True; end; end; function TfrmCaiGouSQInPut.SaveData(): Boolean; var maxno, FSKID: string; FYLQty, FYLMXQty, FSQQty, FCGQtyUp, FCGQtyZJUp: Double; begin try Result := False; ADOCmd.Connection.BeginTrans; //保存主表 Order_Sub.DisableControls; with Order_Sub do begin First; while not Eof do begin with ADOTemp do begin Close; sql.Clear; sql.Add('select * from CaiGou_SQ where SQID=''' + Trim(Order_Sub.fieldbyname('SQID').AsString) + ''''); Open; end; FSKID := Trim(ADOTemp.fieldbyname('SQID').AsString); if Trim(FSKID) = '' then begin if GetLSNo(ADOCmd, maxno, 'SQ', 'CaiGou_SQ', 4, 1) = False then begin Order_Sub.EnableControls; ADOCmd.Connection.RollbackTrans; Application.MessageBox('取采购申请登记表流水号失败!', '提示', 0); Exit; end; end else begin maxno := Trim(FSKID); end; with ADOCmd do begin Close; sql.Clear; SQL.Add('select * from CaiGou_SQ where SQID=''' + Trim(FSKID) + ''''); Open; end; with ADOCmd do begin if Trim(FSKID) = '' then begin Append; end else begin Edit; end; FieldByName('SQID').Value := Trim(maxno); RTSetSaveDataCDS(ADOCmd, Tv1, Order_Sub, 'CaiGou_SQ', 0); FieldByName('FactoryNo').Value := Trim(Order_Sub.fieldbyname('FactoryNo').AsString); FieldByName('CFFactoryNo').Value := Trim(Order_Sub.fieldbyname('CFFactoryNo').AsString); FieldByName('PBID').Value := Trim(Order_Sub.fieldbyname('PBID').AsString); FieldByName('ORDMainIdRK').Value := Trim(Order_Sub.fieldbyname('ORDMainIdRK').AsString); FieldByName('ORDSubIdRK').Value := Trim(Order_Sub.fieldbyname('ORDSubIdRK').AsString); FieldByName('PXID').Value := Trim(Order_Sub.fieldbyname('PXID').AsString); FieldByName('MXPBID').Value := Trim(Order_Sub.fieldbyname('MXPBID').AsString); // FieldByName('SQType').Value := '纱线'; FieldByName('DataType').Value := Trim(Order_Sub.fieldbyname('DataType').AsString); // if Trim(FSKID) = '' then // begin // FieldByName('Filler').Value := Trim(DName); // end // else // begin // if Trim(ZFormName) = '可修改' then // begin // FieldByName('Editer').Value := Trim(DName) + '高权限修改'; // end // else // begin // FieldByName('Editer').Value := Trim(DName); // end; // FieldByName('EditTime').Value := SGetServerDateTime(ADOTemp); // end; Post; end; // with ADOCmd do // begin // Close; // SQL.Clear; // sql.Add('Update CaiGou_SQ Set SQMoney=SQQty*SQPrice where SQID=''' + Trim(maxno) + ''''); // ExecSQL; // end; // if Trim(Order_Sub.fieldbyname('SQQtyUpHZ').AsString) <> '' then // begin // with ADOCmd do // begin // Close; // sql.Clear; // sql.Add('Update CaiGou_SQ Set QtySXStr=''汇总'' where SQID=''' + Trim(maxno) + ''''); // ExecSQL; // end; // end; // if Trim(ZFormName) = '可修改' then // begin // with ADOCmd do // begin // Close; // sql.Clear; // sql.Add('Update CK_SXPB_CR Set SPName=''' + Trim(Order_Sub.fieldbyname('SPName').AsString) + ''''); // sql.Add(',Price=' + Trim(Order_Sub.fieldbyname('SQPrice').AsString)); // sql.Add(' where SQID=''' + Trim(maxno) + ''''); // sql.Add(' Update YF_Money_CR Set P_CodeName=''' + Trim(Order_Sub.fieldbyname('SPName').AsString) + ''''); // sql.Add(',Price=' + Trim(Order_Sub.fieldbyname('SQPrice').AsString)); // sql.Add(' where SQID=''' + Trim(maxno) + ''''); // sql.Add(' Update YF_Money_CR Set Money=Price*Qty'); // sql.Add(' where SQID=''' + Trim(maxno) + ''''); // ExecSQL; // end; // end; //判断采购申请,是否超出 // if Trim(Order_Sub.fieldbyname('ConNo').AsString) <> '' then // begin // //主原料计划用量、采购数量上限,采购数量追加上限 // with ADOTemp do // begin // Close; // sql.Clear; // sql.Add('select '); // sql.Add(' YLQtyHZ=isnull(Sum(Cast(C_Qty*PBQty*0.01*(1+isnull(ZPSH,0)*0.01) as decimal(18,1))),0)'); // sql.Add(',CGQtyUp=isnull(sum(CGQtyUp),0) '); // sql.Add(',CGQtyZJUp=isnull(sum(CGQtyZJUp),0) '); // sql.Add(' from Cloth_YCL_PB A '); // sql.Add(' inner join Cloth_Sub C on A.MainId=C.MainId'); // sql.Add(' inner join Cloth_Main B on A.MainId=B.MainId'); // sql.Add(' where B.ConNo=''' + Trim(Order_Sub.fieldbyname('ConNo').AsString) + ''''); // sql.Add(' and A.YCLName=''' + Trim(Order_Sub.fieldbyname('SPName').AsString) + ''''); // Open; // end; // FYLQty := ADOTemp.fieldbyname('YLQtyHZ').Value; // FCGQtyUp := ADOTemp.fieldbyname('CGQtyUp').Value; // FCGQtyZJUp := ADOTemp.fieldbyname('CGQtyZJUp').Value; //主原料计划用量、采购数量上限,采购数量追加上限 //明细原料计划用量、采购数量上限,采购数量追加上限 // with ADOTemp do // begin // Close; // sql.Clear; // sql.Add('select '); // sql.Add(' YLQtyHZ=isnull(sum(Cast(C_Qty*A.PBQty*0.01*(1+isnull(ZPSH,0)*0.01)*MX.PBQty*0.01*(1+isnull(WLSH,0)*0.01) as decimal(18,1))),0)'); // sql.Add(',CGQtyUp=isnull(sum(MX.CGQtyUp),0) '); // sql.Add(',CGQtyZJUp=isnull(sum(MX.CGQtyZJUp),0) '); // sql.Add(' from Cloth_YCL_PB A'); // sql.Add(' inner join Cloth_Sub B on A.SubId=B.SubId'); // sql.Add(' inner join Cloth_Main M on A.MainId=M.MainId'); // sql.Add(' inner join Cloth_YCL_PB_MX MX on A.PBID=MX.PBID'); // sql.Add(' where M.ConNo=''' + Trim(Order_Sub.fieldbyname('ConNo').AsString) + ''''); // sql.Add(' and MX.YCLName=''' + Trim(Order_Sub.fieldbyname('SPName').AsString) + ''''); // Open; // end; //明细原料计划用量、采购数量上限,采购数量追加上限 //原料汇总计划用量、采购数量上限,采购数量追加上限 // FYLQty := FYLQty + ADOTemp.fieldbyname('YLQtyHZ').Value; // FCGQtyUp := FCGQtyUp + ADOTemp.fieldbyname('CGQtyUp').Value; // FCGQtyZJUp := FCGQtyZJUp + ADOTemp.fieldbyname('CGQtyZJUp').Value; //原料汇总计划用量、采购数量上限,采购数量追加上限 // with ADOTemp do // begin // Close; // sql.Clear; // sql.Add('select SQQtyHZ=isnull(Sum(isnull(SQQty,0)),0) '); // sql.Add(' from CaiGou_SQ A '); // sql.Add(' where ConNo=''' + Trim(Order_Sub.fieldbyname('ConNo').AsString) + ''''); // sql.Add(' and SPName=''' + Trim(Order_Sub.fieldbyname('SPName').AsString) + ''''); // Open; // end; // FSQQty := ADOTemp.fieldbyname('SQQtyHZ').Value; // if FCGQtyUp > 0 then // begin // if FSQQty > FCGQtyUp then // begin // Order_Sub.EnableControls; // ADOCmd.Connection.RollbackTrans; // Application.MessageBox(PChar('白坯单号:' + Trim(Order_Sub.fieldbyname('ConNo').AsString) + #13 + '品名:' + Trim(Order_Sub.fieldbyname('SPName').AsString) + #13 + '申请数量超出采购数量上限!' + #13 + '采购数量上限为:' + FloatToStr(FCGQtyUp) + '公斤!'), '提示', 0); // Exit; // end; // end // else // begin // if FSQQty > FYLQty + FCGQtyZJUp then // begin // Order_Sub.EnableControls; // ADOCmd.Connection.RollbackTrans; // Application.MessageBox(PChar('白坯单号:' + Trim(Order_Sub.fieldbyname('ConNo').AsString) + #13 + '品名:' + Trim(Order_Sub.fieldbyname('SPName').AsString) + #13 + '申请数量超限!' + #13 + '采购数量上限为:' + FloatToStr(FYLQty + FCGQtyZJUp) + '公斤!'), '提示', 0); // Exit; // end; // end; //判断采购申请,是否超出 Edit; FieldByName('SQID').Value := Trim(maxno); Next; end; end; Order_Sub.EnableControls; ADOCmd.Connection.CommitTrans; Result := True; except Result := False; ADOCmd.Connection.RollbackTrans; Application.MessageBox('保存失败!', '提示', 0); end; end; procedure TfrmCaiGouSQInPut.TBSaveClick(Sender: TObject); begin ToolBar1.SetFocus; // if Order_Sub.IsEmpty then // begin // Application.MessageBox('明细不能为空!', '提示', 0); // exit; // end; if Order_Sub.Locate('SQDate', null, []) then begin Application.MessageBox('申请日期不能为空!', '提示', 0); Exit; end; // if Order_Sub.Locate('CFFactoryName', null, []) then // begin // Application.MessageBox('入库单位不能为空!', '提示', 0); // Exit; // end; if Order_Sub.Locate('SQPerson', null, []) then begin Application.MessageBox('申请人不能为空!', '提示', 0); Exit; end; if Order_Sub.Locate('pingzhi', null, []) then begin Application.MessageBox('品质不能为空!', '提示', 0); Exit; end; if Order_Sub.Locate('SPType', null, []) then begin Application.MessageBox('类型不能为空!', '提示', 0); Exit; end; if Order_Sub.Locate('SPName', null, []) then begin Application.MessageBox('品名不能为空!', '提示', 0); Exit; end; if Order_Sub.Locate('FactoryName', null, []) then begin Application.MessageBox('供应商不能为空!', '提示', 0); Exit; end; if Order_Sub.Locate('SQPrice', null, []) then begin Application.MessageBox('申请单价不能为空!', '提示', 0); Exit; end; // if Order_Sub.Locate('SQQtyUp;SQQtyUpHZ', VarArrayOf([null, null]), [loPartialKey]) then // begin // if Order_Sub.FieldByName('SQQtyHZ').AsString <> '' then // begin // Application.MessageBox('汇总数量上限%不能为空!', '提示', 0); // Exit; // end // else // begin // Application.MessageBox('数量上限%不能为空!', '提示', 0); // Exit; // end; // Application.MessageBox('数量上限不能为空!', '提示', 0); // Exit; // end; // if Order_Sub.Locate('SQQty;SQQtyHZ', VarArrayOf([null, null]), [loPartialKey]) then // begin // if Order_Sub.FieldByName('SQQtyUpHZ').AsString <> '' then // begin // Application.MessageBox('汇总数量不能为空!', '提示', 0); // Exit; // end // else // begin // Application.MessageBox('数量不能为空!', '提示', 0); // Exit; // end; // // end; { if Trim(Canshu1)<>'高权限' then begin if Trim(Order_Sub.fieldbyname('ConNO').AsString)='' then begin Order_Sub.EnableControls; Application.MessageBox('白坯单号不能为空!','提示',0); Exit; end; end;} // Order_Sub.DisableControls; // with Order_Sub do // begin // First; // while not eof do // begin // if Trim(Order_Sub.fieldbyname('SPType').AsString) <> '购纱' then // begin // if Trim(Order_Sub.fieldbyname('ConNO').AsString) = '' then // begin // if Trim(Order_Sub.fieldbyname('DataType').AsString) <> '特批' then // begin // Order_Sub.EnableControls; // Application.MessageBox('白坯单号不能为空!', '提示', 0); // Exit; // end; // end; // end; // next; // end; // end; // Order_Sub.EnableControls; if SaveData() then begin Application.MessageBox('保存成功!', '提示', 0); // ModalResult:=1; end; end; procedure TfrmCaiGouSQInPut.ToolButton4Click(Sender: TObject); var FWorker, FDate: string; begin if Order_Sub.IsEmpty then Exit; if Trim(Order_Sub.fieldbyname('SQID').AsString) <> '' then begin if Application.MessageBox('确定要删除数据吗?', '提示', 32 + 4) <> IDYES then Exit; with ADOCmd do begin Close; sql.Clear; sql.Add('delete CaiGou_SQ where SQId=''' + Trim(Order_Sub.fieldbyname('SQId').AsString) + ''''); ExecSQL; end; end; Order_Sub.Delete; end; procedure TfrmCaiGouSQInPut.v1Column4PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin try frmCPManageFMSel := TfrmCPManageFMSel.Create(Application); with frmCPManageFMSel do begin if ShowModal = 1 then begin with Self.Order_Sub do begin Edit; FieldByName('SPName').Value := Trim(frmCPManageFMSel.CDS_Main.fieldbyname('cyname').AsString); FieldByName('SPCODE').Value := Trim(frmCPManageFMSel.CDS_Main.fieldbyname('CYNo').AsString); FieldByName('SPSPEC').Value := Trim(frmCPManageFMSel.CDS_Main.fieldbyname('CYSPEC').AsString); FieldByName('SPCF').Value := Trim(frmCPManageFMSel.CDS_Main.fieldbyname('CYCF').AsString); end; end; end; finally frmCPManageFMSel.Free; end; {try frmZDYHelp:=TfrmZDYHelp.Create(Application); with frmZDYHelp do begin flag:='SXYCLName'; flagname:='纱线名称'; ViewFlag:=True; if ShowModal=1 then begin with Self.Order_Sub do begin Edit; FieldByName('SPName').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; end; finally frmZDYHelp.Free; end; } end; procedure TfrmCaiGouSQInPut.v1Column6PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin try frmZDYHelp := TfrmZDYHelp.Create(Application); with frmZDYHelp do begin flag := 'SXSPSpec'; flagname := '纱线规格'; if ShowModal = 1 then begin with Self.Order_Sub do begin Edit; FieldByName('SPSpec').Value := Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; end; finally frmZDYHelp.Free; end; end; procedure TfrmCaiGouSQInPut.v1Column10PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin try frmZDYHelp := TfrmZDYHelp.Create(Application); with frmZDYHelp do begin flag := 'SXSPCF'; flagname := '纱线成分'; if ShowModal = 1 then begin with Self.Order_Sub do begin Edit; FieldByName('SPCF').Value := Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; end; finally frmZDYHelp.Free; end; end; procedure TfrmCaiGouSQInPut.v1Column12PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin try frmZDYHelp := TfrmZDYHelp.Create(Application); with frmZDYHelp do begin flag := 'SXPinPai'; flagname := '纱线品牌'; if ShowModal = 1 then begin with Self.Order_Sub do begin Edit; FieldByName('PinPai').Value := Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; end; finally frmZDYHelp.Free; end; end; procedure TfrmCaiGouSQInPut.v1Column14PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin try frmZdyAttachGYS := TfrmZdyAttachGYS.Create(Application); with frmZdyAttachGYS do begin if ShowModal = 1 then begin with Self.Order_Sub do begin Edit; FieldByName('FactoryNo').Value := Trim(CDS_HZ.fieldbyname('ATID').AsString); FieldByName('FactoryName').Value := Trim(CDS_HZ.fieldbyname('ZdyNameZ').AsString); FieldByName('ZDYNameTj').Value := Trim(CDS_HZ.fieldbyname('ZDYNameTj').AsString); //Post; end; end; end; finally frmZdyAttachGYS.Free; end; end; procedure TfrmCaiGouSQInPut.v1Column3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin try frmZDYHelp := TfrmZDYHelp.Create(Application); with frmZDYHelp do begin flag := 'SXSQPerson'; flagname := '申请人'; if ShowModal = 1 then begin with Self.Order_Sub do begin Edit; FieldByName('SQPerson').Value := Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZdyName').AsString); end; end; end; finally frmZDYHelp.Free; end; end; procedure TfrmCaiGouSQInPut.TBTPClick(Sender: TObject); begin with Self.Order_Sub do begin Append; FieldByName('SQQtyUnit').Value := 'Kg'; FieldByName('SQPerson').Value := Trim(DName); FieldByName('SQPRICE').Value := 0; FieldByName('SQMONEY').Value := 0; FieldByName('SQQTY').Value := 0; FieldByName('SQDate').Value := SGetServerDate(ADOQueryTemp); // FieldByName('DataType').Value := '特批'; //Post; end; end; procedure TfrmCaiGouSQInPut.Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin // if Trim(ZFormName) <> '可修改' then // begin // if Trim(Order_Sub.fieldbyname('ConNo').AsString) = '' then // begin // v1Column4.Options.Editing := True; // v1Column6.Options.Editing := True; // end // else // begin // v1Column4.Options.Editing := False; // v1Column6.Options.Editing := False; // end; // end // else // begin // v1Column4.Options.Editing := True; // end; // // with ADOQueryTemp do // begin // Close; // sql.Clear; // sql.Add('select * from CK_SXPB_CR A where A.ZFFlag=0 and A.SQID= ''' + Trim(Order_Sub.fieldbyname('SQID').AsString) + ''''); // Open; // end; // if ADOQueryTemp.IsEmpty = False then // begin // v1Column14.Options.Editing := True; // end; end; procedure TfrmCaiGouSQInPut.v1Column20PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); var YLKCQty: double; begin // YLKCQty := 0; // try // frmShaKCSelList := TfrmShaKCSelList.Create(Application); // with frmShaKCSelList do // begin // SPName.Text := trim(Order_Sub.fieldbyname('SPName').AsString); // ToolButton1.Visible := True; // if ShowModal = 1 then // begin // frmShaKCSelList.CDS_Main.DisableControls; // with frmShaKCSelList.CDS_Main do // begin // // while frmShaKCSelList.CDS_Main.Locate('SSel', True, []) do // begin // YLKCQty := YLKCQty + frmShaKCSelList.CDS_Main.fieldbyname('MXKCQty').AsFloat; // frmShaKCSelList.CDS_Main.delete; // end; // end; // frmShaKCSelList.CDS_Main.EnableControls; // // end; // end; // finally // frmShaKCSelList.Free; // end; // with Order_Sub do // begin // edit; // fieldbyname('YLKCQty').Value := YLKCQty; // fieldbyname('SQQty').Value := fieldbyname('SQQty').AsFloat - YLKCQty; // // end; end; procedure TfrmCaiGouSQInPut.ToolButton1Click(Sender: TObject); var FSQDate: TDate; begin // FSQDate := SGetServerDate(ADOQueryTemp); // try // frmClothSXYLtSel := TfrmClothSXYLtSel.Create(Application); // with frmClothSXYLtSel do // begin // if ShowModal = 1 then // begin // with frmClothSXYLtSel.Order_Main do // begin // while Locate('SSel', True, []) do // begin // with Self.Order_Sub do // begin // Append; // FieldByName('ConNo').Value := frmClothSXYLtSel.Order_Main.FieldByName('ConNo').Value; // FieldByName('SPName').Value := frmClothSXYLtSel.Order_Main.FieldByName('YCLName').Value; // FieldByName('SPSpec').Value := frmClothSXYLtSel.Order_Main.FieldByName('YCLSpec').Value; // FieldByName('SPCF').Value := frmClothSXYLtSel.Order_Main.FieldByName('YCLCF').Value; // FieldByName('YLDH').Value := frmClothSXYLtSel.Order_Main.FieldByName('MXYCLCF').Value; // FieldByName('YLNote').Value := frmClothSXYLtSel.Order_Main.FieldByName('PBNote').Value; // // FieldByName('PinPai').Value := frmClothSXYLtSel.Order_Main.FieldByName('PinPai').Value; // FieldByName('SQQty').Value := frmClothSXYLtSel.Order_Main.FieldByName('YLQty').Value; // FieldByName('FactoryName').Value := frmClothSXYLtSel.Order_Main.FieldByName('GYSName').Value; // FieldByName('PBID').Value := frmClothSXYLtSel.Order_Main.FieldByName('PBID').Value; // FieldByName('MXPBID').Value := frmClothSXYLtSel.Order_Main.FieldByName('MXPBID').Value; // FieldByName('PXID').Value := frmClothSXYLtSel.Order_Main.FieldByName('PXID').Value; // FieldByName('SQQtyUnit').Value := 'Kg'; // FieldByName('SQPerson').Value := Trim(DName); // FieldByName('SQDate').Value := FSQDate; // //Post; // end; // Delete; // end; // end; // end; // end; // finally // frmClothSCHZMXListSel.Free; // end; end; procedure TfrmCaiGouSQInPut.v1Column23PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin try frmZdyAttachGYS := TfrmZdyAttachGYS.Create(Application); with frmZdyAttachGYS do begin if ShowModal = 1 then begin with Self.Order_Sub do begin Edit; FieldByName('CFFactoryNo').Value := Trim(CDS_HZ.fieldbyname('ATID').AsString); FieldByName('CFFactoryName').Value := Trim(CDS_HZ.fieldbyname('ZdyNameZ').AsString); //Post; end; end; end; finally frmZdyAttachGYS.Free; end; end; procedure TfrmCaiGouSQInPut.FormClose(Sender: TObject; var Action: TCloseAction); begin WriteCxGrid('采购申请登记', Tv1, '采购申请管理1'); end; procedure TfrmCaiGouSQInPut.cv1Column9PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer); begin try frmProductOrderListSel := TfrmProductOrderListSel.Create(Application); with frmProductOrderListSel do begin if ShowModal = 1 then begin with Self.Order_Sub do begin Edit; FieldByName('ORDMainIdRK').Value := Trim(frmProductOrderListSel.Order_Main.fieldbyname('MainId').AsString); FieldByName('ORDSubIdRK').Value := Trim(frmProductOrderListSel.Order_Main.fieldbyname('SubId').AsString); FieldByName('OrderNo').Value := Trim(frmProductOrderListSel.Order_Main.fieldbyname('OrderNo').AsString); FieldByName('SPNAME').Value := Trim(frmProductOrderListSel.Order_Main.fieldbyname('MPRTCodeName').AsString); FieldByName('SPSPEC').Value := Trim(frmProductOrderListSel.Order_Main.fieldbyname('MPRTSpec').AsString); FieldByName('SPCODE').Value := Trim(frmProductOrderListSel.Order_Main.fieldbyname('MPRTCode').AsString); end; end; end; finally frmProductOrderListSel.Free; end; end; procedure TfrmCaiGouSQInPut.v1Column2PropertiesEditValueChanged(Sender: TObject); var mvalue, FQty, FPrice, FCostPrice, FMoney, FBBMoney, FFieldName: string; begin mvalue := TcxTextEdit(Sender).EditingText; if Trim(mvalue) = '' then begin mvalue := '0'; end; FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName); with Order_Sub do begin Edit; FieldByName(FFieldName).Value := mvalue; Post; end; FQty := Trim(Order_Sub.fieldbyname('sqQty').AsString); if Trim(FQty) = '' then FQty := '0'; FPrice := Trim(Order_Sub.fieldbyname('sqPrice').AsString); if Trim(FPrice) = '' then FPrice := '0'; FMoney := Trim(Order_Sub.fieldbyname('sqMoney').AsString); if Trim(FMoney) = '' then FMoney := '0'; FMoney := FloatToStr(StrToFloat(FQty) * StrToFloat(FPrice)); with Order_Sub do begin Edit; FieldByName('sqMoney').Value := StrToFloat(FMoney); Post; end; tv1.Controller.EditingController.ShowEdit(); end; end.