D10SZKaiXiYa/B02基础纱线仓库/U_YarnInfoInPut.pas

408 lines
11 KiB
ObjectPascal
Raw Normal View History

2025-03-01 10:55:52 +08:00
unit U_YarnInfoInPut;
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, StdCtrls, ExtCtrls,
cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxDateRanges,
dxBarBuiltInMenu, U_BaseInput, U_BaseList, System.ImageList, Vcl.ImgList,
cxContainer, cxMaskEdit, cxMemo, cxImageList, dxSkinsCore,
2025-07-18 15:42:53 +08:00
dxSkinsDefaultPainters, dxCore, cxDateUtils, dxSkinOffice2013White,
dxSkinSharpPlus, dxSkinWXI;
2025-03-01 10:55:52 +08:00
type
TfrmYarnInfoInPut = class(TfrmBaseInput)
ToolBar1: TToolBar;
TBSave: TToolButton;
TBClose: TToolButton;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
ToolButton1: TToolButton;
ScrollBox1: TScrollBox;
Label2: TLabel;
Label6: TLabel;
Label7: TLabel;
Label1: TLabel;
Brand: TcxTextEdit;
Y_Name: TcxTextEdit;
Label3: TLabel;
Y_Code: TcxTextEdit;
Label4: TLabel;
Label8: TLabel;
Denier: TcxTextEdit;
Label9: TLabel;
Note: TcxMemo;
Label5: TLabel;
ADOConnection1: TADOConnection;
Label10: TLabel;
FF: TcxTextEdit;
Label11: TLabel;
ND: TcxTextEdit;
2025-03-26 14:10:41 +08:00
Label12: TLabel;
ZS: TcxTextEdit;
Label13: TLabel;
BYDate: TcxDateEdit;
Y_Color: TcxButtonEdit;
Y_Type: TcxButtonEdit;
Y_Composition: TcxButtonEdit;
Y_Spec: TcxButtonEdit;
2025-04-23 15:09:48 +08:00
Label14: TLabel;
CJ: TcxButtonEdit;
Label15: TLabel;
LLSH: TcxTextEdit;
2025-08-12 13:37:49 +08:00
Label16: TLabel;
2025-09-30 17:22:36 +08:00
Label17: TLabel;
YarnFactor: TcxTextEdit;
2025-03-01 10:55:52 +08:00
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBSaveClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
2025-03-26 14:10:41 +08:00
procedure Y_NameClick(Sender: TObject);
procedure Y_NameExit(Sender: TObject);
procedure Y_SpecPropertiesChange(Sender: TObject);
procedure DenierClick(Sender: TObject);
procedure DenierExit(Sender: TObject);
procedure ZSClick(Sender: TObject);
procedure ZSExit(Sender: TObject);
procedure DenierPropertiesEditValueChanged(Sender: TObject);
procedure ZSPropertiesEditValueChanged(Sender: TObject);
procedure ParentCoNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
procedure Y_ColorDblClick(Sender: TObject);
2025-04-23 15:09:48 +08:00
procedure CJPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
2025-05-19 15:46:55 +08:00
procedure Y_CompositionPropertiesChange(Sender: TObject);
procedure ZSPropertiesChange(Sender: TObject);
procedure Y_ColorPropertiesChange(Sender: TObject);
procedure FFPropertiesChange(Sender: TObject);
procedure CJPropertiesChange(Sender: TObject);
2025-03-01 10:55:52 +08:00
private
{ Private declarations }
function SaveData(): Boolean;
2025-05-19 15:46:55 +08:00
procedure UpdateYarnName;
2025-03-01 10:55:52 +08:00
public
{ Public declarations }
FBYIID, FSTKName: string;
end;
var
frmYarnInfoInPut: TfrmYarnInfoInPut;
implementation
uses
2025-04-23 15:09:48 +08:00
U_DataLink, U_RTFun, U_ZDYHelp, U_CompanySel; //, U_ProductInfoSel
2025-03-01 10:55:52 +08:00
{$R *.dfm}
2025-04-23 15:09:48 +08:00
procedure TfrmYarnInfoInPut.CJPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
begin
try
frmCompanySel := TfrmCompanySel.Create(Application);
with frmCompanySel do
begin
FCoType := '<27><>Ӧ<EFBFBD><D3A6>';
if ShowModal = 1 then
begin
2025-05-19 15:46:55 +08:00
self.CJ.Text := Trim(frmCompanySel.CDS_1.fieldbyname('CoAbbrName').AsString);
2025-04-23 15:09:48 +08:00
end;
end;
finally
frmCompanySel.Free;
end;
end;
2025-05-19 15:46:55 +08:00
procedure TfrmYarnInfoInPut.CJPropertiesChange(Sender: TObject);
begin
UpdateYarnName;
end;
2025-03-26 14:10:41 +08:00
procedure TfrmYarnInfoInPut.DenierClick(Sender: TObject);
begin
ZS.Style.Color := clMoneyGreen;
end;
procedure TfrmYarnInfoInPut.DenierExit(Sender: TObject);
begin
ZS.Style.Color := clWhite;
end;
procedure TfrmYarnInfoInPut.DenierPropertiesEditValueChanged(Sender: TObject);
begin
2025-04-23 15:09:48 +08:00
ZS.text := floattostr(roundfloat(5315.5 / strtofloatdef(Denier.text, 0), 0));
2025-03-26 14:10:41 +08:00
end;
2025-05-19 15:46:55 +08:00
procedure TfrmYarnInfoInPut.FFPropertiesChange(Sender: TObject); //<2F>ķ<EFBFBD>
begin
UpdateYarnName;
end;
2025-03-01 10:55:52 +08:00
procedure TfrmYarnInfoInPut.FormClose(Sender: TObject; var Action: TCloseAction);
begin
inherited;
Action := caFree;
end;
function TfrmYarnInfoInPut.SaveData(): Boolean;
var
MaxNo, MaxPRID: string;
begin
try
ADOQueryCmd.Connection.BeginTrans;
if Trim(FBYIID) = '' then
begin
if GetLSNo(ADOQueryCmd, MaxNo, 'P', 'BS_Yarn_Info', 4, 0) = False then
raise Exception.Create(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>');
Y_Code.Text := MaxNo;
end
else
begin
MaxNo := Trim(FBYIID);
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('select * from BS_Yarn_Info where BYIID=''' + Trim(MaxNo) + '''');
Open;
end;
with ADOQueryCmd do
begin
if Trim(FBYIID) = '' then
begin
Append;
FieldByName('FillId').Value := Trim(DCode);
FieldByName('Filler').Value := Trim(DName);
end
else
begin
Edit;
FieldByName('EditId').Value := Trim(DCode);
FieldByName('Editer').Value := Trim(DName);
FieldByName('Edittime').Value := SGetServerDateTime(ADOQueryTemp);
end;
FieldByName('BYIID').Value := Trim(MaxNo);
RTSetsavedata(ADOQueryCmd, 'BS_Yarn_Info', ScrollBox1, 2);
Post;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from BS_Yarn_Info where Y_Code=' + quotedstr(trim(Y_Code.Text)));
Open;
end;
if ADOQueryCmd.RecordCount > 1 then
raise Exception.Create('<27><><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD>!');
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from BS_Yarn_Info where Y_Name=' + quotedstr(trim(Y_Name.Text)));
Open;
end;
if ADOQueryCmd.RecordCount > 1 then
raise Exception.Create('Ʒ<><C6B7><EFBFBD>ظ<EFBFBD>!');
ADOQueryCmd.Connection.CommitTrans;
Result := True;
except
Result := False;
ADOQueryCmd.Connection.RollbackTrans;
application.MessageBox(PChar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
end;
procedure TfrmYarnInfoInPut.TBCloseClick(Sender: TObject);
begin
Close;
end;
procedure TfrmYarnInfoInPut.FormCreate(Sender: TObject);
begin
inherited;
try
with ADOConnection1 do
begin
Connected := false;
ConnectionString := DConString;
Connected := true;
end;
ADOQueryBaseCmd.Connection := ADOConnection1;
ADOQueryBaseTemp.Connection := ADOConnection1;
except
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ');
end;
end;
procedure TfrmYarnInfoInPut.FormShow(Sender: TObject);
var
fsj: string;
begin
inherited;
2025-03-26 14:10:41 +08:00
// fsj := ' select Code=ZDYNo,Name=ZDYName from KH_ZDY where Type=''YType'' and MainType=''ɴ<>ߵ<EFBFBD><DFB5><EFBFBD>'' ';
// SInitTcxComBoxBySql(ADOQueryTemp, Y_Type, false, fsj);
//
// fsj := ' select Code=ZDYNo,Name=ZDYName from KH_ZDY where Type=''Y_Spec'' and MainType=''ɴ<>ߵ<EFBFBD><DFB5><EFBFBD>'' ';
// SInitTcxComBoxBySql(ADOQueryTemp, Y_Spec, false, fsj);
//
// fsj := ' select Code=ZDYNo,Name=ZDYName from KH_ZDY where Type=''Y_Composition'' and MainType=''ɴ<>ߵ<EFBFBD><DFB5><EFBFBD>'' ';
// SInitTcxComBoxBySql(ADOQueryTemp, Y_Composition, false, fsj);
//
// fsj := ' select Code=ZDYNo,Name=ZDYName from KH_ZDY where Type=''Y_Color'' and MainType=''ɴ<>ߵ<EFBFBD><DFB5><EFBFBD>'' ';
// SInitTcxComBoxBySql(ADOQueryTemp, Y_Color, false, fsj);
2025-03-01 10:55:52 +08:00
with ADOQueryTemp do
begin
Close;
SQL.Clear;
sql.Add(' select * from BS_Yarn_Info ');
sql.Add(' where BYIID=''' + Trim(FBYIID) + '''');
Open;
end;
SCSHData(ADOQueryTemp, ScrollBox1, 2);
2025-03-26 14:10:41 +08:00
if FBYIID = '' then
begin
ByDate.Date := SGetServerDateTime(ADOQueryTemp);
end;
end;
procedure TfrmYarnInfoInPut.Y_ColorDblClick(Sender: TObject);
begin
TcxButtonEdit(Sender).Text := '';
TcxButtonEdit(Sender).Properties.LookupItems.Text := '';
end;
2025-05-19 15:46:55 +08:00
procedure TfrmYarnInfoInPut.Y_ColorPropertiesChange(Sender: TObject); //<2F><>ɫ
begin
UpdateYarnName;
end;
procedure TfrmYarnInfoInPut.Y_CompositionPropertiesChange(Sender: TObject); //<2F>ɷ<EFBFBD>
begin
UpdateYarnName;
end;
2025-03-26 14:10:41 +08:00
procedure TfrmYarnInfoInPut.ParentCoNamePropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
var
fsj: string;
FWZ: Integer;
begin
fsj := Trim(TcxButtonEdit(Sender).Hint);
FWZ := Pos('/', fsj);
try
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
2025-04-17 15:21:14 +08:00
MainType := <>ߵ<EFBFBD><DFB5><EFBFBD>';
2025-03-26 14:10:41 +08:00
flag := Copy(fsj, 1, FWZ - 1);
flagname := Copy(fsj, FWZ + 1, Length(fsj) - FWZ);
if ShowModal = 1 then
begin
TcxButtonEdit(Sender).Text := Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
2025-03-01 10:55:52 +08:00
end;
procedure TfrmYarnInfoInPut.TBSaveClick(Sender: TObject);
begin
// if Trim(Y_Code.Text) = '' then
// begin
// Application.MessageBox('<27><><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD><CEAA>!', '<27><>ʾ', 0);
// Exit;
// end;
2025-04-23 15:09:48 +08:00
ToolBar1.SetFocus;
2025-05-19 17:31:51 +08:00
Y_Name.text := Trim(Y_Composition.text) + Trim(ZS.text) + 'S' + Trim(Y_Color.text) + Trim(FF.text); //+ Trim(CJ.text)
2025-03-01 10:55:52 +08:00
if Trim(Y_Name.Text) = '' then
begin
Application.MessageBox('<27><><EFBFBD>Ʋ<EFBFBD><C6B2><EFBFBD>Ϊ<EFBFBD><CEAA>!', '<27><>ʾ', 0);
Exit;
end;
2025-03-26 14:10:41 +08:00
2025-03-01 10:55:52 +08:00
if Trim(Denier.Text) <> '' then
begin
if StrToFloatdef(Denier.Text, 0) = 0 then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD>D<EFBFBD><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
end;
if SaveData() then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>!', '<27><>ʾ', 0);
ModalResult := 1;
Exit;
end;
end;
2025-03-26 14:10:41 +08:00
procedure TfrmYarnInfoInPut.Y_NameClick(Sender: TObject);
begin
Y_Composition.Style.Color := clMoneyGreen;
2025-04-23 15:09:48 +08:00
ZS.Style.Color := clMoneyGreen;
2025-03-26 14:10:41 +08:00
Y_Color.Style.Color := clMoneyGreen;
2025-04-23 15:09:48 +08:00
FF.Style.Color := clMoneyGreen;
2025-05-19 17:31:51 +08:00
// CJ.Style.Color := clMoneyGreen;
2025-03-26 14:10:41 +08:00
end;
procedure TfrmYarnInfoInPut.Y_NameExit(Sender: TObject);
begin
Y_Composition.Style.Color := clWhite;
2025-04-23 15:09:48 +08:00
ZS.Style.Color := clWhite;
2025-03-26 14:10:41 +08:00
Y_Color.Style.Color := clWhite;
2025-04-23 15:09:48 +08:00
FF.Style.Color := clWhite;
2025-05-19 17:31:51 +08:00
// CJ.Style.Color := clWhite;
2025-03-26 14:10:41 +08:00
end;
procedure TfrmYarnInfoInPut.Y_SpecPropertiesChange(Sender: TObject);
begin
2025-05-19 17:31:51 +08:00
Y_Name.text := Trim(Y_Composition.text) + Trim(ZS.text) + 'S' + Trim(Y_Color.text) + Trim(FF.text); //+ Trim(CJ.text)
2025-03-26 14:10:41 +08:00
end;
procedure TfrmYarnInfoInPut.ZSClick(Sender: TObject);
begin
Denier.Style.Color := clMoneyGreen;
end;
procedure TfrmYarnInfoInPut.ZSExit(Sender: TObject);
begin
Denier.Style.Color := clWhite;
end;
2025-05-19 15:46:55 +08:00
procedure TfrmYarnInfoInPut.ZSPropertiesChange(Sender: TObject);
begin
UpdateYarnName;
end;
2025-05-19 17:31:51 +08:00
2025-03-26 14:10:41 +08:00
procedure TfrmYarnInfoInPut.ZSPropertiesEditValueChanged(Sender: TObject);
begin
2025-04-23 15:09:48 +08:00
Denier.text := floattostr(roundfloat(5315.5 / strtofloatdef(ZS.text, 0), 0));
2025-03-26 14:10:41 +08:00
end;
2025-05-19 15:46:55 +08:00
procedure TfrmYarnInfoInPut.UpdateYarnName;
begin
2025-05-19 17:31:51 +08:00
Y_Name.Text := Trim(Y_Composition.Text) + Trim(ZS.Text) + 'S' + Trim(Y_Color.Text) + Trim(FF.Text); // + Trim(CJ.Text)
2025-05-19 15:46:55 +08:00
end;
2025-03-01 10:55:52 +08:00
end.