D7szChenfeng/坯布码单待检(PBMDDJ.dll)/U_DJBCKOutPut.pas

874 lines
33 KiB
ObjectPascal
Raw Permalink Normal View History

2025-07-22 15:51:47 +08:00
unit U_DJBCKOutPut;
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,
StdCtrls, ExtCtrls, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator;
type
TfrmDJBCKOutPut = 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;
ToolButton1: TToolButton;
Panel4: TPanel;
Label14: TLabel;
Panel10: TPanel;
Image2: TImage;
Button1: TButton;
GroupBox1: TGroupBox;
CheckBox1: TCheckBox;
CheckBox2: TCheckBox;
CheckBox3: TCheckBox;
CheckBox4: TCheckBox;
CheckBox5: TCheckBox;
Button2: TButton;
ToolButton2: TToolButton;
CheckBox6: TCheckBox;
CheckBox7: TCheckBox;
cxGrid2: TcxGrid;
Tv1: TcxGridDBTableView;
v1Column6: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v1Column21: TcxGridDBColumn;
v1Column13: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
v1Column22: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v1Column8: TcxGridDBColumn;
v1Column7: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
v1Column10: TcxGridDBColumn;
v1Column19: TcxGridDBColumn;
v1Column9: TcxGridDBColumn;
v2Column6: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
v1Column12: TcxGridDBColumn;
v1Column14: TcxGridDBColumn;
v1Column17: TcxGridDBColumn;
v1Column15: TcxGridDBColumn;
v1Column16: TcxGridDBColumn;
cxGrid2Level1: TcxGridLevel;
v1Column11: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
v1Column18: TcxGridDBColumn;
v1Column20: 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 Image2Click(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure v1Column4PropertiesEditValueChanged(Sender: TObject);
private
{ Private declarations }
function SaveCKData(): Boolean;
procedure CJEWM(MSpid: string);
public
{ Public declarations }
FBCId: string;
end;
var
frmDJBCKOutPut: TfrmDJBCKOutPut;
implementation
uses
U_DataLink, U_RTFun, U_ClothContractListHZCX, U_ZDYHelp, U_DJBCKKCSelList,
U_GYSSelList, U_ZdyAttachGYS, U_ProductOrderListSel, U_DDDJBCKKCSelList;
{$R *.dfm}
procedure TfrmDJBCKOutPut.CJEWM(MSpid: string);
var
Txt, fImagePath, maxNo: string;
Moudle: THandle;
Makebar: TMakebar;
Mixtext: TMixtext;
begin
try
Moudle := LoadLibrary('MakeQRBarcode.dll');
@Makebar := GetProcAddress(Moudle, 'Make');
@Mixtext := GetProcAddress(Moudle, 'MixText');
Txt := Trim(MSpid);
fImagePath := ExtractFilePath(Application.ExeName) + 'image\temp.bmp';
if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName) + 'image')) then
CreateDirectory(pchar(ExtractFilePath(Application.ExeName) + 'image'), nil);
if FileExists(fImagePath) then
DeleteFile(fImagePath);
Makebar(pchar(Txt), Length(Txt), 3, 3, 0, PChar(fImagePath), 3);
with ADOQueryCmd do
begin
Close;
SQL.Clear;
SQL.Add('select * from TP_File ');
sql.Add('where TFID=' + quotedstr(trim(Txt)));
sql.Add('and TFType=''EWM''');
open;
if isempty then
begin
append;
fieldbyname('TFID').Value := trim(Txt);
fieldbyname('WBID').Value := trim(MSpid);
fieldbyname('TFType').Value := 'EWM';
fieldbyname('FillTime').Value := SGetServerDateTime(ADOQueryTemp);
tblobfield(FieldByName('Filesother')).LoadFromFile(fImagePath);
post;
end;
end;
except
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', MB_ICONERROR);
exit;
end;
end;
procedure TfrmDJBCKOutPut.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TfrmDJBCKOutPut.TBAddClick(Sender: TObject);
begin
try
frmDJBCKKCSelList := TfrmDJBCKKCSelList.Create(Application);
with frmDJBCKKCSelList do
begin
ToolButton1.Visible := True;
if ShowModal = 1 then
begin
frmDJBCKKCSelList.CDS_Main.DisableControls;
with frmDJBCKKCSelList.CDS_Main do
begin
First;
while 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(frmDJBCKKCSelList.CDS_Main.fieldbyname('ORDMainIdRK').AsString);
FieldByName('ORDSubIdRK').Value := Trim(frmDJBCKKCSelList.CDS_Main.fieldbyname('ORDSubIdRK').AsString);
FieldByName('ORDMainIdCK').Value := Trim(frmDJBCKKCSelList.CDS_Main.fieldbyname('ORDMainIdRK').AsString);
FieldByName('ORDSubIdCK').Value := Trim(frmDJBCKKCSelList.CDS_Main.fieldbyname('ORDSubIdRK').AsString);
FieldByName('QCOrderNo').Value := frmDJBCKKCSelList.CDS_Main.fieldbyname('OrderNo').Value;
FieldByName('CKOrderNo').Value := frmDJBCKKCSelList.CDS_Main.fieldbyname('OrderNo').Value;
FieldByName('CustomerNoName').Value := frmDJBCKKCSelList.CDS_Main.fieldbyname('CustomerNoName').AsString;
FieldByName('spcode').Value := frmDJBCKKCSelList.CDS_Main.fieldbyname('spcode').AsString;
FieldByName('SPColor').Value := frmDJBCKKCSelList.CDS_Main.fieldbyname('SPColor').AsString;
FieldByName('SPHX').Value := frmDJBCKKCSelList.CDS_Main.fieldbyname('SPHX').AsString;
FieldByName('FactoryName').Value := frmDJBCKKCSelList.CDS_Main.fieldbyname('FactoryName').Value;
FieldByName('FactoryNo').Value := frmDJBCKKCSelList.CDS_Main.fieldbyname('FactoryNo').Value;
FieldByName('SSType').Value := frmDJBCKKCSelList.CDS_Main.fieldbyname('SSType').Value;
FieldByName('SPName').Value := frmDJBCKKCSelList.CDS_Main.fieldbyname('SPName').Value;
FieldByName('SPSpec').Value := frmDJBCKKCSelList.CDS_Main.fieldbyname('SPSpec').Value;
FieldByName('SPCF').Value := frmDJBCKKCSelList.CDS_Main.fieldbyname('SPCF').Value;
FieldByName('SPMF').Value := frmDJBCKKCSelList.CDS_Main.fieldbyname('SPMF').Value;
FieldByName('SPKZ').Value := frmDJBCKKCSelList.CDS_Main.fieldbyname('SPKZ').Value;
FieldByName('RCGangNo').Value := frmDJBCKKCSelList.CDS_Main.fieldbyname('RCGangNo').Value;
FieldByName('FromFactoryName').Value := frmDJBCKKCSelList.CDS_Main.fieldbyname('ToFactoryName').Value;
FieldByName('FromFactoryNo').Value := frmDJBCKKCSelList.CDS_Main.fieldbyname('ToFactoryNo').Value;
FieldByName('ToFactoryName').Value := frmDJBCKKCSelList.CDS_Main.fieldbyname('ToFactoryName').Value;
FieldByName('ToFactoryNo').Value := frmDJBCKKCSelList.CDS_Main.fieldbyname('ToFactoryNo').Value;
FieldByName('QtyUnit').Value := frmDJBCKKCSelList.CDS_Main.fieldbyname('QtyUnit').Value;
FieldByName('PiQty').Value := frmDJBCKKCSelList.CDS_Main.fieldbyname('MXKCPiQty').Value;
FieldByName('Qty').Value := frmDJBCKKCSelList.CDS_Main.fieldbyname('MXKCQty').Value;
FieldByName('FZSPID').Value := frmDJBCKKCSelList.CDS_Main.fieldbyname('SPID').Value;
FieldByName('Note').Value := frmDJBCKKCSelList.CDS_Main.fieldbyname('Note').Value;
FieldByName('PRICE').VALUE := frmDJBCKKCSelList.CDS_Main.fieldbyname('PRICE').value;
FieldByName('XIAOGANGFEI').VALUE := frmDJBCKKCSelList.CDS_Main.fieldbyname('XIAOGANGFEI').value;
FieldByName('SHANGJIFEI').VALUE := frmDJBCKKCSelList.CDS_Main.fieldbyname('SHANGJIFEI').value;
FieldByName('money').VALUE := frmDJBCKKCSelList.CDS_Main.fieldbyname('money').value;
end;
frmDJBCKKCSelList.CDS_Main.Delete;
end;
end;
frmDJBCKKCSelList.CDS_Main.EnableControls;
end;
end;
finally
frmDJBCKKCSelList.Free;
end;
end;
function TfrmDJBCKOutPut.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, 'DC', 'CK_SXPB_CR', 3, 1) = False then
begin
Result := False;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><ECB2BC><EFBFBD><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('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('CRTYPE').Value := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
//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 := '<27><><EFBFBD>첼';
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;
FieldByName('Xs').Value := CDS_Sub.fieldbyname('Xs').AsFloat;
FieldByName('PiQty').Value := CDS_Sub.fieldbyname('PiQty').AsFloat;
FieldByName('Qty').Value := CDS_Sub.fieldbyname('Qty').AsFloat;
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;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('EXEC P_Do_CWSC2 '<><D3A6>'',' + quotedstr(Trim(Maxno)));
ExecSQL;
end;
CJEWM(Maxno);
if Trim(CDS_Sub.fieldbyname('CRType').AsString) = '<27>ӹ<EFBFBD><D3B9><EFBFBD><EFBFBD><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><EFBFBD>ӹ<EFBFBD>ƽ<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;
RTSetSaveDataCDS(ADOQueryCmd, Tv1, CDS_Sub, 'CK_SXPB_CR', 2);
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('ToFactoryNo').AsString);
FieldByName('FromFactoryNo').Value := Trim(CDS_Sub.fieldbyname('FromFactoryNo').AsString);
FieldByName('ToFactoryNo').Value := Trim(CDS_Sub.fieldbyname('ToFactoryNo').AsString);
FieldByName('CRFlag').Value := '<27><><EFBFBD><EFBFBD>';
FieldByName('CRQtyFlag').Value := 1;
FieldByName('xs').Value := 0;
FieldByName('CKName').Value := '<27><><EFBFBD>ӹ<EFBFBD>';
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;
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 TfrmDJBCKOutPut.TBCloseClick(Sender: TObject);
begin
WriteCxGrid('<27><><EFBFBD><EFBFBD><ECB2BC><EFBFBD><EFBFBD><EFBFBD>Ǽ<EFBFBD>PMD', Tv1, '<27><><EFBFBD><EFBFBD><ECB2BC><EFBFBD>ֿ<EFBFBD>');
Close;
end;
procedure TfrmDJBCKOutPut.FormShow(Sender: TObject);
begin
ReadCxGrid('<27><><EFBFBD><EFBFBD><ECB2BC><EFBFBD><EFBFBD><EFBFBD>Ǽ<EFBFBD>PMD', Tv1, '<27><><EFBFBD><EFBFBD>ֿ<EFBFBD>');
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(' from CK_SXPB_CR A');
sql.Add(' where SPID=''' + Trim(FBCId) + '''');
Open;
end;
SCreateCDS20(ADOQueryTemp, CDS_Sub);
SInitCDSData20(ADOQueryTemp, CDS_Sub);
end;
procedure TfrmDJBCKOutPut.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;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select A.YFID from YF_Money_CR_Sub A INNER JOIN YF_Money_CR B ON A.YFID=B.YFID where yfpzno=' + QuotedStr(Trim(CDS_Sub.fieldbyname('SPID').AsString)));
sql.Add('and B.status=1');
Open;
end;
if ADOQueryTemp.IsEmpty = FALSE then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˣ<EFBFBD><CBA3><EFBFBD><EFBFBD>ȳ<EFBFBD><C8B3><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;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add(' delete YF_Money_CR where YFID=(SELECT YFID FROM YF_Money_CR_SUB D WHERE D.YFPZNO=' + QuotedStr(Trim(CDS_Sub.fieldbyname('SPID').AsString)));
SQL.Add(')');
sql.Add(' delete YF_Money_CR_SUB where YFPZNO=''' + Trim(CDS_Sub.fieldbyname('SPID').AsString) + '''');
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 TfrmDJBCKOutPut.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 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('CKOrderNo', null, []) = True then
// begin
// Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ų<EFBFBD><C5B2><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(<><C6A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>!', '<27><>ʾ', 0);
Exit;
end;
CDS_Sub.DisableControls;
with CDS_Sub do
begin
First;
while not Eof do
begin
if Trim(CDS_Sub.fieldbyname('CRType').AsString) = 'ƽ<>Ƴ<EFBFBD><C6B3><EFBFBD>' then
begin
if (Trim(CDS_Sub.fieldbyname('FromFactoryName').AsString) = Trim(CDS_Sub.fieldbyname('ToFactoryName').AsString)) and (Trim(CDS_Sub.fieldbyname('ORDSubIdRK').AsString) = Trim(CDS_Sub.fieldbyname('ORDSubIdCK').AsString)) then
begin
CDS_Sub.EnableControls;
Application.MessageBox(һ<CDAC><D2BB><EFBFBD>ţ<EFBFBD>ͬһ<CDAC><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ<EFBFBD><C6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
end;
Next;
end;
end;
CDS_Sub.EnableControls;
if SaveCKData() then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>!', '<27><>ʾ', 0);
//ModalResult:=1;
Exit;
end;
end;
procedure TfrmDJBCKOutPut.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 TfrmDJBCKOutPut.v1Column11PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
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('COCode').AsString);
FieldByName('ToFactoryName').Value := Trim(frmZdyAttachGYS.CDS_HZ.fieldbyname('COName').AsString);
//Post;
end;
// ToFactoryName.Text := Trim(frmZdyAttachGYS.CDS_HZ.fieldbyname('COName').AsString);
end;
end;
finally
frmZdyAttachGYS.Free;
end;
end;
procedure TfrmDJBCKOutPut.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('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 TfrmDJBCKOutPut.Image2Click(Sender: TObject);
begin
Panel4.Visible := False;
end;
procedure TfrmDJBCKOutPut.ToolButton1Click(Sender: TObject);
begin
Panel4.Visible := True;
end;
procedure TfrmDJBCKOutPut.Button1Click(Sender: TObject);
var
i: Integer;
begin
for i := 0 to GroupBox1.ControlCount - 1 do
begin
if GroupBox1.Controls[i] is TCheckBox then
begin
TCheckBox(GroupBox1.Controls[i]).Checked := true;
end;
end;
end;
procedure TfrmDJBCKOutPut.Button2Click(Sender: TObject);
var
CRType, GangNo, Note, RCGangNo, ToFactoryNo, ToFactoryName: string;
PiQty: Integer;
Xs, Qty: Double;
begin
try
if CDS_Sub.IsEmpty then
Exit;
CDS_Sub.DisableControls;
with CDS_Sub do
begin
CRType := Trim(CDS_Sub.fieldbyname('CRType').AsString);
GangNo := Trim(CDS_Sub.fieldbyname('GangNo').AsString);
PiQty := CDS_Sub.fieldbyname('PiQty').AsInteger;
Qty := CDS_Sub.fieldbyname('Qty').AsFloat;
Xs := CDS_Sub.fieldbyname('Xs').AsFloat;
Note := Trim(CDS_Sub.fieldbyname('Note').AsString);
RCGangNo := Trim(CDS_Sub.fieldbyname('RCGangNo').AsString);
ToFactoryNo := Trim(CDS_Sub.fieldbyname('ToFactoryNo').AsString);
ToFactoryName := Trim(CDS_Sub.fieldbyname('ToFactoryName').AsString);
end;
with CDS_Sub do
begin
First;
while not eof do
begin
Edit;
if CheckBox1.Checked then
FieldByName('CRType').Value := CRType;
if CheckBox2.Checked then
FieldByName('GangNo').Value := GangNo;
if CheckBox3.Checked then
FieldByName('PiQty').Value := PiQty;
if CheckBox4.Checked then
FieldByName('Xs').Value := Xs;
if CheckBox5.Checked then
FieldByName('Note').Value := Note;
if CheckBox6.Checked then
FieldByName('Qty').Value := Qty;
if CheckBox7.Checked then
begin
FieldByName('ToFactoryNo').Value := ToFactoryNo;
FieldByName('ToFactoryName').Value := ToFactoryName;
end;
Post;
Next;
end;
end;
CDS_Sub.EnableControls;
except
Application.MessageBox('<27><EFBFBD>쳣!', '<27><>ʾ', 0);
end;
end;
procedure TfrmDJBCKOutPut.ToolButton2Click(Sender: TObject);
var
i: Integer;
begin
try
frmDDDJBCKKCSelList := TfrmDDDJBCKKCSelList.Create(Application);
with frmDDDJBCKKCSelList do
begin
ToolButton1.Visible := True;
if ShowModal = 1 then
begin
frmDDDJBCKKCSelList.CDS_Main.DisableControls;
with frmDDDJBCKKCSelList.CDS_Main do
begin
// while Locate('SSel',True,[]) do
begin
with CDS_Order do
begin
// while Locate('SSel',False,[]) do
// begin
// Delete;
// end;
// i:=CDS_Order.RecordCount;
while 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(frmDDDJBCKKCSelList.CDS_Main.fieldbyname('ORDMainIdRK').AsString);
FieldByName('ORDSubIdRK').Value := Trim(frmDDDJBCKKCSelList.CDS_Main.fieldbyname('ORDSubIdRK').AsString);
FieldByName('ORDMainIdCK').Value := Trim(frmDDDJBCKKCSelList.CDS_Order.fieldbyname('MainId').AsString);
FieldByName('ORDSubIdCK').Value := Trim(frmDDDJBCKKCSelList.CDS_Order.fieldbyname('SubId').AsString);
FieldByName('QCOrderNo').Value := frmDDDJBCKKCSelList.CDS_Main.fieldbyname('OrderNo').Value;
FieldByName('CKOrderNo').Value := frmDDDJBCKKCSelList.CDS_Order.fieldbyname('OrderNo').Value;
FieldByName('spcode').Value := frmDDDJBCKKCSelList.CDS_Main.fieldbyname('spcode').AsString;
FieldByName('SPColor').Value := frmDDDJBCKKCSelList.CDS_Order.fieldbyname('SPColor').AsString;
FieldByName('SPHX').Value := frmDDDJBCKKCSelList.CDS_Order.fieldbyname('SPHX').AsString;
FieldByName('FactoryName').Value := frmDDDJBCKKCSelList.CDS_Main.fieldbyname('FactoryName').Value;
FieldByName('FactoryNo').Value := frmDDDJBCKKCSelList.CDS_Main.fieldbyname('FactoryNo').Value;
FieldByName('SSType').Value := frmDDDJBCKKCSelList.CDS_Main.fieldbyname('SSType').Value;
FieldByName('SPName').Value := frmDDDJBCKKCSelList.CDS_Main.fieldbyname('SPName').Value;
FieldByName('SPSpec').Value := frmDDDJBCKKCSelList.CDS_Main.fieldbyname('SPSpec').Value;
FieldByName('SPCF').Value := frmDDDJBCKKCSelList.CDS_Main.fieldbyname('SPCF').Value;
FieldByName('SPMF').Value := frmDDDJBCKKCSelList.CDS_Main.fieldbyname('SPMF').Value;
FieldByName('SPKZ').Value := frmDDDJBCKKCSelList.CDS_Main.fieldbyname('SPKZ').Value;
FieldByName('RCGangNo').Value := frmDDDJBCKKCSelList.CDS_Main.fieldbyname('RCGangNo').Value;
FieldByName('FromFactoryName').Value := frmDDDJBCKKCSelList.CDS_Main.fieldbyname('ToFactoryName').Value;
FieldByName('FromFactoryNo').Value := frmDDDJBCKKCSelList.CDS_Main.fieldbyname('ToFactoryNo').Value;
FieldByName('ToFactoryName').Value := frmDDDJBCKKCSelList.CDS_Main.fieldbyname('ToFactoryName').Value;
FieldByName('ToFactoryNo').Value := frmDDDJBCKKCSelList.CDS_Main.fieldbyname('ToFactoryNo').Value;
FieldByName('QtyUnit').Value := frmDDDJBCKKCSelList.CDS_Main.fieldbyname('QtyUnit').Value;
FieldByName('PiQty').Value := 0; //frmDDDJBCKKCSelList.CDS_Main.fieldbyname('MXKCPiQty').Value
FieldByName('Qty').Value := 0; //frmDDDJBCKKCSelList.CDS_Main.fieldbyname('MXKCQty').Value
FieldByName('FZSPID').Value := frmDDDJBCKKCSelList.CDS_Main.fieldbyname('SPID').Value;
FieldByName('Note').Value := frmDDDJBCKKCSelList.CDS_Main.fieldbyname('Note').Value;
FieldByName('CustomerNoName').Value := frmDDDJBCKKCSelList.CDS_Main.fieldbyname('CustomerNoName').AsString;
FieldByName('PRICE').VALUE := frmDDDJBCKKCSelList.CDS_Main.fieldbyname('PRICE').value;
FieldByName('XIAOGANGFEI').VALUE := frmDDDJBCKKCSelList.CDS_Main.fieldbyname('XIAOGANGFEI').value;
FieldByName('SHANGJIFEI').VALUE := frmDDDJBCKKCSelList.CDS_Main.fieldbyname('SHANGJIFEI').value;
FieldByName('money').VALUE := frmDDDJBCKKCSelList.CDS_Main.fieldbyname('money').value;
end;
Delete;
end;
end;
// with Self.CDS_Sub do
// begin
// edit;
// FieldByName('PiQty').Value:=frmDDDJBCKKCSelList.CDS_Main.fieldbyname('MXKCPiQty').Value/i;
// FieldByName('Qty').Value:=frmDDDJBCKKCSelList.CDS_Main.fieldbyname('MXKCQty').Value/i;
// end;
// frmDDDJBCKKCSelList.CDS_Main.Delete;
end;
end;
frmDDDJBCKKCSelList.CDS_Main.EnableControls;
end;
end;
finally
frmDDDJBCKKCSelList.Free;
end;
end;
procedure TfrmDJBCKOutPut.v1Column4PropertiesEditValueChanged(Sender: TObject);
// Tv1.Controller.EditingController.ShowEdit();
var
mvalue, FFieldName: string;
FQty, FPrice, FMxMoney, FXGF, FSJF: double;
begin
mvalue := TcxTextEdit(Sender).EditingText;
FFieldName := Trim(Tv1.Controller.FocusedColumn.DataBinding.FilterFieldName);
if Trim(mvalue) = '' then
begin
mvalue := '0';
end;
with CDS_Sub do
begin
Edit;
FieldByName(FFieldName).Value := Trim(mvalue);
Post;
end;
with CDS_Sub do
begin
Edit;
FQty := FieldByName('Qty').AsFloat;
FXGF := FieldByName('XIAOGANGFEI').AsFloat;
FSJF := FieldByName('SHANGJIFEI').AsFloat;
FPrice := FieldByName('Price').AsFloat;
Post;
end;
with CDS_Sub do
begin
Edit;
// FMxMoney := FQty * FPrice;
// showmessage(FloatToStr(FMxMoney));
FieldByName('Money').Value := RoundFloat((FieldByName('Qty').AsFloat * FieldByName('Price').AsFloat + FXGF + FSJF), 2);
// FieldByName(FFieldName).Value := Trim(mvalue);
// FieldbyName('MxMoney').Value := FMxMoney;
Post;
end;
tv1.Controller.EditingController.ShowEdit();
end;
end.