D7DJkefu/复合检验管理/U_ClothContractListLL.pas
DESKTOP-E401PHE\Administrator cbf8488898 ~
2025-04-30 19:48:41 +08:00

1206 lines
44 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_ClothContractListLL;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData,
cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB,
cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses,
cxControls, cxGridCustomView, cxGridCustomTableView, cxGridTableView,
cxGridDBTableView, cxGrid, DBClient, cxCalendar, cxButtonEdit, cxSplitter,
RM_Common, RM_Class, RM_e_Xls, RM_Dataset, RM_System, RM_GridReport,
cxTextEdit, cxDropDownEdit, cxCheckBox, cxCurrencyEdit, cxCalc;
type
TfrmClothContractListLL = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
Label1: TLabel;
Label2: TLabel;
cxGridPopupMenu1: TcxGridPopupMenu;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
Label3: TLabel;
ConNo: TEdit;
Label5: TLabel;
C_CodeName: TEdit;
Order_Main: TClientDataSet;
Label4: TLabel;
C_Spec: TEdit;
ToolButton2: TToolButton;
ToolButton3: TToolButton;
ToolButton4: TToolButton;
ClientDataSet3: TClientDataSet;
DataSource2: TDataSource;
DataSource3: TDataSource;
ClientDataSet2: TClientDataSet;
ToolButton5: TToolButton;
RM1: TRMGridReport;
RMDBMain: TRMDBDataSet;
RMXLSExport1: TRMXLSExport;
Panel2: TPanel;
cxGrid3: TcxGrid;
Tv3: TcxGridDBTableView;
cxGridDBColumn1: TcxGridDBColumn;
cxGridDBPRTColor: TcxGridDBColumn;
v3Column6: TcxGridDBColumn;
v3Column3: TcxGridDBColumn;
v3Column2: TcxGridDBColumn;
v3Column4: TcxGridDBColumn;
v3Column5: TcxGridDBColumn;
v3Column7: TcxGridDBColumn;
v3Column8: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
cxSplitter1: TcxSplitter;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1OrderNo: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v1FactoryNo1Name: TcxGridDBColumn;
v1PRTSpec: TcxGridDBColumn;
v1PRTMF: TcxGridDBColumn;
v1PRTKZ: TcxGridDBColumn;
v1OrderUnit: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
v1Column3: TcxGridDBColumn;
ToolBar2: TToolBar;
ToolButton8: TToolButton;
ToolButton9: TToolButton;
ToolButton11: TToolButton;
v1Column5: TcxGridDBColumn;
cxGridPopupMenu2: TcxGridPopupMenu;
Label6: TLabel;
FactoryNoName: TEdit;
Label7: TLabel;
FirstName: TEdit;
v3Column1: TcxGridDBColumn;
v3TPPS: TcxGridDBColumn;
v1Column6: TcxGridDBColumn;
v1Column7: TcxGridDBColumn;
v1Column8: TcxGridDBColumn;
ToolButton1: TToolButton;
v3Column11: TcxGridDBColumn;
v3Column12: TcxGridDBColumn;
v3Column13: TcxGridDBColumn;
v3Column14: TcxGridDBColumn;
v3Column15: TcxGridDBColumn;
v3Column16: TcxGridDBColumn;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBCloseClick(Sender: TObject);
procedure TBFindClick(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure ConNoChange(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure Tv2MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Tv2CellClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
procedure ToolButton5Click(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure v2Column3PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v3Column2PropertiesEditValueChanged(Sender: TObject);
procedure ConNoKeyPress(Sender: TObject; var Key: Char);
procedure ToolButton1Click(Sender: TObject);
procedure v3Column5PropertiesEditValueChanged(Sender: TObject);
procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView;
APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord;
ANewItemRecordFocusingChanged: Boolean);
private
FInt,PFInt:Integer;
procedure InitGrid();
procedure InitForm();
function DelData():Boolean;
function YFData():Boolean;
{ Private declarations }
public
{ Public declarations }
end;
var
frmClothContractListLL: TfrmClothContractListLL;
implementation
uses
U_DataLink,U_ClothContractInPut,U_Fun,U_ProductOrderListSel,U_ZDYHelp;
{$R *.dfm}
procedure TfrmClothContractListLL.FormDestroy(Sender: TObject);
begin
frmClothContractListLL:=nil;
end;
procedure TfrmClothContractListLL.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmClothContractListLL.TBCloseClick(Sender: TObject);
begin
Close;
WriteCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD>ll1',Tv1,ʾ<D6B8><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
WriteCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD>llr11',Tv3,ʾ<D6B8><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
end;
procedure TfrmClothContractListLL.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
sql.Clear;
sql.Add('select ClothPS=A.DHPS-A.TPPSHZ,ClothQty=A.DHQty-A.TPQtyHZ, A.DHUnit,SXMainId='''',SXDHID='''',A.MainId,A.SubId');
SQL.Add(' ,A.DHID,A.DHPS,A.TPPSHZ,A.TPQtyHZ,A.DHQty,A.FirstName,B.ConNo,C.C_CodeName,C.C_Spec,C.MFQty,C.KZQty,B.FactoryNoName ');
sql.Add(' from Contract_Cloth_DH A inner join Contract_Main B on A.Mainid=B.Mainid');
sql.Add(' inner join Contract_Sub C on A.Subid=C.Subid');
SQL.Add(' where B.FillTime>='''+FormatDateTime('yyyy-MM-dd',BegDate.Date)+''' ');
sql.Add(' and B.Filltime<'''+FormatDateTime('yyyy-MM-dd',EndDate.Date+1)+'''');
sql.add(' and isnull(A.DHType,'''')=''''');
sql.Add(' union all');
sql.Add(' select ClothPS=A.DHPS-A.TPPSHZ,ClothQty=A.DHQty-A.TPQtyHZ,A.DHUnit,A.SXMainId,A.SXDHID,A.MainId,A.SubId ');
SQL.Add(' ,A.DHID,A.DHPS,A.TPPSHZ,A.TPQtyHZ,A.DHQty,A.FirstName ');
sql.Add(',ConNo=(select Top 1 ConNo from ContractSX_Main SM where SM.MainId=A.SXMainId)');
sql.Add(',C_CodeName=A.PBName,C_Spec=A.PBSpec,MFQty=A.PBMF,KZQty=A.PBKZ');
SQL.Add(',FactoryNoName=(select Top 1 FirstName from ContractSX_Cloth_DH SD where SD.DHID=A.SXDHID)');
sql.Add(' from Contract_Cloth_DH A ');
SQL.Add(' where exists(select * from ContractSX_Main B where B.MainId=A.SXMainId');
SQL.Add(' and B.FillTime>='''+FormatDateTime('yyyy-MM-dd',BegDate.Date)+''' ');
sql.Add(' and B.Filltime<'''+FormatDateTime('yyyy-MM-dd',EndDate.Date+1)+''')');
sql.Add(' and isnull(A.DHType,'''')<>'''' ');
Open;
end;
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmClothContractListLL.InitForm();
begin
ReadCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD>ll1',Tv1,ʾ<D6B8><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
ReadCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD>llr11',Tv3,ʾ<D6B8><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
EndDate.DateTime:=SGetServerDateTime(ADOQueryTemp);
BegDate.DateTime:=EndDate.DateTime-30;
InitGrid();
end;
procedure TfrmClothContractListLL.TBFindClick(Sender: TObject);
begin
if ADOQueryMain.Active=False then Exit;
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
end;
function TfrmClothContractListLL.DelData():Boolean;
begin
try
Result:=false;
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete Contract_Sub where SubId='''+Trim(Order_Main.fieldbyname('SubId').AsString)+'''');
ExecSQL;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from Contract_Sub where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+'''');
Open;
end;
if ADOQueryTemp.IsEmpty then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete Contract_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+'''');
ExecSQL;
end;
end;
if Trim(Order_Main.fieldbyname('SubId').AsString)='' then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete Contract_Main where MainId='''+Trim(Order_Main.fieldbyname('MainId').AsString)+'''');
ExecSQL;
end;
end;
ADOQueryCmd.Connection.CommitTrans;
Result:=True;
except
ADOQueryCmd.Connection.RollbackTrans;
Result:=False;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><ECB3A3>','<27><>ʾ',0);
end;
end;
procedure TfrmClothContractListLL.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmClothContractListLL.ConNoChange(Sender: TObject);
begin
if ADOQueryMain.Active=False then Exit;
SDofilter(ADOQueryMain,SGetFilters(Panel1,1,2));
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
end;
procedure TfrmClothContractListLL.FormShow(Sender: TObject);
begin
InitForm();
end;
procedure TfrmClothContractListLL.ToolButton2Click(Sender: TObject);
begin
if Order_Main.IsEmpty then Exit;
begin
try
frmProductOrderListSel:=TfrmProductOrderListSel.Create(Application);
with frmProductOrderListSel do
begin
OrderNo.Text:=Trim(self.Order_Main.fieldbyname('ConNo').AsString);
if ShowModal=1 then
begin
with frmProductOrderListSel.Order_Main do
begin
frmProductOrderListSel.Order_Main.First;
while not frmProductOrderListSel.Order_Main.Eof do
begin
if frmProductOrderListSel.Order_Main.FieldByName('SSel').AsBoolean=True then
begin
with Self.ClientDataSet3 do
begin
Self.ClientDataSet3.Append;
Self.ClientDataSet3.FieldByName('OrdSubId').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('SubId').AsString);
Self.ClientDataSet3.FieldByName('OrderNo').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('OrderNo').AsString);
Self.ClientDataSet3.FieldByName('MPRTCodeName').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('MPRTCodeName').AsString);
Self.ClientDataSet3.FieldByName('MPRTSpec').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('MPRTSpec').AsString);
Self.ClientDataSet3.FieldByName('PRTColor').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('PRTColor').AsString);
Self.ClientDataSet3.FieldByName('SOrddefstr1').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('SOrddefstr1').AsString);
Self.ClientDataSet3.FieldByName('PRTOrderKgQty').Value:=0;
Self.ClientDataSet3.FieldByName('PRTOrderQty').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('PRTOrderQty').AsString);
Self.ClientDataSet3.FieldByName('OrderUnit').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('OrderUnit').AsString);
Self.ClientDataSet3.FieldByName('PRTHX').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('PRTHX').AsString);
Self.ClientDataSet3.FieldByName('TPUnit').Value:=Self.Order_Main.FieldByName('DHUnit').Value;
Self.ClientDataSet3.FieldByName('Qty2').Value:=0;
end;
end;
frmProductOrderListSel.Order_Main.Next;
end;
end;
end;
end;
finally
frmProductOrderListSel.Free;
end;
end;
end;
procedure TfrmClothContractListLL.Tv2MouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
FInt:=2;
end;
procedure TfrmClothContractListLL.Tv2CellClick(
Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
SQL.Add('select A.*,C.MPRTSpec,B.PRTColor,C.MPRTCodeName,C.OrderNo ,');
sql.Add('C_Unit=(select Top 1 C_Unit from Contract_Sub AA,Contract_Sub_Mx BB where AA.SubId=BB.SubId and BB.MXid=A.Mxid)');
SQL.Add(' from Contract_Sub_MxTo A inner join JYOrder_Sub B on A.OrdSubId=B.SubId ');
SQL.Add(' inner join JYOrder_Main C on C.MainId=B.MainId ');
sql.Add('where A.MxId='''+Trim(ClientDataSet2.fieldbyname('MxId').AsString)+'''');
Open;
end;
SCreateCDS20(ADOQueryTemp,ClientDataSet3);
SInitCDSData20(ADOQueryTemp,ClientDataSet3);
end;
procedure TfrmClothContractListLL.ToolButton5Click(Sender: TObject);
var
maxno,LLIdx,FDW:string;
begin
if ClientDataSet3.IsEmpty then Exit;
ToolBar1.SetFocus;
if ClientDataSet3.Locate('OrderNo',null,[]) then
begin
Application.MessageBox(<><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ',0);
Exit;
end;
if ClientDataSet3.Locate('TPPS',null,[]) then
begin
Application.MessageBox(<><C6A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ',0);
Exit;
end;
if ClientDataSet3.Locate('TPQty',null,[]) then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ',0);
Exit;
end;
if ClientDataSet3.Locate('Qty2',null,[]) then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EEB2BB>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ',0);
Exit;
end;
if ClientDataSet3.Locate('TPUnit',null,[]) then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ',0);
Exit;
end;
ClientDataSet3.DisableControls;
with ClientDataSet3 do
begin
First;
while not Eof do
begin
if Trim(FDW)='' then
begin
FDW:=Trim(ClientDataSet3.fieldbyname('TPUnit').AsString);
end;
if FDW<>Trim(ClientDataSet3.fieldbyname('TPUnit').AsString) then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>һ<EFBFBD><D2BB>!','<27><>ʾ',0);
Exit;
end;
Next;
end;
end;
ClientDataSet3.EnableControls;
if Trim(Order_Main.fieldbyname('DHUnit').AsString)='M' then
begin
if ClientDataSet3.Locate('TPUnit','Kg',[]) then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λΪM,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>ΪKg<4B><67>','<27><>ʾ',0);
Exit;
end;
end;
BegDate.SetFocus;
try
ADOQueryCmd.Connection.BeginTrans;
//<2F><><EFBFBD><EFBFBD>ȥ<EFBFBD><C8A5><EFBFBD><EFBFBD>
with ClientDataSet3 do
begin
First;
while not eof do
begin
if Trim(ClientDataSet3.fieldbyname('MXId').AsString)='' then
begin
if GetLSNo(ADOQueryCmd,maxno,'MX','Contract_Cloth_LLMx',4,1)=False then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('ȡȥ<C8A1><C8A5><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ',0);
Exit;
end;
end else
begin
maxno:=Trim(ClientDataSet3.fieldbyname('MXId').AsString);
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from Contract_Cloth_LLMx where MXId='''+Trim(ClientDataSet3.fieldbyname('MXId').AsString)+'''');
Open;
end;
with ADOQueryCmd do
begin
if Trim(ClientDataSet3.fieldbyname('MXId').AsString)='' then
Append
else
Edit;
FieldByName('MainId').Value:=Trim(Order_Main.fieldbyname('MainId').AsString);
FieldByName('SXMainId').Value:=Trim(Order_Main.fieldbyname('SXMainId').AsString);
FieldByName('SXDHId').Value:=Trim(Order_Main.fieldbyname('SXDHId').AsString);
FieldByName('SubId').Value:=Trim(Order_Main.fieldbyname('SubId').AsString);
FieldByName('DHId').Value:=Trim(Order_Main.fieldbyname('DHId').AsString);
FieldByName('MXId').Value:=Trim(maxno);
FieldByName('OrdSubId').Value:=Trim(ClientDataSet3.fieldbyname('OrdSubId').AsString);
FieldByName('TPDate').Value:=ClientDataSet3.fieldbyname('TPDate').Value;
FieldByName('TPPerson').Value:=ClientDataSet3.fieldbyname('TPPerson').Value;
FieldByName('TPNote').Value:=ClientDataSet3.fieldbyname('TPNote').Value;
if Trim(ClientDataSet3.fieldbyname('MXId').AsString)<>'' then
begin
if Trim(ADOQueryCmd.fieldbyname('TPUnit').AsString)<>Trim(ClientDataSet3.fieldbyname('TPUnit').AsString) then
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from Contract_Cloth_LL A where A.DHIDHelp in(');
sql.Add('select LLID from Contract_Cloth_LL B where B.DHID='''+Trim(ClientDataSet3.fieldbyname('DHID').AsString)+'''');
sql.Add(' and OrdSubId='''+Trim(ClientDataSet3.fieldbyname('OrdSubId').AsString)+''' and JXJGFlag=1)');
Open;
end;
if ADOQueryTemp.IsEmpty=False then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD><D3B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ!','<27><>ʾ',0);
Exit;
end;
end;
end;
if Trim(ClientDataSet3.fieldbyname('MXId').AsString)<>'' then
begin
if Trim(ADOQueryCmd.fieldbyname('TPUnit').AsString)<>Trim(ClientDataSet3.fieldbyname('TPUnit').AsString) then
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from JYOrder_Sub_AnPai A where SubId='''+Trim(ClientDataSet3.fieldbyname('OrdSubId').AsString)+'''');
Open;
end;
if ADOQueryTemp.IsEmpty=False then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27>ѻزֲ<D8B2><D6B2><EFBFBD><EFBFBD>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ!','<27><>ʾ',0);
Exit;
end;
end;
end;
FieldByName('TPUnit').Value:=ClientDataSet3.fieldbyname('TPUnit').Value;
{if ClientDataSet3.FieldByName('JXJGFlag').AsBoolean=True then
begin
FieldByName('JXJGFlag').Value:=1;
end else
begin
FieldByName('JXJGFlag').Value:=0;
end; }
if Trim(ClientDataSet3.fieldbyname('TPQty').AsString)<>'' then
FieldByName('TPQty').Value:=ClientDataSet3.fieldbyname('TPQty').Value
else
FieldByName('TPQty').Value:=0;
if Trim(ClientDataSet3.fieldbyname('JGPrice').AsString)<>'' then
FieldByName('JGPrice').Value:=ClientDataSet3.fieldbyname('JGPrice').Value
else
FieldByName('JGPrice').Value:=0;
if Trim(ClientDataSet3.fieldbyname('GangFee').AsString)<>'' then
FieldByName('GangFee').Value:=ClientDataSet3.fieldbyname('GangFee').Value
else
FieldByName('GangFee').Value:=0;
FieldByName('TPPS').AsFloat:=ClientDataSet3.fieldbyname('TPPS').AsFloat;
if Trim(ClientDataSet3.fieldbyname('Qty1').AsString)<>'' then
FieldByName('Qty1').Value:=ClientDataSet3.fieldbyname('Qty1').Value
else
FieldByName('Qty1').Value:=0;
if Trim(ClientDataSet3.fieldbyname('Qty2').AsString)<>'' then
FieldByName('Qty2').Value:=ClientDataSet3.fieldbyname('Qty2').Value
else
FieldByName('Qty2').Value:=0;
if Trim(ClientDataSet3.fieldbyname('Qty3').AsString)<>'' then
FieldByName('Qty3').Value:=ClientDataSet3.fieldbyname('Qty3').Value
else
FieldByName('Qty3').Value:=0;
if Trim(ClientDataSet3.fieldbyname('TPUnit').AsString)='Kg' then
begin
FieldByName('TPMQty').Value:=ClientDataSet3.fieldbyname('TPQty').Value*1.00*1000
/(Order_Main.fieldbyname('MFQty').Value*1.00/100*Order_Main.fieldbyname('KZQty').Value);
end else
begin
FieldByName('TPMQty').Value:=ClientDataSet3.fieldbyname('TPQty').Value;
end;
if Trim(ClientDataSet3.fieldbyname('TPUnit').AsString)='Kg' then
begin
FieldByName('MQty2').Value:=ClientDataSet3.fieldbyname('Qty2').Value*1.00*1000
/(Order_Main.fieldbyname('MFQty').Value*1.00/100*Order_Main.fieldbyname('KZQty').Value);
end else
begin
FieldByName('MQty2').Value:=ClientDataSet3.fieldbyname('Qty2').Value;
end;
if Trim(ClientDataSet3.FieldByName('TPUnit').AsString)=Trim(Order_Main.FieldByName('DHUnit').AsString) then
begin
FieldByName('TPYZQty').Value:=ClientDataSet3.fieldbyname('TPQty').Value;
end else
begin
if Trim(ClientDataSet3.FieldByName('TPUnit').AsString)='M' then
begin
FieldByName('TPYZQty').Value:=ClientDataSet3.fieldbyname('TPQty').Value
*Order_Main.fieldbyname('MFQty').Value*1.00/100
*Order_Main.fieldbyname('KZQty').Value*1.00/1000;
end;
end;
if Trim(ClientDataSet3.FieldByName('TPUnit').AsString)=Trim(Order_Main.FieldByName('DHUnit').AsString) then
begin
FieldByName('YZQty2').Value:=ClientDataSet3.fieldbyname('Qty2').Value;
end else
begin
if Trim(ClientDataSet3.FieldByName('TPUnit').AsString)='M' then
begin
FieldByName('YZQty2').Value:=ClientDataSet3.fieldbyname('Qty2').Value
*Order_Main.fieldbyname('MFQty').Value*1.00/100
*Order_Main.fieldbyname('KZQty').Value*1.00/1000;
end;
end;
Post;
end;
with ClientDataSet3 do
begin
Edit;
FieldByName('MXId').Value:=Trim(maxno);
Post;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update Contract_Cloth_DH Set TPMQtyHZ=(select Sum(TPMQty) from Contract_Cloth_LLMx A where A.DHID=Contract_Cloth_DH.DHID)');
if Trim(ClientDataSet3.FieldByName('TPUnit').AsString)=Trim(Order_Main.FieldByName('DHUnit').AsString) then
begin
sql.Add(',TPQtyHZ=(select Sum(TPQty) from Contract_Cloth_LLMx A where A.DHID=Contract_Cloth_DH.DHID)');
end else
begin
if Trim(ClientDataSet3.FieldByName('TPUnit').AsString)='M' then
begin
SQL.Add(',TPQtyHZ=(select sum(TPQty*(PBMF/100)*(PBKZ/1000)) from Contract_Cloth_LLMx A ');
sql.Add(' where A.DHID=Contract_Cloth_DH.DHID )');
end;
end;
sql.Add(',TPPSHZ=(select Sum(TPPS) from Contract_Cloth_LLMx A where A.DHID=Contract_Cloth_DH.DHID)');
sql.Add(' where DHID='''+Trim(Order_Main.fieldbyname('DHID').AsString)+'''');
ExecSQL;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from Contract_Cloth_LL where DHID='''+Trim(Order_Main.fieldbyname('DHID').AsString)+'''');
sql.Add(' and OrdSubId='''+Trim(ClientDataSet3.fieldbyname('OrdSubId').AsString)+'''');
Open;
end;
if ADOQueryTemp.IsEmpty then
begin
{ with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select isnull(Max(LLIdx),0) LLIdx from Contract_Cloth_LL');
Open;
end;
LLIdx:=IntToStr(ADOQueryTemp.fieldbyname('LLIdx').AsInteger+1); }
if GetLSNo(ADOQueryCmd,maxno,'LL','Contract_Cloth_LL',4,1)=False then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('ȡȥ<C8A1><C8A5><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ',0);
Exit;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from Contract_Cloth_LL where 1<>1');
Open;
end;
with ADOQueryCmd do
begin
Append;
FieldByName('LLID').Value:=Trim(maxno);
FieldByName('DHID').Value:=Trim(Order_Main.fieldbyname('DHID').AsString);
FieldByName('SXDHID').Value:=Trim(Order_Main.fieldbyname('SXDHID').AsString);
FieldByName('SXMainID').Value:=Trim(Order_Main.fieldbyname('SXMainID').AsString);
FieldByName('FirstNo').Value:=Trim(Order_Main.fieldbyname('FirstName').AsString);
FieldByName('FirstName').Value:=Trim(Order_Main.fieldbyname('FirstName').AsString);
FieldByName('OrdSubId').Value:=Trim(ClientDataSet3.fieldbyname('OrdSubId').AsString);
FieldByName('TPUnit').Value:=Trim(ClientDataSet3.fieldbyname('TPUnit').AsString);
FieldByName('LLIdx').Value:=1;
Post;
end;
end else
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update Contract_Cloth_LL Set TPUnit='''+Trim(ClientDataSet3.fieldbyname('TPUnit').AsString)+'''');
sql.Add(' where LLID='''+Trim(ADOQueryTemp.fieldbyname('LLID').AsString)+'''');
ExecSQL;
end;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate Contract_Cloth_LL Set TPPS=(select sum(TPPS) from Contract_Cloth_LLMX A where A.DHID=Contract_Cloth_LL.DHID');
SQL.Add(' and A.OrdSubId=Contract_Cloth_LL.OrdSubId)');
if Trim(ClientDataSet3.FieldByName('TPUnit').AsString)=Trim(Order_Main.FieldByName('DHUnit').AsString) then
begin
sql.Add(',TPQty=(select Sum(TPQty) from Contract_Cloth_LLMx A where A.DHID=Contract_Cloth_LL.DHID');
SQL.Add(' and A.OrdSubId=Contract_Cloth_LL.OrdSubId)');
end else
begin
if Trim(ClientDataSet3.FieldByName('TPUnit').AsString)='M' then
begin
SQL.Add(',TPQty=(select sum(TPQty*(PBMF/100)*(PBKZ/1000)) from Contract_Cloth_LLMx A ');
sql.Add(' where A.DHID=Contract_Cloth_LL.DHID');
SQL.Add(' and A.OrdSubId=Contract_Cloth_LL.OrdSubId)');
end;
end;
if Trim(ClientDataSet3.FieldByName('TPUnit').AsString)=Trim(Order_Main.FieldByName('DHUnit').AsString) then
begin
sql.Add(',BCPQty=(select Sum(Qty2) from Contract_Cloth_LLMx A where A.DHID=Contract_Cloth_LL.DHID');
SQL.Add(' and A.OrdSubId=Contract_Cloth_LL.OrdSubId)');
end else
begin
if Trim(ClientDataSet3.FieldByName('TPUnit').AsString)='M' then
begin
SQL.Add(',BCPQty=(select sum(A.Qty2*(PBMF/100)*(PBKZ/1000)) from Contract_Cloth_LLMx A ');
sql.Add(' where A.DHID=Contract_Cloth_LL.DHID');
SQL.Add(' and A.OrdSubId=Contract_Cloth_LL.OrdSubId)');
end;
end;
sql.Add(', TPMQty=(select sum(TPMQty) from Contract_Cloth_LLMX A where A.DHID=Contract_Cloth_LL.DHID');
SQL.Add(' and A.OrdSubId=Contract_Cloth_LL.OrdSubId)');
sql.Add(', BCPMQty=(select sum(MQty2) from Contract_Cloth_LLMX A where A.DHID=Contract_Cloth_LL.DHID');
SQL.Add(' and A.OrdSubId=Contract_Cloth_LL.OrdSubId)');
sql.Add('where DHID='''+Trim(Order_Main.fieldbyname('DHID').AsString)+'''');
SQL.Add(' and OrdSubId='''+Trim(ClientDataSet3.fieldbyname('OrdSubid').AsString)+'''');
ExecSQL;
end;
Next;
end;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete Contract_Cloth_LL where not exists(');
sql.Add(' select * from Contract_Cloth_LLMX LM where LM.DHID=Contract_Cloth_LL.DHID ');
sql.Add(' and LM.OrdSubId=Contract_Cloth_LL.OrdSubId )');
sql.Add(' and DHID='''+Trim(Order_Main.fieldbyname('DHID').AsString)+'''');
sql.Add(' and isnull(DHIDHelp,'''')='''' ');
ExecSQL;
end;
{ if YFData()=False then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD>¸׷<C2B8><D7B7>쳣!','<27><>ʾ',0);
Exit;
end; }
ADOQueryCmd.Connection.CommitTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>','<27><>ʾ',0);
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3>','<27><>ʾ',0);
end;
end;
function TfrmClothContractListLL.YFData():Boolean;
var
CRID,OrdMainId,YFID,FComTaiTou:String;
begin
Result:=False;
{ with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from JYOrder_Main where OrderNo='''+Trim(Order_Main.fieldbyname('ConNo').AsString)+'''');
Open;
end;
if ADOQueryTemp.IsEmpty then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD>δ¼<CEB4><C2BC>!','<27><>ʾ',0);
Exit;
end else
begin
if ADOQueryTemp.RecordCount>1 then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>ظ<EFBFBD>!','<27><>ʾ',0);
Exit;
end;
end; }
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from JYOrder_Main where OrderNo='''+Trim(Order_Main.fieldbyname('ConNo').AsString)+'''');
Open;
end;
OrdMainId:=Trim(ADOQueryTemp.fieldbyname('MainId').AsString);
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select OrdDefStr2 from JYOrder_Main where Mainid='''+Trim(OrdMainId)+'''');
Open;
end;
FComTaiTou:=Trim(ADOQueryTemp.fieldbyname('OrdDefStr2').AsString);
with ADOQueryTemp do
begin
Close;
SQL.Clear;
sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(Order_Main.fieldbyname('FirstName').AsString)+'''');
Open;
end;
if ADOQueryTemp.IsEmpty=False then
begin
CRID:=ADOQueryTemp.fieldbyname('CRID').AsString;
end else
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update YF_Money_CRID set CRID=CRID+1');
sql.Add('select * from YF_Money_CRID ');
Open;
end;
CRID:=ADOQueryCmd.fieldbyname('CRID').AsString;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('select * from YF_Money_KC where 1<>1');
Open;
end;
with ADOQueryCmd do
begin
Append;
FieldByName('CRID').Value:=StrToInt(CRID);
FieldByName('FactoryName').Value:=Trim(Order_Main.fieldbyname('FirstName').AsString);
FieldByName('ZdyStr1').Value:=<><D3A6><EFBFBD><EFBFBD>';
Post;
end;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from YF_Money_CR where FactoryName='''+Trim(Order_Main.fieldbyname('FirstName').AsString)+'''');
sql.Add(' and YFTypeId='''+Trim(Order_Main.fieldbyname('DHid').AsString)+'''');
Open;
end;
if ADOQueryTemp.IsEmpty then
begin
if GetLSNo(ADOQueryCmd,YFID,'GF','YF_Money_CR',3,1)=False then
begin
Application.MessageBox(<>׷<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(Order_Main.fieldbyname('DHid').AsString);
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(Order_Main.fieldbyname('FirstName').AsString);
FieldByName('CRTime').Value:=ClientDataSet3.fieldbyname('TPDate').Value;
FieldByName('YFType').Value:='<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>';
//FieldByName('Price').Value:=Order_Main.fieldbyname('Price').Value;
FieldByName('HuiLv').Value:=1;
FieldByName('BZType').Value:='<27><>';
FieldByName('ComTaiTou').Value:='';
FieldByName('QtyUnit').Value:='<27><>';
FieldByName('YFName').Value:='<27>׷<EFBFBD>';
FieldByName('MainId').Value:=Trim(OrdMainId);
Post;
end;
end else
begin
YFID:=Trim(ADOQueryTemp.fieldbyname('YFID').AsString);
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update YF_Money_CR Set CRTime='''+Trim(ClientDataSet3.fieldbyname('TPDate').AsString)+'''');
sql.Add(' where YFID='''+Trim(ADOQueryTemp.fieldbyname('YFID').AsString)+'''');
ExecSQL;
end;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('update YF_Money_CR Set Qty=(select isnull(Count(*),0) from Contract_Cloth_LLMX A ');
SQL.Add(' where A.DHId=YF_Money_CR.YFTypeId and A.GangFee>0)');
sql.Add(',Money=(select isnull(sum(GangFee),0) from Contract_Cloth_LLMX A ');
SQL.Add(' where A.DHId=YF_Money_CR.YFTypeId and A.GangFee>0)');
sql.Add(',BBMoney=(select isnull(sum(GangFee),0) from Contract_Cloth_LLMX A ');
SQL.Add(' where A.DHId=YF_Money_CR.YFTypeId and A.GangFee>0)');
sql.Add(' where YFTypeId='''+Trim(Order_Main.fieldbyname('DHid').AsString)+'''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)');
sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)');
sql.Add(' where CRID='+CRID);
ExecSQL;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from YF_Money_CR where YFID='''+Trim(YFID)+'''');
Open;
end;
if ADOQueryTemp.IsEmpty=False then
begin
if ADOQueryTemp.FieldByName('Money').AsFloat=0 then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete YF_Money_CR where YFID='''+Trim(YFID)+'''');
ExecSQL;
end;
end;
end;
Result:=True;
end;
procedure TfrmClothContractListLL.ToolButton3Click(Sender: TObject);
begin
begin
if ClientDataSet3.IsEmpty then Exit;
if Trim(ClientDataSet3.fieldbyname('MXId').AsString)<>'' then
begin
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
SQL.Add(' select * from Contract_Cloth_LL where DHID='''+Trim(ClientDataSet3.fieldbyname('DHID').AsString)+'''');
sql.Add(' and OrdSubId='''+Trim(ClientDataSet3.fieldbyname('OrdSubId').AsString)+'''');
Open;
end;
if ADOQueryTemp.FieldByName('HCQty').AsFloat>0 then
begin
Application.MessageBox('<27><><EFBFBD>лز<D0BB><D8B2><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE>!','<27><>ʾ',0);
Exit;
end;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete Contract_Cloth_LLMx where MXId='''+Trim(ClientDataSet3.fieldbyname('MXId').AsString)+'''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update Contract_Cloth_DH Set TPQtyHZ=(select isnull(Sum(TPYZQty),0) from Contract_Cloth_LLMx A where A.DHID=Contract_Cloth_DH.DHID)');
sql.Add(',TPMQtyHZ=(select isnull(Sum(TPMQty),0) from Contract_Cloth_LLMx A where A.DHID=Contract_Cloth_DH.DHID)');
sql.Add(',TPPSHZ=(select isnull(Sum(TPPS),0) from Contract_Cloth_LLMx A where A.DHID=Contract_Cloth_DH.DHID)');
sql.Add(' where DHID='''+Trim(Order_Main.fieldbyname('DHID').AsString)+'''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('UPdate Contract_Cloth_LL Set TPPS=(select isnull(sum(TPPS),0) from Contract_Cloth_LLMX A where A.DHID=Contract_Cloth_LL.DHID');
SQL.Add(' and A.OrdSubId=Contract_Cloth_LL.OrdSubId)');
sql.Add(', TPQty=(select isnull(sum(TPYZQty),0) from Contract_Cloth_LLMX A where A.DHID=Contract_Cloth_LL.DHID');
SQL.Add(' and A.OrdSubId=Contract_Cloth_LL.OrdSubId)');
sql.Add(', BCPQty=(select isnull(sum(YZQty2),0) from Contract_Cloth_LLMX A where A.DHID=Contract_Cloth_LL.DHID');
SQL.Add(' and A.OrdSubId=Contract_Cloth_LL.OrdSubId)');
sql.Add(', TPMQty=(select isnull(sum(TPMQty),0) from Contract_Cloth_LLMX A where A.DHID=Contract_Cloth_LL.DHID');
SQL.Add(' and A.OrdSubId=Contract_Cloth_LL.OrdSubId)');
sql.Add(', BCPMQty=(select isnull(sum(MQty2),0) from Contract_Cloth_LLMX A where A.DHID=Contract_Cloth_LL.DHID');
SQL.Add(' and A.OrdSubId=Contract_Cloth_LL.OrdSubId)');
sql.Add('where DHID='''+Trim(Order_Main.fieldbyname('DHID').AsString)+'''');
SQL.Add(' and OrdSubId='''+Trim(ClientDataSet3.fieldbyname('OrdSubid').AsString)+'''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete Contract_Cloth_LL where not exists(');
sql.Add(' select * from Contract_Cloth_LLMX LM where LM.DHID=Contract_Cloth_LL.DHID ');
sql.Add(' and LM.OrdSubId=Contract_Cloth_LL.OrdSubId )');
sql.Add(' and DHID='''+Trim(Order_Main.fieldbyname('DHID').AsString)+'''');
sql.Add(' and isnull(DHIDHelp,'''')='''' ');
ExecSQL;
end;
if YFData()=False then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD>¸׷<C2B8><D7B7>쳣!','<27><>ʾ',0);
Exit;
end;
ADOQueryCmd.Connection.CommitTrans;
ClientDataSet3.Delete;
except;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>쳣!','<27><>ʾ',0);
end;
{with Order_Main do
begin
Edit;
if ClientDataSet3.IsEmpty=False then
FieldByName('KCQty').Value:=Order_Main.fieldbyname('DHQty').Value-tv3.DataController.Summary.FooterSummaryValues[0]
else
FieldByName('KCQty').Value:=Order_Main.fieldbyname('DHQty').Value;
Post;
end; }
end;
end;
procedure TfrmClothContractListLL.v2Column3PropertiesButtonClick(
Sender: TObject; AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='RKPlace';
flagname:='<27><><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD>';
if ShowModal=1 then
begin
with ClientDataSet2 do
begin
Edit;
FieldByName('RKPlace').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString);
end;
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmClothContractListLL.v3Column2PropertiesEditValueChanged(
Sender: TObject);
var
mvalue,fieldname,qty1,qty2:String;
begin
If Trim(TcxTextEdit(Sender).EditingText)<>'' then
begin
mvalue:=TcxTextEdit(Sender).EditingText;
end else
begin
mvalue:='0';
end;
fieldname:=Tv3.Controller.FocusedColumn.DataBinding.FilterFieldName;
with ClientDataSet3 do
begin
Edit;
FieldByName(Trim(fieldname)).Value:=mvalue;
Post;
end;
{with Order_Main do
begin
Edit;
FieldByName('KCQty').Value:=Order_Main.fieldbyname('DHQty').Value-tv3.DataController.Summary.FooterSummaryValues[0];
Post;
end; }
if Trim(ClientDataSet3.fieldbyname('TPQty').AsString)<>'' then
begin
qty1:=ClientDataSet3.fieldbyname('TPQty').AsString;
end else
begin
qty1:='0';
end;
if Trim(ClientDataSet3.fieldbyname('Qty2').AsString)<>'' then
begin
Qty2:=ClientDataSet3.fieldbyname('Qty2').AsString;
end else
begin
Qty2:='0';
end;
if StrToFloat(qty1)*StrToFloat(qty2)=0 then Exit;
with ClientDataSet3 do
begin
Edit;
FieldByName('qty3').Value:=(StrToFloat(qty1)-StrToFloat(qty2))*1.00*100/StrToFloat(qty1);
Post;
end;
end;
procedure TfrmClothContractListLL.ConNoKeyPress(Sender: TObject;
var Key: Char);
begin
if Key=#13 then
begin
if Length(Trim(ConNo.Text))<3 then Exit;
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
sql.Clear;
//sql.Add('select ClothPS=A.DHPS-A.TPPSHZ,ClothQty=A.DHQty-A.TPQtyHZ, ');
// SQL.Add(' A.DHID,A.DHPS,A.TPPSHZ,A.TPQtyHZ,A.DHQty,A.DHUnit,A.FirstName,B.ConNo,C.C_CodeName,C.C_Spec,C.MFQty,C.KZQty,B.FactoryNoName ');
sql.Add('select ClothPS=A.DHPS-A.TPPSHZ,ClothQty=A.DHQty-A.TPQtyHZ, A.DHUnit,SXMainId='''',SXDHID='''',A.MainId,A.SubId');
SQL.Add(' ,A.DHID,A.DHPS,A.TPPSHZ,A.TPQtyHZ,A.DHQty,A.FirstName,B.ConNo,C.C_CodeName,C.C_Spec,C.MFQty,C.KZQty,B.FactoryNoName ');
sql.Add(' from Contract_Cloth_DH A inner join Contract_Main B on A.Mainid=B.Mainid');
sql.Add(' inner join Contract_Sub C on A.Subid=C.Subid');
SQL.Add(' where B.ConNo like '''+'%'+Trim(ConNo.Text)+'%'+'''');
sql.add(' and isnull(A.DHType,'''')=''''');
sql.Add(' union all');
// sql.Add(' select ClothPS=A.DHPS-A.TPPSHZ,ClothQty=A.DHQty-A.TPQtyHZ, ');
//SQL.Add(' A.DHID,A.DHPS,A.TPPSHZ,A.TPQtyHZ,A.DHQty,A.DHUnit,A.FirstName ');
//sql.Add(',ConNo=(select Top 1 ConNo from ContractSX_Main SM where SM.MainId=A.SXMainId)');
//sql.Add(',C_CodeName=A.PBName,C_Spec=A.PBSpec,MFQty=A.PBMF,KZQty=A.PBKZ');
//SQL.Add(',FactoryNoName=(select Top 1 FirstName from ContractSX_Cloth_DH SD where SD.DHID=A.SXDHID)');
sql.Add(' select ClothPS=A.DHPS-A.TPPSHZ,ClothQty=A.DHQty-A.TPQtyHZ,A.DHUnit,A.SXMainId,A.SXDHID,A.MainId,A.SubId ');
SQL.Add(' ,A.DHID,A.DHPS,A.TPPSHZ,A.TPQtyHZ,A.DHQty,A.FirstName ');
sql.Add(',ConNo=(select Top 1 ConNo from ContractSX_Main SM where SM.MainId=A.SXMainId)');
sql.Add(',C_CodeName=A.PBName,C_Spec=A.PBSpec,MFQty=A.PBMF,KZQty=A.PBKZ');
SQL.Add(',FactoryNoName=(select Top 1 FirstName from ContractSX_Cloth_DH SD where SD.DHID=A.SXDHID)');
sql.Add(' from Contract_Cloth_DH A ');
SQL.Add(' where exists(select * from ContractSX_Main B where B.MainId=A.SXMainId');
SQL.Add(' and B.ConNO like '''+'%'+Trim(ConNo.Text)+'%'+''')');
sql.Add(' and isnull(A.DHType,'''')<>'''' ');
Open;
end;
SCreateCDS20(ADOQueryMain,Order_Main);
SInitCDSData20(ADOQueryMain,Order_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
end;
procedure TfrmClothContractListLL.ToolButton1Click(Sender: TObject);
var
FColumn:String;
begin
if ClientDataSet3.IsEmpty then Exit;
ToolBar2.SetFocus;
FColumn:=Tv3.Controller.FocusedColumn.DataBinding.FilterFieldName;
if Trim(FColumn)='OrderNo' then Exit;
if Trim(FColumn)='PRTColor' then Exit;
if Application.MessageBox(<><C8B7>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><E6BBBB><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
OneKeyPost(Tv3,ClientDataSet3);
end;
procedure TfrmClothContractListLL.v3Column5PropertiesEditValueChanged(
Sender: TObject);
var
mvalue,fieldname,qty1,qty3:String;
begin
If Trim(TcxTextEdit(Sender).EditingText)<>'' then
begin
mvalue:=TcxTextEdit(Sender).EditingText;
end else
begin
mvalue:='0';
end;
fieldname:=Tv3.Controller.FocusedColumn.DataBinding.FilterFieldName;
with ClientDataSet3 do
begin
Edit;
FieldByName(Trim(fieldname)).Value:=mvalue;
Post;
end;
{with Order_Main do
begin
Edit;
FieldByName('KCQty').Value:=Order_Main.fieldbyname('DHQty').Value-tv3.DataController.Summary.FooterSummaryValues[0];
Post;
end; }
if Trim(ClientDataSet3.fieldbyname('TPQty').AsString)<>'' then
begin
qty1:=ClientDataSet3.fieldbyname('TPQty').AsString;
end else
begin
qty1:='0';
end;
if Trim(ClientDataSet3.fieldbyname('qty3').AsString)<>'' then
begin
qty3:=ClientDataSet3.fieldbyname('qty3').AsString;
end else
begin
qty3:='0';
end;
//if StrToFloat(qty1)*StrToFloat(qty2)=0 then Exit;
with ClientDataSet3 do
begin
Edit;
FieldByName('qty2').Value:=StrToFloat(qty1)*(1-StrToFloat(qty3)*1.00/100);
Post;
end;
end;
procedure TfrmClothContractListLL.Tv1FocusedRecordChanged(
Sender: TcxCustomGridTableView; APrevFocusedRecord,
AFocusedRecord: TcxCustomGridRecord;
ANewItemRecordFocusingChanged: Boolean);
begin
if Order_Main.IsEmpty then exit;
with ADOQueryTemp do
begin
Close;
sql.Clear;
SQL.Add('select A.*,C.MPRTSpec,B.PRTColor,C.MPRTCodeName,C.OrderNo,B.SOrddefstr1,B.PRTHX,B.PRTOrderQty,B.OrderUnit, ');
SQL.Add(' Case when B.OrderUnit=''M'' then Cast(dbo.F_Get_Order_MFKZ(A.MainId,''MF'') ');
sql.Add(' *1.00/100*B.PRTOrderQty*dbo.F_Get_Order_MFKZ(A.MainId,''KZ'')/1000 as decimal(18,0))');
SQL.Add(' when B.OrderUnit=''Y'' then Cast(dbo.F_Get_Order_MFKZ(A.MainId,''MF'')');
sql.Add(' *1.00/100*B.PRTOrderQty*0.9144*dbo.F_Get_Order_MFKZ(A.MainId,''KZ'')/1000 As decimal(18,0)) ');
sql.Add(' when B.OrderUnit=''Kg'' then B.PRTOrderQty else Null end as PRTOrderKgQty');
SQL.Add('from Contract_Cloth_LLMx A inner join JYOrder_Sub B on A.OrdSubId=B.SubId');
SQL.Add(' inner join JYOrder_Main C on C.MainId=B.MainId ');
sql.Add('where A.DHId='''+Trim(Order_Main.fieldbyname('DHId').AsString)+'''');
Open;
end;
SCreateCDS20(ADOQueryTemp,ClientDataSet3);
SInitCDSData20(ADOQueryTemp,ClientDataSet3);
end;
end.