D7gmYongjin/成品仓库(FinishedClothWarehouse.dll)/U_CPFHSQXZ.pas

487 lines
14 KiB
ObjectPascal
Raw Normal View History

2026-03-04 09:51:44 +08:00
unit U_CPFHSQXZ;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage,
cxEdit, DB, cxDBData, cxGridLevel, cxGridCustomTableView, cxGridTableView,
cxGridDBTableView, cxClasses, cxControls, cxGridCustomView, cxGrid, cxMemo,
cxRichEdit, ComCtrls, cxContainer, cxTextEdit, cxMaskEdit, cxButtonEdit,
StdCtrls, ToolWin, DBClient, ADODB, ExtCtrls, BtnEdit, cxCalendar, StrUtils,
cxDropDownEdit, cxGridCustomPopupMenu, cxGridPopupMenu, cxLookAndFeels,
cxLookAndFeelPainters, cxNavigator;
type
TfrmCPFHSQXZ = class(TForm)
ToolBar1: TToolBar;
ToolButton1: TToolButton;
ToolButton2: TToolButton;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
cxGrid1Level1: TcxGridLevel;
ADOTemp: TADOQuery;
ADOCmd: TADOQuery;
DataSource1: TDataSource;
Order_Sub: TClientDataSet;
v1Column14: TcxGridDBColumn;
v1Column6: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
ToolButton3: TToolButton;
ToolButton4: TToolButton;
YWY: TBtnEditC;
v1Column3: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
v1Column7: TcxGridDBColumn;
v1Column8: TcxGridDBColumn;
ADOQuery1: TADOQuery;
btnClose: TToolButton;
TBSave: TToolButton;
v1Column9: TcxGridDBColumn;
v1Column10: TcxGridDBColumn;
Tv1Column1: TcxGridDBColumn;
procedure FormShow(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure ShouKuanKeyPress(Sender: TObject; var Key: Char);
procedure v1Column3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
procedure SalesmanBtnDnClick(Sender: TObject);
procedure OrderNoBtnUpClick(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
procedure YWYBtnUpClick(Sender: TObject);
procedure v1Column7PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
procedure v1Column8PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
procedure btnCloseClick(Sender: TObject);
procedure TBSaveClick(Sender: TObject);
private
fuserName: string;
procedure InitData();
procedure ZDYHelp(FButn: TcxButtonEdit; LType: string);
function SaveData(): Boolean;
procedure GetKCSel(MKCStatus: string);
{ Private declarations }
public
PState, CopyInt: Integer;
FMainId, FFMainId, ChkStr, ConPriceStr: string;
FXS: Integer;
FClothType: string;
{ Public declarations }
end;
var
frmCPFHSQXZ: TfrmCPFHSQXZ;
newh: hwnd;
implementation
uses
U_DataLink, U_ZDYHelp, U_RTFun, U_SQKCHZSelList, U_ZdyAttachGYS,
U_ZdyAttachment, U_SQKCHZMXSel;
{$R *.dfm}
procedure TfrmCPFHSQXZ.GetKCSel(MKCStatus: string);
var
FSelType, FConNo, FMPRTCodeName, FPRTColor, FgangNo, FMJID: string;
FEFalg, FPiQty, FMJXH: Integer;
begin
try
frmSQKCHZSelList := TfrmSQKCHZSelList.Create(Application);
with frmSQKCHZSelList do
begin
FKCStatus := MKCStatus;
FYWY := YWY.Text;
if ShowModal = 1 then
begin
while frmSQKCHZSelList.CDS_Main.Locate('SSel', true, []) do
begin
FEFalg := 0;
FSelType := Trim(frmSQKCHZSelList.CDS_Main.fieldbyname('SelType').AsString);
FConNo := Trim(frmSQKCHZSelList.CDS_Main.fieldbyname('ConNo').AsString);
FMPRTCodeName := Trim(frmSQKCHZSelList.CDS_Main.fieldbyname('MPRTCodeName').AsString);
FPRTColor := Trim(frmSQKCHZSelList.CDS_Main.fieldbyname('PRTColor').AsString);
FgangNo := Trim(frmSQKCHZSelList.CDS_Main.fieldbyname('gangNo').AsString);
FPiQty := frmSQKCHZSelList.CDS_Main.fieldbyname('PiQty').AsInteger;
FMJID := Trim(frmSQKCHZSelList.CDS_Main.fieldbyname('MJID').AsString);
FMJXH := frmSQKCHZSelList.CDS_Main.fieldbyname('MJXH').AsInteger;
if FSelType = 'Ʒ<><C6B7>' then
begin
if Self.Order_Sub.Locate('PRTCodeName', FMPRTCodeName, []) then
FEFalg := FEFalg - 1;
end;
if FSelType = '<27><><EFBFBD><EFBFBD>' then
begin
if Self.Order_Sub.Locate('SelType;PRTCodeName', VarArrayOf(['Ʒ<><C6B7>', FMPRTCodeName]), []) then
FEFalg := FEFalg - 1;
if Self.Order_Sub.Locate('SCConNo;PRTCodeName', VarArrayOf([FConNo, FMPRTCodeName]), []) then
FEFalg := FEFalg - 1;
end;
if FSelType = '<27><>ɫ' then
begin
if Self.Order_Sub.Locate('SelType;PRTCodeName', VarArrayOf(['Ʒ<><C6B7>', FMPRTCodeName]), []) then
FEFalg := FEFalg - 1;
if Self.Order_Sub.Locate('SelType;SCConNo;PRTCodeName', VarArrayOf(['<27><><EFBFBD><EFBFBD>', FConNo, FMPRTCodeName]), []) then
FEFalg := FEFalg - 1;
if Self.Order_Sub.Locate('SCConNo;PRTCodeName;PRTColor', VarArrayOf([FConNo, FMPRTCodeName, FPRTColor]), []) then
FEFalg := FEFalg - 1;
end;
if FSelType = '<27>׺<EFBFBD>' then
begin
if Self.Order_Sub.Locate('SelType;PRTCodeName', VarArrayOf(['Ʒ<><C6B7>', FMPRTCodeName]), []) then
FEFalg := FEFalg - 1;
if Self.Order_Sub.Locate('SelType;SCConNo;PRTCodeName', VarArrayOf(['<27><><EFBFBD><EFBFBD>', FConNo, FMPRTCodeName]), []) then
FEFalg := FEFalg - 1;
if Self.Order_Sub.Locate('SelType;SCConNo;PRTCodeName;PRTColor', VarArrayOf(['<27><>ɫ', FConNo, FMPRTCodeName, FPRTColor]), []) then
FEFalg := FEFalg - 1;
if Self.Order_Sub.Locate('SCConNo;PRTCodeName;PRTColor;ganghao', VarArrayOf([FConNo, FMPRTCodeName, FPRTColor, FgangNo]), []) then
FEFalg := FEFalg - 1;
end;
if FSelType = '<27><>ϸ' then
begin
if Self.Order_Sub.Locate('SelType;PRTCodeName', VarArrayOf(['Ʒ<><C6B7>', FMPRTCodeName]), []) then
FEFalg := FEFalg - 1;
if Self.Order_Sub.Locate('SelType;SCConNo;PRTCodeName', VarArrayOf(['<27><><EFBFBD><EFBFBD>', FConNo, FMPRTCodeName]), []) then
FEFalg := FEFalg - 1;
if Self.Order_Sub.Locate('SelType;SCConNo;PRTCodeName;PRTColor', VarArrayOf(['<27><>ɫ', FConNo, FMPRTCodeName, FPRTColor]), []) then
FEFalg := FEFalg - 1;
if Self.Order_Sub.Locate('SelType;SCConNo;PRTCodeName;PRTColor;ganghao', VarArrayOf(['<27>׺<EFBFBD>', FConNo, FMPRTCodeName, FPRTColor, FgangNo]), []) then
FEFalg := FEFalg - 1;
if Self.Order_Sub.Locate('SelType;MJID', VarArrayOf(['<27><>ϸ', FMJID]), []) then
FEFalg := FEFalg - 1;
end;
if FEFalg = 0 then
begin
with Self.Order_Sub do
begin
Append;
FieldByName('SelType').Value := FSelType;
FieldByName('SCConNo').Value := FConNo;
FieldByName('PrtCodeName').Value := FMPRTCodeName;
FieldByName('PRTColor').Value := FPRTColor;
FieldByName('ganghao').Value := FgangNo;
FieldByName('SQPS').Value := FPiQty;
FieldByName('MJXH').Value := FMJXH;
FieldByName('MJID').Value := FMJID;
Post;
end;
end;
frmSQKCHZSelList.CDS_Main.Delete;
end;
end;
end;
finally
frmSQKCHZSelList.Free;
end;
end;
procedure TfrmCPFHSQXZ.InitData();
var
fsj: string;
begin
with ADOQuery1 do
begin
Close;
SQL.Clear;
sql.Add(' select A.* ');
sql.Add(' from FHSQ_Sub_CP A');
sql.Add('where FSId=''' + Trim(FMainId) + '''');
Open;
end;
SCreateCDS20(ADOQuery1, Order_Sub);
SInitCDSData20(ADOQuery1, Order_Sub);
end;
procedure TfrmCPFHSQXZ.ZDYHelp(FButn: TcxButtonEdit; LType: string);
var
FType, ZDYName, FText: string;
begin
end;
procedure TfrmCPFHSQXZ.FormShow(Sender: TObject);
begin
readCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>', Tv1, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
InitData();
end;
function TfrmCPFHSQXZ.SaveData(): Boolean;
var
maxno, maxmnno, FSSId: string;
fconNO, fmxType: string;
begin
try
ADOCmd.Connection.BeginTrans;
///<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
FMainId := Trim('<27><><EFBFBD>Ƴ<EFBFBD>');
///<2F><><EFBFBD><EFBFBD><EFBFBD>ӱ<EFBFBD>
Order_Sub.DisableControls;
with Order_Sub do
begin
First;
while not Eof do
begin
if Trim(Order_Sub.fieldbyname('SSId').AsString) = '' then
begin
if GetLSNo(ADOCmd, maxno, 'SS', 'FHSQ_Sub_CP', 4, 1) = False then
begin
Order_Sub.EnableControls;
ADOCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
end
else
begin
maxno := Trim(Order_Sub.fieldbyname('SSId').AsString);
end;
with ADOCmd do
begin
Close;
SQL.Clear;
sql.Add('select * from FHSQ_Sub_CP ');
sql.Add(' where SSId=''' + Trim(maxno) + '''');
Open;
end;
if ADOCmd.IsEmpty then
begin
FSSId := '';
end
else
begin
FSSId := Trim(maxno);
end;
with ADOCmd do
begin
if Trim(FSSId) = '' then
begin
Append;
FieldByName('Filler').Value := Trim(DName);
end
else
begin
Edit;
FieldByName('Editer').Value := Trim(DName);
FieldByName('EditTime').Value := SGetServerDateTime(ADOTemp);
end;
FieldByName('FSID').Value := Trim(FMainId);
FieldByName('SSID').Value := Trim(maxno);
RTSetSaveDataCDS(ADOCmd, Tv1, Order_Sub, 'FHSQ_Sub_CP', 0);
FieldByName('MainId').Value := Order_Sub.fieldbyname('MainId').Value;
FieldByName('SubId').Value := Order_Sub.fieldbyname('SubId').Value;
FieldByName('SSConMainId').Value := Order_Sub.fieldbyname('SSConMainId').Value;
FieldByName('SSConSubId').Value := Order_Sub.fieldbyname('SSConSubId').Value;
Post;
end;
Order_Sub.Edit;
Order_Sub.FieldByName('SSID').Value := Trim(maxno);
Next;
end;
end;
Order_Sub.EnableControls;
ADOCmd.Connection.CommitTrans;
Result := True;
except
ADOCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ', 0);
Result := False;
end;
end;
procedure TfrmCPFHSQXZ.ToolButton1Click(Sender: TObject);
begin
GetKCSel('<27>ѿ<EFBFBD><D1BF><EFBFBD>');
end;
procedure TfrmCPFHSQXZ.ToolButton2Click(Sender: TObject);
begin
if Order_Sub.IsEmpty then
Exit;
if Trim(Order_Sub.fieldbyname('SSId').AsString) <> '' then
begin
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
Exit;
with ADOCmd do
begin
Close;
sql.Clear;
sql.Add('delete FHSQ_Sub_CP where SSId=''' + Trim(Order_Sub.fieldbyname('SSId').AsString) + '''');
ExecSQL;
end;
end;
Order_Sub.Delete;
end;
procedure TfrmCPFHSQXZ.ShouKuanKeyPress(Sender: TObject; var Key: Char);
begin
if not (((Key >= '0') and (Key <= '9')) or (Key = '.') or (Key = #8)) then
begin
Key := #0;
end
else if (pos('.', TEdit(Sender).text) <> 0) then
begin
if Key = '.' then
begin
Key := #0;
end;
end;
end;
procedure TfrmCPFHSQXZ.v1Column3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
begin
// try
// frmCPManageFMSel:=TfrmCPManageFMSel.Create(Application);
// with frmCPManageFMSel do
// begin
// if ShowModal=1 then
// begin
// Self.PrtCodeName.Text:=Trim(frmCPManageFMSel.CDS_Main.fieldbyname('CYName').AsString);
// Self.PrtCode.Text:=Trim(frmCPManageFMSel.CDS_Main.fieldbyname('CYNo').AsString);
//// Self.C_Spec.Text:=Trim(frmCPManageFMSel.CDS_Main.fieldbyname('CYSpec').AsString);
// end;
// end;
// finally
// frmCPManageFMSel.Free;
// end;
end;
procedure TfrmCPFHSQXZ.SalesmanBtnDnClick(Sender: TObject);
begin
YWY.Text := '';
end;
procedure TfrmCPFHSQXZ.OrderNoBtnUpClick(Sender: TObject);
begin
// try
// frmClothSCListSel := TfrmClothSCListSel.Create(Application);
// with frmClothSCListSel do
// begin
// if ShowModal = 1 then
// begin
// self.OrderNo.Text := trim(Order_Main.FieldByName('OrderNo').AsString);
// self.SHDanWei.Text := trim(Order_Main.FieldByName('JGFactoryName').AsString);
// self.Salesman.Text := trim(Order_Main.FieldByName('YWY').AsString);
// end;
// end;
// finally
// frmClothSCListSel.Free;
// end;
end;
procedure TfrmCPFHSQXZ.ToolButton3Click(Sender: TObject);
begin
GetKCSel('<27>Ѵ<EFBFBD><D1B4><EFBFBD>');
end;
procedure TfrmCPFHSQXZ.ToolButton4Click(Sender: TObject);
begin
GetKCSel(<><CEB4><EFBFBD><EFBFBD>');
end;
procedure TfrmCPFHSQXZ.YWYBtnUpClick(Sender: TObject);
begin
try
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag := 'Salesman';
flagname := <><D2B5>Ա';
if ShowModal = 1 then
begin
Self.YWY.Text := Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZdyName').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmCPFHSQXZ.v1Column7PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
begin
try
frmZdyAttachGYS := TfrmZdyAttachGYS.Create(Application);
with frmZdyAttachGYS do
begin
if ShowModal = 1 then
begin
with Self.Order_Sub do
begin
edit;
FieldByName('PBFactoryName').Value := Trim(frmZdyAttachGYS.CDS_HZ.fieldbyname('CoName').AsString);
end;
end;
end;
finally
frmZdyAttachGYS.Free;
end;
end;
procedure TfrmCPFHSQXZ.v1Column8PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
begin
try
frmZdyAttachGYS := TfrmZdyAttachGYS.Create(Application);
with frmZdyAttachGYS do
begin
if ShowModal = 1 then
begin
with Self.Order_Sub do
begin
edit;
// FieldByName('FactoryNo').Value := Trim(frmZdyAttachGYS.CDS_HZ.fieldbyname('COCode').AsString);
FieldByName('RSFactoryName').Value := Trim(frmZdyAttachGYS.CDS_HZ.fieldbyname('COName').AsString);
end;
end;
end;
finally
frmZdyAttachGYS.Free;
end;
end;
procedure TfrmCPFHSQXZ.btnCloseClick(Sender: TObject);
begin
Close;
WriteCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>', Tv1, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
end;
procedure TfrmCPFHSQXZ.TBSaveClick(Sender: TObject);
var
Freal: Double;
begin
ToolBar1.SetFocus;
if Order_Sub.IsEmpty then
begin
Application.MessageBox('<27><>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
if SaveData() then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>', '<27><>ʾ', 0);
end;
end;
end.