D7gmYongjin/纱线加弹管理(YarnTexturing.dll)/U_LSFHSQInPut.pas

495 lines
13 KiB
ObjectPascal
Raw Normal View History

2026-03-04 09:51:44 +08:00
unit U_LSFHSQInPut;
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
TfrmLSFHSQInPut = class(TForm)
ToolBar1: TToolBar;
TBSave: TToolButton;
TBClose: TToolButton;
ScrollBox1: TScrollBox;
ToolBar2: TToolBar;
ToolButton1: TToolButton;
ToolButton2: TToolButton;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
cxGrid1Level1: TcxGridLevel;
v1PRTColor: TcxGridDBColumn;
ADOTemp: TADOQuery;
ADOCmd: TADOQuery;
DataSource1: TDataSource;
Order_Sub: TClientDataSet;
ADOQuery1: TADOQuery;
v1Column14: TcxGridDBColumn;
cxGridPopupMenu2: TcxGridPopupMenu;
Label1: TLabel;
SQType: TComboBox;
Note: TEdit;
Label12: TLabel;
v1Column6: TcxGridDBColumn;
Label2: TLabel;
SQDate: TDateTimePicker;
Label5: TLabel;
YWYName: TBtnEditC;
v1Column1: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
Label3: TLabel;
KHName: TBtnEditC;
Label4: TLabel;
KHNameDZ: TEdit;
Tv1Column1: TcxGridDBColumn;
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBSaveClick(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure FHTaiTouBtnDnClick(Sender: TObject);
procedure FHTaiTouBtnUpClick(Sender: TObject);
procedure ShouKuanKeyPress(Sender: TObject; var Key: Char);
procedure YWYNameBtnUpClick(Sender: TObject);
procedure YWYNameBtnDnClick(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure KHNameBtnUpClick(Sender: TObject);
procedure KHNameBtnDnClick(Sender: TObject);
private
fuserName: string;
procedure InitData();
procedure ZDYHelp(FButn: TcxButtonEdit; LType: string);
function SaveData(): Boolean;
{ Private declarations }
public
PState, CopyInt: Integer;
FMainId, FFMainId, ChkStr, ConPriceStr: string;
FXS: Integer;
FClothType: string;
{ Public declarations }
end;
var
frmLSFHSQInPut: TfrmLSFHSQInPut;
newh: hwnd;
implementation
uses
U_DataLink, U_ZDYHelp, U_RTFun, U_LSSQKCHZSel;
{$R *.dfm}
procedure TfrmLSFHSQInPut.TBCloseClick(Sender: TObject);
begin
Close;
WriteCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>', Tv1, 'JTS<54><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
end;
procedure TfrmLSFHSQInPut.InitData();
var
fsj: string;
begin
fsj := 'select Name=ZdyName from KH_Zdy where Type=''ClothType'' ';
if PState = 0 then
begin
YWYName.Text := dname;
SQDate.DateTime := SGetServerDate10(ADOTemp);
end;
with ADOQuery1 do
begin
Close;
SQL.Clear;
sql.Add(' select A.* ');
sql.Add(' from SQ_FHYT_Sub A');
if PState = 1 then
begin
sql.Add('where FHMainId=''' + Trim(FMainId) + '''');
end;
if PState = 0 then
begin
sql.Add(' where 1<>1');
end;
Open;
end;
SCreateCDS20(ADOQuery1, Order_Sub);
SInitCDSData20(ADOQuery1, Order_Sub);
with ADOQuery1 do
begin
Close;
sql.Clear;
sql.Add('select A.* ');
sql.Add(' from SQ_FHYT_Main A');
sql.Add(' where FHMainId=''' + Trim(FMainId) + ''' ');
Open;
end;
SCSHDataNew(ADOQuery1, ScrollBox1, 1);
end;
procedure TfrmLSFHSQInPut.ZDYHelp(FButn: TcxButtonEdit; LType: string);
var
FType, ZDYName, FText: string;
begin
end;
procedure TfrmLSFHSQInPut.FormShow(Sender: TObject);
begin
readCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>', Tv1, 'JTS<54><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
InitData();
end;
function TfrmLSFHSQInPut.SaveData(): Boolean;
var
maxno, maxmnno, FSSId: string;
fconNO, fmxType: string;
begin
try
ADOCmd.Connection.BeginTrans;
///<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if Trim(FMainId) = '' then
begin
if GetLSNo(ADOCmd, maxno, 'FC', 'SQ_FHYT_Main', 3, 1) = False then
begin
ADOCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!', '<27><>ʾ', 0);
Exit;
end;
end
else
begin
maxno := Trim(FMainId);
end;
with ADOCmd do
begin
Close;
sql.Clear;
SQL.Add('select * from SQ_FHYT_Main where FHmainid=''' + Trim(FMainId) + '''');
Open;
end;
with ADOCmd do
begin
if Trim(FMainId) = '' then
begin
Append;
end
else
begin
Edit;
end;
FieldByName('FHmainid').Value := Trim(maxno);
RTSetsavedata(ADOCmd, 'SQ_FHYT_Main', ScrollBox1, 1);
if Trim(FMainId) = '' then
begin
FieldByName('Filler').Value := Trim(DName);
FieldByName('FillCode').Value := Trim(DCode);
FieldByName('FillTime').Value := SGetServerDateTime(ADOTemp);
end
else
begin
FieldByName('Editer').Value := Trim(DName);
FieldByName('EditCode').Value := Trim(DCode);
FieldByName('EditTime').Value := SGetServerDateTime(ADOTemp);
end;
Post;
end;
FMainId := Trim(maxno);
///<2F><><EFBFBD><EFBFBD><EFBFBD>ӱ<EFBFBD>
Order_Sub.DisableControls;
with Order_Sub do
begin
First;
while not Eof do
begin
if Trim(Order_Sub.fieldbyname('FHSubId').AsString) = '' then
begin
if GetLSNo(ADOCmd, maxno, 'SS', 'SQ_FHYT_Sub', 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('FHSubId').AsString);
end;
with ADOCmd do
begin
Close;
SQL.Clear;
sql.Add('select * from SQ_FHYT_Sub ');
sql.Add(' where FHSubId=''' + 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;
end
else
begin
Edit;
end;
FieldByName('FHMainId').Value := Trim(FMainId);
FieldByName('FHSubId').Value := Trim(maxno);
RTSetSaveDataCDS(ADOCmd, Tv1, Order_Sub, 'SQ_FHYT_Sub', 0);
Post;
end;
Order_Sub.Edit;
Order_Sub.FieldByName('FHSubId').Value := Trim(maxno);
Next;
end;
end;
Order_Sub.EnableControls;
with ADOCmd do
begin
Close;
sql.Clear;
sql.Add('Update SQ_FHYT_Main Set ');
sql.Add('SQPiQtyHZ=(select Sum(SQPiQty) from SQ_FHYT_Sub A where A.FHMainId=SQ_FHYT_Main.FHMainId)');
sql.Add('where SQ_FHYT_Main.FHMainId=''' + Trim(FMainId) + '''');
ExecSQL;
end;
if Trim(SQType.Text)='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
begin
with ADOCmd do
begin
close;
sql.Clear;
sql.Add('update SQ_FHYT_Main SET Chker=''' + Trim(DName) + ''',ChkTime=getdate(),ChkStatus=''<27><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>'' ');
sql.Add('where FHMainId=''' + Trim(FMainId) + '''');
execsql;
end;
end;
ADOCmd.Connection.CommitTrans;
Result := True;
except
ADOCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ', 0);
Result := False;
end;
end;
procedure TfrmLSFHSQInPut.TBSaveClick(Sender: TObject);
var
Freal: Double;
begin
ToolBar1.SetFocus;
if Trim(SQType.Text) = '' then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD><CDB2><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
if Order_Sub.IsEmpty then
begin
Application.MessageBox('<27><>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
if Order_Sub.Locate('SQPiQty', null, []) = True then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><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;
procedure TfrmLSFHSQInPut.ToolButton2Click(Sender: TObject);
begin
if Order_Sub.IsEmpty then
Exit;
if Trim(Order_Sub.fieldbyname('FHSubId').AsString) <> '' then
begin
with ADOTemp do
begin
Close;
sql.Clear;
sql.Add('select * from SQ_FHYT_Sub where FHSubId=''' + Trim(Order_Sub.fieldbyname('FHSubId').AsString) + '''');
sql.add(' and isnull(FHPS,0)>0');
Open;
end;
if ADOTemp.IsEmpty = False then
begin
Application.MessageBox('<27>ѷ<EFBFBD><D1B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
exit;
end;
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
Exit;
with ADOCmd do
begin
Close;
sql.Clear;
sql.Add('delete SQ_FHYT_Sub where FHSubId=''' + Trim(Order_Sub.fieldbyname('FHSubId').AsString) + '''');
ExecSQL;
end;
with ADOCmd do
begin
Close;
sql.Clear;
sql.Add('Update SQ_FHYT_Main Set ');
sql.Add('SQPiQtyHZ=(select Sum(SQPiQty) from SQ_FHYT_Sub A where A.FHMainId=SQ_FHYT_Main.FHMainId)');
sql.Add('where FHMainId=''' + Trim(FMainId) + '''');
ExecSQL;
end;
end;
Order_Sub.Delete;
end;
procedure TfrmLSFHSQInPut.FHTaiTouBtnDnClick(Sender: TObject);
begin
// FHTaiTou.Text := '';
end;
procedure TfrmLSFHSQInPut.FHTaiTouBtnUpClick(Sender: TObject);
begin
// try
// frmZDYHelp := TfrmZDYHelp.Create(Application);
// with frmZDYHelp do
// begin
// flag := 'FHTaiTou';
// flagname := '<27><><EFBFBD><EFBFBD>̧ͷ';
// if ShowModal = 1 then
// begin
// Self.FHTaiTou.Text := Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZdyName').AsString);
// end;
// end;
// finally
// frmZDYHelp.Free;
// end;
end;
procedure TfrmLSFHSQInPut.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 TfrmLSFHSQInPut.YWYNameBtnUpClick(Sender: TObject);
begin
try
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag := 'JTSYWYName';
flagname := <><D2B5>Ա';
if ShowModal = 1 then
begin
Self.YWYName.Text := Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZdyName').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmLSFHSQInPut.YWYNameBtnDnClick(Sender: TObject);
begin
ywyname.Text := '';
end;
procedure TfrmLSFHSQInPut.ToolButton1Click(Sender: TObject);
begin
if Order_Sub.IsEmpty=False then Exit;
try
frmLSSQKCHZSel := TfrmLSSQKCHZSel.Create(Application);
with frmLSSQKCHZSel do
begin
if ShowModal = 1 then
begin
//while frmLSSQKCHZSel.CDS_Main.Locate('SSel', true, []) do
begin
with Self.Order_Sub do
begin
Append;
FieldByName('BatchNo').Value := Trim(frmLSSQKCHZSel.CDS_Main.fieldbyname('BatchNo').AsString);
FieldByName('Y_CodeName').Value := Trim(frmLSSQKCHZSel.CDS_Main.fieldbyname('Y_CodeName').AsString);
FieldByName('FactoryName').Value := Trim(frmLSSQKCHZSel.CDS_Main.fieldbyname('FactoryName').AsString);
FieldByName('Y_Spec').Value := frmLSSQKCHZSel.CDS_Main.fieldbyname('Y_Spec').Value;
FieldByName('Y_CodeNameCP').Value := frmLSSQKCHZSel.CDS_Main.fieldbyname('Y_CodeNameCP').Value;
FieldByName('Y_Type').Value := frmLSSQKCHZSel.CDS_Main.fieldbyname('Y_Type').Value;
FieldByName('ZGColor').Value := frmLSSQKCHZSel.CDS_Main.fieldbyname('ZGColor').Value;
FieldByName('SQPiQty').Value := frmLSSQKCHZSel.CDS_Main.fieldbyname('JQty').Value;
FieldByName('SQQty').Value := frmLSSQKCHZSel.CDS_Main.fieldbyname('JYNW').Value;
Post;
end;
//frmLSSQKCHZSel.CDS_Main.Delete;
end;
end;
end;
finally
frmLSSQKCHZSel.Free;
end;
end;
procedure TfrmLSFHSQInPut.KHNameBtnUpClick(Sender: TObject);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Self);
with frmZDYHelp do
begin
Flag:='JTSKH';
flagname:='<27>ͻ<EFBFBD>';
if ShowModal=1 then
begin
KHName.Text:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
with ADOTemp do
begin
Close;
sql.Clear;
sql.Add('select Top 1 * from SQ_FHYT_Main where KHName='''+Trim(KHName.Text)+'''');
sql.Add(' and isnull(KHNameDZ,'''')<>'''' order by FillTime desc');
Open;
end;
KHNameDZ.Text:=Trim(ADOTemp.fieldbyname('KHNameDZ').AsString);
end;
procedure TfrmLSFHSQInPut.KHNameBtnDnClick(Sender: TObject);
begin
KHName.Text:='';
end;
end.