AlonsoYSal_FactuGES2/Source/Modulos/Contabilidad/Model/uBizAsientosServer.pas
2019-11-18 10:36:42 +00:00

51 lines
1.3 KiB
ObjectPascal

unit uBizAsientosServer;
interface
uses
uDAInterfaces, uDADelta, uDABusinessProcessor,
schContabilidadServer_Intf;
const
BIZ_SERVER_ASIENTOS = 'Server.Asientos';
type
TBizAsientosServer = class(TAsientosBusinessProcessorRules)
protected
procedure BeforeProcessDelta(Sender: TDABusinessProcessor; const aDelta: IDADelta); override;
end;
implementation
uses
Variants, uDAClasses, uBusinessUtils, uROClasses, uDataModuleServer,
SysUtils, uROServer, FactuGES_Intf;
{ TBizAsientosServer }
procedure TBizAsientosServer.BeforeProcessDelta(Sender: TDABusinessProcessor; const aDelta: IDADelta);
var
AContabilidadService : IsrvContabilidad;
Intf : IInterface;
AClientID : TGUID;
begin
case Sender.CurrentChange.ChangeType of
ctInsert, ctUpdate: begin
//Si el orden del asiento no ha sido asignado le asignamos uno nosotros
if (ORDENIsNull) or (ORDEN = 0) then
begin
CreateGUID(AClientID);
GetClassFactory('srvContabilidad').CreateInstance(AClientID, Intf);
AContabilidadService := Intf as IsrvContabilidad;
ORDEN := AContabilidadService.DarNumOrdenAsiento;
end;
end;
end;
end;
initialization
RegisterBusinessProcessorRules(BIZ_SERVER_ASIENTOS, TBizAsientosServer);
end.