unit schMedicacionServer_Intf;

interface

uses
  Classes, DB, SysUtils, uROClasses, uDADataTable, uDABusinessProcessor, FmtBCD, uROXMLIntf, schMedicacionClient_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_MedicacionDelta = '{68103871-2979-4B1C-B724-19286600BDE3}';
  RID_Medicacion_DetallesDelta = '{8F75D9AF-6256-4340-806E-115595FAD832}';

type
  { IMedicacionDelta }
  IMedicacionDelta = interface(IMedicacion)
  ['{68103871-2979-4B1C-B724-19286600BDE3}']
    { Property getters and setters }
    function GetOldIDValue : Integer;
    function GetOldID_PACIENTEValue : Integer;
    function GetOldREFERENCIAValue : String;
    function GetOldNOMBREValue : String;
    function GetOldFECHA_DESDEValue : DateTime;
    function GetOldFECHA_HASTAValue : DateTime;
    function GetOldTIPOValue : String;
    function GetOldNUMERO_SSValue : String;

    { Properties }
    property OldID : Integer read GetOldIDValue;
    property OldID_PACIENTE : Integer read GetOldID_PACIENTEValue;
    property OldREFERENCIA : String read GetOldREFERENCIAValue;
    property OldNOMBRE : String read GetOldNOMBREValue;
    property OldFECHA_DESDE : DateTime read GetOldFECHA_DESDEValue;
    property OldFECHA_HASTA : DateTime read GetOldFECHA_HASTAValue;
    property OldTIPO : String read GetOldTIPOValue;
    property OldNUMERO_SS : String read GetOldNUMERO_SSValue;
  end;

  { TMedicacionBusinessProcessorRules }
  TMedicacionBusinessProcessorRules = class(TDABusinessProcessorRules, IMedicacion, IMedicacionDelta)
  private
  protected
    { Property getters and setters }
    function GetIDValue: Integer; virtual;
    function GetIDIsNull: Boolean; virtual;
    function GetOldIDValue: Integer; virtual;
    function GetOldIDIsNull: Boolean; virtual;
    procedure SetIDValue(const aValue: Integer); virtual;
    procedure SetIDIsNull(const aValue: Boolean); virtual;
    function GetID_PACIENTEValue: Integer; virtual;
    function GetID_PACIENTEIsNull: Boolean; virtual;
    function GetOldID_PACIENTEValue: Integer; virtual;
    function GetOldID_PACIENTEIsNull: Boolean; virtual;
    procedure SetID_PACIENTEValue(const aValue: Integer); virtual;
    procedure SetID_PACIENTEIsNull(const aValue: Boolean); virtual;
    function GetREFERENCIAValue: String; virtual;
    function GetREFERENCIAIsNull: Boolean; virtual;
    function GetOldREFERENCIAValue: String; virtual;
    function GetOldREFERENCIAIsNull: Boolean; virtual;
    procedure SetREFERENCIAValue(const aValue: String); virtual;
    procedure SetREFERENCIAIsNull(const aValue: Boolean); virtual;
    function GetNOMBREValue: String; virtual;
    function GetNOMBREIsNull: Boolean; virtual;
    function GetOldNOMBREValue: String; virtual;
    function GetOldNOMBREIsNull: Boolean; virtual;
    procedure SetNOMBREValue(const aValue: String); virtual;
    procedure SetNOMBREIsNull(const aValue: Boolean); virtual;
    function GetFECHA_DESDEValue: DateTime; virtual;
    function GetFECHA_DESDEIsNull: Boolean; virtual;
    function GetOldFECHA_DESDEValue: DateTime; virtual;
    function GetOldFECHA_DESDEIsNull: Boolean; virtual;
    procedure SetFECHA_DESDEValue(const aValue: DateTime); virtual;
    procedure SetFECHA_DESDEIsNull(const aValue: Boolean); virtual;
    function GetFECHA_HASTAValue: DateTime; virtual;
    function GetFECHA_HASTAIsNull: Boolean; virtual;
    function GetOldFECHA_HASTAValue: DateTime; virtual;
    function GetOldFECHA_HASTAIsNull: Boolean; virtual;
    procedure SetFECHA_HASTAValue(const aValue: DateTime); virtual;
    procedure SetFECHA_HASTAIsNull(const aValue: Boolean); virtual;
    function GetTIPOValue: String; virtual;
    function GetTIPOIsNull: Boolean; virtual;
    function GetOldTIPOValue: String; virtual;
    function GetOldTIPOIsNull: Boolean; virtual;
    procedure SetTIPOValue(const aValue: String); virtual;
    procedure SetTIPOIsNull(const aValue: Boolean); virtual;
    function GetNUMERO_SSValue: String; virtual;
    function GetNUMERO_SSIsNull: Boolean; virtual;
    function GetOldNUMERO_SSValue: String; virtual;
    function GetOldNUMERO_SSIsNull: Boolean; virtual;
    procedure SetNUMERO_SSValue(const aValue: String); virtual;
    procedure SetNUMERO_SSIsNull(const aValue: Boolean); virtual;

    { Properties }
    property ID : Integer read GetIDValue write SetIDValue;
    property IDIsNull : Boolean read GetIDIsNull write SetIDIsNull;
    property OldID : Integer read GetOldIDValue;
    property OldIDIsNull : Boolean read GetOldIDIsNull;
    property ID_PACIENTE : Integer read GetID_PACIENTEValue write SetID_PACIENTEValue;
    property ID_PACIENTEIsNull : Boolean read GetID_PACIENTEIsNull write SetID_PACIENTEIsNull;
    property OldID_PACIENTE : Integer read GetOldID_PACIENTEValue;
    property OldID_PACIENTEIsNull : Boolean read GetOldID_PACIENTEIsNull;
    property REFERENCIA : String read GetREFERENCIAValue write SetREFERENCIAValue;
    property REFERENCIAIsNull : Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull;
    property OldREFERENCIA : String read GetOldREFERENCIAValue;
    property OldREFERENCIAIsNull : Boolean read GetOldREFERENCIAIsNull;
    property NOMBRE : String read GetNOMBREValue write SetNOMBREValue;
    property NOMBREIsNull : Boolean read GetNOMBREIsNull write SetNOMBREIsNull;
    property OldNOMBRE : String read GetOldNOMBREValue;
    property OldNOMBREIsNull : Boolean read GetOldNOMBREIsNull;
    property FECHA_DESDE : DateTime read GetFECHA_DESDEValue write SetFECHA_DESDEValue;
    property FECHA_DESDEIsNull : Boolean read GetFECHA_DESDEIsNull write SetFECHA_DESDEIsNull;
    property OldFECHA_DESDE : DateTime read GetOldFECHA_DESDEValue;
    property OldFECHA_DESDEIsNull : Boolean read GetOldFECHA_DESDEIsNull;
    property FECHA_HASTA : DateTime read GetFECHA_HASTAValue write SetFECHA_HASTAValue;
    property FECHA_HASTAIsNull : Boolean read GetFECHA_HASTAIsNull write SetFECHA_HASTAIsNull;
    property OldFECHA_HASTA : DateTime read GetOldFECHA_HASTAValue;
    property OldFECHA_HASTAIsNull : Boolean read GetOldFECHA_HASTAIsNull;
    property TIPO : String read GetTIPOValue write SetTIPOValue;
    property TIPOIsNull : Boolean read GetTIPOIsNull write SetTIPOIsNull;
    property OldTIPO : String read GetOldTIPOValue;
    property OldTIPOIsNull : Boolean read GetOldTIPOIsNull;
    property NUMERO_SS : String read GetNUMERO_SSValue write SetNUMERO_SSValue;
    property NUMERO_SSIsNull : Boolean read GetNUMERO_SSIsNull write SetNUMERO_SSIsNull;
    property OldNUMERO_SS : String read GetOldNUMERO_SSValue;
    property OldNUMERO_SSIsNull : Boolean read GetOldNUMERO_SSIsNull;

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

  end;

  { IMedicacion_DetallesDelta }
  IMedicacion_DetallesDelta = interface(IMedicacion_Detalles)
  ['{8F75D9AF-6256-4340-806E-115595FAD832}']
    { Property getters and setters }
    function GetOldIDValue : Integer;
    function GetOldID_MEDICACIONValue : Integer;
    function GetOldPOSICIONValue : Integer;
    function GetOldTIPO_DETALLEValue : String;
    function GetOldID_ARTICULOValue : Integer;
    function GetOldREFERENCIAValue : String;
    function GetOldCONCEPTOValue : String;
    function GetOldCANTIDADValue : Currency;
    function GetOldPOSOLOGIAValue : String;
    function GetOldFORMA_COLORValue : String;
    function GetOldLOTEValue : String;
    function GetOldVISIBLEValue : SmallInt;

    { Properties }
    property OldID : Integer read GetOldIDValue;
    property OldID_MEDICACION : Integer read GetOldID_MEDICACIONValue;
    property OldPOSICION : Integer read GetOldPOSICIONValue;
    property OldTIPO_DETALLE : String read GetOldTIPO_DETALLEValue;
    property OldID_ARTICULO : Integer read GetOldID_ARTICULOValue;
    property OldREFERENCIA : String read GetOldREFERENCIAValue;
    property OldCONCEPTO : String read GetOldCONCEPTOValue;
    property OldCANTIDAD : Currency read GetOldCANTIDADValue;
    property OldPOSOLOGIA : String read GetOldPOSOLOGIAValue;
    property OldFORMA_COLOR : String read GetOldFORMA_COLORValue;
    property OldLOTE : String read GetOldLOTEValue;
    property OldVISIBLE : SmallInt read GetOldVISIBLEValue;
  end;

  { TMedicacion_DetallesBusinessProcessorRules }
  TMedicacion_DetallesBusinessProcessorRules = class(TDABusinessProcessorRules, IMedicacion_Detalles, IMedicacion_DetallesDelta)
  private
  protected
    { Property getters and setters }
    function GetIDValue: Integer; virtual;
    function GetIDIsNull: Boolean; virtual;
    function GetOldIDValue: Integer; virtual;
    function GetOldIDIsNull: Boolean; virtual;
    procedure SetIDValue(const aValue: Integer); virtual;
    procedure SetIDIsNull(const aValue: Boolean); virtual;
    function GetID_MEDICACIONValue: Integer; virtual;
    function GetID_MEDICACIONIsNull: Boolean; virtual;
    function GetOldID_MEDICACIONValue: Integer; virtual;
    function GetOldID_MEDICACIONIsNull: Boolean; virtual;
    procedure SetID_MEDICACIONValue(const aValue: Integer); virtual;
    procedure SetID_MEDICACIONIsNull(const aValue: Boolean); virtual;
    function GetPOSICIONValue: Integer; virtual;
    function GetPOSICIONIsNull: Boolean; virtual;
    function GetOldPOSICIONValue: Integer; virtual;
    function GetOldPOSICIONIsNull: Boolean; virtual;
    procedure SetPOSICIONValue(const aValue: Integer); virtual;
    procedure SetPOSICIONIsNull(const aValue: Boolean); virtual;
    function GetTIPO_DETALLEValue: String; virtual;
    function GetTIPO_DETALLEIsNull: Boolean; virtual;
    function GetOldTIPO_DETALLEValue: String; virtual;
    function GetOldTIPO_DETALLEIsNull: Boolean; virtual;
    procedure SetTIPO_DETALLEValue(const aValue: String); virtual;
    procedure SetTIPO_DETALLEIsNull(const aValue: Boolean); virtual;
    function GetID_ARTICULOValue: Integer; virtual;
    function GetID_ARTICULOIsNull: Boolean; virtual;
    function GetOldID_ARTICULOValue: Integer; virtual;
    function GetOldID_ARTICULOIsNull: Boolean; virtual;
    procedure SetID_ARTICULOValue(const aValue: Integer); virtual;
    procedure SetID_ARTICULOIsNull(const aValue: Boolean); virtual;
    function GetREFERENCIAValue: String; virtual;
    function GetREFERENCIAIsNull: Boolean; virtual;
    function GetOldREFERENCIAValue: String; virtual;
    function GetOldREFERENCIAIsNull: Boolean; virtual;
    procedure SetREFERENCIAValue(const aValue: String); virtual;
    procedure SetREFERENCIAIsNull(const aValue: Boolean); virtual;
    function GetCONCEPTOValue: String; virtual;
    function GetCONCEPTOIsNull: Boolean; virtual;
    function GetOldCONCEPTOValue: String; virtual;
    function GetOldCONCEPTOIsNull: Boolean; virtual;
    procedure SetCONCEPTOValue(const aValue: String); virtual;
    procedure SetCONCEPTOIsNull(const aValue: Boolean); virtual;
    function GetCANTIDADValue: Currency; virtual;
    function GetCANTIDADIsNull: Boolean; virtual;
    function GetOldCANTIDADValue: Currency; virtual;
    function GetOldCANTIDADIsNull: Boolean; virtual;
    procedure SetCANTIDADValue(const aValue: Currency); virtual;
    procedure SetCANTIDADIsNull(const aValue: Boolean); virtual;
    function GetPOSOLOGIAValue: String; virtual;
    function GetPOSOLOGIAIsNull: Boolean; virtual;
    function GetOldPOSOLOGIAValue: String; virtual;
    function GetOldPOSOLOGIAIsNull: Boolean; virtual;
    procedure SetPOSOLOGIAValue(const aValue: String); virtual;
    procedure SetPOSOLOGIAIsNull(const aValue: Boolean); virtual;
    function GetFORMA_COLORValue: String; virtual;
    function GetFORMA_COLORIsNull: Boolean; virtual;
    function GetOldFORMA_COLORValue: String; virtual;
    function GetOldFORMA_COLORIsNull: Boolean; virtual;
    procedure SetFORMA_COLORValue(const aValue: String); virtual;
    procedure SetFORMA_COLORIsNull(const aValue: Boolean); virtual;
    function GetLOTEValue: String; virtual;
    function GetLOTEIsNull: Boolean; virtual;
    function GetOldLOTEValue: String; virtual;
    function GetOldLOTEIsNull: Boolean; virtual;
    procedure SetLOTEValue(const aValue: String); virtual;
    procedure SetLOTEIsNull(const aValue: Boolean); virtual;
    function GetVISIBLEValue: SmallInt; virtual;
    function GetVISIBLEIsNull: Boolean; virtual;
    function GetOldVISIBLEValue: SmallInt; virtual;
    function GetOldVISIBLEIsNull: Boolean; virtual;
    procedure SetVISIBLEValue(const aValue: SmallInt); virtual;
    procedure SetVISIBLEIsNull(const aValue: Boolean); virtual;

    { Properties }
    property ID : Integer read GetIDValue write SetIDValue;
    property IDIsNull : Boolean read GetIDIsNull write SetIDIsNull;
    property OldID : Integer read GetOldIDValue;
    property OldIDIsNull : Boolean read GetOldIDIsNull;
    property ID_MEDICACION : Integer read GetID_MEDICACIONValue write SetID_MEDICACIONValue;
    property ID_MEDICACIONIsNull : Boolean read GetID_MEDICACIONIsNull write SetID_MEDICACIONIsNull;
    property OldID_MEDICACION : Integer read GetOldID_MEDICACIONValue;
    property OldID_MEDICACIONIsNull : Boolean read GetOldID_MEDICACIONIsNull;
    property POSICION : Integer read GetPOSICIONValue write SetPOSICIONValue;
    property POSICIONIsNull : Boolean read GetPOSICIONIsNull write SetPOSICIONIsNull;
    property OldPOSICION : Integer read GetOldPOSICIONValue;
    property OldPOSICIONIsNull : Boolean read GetOldPOSICIONIsNull;
    property TIPO_DETALLE : String read GetTIPO_DETALLEValue write SetTIPO_DETALLEValue;
    property TIPO_DETALLEIsNull : Boolean read GetTIPO_DETALLEIsNull write SetTIPO_DETALLEIsNull;
    property OldTIPO_DETALLE : String read GetOldTIPO_DETALLEValue;
    property OldTIPO_DETALLEIsNull : Boolean read GetOldTIPO_DETALLEIsNull;
    property ID_ARTICULO : Integer read GetID_ARTICULOValue write SetID_ARTICULOValue;
    property ID_ARTICULOIsNull : Boolean read GetID_ARTICULOIsNull write SetID_ARTICULOIsNull;
    property OldID_ARTICULO : Integer read GetOldID_ARTICULOValue;
    property OldID_ARTICULOIsNull : Boolean read GetOldID_ARTICULOIsNull;
    property REFERENCIA : String read GetREFERENCIAValue write SetREFERENCIAValue;
    property REFERENCIAIsNull : Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull;
    property OldREFERENCIA : String read GetOldREFERENCIAValue;
    property OldREFERENCIAIsNull : Boolean read GetOldREFERENCIAIsNull;
    property CONCEPTO : String read GetCONCEPTOValue write SetCONCEPTOValue;
    property CONCEPTOIsNull : Boolean read GetCONCEPTOIsNull write SetCONCEPTOIsNull;
    property OldCONCEPTO : String read GetOldCONCEPTOValue;
    property OldCONCEPTOIsNull : Boolean read GetOldCONCEPTOIsNull;
    property CANTIDAD : Currency read GetCANTIDADValue write SetCANTIDADValue;
    property CANTIDADIsNull : Boolean read GetCANTIDADIsNull write SetCANTIDADIsNull;
    property OldCANTIDAD : Currency read GetOldCANTIDADValue;
    property OldCANTIDADIsNull : Boolean read GetOldCANTIDADIsNull;
    property POSOLOGIA : String read GetPOSOLOGIAValue write SetPOSOLOGIAValue;
    property POSOLOGIAIsNull : Boolean read GetPOSOLOGIAIsNull write SetPOSOLOGIAIsNull;
    property OldPOSOLOGIA : String read GetOldPOSOLOGIAValue;
    property OldPOSOLOGIAIsNull : Boolean read GetOldPOSOLOGIAIsNull;
    property FORMA_COLOR : String read GetFORMA_COLORValue write SetFORMA_COLORValue;
    property FORMA_COLORIsNull : Boolean read GetFORMA_COLORIsNull write SetFORMA_COLORIsNull;
    property OldFORMA_COLOR : String read GetOldFORMA_COLORValue;
    property OldFORMA_COLORIsNull : Boolean read GetOldFORMA_COLORIsNull;
    property LOTE : String read GetLOTEValue write SetLOTEValue;
    property LOTEIsNull : Boolean read GetLOTEIsNull write SetLOTEIsNull;
    property OldLOTE : String read GetOldLOTEValue;
    property OldLOTEIsNull : Boolean read GetOldLOTEIsNull;
    property VISIBLE : SmallInt read GetVISIBLEValue write SetVISIBLEValue;
    property VISIBLEIsNull : Boolean read GetVISIBLEIsNull write SetVISIBLEIsNull;
    property OldVISIBLE : SmallInt read GetOldVISIBLEValue;
    property OldVISIBLEIsNull : Boolean read GetOldVISIBLEIsNull;

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

  end;

implementation

uses
  Variants, uROBinaryHelpers, uDAInterfaces;

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

destructor TMedicacionBusinessProcessorRules.Destroy;
begin
  inherited;
end;

function TMedicacionBusinessProcessorRules.GetIDValue: Integer;
begin
  result := BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionID];
end;

function TMedicacionBusinessProcessorRules.GetIDIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionID]);
end;

function TMedicacionBusinessProcessorRules.GetOldIDValue: Integer;
begin
  result := BusinessProcessor.CurrentChange.OldValueByName[fld_MedicacionID];
end;

function TMedicacionBusinessProcessorRules.GetOldIDIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_MedicacionID]);
end;

procedure TMedicacionBusinessProcessorRules.SetIDValue(const aValue: Integer);
begin
  BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionID] := aValue;
end;

procedure TMedicacionBusinessProcessorRules.SetIDIsNull(const aValue: Boolean);
begin
  if aValue then
    BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionID] := Null;
end;

function TMedicacionBusinessProcessorRules.GetID_PACIENTEValue: Integer;
begin
  result := BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionID_PACIENTE];
end;

function TMedicacionBusinessProcessorRules.GetID_PACIENTEIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionID_PACIENTE]);
end;

function TMedicacionBusinessProcessorRules.GetOldID_PACIENTEValue: Integer;
begin
  result := BusinessProcessor.CurrentChange.OldValueByName[fld_MedicacionID_PACIENTE];
end;

function TMedicacionBusinessProcessorRules.GetOldID_PACIENTEIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_MedicacionID_PACIENTE]);
end;

procedure TMedicacionBusinessProcessorRules.SetID_PACIENTEValue(const aValue: Integer);
begin
  BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionID_PACIENTE] := aValue;
end;

procedure TMedicacionBusinessProcessorRules.SetID_PACIENTEIsNull(const aValue: Boolean);
begin
  if aValue then
    BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionID_PACIENTE] := Null;
end;

function TMedicacionBusinessProcessorRules.GetREFERENCIAValue: String;
begin
  result := BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionREFERENCIA];
end;

function TMedicacionBusinessProcessorRules.GetREFERENCIAIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionREFERENCIA]);
end;

function TMedicacionBusinessProcessorRules.GetOldREFERENCIAValue: String;
begin
  result := BusinessProcessor.CurrentChange.OldValueByName[fld_MedicacionREFERENCIA];
end;

function TMedicacionBusinessProcessorRules.GetOldREFERENCIAIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_MedicacionREFERENCIA]);
end;

procedure TMedicacionBusinessProcessorRules.SetREFERENCIAValue(const aValue: String);
begin
  BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionREFERENCIA] := aValue;
end;

procedure TMedicacionBusinessProcessorRules.SetREFERENCIAIsNull(const aValue: Boolean);
begin
  if aValue then
    BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionREFERENCIA] := Null;
end;

function TMedicacionBusinessProcessorRules.GetNOMBREValue: String;
begin
  result := BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionNOMBRE];
end;

function TMedicacionBusinessProcessorRules.GetNOMBREIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionNOMBRE]);
end;

function TMedicacionBusinessProcessorRules.GetOldNOMBREValue: String;
begin
  result := BusinessProcessor.CurrentChange.OldValueByName[fld_MedicacionNOMBRE];
end;

function TMedicacionBusinessProcessorRules.GetOldNOMBREIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_MedicacionNOMBRE]);
end;

procedure TMedicacionBusinessProcessorRules.SetNOMBREValue(const aValue: String);
begin
  BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionNOMBRE] := aValue;
end;

procedure TMedicacionBusinessProcessorRules.SetNOMBREIsNull(const aValue: Boolean);
begin
  if aValue then
    BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionNOMBRE] := Null;
end;

function TMedicacionBusinessProcessorRules.GetFECHA_DESDEValue: DateTime;
begin
  result := BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionFECHA_DESDE];
end;

function TMedicacionBusinessProcessorRules.GetFECHA_DESDEIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionFECHA_DESDE]);
end;

function TMedicacionBusinessProcessorRules.GetOldFECHA_DESDEValue: DateTime;
begin
  result := BusinessProcessor.CurrentChange.OldValueByName[fld_MedicacionFECHA_DESDE];
end;

function TMedicacionBusinessProcessorRules.GetOldFECHA_DESDEIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_MedicacionFECHA_DESDE]);
end;

procedure TMedicacionBusinessProcessorRules.SetFECHA_DESDEValue(const aValue: DateTime);
begin
  BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionFECHA_DESDE] := aValue;
end;

procedure TMedicacionBusinessProcessorRules.SetFECHA_DESDEIsNull(const aValue: Boolean);
begin
  if aValue then
    BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionFECHA_DESDE] := Null;
end;

function TMedicacionBusinessProcessorRules.GetFECHA_HASTAValue: DateTime;
begin
  result := BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionFECHA_HASTA];
end;

function TMedicacionBusinessProcessorRules.GetFECHA_HASTAIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionFECHA_HASTA]);
end;

function TMedicacionBusinessProcessorRules.GetOldFECHA_HASTAValue: DateTime;
begin
  result := BusinessProcessor.CurrentChange.OldValueByName[fld_MedicacionFECHA_HASTA];
end;

function TMedicacionBusinessProcessorRules.GetOldFECHA_HASTAIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_MedicacionFECHA_HASTA]);
end;

procedure TMedicacionBusinessProcessorRules.SetFECHA_HASTAValue(const aValue: DateTime);
begin
  BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionFECHA_HASTA] := aValue;
end;

procedure TMedicacionBusinessProcessorRules.SetFECHA_HASTAIsNull(const aValue: Boolean);
begin
  if aValue then
    BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionFECHA_HASTA] := Null;
end;

function TMedicacionBusinessProcessorRules.GetTIPOValue: String;
begin
  result := BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionTIPO];
end;

function TMedicacionBusinessProcessorRules.GetTIPOIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionTIPO]);
end;

function TMedicacionBusinessProcessorRules.GetOldTIPOValue: String;
begin
  result := BusinessProcessor.CurrentChange.OldValueByName[fld_MedicacionTIPO];
end;

function TMedicacionBusinessProcessorRules.GetOldTIPOIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_MedicacionTIPO]);
end;

procedure TMedicacionBusinessProcessorRules.SetTIPOValue(const aValue: String);
begin
  BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionTIPO] := aValue;
end;

procedure TMedicacionBusinessProcessorRules.SetTIPOIsNull(const aValue: Boolean);
begin
  if aValue then
    BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionTIPO] := Null;
end;

function TMedicacionBusinessProcessorRules.GetNUMERO_SSValue: String;
begin
  result := BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionNUMERO_SS];
end;

function TMedicacionBusinessProcessorRules.GetNUMERO_SSIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionNUMERO_SS]);
end;

function TMedicacionBusinessProcessorRules.GetOldNUMERO_SSValue: String;
begin
  result := BusinessProcessor.CurrentChange.OldValueByName[fld_MedicacionNUMERO_SS];
end;

function TMedicacionBusinessProcessorRules.GetOldNUMERO_SSIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_MedicacionNUMERO_SS]);
end;

procedure TMedicacionBusinessProcessorRules.SetNUMERO_SSValue(const aValue: String);
begin
  BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionNUMERO_SS] := aValue;
end;

procedure TMedicacionBusinessProcessorRules.SetNUMERO_SSIsNull(const aValue: Boolean);
begin
  if aValue then
    BusinessProcessor.CurrentChange.NewValueByName[fld_MedicacionNUMERO_SS] := Null;
end;


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

destructor TMedicacion_DetallesBusinessProcessorRules.Destroy;
begin
  inherited;
end;

function TMedicacion_DetallesBusinessProcessorRules.GetIDValue: Integer;
begin
  result := BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesID];
end;

function TMedicacion_DetallesBusinessProcessorRules.GetIDIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesID]);
end;

function TMedicacion_DetallesBusinessProcessorRules.GetOldIDValue: Integer;
begin
  result := BusinessProcessor.CurrentChange.OldValueByName[fld_Medicacion_DetallesID];
end;

function TMedicacion_DetallesBusinessProcessorRules.GetOldIDIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Medicacion_DetallesID]);
end;

procedure TMedicacion_DetallesBusinessProcessorRules.SetIDValue(const aValue: Integer);
begin
  BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesID] := aValue;
end;

procedure TMedicacion_DetallesBusinessProcessorRules.SetIDIsNull(const aValue: Boolean);
begin
  if aValue then
    BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesID] := Null;
end;

function TMedicacion_DetallesBusinessProcessorRules.GetID_MEDICACIONValue: Integer;
begin
  result := BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesID_MEDICACION];
end;

function TMedicacion_DetallesBusinessProcessorRules.GetID_MEDICACIONIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesID_MEDICACION]);
end;

function TMedicacion_DetallesBusinessProcessorRules.GetOldID_MEDICACIONValue: Integer;
begin
  result := BusinessProcessor.CurrentChange.OldValueByName[fld_Medicacion_DetallesID_MEDICACION];
end;

function TMedicacion_DetallesBusinessProcessorRules.GetOldID_MEDICACIONIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Medicacion_DetallesID_MEDICACION]);
end;

procedure TMedicacion_DetallesBusinessProcessorRules.SetID_MEDICACIONValue(const aValue: Integer);
begin
  BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesID_MEDICACION] := aValue;
end;

procedure TMedicacion_DetallesBusinessProcessorRules.SetID_MEDICACIONIsNull(const aValue: Boolean);
begin
  if aValue then
    BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesID_MEDICACION] := Null;
end;

function TMedicacion_DetallesBusinessProcessorRules.GetPOSICIONValue: Integer;
begin
  result := BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesPOSICION];
end;

function TMedicacion_DetallesBusinessProcessorRules.GetPOSICIONIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesPOSICION]);
end;

function TMedicacion_DetallesBusinessProcessorRules.GetOldPOSICIONValue: Integer;
begin
  result := BusinessProcessor.CurrentChange.OldValueByName[fld_Medicacion_DetallesPOSICION];
end;

function TMedicacion_DetallesBusinessProcessorRules.GetOldPOSICIONIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Medicacion_DetallesPOSICION]);
end;

procedure TMedicacion_DetallesBusinessProcessorRules.SetPOSICIONValue(const aValue: Integer);
begin
  BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesPOSICION] := aValue;
end;

procedure TMedicacion_DetallesBusinessProcessorRules.SetPOSICIONIsNull(const aValue: Boolean);
begin
  if aValue then
    BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesPOSICION] := Null;
end;

function TMedicacion_DetallesBusinessProcessorRules.GetTIPO_DETALLEValue: String;
begin
  result := BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesTIPO_DETALLE];
end;

function TMedicacion_DetallesBusinessProcessorRules.GetTIPO_DETALLEIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesTIPO_DETALLE]);
end;

function TMedicacion_DetallesBusinessProcessorRules.GetOldTIPO_DETALLEValue: String;
begin
  result := BusinessProcessor.CurrentChange.OldValueByName[fld_Medicacion_DetallesTIPO_DETALLE];
end;

function TMedicacion_DetallesBusinessProcessorRules.GetOldTIPO_DETALLEIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Medicacion_DetallesTIPO_DETALLE]);
end;

procedure TMedicacion_DetallesBusinessProcessorRules.SetTIPO_DETALLEValue(const aValue: String);
begin
  BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesTIPO_DETALLE] := aValue;
end;

procedure TMedicacion_DetallesBusinessProcessorRules.SetTIPO_DETALLEIsNull(const aValue: Boolean);
begin
  if aValue then
    BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesTIPO_DETALLE] := Null;
end;

function TMedicacion_DetallesBusinessProcessorRules.GetID_ARTICULOValue: Integer;
begin
  result := BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesID_ARTICULO];
end;

function TMedicacion_DetallesBusinessProcessorRules.GetID_ARTICULOIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesID_ARTICULO]);
end;

function TMedicacion_DetallesBusinessProcessorRules.GetOldID_ARTICULOValue: Integer;
begin
  result := BusinessProcessor.CurrentChange.OldValueByName[fld_Medicacion_DetallesID_ARTICULO];
end;

function TMedicacion_DetallesBusinessProcessorRules.GetOldID_ARTICULOIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Medicacion_DetallesID_ARTICULO]);
end;

procedure TMedicacion_DetallesBusinessProcessorRules.SetID_ARTICULOValue(const aValue: Integer);
begin
  BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesID_ARTICULO] := aValue;
end;

procedure TMedicacion_DetallesBusinessProcessorRules.SetID_ARTICULOIsNull(const aValue: Boolean);
begin
  if aValue then
    BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesID_ARTICULO] := Null;
end;

function TMedicacion_DetallesBusinessProcessorRules.GetREFERENCIAValue: String;
begin
  result := BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesREFERENCIA];
end;

function TMedicacion_DetallesBusinessProcessorRules.GetREFERENCIAIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesREFERENCIA]);
end;

function TMedicacion_DetallesBusinessProcessorRules.GetOldREFERENCIAValue: String;
begin
  result := BusinessProcessor.CurrentChange.OldValueByName[fld_Medicacion_DetallesREFERENCIA];
end;

function TMedicacion_DetallesBusinessProcessorRules.GetOldREFERENCIAIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Medicacion_DetallesREFERENCIA]);
end;

procedure TMedicacion_DetallesBusinessProcessorRules.SetREFERENCIAValue(const aValue: String);
begin
  BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesREFERENCIA] := aValue;
end;

procedure TMedicacion_DetallesBusinessProcessorRules.SetREFERENCIAIsNull(const aValue: Boolean);
begin
  if aValue then
    BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesREFERENCIA] := Null;
end;

function TMedicacion_DetallesBusinessProcessorRules.GetCONCEPTOValue: String;
begin
  result := BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesCONCEPTO];
end;

function TMedicacion_DetallesBusinessProcessorRules.GetCONCEPTOIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesCONCEPTO]);
end;

function TMedicacion_DetallesBusinessProcessorRules.GetOldCONCEPTOValue: String;
begin
  result := BusinessProcessor.CurrentChange.OldValueByName[fld_Medicacion_DetallesCONCEPTO];
end;

function TMedicacion_DetallesBusinessProcessorRules.GetOldCONCEPTOIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Medicacion_DetallesCONCEPTO]);
end;

procedure TMedicacion_DetallesBusinessProcessorRules.SetCONCEPTOValue(const aValue: String);
begin
  BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesCONCEPTO] := aValue;
end;

procedure TMedicacion_DetallesBusinessProcessorRules.SetCONCEPTOIsNull(const aValue: Boolean);
begin
  if aValue then
    BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesCONCEPTO] := Null;
end;

function TMedicacion_DetallesBusinessProcessorRules.GetCANTIDADValue: Currency;
begin
  result := BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesCANTIDAD];
end;

function TMedicacion_DetallesBusinessProcessorRules.GetCANTIDADIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesCANTIDAD]);
end;

function TMedicacion_DetallesBusinessProcessorRules.GetOldCANTIDADValue: Currency;
begin
  result := BusinessProcessor.CurrentChange.OldValueByName[fld_Medicacion_DetallesCANTIDAD];
end;

function TMedicacion_DetallesBusinessProcessorRules.GetOldCANTIDADIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Medicacion_DetallesCANTIDAD]);
end;

procedure TMedicacion_DetallesBusinessProcessorRules.SetCANTIDADValue(const aValue: Currency);
begin
  BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesCANTIDAD] := aValue;
end;

procedure TMedicacion_DetallesBusinessProcessorRules.SetCANTIDADIsNull(const aValue: Boolean);
begin
  if aValue then
    BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesCANTIDAD] := Null;
end;

function TMedicacion_DetallesBusinessProcessorRules.GetPOSOLOGIAValue: String;
begin
  result := BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesPOSOLOGIA];
end;

function TMedicacion_DetallesBusinessProcessorRules.GetPOSOLOGIAIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesPOSOLOGIA]);
end;

function TMedicacion_DetallesBusinessProcessorRules.GetOldPOSOLOGIAValue: String;
begin
  result := BusinessProcessor.CurrentChange.OldValueByName[fld_Medicacion_DetallesPOSOLOGIA];
end;

function TMedicacion_DetallesBusinessProcessorRules.GetOldPOSOLOGIAIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Medicacion_DetallesPOSOLOGIA]);
end;

procedure TMedicacion_DetallesBusinessProcessorRules.SetPOSOLOGIAValue(const aValue: String);
begin
  BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesPOSOLOGIA] := aValue;
end;

procedure TMedicacion_DetallesBusinessProcessorRules.SetPOSOLOGIAIsNull(const aValue: Boolean);
begin
  if aValue then
    BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesPOSOLOGIA] := Null;
end;

function TMedicacion_DetallesBusinessProcessorRules.GetFORMA_COLORValue: String;
begin
  result := BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesFORMA_COLOR];
end;

function TMedicacion_DetallesBusinessProcessorRules.GetFORMA_COLORIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesFORMA_COLOR]);
end;

function TMedicacion_DetallesBusinessProcessorRules.GetOldFORMA_COLORValue: String;
begin
  result := BusinessProcessor.CurrentChange.OldValueByName[fld_Medicacion_DetallesFORMA_COLOR];
end;

function TMedicacion_DetallesBusinessProcessorRules.GetOldFORMA_COLORIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Medicacion_DetallesFORMA_COLOR]);
end;

procedure TMedicacion_DetallesBusinessProcessorRules.SetFORMA_COLORValue(const aValue: String);
begin
  BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesFORMA_COLOR] := aValue;
end;

procedure TMedicacion_DetallesBusinessProcessorRules.SetFORMA_COLORIsNull(const aValue: Boolean);
begin
  if aValue then
    BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesFORMA_COLOR] := Null;
end;

function TMedicacion_DetallesBusinessProcessorRules.GetLOTEValue: String;
begin
  result := BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesLOTE];
end;

function TMedicacion_DetallesBusinessProcessorRules.GetLOTEIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesLOTE]);
end;

function TMedicacion_DetallesBusinessProcessorRules.GetOldLOTEValue: String;
begin
  result := BusinessProcessor.CurrentChange.OldValueByName[fld_Medicacion_DetallesLOTE];
end;

function TMedicacion_DetallesBusinessProcessorRules.GetOldLOTEIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Medicacion_DetallesLOTE]);
end;

procedure TMedicacion_DetallesBusinessProcessorRules.SetLOTEValue(const aValue: String);
begin
  BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesLOTE] := aValue;
end;

procedure TMedicacion_DetallesBusinessProcessorRules.SetLOTEIsNull(const aValue: Boolean);
begin
  if aValue then
    BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesLOTE] := Null;
end;

function TMedicacion_DetallesBusinessProcessorRules.GetVISIBLEValue: SmallInt;
begin
  result := BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesVISIBLE];
end;

function TMedicacion_DetallesBusinessProcessorRules.GetVISIBLEIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesVISIBLE]);
end;

function TMedicacion_DetallesBusinessProcessorRules.GetOldVISIBLEValue: SmallInt;
begin
  result := BusinessProcessor.CurrentChange.OldValueByName[fld_Medicacion_DetallesVISIBLE];
end;

function TMedicacion_DetallesBusinessProcessorRules.GetOldVISIBLEIsNull: Boolean;
begin
  result := VarIsNull(BusinessProcessor.CurrentChange.OldValueByName[fld_Medicacion_DetallesVISIBLE]);
end;

procedure TMedicacion_DetallesBusinessProcessorRules.SetVISIBLEValue(const aValue: SmallInt);
begin
  BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesVISIBLE] := aValue;
end;

procedure TMedicacion_DetallesBusinessProcessorRules.SetVISIBLEIsNull(const aValue: Boolean);
begin
  if aValue then
    BusinessProcessor.CurrentChange.NewValueByName[fld_Medicacion_DetallesVISIBLE] := Null;
end;


initialization
  RegisterBusinessProcessorRules(RID_MedicacionDelta, TMedicacionBusinessProcessorRules);
  RegisterBusinessProcessorRules(RID_Medicacion_DetallesDelta, TMedicacion_DetallesBusinessProcessorRules);

end.
