D7wmguihua/桂华管理系统/U_ClothContractInPut.pas
DESKTOP-E401PHE\Administrator b4b5840f18 1
2025-01-18 16:22:10 +08:00

1141 lines
32 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_ClothContractInPut;
interface
uses
Windows, Messages,strUtils, SysUtils, cxTextEdit,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,
cxMaskEdit, cxButtonEdit, StdCtrls, ToolWin, DBClient, ADODB,
ExtCtrls, BtnEdit, cxDropDownEdit, cxGridCustomPopupMenu, cxGridPopupMenu,
cxLookAndFeels, cxLookAndFeelPainters, cxNavigator;
type
TfrmClothContractInPut = class(TForm)
ToolBar1: TToolBar;
TBSave: TToolButton;
TBClose: TToolButton;
ScrollBox1: TScrollBox;
Label1: TLabel;
ConNo: TEdit;
Label4: TLabel;
DeliveryDate: TDateTimePicker;
Label5: TLabel;
ToolBar2: TToolBar;
ToolButton1: TToolButton;
ToolButton2: TToolButton;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1PRTSpec: TcxGridDBColumn;
v1PRTColor: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
v1PRTKZ: TcxGridDBColumn;
v1Money: TcxGridDBColumn;
v1Price: TcxGridDBColumn;
v1ClothUnit: TcxGridDBColumn;
ADOTemp: TADOQuery;
ADOCmd: TADOQuery;
DataSource1: TDataSource;
Order_Sub: TClientDataSet;
DataSource2: TDataSource;
ADOZDY: TADOQuery;
CDS_ZDY: TClientDataSet;
FactoryNoName: TcxButtonEdit;
ADOQueryTmp: TADOQuery;
v1Column1: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
PanZDY: TPanel;
CXGridZDY: TcxGrid;
TVZDY: TcxGridDBTableView;
VHelpZDYName: TcxGridDBColumn;
CXGridZDYLevel1: TcxGridLevel;
Button1: TButton;
v1Column4: TcxGridDBColumn;
Label2: TLabel;
QDTime: TDateTimePicker;
Label3: TLabel;
CompanyName: TcxButtonEdit;
Label6: TLabel;
QDPalce: TEdit;
v1Column5: TcxGridDBColumn;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
LXPerson: TEdit;
LXTel: TEdit;
JHPlace: TcxButtonEdit;
Label10: TLabel;
fromConNo: TcxButtonEdit;
v1T_Qty: TcxGridDBColumn;
v1T_money: TcxGridDBColumn;
v1T_Ps: TcxGridDBColumn;
cxGridPopupMenu1: TcxGridPopupMenu;
v1Mrate: TcxGridDBColumn;
v1T_Price: TcxGridDBColumn;
Panel1: TPanel;
Label11: TLabel;
Tv1Column1: TcxGridDBColumn;
procedure TBCloseClick(Sender: TObject);
procedure TVZDYCellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
procedure Button1Click(Sender: TObject);
procedure TVZDYKeyPress(Sender: TObject; var Key: Char);
procedure FormShow(Sender: TObject);
procedure TBSaveClick(Sender: TObject);
procedure v1OrderUnitPropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v1PRTUnitPropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v1PRTColorPropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure ToolButton1Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure FactoryNoNamePropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v1Column1PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v1PRTMFPropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v1OrderQtyPropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v1ClothQtyPropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v1Column2PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure FactoryNoNamePropertiesChange(Sender: TObject);
procedure CompanyNamePropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure JHPlacePropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v1Column1PropertiesEditValueChanged(Sender: TObject);
procedure fromConNoKeyPress(Sender: TObject; var Key: Char);
procedure v1ClothUnitPropertiesEditValueChanged(Sender: TObject);
procedure fromConNoPropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v1Column6PropertiesEditValueChanged(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure Tv1CellClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
private
FXS:Integer;
procedure InitData();
procedure ZDYHelp(FButn:TcxButtonEdit;LType:string);
function SaveData():Boolean;
function YFData(fMainID,FsubID:string):Boolean;
procedure DoQuery(fkeyNo:string);
procedure DoKc();
{ Private declarations }
public
PState:Integer;
FMainId:String;
{ Public declarations }
end;
var
frmClothContractInPut: TfrmClothContractInPut;
implementation
uses
U_DataLink,U_ZDYHelp,U_Fun, U_ZdyAttachGYS,U_ClothContractList_CG_help,
U_ZdyAttachCP;
{$R *.dfm}
procedure TfrmClothContractInPut.DoKc();
begin
Label11.Caption:='<27><><EFBFBD>ۣ<EFBFBD>0';
IF Order_Sub.IsEmpty then exit;
IF trim(Order_Sub.fieldbyname('C_CodeName').AsString)='' then exit;
with ADOTemp do
begin
close;
sql.Clear;
SQL.Add(' SELECT Top 1 Price FROM YF_Money_CR A');
sql.Add(' where P_CodeName='+quotedstr(trim(Order_Sub.fieldbyname('C_CodeName').AsString)));
sql.Add(' and factoryName='+quotedstr(trim(FactoryNoName.Text)));
sql.Add(' and CRType='<><D3A6><EFBFBD><EFBFBD><EFBFBD>Ǽ<EFBFBD>'' ');
sql.Add(' and price>0 ');
sql.Add(' order by FillTime desc');
open;
end;
IF not ADOTemp.IsEmpty then
begin
Label11.Caption:='<27><><EFBFBD>ۣ<EFBFBD>'+trim(ADOTemp.fieldbyname('price').AsString);
end;
end;
procedure TfrmClothContractInPut.DoQuery(fkeyNo:string);
begin
IF trim(fkeyNo)='' then exit;
with ADOTemp do
begin
close;
sql.Clear;
sql.Add('select A.* from Contract_Main A ');
sql.Add('inner join Contract_sub B on B.MainID=A.mainID ');
sql.Add('where A.conNo='+quotedstr(trim(fkeyNo)));
sql.Add('and Isnull(B.C_status,''0'')=''0'' ');
open;
IF not IsEmpty then
begin
FactoryNoName.Text:=fieldbyname('FactoryNoName').AsString;
LXPerson.Text:=fieldbyname('LXPerson').AsString;
LXPerson.Text:=fieldbyname('LXPerson').AsString;
LXTel.Text:=fieldbyname('LXPerson').AsString;
fromConNo.Hint:=fieldbyname('mainID').AsString;
JHPlace.Text:=fieldbyname('QDPalce').AsString;
end
else
begin
application.MessageBox('<27>˲ɹ<CBB2><C9B9>ƻ<EFBFBD><C6BB><EFBFBD><EFBFBD>Ŵ<EFBFBD><C5B4><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',0);
exit;
end;
end;
with ADOTemp do
begin
close;
sql.Clear;
sql.Add('select * ');
sql.Add('from Contract_Main A');
sql.Add('inner join Contract_sub B on B.MainID=A.mainID ');
sql.Add('where A.conNo='+quotedstr(trim(fkeyNo)));
sql.Add('and Isnull(B.C_status,''0'')=''0'' ');
open;
IF not IsEmpty then
begin
SCreateCDS20(ADOTemp,Order_Sub);
SInitCDSData20(ADOTemp,Order_Sub);
end
else
begin
end;
end;
with Order_Sub do
begin
DisableControls;
First;
while not eof do
begin
edit;
fieldbyname('fromMainID').Value:= fieldbyname('MainID').AsString;
fieldbyname('fromsubID').Value:= fieldbyname('subID').AsString;
fieldbyname('MainID').Value:= '';
fieldbyname('subID').Value:= '';
post;
next;
end;
First;
EnableControls;
end;
end;
function TfrmClothContractInPut.YFData(fMainID,FsubID:string):Boolean;
var
CRID,OrdMainId,YFID,FComTaiTou,FCRID,FFactoryName:String;
begin
Result:=False;
try
with ADOQueryTmp do
begin
Close;
SQL.Clear;
sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(FactoryNoName.Text)+'''');
Open;
end;
if not ADOQueryTmp.IsEmpty then
begin
CRID:=ADOQueryTmp.fieldbyname('CRID').AsString;
end
else
begin
with ADOCmd 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:=ADOCmd.fieldbyname('CRID').AsString;
with ADOCmd do
begin
Close;
SQL.Clear;
sql.Add('select * from YF_Money_KC ');
sql.add('where CRID='+quotedstr(trim(CRID)));
Open;
end;
with ADOCmd do
begin
Append;
FieldByName('CRID').Value:=StrToInt(CRID);
FieldByName('FactoryName').Value:=Trim(FactoryNoName.Text);
FieldByName('ZdyStr1').Value:=<><D3A6><EFBFBD><EFBFBD>';
Post;
end;
end;
with ADOQueryTmp do
begin
Close;
sql.Clear;
sql.Add('select * from YF_Money_CR where mainID='''+Trim(FmainID)+'''');
sql.Add('and subID='''+Trim(FsubID)+'''');
sql.Add('and YFName=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' ');
Open;
end;
if ADOQueryTmp.IsEmpty then
begin
if GetLSNo(ADOCmd,YFID,'YF','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;
end
else
begin
YFID:=Trim(ADOQueryTmp.fieldbyname('YFID').AsString);
end;
with ADOCmd do
begin
Close;
sql.Clear;
sql.Add('select * from YF_Money_CR where YFID='''+Trim(YFID)+'''');
Open;
end;
with ADOCmd do
begin
if ADOQueryTmp.IsEmpty then
Append
else
Edit;
FieldByName('YFID').Value:=Trim(YFID);
FieldByName('YFTypeId').Value:=Trim(ConNo.Text);
FieldByName('CRID').Value:=StrToInt(CRID);
FieldByName('Filler').Value:=Trim(DName);
FieldByName('CRType').Value:=<><D3A6><EFBFBD><EFBFBD><EFBFBD>Ǽ<EFBFBD>';
FieldByName('CRFlag').Value:=<><D3A6><EFBFBD><EFBFBD>';
FieldByName('QtyFlag').Value:=1;
FieldByName('FactoryName').Value:=Trim(FactoryNoName.Text);
FieldByName('CRTime').Value:=formatDateTime('yyyy-MM-dd',DeliveryDate.Date);
FieldByName('Qty').Value:=Order_Sub.fieldbyname('C_Qty').AsFloat;
FieldByName('PS').Value:=Order_Sub.fieldbyname('Qty1').AsFloat;
FieldByName('T_Ps').Value:=Order_Sub.fieldbyname('T_Ps').AsFloat;
FieldByName('T_Qty').Value:=Order_Sub.fieldbyname('T_Qty').AsFloat;
FieldByName('YFType').Value:='<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>';
FieldByName('Price').Value:=Order_Sub.fieldbyname('Price').asfloat;
FieldByName('T_Price').Value:=Order_Sub.fieldbyname('T_Price').asfloat;
FieldByName('HuiLv').Value:=1;
FieldByName('BZType').Value:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
FieldByName('ComTaiTou').Value:=Trim(FComTaiTou);
FieldByName('QtyUnit').Value:=Trim(Order_Sub.fieldbyname('C_Unit').AsString);
FieldByName('YFName').Value:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
FieldByName('MainId').Value:=Trim(fMainID);
FieldByName('subID').Value:=Trim(fsubID);
FieldByName('P_CodeName').Value:=Trim(Order_Sub.fieldbyname('C_CodeName').AsString);
FieldByName('P_Color').Value:=Trim(Order_Sub.fieldbyname('C_color').AsString);
Post;
end;
with ADOCmd do
begin
Close;
sql.Clear;
sql.Add('Update YF_Money_CR Set Money=Price*Qty,BBMoney=Price*Qty,T_money=T_Price*T_Qty ');
sql.Add(' where YFID='''+Trim(YFID)+'''');
ExecSQL;
end;
with ADOCmd 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;
except
end;
end;
procedure TfrmClothContractInPut.TBCloseClick(Sender: TObject);
begin
Close;
end;
procedure TfrmClothContractInPut.InitData();
begin
with ADOQueryTmp do
begin
Close;
SQL.Clear;
sql.Add('select * ');
sql.Add('from Contract_Main A');
sql.Add('inner join Contract_sub B on B.MainID=A.mainID ');
sql.Add('where A.mainID= '''+Trim(fMainID)+''' ');
sql.Add('and A.conType=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' ');
Open;
end;
SCreateCDS20(ADOQueryTmp,Order_Sub);
SInitCDSData20(ADOQueryTmp,Order_Sub);
SCSHData(ADOQueryTmp,ScrollBox1,0);
IF not ADOQueryTmp.IsEmpty then
begin
fromConNo.Hint:=trim(ADOQueryTmp.fieldbyname('fromMainID').AsString);
fromConNo.Text:=trim(ADOQueryTmp.fieldbyname('fromConNo').AsString);
end;
if PState=0 then
begin
with ADOTemp do
begin
Close;
SQL.Clear;
sql.Add('select Top 1* from Contract_Main order by FillTime desc ');
Open;
end;
QDTime.DateTime:=SGetServerDate(ADOTemp);
DeliveryDate.DateTime:=SGetServerDate(ADOTemp);
QDTime.Checked:=True;
DeliveryDate.Checked:=False;
// ConNo.Text:='<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>';
//CompanyName.Text:='¡<><C2A1><EFBFBD><EFBFBD>֯';
end;
PanZDY.Visible:=False;
end;
procedure TfrmClothContractInPut.ZDYHelp(FButn:TcxButtonEdit;LType:string);
var
FType,ZDYName,FText:String;
begin
PanZDY.Visible:=True;
PanZDY.Left:=FButn.Left;
PanZDY.Top:=FButn.Top+FButn.Height;
with ADOZDY do
begin
Filtered:=False;
Close;
SQL.Clear;
SQL.Add('select RTrim(ZDYNo) ZDYNo,RTrim(ZDYName) ZDYName from KH_ZDY where Type='''+Trim(LType)+'''');
Open;
end;
FText:=Trim(FButn.Text);
if FText<>'' then
SDofilter(ADOZDY,' ZDYName like '+QuotedStr('%'+Trim(FText)+'%'))
else
SDofilter(ADOZDY,'');
VHelpZDYName.Summary.GroupFormat:=Trim(FButn.Name);
end;
procedure TfrmClothContractInPut.TVZDYCellDblClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
var
FName:string;
begin
if ADOZDY.IsEmpty then Exit;
FName:=Trim(VHelpZDYName.Summary.GroupFormat);
TcxButtonEdit(FindComponent(FName)).Text:=Trim(ADOZDY.fieldbyname('ZDYName').AsString);
TcxButtonEdit(FindComponent(FName)).Hint:=Trim(ADOZDY.fieldbyname('ZDYNO').AsString);
PanZDY.Visible:=False;
end;
procedure TfrmClothContractInPut.Button1Click(Sender: TObject);
begin
PanZDY.Visible:=False;
end;
procedure TfrmClothContractInPut.TVZDYKeyPress(Sender: TObject; var Key: Char);
begin
if Key=#13 then
begin
if ADOZDY.IsEmpty then Exit;
TcxButtonEdit(FindComponent(VHelpZDYName.Summary.GroupFormat)).Text:=Trim(ADOZDY.fieldbyname('ZDYName').AsString);
TcxButtonEdit(FindComponent(VHelpZDYName.Summary.GroupFormat)).Hint:=Trim(ADOZDY.fieldbyname('ZDYNO').AsString);
PanZDY.Visible:=False;
ADOZDY.Active:=False;
end;
end;
procedure TfrmClothContractInPut.FormShow(Sender: TObject);
begin
{if Trim(DParameters1)='1' then
begin
v1Price.Visible:=False;
// v1ClothQty.Visible:=False;
// v1PRTQty.Visible:=False;
end else
begin
v1Price.Visible:=True;
v1ClothQty.Visible:=True;
v1PRTQty.Visible:=True;
end;}
readCXgrid(self.Caption,tv1);
InitData();
end;
function TfrmClothContractInPut.SaveData():Boolean;
var
maxno:String;
begin
try
ADOCmd.Connection.BeginTrans;
///<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
with ADOCmd do
begin
Close;
sql.Clear;
SQL.Add('select * from Contract_Main where MainId='''+Trim(FMainId)+'''');
Open;
end;
with ADOCmd do
begin
if Trim(FMainId)='' then
begin
Append;
if GetLSNo(ADOTemp,maxno,'CM','Contract_Main',3,1)=False then
begin
ADOCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE><EFBFBD><EFBFBD><ECB3A3>','<27><>ʾ',0);
exit;
end;
end
else begin
maxno:=Trim(FMainId);
Edit;
end;
FieldByName('MainId').Value:=Trim(maxno);
SSetsaveSql(ADOCmd,'Contract_Main',ScrollBox1,0);
FieldByName('LXPerson').Value:=Trim(LXPerson.Text);
FieldByName('LXTel').Value:=Trim(LXTel.Text);
if Trim(FMainId)='' then
begin
FieldByName('Filler').Value:=Trim(DName);
end else
begin
FieldByName('Editer').Value:=Trim(DName);
FieldByName('EditTime').Value:=SGetServerDateTime(ADOTemp);
end;
FieldByName('ConType').Value:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
FieldByName('status').Value:='0';
FieldByName('fromconNo').Value:=Trim(fromConNo.Text);
FieldByName('fromMainID').Value:=Trim(fromConNo.Hint);
Post;
end;
FMainId:=Trim(maxno);
///<2F><><EFBFBD><EFBFBD><EFBFBD>ӱ<EFBFBD>
with Order_Sub do
begin
First;
while not Eof do
begin
if Trim(Order_Sub.fieldbyname('C_Unit').AsString)='Kg' then
begin
end;
if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then
begin
if GetLSNo(ADOTemp,maxno,'CS','Contract_Sub',3,1)=False then
begin
ADOCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ',0);
Exit;
end;
end else
begin
maxno:=Trim(Order_Sub.fieldbyname('SubId').AsString);
end;
with ADOCmd do
begin
Close;
SQL.Clear;
sql.Add('select * from Contract_Sub where MainId='''+Trim(FMainId)+'''');
sql.Add(' and SubId='''+Trim(maxno)+'''');
Open;
end;
with ADOCmd do
begin
if Trim(Order_Sub.fieldbyname('SubId').AsString)='' then
Append
else
Edit;
FieldByName('MainId').Value:=Trim(FMainId);
FieldByName('SubId').Value:=Trim(maxno);
FieldByName('ConNo').Value:=Trim(ConNo.Text);
RTSetSaveDataCDS(ADOCmd,Tv1,Order_Sub,'Contract_Sub',0);
FieldByName('fromMainID').Value:=Trim(Order_Sub.fieldbyname('fromMainID').AsString);
FieldByName('fromsubID').Value:=Trim(Order_Sub.fieldbyname('fromsubID').AsString);
FieldByName('mrate').Value:=Trim(Order_Sub.fieldbyname('mrate').AsString);
FieldByName('C_status').Value:='0';
FieldByName('MFQty').Value:=Order_Sub.fieldbyname('MFQty').AsFloat;
FieldByName('KZQty').Value:=Order_Sub.fieldbyname('KZQty').AsFloat;
FieldByName('C_Qty').Value:=Order_Sub.fieldbyname('C_Qty').AsFloat;
FieldByName('Qty1').Value:=Order_Sub.fieldbyname('Qty1').AsFloat;
FieldByName('Qty2').Value:=Order_Sub.fieldbyname('Qty2').AsFloat;
FieldByName('Qty3').Value:=Order_Sub.fieldbyname('Qty3').AsFloat;
FieldByName('Price').Value:=Order_Sub.fieldbyname('Price').AsFloat;
FieldByName('money').Value:=Order_Sub.fieldbyname('money').AsFloat;
FieldByName('T_ps').Value:=Order_Sub.fieldbyname('T_ps').AsFloat;
FieldByName('T_Qty').Value:=Order_Sub.fieldbyname('T_Qty').AsFloat;
FieldByName('T_Price').Value:=Order_Sub.fieldbyname('T_Price').AsFloat;
FieldByName('T_money').Value:=Order_Sub.fieldbyname('T_money').AsFloat;
FieldByName('H_ps').Value:=Order_Sub.fieldbyname('H_ps').AsFloat;
FieldByName('H_Qty').Value:=Order_Sub.fieldbyname('H_Qty').AsFloat;
if Trim(Order_Sub.fieldbyname('C_Unit').AsString)='Kg' then
begin
if Order_Sub.fieldbyname('MFQty').AsFloat*Order_Sub.fieldbyname('KZQty').AsFloat >0 then
FieldByName('MQty').Value:=Order_Sub.fieldbyname('C_Qty').Value*1.00*1000
/(Order_Sub.fieldbyname('MFQty').Value*1.00/100*Order_Sub.fieldbyname('KZQty').Value);
end else
begin
FieldByName('MQty').Value:=Order_Sub.fieldbyname('C_Qty').Value;
end;
FieldByName('C_Valid').Value:='Y';
Post;
end;
Order_Sub.Edit;
Order_Sub.FieldByName('SubId').Value:=Trim(maxno);
if not YFData(FMainId,maxno) then
begin
ADOCmd.Connection.RollbackTrans;
exit;
end;
//Order_Sub.Post;
Next;
end;
end;
ADOCmd.Connection.CommitTrans;
Result:=True;
except
Result:=False;
ADOCmd.Connection.RollbackTrans;
if GetLSNo(ADOTemp,maxno,'CM','Contract_Main',3,1)=False then
begin
end;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ',0);
end;
end;
procedure TfrmClothContractInPut.TBSaveClick(Sender: TObject);
begin
cxGrid1.SetFocus;
if Trim(ConNo.Text)='' then
begin
Application.MessageBox('<27><>ͬ<EFBFBD><CDAC><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ',0);
Exit;
end;
if Trim(FactoryNoName.Text)='' then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ',0);
Exit;
end;
if Order_Sub.IsEmpty then
begin
Application.MessageBox('<27><>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ',0);
exit;
end;
if Order_Sub.Locate('C_Qty',null,[]) then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
if Order_Sub.Locate('C_Unit',null,[]) then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
{ if Order_Sub.Locate('KZQty',null,[]) then
begin
Application.MessageBox('<27><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
if Order_Sub.Locate('MFQty',null,[]) then
begin
Application.MessageBox('<27>ŷ<EFBFBD><C5B7><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end; }
with ADOTemp do
begin
close;
sql.Clear;
sql.Add('select MainID from Contract_Main A');
sql.Add('where mainID<>'+quotedstr(trim(FMainId)));
sql.Add('and conNo='+quotedstr(trim(conNo.Text)));
sql.Add('and conType=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>''');
open;
end;
IF not ADOTemp.IsEmpty then
begin
application.MessageBox('<27><><EFBFBD>񵥺<EFBFBD><F1B5A5BA>ظ<EFBFBD><D8B8><EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',0);
exit;
end;
if SaveData() then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>','<27><>ʾ',0);
ModalResult:=1;
// ConNo.Text:='<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>';
{ FactoryNoName.Text:='';
CompanyName.Text:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֯';
LXPerson.Text:='';
LXTel.Text:='';
JHPlace.Text:='';
Order_Sub.EmptyDataSet;
PState:=0;
FMainId:=''; }
end;
end;
procedure TfrmClothContractInPut.v1OrderUnitPropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='OrdUnit';
flagname:='<27><>λ';
if ShowModal=1 then
begin
Self.Order_Sub.Edit;
Self.Order_Sub.FieldByName('OrderUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmClothContractInPut.v1PRTUnitPropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='OrdUnit';
flagname:='<27><>λ';
if ShowModal=1 then
begin
Self.Order_Sub.Edit;
Self.Order_Sub.FieldByName('PRTUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmClothContractInPut.v1PRTColorPropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='OrdColor';
flagname:='<27><>ɫ';
if ShowModal=1 then
begin
Self.Order_Sub.Edit;
Self.Order_Sub.FieldByName('PRTColor').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmClothContractInPut.ToolButton1Click(Sender: TObject);
begin
with Order_Sub do
begin
Append;
fieldbyname('PriceUnit').Value:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
fieldbyname('C_UNit').Value:='M';
Post;
end;
end;
procedure TfrmClothContractInPut.ToolButton2Click(Sender: TObject);
begin
if Order_Sub.IsEmpty then Exit;
if Trim(Order_Sub.fieldbyname('SubId').AsString)<>'' then
begin
{ with ADOTemp do
begin
Close;
sql.Clear;
sql.Add('select * from Contrac_Sub_MX where SubId='''+Trim(Order_Sub.fieldbyname('SubId').AsString)+'''');
Open;
end;
if ADOTemp.IsEmpty then
begin
Application.MessageBox('<27>ѵ<EFBFBD><D1B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!','<27><>ʾ',0);
Exit;
end; }
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
with ADOCmd do
begin
Close;
sql.Clear;
sql.Add('delete YF_Money_CR where subID='''+Trim(Order_Sub.fieldbyname('subID').AsString)+'''');
sql.Add('delete Contract_Sub where SubId='''+Trim(Order_Sub.fieldbyname('SubId').AsString)+'''');
ExecSQL;
end;
end;
Order_Sub.Delete;
end;
procedure TfrmClothContractInPut.FactoryNoNamePropertiesButtonClick(
Sender: TObject; AButtonIndex: Integer);
begin
if Trim(FMainId)<>'' then
begin
with ADOTemp do
begin
Close;
sql.Clear;
sql.Add('select * from YF_Money_CR A where exists(');
sql.Add('select * from Contract_Sub_MX B inner join Contract_Sub C on B.SubId=C.SubId ');
sql.Add(' where C.Mainid='''+Trim(FMainId)+'''');
sql.Add(' and B.MXID=A.YFTypeId)');
Open;
end;
if ADOTemp.IsEmpty=False then
begin
Application.MessageBox('<27>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EEB2BB><EFBFBD>޸Ĺ<DEB8>Ӧ<EFBFBD><D3A6>!','<27><>ʾ',0);
Exit;
end;
end;
try
frmZdyAttachGYS:=TfrmZdyAttachGYS.Create(Application);
with frmZdyAttachGYS do
begin
if ShowModal=1 then
begin
FactoryNoName.Text:=Trim(CDS_HZ.fieldbyname('ZDYName').AsString);
FactoryNoName.Hint:=Trim(CDS_HZ.fieldbyname('ZdyCode').AsString);
LXTel.Text:=Trim(CDS_HZ.fieldbyname('DEFstr2').AsString);
LXPerson.Text:=Trim(CDS_HZ.fieldbyname('DEFstr4').AsString);
end;
end;
finally
frmZdyAttachGYS.Free;
end;
end;
procedure TfrmClothContractInPut.v1Column1PropertiesButtonClick(
Sender: TObject; AButtonIndex: Integer);
begin
try
frmZdyAttachCP:=TfrmZdyAttachCP.Create(Application);
with frmZdyAttachCP do
begin
fType:='<27><><EFBFBD><EFBFBD>';
if ShowModal=1 then
begin
Self.Order_Sub.Edit;
Self.Order_Sub.FieldByName('C_Code').Value:=Trim(CDS_HZ.fieldbyname('ZdyCode').AsString);
Self.Order_Sub.FieldByName('C_CodeName').Value:=Trim(CDS_HZ.fieldbyname('ZdyName').AsString);
Self.Order_Sub.FieldByName('CP_CodeName').Value:=Trim(CDS_HZ.fieldbyname('CPhh').AsString);
// Self.Order_Sub.FieldByName('Color').Value:=Trim(CDS_HZ.fieldbyname('DEFstr3').AsString);
// Self.Order_Sub.FieldByName('SOrddefstr4').Value:=Trim(ClientDataSet1.fieldbyname('Note').AsString);
Self.Order_Sub.Post;
end;
end;
finally
frmZdyAttachCP.Free;
end;
DoKc();
self.tv1.Controller.EditingController.ShowEdit();
end;
procedure TfrmClothContractInPut.v1PRTMFPropertiesButtonClick(
Sender: TObject; AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='KZ';
flagname:='<27><><EFBFBD>ص<EFBFBD>λ';
if ShowModal=1 then
begin
Self.Order_Sub.Edit;
Self.Order_Sub.FieldByName('KZUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmClothContractInPut.v1OrderQtyPropertiesButtonClick(
Sender: TObject; AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='MF';
flagname:='<27>ŷ<EFBFBD><C5B7><EFBFBD>λ';
if ShowModal=1 then
begin
Self.Order_Sub.Edit;
Self.Order_Sub.FieldByName('MFUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmClothContractInPut.v1ClothQtyPropertiesButtonClick(
Sender: TObject; AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='PriceUnit';
flagname:='<27>Ƽ۵<C6BC>λ';
if ShowModal=1 then
begin
Self.Order_Sub.Edit;
Self.Order_Sub.FieldByName('PriceUnit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmClothContractInPut.v1Column2PropertiesButtonClick(
Sender: TObject; AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='OrderUnit';
flagname:='<27><>λ';
if ShowModal=1 then
begin
Self.Order_Sub.Edit;
Self.Order_Sub.FieldByName('C_Unit').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmClothContractInPut.FactoryNoNamePropertiesChange(
Sender: TObject);
begin
{if FXS=99 then
begin
PanZDY.Visible:=False;
FXS:=0;
Exit;
end;
ZDYHelp(FactoryNoName,'FactoryNo1Name'); }
end;
procedure TfrmClothContractInPut.CompanyNamePropertiesButtonClick(
Sender: TObject; AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='OrdDefStr2';
flagname:='<27>跽';
if ShowModal=1 then
begin
FXS:=99;
CompanyName.Text:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmClothContractInPut.JHPlacePropertiesButtonClick(
Sender: TObject; AButtonIndex: Integer);
begin
try
frmZdyAttachGYS:=TfrmZdyAttachGYS.Create(Application);
with frmZdyAttachGYS do
begin
if ShowModal=1 then
begin
JHPlace.Text:=Trim(CDS_HZ.fieldbyname('zdyName').AsString);
end;
end;
finally
frmZdyAttachGYS.Free;
end;
end;
procedure TfrmClothContractInPut.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 Order_Sub do
begin
Edit;
FieldByName('C_CodeName').Value:=Trim(mvalue);
Post;
end;
with ADOTemp do
begin
close;
sql.Clear;
sql.Add('select * from KH_Zdy_Attachment A ');
sql.Add('where zdyName='+quotedstr(trim(Order_Sub.fieldbyname('C_CodeName').AsString)));
open;
end;
IF ADOTemp.IsEmpty then
begin
application.MessageBox('Ʒ<><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',0);
with Order_Sub do
begin
Edit;
FieldByName('C_CodeName').Value:='';
Post;
end;
end;
self.tv1.Controller.EditingController.ShowEdit();
end;
procedure TfrmClothContractInPut.fromConNoKeyPress(Sender: TObject;
var Key: Char);
begin
if key=#13 then
begin
DoQuery(fromConNo.text);
end;
end;
procedure TfrmClothContractInPut.v1ClothUnitPropertiesEditValueChanged(
Sender: TObject);
var
mvalue,fieldname:String;
begin
If Trim(TcxTextEdit(Sender).EditingText)<>'' then
begin
mvalue:=TcxTextEdit(Sender).EditingText;
end else
begin
mvalue:='0';
end;
fieldname:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName;
with Order_Sub do
begin
Edit;
FieldByName(Trim(fieldname)).Value:=mvalue;
Post;
end;
with Order_Sub do
begin
Edit;
FieldByName('money').Value:=strtofloat(format('%.2f',[FieldByName('C_Qty').AsFloat*FieldByName('Price').AsFloat]));
Post;
end;
self.tv1.Controller.EditingController.ShowEdit();
end;
procedure TfrmClothContractInPut.fromConNoPropertiesButtonClick(
Sender: TObject; AButtonIndex: Integer);
begin
try
frmClothContractList_CG_help:=TfrmClothContractList_CG_help.Create(Application);
with frmClothContractList_CG_help do
begin
if ShowModal=1 then
begin
fromConNO.Text:=Trim(Order_Main.fieldbyname('ConNO').AsString);
end;
end;
finally
frmClothContractList_CG_help.Free;
end;
DoQuery(fromConNo.text);
end;
procedure TfrmClothContractInPut.v1Column6PropertiesEditValueChanged(
Sender: TObject);
var
mvalue,fieldname:String;
begin
If Trim(TcxTextEdit(Sender).EditingText)<>'' then
begin
mvalue:=TcxTextEdit(Sender).EditingText;
end else
begin
mvalue:='0';
end;
fieldname:=Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName;
with Order_Sub do
begin
Edit;
FieldByName(Trim(fieldname)).Value:=mvalue;
Post;
end;
with Order_Sub do
begin
Edit;
FieldByName('T_money').Value:=strtofloat(format('%.2f',[FieldByName('T_Qty').AsFloat*FieldByName('T_Price').AsFloat]));
Post;
end;
self.tv1.Controller.EditingController.ShowEdit();
end;
procedure TfrmClothContractInPut.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
writeCXgrid(self.Caption,tv1);
end;
procedure TfrmClothContractInPut.FormCreate(Sender: TObject);
begin
cxGrid1.Align:=Alclient;
end;
procedure TfrmClothContractInPut.Tv1CellClick(
Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
DoKc();
end;
end.