📄 productinfo.pas
字号:
i:Integer;
new_no:string;
maxid:string;
begin
with QPublic do
begin
Close;
SQL.Clear;
SQL.Add('select substring(convert(varchar(50),getdate(),120),3,2)+substring(convert(varchar(50),getdate(),120),6,2)+substring(convert(varchar(50),getdate(),120),9,2)date_no,isnull(convert(varchar(50),max(convert(int,substring(number,convert(int,'''+IntToStr(Length(G_sDepCode))+''')+7,4)))+1),''0'') new_no ');
SQL.Add('from CcModel_Remark where substring(number,convert(int,'''+IntToStr(Length(G_sDepCode))+''')+1,6)= substring(convert(varchar(50),getdate(),120),3,2)+substring(convert(varchar(50),getdate(),120),6,2)+substring(convert(varchar(50),getdate(),120),9,2) and substring(number,1,convert(int,'''+IntToStr(Length(G_sDepCode))+'''))='''+G_sDepCode+''' ');
Open;
end;
new_no:=QPublic.FieldValues['new_no'];
for i:=1 to 4-Length(QPublic.fieldvalues['new_no']) do
begin
new_no:='0'+new_no;
end;
new_no:=G_sDepCode+QPublic.FieldValues['date_no']+new_no;
with QPublic do
begin
Close;
SQL.Clear;
SQL.Add('select isnull(max(convert(int,substring(sign,convert(int,'''+inttostr(Length(inttostr(G_iUserID)))+''')+1,len(sign)-convert(int,'''+inttostr(Length(inttostr(G_iUserID)))+''')))),0) maxid');
SQL.Add('from CcModel_Remark where substring(sign,1,convert(int,'''+inttostr(Length(inttostr(G_iUserID)))+'''))=convert(varchar(50),'''+inttostr(G_iUserID)+''') ');
Open;
end;
maxid:=inttostr(G_iUserID)+inttostr(QPublic.FieldValues['maxid']+1);
QBaseInfo.FieldValues['xh']:='';
QBaseInfo.FieldValues['sizes']:='';
QBaseInfo.FieldValues['plate']:='';
QBaseInfo.FieldValues['Material']:='';
QBaseInfo.FieldValues['inputer']:=G_sUserName;
QBaseInfo.FieldValues['perfecter']:='';
QBaseInfo.FieldValues['standonesortno']:='';
QBaseInfo.FieldValues['standonesortname']:='';
QBaseInfo.FieldValues['auditer']:='';
QBaseInfo.FieldValues['artdepter']:='';
QBaseInfo.FieldValues['number']:=new_no;
QBaseInfo.FieldValues['remark']:='';
QBaseInfo.FieldValues['graincount']:=0;
QBaseInfo.FieldValues['area_plate']:=0;
QBaseInfo.FieldValues['price_material']:=0;
QBaseInfo.FieldValues['price_plate']:=0;
QBaseInfo.FieldValues['price_spray']:=0;
QBaseInfo.FieldValues['time_input']:=Now;
QBaseInfo.FieldValues['sign_audit']:=False;
QBaseInfo.FieldValues['sign_artdept']:=False;
QBaseInfo.FieldValues['sign_Design']:=False;
QBaseInfo.FieldValues['plate_no']:='';
QBaseInfo.FieldValues['sign']:=maxid;
QBaseInfo.FieldValues['Model_No']:='';
QBaseInfo.FieldValues['Empolder_No']:='';
inherited;
end;
procedure TfrmProductInfo.dsBaseInfoStateChange(Sender: TObject);
var
i:Integer;
begin
inherited;
if QBaseInfosign_Artdept.AsBoolean=True then
Button4.Caption:='发往品管部'
else
Button4.Caption:='发往技术部' ;
if QBaseInfosign_Audit.AsBoolean=True then
Button5.Caption:='弃审'
else
Button5.Caption:='审核' ;
Button4.Enabled:=not (QBaseInfo.State in [dsEdit]);
Button5.Enabled:=not (QBaseInfo.State in [dsEdit]);
if Pos('技术',G_sDepName)<>0 then
begin
with TabSheet1 do
begin
for i := 0 to ControlCount - 1 do
begin
if Controls[i] is TDBEdit then
(Controls[i] as TDBEdit).ReadOnly := True
end;
end;
DBGridEh2.ReadOnly:=True;
ListBox1.Enabled:=False;
MenuItem3.Enabled:=False;
N3.Enabled:=False;
cxDBImage1.Properties.ReadOnly:=True;
end
else
begin
with TabSheet1 do
begin
for i := 0 to ControlCount - 1 do
begin
if Controls[i] is TDBEdit then
(Controls[i] as TDBEdit).ReadOnly := not (QBaseInfo.State in [dsEdit])
end;
end;
DBMemo3.ReadOnly := not (QBaseInfo.State in [dsEdit]);
DBGridEh2.ReadOnly:=not (QBaseInfo.State in [dsEdit]);
DBGridEh3.ReadOnly:=not (QBaseInfo.State in [dsEdit]);
ListBox1.Enabled:= (QBaseInfo.State in [dsEdit]);
if QGy.RecordCount<>0 then
MenuItem3.Enabled:=(QBaseInfo.State in [dsEdit])
else
MenuItem3.Enabled:=False;
if QCc.RecordCount<>0 then
N3.Enabled:=(QBaseInfo.State in [dsEdit])
else
N3.Enabled:=False;
cxDBImage1.Properties.ReadOnly:=not (QBaseInfo.State in [dsEdit]);
end;
if QBaseInfo.RecordCount<>0 then
self.Label21.Caption:='信息份数:'+IntToStr(self.QBaseInfo.RecordCount)+chr(13)+'当前:'+inttostr(self.QBaseInfo.RecNo)
else
self.Label21.Caption:='信息份数:0'+chr(13)+'当前:0';
end;
procedure TfrmProductInfo.N3Click(Sender: TObject);
begin
inherited;
QCc.Delete;
end;
procedure TfrmProductInfo.acSaveExecute(Sender: TObject);
begin
// inherited;
case MessageBox(Handle,'是否保存记录','提示信息',MB_YESNO+MB_ICONQUESTION+MB_DEFBUTTON1) of
IDYes:
begin
CanSave:=False;
CanCancel:=False;
try
QBaseInfo.UpdateBatch();
except
if dmClient.adocnequip_manage.Errors.Item[0].Get_Number=-2147217873 then
begin
MessageBox(0, '产品重复!', '警告', MB_OK +MB_ICONSTOP + MB_TOPMOST);
CanSave:=True;
CanCancel:=True;
QBaseInfo.Edit;
tbtModify.Enabled:=False;
Exit;
end
else
begin
ShowMessage('保存出错!');
CanSave:=True;
CanCancel:=True;
QBaseInfo.Edit;
tbtModify.Enabled:=False;
Exit;
end;
end;
end;
IDNo:
begin
end;
end;
end;
procedure TfrmProductInfo.MenuItem3Click(Sender: TObject);
begin
inherited;
QGy.Delete;
end;
procedure TfrmProductInfo.FormCreate(Sender: TObject);
begin
fplant:='';
if G_sDepName='车间' then
begin
QGy.sql.strings[1]:=' and plant='''+G_sUserName+''' ';
QCC.sql.strings[1]:=' and plant='''+G_sUserName+''' ';
QLSDA.sql.strings[1]:=' and Liable_dept='''+G_sUserName+''' ';
QKHTS.sql.strings[1]:=' and Liable_dept='''+G_sUserName+''' ';
end;
inherited;
with QBaseInfo do
begin
DisableControls;
Close;
if Pos('品管',G_sDepName)<>0 then
SQL.Strings[1]:=' where sign_Audit=0 and sign_Artdept=0 and Artdepter='''' and substring(number,1,2)='''+G_sDepCode+''' ';
if Pos('技术',G_sDepName)<>0 then
SQL.Strings[1]:=' where sign_Artdept=1';
Open;
EnableControls;
end;
with QPublic do
begin
Close;
SQL.Clear;
SQL.Add('select distinct WorkShop from dbo.CcWorkingProcedure');
Open;
ListBox1.Items.Clear;
First;
while not Eof do
begin
ListBox1.Items.Add(QPublic.FieldValues['WorkShop']);
Next;
end;
end;
QBaseInfoAfterScroll(nil);
with Qplate do
begin
Close;
Open;
end;
end;
procedure TfrmProductInfo.QBaseInfoBeforePost(DataSet: TDataSet);
begin
inherited;
if G_sUserName<>QBaseInfoInputer.AsString then
begin
QBaseInfoPerfecter.AsString:=G_sUserName;
QBaseInfoTime_Perfect.AsDateTime:=Now;
end;
if (QBaseInfoXh.AsString<>'') or (QBaseInfoSizes.AsString<>'') or (QBaseInfoPlate.AsString<>'') then
QBaseInfosign.AsString:='';
end;
procedure TfrmProductInfo.acFindExecute(Sender: TObject);
begin
// inherited;
if not Assigned(frmLookUpGeneralCcinput) then
frmLookUpGeneralCcinput:=TfrmLookupGeneralCcinput.Create(self);
if frmLookUpGeneralCcinput.ShowModal=mrOK then
begin
with QBaseInfo do
begin
DisableControls;
SQL.Clear;
if frmLookupGeneralCcinput.sFilter='组合查询' then
begin
SQL.Add(' select a.* from CcModel_Remark a,(select * from dbo.f_getChild('''+trim(frmLookUpGeneralCcinput.Edit2.Text)+''','''+trim(frmLookUpGeneralCcinput.Edit3.Text)+''')) b ');
SQL.Add(' where a.xh=b.xh and a.sizes=b.sizes and a.plate=(case when a.plate<>'''' then '''+trim(frmLookUpGeneralCcinput.Edit4.Text)+''' else '''' end) ');
if G_sDepName='车间' then
SQL.Add(' and sign_Audit=1');
end
else if frmLookupGeneralCcinput.sFilter='' then
SQL.Add('select * from CcModel_Remark where 1=0 ')
else
begin
SQL.Add('select * from CcModel_Remark where 1=1 '+ frmLookupGeneralCcinput.sFilter);
if G_sDepName='车间' then
SQL.Add(' and sign_Audit=1');
end;
Open;
EnableControls;
end;
end;
QBaseInfoAfterScroll(nil);
end;
procedure TfrmProductInfo.ListBox1DblClick(Sender: TObject);
begin
inherited;
QGy.Append;
QGy.Edit;
QGy.FieldValues['plant']:=Trim(ListBox1.Items[ListBox1.itemIndex]);
if (Trim(ListBox1.Items[ListBox1.itemIndex])='滚镀') or (Trim(ListBox1.Items[ListBox1.itemIndex])='挂镀') then
begin
with QPublic do
begin
Close;
SQL.Clear;
SQL.Add('select dbo.get_TechnicsFlow('''+qbaseinfo.FieldValues['xh']+''','''+qbaseinfo.FieldValues['plate']+''') TechnicsFlow');
Open;
end;
QGy.FieldValues['art']:=QPublic.FieldValues['TechnicsFlow'];
end;
QGy.Post;
end;
procedure TfrmProductInfo.FormDestroy(Sender: TObject);
begin
inherited;
with QPublic do
begin
Close;
sql.Clear;
SQL.Add('delete from CcModel_Remark where substring(sign,1,convert(int,'''+inttostr(Length(inttostr(G_iUserID)))+'''))=convert(varchar(50),'''+inttostr(G_iUserID)+''') ');
ExecSQL;
end;
frmProductInfo:=nil;
end;
procedure TfrmProductInfo.Button4Click(Sender: TObject);
begin
inherited;
case MessageDlg('是否发送当前的记录?', mtWarning, [mbYes, mbNo], 0) of
mrYes:
begin
QBaseInfo.Edit ;
if Button4.Caption='发往技术部' then
begin
QBaseInfo.FieldValues['sign_Artdept'] :=True;
end
else if Button4.Caption='发往品管部' then
begin
QBaseInfo.FieldValues['sign_Artdept'] :=False;
QBaseInfo.FieldByName('Time_Artdept').AsDatetime :=Now;
QBaseInfo.FieldByName('Artdepter').AsString :=G_sUserName;
end;
QBaseInfo.UpdateBatch() ;
Button4.Enabled:=False;
Button5.Enabled:=False;
tbtModify.Enabled:=False;
tbtDelete.Enabled:=False;
end;
mrNo:
begin
end;
end;
end;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -