unit schPresupuestosClient_Intf;

interface

uses
  Classes, DB, SysUtils, uROClasses, uDADataTable;

const
  { Data table 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_darReferencia = '{B0F5BE35-1320-456B-B976-1ED086EFFE26}';
  RID_Presupuestos = '{2622DAA6-0BE7-40CD-B788-338044C36767}';
  RID_Presupuestos_Detalles = '{A664AE8C-2E1B-4273-BA7C-AFE8856E19EB}';
  RID_Presupuestos_Refresh = '{304831CC-9E69-442E-9D3D-92234AC17C1A}';

  { Data table names }
  nme_darReferencia = 'darReferencia';
  nme_Presupuestos = 'Presupuestos';
  nme_Presupuestos_Detalles = 'Presupuestos_Detalles';
  nme_Presupuestos_Refresh = 'Presupuestos_Refresh';

  { darReferencia fields }
  fld_darReferenciaVALOR = 'VALOR';

  { darReferencia field indexes }
  idx_darReferenciaVALOR = 0;

  { Presupuestos fields }
  fld_PresupuestosID = 'ID';
  fld_PresupuestosID_EMPRESA = 'ID_EMPRESA';
  fld_PresupuestosID_CLIENTE = 'ID_CLIENTE';
  fld_PresupuestosNOMBRE = 'NOMBRE';
  fld_PresupuestosNIF_CIF = 'NIF_CIF';
  fld_PresupuestosCALLE = 'CALLE';
  fld_PresupuestosPOBLACION = 'POBLACION';
  fld_PresupuestosPROVINCIA = 'PROVINCIA';
  fld_PresupuestosCODIGO_POSTAL = 'CODIGO_POSTAL';
  fld_PresupuestosTELEFONO_1 = 'TELEFONO_1';
  fld_PresupuestosTELEFONO_2 = 'TELEFONO_2';
  fld_PresupuestosFAX = 'FAX';
  fld_PresupuestosMOVIL_1 = 'MOVIL_1';
  fld_PresupuestosMOVIL_2 = 'MOVIL_2';
  fld_PresupuestosEMAIL_1 = 'EMAIL_1';
  fld_PresupuestosEMAIL_2 = 'EMAIL_2';
  fld_PresupuestosID_VENDEDOR = 'ID_VENDEDOR';
  fld_PresupuestosREFERENCIA = 'REFERENCIA';
  fld_PresupuestosFECHA_PRESUPUESTO = 'FECHA_PRESUPUESTO';
  fld_PresupuestosVIGENCIA = 'VIGENCIA';
  fld_PresupuestosSITUACION = 'SITUACION';
  fld_PresupuestosFECHA_DECISION = 'FECHA_DECISION';
  fld_PresupuestosBASE_IMPONIBLE = 'BASE_IMPONIBLE';
  fld_PresupuestosDESCUENTO = 'DESCUENTO';
  fld_PresupuestosIMPORTE_DESCUENTO = 'IMPORTE_DESCUENTO';
  fld_PresupuestosIVA = 'IVA';
  fld_PresupuestosIMPORTE_IVA = 'IMPORTE_IVA';
  fld_PresupuestosIMPORTE_TOTAL = 'IMPORTE_TOTAL';
  fld_PresupuestosOBSERVACIONES = 'OBSERVACIONES';
  fld_PresupuestosPLAZO_ENTREGA = 'PLAZO_ENTREGA';
  fld_PresupuestosFORMA_PAGO = 'FORMA_PAGO';
  fld_PresupuestosFECHA_ALTA = 'FECHA_ALTA';
  fld_PresupuestosFECHA_MODIFICACION = 'FECHA_MODIFICACION';
  fld_PresupuestosUSUARIO = 'USUARIO';
  fld_PresupuestosFECHA_VALIDEZ = 'FECHA_VALIDEZ';
  fld_PresupuestosID_MONTAJE = 'ID_MONTAJE';

  { Presupuestos field indexes }
  idx_PresupuestosID = 0;
  idx_PresupuestosID_EMPRESA = 1;
  idx_PresupuestosID_CLIENTE = 2;
  idx_PresupuestosNOMBRE = 3;
  idx_PresupuestosNIF_CIF = 4;
  idx_PresupuestosCALLE = 5;
  idx_PresupuestosPOBLACION = 6;
  idx_PresupuestosPROVINCIA = 7;
  idx_PresupuestosCODIGO_POSTAL = 8;
  idx_PresupuestosTELEFONO_1 = 9;
  idx_PresupuestosTELEFONO_2 = 10;
  idx_PresupuestosFAX = 11;
  idx_PresupuestosMOVIL_1 = 12;
  idx_PresupuestosMOVIL_2 = 13;
  idx_PresupuestosEMAIL_1 = 14;
  idx_PresupuestosEMAIL_2 = 15;
  idx_PresupuestosID_VENDEDOR = 16;
  idx_PresupuestosREFERENCIA = 17;
  idx_PresupuestosFECHA_PRESUPUESTO = 18;
  idx_PresupuestosVIGENCIA = 19;
  idx_PresupuestosSITUACION = 20;
  idx_PresupuestosFECHA_DECISION = 21;
  idx_PresupuestosBASE_IMPONIBLE = 22;
  idx_PresupuestosDESCUENTO = 23;
  idx_PresupuestosIMPORTE_DESCUENTO = 24;
  idx_PresupuestosIVA = 25;
  idx_PresupuestosIMPORTE_IVA = 26;
  idx_PresupuestosIMPORTE_TOTAL = 27;
  idx_PresupuestosOBSERVACIONES = 28;
  idx_PresupuestosPLAZO_ENTREGA = 29;
  idx_PresupuestosFORMA_PAGO = 30;
  idx_PresupuestosFECHA_ALTA = 31;
  idx_PresupuestosFECHA_MODIFICACION = 32;
  idx_PresupuestosUSUARIO = 33;
  idx_PresupuestosFECHA_VALIDEZ = 34;
  idx_PresupuestosID_MONTAJE = 35;

  { Presupuestos_Detalles fields }
  fld_Presupuestos_DetallesID = 'ID';
  fld_Presupuestos_DetallesID_PRESUPUESTO = 'ID_PRESUPUESTO';
  fld_Presupuestos_DetallesPOSICION = 'POSICION';
  fld_Presupuestos_DetallesTIPO_DETALLE = 'TIPO_DETALLE';
  fld_Presupuestos_DetallesCONCEPTO = 'CONCEPTO';
  fld_Presupuestos_DetallesCANTIDAD = 'CANTIDAD';
  fld_Presupuestos_DetallesPUNTOS = 'PUNTOS';
  fld_Presupuestos_DetallesIMPORTE_PUNTOS = 'IMPORTE_PUNTOS';
  fld_Presupuestos_DetallesIMPORTE_UNIDAD = 'IMPORTE_UNIDAD';
  fld_Presupuestos_DetallesDESCUENTO = 'DESCUENTO';
  fld_Presupuestos_DetallesIMPORTE_TOTAL = 'IMPORTE_TOTAL';
  fld_Presupuestos_DetallesVISIBLE = 'VISIBLE';

  { Presupuestos_Detalles field indexes }
  idx_Presupuestos_DetallesID = 0;
  idx_Presupuestos_DetallesID_PRESUPUESTO = 1;
  idx_Presupuestos_DetallesPOSICION = 2;
  idx_Presupuestos_DetallesTIPO_DETALLE = 3;
  idx_Presupuestos_DetallesCONCEPTO = 4;
  idx_Presupuestos_DetallesCANTIDAD = 5;
  idx_Presupuestos_DetallesPUNTOS = 6;
  idx_Presupuestos_DetallesIMPORTE_PUNTOS = 7;
  idx_Presupuestos_DetallesIMPORTE_UNIDAD = 8;
  idx_Presupuestos_DetallesDESCUENTO = 9;
  idx_Presupuestos_DetallesIMPORTE_TOTAL = 10;
  idx_Presupuestos_DetallesVISIBLE = 11;

  { Presupuestos_Refresh fields }
  fld_Presupuestos_RefreshID = 'ID';
  fld_Presupuestos_RefreshID_EMPRESA = 'ID_EMPRESA';
  fld_Presupuestos_RefreshID_CLIENTE = 'ID_CLIENTE';
  fld_Presupuestos_RefreshNOMBRE = 'NOMBRE';
  fld_Presupuestos_RefreshNIF_CIF = 'NIF_CIF';
  fld_Presupuestos_RefreshCALLE = 'CALLE';
  fld_Presupuestos_RefreshPOBLACION = 'POBLACION';
  fld_Presupuestos_RefreshPROVINCIA = 'PROVINCIA';
  fld_Presupuestos_RefreshCODIGO_POSTAL = 'CODIGO_POSTAL';
  fld_Presupuestos_RefreshTELEFONO_1 = 'TELEFONO_1';
  fld_Presupuestos_RefreshTELEFONO_2 = 'TELEFONO_2';
  fld_Presupuestos_RefreshFAX = 'FAX';
  fld_Presupuestos_RefreshMOVIL_1 = 'MOVIL_1';
  fld_Presupuestos_RefreshMOVIL_2 = 'MOVIL_2';
  fld_Presupuestos_RefreshEMAIL_1 = 'EMAIL_1';
  fld_Presupuestos_RefreshEMAIL_2 = 'EMAIL_2';
  fld_Presupuestos_RefreshID_VENDEDOR = 'ID_VENDEDOR';
  fld_Presupuestos_RefreshREFERENCIA = 'REFERENCIA';
  fld_Presupuestos_RefreshFECHA_PRESUPUESTO = 'FECHA_PRESUPUESTO';
  fld_Presupuestos_RefreshVIGENCIA = 'VIGENCIA';
  fld_Presupuestos_RefreshSITUACION = 'SITUACION';
  fld_Presupuestos_RefreshFECHA_DECISION = 'FECHA_DECISION';
  fld_Presupuestos_RefreshBASE_IMPONIBLE = 'BASE_IMPONIBLE';
  fld_Presupuestos_RefreshDESCUENTO = 'DESCUENTO';
  fld_Presupuestos_RefreshIMPORTE_DESCUENTO = 'IMPORTE_DESCUENTO';
  fld_Presupuestos_RefreshIVA = 'IVA';
  fld_Presupuestos_RefreshIMPORTE_IVA = 'IMPORTE_IVA';
  fld_Presupuestos_RefreshIMPORTE_TOTAL = 'IMPORTE_TOTAL';
  fld_Presupuestos_RefreshOBSERVACIONES = 'OBSERVACIONES';
  fld_Presupuestos_RefreshPLAZO_ENTREGA = 'PLAZO_ENTREGA';
  fld_Presupuestos_RefreshFORMA_PAGO = 'FORMA_PAGO';
  fld_Presupuestos_RefreshFECHA_ALTA = 'FECHA_ALTA';
  fld_Presupuestos_RefreshFECHA_MODIFICACION = 'FECHA_MODIFICACION';
  fld_Presupuestos_RefreshUSUARIO = 'USUARIO';
  fld_Presupuestos_RefreshFECHA_VALIDEZ = 'FECHA_VALIDEZ';
  fld_Presupuestos_RefreshID_MONTAJE = 'ID_MONTAJE';

  { Presupuestos_Refresh field indexes }
  idx_Presupuestos_RefreshID = 0;
  idx_Presupuestos_RefreshID_EMPRESA = 1;
  idx_Presupuestos_RefreshID_CLIENTE = 2;
  idx_Presupuestos_RefreshNOMBRE = 3;
  idx_Presupuestos_RefreshNIF_CIF = 4;
  idx_Presupuestos_RefreshCALLE = 5;
  idx_Presupuestos_RefreshPOBLACION = 6;
  idx_Presupuestos_RefreshPROVINCIA = 7;
  idx_Presupuestos_RefreshCODIGO_POSTAL = 8;
  idx_Presupuestos_RefreshTELEFONO_1 = 9;
  idx_Presupuestos_RefreshTELEFONO_2 = 10;
  idx_Presupuestos_RefreshFAX = 11;
  idx_Presupuestos_RefreshMOVIL_1 = 12;
  idx_Presupuestos_RefreshMOVIL_2 = 13;
  idx_Presupuestos_RefreshEMAIL_1 = 14;
  idx_Presupuestos_RefreshEMAIL_2 = 15;
  idx_Presupuestos_RefreshID_VENDEDOR = 16;
  idx_Presupuestos_RefreshREFERENCIA = 17;
  idx_Presupuestos_RefreshFECHA_PRESUPUESTO = 18;
  idx_Presupuestos_RefreshVIGENCIA = 19;
  idx_Presupuestos_RefreshSITUACION = 20;
  idx_Presupuestos_RefreshFECHA_DECISION = 21;
  idx_Presupuestos_RefreshBASE_IMPONIBLE = 22;
  idx_Presupuestos_RefreshDESCUENTO = 23;
  idx_Presupuestos_RefreshIMPORTE_DESCUENTO = 24;
  idx_Presupuestos_RefreshIVA = 25;
  idx_Presupuestos_RefreshIMPORTE_IVA = 26;
  idx_Presupuestos_RefreshIMPORTE_TOTAL = 27;
  idx_Presupuestos_RefreshOBSERVACIONES = 28;
  idx_Presupuestos_RefreshPLAZO_ENTREGA = 29;
  idx_Presupuestos_RefreshFORMA_PAGO = 30;
  idx_Presupuestos_RefreshFECHA_ALTA = 31;
  idx_Presupuestos_RefreshFECHA_MODIFICACION = 32;
  idx_Presupuestos_RefreshUSUARIO = 33;
  idx_Presupuestos_RefreshFECHA_VALIDEZ = 34;
  idx_Presupuestos_RefreshID_MONTAJE = 35;

type
  { IdarReferencia }
  IdarReferencia = interface(IDAStronglyTypedDataTable)
  ['{0470BFD0-9030-453B-8256-FB74514D9B75}']
    { Property getters and setters }
    function GetVALORValue: String;
    procedure SetVALORValue(const aValue: String);


    { Properties }
    property VALOR: String read GetVALORValue write SetVALORValue;
  end;

  { TdarReferenciaDataTableRules }
  TdarReferenciaDataTableRules = class(TDADataTableRules, IdarReferencia)
  private
  protected
    { Property getters and setters }
    function GetVALORValue: String; virtual;
    procedure SetVALORValue(const aValue: String); virtual;

    { Properties }
    property VALOR: String read GetVALORValue write SetVALORValue;

  public
    constructor Create(aDataTable: TDADataTable); override;
    destructor Destroy; override;

  end;

  { IPresupuestos }
  IPresupuestos = interface(IDAStronglyTypedDataTable)
  ['{435C38F5-3A91-45C6-B9B5-516C5C57862A}']
    { Property getters and setters }
    function GetIDValue: Integer;
    procedure SetIDValue(const aValue: Integer);
    function GetID_EMPRESAValue: Integer;
    procedure SetID_EMPRESAValue(const aValue: Integer);
    function GetID_CLIENTEValue: Integer;
    procedure SetID_CLIENTEValue(const aValue: Integer);
    function GetNOMBREValue: String;
    procedure SetNOMBREValue(const aValue: String);
    function GetNIF_CIFValue: String;
    procedure SetNIF_CIFValue(const aValue: String);
    function GetCALLEValue: String;
    procedure SetCALLEValue(const aValue: String);
    function GetPOBLACIONValue: String;
    procedure SetPOBLACIONValue(const aValue: String);
    function GetPROVINCIAValue: String;
    procedure SetPROVINCIAValue(const aValue: String);
    function GetCODIGO_POSTALValue: String;
    procedure SetCODIGO_POSTALValue(const aValue: String);
    function GetTELEFONO_1Value: String;
    procedure SetTELEFONO_1Value(const aValue: String);
    function GetTELEFONO_2Value: String;
    procedure SetTELEFONO_2Value(const aValue: String);
    function GetFAXValue: String;
    procedure SetFAXValue(const aValue: String);
    function GetMOVIL_1Value: String;
    procedure SetMOVIL_1Value(const aValue: String);
    function GetMOVIL_2Value: String;
    procedure SetMOVIL_2Value(const aValue: String);
    function GetEMAIL_1Value: String;
    procedure SetEMAIL_1Value(const aValue: String);
    function GetEMAIL_2Value: String;
    procedure SetEMAIL_2Value(const aValue: String);
    function GetID_VENDEDORValue: Integer;
    procedure SetID_VENDEDORValue(const aValue: Integer);
    function GetREFERENCIAValue: String;
    procedure SetREFERENCIAValue(const aValue: String);
    function GetFECHA_PRESUPUESTOValue: DateTime;
    procedure SetFECHA_PRESUPUESTOValue(const aValue: DateTime);
    function GetVIGENCIAValue: Integer;
    procedure SetVIGENCIAValue(const aValue: Integer);
    function GetSITUACIONValue: String;
    procedure SetSITUACIONValue(const aValue: String);
    function GetFECHA_DECISIONValue: DateTime;
    procedure SetFECHA_DECISIONValue(const aValue: DateTime);
    function GetBASE_IMPONIBLEValue: Float;
    procedure SetBASE_IMPONIBLEValue(const aValue: Float);
    function GetDESCUENTOValue: Float;
    procedure SetDESCUENTOValue(const aValue: Float);
    function GetIMPORTE_DESCUENTOValue: Float;
    procedure SetIMPORTE_DESCUENTOValue(const aValue: Float);
    function GetIVAValue: Float;
    procedure SetIVAValue(const aValue: Float);
    function GetIMPORTE_IVAValue: Float;
    procedure SetIMPORTE_IVAValue(const aValue: Float);
    function GetIMPORTE_TOTALValue: Float;
    procedure SetIMPORTE_TOTALValue(const aValue: Float);
    function GetOBSERVACIONESValue: IROStrings;
    procedure SetOBSERVACIONESValue(const aValue: IROStrings);
    function GetPLAZO_ENTREGAValue: IROStrings;
    procedure SetPLAZO_ENTREGAValue(const aValue: IROStrings);
    function GetFORMA_PAGOValue: IROStrings;
    procedure SetFORMA_PAGOValue(const aValue: IROStrings);
    function GetFECHA_ALTAValue: DateTime;
    procedure SetFECHA_ALTAValue(const aValue: DateTime);
    function GetFECHA_MODIFICACIONValue: DateTime;
    procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime);
    function GetUSUARIOValue: String;
    procedure SetUSUARIOValue(const aValue: String);
    function GetFECHA_VALIDEZValue: DateTime;
    procedure SetFECHA_VALIDEZValue(const aValue: DateTime);
    function GetID_MONTAJEValue: Integer;
    procedure SetID_MONTAJEValue(const aValue: Integer);


    { Properties }
    property ID: Integer read GetIDValue write SetIDValue;
    property ID_EMPRESA: Integer read GetID_EMPRESAValue write SetID_EMPRESAValue;
    property ID_CLIENTE: Integer read GetID_CLIENTEValue write SetID_CLIENTEValue;
    property NOMBRE: String read GetNOMBREValue write SetNOMBREValue;
    property NIF_CIF: String read GetNIF_CIFValue write SetNIF_CIFValue;
    property CALLE: String read GetCALLEValue write SetCALLEValue;
    property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue;
    property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue;
    property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue;
    property TELEFONO_1: String read GetTELEFONO_1Value write SetTELEFONO_1Value;
    property TELEFONO_2: String read GetTELEFONO_2Value write SetTELEFONO_2Value;
    property FAX: String read GetFAXValue write SetFAXValue;
    property MOVIL_1: String read GetMOVIL_1Value write SetMOVIL_1Value;
    property MOVIL_2: String read GetMOVIL_2Value write SetMOVIL_2Value;
    property EMAIL_1: String read GetEMAIL_1Value write SetEMAIL_1Value;
    property EMAIL_2: String read GetEMAIL_2Value write SetEMAIL_2Value;
    property ID_VENDEDOR: Integer read GetID_VENDEDORValue write SetID_VENDEDORValue;
    property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue;
    property FECHA_PRESUPUESTO: DateTime read GetFECHA_PRESUPUESTOValue write SetFECHA_PRESUPUESTOValue;
    property VIGENCIA: Integer read GetVIGENCIAValue write SetVIGENCIAValue;
    property SITUACION: String read GetSITUACIONValue write SetSITUACIONValue;
    property FECHA_DECISION: DateTime read GetFECHA_DECISIONValue write SetFECHA_DECISIONValue;
    property BASE_IMPONIBLE: Float read GetBASE_IMPONIBLEValue write SetBASE_IMPONIBLEValue;
    property DESCUENTO: Float read GetDESCUENTOValue write SetDESCUENTOValue;
    property IMPORTE_DESCUENTO: Float read GetIMPORTE_DESCUENTOValue write SetIMPORTE_DESCUENTOValue;
    property IVA: Float read GetIVAValue write SetIVAValue;
    property IMPORTE_IVA: Float read GetIMPORTE_IVAValue write SetIMPORTE_IVAValue;
    property IMPORTE_TOTAL: Float read GetIMPORTE_TOTALValue write SetIMPORTE_TOTALValue;
    property OBSERVACIONES: IROStrings read GetOBSERVACIONESValue write SetOBSERVACIONESValue;
    property PLAZO_ENTREGA: IROStrings read GetPLAZO_ENTREGAValue write SetPLAZO_ENTREGAValue;
    property FORMA_PAGO: IROStrings read GetFORMA_PAGOValue write SetFORMA_PAGOValue;
    property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue;
    property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue;
    property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue;
    property FECHA_VALIDEZ: DateTime read GetFECHA_VALIDEZValue write SetFECHA_VALIDEZValue;
    property ID_MONTAJE: Integer read GetID_MONTAJEValue write SetID_MONTAJEValue;
  end;

  { TPresupuestosDataTableRules }
  TPresupuestosDataTableRules = class(TDADataTableRules, IPresupuestos)
  private
  protected
    { Property getters and setters }
    function GetIDValue: Integer; virtual;
    procedure SetIDValue(const aValue: Integer); virtual;
    function GetID_EMPRESAValue: Integer; virtual;
    procedure SetID_EMPRESAValue(const aValue: Integer); virtual;
    function GetID_CLIENTEValue: Integer; virtual;
    procedure SetID_CLIENTEValue(const aValue: Integer); virtual;
    function GetNOMBREValue: String; virtual;
    procedure SetNOMBREValue(const aValue: String); virtual;
    function GetNIF_CIFValue: String; virtual;
    procedure SetNIF_CIFValue(const aValue: String); virtual;
    function GetCALLEValue: String; virtual;
    procedure SetCALLEValue(const aValue: String); virtual;
    function GetPOBLACIONValue: String; virtual;
    procedure SetPOBLACIONValue(const aValue: String); virtual;
    function GetPROVINCIAValue: String; virtual;
    procedure SetPROVINCIAValue(const aValue: String); virtual;
    function GetCODIGO_POSTALValue: String; virtual;
    procedure SetCODIGO_POSTALValue(const aValue: String); virtual;
    function GetTELEFONO_1Value: String; virtual;
    procedure SetTELEFONO_1Value(const aValue: String); virtual;
    function GetTELEFONO_2Value: String; virtual;
    procedure SetTELEFONO_2Value(const aValue: String); virtual;
    function GetFAXValue: String; virtual;
    procedure SetFAXValue(const aValue: String); virtual;
    function GetMOVIL_1Value: String; virtual;
    procedure SetMOVIL_1Value(const aValue: String); virtual;
    function GetMOVIL_2Value: String; virtual;
    procedure SetMOVIL_2Value(const aValue: String); virtual;
    function GetEMAIL_1Value: String; virtual;
    procedure SetEMAIL_1Value(const aValue: String); virtual;
    function GetEMAIL_2Value: String; virtual;
    procedure SetEMAIL_2Value(const aValue: String); virtual;
    function GetID_VENDEDORValue: Integer; virtual;
    procedure SetID_VENDEDORValue(const aValue: Integer); virtual;
    function GetREFERENCIAValue: String; virtual;
    procedure SetREFERENCIAValue(const aValue: String); virtual;
    function GetFECHA_PRESUPUESTOValue: DateTime; virtual;
    procedure SetFECHA_PRESUPUESTOValue(const aValue: DateTime); virtual;
    function GetVIGENCIAValue: Integer; virtual;
    procedure SetVIGENCIAValue(const aValue: Integer); virtual;
    function GetSITUACIONValue: String; virtual;
    procedure SetSITUACIONValue(const aValue: String); virtual;
    function GetFECHA_DECISIONValue: DateTime; virtual;
    procedure SetFECHA_DECISIONValue(const aValue: DateTime); virtual;
    function GetBASE_IMPONIBLEValue: Float; virtual;
    procedure SetBASE_IMPONIBLEValue(const aValue: Float); virtual;
    function GetDESCUENTOValue: Float; virtual;
    procedure SetDESCUENTOValue(const aValue: Float); virtual;
    function GetIMPORTE_DESCUENTOValue: Float; virtual;
    procedure SetIMPORTE_DESCUENTOValue(const aValue: Float); virtual;
    function GetIVAValue: Float; virtual;
    procedure SetIVAValue(const aValue: Float); virtual;
    function GetIMPORTE_IVAValue: Float; virtual;
    procedure SetIMPORTE_IVAValue(const aValue: Float); virtual;
    function GetIMPORTE_TOTALValue: Float; virtual;
    procedure SetIMPORTE_TOTALValue(const aValue: Float); virtual;
    function GetOBSERVACIONESValue: IROStrings; virtual;
    procedure SetOBSERVACIONESValue(const aValue: IROStrings); virtual;
    function GetPLAZO_ENTREGAValue: IROStrings; virtual;
    procedure SetPLAZO_ENTREGAValue(const aValue: IROStrings); virtual;
    function GetFORMA_PAGOValue: IROStrings; virtual;
    procedure SetFORMA_PAGOValue(const aValue: IROStrings); virtual;
    function GetFECHA_ALTAValue: DateTime; virtual;
    procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual;
    function GetFECHA_MODIFICACIONValue: DateTime; virtual;
    procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual;
    function GetUSUARIOValue: String; virtual;
    procedure SetUSUARIOValue(const aValue: String); virtual;
    function GetFECHA_VALIDEZValue: DateTime; virtual;
    procedure SetFECHA_VALIDEZValue(const aValue: DateTime); virtual;
    function GetID_MONTAJEValue: Integer; virtual;
    procedure SetID_MONTAJEValue(const aValue: Integer); virtual;

    { Properties }
    property ID: Integer read GetIDValue write SetIDValue;
    property ID_EMPRESA: Integer read GetID_EMPRESAValue write SetID_EMPRESAValue;
    property ID_CLIENTE: Integer read GetID_CLIENTEValue write SetID_CLIENTEValue;
    property NOMBRE: String read GetNOMBREValue write SetNOMBREValue;
    property NIF_CIF: String read GetNIF_CIFValue write SetNIF_CIFValue;
    property CALLE: String read GetCALLEValue write SetCALLEValue;
    property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue;
    property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue;
    property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue;
    property TELEFONO_1: String read GetTELEFONO_1Value write SetTELEFONO_1Value;
    property TELEFONO_2: String read GetTELEFONO_2Value write SetTELEFONO_2Value;
    property FAX: String read GetFAXValue write SetFAXValue;
    property MOVIL_1: String read GetMOVIL_1Value write SetMOVIL_1Value;
    property MOVIL_2: String read GetMOVIL_2Value write SetMOVIL_2Value;
    property EMAIL_1: String read GetEMAIL_1Value write SetEMAIL_1Value;
    property EMAIL_2: String read GetEMAIL_2Value write SetEMAIL_2Value;
    property ID_VENDEDOR: Integer read GetID_VENDEDORValue write SetID_VENDEDORValue;
    property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue;
    property FECHA_PRESUPUESTO: DateTime read GetFECHA_PRESUPUESTOValue write SetFECHA_PRESUPUESTOValue;
    property VIGENCIA: Integer read GetVIGENCIAValue write SetVIGENCIAValue;
    property SITUACION: String read GetSITUACIONValue write SetSITUACIONValue;
    property FECHA_DECISION: DateTime read GetFECHA_DECISIONValue write SetFECHA_DECISIONValue;
    property BASE_IMPONIBLE: Float read GetBASE_IMPONIBLEValue write SetBASE_IMPONIBLEValue;
    property DESCUENTO: Float read GetDESCUENTOValue write SetDESCUENTOValue;
    property IMPORTE_DESCUENTO: Float read GetIMPORTE_DESCUENTOValue write SetIMPORTE_DESCUENTOValue;
    property IVA: Float read GetIVAValue write SetIVAValue;
    property IMPORTE_IVA: Float read GetIMPORTE_IVAValue write SetIMPORTE_IVAValue;
    property IMPORTE_TOTAL: Float read GetIMPORTE_TOTALValue write SetIMPORTE_TOTALValue;
    property OBSERVACIONES: IROStrings read GetOBSERVACIONESValue write SetOBSERVACIONESValue;
    property PLAZO_ENTREGA: IROStrings read GetPLAZO_ENTREGAValue write SetPLAZO_ENTREGAValue;
    property FORMA_PAGO: IROStrings read GetFORMA_PAGOValue write SetFORMA_PAGOValue;
    property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue;
    property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue;
    property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue;
    property FECHA_VALIDEZ: DateTime read GetFECHA_VALIDEZValue write SetFECHA_VALIDEZValue;
    property ID_MONTAJE: Integer read GetID_MONTAJEValue write SetID_MONTAJEValue;

  public
    constructor Create(aDataTable: TDADataTable); override;
    destructor Destroy; override;

  end;

  { IPresupuestos_Detalles }
  IPresupuestos_Detalles = interface(IDAStronglyTypedDataTable)
  ['{24147B62-8039-4D2F-A27B-F31D6A7D7ED5}']
    { Property getters and setters }
    function GetIDValue: Integer;
    procedure SetIDValue(const aValue: Integer);
    function GetID_PRESUPUESTOValue: Integer;
    procedure SetID_PRESUPUESTOValue(const aValue: Integer);
    function GetPOSICIONValue: Integer;
    procedure SetPOSICIONValue(const aValue: Integer);
    function GetTIPO_DETALLEValue: String;
    procedure SetTIPO_DETALLEValue(const aValue: String);
    function GetCONCEPTOValue: String;
    procedure SetCONCEPTOValue(const aValue: String);
    function GetCANTIDADValue: Integer;
    procedure SetCANTIDADValue(const aValue: Integer);
    function GetPUNTOSValue: Integer;
    procedure SetPUNTOSValue(const aValue: Integer);
    function GetIMPORTE_PUNTOSValue: Float;
    procedure SetIMPORTE_PUNTOSValue(const aValue: Float);
    function GetIMPORTE_UNIDADValue: Float;
    procedure SetIMPORTE_UNIDADValue(const aValue: Float);
    function GetDESCUENTOValue: Float;
    procedure SetDESCUENTOValue(const aValue: Float);
    function GetIMPORTE_TOTALValue: Float;
    procedure SetIMPORTE_TOTALValue(const aValue: Float);
    function GetVISIBLEValue: Integer;
    procedure SetVISIBLEValue(const aValue: Integer);


    { Properties }
    property ID: Integer read GetIDValue write SetIDValue;
    property ID_PRESUPUESTO: Integer read GetID_PRESUPUESTOValue write SetID_PRESUPUESTOValue;
    property POSICION: Integer read GetPOSICIONValue write SetPOSICIONValue;
    property TIPO_DETALLE: String read GetTIPO_DETALLEValue write SetTIPO_DETALLEValue;
    property CONCEPTO: String read GetCONCEPTOValue write SetCONCEPTOValue;
    property CANTIDAD: Integer read GetCANTIDADValue write SetCANTIDADValue;
    property PUNTOS: Integer read GetPUNTOSValue write SetPUNTOSValue;
    property IMPORTE_PUNTOS: Float read GetIMPORTE_PUNTOSValue write SetIMPORTE_PUNTOSValue;
    property IMPORTE_UNIDAD: Float read GetIMPORTE_UNIDADValue write SetIMPORTE_UNIDADValue;
    property DESCUENTO: Float read GetDESCUENTOValue write SetDESCUENTOValue;
    property IMPORTE_TOTAL: Float read GetIMPORTE_TOTALValue write SetIMPORTE_TOTALValue;
    property VISIBLE: Integer read GetVISIBLEValue write SetVISIBLEValue;
  end;

  { TPresupuestos_DetallesDataTableRules }
  TPresupuestos_DetallesDataTableRules = class(TDADataTableRules, IPresupuestos_Detalles)
  private
  protected
    { Property getters and setters }
    function GetIDValue: Integer; virtual;
    procedure SetIDValue(const aValue: Integer); virtual;
    function GetID_PRESUPUESTOValue: Integer; virtual;
    procedure SetID_PRESUPUESTOValue(const aValue: Integer); virtual;
    function GetPOSICIONValue: Integer; virtual;
    procedure SetPOSICIONValue(const aValue: Integer); virtual;
    function GetTIPO_DETALLEValue: String; virtual;
    procedure SetTIPO_DETALLEValue(const aValue: String); virtual;
    function GetCONCEPTOValue: String; virtual;
    procedure SetCONCEPTOValue(const aValue: String); virtual;
    function GetCANTIDADValue: Integer; virtual;
    procedure SetCANTIDADValue(const aValue: Integer); virtual;
    function GetPUNTOSValue: Integer; virtual;
    procedure SetPUNTOSValue(const aValue: Integer); virtual;
    function GetIMPORTE_PUNTOSValue: Float; virtual;
    procedure SetIMPORTE_PUNTOSValue(const aValue: Float); virtual;
    function GetIMPORTE_UNIDADValue: Float; virtual;
    procedure SetIMPORTE_UNIDADValue(const aValue: Float); virtual;
    function GetDESCUENTOValue: Float; virtual;
    procedure SetDESCUENTOValue(const aValue: Float); virtual;
    function GetIMPORTE_TOTALValue: Float; virtual;
    procedure SetIMPORTE_TOTALValue(const aValue: Float); virtual;
    function GetVISIBLEValue: Integer; virtual;
    procedure SetVISIBLEValue(const aValue: Integer); virtual;

    { Properties }
    property ID: Integer read GetIDValue write SetIDValue;
    property ID_PRESUPUESTO: Integer read GetID_PRESUPUESTOValue write SetID_PRESUPUESTOValue;
    property POSICION: Integer read GetPOSICIONValue write SetPOSICIONValue;
    property TIPO_DETALLE: String read GetTIPO_DETALLEValue write SetTIPO_DETALLEValue;
    property CONCEPTO: String read GetCONCEPTOValue write SetCONCEPTOValue;
    property CANTIDAD: Integer read GetCANTIDADValue write SetCANTIDADValue;
    property PUNTOS: Integer read GetPUNTOSValue write SetPUNTOSValue;
    property IMPORTE_PUNTOS: Float read GetIMPORTE_PUNTOSValue write SetIMPORTE_PUNTOSValue;
    property IMPORTE_UNIDAD: Float read GetIMPORTE_UNIDADValue write SetIMPORTE_UNIDADValue;
    property DESCUENTO: Float read GetDESCUENTOValue write SetDESCUENTOValue;
    property IMPORTE_TOTAL: Float read GetIMPORTE_TOTALValue write SetIMPORTE_TOTALValue;
    property VISIBLE: Integer read GetVISIBLEValue write SetVISIBLEValue;

  public
    constructor Create(aDataTable: TDADataTable); override;
    destructor Destroy; override;

  end;

  { IPresupuestos_Refresh }
  IPresupuestos_Refresh = interface(IDAStronglyTypedDataTable)
  ['{30AEC914-BD10-48B2-AB88-CDDD545AE065}']
    { Property getters and setters }
    function GetIDValue: Integer;
    procedure SetIDValue(const aValue: Integer);
    function GetID_EMPRESAValue: Integer;
    procedure SetID_EMPRESAValue(const aValue: Integer);
    function GetID_CLIENTEValue: Integer;
    procedure SetID_CLIENTEValue(const aValue: Integer);
    function GetNOMBREValue: String;
    procedure SetNOMBREValue(const aValue: String);
    function GetNIF_CIFValue: String;
    procedure SetNIF_CIFValue(const aValue: String);
    function GetCALLEValue: String;
    procedure SetCALLEValue(const aValue: String);
    function GetPOBLACIONValue: String;
    procedure SetPOBLACIONValue(const aValue: String);
    function GetPROVINCIAValue: String;
    procedure SetPROVINCIAValue(const aValue: String);
    function GetCODIGO_POSTALValue: String;
    procedure SetCODIGO_POSTALValue(const aValue: String);
    function GetTELEFONO_1Value: String;
    procedure SetTELEFONO_1Value(const aValue: String);
    function GetTELEFONO_2Value: String;
    procedure SetTELEFONO_2Value(const aValue: String);
    function GetFAXValue: String;
    procedure SetFAXValue(const aValue: String);
    function GetMOVIL_1Value: String;
    procedure SetMOVIL_1Value(const aValue: String);
    function GetMOVIL_2Value: String;
    procedure SetMOVIL_2Value(const aValue: String);
    function GetEMAIL_1Value: String;
    procedure SetEMAIL_1Value(const aValue: String);
    function GetEMAIL_2Value: String;
    procedure SetEMAIL_2Value(const aValue: String);
    function GetID_VENDEDORValue: Integer;
    procedure SetID_VENDEDORValue(const aValue: Integer);
    function GetREFERENCIAValue: String;
    procedure SetREFERENCIAValue(const aValue: String);
    function GetFECHA_PRESUPUESTOValue: DateTime;
    procedure SetFECHA_PRESUPUESTOValue(const aValue: DateTime);
    function GetVIGENCIAValue: Integer;
    procedure SetVIGENCIAValue(const aValue: Integer);
    function GetSITUACIONValue: String;
    procedure SetSITUACIONValue(const aValue: String);
    function GetFECHA_DECISIONValue: DateTime;
    procedure SetFECHA_DECISIONValue(const aValue: DateTime);
    function GetBASE_IMPONIBLEValue: Float;
    procedure SetBASE_IMPONIBLEValue(const aValue: Float);
    function GetDESCUENTOValue: Float;
    procedure SetDESCUENTOValue(const aValue: Float);
    function GetIMPORTE_DESCUENTOValue: Float;
    procedure SetIMPORTE_DESCUENTOValue(const aValue: Float);
    function GetIVAValue: Float;
    procedure SetIVAValue(const aValue: Float);
    function GetIMPORTE_IVAValue: Float;
    procedure SetIMPORTE_IVAValue(const aValue: Float);
    function GetIMPORTE_TOTALValue: Float;
    procedure SetIMPORTE_TOTALValue(const aValue: Float);
    function GetOBSERVACIONESValue: IROStrings;
    procedure SetOBSERVACIONESValue(const aValue: IROStrings);
    function GetPLAZO_ENTREGAValue: IROStrings;
    procedure SetPLAZO_ENTREGAValue(const aValue: IROStrings);
    function GetFORMA_PAGOValue: IROStrings;
    procedure SetFORMA_PAGOValue(const aValue: IROStrings);
    function GetFECHA_ALTAValue: DateTime;
    procedure SetFECHA_ALTAValue(const aValue: DateTime);
    function GetFECHA_MODIFICACIONValue: DateTime;
    procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime);
    function GetUSUARIOValue: String;
    procedure SetUSUARIOValue(const aValue: String);
    function GetFECHA_VALIDEZValue: DateTime;
    procedure SetFECHA_VALIDEZValue(const aValue: DateTime);
    function GetID_MONTAJEValue: Integer;
    procedure SetID_MONTAJEValue(const aValue: Integer);


    { Properties }
    property ID: Integer read GetIDValue write SetIDValue;
    property ID_EMPRESA: Integer read GetID_EMPRESAValue write SetID_EMPRESAValue;
    property ID_CLIENTE: Integer read GetID_CLIENTEValue write SetID_CLIENTEValue;
    property NOMBRE: String read GetNOMBREValue write SetNOMBREValue;
    property NIF_CIF: String read GetNIF_CIFValue write SetNIF_CIFValue;
    property CALLE: String read GetCALLEValue write SetCALLEValue;
    property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue;
    property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue;
    property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue;
    property TELEFONO_1: String read GetTELEFONO_1Value write SetTELEFONO_1Value;
    property TELEFONO_2: String read GetTELEFONO_2Value write SetTELEFONO_2Value;
    property FAX: String read GetFAXValue write SetFAXValue;
    property MOVIL_1: String read GetMOVIL_1Value write SetMOVIL_1Value;
    property MOVIL_2: String read GetMOVIL_2Value write SetMOVIL_2Value;
    property EMAIL_1: String read GetEMAIL_1Value write SetEMAIL_1Value;
    property EMAIL_2: String read GetEMAIL_2Value write SetEMAIL_2Value;
    property ID_VENDEDOR: Integer read GetID_VENDEDORValue write SetID_VENDEDORValue;
    property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue;
    property FECHA_PRESUPUESTO: DateTime read GetFECHA_PRESUPUESTOValue write SetFECHA_PRESUPUESTOValue;
    property VIGENCIA: Integer read GetVIGENCIAValue write SetVIGENCIAValue;
    property SITUACION: String read GetSITUACIONValue write SetSITUACIONValue;
    property FECHA_DECISION: DateTime read GetFECHA_DECISIONValue write SetFECHA_DECISIONValue;
    property BASE_IMPONIBLE: Float read GetBASE_IMPONIBLEValue write SetBASE_IMPONIBLEValue;
    property DESCUENTO: Float read GetDESCUENTOValue write SetDESCUENTOValue;
    property IMPORTE_DESCUENTO: Float read GetIMPORTE_DESCUENTOValue write SetIMPORTE_DESCUENTOValue;
    property IVA: Float read GetIVAValue write SetIVAValue;
    property IMPORTE_IVA: Float read GetIMPORTE_IVAValue write SetIMPORTE_IVAValue;
    property IMPORTE_TOTAL: Float read GetIMPORTE_TOTALValue write SetIMPORTE_TOTALValue;
    property OBSERVACIONES: IROStrings read GetOBSERVACIONESValue write SetOBSERVACIONESValue;
    property PLAZO_ENTREGA: IROStrings read GetPLAZO_ENTREGAValue write SetPLAZO_ENTREGAValue;
    property FORMA_PAGO: IROStrings read GetFORMA_PAGOValue write SetFORMA_PAGOValue;
    property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue;
    property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue;
    property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue;
    property FECHA_VALIDEZ: DateTime read GetFECHA_VALIDEZValue write SetFECHA_VALIDEZValue;
    property ID_MONTAJE: Integer read GetID_MONTAJEValue write SetID_MONTAJEValue;
  end;

  { TPresupuestos_RefreshDataTableRules }
  TPresupuestos_RefreshDataTableRules = class(TDADataTableRules, IPresupuestos_Refresh)
  private
  protected
    { Property getters and setters }
    function GetIDValue: Integer; virtual;
    procedure SetIDValue(const aValue: Integer); virtual;
    function GetID_EMPRESAValue: Integer; virtual;
    procedure SetID_EMPRESAValue(const aValue: Integer); virtual;
    function GetID_CLIENTEValue: Integer; virtual;
    procedure SetID_CLIENTEValue(const aValue: Integer); virtual;
    function GetNOMBREValue: String; virtual;
    procedure SetNOMBREValue(const aValue: String); virtual;
    function GetNIF_CIFValue: String; virtual;
    procedure SetNIF_CIFValue(const aValue: String); virtual;
    function GetCALLEValue: String; virtual;
    procedure SetCALLEValue(const aValue: String); virtual;
    function GetPOBLACIONValue: String; virtual;
    procedure SetPOBLACIONValue(const aValue: String); virtual;
    function GetPROVINCIAValue: String; virtual;
    procedure SetPROVINCIAValue(const aValue: String); virtual;
    function GetCODIGO_POSTALValue: String; virtual;
    procedure SetCODIGO_POSTALValue(const aValue: String); virtual;
    function GetTELEFONO_1Value: String; virtual;
    procedure SetTELEFONO_1Value(const aValue: String); virtual;
    function GetTELEFONO_2Value: String; virtual;
    procedure SetTELEFONO_2Value(const aValue: String); virtual;
    function GetFAXValue: String; virtual;
    procedure SetFAXValue(const aValue: String); virtual;
    function GetMOVIL_1Value: String; virtual;
    procedure SetMOVIL_1Value(const aValue: String); virtual;
    function GetMOVIL_2Value: String; virtual;
    procedure SetMOVIL_2Value(const aValue: String); virtual;
    function GetEMAIL_1Value: String; virtual;
    procedure SetEMAIL_1Value(const aValue: String); virtual;
    function GetEMAIL_2Value: String; virtual;
    procedure SetEMAIL_2Value(const aValue: String); virtual;
    function GetID_VENDEDORValue: Integer; virtual;
    procedure SetID_VENDEDORValue(const aValue: Integer); virtual;
    function GetREFERENCIAValue: String; virtual;
    procedure SetREFERENCIAValue(const aValue: String); virtual;
    function GetFECHA_PRESUPUESTOValue: DateTime; virtual;
    procedure SetFECHA_PRESUPUESTOValue(const aValue: DateTime); virtual;
    function GetVIGENCIAValue: Integer; virtual;
    procedure SetVIGENCIAValue(const aValue: Integer); virtual;
    function GetSITUACIONValue: String; virtual;
    procedure SetSITUACIONValue(const aValue: String); virtual;
    function GetFECHA_DECISIONValue: DateTime; virtual;
    procedure SetFECHA_DECISIONValue(const aValue: DateTime); virtual;
    function GetBASE_IMPONIBLEValue: Float; virtual;
    procedure SetBASE_IMPONIBLEValue(const aValue: Float); virtual;
    function GetDESCUENTOValue: Float; virtual;
    procedure SetDESCUENTOValue(const aValue: Float); virtual;
    function GetIMPORTE_DESCUENTOValue: Float; virtual;
    procedure SetIMPORTE_DESCUENTOValue(const aValue: Float); virtual;
    function GetIVAValue: Float; virtual;
    procedure SetIVAValue(const aValue: Float); virtual;
    function GetIMPORTE_IVAValue: Float; virtual;
    procedure SetIMPORTE_IVAValue(const aValue: Float); virtual;
    function GetIMPORTE_TOTALValue: Float; virtual;
    procedure SetIMPORTE_TOTALValue(const aValue: Float); virtual;
    function GetOBSERVACIONESValue: IROStrings; virtual;
    procedure SetOBSERVACIONESValue(const aValue: IROStrings); virtual;
    function GetPLAZO_ENTREGAValue: IROStrings; virtual;
    procedure SetPLAZO_ENTREGAValue(const aValue: IROStrings); virtual;
    function GetFORMA_PAGOValue: IROStrings; virtual;
    procedure SetFORMA_PAGOValue(const aValue: IROStrings); virtual;
    function GetFECHA_ALTAValue: DateTime; virtual;
    procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual;
    function GetFECHA_MODIFICACIONValue: DateTime; virtual;
    procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual;
    function GetUSUARIOValue: String; virtual;
    procedure SetUSUARIOValue(const aValue: String); virtual;
    function GetFECHA_VALIDEZValue: DateTime; virtual;
    procedure SetFECHA_VALIDEZValue(const aValue: DateTime); virtual;
    function GetID_MONTAJEValue: Integer; virtual;
    procedure SetID_MONTAJEValue(const aValue: Integer); virtual;

    { Properties }
    property ID: Integer read GetIDValue write SetIDValue;
    property ID_EMPRESA: Integer read GetID_EMPRESAValue write SetID_EMPRESAValue;
    property ID_CLIENTE: Integer read GetID_CLIENTEValue write SetID_CLIENTEValue;
    property NOMBRE: String read GetNOMBREValue write SetNOMBREValue;
    property NIF_CIF: String read GetNIF_CIFValue write SetNIF_CIFValue;
    property CALLE: String read GetCALLEValue write SetCALLEValue;
    property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue;
    property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue;
    property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue;
    property TELEFONO_1: String read GetTELEFONO_1Value write SetTELEFONO_1Value;
    property TELEFONO_2: String read GetTELEFONO_2Value write SetTELEFONO_2Value;
    property FAX: String read GetFAXValue write SetFAXValue;
    property MOVIL_1: String read GetMOVIL_1Value write SetMOVIL_1Value;
    property MOVIL_2: String read GetMOVIL_2Value write SetMOVIL_2Value;
    property EMAIL_1: String read GetEMAIL_1Value write SetEMAIL_1Value;
    property EMAIL_2: String read GetEMAIL_2Value write SetEMAIL_2Value;
    property ID_VENDEDOR: Integer read GetID_VENDEDORValue write SetID_VENDEDORValue;
    property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue;
    property FECHA_PRESUPUESTO: DateTime read GetFECHA_PRESUPUESTOValue write SetFECHA_PRESUPUESTOValue;
    property VIGENCIA: Integer read GetVIGENCIAValue write SetVIGENCIAValue;
    property SITUACION: String read GetSITUACIONValue write SetSITUACIONValue;
    property FECHA_DECISION: DateTime read GetFECHA_DECISIONValue write SetFECHA_DECISIONValue;
    property BASE_IMPONIBLE: Float read GetBASE_IMPONIBLEValue write SetBASE_IMPONIBLEValue;
    property DESCUENTO: Float read GetDESCUENTOValue write SetDESCUENTOValue;
    property IMPORTE_DESCUENTO: Float read GetIMPORTE_DESCUENTOValue write SetIMPORTE_DESCUENTOValue;
    property IVA: Float read GetIVAValue write SetIVAValue;
    property IMPORTE_IVA: Float read GetIMPORTE_IVAValue write SetIMPORTE_IVAValue;
    property IMPORTE_TOTAL: Float read GetIMPORTE_TOTALValue write SetIMPORTE_TOTALValue;
    property OBSERVACIONES: IROStrings read GetOBSERVACIONESValue write SetOBSERVACIONESValue;
    property PLAZO_ENTREGA: IROStrings read GetPLAZO_ENTREGAValue write SetPLAZO_ENTREGAValue;
    property FORMA_PAGO: IROStrings read GetFORMA_PAGOValue write SetFORMA_PAGOValue;
    property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue;
    property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue;
    property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue;
    property FECHA_VALIDEZ: DateTime read GetFECHA_VALIDEZValue write SetFECHA_VALIDEZValue;
    property ID_MONTAJE: Integer read GetID_MONTAJEValue write SetID_MONTAJEValue;

  public
    constructor Create(aDataTable: TDADataTable); override;
    destructor Destroy; override;

  end;

implementation

uses Variants;

{ TdarReferenciaDataTableRules }
constructor TdarReferenciaDataTableRules.Create(aDataTable: TDADataTable);
begin
  inherited;
end;

destructor TdarReferenciaDataTableRules.Destroy;
begin
  inherited;
end;

function TdarReferenciaDataTableRules.GetVALORValue: String;
begin
  result := DataTable.Fields[idx_darReferenciaVALOR].AsString;
end;

procedure TdarReferenciaDataTableRules.SetVALORValue(const aValue: String);
begin
  DataTable.Fields[idx_darReferenciaVALOR].AsString := aValue;
end;


{ TPresupuestosDataTableRules }
constructor TPresupuestosDataTableRules.Create(aDataTable: TDADataTable);
begin
  inherited;
end;

destructor TPresupuestosDataTableRules.Destroy;
begin
  inherited;
end;

function TPresupuestosDataTableRules.GetIDValue: Integer;
begin
  result := DataTable.Fields[idx_PresupuestosID].AsInteger;
end;

procedure TPresupuestosDataTableRules.SetIDValue(const aValue: Integer);
begin
  DataTable.Fields[idx_PresupuestosID].AsInteger := aValue;
end;

function TPresupuestosDataTableRules.GetID_EMPRESAValue: Integer;
begin
  result := DataTable.Fields[idx_PresupuestosID_EMPRESA].AsInteger;
end;

procedure TPresupuestosDataTableRules.SetID_EMPRESAValue(const aValue: Integer);
begin
  DataTable.Fields[idx_PresupuestosID_EMPRESA].AsInteger := aValue;
end;

function TPresupuestosDataTableRules.GetID_CLIENTEValue: Integer;
begin
  result := DataTable.Fields[idx_PresupuestosID_CLIENTE].AsInteger;
end;

procedure TPresupuestosDataTableRules.SetID_CLIENTEValue(const aValue: Integer);
begin
  DataTable.Fields[idx_PresupuestosID_CLIENTE].AsInteger := aValue;
end;

function TPresupuestosDataTableRules.GetNOMBREValue: String;
begin
  result := DataTable.Fields[idx_PresupuestosNOMBRE].AsString;
end;

procedure TPresupuestosDataTableRules.SetNOMBREValue(const aValue: String);
begin
  DataTable.Fields[idx_PresupuestosNOMBRE].AsString := aValue;
end;

function TPresupuestosDataTableRules.GetNIF_CIFValue: String;
begin
  result := DataTable.Fields[idx_PresupuestosNIF_CIF].AsString;
end;

procedure TPresupuestosDataTableRules.SetNIF_CIFValue(const aValue: String);
begin
  DataTable.Fields[idx_PresupuestosNIF_CIF].AsString := aValue;
end;

function TPresupuestosDataTableRules.GetCALLEValue: String;
begin
  result := DataTable.Fields[idx_PresupuestosCALLE].AsString;
end;

procedure TPresupuestosDataTableRules.SetCALLEValue(const aValue: String);
begin
  DataTable.Fields[idx_PresupuestosCALLE].AsString := aValue;
end;

function TPresupuestosDataTableRules.GetPOBLACIONValue: String;
begin
  result := DataTable.Fields[idx_PresupuestosPOBLACION].AsString;
end;

procedure TPresupuestosDataTableRules.SetPOBLACIONValue(const aValue: String);
begin
  DataTable.Fields[idx_PresupuestosPOBLACION].AsString := aValue;
end;

function TPresupuestosDataTableRules.GetPROVINCIAValue: String;
begin
  result := DataTable.Fields[idx_PresupuestosPROVINCIA].AsString;
end;

procedure TPresupuestosDataTableRules.SetPROVINCIAValue(const aValue: String);
begin
  DataTable.Fields[idx_PresupuestosPROVINCIA].AsString := aValue;
end;

function TPresupuestosDataTableRules.GetCODIGO_POSTALValue: String;
begin
  result := DataTable.Fields[idx_PresupuestosCODIGO_POSTAL].AsString;
end;

procedure TPresupuestosDataTableRules.SetCODIGO_POSTALValue(const aValue: String);
begin
  DataTable.Fields[idx_PresupuestosCODIGO_POSTAL].AsString := aValue;
end;

function TPresupuestosDataTableRules.GetTELEFONO_1Value: String;
begin
  result := DataTable.Fields[idx_PresupuestosTELEFONO_1].AsString;
end;

procedure TPresupuestosDataTableRules.SetTELEFONO_1Value(const aValue: String);
begin
  DataTable.Fields[idx_PresupuestosTELEFONO_1].AsString := aValue;
end;

function TPresupuestosDataTableRules.GetTELEFONO_2Value: String;
begin
  result := DataTable.Fields[idx_PresupuestosTELEFONO_2].AsString;
end;

procedure TPresupuestosDataTableRules.SetTELEFONO_2Value(const aValue: String);
begin
  DataTable.Fields[idx_PresupuestosTELEFONO_2].AsString := aValue;
end;

function TPresupuestosDataTableRules.GetFAXValue: String;
begin
  result := DataTable.Fields[idx_PresupuestosFAX].AsString;
end;

procedure TPresupuestosDataTableRules.SetFAXValue(const aValue: String);
begin
  DataTable.Fields[idx_PresupuestosFAX].AsString := aValue;
end;

function TPresupuestosDataTableRules.GetMOVIL_1Value: String;
begin
  result := DataTable.Fields[idx_PresupuestosMOVIL_1].AsString;
end;

procedure TPresupuestosDataTableRules.SetMOVIL_1Value(const aValue: String);
begin
  DataTable.Fields[idx_PresupuestosMOVIL_1].AsString := aValue;
end;

function TPresupuestosDataTableRules.GetMOVIL_2Value: String;
begin
  result := DataTable.Fields[idx_PresupuestosMOVIL_2].AsString;
end;

procedure TPresupuestosDataTableRules.SetMOVIL_2Value(const aValue: String);
begin
  DataTable.Fields[idx_PresupuestosMOVIL_2].AsString := aValue;
end;

function TPresupuestosDataTableRules.GetEMAIL_1Value: String;
begin
  result := DataTable.Fields[idx_PresupuestosEMAIL_1].AsString;
end;

procedure TPresupuestosDataTableRules.SetEMAIL_1Value(const aValue: String);
begin
  DataTable.Fields[idx_PresupuestosEMAIL_1].AsString := aValue;
end;

function TPresupuestosDataTableRules.GetEMAIL_2Value: String;
begin
  result := DataTable.Fields[idx_PresupuestosEMAIL_2].AsString;
end;

procedure TPresupuestosDataTableRules.SetEMAIL_2Value(const aValue: String);
begin
  DataTable.Fields[idx_PresupuestosEMAIL_2].AsString := aValue;
end;

function TPresupuestosDataTableRules.GetID_VENDEDORValue: Integer;
begin
  result := DataTable.Fields[idx_PresupuestosID_VENDEDOR].AsInteger;
end;

procedure TPresupuestosDataTableRules.SetID_VENDEDORValue(const aValue: Integer);
begin
  DataTable.Fields[idx_PresupuestosID_VENDEDOR].AsInteger := aValue;
end;

function TPresupuestosDataTableRules.GetREFERENCIAValue: String;
begin
  result := DataTable.Fields[idx_PresupuestosREFERENCIA].AsString;
end;

procedure TPresupuestosDataTableRules.SetREFERENCIAValue(const aValue: String);
begin
  DataTable.Fields[idx_PresupuestosREFERENCIA].AsString := aValue;
end;

function TPresupuestosDataTableRules.GetFECHA_PRESUPUESTOValue: DateTime;
begin
  result := DataTable.Fields[idx_PresupuestosFECHA_PRESUPUESTO].AsDateTime;
end;

procedure TPresupuestosDataTableRules.SetFECHA_PRESUPUESTOValue(const aValue: DateTime);
begin
  DataTable.Fields[idx_PresupuestosFECHA_PRESUPUESTO].AsDateTime := aValue;
end;

function TPresupuestosDataTableRules.GetVIGENCIAValue: Integer;
begin
  result := DataTable.Fields[idx_PresupuestosVIGENCIA].AsInteger;
end;

procedure TPresupuestosDataTableRules.SetVIGENCIAValue(const aValue: Integer);
begin
  DataTable.Fields[idx_PresupuestosVIGENCIA].AsInteger := aValue;
end;

function TPresupuestosDataTableRules.GetSITUACIONValue: String;
begin
  result := DataTable.Fields[idx_PresupuestosSITUACION].AsString;
end;

procedure TPresupuestosDataTableRules.SetSITUACIONValue(const aValue: String);
begin
  DataTable.Fields[idx_PresupuestosSITUACION].AsString := aValue;
end;

function TPresupuestosDataTableRules.GetFECHA_DECISIONValue: DateTime;
begin
  result := DataTable.Fields[idx_PresupuestosFECHA_DECISION].AsDateTime;
end;

procedure TPresupuestosDataTableRules.SetFECHA_DECISIONValue(const aValue: DateTime);
begin
  DataTable.Fields[idx_PresupuestosFECHA_DECISION].AsDateTime := aValue;
end;

function TPresupuestosDataTableRules.GetBASE_IMPONIBLEValue: Float;
begin
  result := DataTable.Fields[idx_PresupuestosBASE_IMPONIBLE].AsFloat;
end;

procedure TPresupuestosDataTableRules.SetBASE_IMPONIBLEValue(const aValue: Float);
begin
  DataTable.Fields[idx_PresupuestosBASE_IMPONIBLE].AsFloat := aValue;
end;

function TPresupuestosDataTableRules.GetDESCUENTOValue: Float;
begin
  result := DataTable.Fields[idx_PresupuestosDESCUENTO].AsFloat;
end;

procedure TPresupuestosDataTableRules.SetDESCUENTOValue(const aValue: Float);
begin
  DataTable.Fields[idx_PresupuestosDESCUENTO].AsFloat := aValue;
end;

function TPresupuestosDataTableRules.GetIMPORTE_DESCUENTOValue: Float;
begin
  result := DataTable.Fields[idx_PresupuestosIMPORTE_DESCUENTO].AsFloat;
end;

procedure TPresupuestosDataTableRules.SetIMPORTE_DESCUENTOValue(const aValue: Float);
begin
  DataTable.Fields[idx_PresupuestosIMPORTE_DESCUENTO].AsFloat := aValue;
end;

function TPresupuestosDataTableRules.GetIVAValue: Float;
begin
  result := DataTable.Fields[idx_PresupuestosIVA].AsFloat;
end;

procedure TPresupuestosDataTableRules.SetIVAValue(const aValue: Float);
begin
  DataTable.Fields[idx_PresupuestosIVA].AsFloat := aValue;
end;

function TPresupuestosDataTableRules.GetIMPORTE_IVAValue: Float;
begin
  result := DataTable.Fields[idx_PresupuestosIMPORTE_IVA].AsFloat;
end;

procedure TPresupuestosDataTableRules.SetIMPORTE_IVAValue(const aValue: Float);
begin
  DataTable.Fields[idx_PresupuestosIMPORTE_IVA].AsFloat := aValue;
end;

function TPresupuestosDataTableRules.GetIMPORTE_TOTALValue: Float;
begin
  result := DataTable.Fields[idx_PresupuestosIMPORTE_TOTAL].AsFloat;
end;

procedure TPresupuestosDataTableRules.SetIMPORTE_TOTALValue(const aValue: Float);
begin
  DataTable.Fields[idx_PresupuestosIMPORTE_TOTAL].AsFloat := aValue;
end;

function TPresupuestosDataTableRules.GetOBSERVACIONESValue: IROStrings;
begin
  result := NewROStrings();
  result.Text := DataTable.Fields[idx_PresupuestosOBSERVACIONES].AsString;
end;

procedure TPresupuestosDataTableRules.SetOBSERVACIONESValue(const aValue: IROStrings);
begin
  DataTable.Fields[idx_PresupuestosOBSERVACIONES].AsString := aValue.Text;
end;

function TPresupuestosDataTableRules.GetPLAZO_ENTREGAValue: IROStrings;
begin
  result := NewROStrings();
  result.Text := DataTable.Fields[idx_PresupuestosPLAZO_ENTREGA].AsString;
end;

procedure TPresupuestosDataTableRules.SetPLAZO_ENTREGAValue(const aValue: IROStrings);
begin
  DataTable.Fields[idx_PresupuestosPLAZO_ENTREGA].AsString := aValue.Text;
end;

function TPresupuestosDataTableRules.GetFORMA_PAGOValue: IROStrings;
begin
  result := NewROStrings();
  result.Text := DataTable.Fields[idx_PresupuestosFORMA_PAGO].AsString;
end;

procedure TPresupuestosDataTableRules.SetFORMA_PAGOValue(const aValue: IROStrings);
begin
  DataTable.Fields[idx_PresupuestosFORMA_PAGO].AsString := aValue.Text;
end;

function TPresupuestosDataTableRules.GetFECHA_ALTAValue: DateTime;
begin
  result := DataTable.Fields[idx_PresupuestosFECHA_ALTA].AsDateTime;
end;

procedure TPresupuestosDataTableRules.SetFECHA_ALTAValue(const aValue: DateTime);
begin
  DataTable.Fields[idx_PresupuestosFECHA_ALTA].AsDateTime := aValue;
end;

function TPresupuestosDataTableRules.GetFECHA_MODIFICACIONValue: DateTime;
begin
  result := DataTable.Fields[idx_PresupuestosFECHA_MODIFICACION].AsDateTime;
end;

procedure TPresupuestosDataTableRules.SetFECHA_MODIFICACIONValue(const aValue: DateTime);
begin
  DataTable.Fields[idx_PresupuestosFECHA_MODIFICACION].AsDateTime := aValue;
end;

function TPresupuestosDataTableRules.GetUSUARIOValue: String;
begin
  result := DataTable.Fields[idx_PresupuestosUSUARIO].AsString;
end;

procedure TPresupuestosDataTableRules.SetUSUARIOValue(const aValue: String);
begin
  DataTable.Fields[idx_PresupuestosUSUARIO].AsString := aValue;
end;

function TPresupuestosDataTableRules.GetFECHA_VALIDEZValue: DateTime;
begin
  result := DataTable.Fields[idx_PresupuestosFECHA_VALIDEZ].AsDateTime;
end;

procedure TPresupuestosDataTableRules.SetFECHA_VALIDEZValue(const aValue: DateTime);
begin
  DataTable.Fields[idx_PresupuestosFECHA_VALIDEZ].AsDateTime := aValue;
end;

function TPresupuestosDataTableRules.GetID_MONTAJEValue: Integer;
begin
  result := DataTable.Fields[idx_PresupuestosID_MONTAJE].AsInteger;
end;

procedure TPresupuestosDataTableRules.SetID_MONTAJEValue(const aValue: Integer);
begin
  DataTable.Fields[idx_PresupuestosID_MONTAJE].AsInteger := aValue;
end;


{ TPresupuestos_DetallesDataTableRules }
constructor TPresupuestos_DetallesDataTableRules.Create(aDataTable: TDADataTable);
begin
  inherited;
end;

destructor TPresupuestos_DetallesDataTableRules.Destroy;
begin
  inherited;
end;

function TPresupuestos_DetallesDataTableRules.GetIDValue: Integer;
begin
  result := DataTable.Fields[idx_Presupuestos_DetallesID].AsInteger;
end;

procedure TPresupuestos_DetallesDataTableRules.SetIDValue(const aValue: Integer);
begin
  DataTable.Fields[idx_Presupuestos_DetallesID].AsInteger := aValue;
end;

function TPresupuestos_DetallesDataTableRules.GetID_PRESUPUESTOValue: Integer;
begin
  result := DataTable.Fields[idx_Presupuestos_DetallesID_PRESUPUESTO].AsInteger;
end;

procedure TPresupuestos_DetallesDataTableRules.SetID_PRESUPUESTOValue(const aValue: Integer);
begin
  DataTable.Fields[idx_Presupuestos_DetallesID_PRESUPUESTO].AsInteger := aValue;
end;

function TPresupuestos_DetallesDataTableRules.GetPOSICIONValue: Integer;
begin
  result := DataTable.Fields[idx_Presupuestos_DetallesPOSICION].AsInteger;
end;

procedure TPresupuestos_DetallesDataTableRules.SetPOSICIONValue(const aValue: Integer);
begin
  DataTable.Fields[idx_Presupuestos_DetallesPOSICION].AsInteger := aValue;
end;

function TPresupuestos_DetallesDataTableRules.GetTIPO_DETALLEValue: String;
begin
  result := DataTable.Fields[idx_Presupuestos_DetallesTIPO_DETALLE].AsString;
end;

procedure TPresupuestos_DetallesDataTableRules.SetTIPO_DETALLEValue(const aValue: String);
begin
  DataTable.Fields[idx_Presupuestos_DetallesTIPO_DETALLE].AsString := aValue;
end;

function TPresupuestos_DetallesDataTableRules.GetCONCEPTOValue: String;
begin
  result := DataTable.Fields[idx_Presupuestos_DetallesCONCEPTO].AsString;
end;

procedure TPresupuestos_DetallesDataTableRules.SetCONCEPTOValue(const aValue: String);
begin
  DataTable.Fields[idx_Presupuestos_DetallesCONCEPTO].AsString := aValue;
end;

function TPresupuestos_DetallesDataTableRules.GetCANTIDADValue: Integer;
begin
  result := DataTable.Fields[idx_Presupuestos_DetallesCANTIDAD].AsInteger;
end;

procedure TPresupuestos_DetallesDataTableRules.SetCANTIDADValue(const aValue: Integer);
begin
  DataTable.Fields[idx_Presupuestos_DetallesCANTIDAD].AsInteger := aValue;
end;

function TPresupuestos_DetallesDataTableRules.GetPUNTOSValue: Integer;
begin
  result := DataTable.Fields[idx_Presupuestos_DetallesPUNTOS].AsInteger;
end;

procedure TPresupuestos_DetallesDataTableRules.SetPUNTOSValue(const aValue: Integer);
begin
  DataTable.Fields[idx_Presupuestos_DetallesPUNTOS].AsInteger := aValue;
end;

function TPresupuestos_DetallesDataTableRules.GetIMPORTE_PUNTOSValue: Float;
begin
  result := DataTable.Fields[idx_Presupuestos_DetallesIMPORTE_PUNTOS].AsFloat;
end;

procedure TPresupuestos_DetallesDataTableRules.SetIMPORTE_PUNTOSValue(const aValue: Float);
begin
  DataTable.Fields[idx_Presupuestos_DetallesIMPORTE_PUNTOS].AsFloat := aValue;
end;

function TPresupuestos_DetallesDataTableRules.GetIMPORTE_UNIDADValue: Float;
begin
  result := DataTable.Fields[idx_Presupuestos_DetallesIMPORTE_UNIDAD].AsFloat;
end;

procedure TPresupuestos_DetallesDataTableRules.SetIMPORTE_UNIDADValue(const aValue: Float);
begin
  DataTable.Fields[idx_Presupuestos_DetallesIMPORTE_UNIDAD].AsFloat := aValue;
end;

function TPresupuestos_DetallesDataTableRules.GetDESCUENTOValue: Float;
begin
  result := DataTable.Fields[idx_Presupuestos_DetallesDESCUENTO].AsFloat;
end;

procedure TPresupuestos_DetallesDataTableRules.SetDESCUENTOValue(const aValue: Float);
begin
  DataTable.Fields[idx_Presupuestos_DetallesDESCUENTO].AsFloat := aValue;
end;

function TPresupuestos_DetallesDataTableRules.GetIMPORTE_TOTALValue: Float;
begin
  result := DataTable.Fields[idx_Presupuestos_DetallesIMPORTE_TOTAL].AsFloat;
end;

procedure TPresupuestos_DetallesDataTableRules.SetIMPORTE_TOTALValue(const aValue: Float);
begin
  DataTable.Fields[idx_Presupuestos_DetallesIMPORTE_TOTAL].AsFloat := aValue;
end;

function TPresupuestos_DetallesDataTableRules.GetVISIBLEValue: Integer;
begin
  result := DataTable.Fields[idx_Presupuestos_DetallesVISIBLE].AsInteger;
end;

procedure TPresupuestos_DetallesDataTableRules.SetVISIBLEValue(const aValue: Integer);
begin
  DataTable.Fields[idx_Presupuestos_DetallesVISIBLE].AsInteger := aValue;
end;


{ TPresupuestos_RefreshDataTableRules }
constructor TPresupuestos_RefreshDataTableRules.Create(aDataTable: TDADataTable);
begin
  inherited;
end;

destructor TPresupuestos_RefreshDataTableRules.Destroy;
begin
  inherited;
end;

function TPresupuestos_RefreshDataTableRules.GetIDValue: Integer;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshID].AsInteger;
end;

procedure TPresupuestos_RefreshDataTableRules.SetIDValue(const aValue: Integer);
begin
  DataTable.Fields[idx_Presupuestos_RefreshID].AsInteger := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetID_EMPRESAValue: Integer;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshID_EMPRESA].AsInteger;
end;

procedure TPresupuestos_RefreshDataTableRules.SetID_EMPRESAValue(const aValue: Integer);
begin
  DataTable.Fields[idx_Presupuestos_RefreshID_EMPRESA].AsInteger := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetID_CLIENTEValue: Integer;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshID_CLIENTE].AsInteger;
end;

procedure TPresupuestos_RefreshDataTableRules.SetID_CLIENTEValue(const aValue: Integer);
begin
  DataTable.Fields[idx_Presupuestos_RefreshID_CLIENTE].AsInteger := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetNOMBREValue: String;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshNOMBRE].AsString;
end;

procedure TPresupuestos_RefreshDataTableRules.SetNOMBREValue(const aValue: String);
begin
  DataTable.Fields[idx_Presupuestos_RefreshNOMBRE].AsString := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetNIF_CIFValue: String;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshNIF_CIF].AsString;
end;

procedure TPresupuestos_RefreshDataTableRules.SetNIF_CIFValue(const aValue: String);
begin
  DataTable.Fields[idx_Presupuestos_RefreshNIF_CIF].AsString := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetCALLEValue: String;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshCALLE].AsString;
end;

procedure TPresupuestos_RefreshDataTableRules.SetCALLEValue(const aValue: String);
begin
  DataTable.Fields[idx_Presupuestos_RefreshCALLE].AsString := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetPOBLACIONValue: String;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshPOBLACION].AsString;
end;

procedure TPresupuestos_RefreshDataTableRules.SetPOBLACIONValue(const aValue: String);
begin
  DataTable.Fields[idx_Presupuestos_RefreshPOBLACION].AsString := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetPROVINCIAValue: String;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshPROVINCIA].AsString;
end;

procedure TPresupuestos_RefreshDataTableRules.SetPROVINCIAValue(const aValue: String);
begin
  DataTable.Fields[idx_Presupuestos_RefreshPROVINCIA].AsString := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetCODIGO_POSTALValue: String;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshCODIGO_POSTAL].AsString;
end;

procedure TPresupuestos_RefreshDataTableRules.SetCODIGO_POSTALValue(const aValue: String);
begin
  DataTable.Fields[idx_Presupuestos_RefreshCODIGO_POSTAL].AsString := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetTELEFONO_1Value: String;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshTELEFONO_1].AsString;
end;

procedure TPresupuestos_RefreshDataTableRules.SetTELEFONO_1Value(const aValue: String);
begin
  DataTable.Fields[idx_Presupuestos_RefreshTELEFONO_1].AsString := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetTELEFONO_2Value: String;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshTELEFONO_2].AsString;
end;

procedure TPresupuestos_RefreshDataTableRules.SetTELEFONO_2Value(const aValue: String);
begin
  DataTable.Fields[idx_Presupuestos_RefreshTELEFONO_2].AsString := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetFAXValue: String;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshFAX].AsString;
end;

procedure TPresupuestos_RefreshDataTableRules.SetFAXValue(const aValue: String);
begin
  DataTable.Fields[idx_Presupuestos_RefreshFAX].AsString := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetMOVIL_1Value: String;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshMOVIL_1].AsString;
end;

procedure TPresupuestos_RefreshDataTableRules.SetMOVIL_1Value(const aValue: String);
begin
  DataTable.Fields[idx_Presupuestos_RefreshMOVIL_1].AsString := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetMOVIL_2Value: String;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshMOVIL_2].AsString;
end;

procedure TPresupuestos_RefreshDataTableRules.SetMOVIL_2Value(const aValue: String);
begin
  DataTable.Fields[idx_Presupuestos_RefreshMOVIL_2].AsString := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetEMAIL_1Value: String;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshEMAIL_1].AsString;
end;

procedure TPresupuestos_RefreshDataTableRules.SetEMAIL_1Value(const aValue: String);
begin
  DataTable.Fields[idx_Presupuestos_RefreshEMAIL_1].AsString := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetEMAIL_2Value: String;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshEMAIL_2].AsString;
end;

procedure TPresupuestos_RefreshDataTableRules.SetEMAIL_2Value(const aValue: String);
begin
  DataTable.Fields[idx_Presupuestos_RefreshEMAIL_2].AsString := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetID_VENDEDORValue: Integer;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshID_VENDEDOR].AsInteger;
end;

procedure TPresupuestos_RefreshDataTableRules.SetID_VENDEDORValue(const aValue: Integer);
begin
  DataTable.Fields[idx_Presupuestos_RefreshID_VENDEDOR].AsInteger := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetREFERENCIAValue: String;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshREFERENCIA].AsString;
end;

procedure TPresupuestos_RefreshDataTableRules.SetREFERENCIAValue(const aValue: String);
begin
  DataTable.Fields[idx_Presupuestos_RefreshREFERENCIA].AsString := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetFECHA_PRESUPUESTOValue: DateTime;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshFECHA_PRESUPUESTO].AsDateTime;
end;

procedure TPresupuestos_RefreshDataTableRules.SetFECHA_PRESUPUESTOValue(const aValue: DateTime);
begin
  DataTable.Fields[idx_Presupuestos_RefreshFECHA_PRESUPUESTO].AsDateTime := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetVIGENCIAValue: Integer;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshVIGENCIA].AsInteger;
end;

procedure TPresupuestos_RefreshDataTableRules.SetVIGENCIAValue(const aValue: Integer);
begin
  DataTable.Fields[idx_Presupuestos_RefreshVIGENCIA].AsInteger := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetSITUACIONValue: String;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshSITUACION].AsString;
end;

procedure TPresupuestos_RefreshDataTableRules.SetSITUACIONValue(const aValue: String);
begin
  DataTable.Fields[idx_Presupuestos_RefreshSITUACION].AsString := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetFECHA_DECISIONValue: DateTime;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshFECHA_DECISION].AsDateTime;
end;

procedure TPresupuestos_RefreshDataTableRules.SetFECHA_DECISIONValue(const aValue: DateTime);
begin
  DataTable.Fields[idx_Presupuestos_RefreshFECHA_DECISION].AsDateTime := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetBASE_IMPONIBLEValue: Float;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshBASE_IMPONIBLE].AsFloat;
end;

procedure TPresupuestos_RefreshDataTableRules.SetBASE_IMPONIBLEValue(const aValue: Float);
begin
  DataTable.Fields[idx_Presupuestos_RefreshBASE_IMPONIBLE].AsFloat := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetDESCUENTOValue: Float;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshDESCUENTO].AsFloat;
end;

procedure TPresupuestos_RefreshDataTableRules.SetDESCUENTOValue(const aValue: Float);
begin
  DataTable.Fields[idx_Presupuestos_RefreshDESCUENTO].AsFloat := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetIMPORTE_DESCUENTOValue: Float;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshIMPORTE_DESCUENTO].AsFloat;
end;

procedure TPresupuestos_RefreshDataTableRules.SetIMPORTE_DESCUENTOValue(const aValue: Float);
begin
  DataTable.Fields[idx_Presupuestos_RefreshIMPORTE_DESCUENTO].AsFloat := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetIVAValue: Float;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshIVA].AsFloat;
end;

procedure TPresupuestos_RefreshDataTableRules.SetIVAValue(const aValue: Float);
begin
  DataTable.Fields[idx_Presupuestos_RefreshIVA].AsFloat := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetIMPORTE_IVAValue: Float;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshIMPORTE_IVA].AsFloat;
end;

procedure TPresupuestos_RefreshDataTableRules.SetIMPORTE_IVAValue(const aValue: Float);
begin
  DataTable.Fields[idx_Presupuestos_RefreshIMPORTE_IVA].AsFloat := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetIMPORTE_TOTALValue: Float;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshIMPORTE_TOTAL].AsFloat;
end;

procedure TPresupuestos_RefreshDataTableRules.SetIMPORTE_TOTALValue(const aValue: Float);
begin
  DataTable.Fields[idx_Presupuestos_RefreshIMPORTE_TOTAL].AsFloat := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetOBSERVACIONESValue: IROStrings;
begin
  result := NewROStrings();
  result.Text := DataTable.Fields[idx_Presupuestos_RefreshOBSERVACIONES].AsString;
end;

procedure TPresupuestos_RefreshDataTableRules.SetOBSERVACIONESValue(const aValue: IROStrings);
begin
  DataTable.Fields[idx_Presupuestos_RefreshOBSERVACIONES].AsString := aValue.Text;
end;

function TPresupuestos_RefreshDataTableRules.GetPLAZO_ENTREGAValue: IROStrings;
begin
  result := NewROStrings();
  result.Text := DataTable.Fields[idx_Presupuestos_RefreshPLAZO_ENTREGA].AsString;
end;

procedure TPresupuestos_RefreshDataTableRules.SetPLAZO_ENTREGAValue(const aValue: IROStrings);
begin
  DataTable.Fields[idx_Presupuestos_RefreshPLAZO_ENTREGA].AsString := aValue.Text;
end;

function TPresupuestos_RefreshDataTableRules.GetFORMA_PAGOValue: IROStrings;
begin
  result := NewROStrings();
  result.Text := DataTable.Fields[idx_Presupuestos_RefreshFORMA_PAGO].AsString;
end;

procedure TPresupuestos_RefreshDataTableRules.SetFORMA_PAGOValue(const aValue: IROStrings);
begin
  DataTable.Fields[idx_Presupuestos_RefreshFORMA_PAGO].AsString := aValue.Text;
end;

function TPresupuestos_RefreshDataTableRules.GetFECHA_ALTAValue: DateTime;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshFECHA_ALTA].AsDateTime;
end;

procedure TPresupuestos_RefreshDataTableRules.SetFECHA_ALTAValue(const aValue: DateTime);
begin
  DataTable.Fields[idx_Presupuestos_RefreshFECHA_ALTA].AsDateTime := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetFECHA_MODIFICACIONValue: DateTime;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshFECHA_MODIFICACION].AsDateTime;
end;

procedure TPresupuestos_RefreshDataTableRules.SetFECHA_MODIFICACIONValue(const aValue: DateTime);
begin
  DataTable.Fields[idx_Presupuestos_RefreshFECHA_MODIFICACION].AsDateTime := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetUSUARIOValue: String;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshUSUARIO].AsString;
end;

procedure TPresupuestos_RefreshDataTableRules.SetUSUARIOValue(const aValue: String);
begin
  DataTable.Fields[idx_Presupuestos_RefreshUSUARIO].AsString := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetFECHA_VALIDEZValue: DateTime;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshFECHA_VALIDEZ].AsDateTime;
end;

procedure TPresupuestos_RefreshDataTableRules.SetFECHA_VALIDEZValue(const aValue: DateTime);
begin
  DataTable.Fields[idx_Presupuestos_RefreshFECHA_VALIDEZ].AsDateTime := aValue;
end;

function TPresupuestos_RefreshDataTableRules.GetID_MONTAJEValue: Integer;
begin
  result := DataTable.Fields[idx_Presupuestos_RefreshID_MONTAJE].AsInteger;
end;

procedure TPresupuestos_RefreshDataTableRules.SetID_MONTAJEValue(const aValue: Integer);
begin
  DataTable.Fields[idx_Presupuestos_RefreshID_MONTAJE].AsInteger := aValue;
end;


initialization
  RegisterDataTableRules(RID_darReferencia, TdarReferenciaDataTableRules);
  RegisterDataTableRules(RID_Presupuestos, TPresupuestosDataTableRules);
  RegisterDataTableRules(RID_Presupuestos_Detalles, TPresupuestos_DetallesDataTableRules);
  RegisterDataTableRules(RID_Presupuestos_Refresh, TPresupuestos_RefreshDataTableRules);

end.
