Prvotni verze pro Giteu
This commit is contained in:
142
datModPrij.pas
Normal file
142
datModPrij.pas
Normal file
@ -0,0 +1,142 @@
|
||||
unit datModPrij;
|
||||
|
||||
interface
|
||||
|
||||
uses
|
||||
System.SysUtils, System.Classes, MemTableDataEh, Data.DB, MemTableEh, ddPlugin_TLB;
|
||||
|
||||
type
|
||||
TdmPrij = class(TDataModule)
|
||||
vTabPrij: TMemTableEh;
|
||||
dsPrij: TDataSource;
|
||||
vTabPoradiSort: TSingleField;
|
||||
vTabPoradi: TSmallintField;
|
||||
vTabPoradiSortNazev: TStringField;
|
||||
vTabNazev1: TStringField;
|
||||
vTabRegCis: TStringField;
|
||||
vTabSkupZbo: TStringField;
|
||||
vTabIDZboSklad: TIntegerField;
|
||||
vTabMnozstvi: TFloatField;
|
||||
vTabIDPohybZboziObj: TIntegerField;
|
||||
vTabSortiment: TStringField;
|
||||
vTabK2: TStringField;
|
||||
vTabK1: TStringField;
|
||||
vTabTypZavozu: TStringField;
|
||||
vTabPoradiExt: TSingleField;
|
||||
vTabK1K2: TStringField;
|
||||
vTabJCbezDaniKc: TSingleField;
|
||||
procedure vTabFilterRecord(DataSet: TDataSet; var Accept: Boolean);
|
||||
procedure vTabMnozstviValidate(Sender: TField);
|
||||
procedure vTabRanoValidate(Sender: TField);
|
||||
procedure vTabPoledneValidate(Sender: TField);
|
||||
private
|
||||
public
|
||||
Helios: IHelios;
|
||||
end;
|
||||
|
||||
var
|
||||
dmPrij: TdmPrij;
|
||||
|
||||
|
||||
implementation
|
||||
uses frmPrijem;
|
||||
|
||||
{%CLASSGROUP 'Vcl.Controls.TControl'}
|
||||
|
||||
{$R *.dfm}
|
||||
|
||||
|
||||
procedure TdmPrij.vTabFilterRecord(DataSet: TDataSet; var Accept: Boolean);
|
||||
var t: string;
|
||||
begin
|
||||
if (vTabPrij.RecordCount>0) then
|
||||
begin
|
||||
t:= vTabPrij.FieldByName('TypZavozu').AsString;
|
||||
case formPrijem.cbZavoz.ItemIndex of
|
||||
0: Accept:= (t='R');
|
||||
1: Accept:= (t='P');
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
|
||||
|
||||
|
||||
procedure TdmPrij.vTabMnozstviValidate(Sender: TField);
|
||||
var canCont: Boolean;
|
||||
mv, mm: Single;
|
||||
begin
|
||||
canCont:= true;
|
||||
mv:= TField(Sender).AsFloat;
|
||||
if (mv<0) then
|
||||
canCont:=false;
|
||||
|
||||
if not(canCont) then
|
||||
TField(Sender).DataSet.Cancel;
|
||||
end;
|
||||
|
||||
|
||||
|
||||
|
||||
procedure TdmPrij.vTabPoledneValidate(Sender: TField);
|
||||
var canCont: Boolean;
|
||||
mv, mm: Single;
|
||||
begin
|
||||
canCont:= true;
|
||||
mv:= TField(Sender).AsFloat;
|
||||
mm:= TField(Sender).DataSet.FieldByName('Minimum').AsSingle;
|
||||
|
||||
if (TField(Sender).AsInteger<>0) and (TField(Sender).DataSet.FieldByName('JenRano').AsInteger=1) then
|
||||
begin
|
||||
TField(Sender).DataSet.Cancel;
|
||||
Helios.Error(#1'Položka "' + TField(Sender).DataSet.FieldByName('RegCis').AsString +'" je určena jen pro ranní závoz.'#1);
|
||||
canCont:= false;
|
||||
end;
|
||||
|
||||
if (canCont) and (TField(Sender).AsInteger<0) then
|
||||
begin
|
||||
canCont:= false;
|
||||
Helios.Error(#1'Položka "' + TField(Sender).DataSet.FieldByName('RegCis').AsString +'" je určena jen pro ranní závoz.'#1);
|
||||
end;
|
||||
|
||||
if (canCont) and (mv<mm) then
|
||||
begin
|
||||
canCont:= false;
|
||||
Helios.Error(#1'Minimální množství je ' + FormatFloat('#,##0.###', mm) + #1);
|
||||
end;
|
||||
|
||||
if not(canCont) then
|
||||
TField(Sender).DataSet.Cancel;
|
||||
|
||||
end;
|
||||
|
||||
|
||||
|
||||
|
||||
procedure TdmPrij.vTabRanoValidate(Sender: TField);
|
||||
var canCont: Boolean;
|
||||
mv, mm: Single;
|
||||
begin
|
||||
canCont:= true;
|
||||
mv:= TField(Sender).AsFloat;
|
||||
mm:= TField(Sender).DataSet.FieldByName('Minimum').AsSingle;
|
||||
|
||||
if (TField(Sender).AsInteger<0) then
|
||||
begin
|
||||
canCont:= false;
|
||||
Helios.Error(#1'Lze zadávat jen kladná čísla.'#1);
|
||||
end;
|
||||
|
||||
if (canCont) and (mv<mm) then
|
||||
begin
|
||||
canCont:= false;
|
||||
Helios.Error(#1'Minimální množství je ' + FormatFloat('#,##0.###', mm) + #1);
|
||||
end;
|
||||
|
||||
if not(canCont) then
|
||||
TField(Sender).DataSet.Cancel;
|
||||
|
||||
end;
|
||||
|
||||
|
||||
end.
|
||||
Reference in New Issue
Block a user