git-svn-id: https://192.168.0.254/svn/Proyectos.LuisLeon_FactuGES2/trunk@1 b2cfbe5a-eba1-4a0c-8b32-7feea0a119f2
62 lines
1.3 KiB
ObjectPascal
62 lines
1.3 KiB
ObjectPascal
unit uBizAgentesComisiones;
|
|
|
|
interface
|
|
|
|
uses
|
|
uDAInterfaces, uDADataTable,
|
|
schContactosClient_Intf;
|
|
|
|
const
|
|
BIZ_CLIENT_AGENTE_COMISIONES = 'Client.AgenteComisiones';
|
|
|
|
type
|
|
IBizAgentesComisiones = interface (IAgentes_Comisiones)
|
|
['{B41B58A9-2CE3-45A2-9EA9-E8C2B72356BB}']
|
|
end;
|
|
|
|
TBizAgenteComisiones = class(TAgentes_ComisionesDataTableRules, IBizAgentesComisiones)
|
|
private
|
|
ContIdAux: Integer;
|
|
protected
|
|
procedure OnNewRecord(Sender: TDADataTable); override;
|
|
procedure BeforeInsert(Sender: TDADataTable); override;
|
|
public
|
|
constructor Create(aDataTable: TDADataTable); override;
|
|
end;
|
|
|
|
implementation
|
|
|
|
{ TBizAgenteComisiones }
|
|
|
|
uses
|
|
DB;
|
|
|
|
procedure TBizAgenteComisiones.BeforeInsert(Sender: TDADataTable);
|
|
var
|
|
AMasterTable : TDADataTable;
|
|
begin
|
|
inherited;
|
|
AMasterTable := DataTable.GetMasterDataTable;
|
|
if Assigned(AMasterTable) and (AMasterTable.State in dsEditModes) then
|
|
AMasterTable.Post;
|
|
end;
|
|
|
|
constructor TBizAgenteComisiones.Create(aDataTable: TDADataTable);
|
|
begin
|
|
inherited;
|
|
ContIdAux := -1;
|
|
end;
|
|
|
|
procedure TBizAgenteComisiones.OnNewRecord(Sender: TDADataTable);
|
|
begin
|
|
inherited;
|
|
ID := ContIdAux; // -1, -2, -3...
|
|
Dec(ContIdAux);
|
|
end;
|
|
|
|
initialization
|
|
RegisterDataTableRules(BIZ_CLIENT_AGENTE_COMISIONES, TBizAgenteComisiones);
|
|
|
|
end.
|
|
|