261 lines
6.6 KiB
ObjectPascal
261 lines
6.6 KiB
ObjectPascal
unit U_JBData; //初次使用系统第一卷布禁止交班。
|
||
|
||
interface
|
||
|
||
uses
|
||
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
||
Dialogs, DB, ADODB, StdCtrls, Buttons, ExtCtrls;
|
||
|
||
type
|
||
TfrmJBData = class(TForm)
|
||
Button1: TButton;
|
||
MJLen: TEdit;
|
||
Label1: TLabel;
|
||
ADOQueryCmd: TADOQuery;
|
||
Label2: TLabel;
|
||
Panel3: TPanel;
|
||
SpeedButton1: TSpeedButton;
|
||
SpeedButton2: TSpeedButton;
|
||
SpeedButton3: TSpeedButton;
|
||
SpeedButton4: TSpeedButton;
|
||
SpeedButton5: TSpeedButton;
|
||
SpeedButton6: TSpeedButton;
|
||
SpeedButton7: TSpeedButton;
|
||
SpeedButton8: TSpeedButton;
|
||
SpeedButton9: TSpeedButton;
|
||
SpeedButton10: TSpeedButton;
|
||
SpeedButton12: TSpeedButton;
|
||
ADOQueryTemp: TADOQuery;
|
||
Button2: TButton;
|
||
procedure FormDestroy(Sender: TObject);
|
||
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
||
procedure FormShow(Sender: TObject);
|
||
procedure SpeedButton1Click(Sender: TObject);
|
||
procedure SpeedButton12Click(Sender: TObject);
|
||
procedure Button1Click(Sender: TObject);
|
||
procedure Button2Click(Sender: TObject);
|
||
private
|
||
{ Private declarations }
|
||
public
|
||
{ Public declarations }
|
||
end;
|
||
|
||
var
|
||
frmJBData: TfrmJBData;
|
||
|
||
implementation
|
||
Uses
|
||
U_DataLink,U_Fun,U_ZDYHelp,U_iniParam;
|
||
|
||
{$R *.dfm}
|
||
|
||
procedure TfrmJBData.FormDestroy(Sender: TObject);
|
||
begin
|
||
frmJBData:=nil;
|
||
end;
|
||
|
||
procedure TfrmJBData.FormClose(Sender: TObject; var Action: TCloseAction);
|
||
begin
|
||
|
||
Action:=caFree;
|
||
end;
|
||
|
||
procedure TfrmJBData.FormShow(Sender: TObject);
|
||
begin
|
||
MJLen.SetFocus;
|
||
end;
|
||
|
||
procedure TfrmJBData.SpeedButton1Click(Sender: TObject);
|
||
begin
|
||
MJLen.Text:=Trim(MJLen.Text)+Trim(TSpeedButton(Sender).Caption);
|
||
MJLen.SelectAll;
|
||
end;
|
||
|
||
procedure TfrmJBData.SpeedButton12Click(Sender: TObject);
|
||
begin
|
||
if Trim(MJLen.Text)<>'' then
|
||
begin
|
||
MJLen.Text:=Copy(Trim(MJLen.Text),1,Length(Trim(MJLen.Text))-1);
|
||
MJLen.SelectAll;
|
||
end;
|
||
end;
|
||
|
||
procedure TfrmJBData.Button1Click(Sender: TObject);
|
||
var
|
||
FFMJLen:Double;
|
||
MJIDInt:Integer;
|
||
maxno,maxno10,FBanZu,maxno100,maxno200,maxno300:String;
|
||
begin
|
||
if Trim(MJLen.Text)='' then
|
||
begin
|
||
Application.MessageBox('交班卷长不能为空!','提示',0);
|
||
MJLen.SetFocus;
|
||
exit;
|
||
end;
|
||
|
||
with ADOQueryTemp do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select isnull(Max(Cast(MJID as int)),0) MJIDInt from WFB_MJJY');
|
||
if Trim(SCXFlag)<>'' then
|
||
begin
|
||
sql.Add(' where JTType='''+Trim(SCXFlag)+'''');
|
||
end;
|
||
Open;
|
||
end;
|
||
|
||
MJIDInt:=ADOQueryTemp.fieldbyname('MJIDInt').Value;
|
||
maxno100:=Trim(FormatDateTime('yyyyMMdd',SGetServerDateTime(ADOQueryTemp)));
|
||
maxno100:=Trim(SCXFlag)+Trim(Copy(maxno100,3,6));
|
||
maxno200:=IntToStr(MJIDInt);
|
||
maxno200:=Copy(maxno200,1,7);
|
||
if StrToInt(maxno100)>StrToInt(maxno200) then
|
||
begin
|
||
maxno300:=Trim(maxno100)+'01';
|
||
end else
|
||
begin
|
||
maxno300:=IntToStr(MJIDInt+1);
|
||
end;
|
||
with ADOQueryTemp do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select * from WFB_JYResult where MJID='''+Trim(maxno300)+'''');
|
||
Open;
|
||
end;
|
||
if ADOQueryTemp.IsEmpty then
|
||
begin
|
||
Application.MessageBox('未检验不能交班!','提示',0);
|
||
Exit;
|
||
end;
|
||
// 初次使用系统第一卷布禁止交班。
|
||
if MJIDInt>0 then
|
||
begin
|
||
with ADOQueryTemp do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select * from WFB_JB where MJID='''+Trim(Inttostr(MJIDInt+1))+'''');
|
||
Open;
|
||
end;
|
||
if ADOQueryTemp.IsEmpty=False then
|
||
begin
|
||
Application.MessageBox('交班卷长已登记!','提示',0);
|
||
Exit;
|
||
end;
|
||
if Application.MessageBox('确定要执行操作吗?确定后数据将不能修改!','提示',32+4)<>IDYES then
|
||
begin
|
||
MJLen.Text:='';
|
||
MJLen.SetFocus;
|
||
Exit;
|
||
end;
|
||
try
|
||
ADOQueryCmd.Connection.BeginTrans;
|
||
//保存交班表
|
||
if GetLSNo(ADOQueryCmd,maxno,'JB','WFB_JB',2,1)=False then
|
||
begin
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
Application.MessageBox('取交班ID异常!','提示',0);
|
||
Exit;
|
||
end;
|
||
|
||
with ADOQueryTemp do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
SQL.Add('select * from SY_User where UserId='''+Trim(DCode)+'''');
|
||
Open;
|
||
end;
|
||
FBanZu:=Trim(ADOQueryTemp.fieldbyname('BanZu').AsString);
|
||
FFMJLen:=StrToFloat(MJLen.Text);
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select * from WFB_JB where 1<>1');
|
||
Open;
|
||
end;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Append;
|
||
FieldByName('JBID').Value:=Trim(maxno);
|
||
FieldByName('MJID').Value:=Trim(maxno300);
|
||
FieldByName('MJLen').Value:=FFMJLen;
|
||
FieldByName('Filler').Value:=Trim(DName);
|
||
FieldByName('BanZu').Value:=Trim(FBanZu);
|
||
if Trim(SCXFlag)<>'' then
|
||
begin
|
||
FieldByName('JTType').Value:=Trim(SCXFlag);
|
||
end;
|
||
Post;
|
||
end;
|
||
//保存交班表
|
||
//保存班组员工产量表
|
||
with ADOQueryTemp do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select * from SY_User where BanZu='''+Trim(FBanZu)+'''');
|
||
Open;
|
||
end;
|
||
with ADOQueryTemp do
|
||
begin
|
||
First;
|
||
while not eof do
|
||
begin
|
||
if GetLSNo(ADOQueryCmd,maxno10,'BZ','WFB_BanZu',4,1)=False then
|
||
begin
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
Application.MessageBox('取班组号失败!','提示',0);
|
||
Exit;
|
||
end;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Close;
|
||
sql.Clear;
|
||
sql.Add('select * from WFB_BanZu where 1<>1');
|
||
open;
|
||
end;
|
||
with ADOQueryCmd do
|
||
begin
|
||
Append;
|
||
FieldByName('BZID').Value:=Trim(maxno10);
|
||
FieldByName('BanZu').Value:=Trim(FBanZu);
|
||
FieldByName('MJID').Value:=Trim(maxno300);
|
||
// FieldByName('MJID').Value:=Trim(IntToStr(MJIDInt+1));
|
||
FieldByName('MJLen').Value:=StrToFloat(MJLen.Text);
|
||
FieldByName('UserId').Value:=Trim(ADOQueryTemp.fieldbyname('UserId').AsString);
|
||
FieldByName('UserName').Value:=Trim(ADOQueryTemp.fieldbyname('UserName').AsString);
|
||
FieldByName('Filler').Value:=Trim(DName);
|
||
FieldByName('JBID').Value:=Trim(maxno);
|
||
Post;
|
||
end;
|
||
Next;
|
||
end;
|
||
end;
|
||
|
||
//保存班组员工产量表
|
||
ADOQueryCmd.Connection.CommitTrans;
|
||
//Application.MessageBox('登记成功!','提示',0);
|
||
Exit;
|
||
except
|
||
|
||
ADOQueryCmd.Connection.RollbackTrans;
|
||
Application.MessageBox('保存数据异常!','提示',0);
|
||
end;
|
||
end else
|
||
begin
|
||
Application.MessageBox('初次使用系统,第一卷布禁止交班!','提示',0);
|
||
Exit;
|
||
end;
|
||
|
||
end;
|
||
|
||
procedure TfrmJBData.Button2Click(Sender: TObject);
|
||
begin
|
||
Close;
|
||
end;
|
||
|
||
end.
|