unit schParametrosServer_Intf;

interface

uses
  Classes, DB, SysUtils, uROClasses, uDADataTable, uDABusinessProcessor, schParametrosClient_Intf;

const
  { Delta rules ids 
       Feel free to change them to something more human readable
       but make sure they are unique in the context of your application }
  RID_ListaCentrosDelta = '{5AAFEEF2-8098-4A72-BC66-D67CF1CE1D1A}';
  RID_ListaColeccionesDelta = '{98EF7287-301A-462F-AF86-9EDE8B21DFA7}';

type
  { IListaCentrosDelta }
  IListaCentrosDelta = interface(IListaCentros)
  ['{5AAFEEF2-8098-4A72-BC66-D67CF1CE1D1A}']
    { Property getters and setters }
    function GetOldCODFILIALValue : String;
    function GetOldCODBARRAValue : String;
    function GetOldFILIALValue : String;

    { Properties }
    property OldCODFILIAL : String read GetOldCODFILIALValue;
    property OldCODBARRA : String read GetOldCODBARRAValue;
    property OldFILIAL : String read GetOldFILIALValue;
  end;

  { TListaCentrosBusinessProcessorRules }
  TListaCentrosBusinessProcessorRules = class(TDABusinessProcessorRules, IListaCentros, IListaCentrosDelta)
  private
  protected
    { Property getters and setters }
    function GetCODFILIALValue: String; virtual;
    function GetOldCODFILIALValue: String; virtual;
    procedure SetCODFILIALValue(const aValue: String); virtual;
    function GetCODBARRAValue: String; virtual;
    function GetOldCODBARRAValue: String; virtual;
    procedure SetCODBARRAValue(const aValue: String); virtual;
    function GetFILIALValue: String; virtual;
    function GetOldFILIALValue: String; virtual;
    procedure SetFILIALValue(const aValue: String); virtual;

    { Properties }
    property CODFILIAL : String read GetCODFILIALValue write SetCODFILIALValue;
    property OldCODFILIAL : String read GetOldCODFILIALValue;
    property CODBARRA : String read GetCODBARRAValue write SetCODBARRAValue;
    property OldCODBARRA : String read GetOldCODBARRAValue;
    property FILIAL : String read GetFILIALValue write SetFILIALValue;
    property OldFILIAL : String read GetOldFILIALValue;

  public
    constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
    destructor Destroy; override;

  end;

  { IListaColeccionesDelta }
  IListaColeccionesDelta = interface(IListaColecciones)
  ['{98EF7287-301A-462F-AF86-9EDE8B21DFA7}']
    { Property getters and setters }
    function GetOldCOLECAOValue : String;
    function GetOldDESC_COLECAOValue : String;

    { Properties }
    property OldCOLECAO : String read GetOldCOLECAOValue;
    property OldDESC_COLECAO : String read GetOldDESC_COLECAOValue;
  end;

  { TListaColeccionesBusinessProcessorRules }
  TListaColeccionesBusinessProcessorRules = class(TDABusinessProcessorRules, IListaColecciones, IListaColeccionesDelta)
  private
  protected
    { Property getters and setters }
    function GetCOLECAOValue: String; virtual;
    function GetOldCOLECAOValue: String; virtual;
    procedure SetCOLECAOValue(const aValue: String); virtual;
    function GetDESC_COLECAOValue: String; virtual;
    function GetOldDESC_COLECAOValue: String; virtual;
    procedure SetDESC_COLECAOValue(const aValue: String); virtual;

    { Properties }
    property COLECAO : String read GetCOLECAOValue write SetCOLECAOValue;
    property OldCOLECAO : String read GetOldCOLECAOValue;
    property DESC_COLECAO : String read GetDESC_COLECAOValue write SetDESC_COLECAOValue;
    property OldDESC_COLECAO : String read GetOldDESC_COLECAOValue;

  public
    constructor Create(aBusinessProcessor: TDABusinessProcessor); override;
    destructor Destroy; override;

  end;

implementation

uses
  Variants, uROBinaryHelpers;

{ TListaCentrosBusinessProcessorRules }
constructor TListaCentrosBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
begin
  inherited;
end;

destructor TListaCentrosBusinessProcessorRules.Destroy;
begin
  inherited;
end;

function TListaCentrosBusinessProcessorRules.GetCODFILIALValue: String;
begin
  result := BusinessProcessor.CurrentChange.NewValueByName[fld_ListaCentrosCODFILIAL];
end;

function TListaCentrosBusinessProcessorRules.GetOldCODFILIALValue: String;
begin
  result := BusinessProcessor.CurrentChange.OldValueByName[fld_ListaCentrosCODFILIAL];
end;

procedure TListaCentrosBusinessProcessorRules.SetCODFILIALValue(const aValue: String);
begin
  BusinessProcessor.CurrentChange.NewValueByName[fld_ListaCentrosCODFILIAL] := aValue;
end;

function TListaCentrosBusinessProcessorRules.GetCODBARRAValue: String;
begin
  result := BusinessProcessor.CurrentChange.NewValueByName[fld_ListaCentrosCODBARRA];
end;

function TListaCentrosBusinessProcessorRules.GetOldCODBARRAValue: String;
begin
  result := BusinessProcessor.CurrentChange.OldValueByName[fld_ListaCentrosCODBARRA];
end;

procedure TListaCentrosBusinessProcessorRules.SetCODBARRAValue(const aValue: String);
begin
  BusinessProcessor.CurrentChange.NewValueByName[fld_ListaCentrosCODBARRA] := aValue;
end;

function TListaCentrosBusinessProcessorRules.GetFILIALValue: String;
begin
  result := BusinessProcessor.CurrentChange.NewValueByName[fld_ListaCentrosFILIAL];
end;

function TListaCentrosBusinessProcessorRules.GetOldFILIALValue: String;
begin
  result := BusinessProcessor.CurrentChange.OldValueByName[fld_ListaCentrosFILIAL];
end;

procedure TListaCentrosBusinessProcessorRules.SetFILIALValue(const aValue: String);
begin
  BusinessProcessor.CurrentChange.NewValueByName[fld_ListaCentrosFILIAL] := aValue;
end;


{ TListaColeccionesBusinessProcessorRules }
constructor TListaColeccionesBusinessProcessorRules.Create(aBusinessProcessor: TDABusinessProcessor);
begin
  inherited;
end;

destructor TListaColeccionesBusinessProcessorRules.Destroy;
begin
  inherited;
end;

function TListaColeccionesBusinessProcessorRules.GetCOLECAOValue: String;
begin
  result := BusinessProcessor.CurrentChange.NewValueByName[fld_ListaColeccionesCOLECAO];
end;

function TListaColeccionesBusinessProcessorRules.GetOldCOLECAOValue: String;
begin
  result := BusinessProcessor.CurrentChange.OldValueByName[fld_ListaColeccionesCOLECAO];
end;

procedure TListaColeccionesBusinessProcessorRules.SetCOLECAOValue(const aValue: String);
begin
  BusinessProcessor.CurrentChange.NewValueByName[fld_ListaColeccionesCOLECAO] := aValue;
end;

function TListaColeccionesBusinessProcessorRules.GetDESC_COLECAOValue: String;
begin
  result := BusinessProcessor.CurrentChange.NewValueByName[fld_ListaColeccionesDESC_COLECAO];
end;

function TListaColeccionesBusinessProcessorRules.GetOldDESC_COLECAOValue: String;
begin
  result := BusinessProcessor.CurrentChange.OldValueByName[fld_ListaColeccionesDESC_COLECAO];
end;

procedure TListaColeccionesBusinessProcessorRules.SetDESC_COLECAOValue(const aValue: String);
begin
  BusinessProcessor.CurrentChange.NewValueByName[fld_ListaColeccionesDESC_COLECAO] := aValue;
end;


initialization
  RegisterBusinessProcessorRules(RID_ListaCentrosDelta, TListaCentrosBusinessProcessorRules);
  RegisterBusinessProcessorRules(RID_ListaColeccionesDelta, TListaColeccionesBusinessProcessorRules);

end.
