D10myYicheng/坯布码单待检(PBMDDJ.dll)/U_ShaOutPut.pas

780 lines
27 KiB
ObjectPascal
Raw Normal View History

2025-05-27 14:08:09 +08:00
unit U_ShaOutPut;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
cxDataStorage, cxEdit, DB, cxDBData, cxCalendar, cxDropDownEdit,
ComCtrls, ToolWin, cxGridLevel, cxGridCustomTableView, cxGridTableView,
cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid,
cxGridCustomPopupMenu, cxGridPopupMenu, ADODB, DBClient, cxButtonEdit,
cxTextEdit, cxSpinEdit;
type
TfrmShaOutPut = class(TForm)
ToolBar1: TToolBar;
TBAdd: TToolButton;
TBDel: TToolButton;
TBSave: TToolButton;
TBClose: TToolButton;
DataSource3: TDataSource;
CDS_Sub: TClientDataSet;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
cxGridPopupMenu2: TcxGridPopupMenu;
cxGrid2: TcxGrid;
Tv1: TcxGridDBTableView;
v1Column6: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v1CRType: TcxGridDBColumn;
v1Column15: TcxGridDBColumn;
v1Column13: TcxGridDBColumn;
v1Column14: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v1Column8: TcxGridDBColumn;
v1Column7: TcxGridDBColumn;
v1Column11: TcxGridDBColumn;
v1Column9: TcxGridDBColumn;
v2Column6: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
v1Column16: TcxGridDBColumn;
v1Column12: TcxGridDBColumn;
cxGrid2Level1: TcxGridLevel;
v1Column5: TcxGridDBColumn;
v1Column17: TcxGridDBColumn;
v1Column18: TcxGridDBColumn;
v1Column19: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
v1Column10: TcxGridDBColumn;
v1Column22: TcxGridDBColumn;
v1Column23: TcxGridDBColumn;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBAddClick(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure TBSaveClick(Sender: TObject);
procedure v1Column1PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v1Column11PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v1Column5PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure v1Column21PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure v1Column22PropertiesEditValueChanged(Sender: TObject);
private
{ Private declarations }
function SaveCKData():Boolean;
function YSData():Boolean;
public
{ Public declarations }
FBCId,canshu1:String;
end;
var
frmShaOutPut: TfrmShaOutPut;
implementation
uses
U_DataLink,U_RTFun,U_ClothContractListHZCX,U_ZDYHelp,U_ShaKCSelList,
U_GYSSelList, U_ZdyAttachGYS, U_ProductOrderListSel,U_ZdyAttachment;
{$R *.dfm}
function TfrmShaOutPut.YSData():Boolean;
var
CRID,YFID,Price,PriceUnit,OrderUnit,FComTaiTou,cust:String;
begin
Result:=False;
with ADOQueryTemp do
begin
Close;
SQL.Clear;
sql.Add('select * from YF_Money_KC where FactoryName='''+Trim(CDS_Sub.fieldbyname('ToFactoryName').AsString)+''' ');
Open;
end;
if not ADOQueryTemp.IsEmpty then
begin
CRID:=ADOQueryTemp.fieldbyname('CRID').AsString;
end
else
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update CW_MONEY_CRID set CRID=CRID+1');
sql.Add('select * from CW_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(CDS_Sub.fieldbyname('ToFactoryName').AsString);
FieldByName('ZdyStr1').Value:=<><D3A6><EFBFBD><EFBFBD>';
Post;
end;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from CW_MONEY_CR ');
sql.Add(' where mainID='''+Trim(CDS_Sub.fieldbyname('SPID').AsString)+'''');
// sql.Add(' and subID='''+Trim(CDS_Main.fieldbyname('CRID').AsString)+'''');
sql.Add(' and YFName=''<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' ');
Open;
end;
if ADOQueryTemp.IsEmpty then
begin
if GetLSNo(ADOQueryCmd,YFID,'CS','CW_MONEY_CR',3,1)=False then
begin
Application.MessageBox('ȡӦ<C8A1><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
Exit;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from CW_MONEY_CR where 1<>1');
Open;
end;
with ADOQueryCmd do
begin
Append;
FieldByName('YFID').Value:=Trim(YFID);
FieldByName('FromDataID1').Value:=Trim(CDS_Sub.fieldbyname('SPID').AsString);
FieldByName('CRID').Value:=StrToInt(CRID);
FieldByName('Filler').Value:=Trim(DName);
FieldByName('CRType').Value:=<>տ<EFBFBD><D5BF>Ǽ<EFBFBD>';
FieldByName('CRFlag').Value:=<><D3A6><EFBFBD><EFBFBD>';
FieldByName('QtyFlag').Value:=1;
FieldByName('FactoryName').Value:=Trim(CDS_Sub.fieldbyname('ToFactoryName').AsString);
FieldByName('CRTime').Value:=Trim(FormatDateTime('yyyy-MM-dd',CDS_Sub.fieldbyname('CRTime').AsDateTime));
FieldByName('YFType').Value:='<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>';
FieldByName('Qty').Value:=CDS_Sub.fieldbyname('STQty').AsFloat;
FieldByName('QtyUnit').Value:=Trim(CDS_Sub.fieldbyname('STQtyUnit').AsString);
FieldByName('ps').Value:=CDS_Sub.fieldbyname('PiQty').AsFloat;
// FieldByName('Qty').Value:=CDS_Sub.fieldbyname('Qty').AsFloat;
FieldByName('Price').Value:=CDS_Sub.fieldbyname('Price').AsFloat;
FieldByName('Money').Value:=CDS_Sub.fieldbyname('Money').AsFloat;
FieldByName('BBMoney').Value:=0;
FieldByName('HuiLv').Value:=1;
FieldByName('BZType').Value:='RMB';
// FieldByName('QtyUnit').Value:=Trim(CDS_Sub.fieldbyname('QtyUnit').AsString);
FieldByName('ComTaiTou').Value:=Trim(CDS_Sub.fieldbyname('ToFactoryName').AsString);
FieldByName('YFName').Value:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
FieldByName('MainId').Value:=Trim(CDS_Sub.fieldbyname('SPID').AsString);
FieldByName('subID').Value:='';
FieldByName('P_CodeName').Value:=Trim(CDS_Sub.fieldbyname('SPName').AsString);
FieldByName('P_Spec').Value:=Trim(CDS_Sub.fieldbyname('SPSpec').AsString);
FieldByName('P_Color').Value:=Trim(CDS_Sub.fieldbyname('PRTColor').AsString);
FieldByName('status').Value:='0';
Post;
end;
end else
begin
YFID:=Trim(ADOQueryTemp.fieldbyname('YFID').AsString);
end;
Result:=True;
end;
procedure TfrmShaOutPut.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmShaOutPut.TBAddClick(Sender: TObject);
begin
try
frmShaKCSelList:=TfrmShaKCSelList.Create(Application);
with frmShaKCSelList do
begin
ToolButton1.Visible:=True;
if ShowModal=1 then
begin
frmShaKCSelList.CDS_Main.DisableControls;
with frmShaKCSelList.CDS_Main do
begin
First;
while frmShaKCSelList.CDS_Main.Locate('SSel',True,[]) do
begin
with Self.CDS_Sub do
begin
Append;
FieldByName('CRTime').Value:=Trim(FormatDateTime('yyyy-MM-dd',Now));
FieldByName('ORDMainIdRK').Value:=Trim(frmShaKCSelList.CDS_Main.fieldbyname('ORDMainIdRK').AsString);
FieldByName('ORDSubIdRK').Value:=Trim(frmShaKCSelList.CDS_Main.fieldbyname('ORDSubIdRK').AsString);
FieldByName('QCOrderNo').Value:=frmShaKCSelList.CDS_Main.fieldbyname('OrderNo').Value;
FieldByName('FactoryName').Value:=frmShaKCSelList.CDS_Main.fieldbyname('FactoryName').Value;
FieldByName('FactoryNo').Value:=frmShaKCSelList.CDS_Main.fieldbyname('FactoryNo').Value;
FieldByName('SSType').Value:=frmShaKCSelList.CDS_Main.fieldbyname('SSType').Value;
FieldByName('SPName').Value:=frmShaKCSelList.CDS_Main.fieldbyname('SPName').Value;
FieldByName('SPCode').Value:=frmShaKCSelList.CDS_Main.fieldbyname('SPCode').Value;
FieldByName('CPID').Value:=frmShaKCSelList.CDS_Main.fieldbyname('CPID').Value;
FieldByName('SPSpec').Value:=frmShaKCSelList.CDS_Main.fieldbyname('SPSpec').Value;
FieldByName('SPCF').Value:=frmShaKCSelList.CDS_Main.fieldbyname('SPCF').Value;
FieldByName('SPMF').Value:=frmShaKCSelList.CDS_Main.fieldbyname('SPMF').Value;
FieldByName('SPKZ').Value:=frmShaKCSelList.CDS_Main.fieldbyname('SPKZ').Value;
FieldByName('SPColor').Value:=frmShaKCSelList.CDS_Main.fieldbyname('SPColor').Value;
FieldByName('FromFactoryName').Value:=frmShaKCSelList.CDS_Main.fieldbyname('ToFactoryName').Value;
FieldByName('FromFactoryNo').Value:=frmShaKCSelList.CDS_Main.fieldbyname('ToFactoryNo').Value;
FieldByName('QtyUnit').Value:=frmShaKCSelList.CDS_Main.fieldbyname('QtyUnit').Value;
FieldByName('PiQty').Value:=frmShaKCSelList.CDS_Main.fieldbyname('MXKCPiQty').Value;
FieldByName('Qty').Value:=frmShaKCSelList.CDS_Main.fieldbyname('MXKCQty').Value;
FieldByName('FZSPID').Value:=frmShaKCSelList.CDS_Main.fieldbyname('SPID').Value;
FieldByName('CGConNo').Value:=frmShaKCSelList.CDS_Main.fieldbyname('CGConNo').Value;
FieldByName('CGMainID').Value:=frmShaKCSelList.CDS_Main.fieldbyname('CGMainID').Value;
FieldByName('CGSubID').Value:=frmShaKCSelList.CDS_Main.fieldbyname('CGSubID').Value;
FieldByName('BatchNo').Value:=frmShaKCSelList.CDS_Main.fieldbyname('BatchNo').Value;
end;
frmShaKCSelList.CDS_Main.Delete;
end;
end;
frmShaKCSelList.CDS_Main.EnableControls;
end;
end;
finally
frmShaKCSelList.Free;
end;
end;
function TfrmShaOutPut.SaveCKData():Boolean;
var
FCRID,Maxno,FSPID,MaxPYNo,FPYID:string;
begin
try
ADOQueryCmd.Connection.BeginTrans;
CDS_Sub.DisableControls;
with CDS_Sub do
begin
First;
while not eof do
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from CK_SXPB_CR where SPID='''+Trim(CDS_Sub.fieldbyname('SPID').AsString)+'''');
Open;
end;
FSPID:=Trim(ADOQueryTemp.fieldbyname('SPID').AsString);
if Trim(FSPID)='' then
begin
if GetLSNo(ADOQueryCmd,Maxno,'SC','CK_SXPB_CR',3,1)=False then
begin
Result:=False;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('ȡɴ<C8A1>߳<EFBFBD><DFB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
Exit;
end;
end else
begin
Maxno:=Trim(FSPID);
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from CK_SXPB_CR where SPID='''+Trim(Maxno)+'''');
Open;
end;
with ADOQueryCmd do
begin
if Trim(FSPID)='' then
begin
Append;
end else
begin
Edit;
end;
FieldByName('SPID').Value:=Trim(Maxno);
FieldByName('ORDMainIdRK').Value:=Trim(CDS_Sub.fieldbyname('ORDMainIdRK').AsString);
FieldByName('ORDSubIdRK').Value:=Trim(CDS_Sub.fieldbyname('ORDSubIdRK').AsString);
FieldByName('ORDMainIdCK').Value:=Trim(CDS_Sub.fieldbyname('ORDMainIdCK').AsString);
FieldByName('ORDSubIdCK').Value:=Trim(CDS_Sub.fieldbyname('ORDSubIdCK').AsString);
FieldByName('CGMainID').Value:=Trim(CDS_Sub.fieldbyname('CGMainID').AsString);
FieldByName('CGsubID').Value:=Trim(CDS_Sub.fieldbyname('CGsubID').AsString);
FieldByName('FZSPID').Value:=Trim(CDS_Sub.fieldbyname('FZSPID').AsString);
FieldByName('FactoryNo').Value:=Trim(CDS_Sub.fieldbyname('FactoryNo').AsString);
FieldByName('FromFactoryNo').Value:=Trim(CDS_Sub.fieldbyname('FromFactoryNo').AsString);
FieldByName('ToFactoryNo').Value:=Trim(CDS_Sub.fieldbyname('ToFactoryNo').AsString);
FieldByName('CPID').Value:=Trim(CDS_Sub.fieldbyname('CPID').AsString);
//FieldByName('CRID').Value:=CDS_Sub.fieldbyname('CRID').Value;
FieldByName('CRFlag').Value:='<27><><EFBFBD><EFBFBD>';
FieldByName('CRQtyFlag').Value:=-1;
RTSetSaveDataCDS(ADOQueryCmd,Tv1,CDS_Sub,'CK_SXPB_CR',2);
FieldByName('CKName').Value:=<><C9B4>';
if Trim(CDS_Sub.fieldbyname('CRType').AsString)='ƽ<>Ƴ<EFBFBD><C6B3><EFBFBD>' then
begin
FieldByName('PYID').Value:=Trim(Maxno);
end;
if Trim(FSPID)='' then
FieldByName('Filler').Value:=Trim(DName)
else
begin
FieldByName('Editer').Value:=Trim(DName);
FieldByName('EditTime').Value:=SGetServerDate(ADOQueryTemp);
end;
Post;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update CK_SXPB_CR Set MXKCQty=(select sum(isnull(Qty,0)*CRQtyFlag) from CK_SXPB_CR A where A.FZSPID=CK_SXPB_CR.SPID)');
sql.Add(',MXKCPiQty=(select sum(isnull(PiQty,0)*CRQtyFlag) from CK_SXPB_CR A where A.FZSPID=CK_SXPB_CR.SPID)');
sql.Add(' where SPID='''+Trim(CDS_Sub.fieldbyname('FZSPID').AsString)+'''');
ExecSQL;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from CK_SXPB_CR where SPID='''+Trim(CDS_Sub.fieldbyname('FZSPID').AsString)+'''');
Open;
end;
if ADOQueryTemp.FieldByName('MXKCQty').Value<0 then
begin
CDS_Sub.DisableControls;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڿ<EFBFBD><DABF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܱ<EFBFBD><DCB1><EFBFBD>!','<27><>ʾ',0);
Exit;
end;
if Trim(CDS_Sub.fieldbyname('CRType').AsString)='ƽ<>Ƴ<EFBFBD><C6B3><EFBFBD>' then
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from CK_SXPB_CR where PYID='''+Trim(Maxno)+'''');
sql.Add(' and isnull(CRType,'''')=''ƽ<><C6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' ');
Open;
end;
FPYID:=Trim(ADOQueryTemp.fieldbyname('SPID').AsString);
if Trim(FPYID)='' then
begin
if GetLSNo(ADOQueryCmd,MaxPYNo,'YR','CK_SXPB_CR',3,1)=False then
begin
Result:=False;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('ȡɴ<C8A1><C9B4>ƽ<EFBFBD><C6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
Exit;
end;
end else
begin
MaxPYNo:=Trim(FPYID);
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from CK_SXPB_CR where SPID='''+Trim(MaxPYNo)+'''');
Open;
end;
with ADOQueryCmd do
begin
if Trim(FPYID)='' then
begin
Append;
end else
begin
Edit;
end;
FieldByName('SPID').Value:=Trim(MaxPYNo);
FieldByName('ORDMainIdRK').Value:=Trim(CDS_Sub.fieldbyname('ORDMainIdCK').AsString);
FieldByName('ORDSubIdRK').Value:=Trim(CDS_Sub.fieldbyname('ORDSubIdCK').AsString);
{FieldByName('ORDMainIdCK').Value:=Trim(CDS_Sub.fieldbyname('ORDMainIdCK').AsString);
FieldByName('ORDSubIdCK').Value:=Trim(CDS_Sub.fieldbyname('ORDSubIdCK').AsString);}
FieldByName('FZSPID').Value:=Trim(MaxPYNo);
FieldByName('FactoryNo').Value:=Trim(CDS_Sub.fieldbyname('FactoryNo').AsString);
FieldByName('FromFactoryNo').Value:=Trim(CDS_Sub.fieldbyname('FromFactoryNo').AsString);
FieldByName('ToFactoryNo').Value:=Trim(CDS_Sub.fieldbyname('ToFactoryNo').AsString);
//FieldByName('CRID').Value:=CDS_Sub.fieldbyname('CRID').Value;
FieldByName('CRFlag').Value:='<27><><EFBFBD><EFBFBD>';
FieldByName('CRQtyFlag').Value:=1;
RTSetSaveDataCDS(ADOQueryCmd,Tv1,CDS_Sub,'CK_SXPB_CR',2);
FieldByName('CKName').Value:=<><C9B4>';
FieldByName('CRType').Value:='ƽ<><C6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
FieldByName('PYID').Value:=Trim(Maxno);
if Trim(FPYID)='' then
FieldByName('Filler').Value:=Trim(DName)
else
begin
FieldByName('Editer').Value:=Trim(DName);
FieldByName('EditTime').Value:=SGetServerDate(ADOQueryTemp);
end;
Post;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update CK_SXPB_CR Set MXKCQty=(select sum(isnull(Qty,0)*CRQtyFlag) from CK_SXPB_CR A where A.FZSPID=CK_SXPB_CR.SPID)');
sql.Add(',MXKCPiQty=(select sum(isnull(PiQty,0)*CRQtyFlag) from CK_SXPB_CR A where A.FZSPID=CK_SXPB_CR.SPID)');
sql.Add(' where SPID='''+Trim(MaxPYNo)+'''');
ExecSQL;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from CK_SXPB_CR where SPID='''+Trim(MaxPYNo)+'''');
Open;
end;
if ADOQueryTemp.FieldByName('MXKCQty').Value<0 then
begin
CDS_Sub.DisableControls;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڿ<EFBFBD><DABF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܱ<EFBFBD><DCB1><EFBFBD>!','<27><>ʾ',0);
Exit;
end;
end;
Edit;
FieldByName('SPID').Value:=Trim(Maxno);
Post;
if Trim(CDS_Sub.fieldbyname('CRType').AsString)='<27><><EFBFBD>۳<EFBFBD><DBB3><EFBFBD>' then
begin
if not YSData() then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3>','<27><>ʾ',0);
Exit;
end;
end;
Next;
end;
end;
CDS_Sub.EnableControls;
ADOQueryCmd.Connection.CommitTrans;
Result:=True;
except
Result:=False;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>쳣!','<27><>ʾ',0);
end;
end;
procedure TfrmShaOutPut.TBCloseClick(Sender: TObject);
begin
WriteCxGrid(<>߳<EFBFBD><DFB3><EFBFBD><EFBFBD>Ǽ<EFBFBD>',Tv1,<>ֿ߲<DFB2>');
Close;
end;
procedure TfrmShaOutPut.FormShow(Sender: TObject);
begin
ReadCxGrid(<>߳<EFBFBD><DFB3><EFBFBD><EFBFBD>Ǽ<EFBFBD>',Tv1,<>ֿ߲<DFB2>');
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add(' select A.* ');
sql.Add(' ,OrderNo=(select OrderNo from JYOrder_Main JM where JM.MainId=A.OrdMainIdRK )');
sql.Add(' ,OrderNoCK=(select OrderNo from JYOrder_Main JM where JM.MainId=A.OrdMainIdCK )');
sql.Add(' ,SOrddefstr1=(select SOrddefstr1 from JYOrder_Sub JM where JM.SubId=A.OrdSubIdCK )');
sql.Add(' ,PRTColor=(select PRTColor from JYOrder_Sub JM where JM.SubId=A.OrdSubIdCK )');
sql.Add(' ,PRTHX=(select PRTHX from JYOrder_Sub JM where JM.SubId=A.OrdSubIdCK )');
sql.Add(',CGconNo=(select conNo from ContractSX_Main JM where JM.MainId=A.CGMainID)');
sql.Add(' from CK_SXPB_CR A');
sql.Add(' where SPID='''+Trim(FBCId)+'''');
Open;
end;
SCreateCDS(ADOQueryTemp,CDS_Sub);
SInitCDSData(ADOQueryTemp,CDS_Sub);
end;
procedure TfrmShaOutPut.TBDelClick(Sender: TObject);
begin
if CDS_Sub.IsEmpty then Exit;
if Trim(CDS_Sub.fieldbyname('SPID').AsString)<>'' then
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from CK_SXPB_CR where FZSPID=');
sql.Add('(select SPID from CK_SXPB_CR where PYID='''+Trim(CDS_Sub.fieldbyname('SPID').AsString)+'''');
sql.Add(' and isnull(CRType,'''')=''ƽ<><C6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'')');
sql.Add(' and CRQtyFlag=-1');
Open;
end;
if ADOQueryTemp.IsEmpty=False then
begin
Application.MessageBox('<27><><EFBFBD>г<EFBFBD><D0B3><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE>!','<27><>ʾ',0);
Exit;
end;
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add(' delete CK_SXPB_CR where SPID='''+Trim(CDS_Sub.fieldbyname('SPID').AsString)+'''');
sql.Add(' Update CK_SXPB_CR Set MXKCQty=(select sum(isnull(Qty,0)*CRQtyFlag) from CK_SXPB_CR A where A.FZSPID=CK_SXPB_CR.SPID)');
sql.Add(',MXKCPiQty=(select sum(isnull(PiQty,0)*CRQtyFlag) from CK_SXPB_CR A where A.FZSPID=CK_SXPB_CR.SPID)');
sql.Add(' where SPID='''+Trim(CDS_Sub.fieldbyname('FZSPID').AsString)+'''');
{sql.Add('Update CK_SXPB_KC Set KCKGQty=(select sum(KGQty*CRQtyFlag) from CK_SXPB_CR A where A.CRID=CK_SXPB_KC.CRID)');
sql.Add(',KCPiQty=(select sum(PiQty*CRQtyFlag) from CK_SXPB_CR A where A.CRID=CK_SXPB_KC.CRID)');
sql.Add(' where CRID='+Trim(CDS_Sub.fieldbyname('CRID').AsString));}
ExecSQL;
end;
ADOQueryCmd.Connection.CommitTrans;
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C9BE><EFBFBD>쳣!','<27><>ʾ',0);
end;
end;
CDS_Sub.Delete;
end;
procedure TfrmShaOutPut.TBSaveClick(Sender: TObject);
begin
if CDS_Sub.IsEmpty then Exit;
if CDS_Sub.Locate('CRTime',null,[])=True then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><E4B2BB>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
if CDS_Sub.Locate('CRType',null,[])=True then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD><CDB2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
if Trim(CDS_Sub.FieldByName('CRType').AsString)='<27><><EFBFBD>۳<EFBFBD><DBB3><EFBFBD>' then
begin
if CDS_Sub.Locate('STQty',null,[])=True then
begin
Application.MessageBox('<27><><EFBFBD>۳<EFBFBD><DBB3><EFBFBD><E2A3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
if CDS_Sub.Locate('STQtyUnit',null,[])=True then
begin
Application.MessageBox('<27><><EFBFBD>۳<EFBFBD><DBB3><EFBFBD><E2A3AC><EFBFBD>㵥λ<E3B5A5><CEBB><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
if CDS_Sub.Locate('Price',null,[])=True then
begin
Application.MessageBox('<27><><EFBFBD>۳<EFBFBD><DBB3><EFBFBD>۸<EFBFBD><DBB8><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
if CDS_Sub.Locate('Money',null,[])=True then
begin
Application.MessageBox('<27><><EFBFBD>۳<EFBFBD><DBB3><EFBFBD><E2A3AC><EFBFBD><EFBFBD><EEB2BB>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
end;
if CDS_Sub.Locate('ToFactoryName',null,[])=True then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ӹ<EFBFBD><D3B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
if CDS_Sub.Locate('Qty',null,[])=True then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
if CDS_Sub.Locate('PiQty',null,[])=True then
begin
Application.MessageBox('<27><>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end;
{ if CDS_Sub.Locate('CRType;CKOrderNo',VarArrayOf(['<27>ӹ<EFBFBD><D3B9><EFBFBD><EFBFBD><EFBFBD>',Null]),[loPartialKey])=True then
begin
Application.MessageBox('<27>ӹ<EFBFBD><D3B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD><CEAA>!','<27><>ʾ',0);
Exit;
end; }
if SaveCKData() then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>!','<27><>ʾ',0);
//ModalResult:=1;
Exit;
end;
end;
procedure TfrmShaOutPut.v1Column1PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
try
frmClothContractListHZCX:=TfrmClothContractListHZCX.Create(Application);
with frmClothContractListHZCX do
begin
if ShowModal=1 then
begin
with Self.CDS_Sub do
begin
Edit;
FieldByName('CGConNo').Value:=Trim(frmClothContractListHZCX.Order_Main.fieldbyname('ConNo').AsString);
FieldByName('CGConMainId').Value:=Trim(frmClothContractListHZCX.Order_Main.fieldbyname('MainId').AsString);
FieldByName('CGConSubId').Value:=Trim(frmClothContractListHZCX.Order_Main.fieldbyname('SubId').AsString);
FieldByName('FactoryName').Value:=Trim(frmClothContractListHZCX.Order_Main.fieldbyname('FactoryNoName').AsString);
FieldByName('SXName').Value:=Trim(frmClothContractListHZCX.Order_Main.fieldbyname('C_CodeName').AsString);
//Post;
end;
end;
end;
finally
frmClothContractListHZCX.Free;
end;
end;
procedure TfrmShaOutPut.v1Column11PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
if Trim(CDS_Sub.fieldbyname('CRType').AsString)='<27><><EFBFBD>۳<EFBFBD><DBB3><EFBFBD>' then
begin
try
frmZdyAttachment:=TfrmZdyAttachment.Create(Application);
with frmZdyAttachment do
begin
if ShowModal=1 then
begin
with Self.CDS_Sub do
begin
edit;
FieldByName('ToFactoryNo').Value:=Trim(frmZdyAttachment.CDS_HZ.fieldbyname('ZdyCode').AsString) ;
FieldByName('ToFactoryName').Value:=Trim(frmZdyAttachment.CDS_HZ.fieldbyname('ZdyName').AsString);
//Post;
end;
end;
end;
finally
frmZdyAttachment.Free;
end;
end else
begin
try
frmZdyAttachGYS:=TfrmZdyAttachGYS.Create(Application);
with frmZdyAttachGYS do
begin
if ShowModal=1 then
begin
with Self.CDS_Sub do
begin
edit;
FieldByName('ToFactoryNo').Value:=Trim(frmZdyAttachGYS.CDS_HZ.fieldbyname('ZdyCode').AsString) ;
FieldByName('ToFactoryName').Value:=Trim(frmZdyAttachGYS.CDS_HZ.fieldbyname('ZdyName').AsString);
//Post;
end;
end;
end;
finally
frmZdyAttachGYS.Free;
end;
end;
end;
procedure TfrmShaOutPut.v1Column5PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
try
frmProductOrderListSel:=TfrmProductOrderListSel.Create(Application);
with frmProductOrderListSel do
begin
if ShowModal=1 then
begin
with Self.CDS_Sub do
begin
Edit;
FieldByName('ORDMainIdCK').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('MainId').AsString);
FieldByName('ORDSubIdCK').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('SubId').AsString);
FieldByName('CKorderNo').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('OrderNo').AsString);
FieldByName('SOrddefstr1').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('SOrddefstr1').AsString);
FieldByName('PRTColor').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('PRTColor').AsString);
FieldByName('PRTHX').Value:=Trim(frmProductOrderListSel.Order_Main.fieldbyname('PRTHX').AsString);
end;
end;
end;
finally
frmProductOrderListSel.Free;
end;
end;
procedure TfrmShaOutPut.Tv1MouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var
FFSPID:String;
begin
if CDS_Sub.IsEmpty then Exit;
if Trim(CDS_Sub.fieldbyname('SPID').AsString)<>'' then
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from CK_SXPB_CR where SPID='''+Trim(CDS_Sub.fieldbyname('SPID').AsString)+'''');
Open;
end;
FFSPID:=Trim(ADOQueryTemp.fieldbyname('SPID').AsString);
if Trim(FFSPID)<>'' then
begin
v1CRType.Options.Editing:=False;
end;
end;
end;
procedure TfrmShaOutPut.v1Column21PropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='SXQtyUnit';
flagname:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ';
if ShowModal=1 then
begin
with Self.CDS_Sub do
begin
Edit;
FieldByName('STQtyUnit').Value:=Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZdyName').AsString);
end;
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmShaOutPut.v1Column22PropertiesEditValueChanged(
Sender: TObject);
var
mvalue,FFieldName:String;
begin
mvalue:=TcxTextEdit(Sender).EditingText;
FFieldName:=Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName);
with CDS_Sub do
begin
Edit;
FieldByName(FFieldName).Value:=Trim(mvalue);
FieldByName('Money').Value:=StrToFloatDef(Trim(CDS_Sub.fieldbyname('STQty').AsString),0)*StrToFloatDef(Trim(CDS_Sub.fieldbyname('Price').AsString),0);
Post;
end;
end;
end.