📄 newproductunit.pas
字号:
BtnFirst.Enabled := True ;
BtnPrior.Enabled := True ;
BtnNext.Enabled := True ;
BtnLast.Enabled := True ;
BtnReturn.Enabled := True ;
BtnTransact.Enabled := True ;
BtnSubmission.Enabled := True ;
BtnSave.Enabled := False ;
BtnRefresh.Enabled := False ;
IF sChange = 'New' Then
Begin
tSQL.Close;
tSQL.SQL.Clear;
tSQL.SQL.Add('SELECT TOP 1 tDocumentData.DocumentNO FROM tNewProductRequisition INNER JOIN tDocumentData ON tNewProductRequisition.ID = tDocumentData.ID ');
tSQL.SQL.Add('WHERE (tDocumentData.dDate >= '''+ FormatDatetime('YYYY-MM-',Now())+'01' +''')');
tSQL.SQL.Add('AND (tDocumentData.dDate < +'''+ FormatDatetime('YYYY-MM-DD',Now()+1) +''')');
tSQL.SQL.Add('ORDER BY tDocumentData.ID DESC');
tSQL.Open;
IF tSQL.RecordCount = 0 Then sNO := '00001'
Else Begin
sNO := IntToStr(StrToInt(Copy(tSQL.Fields[0].asString,7,5))+1);
While length(sNO) < 5 do
Begin
sNO := '0' + sNO;
End;
End;
sNO := 'NR' + FormatDatetime('YYMM',Now()) + sNO;
IF (Type_CBB.Text = '') OR
(Label_CBB.Text = '') OR
(Number_TE.Text = '') OR
(UnitGroup_CBB.Text = '') OR
(Unit_CBB.Text = '') OR
(CupType_CBB.Text = '') OR
(BowlType_CBB.Text = '') OR
(SeasonType_CBB.Text = '') OR
(ImageType_CBB.Text = '') OR
(Size_CCB.Text = '') OR
(Color_CCB.Text = '') OR
(ProductMemo_TE.Text = '') OR
(Vendor_CBB.Text = '') OR
(DMakerQty_TE.Text = '') OR
(ReportPrice_TE.Text = '') OR
(Person_CBB.Text = '') Then
Begin
Showmessage('资料填写不完整,请重新输入');
Exit ;
End;
GB_00.Enabled := True;
GB_01.Enabled := True;
ExeSQL.CommandText := 'INSERT INTO tDocumentData ' +
'(FlowNO, DocumentNO, dDate, Person) ' +
'VALUES (' +
''+ IntToStr(FlowNO) + ','+
''''+ sNO +''', '+
''''+ FormatDatetime('yyyy-mm-dd hh:mm:ss',DE_dDate.Date) +''',' +
''''+ Create_CBB.Text +'''' +
')';
ExeSQL.Execute ;
tSQL.Close;
tSQL.SQL.Clear;
tSQL.SQL.Add('SELECT DocumentNO FROM tDocumentData ');
tSQL.SQL.Add('WHERE DocumentNO = '''+ sNO +''')');
tSQL.Open;
IF tSQL.RecordCount = 1 Then
sID := tSQL.Fields[0].asString
Else Begin
ShowMessage ('新增记录失败!');
Exit;
End;
{ ExeSQL.CommandText :=
'EXECUTE NewPR_Add ' +
'' + sID + ','+
''''+ sNO + ''','+
''''+ Copy(Type_CBB.Text,1,4) +''', '+
''''+ Copy(Label_CBB.Text,Strpos('-',Label_CBB.Text)+3,Length(Label_CBB.Text)-Strpos('-',Label_CBB.Text)+2) +''',' +
''''+ Copy(Type_CBB.Text,1,4) +''',' +
''''+ Copy(Type_CBB.Text,1,4) +''',' +
''''+ Copy(Type_CBB.Text,1,4) +''',' +
''''+ Copy(Type_CBB.Text,1,4) +''',' +
''''+ Create_CBB.Text +'''' ;
}
NewPR.Open;
NewPR.Last;
CodeText_Label.Caption := NewPR.Fields[1].AsString ;
DE_dDate.Date := NewPR.Fields[2].AsDateTime ;
Create_CBB.Text := NewPR.Fields[3].AsString ;
End;
end;
procedure TNewProductForm.RefreshExecute(Sender: TObject);
begin
BtnNew.Enabled := True ;
BtnEdit.Enabled := True ;
BtnDelete.Enabled := True ;
BtnFirst.Enabled := True ;
BtnPrior.Enabled := True ;
BtnNext.Enabled := True ;
BtnLast.Enabled := True ;
BtnReturn.Enabled := True ;
BtnTransact.Enabled := True ;
BtnSubmission.Enabled := True ;
BtnSave.Enabled := False ;
BtnRefresh.Enabled := False ;
end;
procedure TNewProductForm.AgreeExecute(Sender: TObject);
begin
IF Agree_CB.Checked = True Then
Agree_CB.Caption := '同意引进'
Else Agree_CB.Caption := '不引进';
end;
procedure TNewProductForm.LoadUnitExecute(Sender: TObject);
begin
SQL.Close;
SQL.CommandText := 'SELECT cComunitCode + '' - '' + cComUnitName AS 单位 FROM ComputationUnit WHERE (cGroupCode = '''+ Copy(UnitGroup_CBB.Text,1,2) +''')' ;
SQL.Open ;
Unit_CBB.Properties.Items.Clear;
While Not SQL.Eof do
Begin
Unit_CBB.Properties.Items.Add(SQL.Fields[0].AsString);
SQL.next;
End;
end;
procedure TNewProductForm.LoadMakeQtyExecute(Sender: TObject);
begin
SQL.Close;
SQL.CommandText := 'SELECT cVenDefine1 AS 日产量,cVenPPerson+ '' - '' + cPsn_Name AS 跟单员 FROM Vendor,hr_hi_person WHERE Vendor.cVenPPerson = hr_hi_person.cPsn_Num AND (cVenCode = '''+ Copy(Vendor_CBB.Text,1,5) +''')' ;
SQL.Open ;
DMakerQty_TE.Text := SQL.Fields[0].AsString ;
Person_CBB.Text := SQL.Fields[1].AsString ;
end;
procedure TNewProductForm.ShowFormExecute(Sender: TObject);
begin
GB_00.Style.BorderStyle := ebsNone ;
// 读入类别资料
SQL.Close;
SQL.CommandText := 'SELECT cInvCCode + '' - '' + cInvCName AS 名称 FROM InventoryClass WHERE (cInvCCode LIKE N''10%'') AND ({ fn LENGTH(cInvCCode) } = 4) ORDER BY cInvCCode';
SQL.Open ;
Type_CBB.Properties.Items.Clear;
While Not SQL.Eof do
Begin
Type_CBB.Properties.Items.Add(SQL.Fields[0].AsString);
SQL.next;
End;
// 读入品牌资料
SQL.Close;
SQL.CommandText := 'SELECT DISTINCT RIGHT(LEFT(cInvCode, 5), 3) + '' - '' + cLabel AS 品牌,cLabel, cInvDefine6 FROM Inventory ORDER BY cLabel,cInvDefine6 DESC';
SQL.Open ;
Label_CBB.Properties.Items.Clear;
While Not SQL.Eof do
Begin
Label_CBB.Properties.Items.Add(SQL.Fields[0].AsString);
SQL.next;
End;
// 读入单位组资料
SQL.Close;
SQL.CommandText := 'SELECT cGroupCode + '' - '' + cGroupName AS 单位组 FROM ComputationGroup ORDER BY cGroupName' ;
SQL.Open ;
UnitGroup_CBB.Properties.Items.Clear;
While Not SQL.Eof do
Begin
UnitGroup_CBB.Properties.Items.Add(SQL.Fields[0].AsString);
SQL.next;
End;
// 读入尺码资料
SQL.Close;
SQL.CommandText := 'SELECT cValue FROM UserDefine WHERE (cID = ''21'') ORDER BY cValue' ;
SQL.Open ;
Size_CCB.Properties.Items.Clear;
While Not SQL.Eof do
Begin
Size_CCB.Properties.Items.AddCheckItem(SQL.Fields[0].AsString,SQL.Fields[0].AsString);
SQL.next;
End;
// 读入颜色资料
SQL.Close;
SQL.CommandText := 'SELECT cValue FROM UserDefine WHERE (cID = ''20'') ORDER BY cValue' ;
SQL.Open ;
Color_CCB.Properties.Items.Clear;
While Not SQL.Eof do
Begin
Color_CCB.Properties.Items.AddCheckItem(SQL.Fields[0].AsString,SQL.Fields[0].AsString);
SQL.next;
End;
// 读入杯形资料
SQL.Close;
SQL.CommandText := 'SELECT cValue FROM UserDefine WHERE (cID = ''56'') ORDER BY cValue' ;
SQL.Open ;
CupType_CBB.Properties.Items.Clear;
While Not SQL.Eof do
Begin
CupType_CBB.Properties.Items.Add(SQL.Fields[0].AsString);
SQL.next;
End;
// 读入碗形资料
SQL.Close;
SQL.CommandText := 'SELECT cValue FROM UserDefine WHERE (cID = ''52'') ORDER BY cValue' ;
SQL.Open ;
BowlType_CBB.Properties.Items.Clear;
While Not SQL.Eof do
Begin
BowlType_CBB.Properties.Items.Add(SQL.Fields[0].AsString);
SQL.next;
End;
// 读入季节资料
SQL.Close;
SQL.CommandText := 'SELECT cValue FROM UserDefine WHERE (cID = ''57'') ORDER BY cValue' ;
SQL.Open ;
SeasonType_CBB.Properties.Items.Clear;
While Not SQL.Eof do
Begin
SeasonType_CBB.Properties.Items.Add(SQL.Fields[0].AsString);
SQL.next;
End;
// 读入面花描述资料
SQL.Close;
SQL.CommandText := 'SELECT cValue FROM UserDefine WHERE (cID = ''53'') ORDER BY cValue' ;
SQL.Open ;
ImageType_CBB.Properties.Items.Clear;
While Not SQL.Eof do
Begin
ImageType_CBB.Properties.Items.Add(SQL.Fields[0].AsString);
SQL.next;
End;
// 读入供应商资料
SQL.Close;
SQL.CommandText := 'SELECT cVenCode + '' - '' + cVenAbbName + '' ---- '' + CASE WHEN iGradeABC = 0 THEN ''A'' ELSE (CASE WHEN iGradeABC = 1 THEN ''B'' ELSE (CASE WHEN iGradeABC = 2 THEN ''C'' ELSE ''D'' END) END) END AS 供应商 FROM Vendor WHERE (cVenCode LIKE ''C%'')' ;
SQL.Open ;
Vendor_CBB.Properties.Items.Clear;
While Not SQL.Eof do
Begin
Vendor_CBB.Properties.Items.Add(SQL.Fields[0].AsString);
SQL.next;
End;
// 读入职员资料
SQL.Close;
SQL.CommandText := 'SELECT cPsn_Num + '' - '' + cPsn_Name AS 人员, cDept_num FROM hr_hi_person WHERE (rPersonType = ''10'') AND (cDept_num = ''03'')' ;
SQL.Open ;
Create_CBB.Properties.Items.Clear;
Person_CBB.Properties.Items.Clear;
While Not SQL.Eof do
Begin
Create_CBB.Properties.Items.Add(SQL.Fields[0].AsString);
Person_CBB.Properties.Items.Add(SQL.Fields[0].AsString);
SQL.next;
End;
// 读入改标资料
SQL.Close;
SQL.CommandText := 'SELECT DISTINCT RIGHT(LEFT(cInvCode, 5), 3) + '' - '' + cLabel AS 品牌,cLabel, cInvDefine6 FROM Inventory WHERE cInvDefine6 = ''自有品牌'' ORDER BY cLabel,cInvDefine6 DESC';
SQL.Open ;
ChangeLabel_CBB.Properties.Items.Clear;
ChangeLabel_CBB.Properties.Items.Add('不改标');
While Not SQL.Eof do
Begin
ChangeLabel_CBB.Properties.Items.Add(SQL.Fields[0].AsString);
SQL.next;
End;
// 读入客户类别资料
SQL.Close;
SQL.CommandText := 'SELECT cCusRankCode AS 客户类别 FROM CustomerRank ORDER BY cCusRankMemo';
SQL.Open ;
PlanCusType_CCB.Properties.Items.Clear;
While Not SQL.Eof do
Begin
PlanCusType_CCB.Properties.Items.AddCheckItem(SQL.Fields[0].AsString,SQL.Fields[0].AsString);
SQL.next;
End;
NewPR.Open;
NewPR.Last;
CodeText_Label.Caption := NewPR.Fields[1].AsString;
DE_dDate.Date := NewPR.Fields[2].AsDateTime;
Create_CBB.Text := NewPR.Fields[3].AsString;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -