SmartFactory_NEOL/SOURCE/Agent,Kiosk/Lib/base - 20260114_old/ProgVersionMst.pas
2026-09-04 14:08:41 +09:00

96 lines
3.0 KiB
ObjectPascal
Raw Permalink Blame History

unit ProgVersionMst;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
wItem,
FireDAC.Stan.Intf,
FireDAC.Stan.Option, FireDAC.Stan.Error, FireDAC.UI.Intf, FireDAC.Phys.Intf,
FireDAC.Stan.Def, FireDAC.Stan.Pool, FireDAC.Stan.Async, FireDAC.Phys,
FireDAC.Stan.Param, FireDAC.DatS, FireDAC.DApt.Intf, FireDAC.DApt,
FireDAC.Phys.PGDef, FireDAC.VCLUI.Wait, FireDAC.Comp.UI, FireDAC.Phys.PG,
Data.DB, FireDAC.Comp.DataSet, FireDAC.Comp.Client;
type
TProgVersionMst = class(TwItem)
private
{ Private declarations }
FExeName: AnsiString;
FUpdateTime: AnsiString;
FMajor: AnsiString;
FMinor: AnsiString;
FPatch: AnsiString;
protected
{ Protected declarations }
public
{ Public declarations }
class function xGetObjMesProgVersion(AQuery: TFDQuery): TProgVersionMst;
class function xAddSqlMark(velStr: string): string;
class function LoadFromSingleQuery(AQuery: TFDQuery): TProgVersionMst;
published
{ Published declarations }
property ExeName: AnsiString read FExeName write FExeName;
property UpdateTime: AnsiString read FUpdateTime write FUpdateTime;
property Major: AnsiString read FMajor write FMajor;
property Minor: AnsiString read FMinor write FMinor;
property Patch: AnsiString read FPatch write FPatch;
end;
implementation
{ TProgVersionMst }
class function TProgVersionMst.LoadFromSingleQuery(AQuery: TFDQuery): TProgVersionMst;
begin
Result := nil;
while not AQuery.Eof do begin
Result := TProgVersionMst.Create(nil);
Result.OBID := AQuery.FieldByName('OBID').AsString;
Result.Name := AQuery.FieldByName('Name').AsString;
Result.wClassName := AQuery.FieldByName('wClassName').AsString;
Result.CreateDate := AQuery.FieldByName('CreateDate').AsString;
Result.CreateTime := FormatDateTime('hh:nn:ss', AQuery.FieldByName('CreateTime').AsDateTime);
Result.CreatorID := AQuery.FieldByName('CreatorID').AsString;
Result.IsValid := AQuery.FieldByName('IsValid').AsString;
Result.LcStatus := AQuery.FieldByName('LcStatus').AsString;
Result.ExeName := AQuery.FieldByName('ExeName').AsString;
Result.UpdateTime := AQuery.FieldByName('UpdateTime').AsString;
Result.Major := AQuery.FieldByName('Major').AsString;
Result.Minor := AQuery.FieldByName('Minor').AsString;
Result.Patch := AQuery.FieldByName('Patch').AsString;
AQuery.Next;
end;
end;
class function TProgVersionMst.xAddSqlMark(velStr: string): string;
begin
Result := '';
Result := '''' + velStr + '''';
end;
class function TProgVersionMst.xGetObjMesProgVersion(
AQuery: TFDQuery): TProgVersionMst;
var
sql: string;
begin
Result := nil;
sql := 'SELECT * FROM "ProgVersionMst"';
sql := sql + ' WHERE "IsValid"=' + xAddSqlMark('t');
sql := sql + ' AND "ExeName"=' + xAddSqlMark('NeolMes.exe');
try
AQuery.Close;
AQuery.SQL.Text := sql;
AQuery.Open;
except
on E: Exception do ShowMessage('xGetObjMesProgVersion <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>: ' + E.Message);
end;
Result := LoadFromSingleQuery(AQuery);
end;
end.