unit schContactosClient_Intf;

interface

uses
  Classes, DB, schBase_Intf, SysUtils, uROClasses, uDAInterfaces, uDADataTable, FmtBCD, uROXMLIntf;

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_Contactos = '{C70F7D0E-F4A7-4CFE-9944-779D78462802}';
  RID_DatosBancarios = '{28E8899E-75BE-4198-A469-BD7707476A56}';
  RID_DireccionesContacto = '{A946294F-D917-45C4-BC14-6DB2AFB13954}';
  RID_Contactos_Refresh = '{F268DFE8-EE77-4A04-BAED-893AC62B40CD}';
  RID_PersonalContacto = '{D665EAA8-4B09-478A-9FC1-F7E40234097C}';
  RID_Pacientes = '{F9D8AC20-2D16-43D9-8571-2319BD6371B2}';

  { Data table names }
  nme_Contactos = 'Contactos';
  nme_DatosBancarios = 'DatosBancarios';
  nme_DireccionesContacto = 'DireccionesContacto';
  nme_Contactos_Refresh = 'Contactos_Refresh';
  nme_PersonalContacto = 'PersonalContacto';
  nme_Pacientes = 'Pacientes';

  { Contactos fields }
  fld_ContactosID = 'ID';
  fld_ContactosID_CATEGORIA = 'ID_CATEGORIA';
  fld_ContactosNIF_CIF = 'NIF_CIF';
  fld_ContactosNOMBRE = 'NOMBRE';
  fld_ContactosPERSONA_CONTACTO = 'PERSONA_CONTACTO';
  fld_ContactosCALLE = 'CALLE';
  fld_ContactosPOBLACION = 'POBLACION';
  fld_ContactosPROVINCIA = 'PROVINCIA';
  fld_ContactosCODIGO_POSTAL = 'CODIGO_POSTAL';
  fld_ContactosTELEFONO_1 = 'TELEFONO_1';
  fld_ContactosTELEFONO_2 = 'TELEFONO_2';
  fld_ContactosMOVIL_1 = 'MOVIL_1';
  fld_ContactosMOVIL_2 = 'MOVIL_2';
  fld_ContactosFAX = 'FAX';
  fld_ContactosEMAIL_1 = 'EMAIL_1';
  fld_ContactosEMAIL_2 = 'EMAIL_2';
  fld_ContactosPAGINA_WEB = 'PAGINA_WEB';
  fld_ContactosNOTAS = 'NOTAS';
  fld_ContactosFECHA_ALTA = 'FECHA_ALTA';
  fld_ContactosFECHA_MODIFICACION = 'FECHA_MODIFICACION';
  fld_ContactosUSUARIO = 'USUARIO';
  fld_ContactosID_EMPRESA = 'ID_EMPRESA';
  fld_ContactosREFERENCIA = 'REFERENCIA';

  { Contactos field indexes }
  idx_ContactosID = 0;
  idx_ContactosID_CATEGORIA = 1;
  idx_ContactosNIF_CIF = 2;
  idx_ContactosNOMBRE = 3;
  idx_ContactosPERSONA_CONTACTO = 4;
  idx_ContactosCALLE = 5;
  idx_ContactosPOBLACION = 6;
  idx_ContactosPROVINCIA = 7;
  idx_ContactosCODIGO_POSTAL = 8;
  idx_ContactosTELEFONO_1 = 9;
  idx_ContactosTELEFONO_2 = 10;
  idx_ContactosMOVIL_1 = 11;
  idx_ContactosMOVIL_2 = 12;
  idx_ContactosFAX = 13;
  idx_ContactosEMAIL_1 = 14;
  idx_ContactosEMAIL_2 = 15;
  idx_ContactosPAGINA_WEB = 16;
  idx_ContactosNOTAS = 17;
  idx_ContactosFECHA_ALTA = 18;
  idx_ContactosFECHA_MODIFICACION = 19;
  idx_ContactosUSUARIO = 20;
  idx_ContactosID_EMPRESA = 21;
  idx_ContactosREFERENCIA = 22;

  { DatosBancarios fields }
  fld_DatosBancariosID = 'ID';
  fld_DatosBancariosID_CONTACTO = 'ID_CONTACTO';
  fld_DatosBancariosTITULAR = 'TITULAR';
  fld_DatosBancariosENTIDAD = 'ENTIDAD';
  fld_DatosBancariosSUCURSAL = 'SUCURSAL';
  fld_DatosBancariosDC = 'DC';
  fld_DatosBancariosCUENTA = 'CUENTA';
  fld_DatosBancariosFECHA_ALTA = 'FECHA_ALTA';
  fld_DatosBancariosFECHA_MODIFICACION = 'FECHA_MODIFICACION';

  { DatosBancarios field indexes }
  idx_DatosBancariosID = 0;
  idx_DatosBancariosID_CONTACTO = 1;
  idx_DatosBancariosTITULAR = 2;
  idx_DatosBancariosENTIDAD = 3;
  idx_DatosBancariosSUCURSAL = 4;
  idx_DatosBancariosDC = 5;
  idx_DatosBancariosCUENTA = 6;
  idx_DatosBancariosFECHA_ALTA = 7;
  idx_DatosBancariosFECHA_MODIFICACION = 8;

  { DireccionesContacto fields }
  fld_DireccionesContactoID = 'ID';
  fld_DireccionesContactoID_CONTACTO = 'ID_CONTACTO';
  fld_DireccionesContactoCALLE = 'CALLE';
  fld_DireccionesContactoPOBLACION = 'POBLACION';
  fld_DireccionesContactoPROVINCIA = 'PROVINCIA';
  fld_DireccionesContactoCODIGO_POSTAL = 'CODIGO_POSTAL';
  fld_DireccionesContactoPERSONA_CONTACTO = 'PERSONA_CONTACTO';
  fld_DireccionesContactoNOMBRE = 'NOMBRE';
  fld_DireccionesContactoTELEFONO = 'TELEFONO';
  fld_DireccionesContactoMOVIL = 'MOVIL';
  fld_DireccionesContactoFAX = 'FAX';
  fld_DireccionesContactoEMAIL = 'EMAIL';
  fld_DireccionesContactoNOTAS = 'NOTAS';
  fld_DireccionesContactoPORTE = 'PORTE';
  fld_DireccionesContactoFECHA_ALTA = 'FECHA_ALTA';
  fld_DireccionesContactoFECHA_MODIFICACION = 'FECHA_MODIFICACION';

  { DireccionesContacto field indexes }
  idx_DireccionesContactoID = 0;
  idx_DireccionesContactoID_CONTACTO = 1;
  idx_DireccionesContactoCALLE = 2;
  idx_DireccionesContactoPOBLACION = 3;
  idx_DireccionesContactoPROVINCIA = 4;
  idx_DireccionesContactoCODIGO_POSTAL = 5;
  idx_DireccionesContactoPERSONA_CONTACTO = 6;
  idx_DireccionesContactoNOMBRE = 7;
  idx_DireccionesContactoTELEFONO = 8;
  idx_DireccionesContactoMOVIL = 9;
  idx_DireccionesContactoFAX = 10;
  idx_DireccionesContactoEMAIL = 11;
  idx_DireccionesContactoNOTAS = 12;
  idx_DireccionesContactoPORTE = 13;
  idx_DireccionesContactoFECHA_ALTA = 14;
  idx_DireccionesContactoFECHA_MODIFICACION = 15;

  { Contactos_Refresh fields }
  fld_Contactos_RefreshID = 'ID';
  fld_Contactos_RefreshNIF_CIF = 'NIF_CIF';
  fld_Contactos_RefreshNOMBRE = 'NOMBRE';
  fld_Contactos_RefreshCALLE = 'CALLE';
  fld_Contactos_RefreshPOBLACION = 'POBLACION';
  fld_Contactos_RefreshPROVINCIA = 'PROVINCIA';
  fld_Contactos_RefreshCODIGO_POSTAL = 'CODIGO_POSTAL';
  fld_Contactos_RefreshTELEFONO_1 = 'TELEFONO_1';
  fld_Contactos_RefreshTELEFONO_2 = 'TELEFONO_2';
  fld_Contactos_RefreshMOVIL_1 = 'MOVIL_1';
  fld_Contactos_RefreshMOVIL_2 = 'MOVIL_2';
  fld_Contactos_RefreshFAX = 'FAX';
  fld_Contactos_RefreshEMAIL_1 = 'EMAIL_1';
  fld_Contactos_RefreshEMAIL_2 = 'EMAIL_2';
  fld_Contactos_RefreshPAGINA_WEB = 'PAGINA_WEB';
  fld_Contactos_RefreshNOTAS = 'NOTAS';
  fld_Contactos_RefreshFECHA_ALTA = 'FECHA_ALTA';
  fld_Contactos_RefreshFECHA_MODIFICACION = 'FECHA_MODIFICACION';
  fld_Contactos_RefreshUSUARIO = 'USUARIO';
  fld_Contactos_RefreshREFERENCIA = 'REFERENCIA';
  fld_Contactos_RefreshPERSONA_CONTACTO = 'PERSONA_CONTACTO';

  { Contactos_Refresh field indexes }
  idx_Contactos_RefreshID = 0;
  idx_Contactos_RefreshNIF_CIF = 1;
  idx_Contactos_RefreshNOMBRE = 2;
  idx_Contactos_RefreshCALLE = 3;
  idx_Contactos_RefreshPOBLACION = 4;
  idx_Contactos_RefreshPROVINCIA = 5;
  idx_Contactos_RefreshCODIGO_POSTAL = 6;
  idx_Contactos_RefreshTELEFONO_1 = 7;
  idx_Contactos_RefreshTELEFONO_2 = 8;
  idx_Contactos_RefreshMOVIL_1 = 9;
  idx_Contactos_RefreshMOVIL_2 = 10;
  idx_Contactos_RefreshFAX = 11;
  idx_Contactos_RefreshEMAIL_1 = 12;
  idx_Contactos_RefreshEMAIL_2 = 13;
  idx_Contactos_RefreshPAGINA_WEB = 14;
  idx_Contactos_RefreshNOTAS = 15;
  idx_Contactos_RefreshFECHA_ALTA = 16;
  idx_Contactos_RefreshFECHA_MODIFICACION = 17;
  idx_Contactos_RefreshUSUARIO = 18;
  idx_Contactos_RefreshREFERENCIA = 19;
  idx_Contactos_RefreshPERSONA_CONTACTO = 20;

  { PersonalContacto fields }
  fld_PersonalContactoID = 'ID';
  fld_PersonalContactoID_CONTACTO = 'ID_CONTACTO';
  fld_PersonalContactoNOMBRE = 'NOMBRE';
  fld_PersonalContactoPUESTO = 'PUESTO';
  fld_PersonalContactoTELEFONO = 'TELEFONO';
  fld_PersonalContactoMOVIL = 'MOVIL';
  fld_PersonalContactoFAX = 'FAX';
  fld_PersonalContactoEMAIL = 'EMAIL';
  fld_PersonalContactoFECHA_ALTA = 'FECHA_ALTA';
  fld_PersonalContactoFECHA_MODIFICACION = 'FECHA_MODIFICACION';

  { PersonalContacto field indexes }
  idx_PersonalContactoID = 0;
  idx_PersonalContactoID_CONTACTO = 1;
  idx_PersonalContactoNOMBRE = 2;
  idx_PersonalContactoPUESTO = 3;
  idx_PersonalContactoTELEFONO = 4;
  idx_PersonalContactoMOVIL = 5;
  idx_PersonalContactoFAX = 6;
  idx_PersonalContactoEMAIL = 7;
  idx_PersonalContactoFECHA_ALTA = 8;
  idx_PersonalContactoFECHA_MODIFICACION = 9;

  { Pacientes fields }
  fld_PacientesID = 'ID';
  fld_PacientesID_CATEGORIA = 'ID_CATEGORIA';
  fld_PacientesNIF_CIF = 'NIF_CIF';
  fld_PacientesNOMBRE = 'NOMBRE';
  fld_PacientesPERSONA_CONTACTO = 'PERSONA_CONTACTO';
  fld_PacientesCALLE = 'CALLE';
  fld_PacientesPOBLACION = 'POBLACION';
  fld_PacientesPROVINCIA = 'PROVINCIA';
  fld_PacientesCODIGO_POSTAL = 'CODIGO_POSTAL';
  fld_PacientesTELEFONO_1 = 'TELEFONO_1';
  fld_PacientesTELEFONO_2 = 'TELEFONO_2';
  fld_PacientesMOVIL_1 = 'MOVIL_1';
  fld_PacientesMOVIL_2 = 'MOVIL_2';
  fld_PacientesFAX = 'FAX';
  fld_PacientesEMAIL_1 = 'EMAIL_1';
  fld_PacientesEMAIL_2 = 'EMAIL_2';
  fld_PacientesPAGINA_WEB = 'PAGINA_WEB';
  fld_PacientesNOTAS = 'NOTAS';
  fld_PacientesFECHA_ALTA = 'FECHA_ALTA';
  fld_PacientesFECHA_MODIFICACION = 'FECHA_MODIFICACION';
  fld_PacientesUSUARIO = 'USUARIO';
  fld_PacientesID_EMPRESA = 'ID_EMPRESA';
  fld_PacientesREFERENCIA = 'REFERENCIA';
  fld_PacientesFECHA_NACIMIENTO = 'FECHA_NACIMIENTO';
  fld_PacientesNUMERO_SS = 'NUMERO_SS';
  fld_PacientesFECHA_BAJA = 'FECHA_BAJA';
  fld_PacientesCAUSA_BAJA = 'CAUSA_BAJA';
  fld_PacientesPABELLON = 'PABELLON';

  { Pacientes field indexes }
  idx_PacientesID = 0;
  idx_PacientesID_CATEGORIA = 1;
  idx_PacientesNIF_CIF = 2;
  idx_PacientesNOMBRE = 3;
  idx_PacientesPERSONA_CONTACTO = 4;
  idx_PacientesCALLE = 5;
  idx_PacientesPOBLACION = 6;
  idx_PacientesPROVINCIA = 7;
  idx_PacientesCODIGO_POSTAL = 8;
  idx_PacientesTELEFONO_1 = 9;
  idx_PacientesTELEFONO_2 = 10;
  idx_PacientesMOVIL_1 = 11;
  idx_PacientesMOVIL_2 = 12;
  idx_PacientesFAX = 13;
  idx_PacientesEMAIL_1 = 14;
  idx_PacientesEMAIL_2 = 15;
  idx_PacientesPAGINA_WEB = 16;
  idx_PacientesNOTAS = 17;
  idx_PacientesFECHA_ALTA = 18;
  idx_PacientesFECHA_MODIFICACION = 19;
  idx_PacientesUSUARIO = 20;
  idx_PacientesID_EMPRESA = 21;
  idx_PacientesREFERENCIA = 22;
  idx_PacientesFECHA_NACIMIENTO = 23;
  idx_PacientesNUMERO_SS = 24;
  idx_PacientesFECHA_BAJA = 25;
  idx_PacientesCAUSA_BAJA = 26;
  idx_PacientesPABELLON = 27;

type
  { IContactos }
  IContactos = interface(IDAStronglyTypedDataTable)
  ['{CD8D0182-85A8-4864-B68C-8881352B60BC}']
    { Property getters and setters }
    function GetIDValue: Integer;
    procedure SetIDValue(const aValue: Integer);
    function GetIDIsNull: Boolean;
    procedure SetIDIsNull(const aValue: Boolean);
    function GetID_CATEGORIAValue: Integer;
    procedure SetID_CATEGORIAValue(const aValue: Integer);
    function GetID_CATEGORIAIsNull: Boolean;
    procedure SetID_CATEGORIAIsNull(const aValue: Boolean);
    function GetNIF_CIFValue: String;
    procedure SetNIF_CIFValue(const aValue: String);
    function GetNIF_CIFIsNull: Boolean;
    procedure SetNIF_CIFIsNull(const aValue: Boolean);
    function GetNOMBREValue: String;
    procedure SetNOMBREValue(const aValue: String);
    function GetNOMBREIsNull: Boolean;
    procedure SetNOMBREIsNull(const aValue: Boolean);
    function GetPERSONA_CONTACTOValue: String;
    procedure SetPERSONA_CONTACTOValue(const aValue: String);
    function GetPERSONA_CONTACTOIsNull: Boolean;
    procedure SetPERSONA_CONTACTOIsNull(const aValue: Boolean);
    function GetCALLEValue: String;
    procedure SetCALLEValue(const aValue: String);
    function GetCALLEIsNull: Boolean;
    procedure SetCALLEIsNull(const aValue: Boolean);
    function GetPOBLACIONValue: String;
    procedure SetPOBLACIONValue(const aValue: String);
    function GetPOBLACIONIsNull: Boolean;
    procedure SetPOBLACIONIsNull(const aValue: Boolean);
    function GetPROVINCIAValue: String;
    procedure SetPROVINCIAValue(const aValue: String);
    function GetPROVINCIAIsNull: Boolean;
    procedure SetPROVINCIAIsNull(const aValue: Boolean);
    function GetCODIGO_POSTALValue: String;
    procedure SetCODIGO_POSTALValue(const aValue: String);
    function GetCODIGO_POSTALIsNull: Boolean;
    procedure SetCODIGO_POSTALIsNull(const aValue: Boolean);
    function GetTELEFONO_1Value: String;
    procedure SetTELEFONO_1Value(const aValue: String);
    function GetTELEFONO_1IsNull: Boolean;
    procedure SetTELEFONO_1IsNull(const aValue: Boolean);
    function GetTELEFONO_2Value: String;
    procedure SetTELEFONO_2Value(const aValue: String);
    function GetTELEFONO_2IsNull: Boolean;
    procedure SetTELEFONO_2IsNull(const aValue: Boolean);
    function GetMOVIL_1Value: String;
    procedure SetMOVIL_1Value(const aValue: String);
    function GetMOVIL_1IsNull: Boolean;
    procedure SetMOVIL_1IsNull(const aValue: Boolean);
    function GetMOVIL_2Value: String;
    procedure SetMOVIL_2Value(const aValue: String);
    function GetMOVIL_2IsNull: Boolean;
    procedure SetMOVIL_2IsNull(const aValue: Boolean);
    function GetFAXValue: String;
    procedure SetFAXValue(const aValue: String);
    function GetFAXIsNull: Boolean;
    procedure SetFAXIsNull(const aValue: Boolean);
    function GetEMAIL_1Value: String;
    procedure SetEMAIL_1Value(const aValue: String);
    function GetEMAIL_1IsNull: Boolean;
    procedure SetEMAIL_1IsNull(const aValue: Boolean);
    function GetEMAIL_2Value: String;
    procedure SetEMAIL_2Value(const aValue: String);
    function GetEMAIL_2IsNull: Boolean;
    procedure SetEMAIL_2IsNull(const aValue: Boolean);
    function GetPAGINA_WEBValue: String;
    procedure SetPAGINA_WEBValue(const aValue: String);
    function GetPAGINA_WEBIsNull: Boolean;
    procedure SetPAGINA_WEBIsNull(const aValue: Boolean);
    function GetNOTASValue: IROStrings;
    function GetNOTASIsNull: Boolean;
    procedure SetNOTASIsNull(const aValue: Boolean);
    function GetFECHA_ALTAValue: DateTime;
    procedure SetFECHA_ALTAValue(const aValue: DateTime);
    function GetFECHA_ALTAIsNull: Boolean;
    procedure SetFECHA_ALTAIsNull(const aValue: Boolean);
    function GetFECHA_MODIFICACIONValue: DateTime;
    procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime);
    function GetFECHA_MODIFICACIONIsNull: Boolean;
    procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean);
    function GetUSUARIOValue: String;
    procedure SetUSUARIOValue(const aValue: String);
    function GetUSUARIOIsNull: Boolean;
    procedure SetUSUARIOIsNull(const aValue: Boolean);
    function GetID_EMPRESAValue: Integer;
    procedure SetID_EMPRESAValue(const aValue: Integer);
    function GetID_EMPRESAIsNull: Boolean;
    procedure SetID_EMPRESAIsNull(const aValue: Boolean);
    function GetREFERENCIAValue: String;
    procedure SetREFERENCIAValue(const aValue: String);
    function GetREFERENCIAIsNull: Boolean;
    procedure SetREFERENCIAIsNull(const aValue: Boolean);


    { Properties }
    property ID: Integer read GetIDValue write SetIDValue;
    property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull;
    property ID_CATEGORIA: Integer read GetID_CATEGORIAValue write SetID_CATEGORIAValue;
    property ID_CATEGORIAIsNull: Boolean read GetID_CATEGORIAIsNull write SetID_CATEGORIAIsNull;
    property NIF_CIF: String read GetNIF_CIFValue write SetNIF_CIFValue;
    property NIF_CIFIsNull: Boolean read GetNIF_CIFIsNull write SetNIF_CIFIsNull;
    property NOMBRE: String read GetNOMBREValue write SetNOMBREValue;
    property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull;
    property PERSONA_CONTACTO: String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue;
    property PERSONA_CONTACTOIsNull: Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull;
    property CALLE: String read GetCALLEValue write SetCALLEValue;
    property CALLEIsNull: Boolean read GetCALLEIsNull write SetCALLEIsNull;
    property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue;
    property POBLACIONIsNull: Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull;
    property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue;
    property PROVINCIAIsNull: Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull;
    property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue;
    property CODIGO_POSTALIsNull: Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull;
    property TELEFONO_1: String read GetTELEFONO_1Value write SetTELEFONO_1Value;
    property TELEFONO_1IsNull: Boolean read GetTELEFONO_1IsNull write SetTELEFONO_1IsNull;
    property TELEFONO_2: String read GetTELEFONO_2Value write SetTELEFONO_2Value;
    property TELEFONO_2IsNull: Boolean read GetTELEFONO_2IsNull write SetTELEFONO_2IsNull;
    property MOVIL_1: String read GetMOVIL_1Value write SetMOVIL_1Value;
    property MOVIL_1IsNull: Boolean read GetMOVIL_1IsNull write SetMOVIL_1IsNull;
    property MOVIL_2: String read GetMOVIL_2Value write SetMOVIL_2Value;
    property MOVIL_2IsNull: Boolean read GetMOVIL_2IsNull write SetMOVIL_2IsNull;
    property FAX: String read GetFAXValue write SetFAXValue;
    property FAXIsNull: Boolean read GetFAXIsNull write SetFAXIsNull;
    property EMAIL_1: String read GetEMAIL_1Value write SetEMAIL_1Value;
    property EMAIL_1IsNull: Boolean read GetEMAIL_1IsNull write SetEMAIL_1IsNull;
    property EMAIL_2: String read GetEMAIL_2Value write SetEMAIL_2Value;
    property EMAIL_2IsNull: Boolean read GetEMAIL_2IsNull write SetEMAIL_2IsNull;
    property PAGINA_WEB: String read GetPAGINA_WEBValue write SetPAGINA_WEBValue;
    property PAGINA_WEBIsNull: Boolean read GetPAGINA_WEBIsNull write SetPAGINA_WEBIsNull;
    property NOTAS: IROStrings read GetNOTASValue;
    property NOTASIsNull: Boolean read GetNOTASIsNull write SetNOTASIsNull;
    property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue;
    property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull;
    property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue;
    property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull;
    property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue;
    property USUARIOIsNull: Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull;
    property ID_EMPRESA: Integer read GetID_EMPRESAValue write SetID_EMPRESAValue;
    property ID_EMPRESAIsNull: Boolean read GetID_EMPRESAIsNull write SetID_EMPRESAIsNull;
    property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue;
    property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull;
  end;

  { TContactosDataTableRules }
  TContactosDataTableRules = class(TIntfObjectDADataTableRules, IContactos)
  private
    f_NOTAS: IROStrings;
    procedure NOTAS_OnChange(Sender: TObject);
  protected
    { Property getters and setters }
    function GetIDValue: Integer; virtual;
    procedure SetIDValue(const aValue: Integer); virtual;
    function GetIDIsNull: Boolean; virtual;
    procedure SetIDIsNull(const aValue: Boolean); virtual;
    function GetID_CATEGORIAValue: Integer; virtual;
    procedure SetID_CATEGORIAValue(const aValue: Integer); virtual;
    function GetID_CATEGORIAIsNull: Boolean; virtual;
    procedure SetID_CATEGORIAIsNull(const aValue: Boolean); virtual;
    function GetNIF_CIFValue: String; virtual;
    procedure SetNIF_CIFValue(const aValue: String); virtual;
    function GetNIF_CIFIsNull: Boolean; virtual;
    procedure SetNIF_CIFIsNull(const aValue: Boolean); virtual;
    function GetNOMBREValue: String; virtual;
    procedure SetNOMBREValue(const aValue: String); virtual;
    function GetNOMBREIsNull: Boolean; virtual;
    procedure SetNOMBREIsNull(const aValue: Boolean); virtual;
    function GetPERSONA_CONTACTOValue: String; virtual;
    procedure SetPERSONA_CONTACTOValue(const aValue: String); virtual;
    function GetPERSONA_CONTACTOIsNull: Boolean; virtual;
    procedure SetPERSONA_CONTACTOIsNull(const aValue: Boolean); virtual;
    function GetCALLEValue: String; virtual;
    procedure SetCALLEValue(const aValue: String); virtual;
    function GetCALLEIsNull: Boolean; virtual;
    procedure SetCALLEIsNull(const aValue: Boolean); virtual;
    function GetPOBLACIONValue: String; virtual;
    procedure SetPOBLACIONValue(const aValue: String); virtual;
    function GetPOBLACIONIsNull: Boolean; virtual;
    procedure SetPOBLACIONIsNull(const aValue: Boolean); virtual;
    function GetPROVINCIAValue: String; virtual;
    procedure SetPROVINCIAValue(const aValue: String); virtual;
    function GetPROVINCIAIsNull: Boolean; virtual;
    procedure SetPROVINCIAIsNull(const aValue: Boolean); virtual;
    function GetCODIGO_POSTALValue: String; virtual;
    procedure SetCODIGO_POSTALValue(const aValue: String); virtual;
    function GetCODIGO_POSTALIsNull: Boolean; virtual;
    procedure SetCODIGO_POSTALIsNull(const aValue: Boolean); virtual;
    function GetTELEFONO_1Value: String; virtual;
    procedure SetTELEFONO_1Value(const aValue: String); virtual;
    function GetTELEFONO_1IsNull: Boolean; virtual;
    procedure SetTELEFONO_1IsNull(const aValue: Boolean); virtual;
    function GetTELEFONO_2Value: String; virtual;
    procedure SetTELEFONO_2Value(const aValue: String); virtual;
    function GetTELEFONO_2IsNull: Boolean; virtual;
    procedure SetTELEFONO_2IsNull(const aValue: Boolean); virtual;
    function GetMOVIL_1Value: String; virtual;
    procedure SetMOVIL_1Value(const aValue: String); virtual;
    function GetMOVIL_1IsNull: Boolean; virtual;
    procedure SetMOVIL_1IsNull(const aValue: Boolean); virtual;
    function GetMOVIL_2Value: String; virtual;
    procedure SetMOVIL_2Value(const aValue: String); virtual;
    function GetMOVIL_2IsNull: Boolean; virtual;
    procedure SetMOVIL_2IsNull(const aValue: Boolean); virtual;
    function GetFAXValue: String; virtual;
    procedure SetFAXValue(const aValue: String); virtual;
    function GetFAXIsNull: Boolean; virtual;
    procedure SetFAXIsNull(const aValue: Boolean); virtual;
    function GetEMAIL_1Value: String; virtual;
    procedure SetEMAIL_1Value(const aValue: String); virtual;
    function GetEMAIL_1IsNull: Boolean; virtual;
    procedure SetEMAIL_1IsNull(const aValue: Boolean); virtual;
    function GetEMAIL_2Value: String; virtual;
    procedure SetEMAIL_2Value(const aValue: String); virtual;
    function GetEMAIL_2IsNull: Boolean; virtual;
    procedure SetEMAIL_2IsNull(const aValue: Boolean); virtual;
    function GetPAGINA_WEBValue: String; virtual;
    procedure SetPAGINA_WEBValue(const aValue: String); virtual;
    function GetPAGINA_WEBIsNull: Boolean; virtual;
    procedure SetPAGINA_WEBIsNull(const aValue: Boolean); virtual;
    function GetNOTASValue: IROStrings; virtual;
    function GetNOTASIsNull: Boolean; virtual;
    procedure SetNOTASIsNull(const aValue: Boolean); virtual;
    function GetFECHA_ALTAValue: DateTime; virtual;
    procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual;
    function GetFECHA_ALTAIsNull: Boolean; virtual;
    procedure SetFECHA_ALTAIsNull(const aValue: Boolean); virtual;
    function GetFECHA_MODIFICACIONValue: DateTime; virtual;
    procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual;
    function GetFECHA_MODIFICACIONIsNull: Boolean; virtual;
    procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); virtual;
    function GetUSUARIOValue: String; virtual;
    procedure SetUSUARIOValue(const aValue: String); virtual;
    function GetUSUARIOIsNull: Boolean; virtual;
    procedure SetUSUARIOIsNull(const aValue: Boolean); virtual;
    function GetID_EMPRESAValue: Integer; virtual;
    procedure SetID_EMPRESAValue(const aValue: Integer); virtual;
    function GetID_EMPRESAIsNull: Boolean; virtual;
    procedure SetID_EMPRESAIsNull(const aValue: Boolean); virtual;
    function GetREFERENCIAValue: String; virtual;
    procedure SetREFERENCIAValue(const aValue: String); virtual;
    function GetREFERENCIAIsNull: Boolean; virtual;
    procedure SetREFERENCIAIsNull(const aValue: Boolean); virtual;

    { Properties }
    property ID: Integer read GetIDValue write SetIDValue;
    property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull;
    property ID_CATEGORIA: Integer read GetID_CATEGORIAValue write SetID_CATEGORIAValue;
    property ID_CATEGORIAIsNull: Boolean read GetID_CATEGORIAIsNull write SetID_CATEGORIAIsNull;
    property NIF_CIF: String read GetNIF_CIFValue write SetNIF_CIFValue;
    property NIF_CIFIsNull: Boolean read GetNIF_CIFIsNull write SetNIF_CIFIsNull;
    property NOMBRE: String read GetNOMBREValue write SetNOMBREValue;
    property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull;
    property PERSONA_CONTACTO: String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue;
    property PERSONA_CONTACTOIsNull: Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull;
    property CALLE: String read GetCALLEValue write SetCALLEValue;
    property CALLEIsNull: Boolean read GetCALLEIsNull write SetCALLEIsNull;
    property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue;
    property POBLACIONIsNull: Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull;
    property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue;
    property PROVINCIAIsNull: Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull;
    property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue;
    property CODIGO_POSTALIsNull: Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull;
    property TELEFONO_1: String read GetTELEFONO_1Value write SetTELEFONO_1Value;
    property TELEFONO_1IsNull: Boolean read GetTELEFONO_1IsNull write SetTELEFONO_1IsNull;
    property TELEFONO_2: String read GetTELEFONO_2Value write SetTELEFONO_2Value;
    property TELEFONO_2IsNull: Boolean read GetTELEFONO_2IsNull write SetTELEFONO_2IsNull;
    property MOVIL_1: String read GetMOVIL_1Value write SetMOVIL_1Value;
    property MOVIL_1IsNull: Boolean read GetMOVIL_1IsNull write SetMOVIL_1IsNull;
    property MOVIL_2: String read GetMOVIL_2Value write SetMOVIL_2Value;
    property MOVIL_2IsNull: Boolean read GetMOVIL_2IsNull write SetMOVIL_2IsNull;
    property FAX: String read GetFAXValue write SetFAXValue;
    property FAXIsNull: Boolean read GetFAXIsNull write SetFAXIsNull;
    property EMAIL_1: String read GetEMAIL_1Value write SetEMAIL_1Value;
    property EMAIL_1IsNull: Boolean read GetEMAIL_1IsNull write SetEMAIL_1IsNull;
    property EMAIL_2: String read GetEMAIL_2Value write SetEMAIL_2Value;
    property EMAIL_2IsNull: Boolean read GetEMAIL_2IsNull write SetEMAIL_2IsNull;
    property PAGINA_WEB: String read GetPAGINA_WEBValue write SetPAGINA_WEBValue;
    property PAGINA_WEBIsNull: Boolean read GetPAGINA_WEBIsNull write SetPAGINA_WEBIsNull;
    property NOTAS: IROStrings read GetNOTASValue;
    property NOTASIsNull: Boolean read GetNOTASIsNull write SetNOTASIsNull;
    property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue;
    property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull;
    property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue;
    property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull;
    property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue;
    property USUARIOIsNull: Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull;
    property ID_EMPRESA: Integer read GetID_EMPRESAValue write SetID_EMPRESAValue;
    property ID_EMPRESAIsNull: Boolean read GetID_EMPRESAIsNull write SetID_EMPRESAIsNull;
    property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue;
    property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull;

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

  end;

  { IDatosBancarios }
  IDatosBancarios = interface(IDAStronglyTypedDataTable)
  ['{C69A3D95-8E46-40B2-B58B-62D44ECE77CC}']
    { Property getters and setters }
    function GetIDValue: Integer;
    procedure SetIDValue(const aValue: Integer);
    function GetIDIsNull: Boolean;
    procedure SetIDIsNull(const aValue: Boolean);
    function GetID_CONTACTOValue: Integer;
    procedure SetID_CONTACTOValue(const aValue: Integer);
    function GetID_CONTACTOIsNull: Boolean;
    procedure SetID_CONTACTOIsNull(const aValue: Boolean);
    function GetTITULARValue: String;
    procedure SetTITULARValue(const aValue: String);
    function GetTITULARIsNull: Boolean;
    procedure SetTITULARIsNull(const aValue: Boolean);
    function GetENTIDADValue: String;
    procedure SetENTIDADValue(const aValue: String);
    function GetENTIDADIsNull: Boolean;
    procedure SetENTIDADIsNull(const aValue: Boolean);
    function GetSUCURSALValue: String;
    procedure SetSUCURSALValue(const aValue: String);
    function GetSUCURSALIsNull: Boolean;
    procedure SetSUCURSALIsNull(const aValue: Boolean);
    function GetDCValue: String;
    procedure SetDCValue(const aValue: String);
    function GetDCIsNull: Boolean;
    procedure SetDCIsNull(const aValue: Boolean);
    function GetCUENTAValue: String;
    procedure SetCUENTAValue(const aValue: String);
    function GetCUENTAIsNull: Boolean;
    procedure SetCUENTAIsNull(const aValue: Boolean);
    function GetFECHA_ALTAValue: DateTime;
    procedure SetFECHA_ALTAValue(const aValue: DateTime);
    function GetFECHA_ALTAIsNull: Boolean;
    procedure SetFECHA_ALTAIsNull(const aValue: Boolean);
    function GetFECHA_MODIFICACIONValue: DateTime;
    procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime);
    function GetFECHA_MODIFICACIONIsNull: Boolean;
    procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean);


    { Properties }
    property ID: Integer read GetIDValue write SetIDValue;
    property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull;
    property ID_CONTACTO: Integer read GetID_CONTACTOValue write SetID_CONTACTOValue;
    property ID_CONTACTOIsNull: Boolean read GetID_CONTACTOIsNull write SetID_CONTACTOIsNull;
    property TITULAR: String read GetTITULARValue write SetTITULARValue;
    property TITULARIsNull: Boolean read GetTITULARIsNull write SetTITULARIsNull;
    property ENTIDAD: String read GetENTIDADValue write SetENTIDADValue;
    property ENTIDADIsNull: Boolean read GetENTIDADIsNull write SetENTIDADIsNull;
    property SUCURSAL: String read GetSUCURSALValue write SetSUCURSALValue;
    property SUCURSALIsNull: Boolean read GetSUCURSALIsNull write SetSUCURSALIsNull;
    property DC: String read GetDCValue write SetDCValue;
    property DCIsNull: Boolean read GetDCIsNull write SetDCIsNull;
    property CUENTA: String read GetCUENTAValue write SetCUENTAValue;
    property CUENTAIsNull: Boolean read GetCUENTAIsNull write SetCUENTAIsNull;
    property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue;
    property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull;
    property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue;
    property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull;
  end;

  { TDatosBancariosDataTableRules }
  TDatosBancariosDataTableRules = class(TIntfObjectDADataTableRules, IDatosBancarios)
  private
  protected
    { Property getters and setters }
    function GetIDValue: Integer; virtual;
    procedure SetIDValue(const aValue: Integer); virtual;
    function GetIDIsNull: Boolean; virtual;
    procedure SetIDIsNull(const aValue: Boolean); virtual;
    function GetID_CONTACTOValue: Integer; virtual;
    procedure SetID_CONTACTOValue(const aValue: Integer); virtual;
    function GetID_CONTACTOIsNull: Boolean; virtual;
    procedure SetID_CONTACTOIsNull(const aValue: Boolean); virtual;
    function GetTITULARValue: String; virtual;
    procedure SetTITULARValue(const aValue: String); virtual;
    function GetTITULARIsNull: Boolean; virtual;
    procedure SetTITULARIsNull(const aValue: Boolean); virtual;
    function GetENTIDADValue: String; virtual;
    procedure SetENTIDADValue(const aValue: String); virtual;
    function GetENTIDADIsNull: Boolean; virtual;
    procedure SetENTIDADIsNull(const aValue: Boolean); virtual;
    function GetSUCURSALValue: String; virtual;
    procedure SetSUCURSALValue(const aValue: String); virtual;
    function GetSUCURSALIsNull: Boolean; virtual;
    procedure SetSUCURSALIsNull(const aValue: Boolean); virtual;
    function GetDCValue: String; virtual;
    procedure SetDCValue(const aValue: String); virtual;
    function GetDCIsNull: Boolean; virtual;
    procedure SetDCIsNull(const aValue: Boolean); virtual;
    function GetCUENTAValue: String; virtual;
    procedure SetCUENTAValue(const aValue: String); virtual;
    function GetCUENTAIsNull: Boolean; virtual;
    procedure SetCUENTAIsNull(const aValue: Boolean); virtual;
    function GetFECHA_ALTAValue: DateTime; virtual;
    procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual;
    function GetFECHA_ALTAIsNull: Boolean; virtual;
    procedure SetFECHA_ALTAIsNull(const aValue: Boolean); virtual;
    function GetFECHA_MODIFICACIONValue: DateTime; virtual;
    procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual;
    function GetFECHA_MODIFICACIONIsNull: Boolean; virtual;
    procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); virtual;

    { Properties }
    property ID: Integer read GetIDValue write SetIDValue;
    property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull;
    property ID_CONTACTO: Integer read GetID_CONTACTOValue write SetID_CONTACTOValue;
    property ID_CONTACTOIsNull: Boolean read GetID_CONTACTOIsNull write SetID_CONTACTOIsNull;
    property TITULAR: String read GetTITULARValue write SetTITULARValue;
    property TITULARIsNull: Boolean read GetTITULARIsNull write SetTITULARIsNull;
    property ENTIDAD: String read GetENTIDADValue write SetENTIDADValue;
    property ENTIDADIsNull: Boolean read GetENTIDADIsNull write SetENTIDADIsNull;
    property SUCURSAL: String read GetSUCURSALValue write SetSUCURSALValue;
    property SUCURSALIsNull: Boolean read GetSUCURSALIsNull write SetSUCURSALIsNull;
    property DC: String read GetDCValue write SetDCValue;
    property DCIsNull: Boolean read GetDCIsNull write SetDCIsNull;
    property CUENTA: String read GetCUENTAValue write SetCUENTAValue;
    property CUENTAIsNull: Boolean read GetCUENTAIsNull write SetCUENTAIsNull;
    property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue;
    property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull;
    property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue;
    property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull;

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

  end;

  { IDireccionesContacto }
  IDireccionesContacto = interface(IDAStronglyTypedDataTable)
  ['{DF647E54-B42B-4AE9-B644-F658124C61CC}']
    { Property getters and setters }
    function GetIDValue: Integer;
    procedure SetIDValue(const aValue: Integer);
    function GetIDIsNull: Boolean;
    procedure SetIDIsNull(const aValue: Boolean);
    function GetID_CONTACTOValue: Integer;
    procedure SetID_CONTACTOValue(const aValue: Integer);
    function GetID_CONTACTOIsNull: Boolean;
    procedure SetID_CONTACTOIsNull(const aValue: Boolean);
    function GetCALLEValue: String;
    procedure SetCALLEValue(const aValue: String);
    function GetCALLEIsNull: Boolean;
    procedure SetCALLEIsNull(const aValue: Boolean);
    function GetPOBLACIONValue: String;
    procedure SetPOBLACIONValue(const aValue: String);
    function GetPOBLACIONIsNull: Boolean;
    procedure SetPOBLACIONIsNull(const aValue: Boolean);
    function GetPROVINCIAValue: String;
    procedure SetPROVINCIAValue(const aValue: String);
    function GetPROVINCIAIsNull: Boolean;
    procedure SetPROVINCIAIsNull(const aValue: Boolean);
    function GetCODIGO_POSTALValue: String;
    procedure SetCODIGO_POSTALValue(const aValue: String);
    function GetCODIGO_POSTALIsNull: Boolean;
    procedure SetCODIGO_POSTALIsNull(const aValue: Boolean);
    function GetPERSONA_CONTACTOValue: String;
    procedure SetPERSONA_CONTACTOValue(const aValue: String);
    function GetPERSONA_CONTACTOIsNull: Boolean;
    procedure SetPERSONA_CONTACTOIsNull(const aValue: Boolean);
    function GetNOMBREValue: String;
    procedure SetNOMBREValue(const aValue: String);
    function GetNOMBREIsNull: Boolean;
    procedure SetNOMBREIsNull(const aValue: Boolean);
    function GetTELEFONOValue: String;
    procedure SetTELEFONOValue(const aValue: String);
    function GetTELEFONOIsNull: Boolean;
    procedure SetTELEFONOIsNull(const aValue: Boolean);
    function GetMOVILValue: String;
    procedure SetMOVILValue(const aValue: String);
    function GetMOVILIsNull: Boolean;
    procedure SetMOVILIsNull(const aValue: Boolean);
    function GetFAXValue: String;
    procedure SetFAXValue(const aValue: String);
    function GetFAXIsNull: Boolean;
    procedure SetFAXIsNull(const aValue: Boolean);
    function GetEMAILValue: String;
    procedure SetEMAILValue(const aValue: String);
    function GetEMAILIsNull: Boolean;
    procedure SetEMAILIsNull(const aValue: Boolean);
    function GetNOTASValue: IROStrings;
    function GetNOTASIsNull: Boolean;
    procedure SetNOTASIsNull(const aValue: Boolean);
    function GetPORTEValue: Float;
    procedure SetPORTEValue(const aValue: Float);
    function GetPORTEIsNull: Boolean;
    procedure SetPORTEIsNull(const aValue: Boolean);
    function GetFECHA_ALTAValue: DateTime;
    procedure SetFECHA_ALTAValue(const aValue: DateTime);
    function GetFECHA_ALTAIsNull: Boolean;
    procedure SetFECHA_ALTAIsNull(const aValue: Boolean);
    function GetFECHA_MODIFICACIONValue: DateTime;
    procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime);
    function GetFECHA_MODIFICACIONIsNull: Boolean;
    procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean);


    { Properties }
    property ID: Integer read GetIDValue write SetIDValue;
    property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull;
    property ID_CONTACTO: Integer read GetID_CONTACTOValue write SetID_CONTACTOValue;
    property ID_CONTACTOIsNull: Boolean read GetID_CONTACTOIsNull write SetID_CONTACTOIsNull;
    property CALLE: String read GetCALLEValue write SetCALLEValue;
    property CALLEIsNull: Boolean read GetCALLEIsNull write SetCALLEIsNull;
    property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue;
    property POBLACIONIsNull: Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull;
    property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue;
    property PROVINCIAIsNull: Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull;
    property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue;
    property CODIGO_POSTALIsNull: Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull;
    property PERSONA_CONTACTO: String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue;
    property PERSONA_CONTACTOIsNull: Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull;
    property NOMBRE: String read GetNOMBREValue write SetNOMBREValue;
    property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull;
    property TELEFONO: String read GetTELEFONOValue write SetTELEFONOValue;
    property TELEFONOIsNull: Boolean read GetTELEFONOIsNull write SetTELEFONOIsNull;
    property MOVIL: String read GetMOVILValue write SetMOVILValue;
    property MOVILIsNull: Boolean read GetMOVILIsNull write SetMOVILIsNull;
    property FAX: String read GetFAXValue write SetFAXValue;
    property FAXIsNull: Boolean read GetFAXIsNull write SetFAXIsNull;
    property EMAIL: String read GetEMAILValue write SetEMAILValue;
    property EMAILIsNull: Boolean read GetEMAILIsNull write SetEMAILIsNull;
    property NOTAS: IROStrings read GetNOTASValue;
    property NOTASIsNull: Boolean read GetNOTASIsNull write SetNOTASIsNull;
    property PORTE: Float read GetPORTEValue write SetPORTEValue;
    property PORTEIsNull: Boolean read GetPORTEIsNull write SetPORTEIsNull;
    property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue;
    property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull;
    property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue;
    property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull;
  end;

  { TDireccionesContactoDataTableRules }
  TDireccionesContactoDataTableRules = class(TIntfObjectDADataTableRules, IDireccionesContacto)
  private
    f_NOTAS: IROStrings;
    procedure NOTAS_OnChange(Sender: TObject);
  protected
    { Property getters and setters }
    function GetIDValue: Integer; virtual;
    procedure SetIDValue(const aValue: Integer); virtual;
    function GetIDIsNull: Boolean; virtual;
    procedure SetIDIsNull(const aValue: Boolean); virtual;
    function GetID_CONTACTOValue: Integer; virtual;
    procedure SetID_CONTACTOValue(const aValue: Integer); virtual;
    function GetID_CONTACTOIsNull: Boolean; virtual;
    procedure SetID_CONTACTOIsNull(const aValue: Boolean); virtual;
    function GetCALLEValue: String; virtual;
    procedure SetCALLEValue(const aValue: String); virtual;
    function GetCALLEIsNull: Boolean; virtual;
    procedure SetCALLEIsNull(const aValue: Boolean); virtual;
    function GetPOBLACIONValue: String; virtual;
    procedure SetPOBLACIONValue(const aValue: String); virtual;
    function GetPOBLACIONIsNull: Boolean; virtual;
    procedure SetPOBLACIONIsNull(const aValue: Boolean); virtual;
    function GetPROVINCIAValue: String; virtual;
    procedure SetPROVINCIAValue(const aValue: String); virtual;
    function GetPROVINCIAIsNull: Boolean; virtual;
    procedure SetPROVINCIAIsNull(const aValue: Boolean); virtual;
    function GetCODIGO_POSTALValue: String; virtual;
    procedure SetCODIGO_POSTALValue(const aValue: String); virtual;
    function GetCODIGO_POSTALIsNull: Boolean; virtual;
    procedure SetCODIGO_POSTALIsNull(const aValue: Boolean); virtual;
    function GetPERSONA_CONTACTOValue: String; virtual;
    procedure SetPERSONA_CONTACTOValue(const aValue: String); virtual;
    function GetPERSONA_CONTACTOIsNull: Boolean; virtual;
    procedure SetPERSONA_CONTACTOIsNull(const aValue: Boolean); virtual;
    function GetNOMBREValue: String; virtual;
    procedure SetNOMBREValue(const aValue: String); virtual;
    function GetNOMBREIsNull: Boolean; virtual;
    procedure SetNOMBREIsNull(const aValue: Boolean); virtual;
    function GetTELEFONOValue: String; virtual;
    procedure SetTELEFONOValue(const aValue: String); virtual;
    function GetTELEFONOIsNull: Boolean; virtual;
    procedure SetTELEFONOIsNull(const aValue: Boolean); virtual;
    function GetMOVILValue: String; virtual;
    procedure SetMOVILValue(const aValue: String); virtual;
    function GetMOVILIsNull: Boolean; virtual;
    procedure SetMOVILIsNull(const aValue: Boolean); virtual;
    function GetFAXValue: String; virtual;
    procedure SetFAXValue(const aValue: String); virtual;
    function GetFAXIsNull: Boolean; virtual;
    procedure SetFAXIsNull(const aValue: Boolean); virtual;
    function GetEMAILValue: String; virtual;
    procedure SetEMAILValue(const aValue: String); virtual;
    function GetEMAILIsNull: Boolean; virtual;
    procedure SetEMAILIsNull(const aValue: Boolean); virtual;
    function GetNOTASValue: IROStrings; virtual;
    function GetNOTASIsNull: Boolean; virtual;
    procedure SetNOTASIsNull(const aValue: Boolean); virtual;
    function GetPORTEValue: Float; virtual;
    procedure SetPORTEValue(const aValue: Float); virtual;
    function GetPORTEIsNull: Boolean; virtual;
    procedure SetPORTEIsNull(const aValue: Boolean); virtual;
    function GetFECHA_ALTAValue: DateTime; virtual;
    procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual;
    function GetFECHA_ALTAIsNull: Boolean; virtual;
    procedure SetFECHA_ALTAIsNull(const aValue: Boolean); virtual;
    function GetFECHA_MODIFICACIONValue: DateTime; virtual;
    procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual;
    function GetFECHA_MODIFICACIONIsNull: Boolean; virtual;
    procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); virtual;

    { Properties }
    property ID: Integer read GetIDValue write SetIDValue;
    property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull;
    property ID_CONTACTO: Integer read GetID_CONTACTOValue write SetID_CONTACTOValue;
    property ID_CONTACTOIsNull: Boolean read GetID_CONTACTOIsNull write SetID_CONTACTOIsNull;
    property CALLE: String read GetCALLEValue write SetCALLEValue;
    property CALLEIsNull: Boolean read GetCALLEIsNull write SetCALLEIsNull;
    property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue;
    property POBLACIONIsNull: Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull;
    property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue;
    property PROVINCIAIsNull: Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull;
    property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue;
    property CODIGO_POSTALIsNull: Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull;
    property PERSONA_CONTACTO: String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue;
    property PERSONA_CONTACTOIsNull: Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull;
    property NOMBRE: String read GetNOMBREValue write SetNOMBREValue;
    property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull;
    property TELEFONO: String read GetTELEFONOValue write SetTELEFONOValue;
    property TELEFONOIsNull: Boolean read GetTELEFONOIsNull write SetTELEFONOIsNull;
    property MOVIL: String read GetMOVILValue write SetMOVILValue;
    property MOVILIsNull: Boolean read GetMOVILIsNull write SetMOVILIsNull;
    property FAX: String read GetFAXValue write SetFAXValue;
    property FAXIsNull: Boolean read GetFAXIsNull write SetFAXIsNull;
    property EMAIL: String read GetEMAILValue write SetEMAILValue;
    property EMAILIsNull: Boolean read GetEMAILIsNull write SetEMAILIsNull;
    property NOTAS: IROStrings read GetNOTASValue;
    property NOTASIsNull: Boolean read GetNOTASIsNull write SetNOTASIsNull;
    property PORTE: Float read GetPORTEValue write SetPORTEValue;
    property PORTEIsNull: Boolean read GetPORTEIsNull write SetPORTEIsNull;
    property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue;
    property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull;
    property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue;
    property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull;

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

  end;

  { IContactos_Refresh }
  IContactos_Refresh = interface(IDAStronglyTypedDataTable)
  ['{F229F382-4386-4D8B-A6B7-B44A621DC612}']
    { Property getters and setters }
    function GetIDValue: Integer;
    procedure SetIDValue(const aValue: Integer);
    function GetIDIsNull: Boolean;
    procedure SetIDIsNull(const aValue: Boolean);
    function GetNIF_CIFValue: String;
    procedure SetNIF_CIFValue(const aValue: String);
    function GetNIF_CIFIsNull: Boolean;
    procedure SetNIF_CIFIsNull(const aValue: Boolean);
    function GetNOMBREValue: String;
    procedure SetNOMBREValue(const aValue: String);
    function GetNOMBREIsNull: Boolean;
    procedure SetNOMBREIsNull(const aValue: Boolean);
    function GetCALLEValue: String;
    procedure SetCALLEValue(const aValue: String);
    function GetCALLEIsNull: Boolean;
    procedure SetCALLEIsNull(const aValue: Boolean);
    function GetPOBLACIONValue: String;
    procedure SetPOBLACIONValue(const aValue: String);
    function GetPOBLACIONIsNull: Boolean;
    procedure SetPOBLACIONIsNull(const aValue: Boolean);
    function GetPROVINCIAValue: String;
    procedure SetPROVINCIAValue(const aValue: String);
    function GetPROVINCIAIsNull: Boolean;
    procedure SetPROVINCIAIsNull(const aValue: Boolean);
    function GetCODIGO_POSTALValue: String;
    procedure SetCODIGO_POSTALValue(const aValue: String);
    function GetCODIGO_POSTALIsNull: Boolean;
    procedure SetCODIGO_POSTALIsNull(const aValue: Boolean);
    function GetTELEFONO_1Value: String;
    procedure SetTELEFONO_1Value(const aValue: String);
    function GetTELEFONO_1IsNull: Boolean;
    procedure SetTELEFONO_1IsNull(const aValue: Boolean);
    function GetTELEFONO_2Value: String;
    procedure SetTELEFONO_2Value(const aValue: String);
    function GetTELEFONO_2IsNull: Boolean;
    procedure SetTELEFONO_2IsNull(const aValue: Boolean);
    function GetMOVIL_1Value: String;
    procedure SetMOVIL_1Value(const aValue: String);
    function GetMOVIL_1IsNull: Boolean;
    procedure SetMOVIL_1IsNull(const aValue: Boolean);
    function GetMOVIL_2Value: String;
    procedure SetMOVIL_2Value(const aValue: String);
    function GetMOVIL_2IsNull: Boolean;
    procedure SetMOVIL_2IsNull(const aValue: Boolean);
    function GetFAXValue: String;
    procedure SetFAXValue(const aValue: String);
    function GetFAXIsNull: Boolean;
    procedure SetFAXIsNull(const aValue: Boolean);
    function GetEMAIL_1Value: String;
    procedure SetEMAIL_1Value(const aValue: String);
    function GetEMAIL_1IsNull: Boolean;
    procedure SetEMAIL_1IsNull(const aValue: Boolean);
    function GetEMAIL_2Value: String;
    procedure SetEMAIL_2Value(const aValue: String);
    function GetEMAIL_2IsNull: Boolean;
    procedure SetEMAIL_2IsNull(const aValue: Boolean);
    function GetPAGINA_WEBValue: String;
    procedure SetPAGINA_WEBValue(const aValue: String);
    function GetPAGINA_WEBIsNull: Boolean;
    procedure SetPAGINA_WEBIsNull(const aValue: Boolean);
    function GetNOTASValue: IROStrings;
    function GetNOTASIsNull: Boolean;
    procedure SetNOTASIsNull(const aValue: Boolean);
    function GetFECHA_ALTAValue: DateTime;
    procedure SetFECHA_ALTAValue(const aValue: DateTime);
    function GetFECHA_ALTAIsNull: Boolean;
    procedure SetFECHA_ALTAIsNull(const aValue: Boolean);
    function GetFECHA_MODIFICACIONValue: DateTime;
    procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime);
    function GetFECHA_MODIFICACIONIsNull: Boolean;
    procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean);
    function GetUSUARIOValue: String;
    procedure SetUSUARIOValue(const aValue: String);
    function GetUSUARIOIsNull: Boolean;
    procedure SetUSUARIOIsNull(const aValue: Boolean);
    function GetREFERENCIAValue: String;
    procedure SetREFERENCIAValue(const aValue: String);
    function GetREFERENCIAIsNull: Boolean;
    procedure SetREFERENCIAIsNull(const aValue: Boolean);
    function GetPERSONA_CONTACTOValue: String;
    procedure SetPERSONA_CONTACTOValue(const aValue: String);
    function GetPERSONA_CONTACTOIsNull: Boolean;
    procedure SetPERSONA_CONTACTOIsNull(const aValue: Boolean);


    { Properties }
    property ID: Integer read GetIDValue write SetIDValue;
    property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull;
    property NIF_CIF: String read GetNIF_CIFValue write SetNIF_CIFValue;
    property NIF_CIFIsNull: Boolean read GetNIF_CIFIsNull write SetNIF_CIFIsNull;
    property NOMBRE: String read GetNOMBREValue write SetNOMBREValue;
    property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull;
    property CALLE: String read GetCALLEValue write SetCALLEValue;
    property CALLEIsNull: Boolean read GetCALLEIsNull write SetCALLEIsNull;
    property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue;
    property POBLACIONIsNull: Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull;
    property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue;
    property PROVINCIAIsNull: Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull;
    property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue;
    property CODIGO_POSTALIsNull: Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull;
    property TELEFONO_1: String read GetTELEFONO_1Value write SetTELEFONO_1Value;
    property TELEFONO_1IsNull: Boolean read GetTELEFONO_1IsNull write SetTELEFONO_1IsNull;
    property TELEFONO_2: String read GetTELEFONO_2Value write SetTELEFONO_2Value;
    property TELEFONO_2IsNull: Boolean read GetTELEFONO_2IsNull write SetTELEFONO_2IsNull;
    property MOVIL_1: String read GetMOVIL_1Value write SetMOVIL_1Value;
    property MOVIL_1IsNull: Boolean read GetMOVIL_1IsNull write SetMOVIL_1IsNull;
    property MOVIL_2: String read GetMOVIL_2Value write SetMOVIL_2Value;
    property MOVIL_2IsNull: Boolean read GetMOVIL_2IsNull write SetMOVIL_2IsNull;
    property FAX: String read GetFAXValue write SetFAXValue;
    property FAXIsNull: Boolean read GetFAXIsNull write SetFAXIsNull;
    property EMAIL_1: String read GetEMAIL_1Value write SetEMAIL_1Value;
    property EMAIL_1IsNull: Boolean read GetEMAIL_1IsNull write SetEMAIL_1IsNull;
    property EMAIL_2: String read GetEMAIL_2Value write SetEMAIL_2Value;
    property EMAIL_2IsNull: Boolean read GetEMAIL_2IsNull write SetEMAIL_2IsNull;
    property PAGINA_WEB: String read GetPAGINA_WEBValue write SetPAGINA_WEBValue;
    property PAGINA_WEBIsNull: Boolean read GetPAGINA_WEBIsNull write SetPAGINA_WEBIsNull;
    property NOTAS: IROStrings read GetNOTASValue;
    property NOTASIsNull: Boolean read GetNOTASIsNull write SetNOTASIsNull;
    property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue;
    property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull;
    property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue;
    property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull;
    property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue;
    property USUARIOIsNull: Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull;
    property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue;
    property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull;
    property PERSONA_CONTACTO: String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue;
    property PERSONA_CONTACTOIsNull: Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull;
  end;

  { TContactos_RefreshDataTableRules }
  TContactos_RefreshDataTableRules = class(TIntfObjectDADataTableRules, IContactos_Refresh)
  private
    f_NOTAS: IROStrings;
    procedure NOTAS_OnChange(Sender: TObject);
  protected
    { Property getters and setters }
    function GetIDValue: Integer; virtual;
    procedure SetIDValue(const aValue: Integer); virtual;
    function GetIDIsNull: Boolean; virtual;
    procedure SetIDIsNull(const aValue: Boolean); virtual;
    function GetNIF_CIFValue: String; virtual;
    procedure SetNIF_CIFValue(const aValue: String); virtual;
    function GetNIF_CIFIsNull: Boolean; virtual;
    procedure SetNIF_CIFIsNull(const aValue: Boolean); virtual;
    function GetNOMBREValue: String; virtual;
    procedure SetNOMBREValue(const aValue: String); virtual;
    function GetNOMBREIsNull: Boolean; virtual;
    procedure SetNOMBREIsNull(const aValue: Boolean); virtual;
    function GetCALLEValue: String; virtual;
    procedure SetCALLEValue(const aValue: String); virtual;
    function GetCALLEIsNull: Boolean; virtual;
    procedure SetCALLEIsNull(const aValue: Boolean); virtual;
    function GetPOBLACIONValue: String; virtual;
    procedure SetPOBLACIONValue(const aValue: String); virtual;
    function GetPOBLACIONIsNull: Boolean; virtual;
    procedure SetPOBLACIONIsNull(const aValue: Boolean); virtual;
    function GetPROVINCIAValue: String; virtual;
    procedure SetPROVINCIAValue(const aValue: String); virtual;
    function GetPROVINCIAIsNull: Boolean; virtual;
    procedure SetPROVINCIAIsNull(const aValue: Boolean); virtual;
    function GetCODIGO_POSTALValue: String; virtual;
    procedure SetCODIGO_POSTALValue(const aValue: String); virtual;
    function GetCODIGO_POSTALIsNull: Boolean; virtual;
    procedure SetCODIGO_POSTALIsNull(const aValue: Boolean); virtual;
    function GetTELEFONO_1Value: String; virtual;
    procedure SetTELEFONO_1Value(const aValue: String); virtual;
    function GetTELEFONO_1IsNull: Boolean; virtual;
    procedure SetTELEFONO_1IsNull(const aValue: Boolean); virtual;
    function GetTELEFONO_2Value: String; virtual;
    procedure SetTELEFONO_2Value(const aValue: String); virtual;
    function GetTELEFONO_2IsNull: Boolean; virtual;
    procedure SetTELEFONO_2IsNull(const aValue: Boolean); virtual;
    function GetMOVIL_1Value: String; virtual;
    procedure SetMOVIL_1Value(const aValue: String); virtual;
    function GetMOVIL_1IsNull: Boolean; virtual;
    procedure SetMOVIL_1IsNull(const aValue: Boolean); virtual;
    function GetMOVIL_2Value: String; virtual;
    procedure SetMOVIL_2Value(const aValue: String); virtual;
    function GetMOVIL_2IsNull: Boolean; virtual;
    procedure SetMOVIL_2IsNull(const aValue: Boolean); virtual;
    function GetFAXValue: String; virtual;
    procedure SetFAXValue(const aValue: String); virtual;
    function GetFAXIsNull: Boolean; virtual;
    procedure SetFAXIsNull(const aValue: Boolean); virtual;
    function GetEMAIL_1Value: String; virtual;
    procedure SetEMAIL_1Value(const aValue: String); virtual;
    function GetEMAIL_1IsNull: Boolean; virtual;
    procedure SetEMAIL_1IsNull(const aValue: Boolean); virtual;
    function GetEMAIL_2Value: String; virtual;
    procedure SetEMAIL_2Value(const aValue: String); virtual;
    function GetEMAIL_2IsNull: Boolean; virtual;
    procedure SetEMAIL_2IsNull(const aValue: Boolean); virtual;
    function GetPAGINA_WEBValue: String; virtual;
    procedure SetPAGINA_WEBValue(const aValue: String); virtual;
    function GetPAGINA_WEBIsNull: Boolean; virtual;
    procedure SetPAGINA_WEBIsNull(const aValue: Boolean); virtual;
    function GetNOTASValue: IROStrings; virtual;
    function GetNOTASIsNull: Boolean; virtual;
    procedure SetNOTASIsNull(const aValue: Boolean); virtual;
    function GetFECHA_ALTAValue: DateTime; virtual;
    procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual;
    function GetFECHA_ALTAIsNull: Boolean; virtual;
    procedure SetFECHA_ALTAIsNull(const aValue: Boolean); virtual;
    function GetFECHA_MODIFICACIONValue: DateTime; virtual;
    procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual;
    function GetFECHA_MODIFICACIONIsNull: Boolean; virtual;
    procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); virtual;
    function GetUSUARIOValue: String; virtual;
    procedure SetUSUARIOValue(const aValue: String); virtual;
    function GetUSUARIOIsNull: Boolean; virtual;
    procedure SetUSUARIOIsNull(const aValue: Boolean); virtual;
    function GetREFERENCIAValue: String; virtual;
    procedure SetREFERENCIAValue(const aValue: String); virtual;
    function GetREFERENCIAIsNull: Boolean; virtual;
    procedure SetREFERENCIAIsNull(const aValue: Boolean); virtual;
    function GetPERSONA_CONTACTOValue: String; virtual;
    procedure SetPERSONA_CONTACTOValue(const aValue: String); virtual;
    function GetPERSONA_CONTACTOIsNull: Boolean; virtual;
    procedure SetPERSONA_CONTACTOIsNull(const aValue: Boolean); virtual;

    { Properties }
    property ID: Integer read GetIDValue write SetIDValue;
    property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull;
    property NIF_CIF: String read GetNIF_CIFValue write SetNIF_CIFValue;
    property NIF_CIFIsNull: Boolean read GetNIF_CIFIsNull write SetNIF_CIFIsNull;
    property NOMBRE: String read GetNOMBREValue write SetNOMBREValue;
    property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull;
    property CALLE: String read GetCALLEValue write SetCALLEValue;
    property CALLEIsNull: Boolean read GetCALLEIsNull write SetCALLEIsNull;
    property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue;
    property POBLACIONIsNull: Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull;
    property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue;
    property PROVINCIAIsNull: Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull;
    property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue;
    property CODIGO_POSTALIsNull: Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull;
    property TELEFONO_1: String read GetTELEFONO_1Value write SetTELEFONO_1Value;
    property TELEFONO_1IsNull: Boolean read GetTELEFONO_1IsNull write SetTELEFONO_1IsNull;
    property TELEFONO_2: String read GetTELEFONO_2Value write SetTELEFONO_2Value;
    property TELEFONO_2IsNull: Boolean read GetTELEFONO_2IsNull write SetTELEFONO_2IsNull;
    property MOVIL_1: String read GetMOVIL_1Value write SetMOVIL_1Value;
    property MOVIL_1IsNull: Boolean read GetMOVIL_1IsNull write SetMOVIL_1IsNull;
    property MOVIL_2: String read GetMOVIL_2Value write SetMOVIL_2Value;
    property MOVIL_2IsNull: Boolean read GetMOVIL_2IsNull write SetMOVIL_2IsNull;
    property FAX: String read GetFAXValue write SetFAXValue;
    property FAXIsNull: Boolean read GetFAXIsNull write SetFAXIsNull;
    property EMAIL_1: String read GetEMAIL_1Value write SetEMAIL_1Value;
    property EMAIL_1IsNull: Boolean read GetEMAIL_1IsNull write SetEMAIL_1IsNull;
    property EMAIL_2: String read GetEMAIL_2Value write SetEMAIL_2Value;
    property EMAIL_2IsNull: Boolean read GetEMAIL_2IsNull write SetEMAIL_2IsNull;
    property PAGINA_WEB: String read GetPAGINA_WEBValue write SetPAGINA_WEBValue;
    property PAGINA_WEBIsNull: Boolean read GetPAGINA_WEBIsNull write SetPAGINA_WEBIsNull;
    property NOTAS: IROStrings read GetNOTASValue;
    property NOTASIsNull: Boolean read GetNOTASIsNull write SetNOTASIsNull;
    property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue;
    property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull;
    property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue;
    property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull;
    property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue;
    property USUARIOIsNull: Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull;
    property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue;
    property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull;
    property PERSONA_CONTACTO: String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue;
    property PERSONA_CONTACTOIsNull: Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull;

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

  end;

  { IPersonalContacto }
  IPersonalContacto = interface(IDAStronglyTypedDataTable)
  ['{7E45B5B2-567C-4AB4-8235-0A9FB607859C}']
    { Property getters and setters }
    function GetIDValue: Integer;
    procedure SetIDValue(const aValue: Integer);
    function GetIDIsNull: Boolean;
    procedure SetIDIsNull(const aValue: Boolean);
    function GetID_CONTACTOValue: Integer;
    procedure SetID_CONTACTOValue(const aValue: Integer);
    function GetID_CONTACTOIsNull: Boolean;
    procedure SetID_CONTACTOIsNull(const aValue: Boolean);
    function GetNOMBREValue: String;
    procedure SetNOMBREValue(const aValue: String);
    function GetNOMBREIsNull: Boolean;
    procedure SetNOMBREIsNull(const aValue: Boolean);
    function GetPUESTOValue: String;
    procedure SetPUESTOValue(const aValue: String);
    function GetPUESTOIsNull: Boolean;
    procedure SetPUESTOIsNull(const aValue: Boolean);
    function GetTELEFONOValue: String;
    procedure SetTELEFONOValue(const aValue: String);
    function GetTELEFONOIsNull: Boolean;
    procedure SetTELEFONOIsNull(const aValue: Boolean);
    function GetMOVILValue: String;
    procedure SetMOVILValue(const aValue: String);
    function GetMOVILIsNull: Boolean;
    procedure SetMOVILIsNull(const aValue: Boolean);
    function GetFAXValue: String;
    procedure SetFAXValue(const aValue: String);
    function GetFAXIsNull: Boolean;
    procedure SetFAXIsNull(const aValue: Boolean);
    function GetEMAILValue: String;
    procedure SetEMAILValue(const aValue: String);
    function GetEMAILIsNull: Boolean;
    procedure SetEMAILIsNull(const aValue: Boolean);
    function GetFECHA_ALTAValue: DateTime;
    procedure SetFECHA_ALTAValue(const aValue: DateTime);
    function GetFECHA_ALTAIsNull: Boolean;
    procedure SetFECHA_ALTAIsNull(const aValue: Boolean);
    function GetFECHA_MODIFICACIONValue: DateTime;
    procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime);
    function GetFECHA_MODIFICACIONIsNull: Boolean;
    procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean);


    { Properties }
    property ID: Integer read GetIDValue write SetIDValue;
    property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull;
    property ID_CONTACTO: Integer read GetID_CONTACTOValue write SetID_CONTACTOValue;
    property ID_CONTACTOIsNull: Boolean read GetID_CONTACTOIsNull write SetID_CONTACTOIsNull;
    property NOMBRE: String read GetNOMBREValue write SetNOMBREValue;
    property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull;
    property PUESTO: String read GetPUESTOValue write SetPUESTOValue;
    property PUESTOIsNull: Boolean read GetPUESTOIsNull write SetPUESTOIsNull;
    property TELEFONO: String read GetTELEFONOValue write SetTELEFONOValue;
    property TELEFONOIsNull: Boolean read GetTELEFONOIsNull write SetTELEFONOIsNull;
    property MOVIL: String read GetMOVILValue write SetMOVILValue;
    property MOVILIsNull: Boolean read GetMOVILIsNull write SetMOVILIsNull;
    property FAX: String read GetFAXValue write SetFAXValue;
    property FAXIsNull: Boolean read GetFAXIsNull write SetFAXIsNull;
    property EMAIL: String read GetEMAILValue write SetEMAILValue;
    property EMAILIsNull: Boolean read GetEMAILIsNull write SetEMAILIsNull;
    property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue;
    property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull;
    property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue;
    property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull;
  end;

  { TPersonalContactoDataTableRules }
  TPersonalContactoDataTableRules = class(TIntfObjectDADataTableRules, IPersonalContacto)
  private
  protected
    { Property getters and setters }
    function GetIDValue: Integer; virtual;
    procedure SetIDValue(const aValue: Integer); virtual;
    function GetIDIsNull: Boolean; virtual;
    procedure SetIDIsNull(const aValue: Boolean); virtual;
    function GetID_CONTACTOValue: Integer; virtual;
    procedure SetID_CONTACTOValue(const aValue: Integer); virtual;
    function GetID_CONTACTOIsNull: Boolean; virtual;
    procedure SetID_CONTACTOIsNull(const aValue: Boolean); virtual;
    function GetNOMBREValue: String; virtual;
    procedure SetNOMBREValue(const aValue: String); virtual;
    function GetNOMBREIsNull: Boolean; virtual;
    procedure SetNOMBREIsNull(const aValue: Boolean); virtual;
    function GetPUESTOValue: String; virtual;
    procedure SetPUESTOValue(const aValue: String); virtual;
    function GetPUESTOIsNull: Boolean; virtual;
    procedure SetPUESTOIsNull(const aValue: Boolean); virtual;
    function GetTELEFONOValue: String; virtual;
    procedure SetTELEFONOValue(const aValue: String); virtual;
    function GetTELEFONOIsNull: Boolean; virtual;
    procedure SetTELEFONOIsNull(const aValue: Boolean); virtual;
    function GetMOVILValue: String; virtual;
    procedure SetMOVILValue(const aValue: String); virtual;
    function GetMOVILIsNull: Boolean; virtual;
    procedure SetMOVILIsNull(const aValue: Boolean); virtual;
    function GetFAXValue: String; virtual;
    procedure SetFAXValue(const aValue: String); virtual;
    function GetFAXIsNull: Boolean; virtual;
    procedure SetFAXIsNull(const aValue: Boolean); virtual;
    function GetEMAILValue: String; virtual;
    procedure SetEMAILValue(const aValue: String); virtual;
    function GetEMAILIsNull: Boolean; virtual;
    procedure SetEMAILIsNull(const aValue: Boolean); virtual;
    function GetFECHA_ALTAValue: DateTime; virtual;
    procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual;
    function GetFECHA_ALTAIsNull: Boolean; virtual;
    procedure SetFECHA_ALTAIsNull(const aValue: Boolean); virtual;
    function GetFECHA_MODIFICACIONValue: DateTime; virtual;
    procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual;
    function GetFECHA_MODIFICACIONIsNull: Boolean; virtual;
    procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); virtual;

    { Properties }
    property ID: Integer read GetIDValue write SetIDValue;
    property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull;
    property ID_CONTACTO: Integer read GetID_CONTACTOValue write SetID_CONTACTOValue;
    property ID_CONTACTOIsNull: Boolean read GetID_CONTACTOIsNull write SetID_CONTACTOIsNull;
    property NOMBRE: String read GetNOMBREValue write SetNOMBREValue;
    property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull;
    property PUESTO: String read GetPUESTOValue write SetPUESTOValue;
    property PUESTOIsNull: Boolean read GetPUESTOIsNull write SetPUESTOIsNull;
    property TELEFONO: String read GetTELEFONOValue write SetTELEFONOValue;
    property TELEFONOIsNull: Boolean read GetTELEFONOIsNull write SetTELEFONOIsNull;
    property MOVIL: String read GetMOVILValue write SetMOVILValue;
    property MOVILIsNull: Boolean read GetMOVILIsNull write SetMOVILIsNull;
    property FAX: String read GetFAXValue write SetFAXValue;
    property FAXIsNull: Boolean read GetFAXIsNull write SetFAXIsNull;
    property EMAIL: String read GetEMAILValue write SetEMAILValue;
    property EMAILIsNull: Boolean read GetEMAILIsNull write SetEMAILIsNull;
    property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue;
    property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull;
    property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue;
    property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull;

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

  end;

  { IPacientes }
  IPacientes = interface(IDAStronglyTypedDataTable)
  ['{0E86AB13-9946-4952-8A92-775A2993A788}']
    { Property getters and setters }
    function GetIDValue: Integer;
    procedure SetIDValue(const aValue: Integer);
    function GetIDIsNull: Boolean;
    procedure SetIDIsNull(const aValue: Boolean);
    function GetID_CATEGORIAValue: Integer;
    procedure SetID_CATEGORIAValue(const aValue: Integer);
    function GetID_CATEGORIAIsNull: Boolean;
    procedure SetID_CATEGORIAIsNull(const aValue: Boolean);
    function GetNIF_CIFValue: String;
    procedure SetNIF_CIFValue(const aValue: String);
    function GetNIF_CIFIsNull: Boolean;
    procedure SetNIF_CIFIsNull(const aValue: Boolean);
    function GetNOMBREValue: String;
    procedure SetNOMBREValue(const aValue: String);
    function GetNOMBREIsNull: Boolean;
    procedure SetNOMBREIsNull(const aValue: Boolean);
    function GetPERSONA_CONTACTOValue: String;
    procedure SetPERSONA_CONTACTOValue(const aValue: String);
    function GetPERSONA_CONTACTOIsNull: Boolean;
    procedure SetPERSONA_CONTACTOIsNull(const aValue: Boolean);
    function GetCALLEValue: String;
    procedure SetCALLEValue(const aValue: String);
    function GetCALLEIsNull: Boolean;
    procedure SetCALLEIsNull(const aValue: Boolean);
    function GetPOBLACIONValue: String;
    procedure SetPOBLACIONValue(const aValue: String);
    function GetPOBLACIONIsNull: Boolean;
    procedure SetPOBLACIONIsNull(const aValue: Boolean);
    function GetPROVINCIAValue: String;
    procedure SetPROVINCIAValue(const aValue: String);
    function GetPROVINCIAIsNull: Boolean;
    procedure SetPROVINCIAIsNull(const aValue: Boolean);
    function GetCODIGO_POSTALValue: String;
    procedure SetCODIGO_POSTALValue(const aValue: String);
    function GetCODIGO_POSTALIsNull: Boolean;
    procedure SetCODIGO_POSTALIsNull(const aValue: Boolean);
    function GetTELEFONO_1Value: String;
    procedure SetTELEFONO_1Value(const aValue: String);
    function GetTELEFONO_1IsNull: Boolean;
    procedure SetTELEFONO_1IsNull(const aValue: Boolean);
    function GetTELEFONO_2Value: String;
    procedure SetTELEFONO_2Value(const aValue: String);
    function GetTELEFONO_2IsNull: Boolean;
    procedure SetTELEFONO_2IsNull(const aValue: Boolean);
    function GetMOVIL_1Value: String;
    procedure SetMOVIL_1Value(const aValue: String);
    function GetMOVIL_1IsNull: Boolean;
    procedure SetMOVIL_1IsNull(const aValue: Boolean);
    function GetMOVIL_2Value: String;
    procedure SetMOVIL_2Value(const aValue: String);
    function GetMOVIL_2IsNull: Boolean;
    procedure SetMOVIL_2IsNull(const aValue: Boolean);
    function GetFAXValue: String;
    procedure SetFAXValue(const aValue: String);
    function GetFAXIsNull: Boolean;
    procedure SetFAXIsNull(const aValue: Boolean);
    function GetEMAIL_1Value: String;
    procedure SetEMAIL_1Value(const aValue: String);
    function GetEMAIL_1IsNull: Boolean;
    procedure SetEMAIL_1IsNull(const aValue: Boolean);
    function GetEMAIL_2Value: String;
    procedure SetEMAIL_2Value(const aValue: String);
    function GetEMAIL_2IsNull: Boolean;
    procedure SetEMAIL_2IsNull(const aValue: Boolean);
    function GetPAGINA_WEBValue: String;
    procedure SetPAGINA_WEBValue(const aValue: String);
    function GetPAGINA_WEBIsNull: Boolean;
    procedure SetPAGINA_WEBIsNull(const aValue: Boolean);
    function GetNOTASValue: IROStrings;
    function GetNOTASIsNull: Boolean;
    procedure SetNOTASIsNull(const aValue: Boolean);
    function GetFECHA_ALTAValue: DateTime;
    procedure SetFECHA_ALTAValue(const aValue: DateTime);
    function GetFECHA_ALTAIsNull: Boolean;
    procedure SetFECHA_ALTAIsNull(const aValue: Boolean);
    function GetFECHA_MODIFICACIONValue: DateTime;
    procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime);
    function GetFECHA_MODIFICACIONIsNull: Boolean;
    procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean);
    function GetUSUARIOValue: String;
    procedure SetUSUARIOValue(const aValue: String);
    function GetUSUARIOIsNull: Boolean;
    procedure SetUSUARIOIsNull(const aValue: Boolean);
    function GetID_EMPRESAValue: Integer;
    procedure SetID_EMPRESAValue(const aValue: Integer);
    function GetID_EMPRESAIsNull: Boolean;
    procedure SetID_EMPRESAIsNull(const aValue: Boolean);
    function GetREFERENCIAValue: String;
    procedure SetREFERENCIAValue(const aValue: String);
    function GetREFERENCIAIsNull: Boolean;
    procedure SetREFERENCIAIsNull(const aValue: Boolean);
    function GetFECHA_NACIMIENTOValue: DateTime;
    procedure SetFECHA_NACIMIENTOValue(const aValue: DateTime);
    function GetFECHA_NACIMIENTOIsNull: Boolean;
    procedure SetFECHA_NACIMIENTOIsNull(const aValue: Boolean);
    function GetNUMERO_SSValue: String;
    procedure SetNUMERO_SSValue(const aValue: String);
    function GetNUMERO_SSIsNull: Boolean;
    procedure SetNUMERO_SSIsNull(const aValue: Boolean);
    function GetFECHA_BAJAValue: DateTime;
    procedure SetFECHA_BAJAValue(const aValue: DateTime);
    function GetFECHA_BAJAIsNull: Boolean;
    procedure SetFECHA_BAJAIsNull(const aValue: Boolean);
    function GetCAUSA_BAJAValue: String;
    procedure SetCAUSA_BAJAValue(const aValue: String);
    function GetCAUSA_BAJAIsNull: Boolean;
    procedure SetCAUSA_BAJAIsNull(const aValue: Boolean);
    function GetPABELLONValue: String;
    procedure SetPABELLONValue(const aValue: String);
    function GetPABELLONIsNull: Boolean;
    procedure SetPABELLONIsNull(const aValue: Boolean);


    { Properties }
    property ID: Integer read GetIDValue write SetIDValue;
    property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull;
    property ID_CATEGORIA: Integer read GetID_CATEGORIAValue write SetID_CATEGORIAValue;
    property ID_CATEGORIAIsNull: Boolean read GetID_CATEGORIAIsNull write SetID_CATEGORIAIsNull;
    property NIF_CIF: String read GetNIF_CIFValue write SetNIF_CIFValue;
    property NIF_CIFIsNull: Boolean read GetNIF_CIFIsNull write SetNIF_CIFIsNull;
    property NOMBRE: String read GetNOMBREValue write SetNOMBREValue;
    property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull;
    property PERSONA_CONTACTO: String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue;
    property PERSONA_CONTACTOIsNull: Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull;
    property CALLE: String read GetCALLEValue write SetCALLEValue;
    property CALLEIsNull: Boolean read GetCALLEIsNull write SetCALLEIsNull;
    property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue;
    property POBLACIONIsNull: Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull;
    property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue;
    property PROVINCIAIsNull: Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull;
    property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue;
    property CODIGO_POSTALIsNull: Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull;
    property TELEFONO_1: String read GetTELEFONO_1Value write SetTELEFONO_1Value;
    property TELEFONO_1IsNull: Boolean read GetTELEFONO_1IsNull write SetTELEFONO_1IsNull;
    property TELEFONO_2: String read GetTELEFONO_2Value write SetTELEFONO_2Value;
    property TELEFONO_2IsNull: Boolean read GetTELEFONO_2IsNull write SetTELEFONO_2IsNull;
    property MOVIL_1: String read GetMOVIL_1Value write SetMOVIL_1Value;
    property MOVIL_1IsNull: Boolean read GetMOVIL_1IsNull write SetMOVIL_1IsNull;
    property MOVIL_2: String read GetMOVIL_2Value write SetMOVIL_2Value;
    property MOVIL_2IsNull: Boolean read GetMOVIL_2IsNull write SetMOVIL_2IsNull;
    property FAX: String read GetFAXValue write SetFAXValue;
    property FAXIsNull: Boolean read GetFAXIsNull write SetFAXIsNull;
    property EMAIL_1: String read GetEMAIL_1Value write SetEMAIL_1Value;
    property EMAIL_1IsNull: Boolean read GetEMAIL_1IsNull write SetEMAIL_1IsNull;
    property EMAIL_2: String read GetEMAIL_2Value write SetEMAIL_2Value;
    property EMAIL_2IsNull: Boolean read GetEMAIL_2IsNull write SetEMAIL_2IsNull;
    property PAGINA_WEB: String read GetPAGINA_WEBValue write SetPAGINA_WEBValue;
    property PAGINA_WEBIsNull: Boolean read GetPAGINA_WEBIsNull write SetPAGINA_WEBIsNull;
    property NOTAS: IROStrings read GetNOTASValue;
    property NOTASIsNull: Boolean read GetNOTASIsNull write SetNOTASIsNull;
    property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue;
    property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull;
    property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue;
    property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull;
    property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue;
    property USUARIOIsNull: Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull;
    property ID_EMPRESA: Integer read GetID_EMPRESAValue write SetID_EMPRESAValue;
    property ID_EMPRESAIsNull: Boolean read GetID_EMPRESAIsNull write SetID_EMPRESAIsNull;
    property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue;
    property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull;
    property FECHA_NACIMIENTO: DateTime read GetFECHA_NACIMIENTOValue write SetFECHA_NACIMIENTOValue;
    property FECHA_NACIMIENTOIsNull: Boolean read GetFECHA_NACIMIENTOIsNull write SetFECHA_NACIMIENTOIsNull;
    property NUMERO_SS: String read GetNUMERO_SSValue write SetNUMERO_SSValue;
    property NUMERO_SSIsNull: Boolean read GetNUMERO_SSIsNull write SetNUMERO_SSIsNull;
    property FECHA_BAJA: DateTime read GetFECHA_BAJAValue write SetFECHA_BAJAValue;
    property FECHA_BAJAIsNull: Boolean read GetFECHA_BAJAIsNull write SetFECHA_BAJAIsNull;
    property CAUSA_BAJA: String read GetCAUSA_BAJAValue write SetCAUSA_BAJAValue;
    property CAUSA_BAJAIsNull: Boolean read GetCAUSA_BAJAIsNull write SetCAUSA_BAJAIsNull;
    property PABELLON: String read GetPABELLONValue write SetPABELLONValue;
    property PABELLONIsNull: Boolean read GetPABELLONIsNull write SetPABELLONIsNull;
  end;

  { TPacientesDataTableRules }
  TPacientesDataTableRules = class(TIntfObjectDADataTableRules, IPacientes)
  private
    f_NOTAS: IROStrings;
    procedure NOTAS_OnChange(Sender: TObject);
  protected
    { Property getters and setters }
    function GetIDValue: Integer; virtual;
    procedure SetIDValue(const aValue: Integer); virtual;
    function GetIDIsNull: Boolean; virtual;
    procedure SetIDIsNull(const aValue: Boolean); virtual;
    function GetID_CATEGORIAValue: Integer; virtual;
    procedure SetID_CATEGORIAValue(const aValue: Integer); virtual;
    function GetID_CATEGORIAIsNull: Boolean; virtual;
    procedure SetID_CATEGORIAIsNull(const aValue: Boolean); virtual;
    function GetNIF_CIFValue: String; virtual;
    procedure SetNIF_CIFValue(const aValue: String); virtual;
    function GetNIF_CIFIsNull: Boolean; virtual;
    procedure SetNIF_CIFIsNull(const aValue: Boolean); virtual;
    function GetNOMBREValue: String; virtual;
    procedure SetNOMBREValue(const aValue: String); virtual;
    function GetNOMBREIsNull: Boolean; virtual;
    procedure SetNOMBREIsNull(const aValue: Boolean); virtual;
    function GetPERSONA_CONTACTOValue: String; virtual;
    procedure SetPERSONA_CONTACTOValue(const aValue: String); virtual;
    function GetPERSONA_CONTACTOIsNull: Boolean; virtual;
    procedure SetPERSONA_CONTACTOIsNull(const aValue: Boolean); virtual;
    function GetCALLEValue: String; virtual;
    procedure SetCALLEValue(const aValue: String); virtual;
    function GetCALLEIsNull: Boolean; virtual;
    procedure SetCALLEIsNull(const aValue: Boolean); virtual;
    function GetPOBLACIONValue: String; virtual;
    procedure SetPOBLACIONValue(const aValue: String); virtual;
    function GetPOBLACIONIsNull: Boolean; virtual;
    procedure SetPOBLACIONIsNull(const aValue: Boolean); virtual;
    function GetPROVINCIAValue: String; virtual;
    procedure SetPROVINCIAValue(const aValue: String); virtual;
    function GetPROVINCIAIsNull: Boolean; virtual;
    procedure SetPROVINCIAIsNull(const aValue: Boolean); virtual;
    function GetCODIGO_POSTALValue: String; virtual;
    procedure SetCODIGO_POSTALValue(const aValue: String); virtual;
    function GetCODIGO_POSTALIsNull: Boolean; virtual;
    procedure SetCODIGO_POSTALIsNull(const aValue: Boolean); virtual;
    function GetTELEFONO_1Value: String; virtual;
    procedure SetTELEFONO_1Value(const aValue: String); virtual;
    function GetTELEFONO_1IsNull: Boolean; virtual;
    procedure SetTELEFONO_1IsNull(const aValue: Boolean); virtual;
    function GetTELEFONO_2Value: String; virtual;
    procedure SetTELEFONO_2Value(const aValue: String); virtual;
    function GetTELEFONO_2IsNull: Boolean; virtual;
    procedure SetTELEFONO_2IsNull(const aValue: Boolean); virtual;
    function GetMOVIL_1Value: String; virtual;
    procedure SetMOVIL_1Value(const aValue: String); virtual;
    function GetMOVIL_1IsNull: Boolean; virtual;
    procedure SetMOVIL_1IsNull(const aValue: Boolean); virtual;
    function GetMOVIL_2Value: String; virtual;
    procedure SetMOVIL_2Value(const aValue: String); virtual;
    function GetMOVIL_2IsNull: Boolean; virtual;
    procedure SetMOVIL_2IsNull(const aValue: Boolean); virtual;
    function GetFAXValue: String; virtual;
    procedure SetFAXValue(const aValue: String); virtual;
    function GetFAXIsNull: Boolean; virtual;
    procedure SetFAXIsNull(const aValue: Boolean); virtual;
    function GetEMAIL_1Value: String; virtual;
    procedure SetEMAIL_1Value(const aValue: String); virtual;
    function GetEMAIL_1IsNull: Boolean; virtual;
    procedure SetEMAIL_1IsNull(const aValue: Boolean); virtual;
    function GetEMAIL_2Value: String; virtual;
    procedure SetEMAIL_2Value(const aValue: String); virtual;
    function GetEMAIL_2IsNull: Boolean; virtual;
    procedure SetEMAIL_2IsNull(const aValue: Boolean); virtual;
    function GetPAGINA_WEBValue: String; virtual;
    procedure SetPAGINA_WEBValue(const aValue: String); virtual;
    function GetPAGINA_WEBIsNull: Boolean; virtual;
    procedure SetPAGINA_WEBIsNull(const aValue: Boolean); virtual;
    function GetNOTASValue: IROStrings; virtual;
    function GetNOTASIsNull: Boolean; virtual;
    procedure SetNOTASIsNull(const aValue: Boolean); virtual;
    function GetFECHA_ALTAValue: DateTime; virtual;
    procedure SetFECHA_ALTAValue(const aValue: DateTime); virtual;
    function GetFECHA_ALTAIsNull: Boolean; virtual;
    procedure SetFECHA_ALTAIsNull(const aValue: Boolean); virtual;
    function GetFECHA_MODIFICACIONValue: DateTime; virtual;
    procedure SetFECHA_MODIFICACIONValue(const aValue: DateTime); virtual;
    function GetFECHA_MODIFICACIONIsNull: Boolean; virtual;
    procedure SetFECHA_MODIFICACIONIsNull(const aValue: Boolean); virtual;
    function GetUSUARIOValue: String; virtual;
    procedure SetUSUARIOValue(const aValue: String); virtual;
    function GetUSUARIOIsNull: Boolean; virtual;
    procedure SetUSUARIOIsNull(const aValue: Boolean); virtual;
    function GetID_EMPRESAValue: Integer; virtual;
    procedure SetID_EMPRESAValue(const aValue: Integer); virtual;
    function GetID_EMPRESAIsNull: Boolean; virtual;
    procedure SetID_EMPRESAIsNull(const aValue: Boolean); virtual;
    function GetREFERENCIAValue: String; virtual;
    procedure SetREFERENCIAValue(const aValue: String); virtual;
    function GetREFERENCIAIsNull: Boolean; virtual;
    procedure SetREFERENCIAIsNull(const aValue: Boolean); virtual;
    function GetFECHA_NACIMIENTOValue: DateTime; virtual;
    procedure SetFECHA_NACIMIENTOValue(const aValue: DateTime); virtual;
    function GetFECHA_NACIMIENTOIsNull: Boolean; virtual;
    procedure SetFECHA_NACIMIENTOIsNull(const aValue: Boolean); virtual;
    function GetNUMERO_SSValue: String; virtual;
    procedure SetNUMERO_SSValue(const aValue: String); virtual;
    function GetNUMERO_SSIsNull: Boolean; virtual;
    procedure SetNUMERO_SSIsNull(const aValue: Boolean); virtual;
    function GetFECHA_BAJAValue: DateTime; virtual;
    procedure SetFECHA_BAJAValue(const aValue: DateTime); virtual;
    function GetFECHA_BAJAIsNull: Boolean; virtual;
    procedure SetFECHA_BAJAIsNull(const aValue: Boolean); virtual;
    function GetCAUSA_BAJAValue: String; virtual;
    procedure SetCAUSA_BAJAValue(const aValue: String); virtual;
    function GetCAUSA_BAJAIsNull: Boolean; virtual;
    procedure SetCAUSA_BAJAIsNull(const aValue: Boolean); virtual;
    function GetPABELLONValue: String; virtual;
    procedure SetPABELLONValue(const aValue: String); virtual;
    function GetPABELLONIsNull: Boolean; virtual;
    procedure SetPABELLONIsNull(const aValue: Boolean); virtual;

    { Properties }
    property ID: Integer read GetIDValue write SetIDValue;
    property IDIsNull: Boolean read GetIDIsNull write SetIDIsNull;
    property ID_CATEGORIA: Integer read GetID_CATEGORIAValue write SetID_CATEGORIAValue;
    property ID_CATEGORIAIsNull: Boolean read GetID_CATEGORIAIsNull write SetID_CATEGORIAIsNull;
    property NIF_CIF: String read GetNIF_CIFValue write SetNIF_CIFValue;
    property NIF_CIFIsNull: Boolean read GetNIF_CIFIsNull write SetNIF_CIFIsNull;
    property NOMBRE: String read GetNOMBREValue write SetNOMBREValue;
    property NOMBREIsNull: Boolean read GetNOMBREIsNull write SetNOMBREIsNull;
    property PERSONA_CONTACTO: String read GetPERSONA_CONTACTOValue write SetPERSONA_CONTACTOValue;
    property PERSONA_CONTACTOIsNull: Boolean read GetPERSONA_CONTACTOIsNull write SetPERSONA_CONTACTOIsNull;
    property CALLE: String read GetCALLEValue write SetCALLEValue;
    property CALLEIsNull: Boolean read GetCALLEIsNull write SetCALLEIsNull;
    property POBLACION: String read GetPOBLACIONValue write SetPOBLACIONValue;
    property POBLACIONIsNull: Boolean read GetPOBLACIONIsNull write SetPOBLACIONIsNull;
    property PROVINCIA: String read GetPROVINCIAValue write SetPROVINCIAValue;
    property PROVINCIAIsNull: Boolean read GetPROVINCIAIsNull write SetPROVINCIAIsNull;
    property CODIGO_POSTAL: String read GetCODIGO_POSTALValue write SetCODIGO_POSTALValue;
    property CODIGO_POSTALIsNull: Boolean read GetCODIGO_POSTALIsNull write SetCODIGO_POSTALIsNull;
    property TELEFONO_1: String read GetTELEFONO_1Value write SetTELEFONO_1Value;
    property TELEFONO_1IsNull: Boolean read GetTELEFONO_1IsNull write SetTELEFONO_1IsNull;
    property TELEFONO_2: String read GetTELEFONO_2Value write SetTELEFONO_2Value;
    property TELEFONO_2IsNull: Boolean read GetTELEFONO_2IsNull write SetTELEFONO_2IsNull;
    property MOVIL_1: String read GetMOVIL_1Value write SetMOVIL_1Value;
    property MOVIL_1IsNull: Boolean read GetMOVIL_1IsNull write SetMOVIL_1IsNull;
    property MOVIL_2: String read GetMOVIL_2Value write SetMOVIL_2Value;
    property MOVIL_2IsNull: Boolean read GetMOVIL_2IsNull write SetMOVIL_2IsNull;
    property FAX: String read GetFAXValue write SetFAXValue;
    property FAXIsNull: Boolean read GetFAXIsNull write SetFAXIsNull;
    property EMAIL_1: String read GetEMAIL_1Value write SetEMAIL_1Value;
    property EMAIL_1IsNull: Boolean read GetEMAIL_1IsNull write SetEMAIL_1IsNull;
    property EMAIL_2: String read GetEMAIL_2Value write SetEMAIL_2Value;
    property EMAIL_2IsNull: Boolean read GetEMAIL_2IsNull write SetEMAIL_2IsNull;
    property PAGINA_WEB: String read GetPAGINA_WEBValue write SetPAGINA_WEBValue;
    property PAGINA_WEBIsNull: Boolean read GetPAGINA_WEBIsNull write SetPAGINA_WEBIsNull;
    property NOTAS: IROStrings read GetNOTASValue;
    property NOTASIsNull: Boolean read GetNOTASIsNull write SetNOTASIsNull;
    property FECHA_ALTA: DateTime read GetFECHA_ALTAValue write SetFECHA_ALTAValue;
    property FECHA_ALTAIsNull: Boolean read GetFECHA_ALTAIsNull write SetFECHA_ALTAIsNull;
    property FECHA_MODIFICACION: DateTime read GetFECHA_MODIFICACIONValue write SetFECHA_MODIFICACIONValue;
    property FECHA_MODIFICACIONIsNull: Boolean read GetFECHA_MODIFICACIONIsNull write SetFECHA_MODIFICACIONIsNull;
    property USUARIO: String read GetUSUARIOValue write SetUSUARIOValue;
    property USUARIOIsNull: Boolean read GetUSUARIOIsNull write SetUSUARIOIsNull;
    property ID_EMPRESA: Integer read GetID_EMPRESAValue write SetID_EMPRESAValue;
    property ID_EMPRESAIsNull: Boolean read GetID_EMPRESAIsNull write SetID_EMPRESAIsNull;
    property REFERENCIA: String read GetREFERENCIAValue write SetREFERENCIAValue;
    property REFERENCIAIsNull: Boolean read GetREFERENCIAIsNull write SetREFERENCIAIsNull;
    property FECHA_NACIMIENTO: DateTime read GetFECHA_NACIMIENTOValue write SetFECHA_NACIMIENTOValue;
    property FECHA_NACIMIENTOIsNull: Boolean read GetFECHA_NACIMIENTOIsNull write SetFECHA_NACIMIENTOIsNull;
    property NUMERO_SS: String read GetNUMERO_SSValue write SetNUMERO_SSValue;
    property NUMERO_SSIsNull: Boolean read GetNUMERO_SSIsNull write SetNUMERO_SSIsNull;
    property FECHA_BAJA: DateTime read GetFECHA_BAJAValue write SetFECHA_BAJAValue;
    property FECHA_BAJAIsNull: Boolean read GetFECHA_BAJAIsNull write SetFECHA_BAJAIsNull;
    property CAUSA_BAJA: String read GetCAUSA_BAJAValue write SetCAUSA_BAJAValue;
    property CAUSA_BAJAIsNull: Boolean read GetCAUSA_BAJAIsNull write SetCAUSA_BAJAIsNull;
    property PABELLON: String read GetPABELLONValue write SetPABELLONValue;
    property PABELLONIsNull: Boolean read GetPABELLONIsNull write SetPABELLONIsNull;

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

  end;

implementation

uses Variants, uROBinaryHelpers;

{ TContactosDataTableRules }
constructor TContactosDataTableRules.Create(aDataTable: TDADataTable);
var
  StrList: TStringList;
begin
  inherited;

  StrList := TStringList.Create;
  StrList.OnChange := NOTAS_OnChange;
  f_NOTAS := NewROStrings(StrList,True);
end;

destructor TContactosDataTableRules.Destroy;
begin
  inherited;
end;

procedure TContactosDataTableRules.NOTAS_OnChange(Sender: TObject);
begin
  if DataTable.Editing then DataTable.Fields[idx_ContactosNOTAS].AsVariant := TStringList(Sender).Text;
end;

function TContactosDataTableRules.GetIDValue: Integer;
begin
  result := DataTable.Fields[idx_ContactosID].AsInteger;
end;

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

function TContactosDataTableRules.GetIDIsNull: boolean;
begin
  result := DataTable.Fields[idx_ContactosID].IsNull;
end;

procedure TContactosDataTableRules.SetIDIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_ContactosID].AsVariant := Null;
end;

function TContactosDataTableRules.GetID_CATEGORIAValue: Integer;
begin
  result := DataTable.Fields[idx_ContactosID_CATEGORIA].AsInteger;
end;

procedure TContactosDataTableRules.SetID_CATEGORIAValue(const aValue: Integer);
begin
  DataTable.Fields[idx_ContactosID_CATEGORIA].AsInteger := aValue;
end;

function TContactosDataTableRules.GetID_CATEGORIAIsNull: boolean;
begin
  result := DataTable.Fields[idx_ContactosID_CATEGORIA].IsNull;
end;

procedure TContactosDataTableRules.SetID_CATEGORIAIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_ContactosID_CATEGORIA].AsVariant := Null;
end;

function TContactosDataTableRules.GetNIF_CIFValue: String;
begin
  result := DataTable.Fields[idx_ContactosNIF_CIF].AsString;
end;

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

function TContactosDataTableRules.GetNIF_CIFIsNull: boolean;
begin
  result := DataTable.Fields[idx_ContactosNIF_CIF].IsNull;
end;

procedure TContactosDataTableRules.SetNIF_CIFIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_ContactosNIF_CIF].AsVariant := Null;
end;

function TContactosDataTableRules.GetNOMBREValue: String;
begin
  result := DataTable.Fields[idx_ContactosNOMBRE].AsString;
end;

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

function TContactosDataTableRules.GetNOMBREIsNull: boolean;
begin
  result := DataTable.Fields[idx_ContactosNOMBRE].IsNull;
end;

procedure TContactosDataTableRules.SetNOMBREIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_ContactosNOMBRE].AsVariant := Null;
end;

function TContactosDataTableRules.GetPERSONA_CONTACTOValue: String;
begin
  result := DataTable.Fields[idx_ContactosPERSONA_CONTACTO].AsString;
end;

procedure TContactosDataTableRules.SetPERSONA_CONTACTOValue(const aValue: String);
begin
  DataTable.Fields[idx_ContactosPERSONA_CONTACTO].AsString := aValue;
end;

function TContactosDataTableRules.GetPERSONA_CONTACTOIsNull: boolean;
begin
  result := DataTable.Fields[idx_ContactosPERSONA_CONTACTO].IsNull;
end;

procedure TContactosDataTableRules.SetPERSONA_CONTACTOIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_ContactosPERSONA_CONTACTO].AsVariant := Null;
end;

function TContactosDataTableRules.GetCALLEValue: String;
begin
  result := DataTable.Fields[idx_ContactosCALLE].AsString;
end;

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

function TContactosDataTableRules.GetCALLEIsNull: boolean;
begin
  result := DataTable.Fields[idx_ContactosCALLE].IsNull;
end;

procedure TContactosDataTableRules.SetCALLEIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_ContactosCALLE].AsVariant := Null;
end;

function TContactosDataTableRules.GetPOBLACIONValue: String;
begin
  result := DataTable.Fields[idx_ContactosPOBLACION].AsString;
end;

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

function TContactosDataTableRules.GetPOBLACIONIsNull: boolean;
begin
  result := DataTable.Fields[idx_ContactosPOBLACION].IsNull;
end;

procedure TContactosDataTableRules.SetPOBLACIONIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_ContactosPOBLACION].AsVariant := Null;
end;

function TContactosDataTableRules.GetPROVINCIAValue: String;
begin
  result := DataTable.Fields[idx_ContactosPROVINCIA].AsString;
end;

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

function TContactosDataTableRules.GetPROVINCIAIsNull: boolean;
begin
  result := DataTable.Fields[idx_ContactosPROVINCIA].IsNull;
end;

procedure TContactosDataTableRules.SetPROVINCIAIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_ContactosPROVINCIA].AsVariant := Null;
end;

function TContactosDataTableRules.GetCODIGO_POSTALValue: String;
begin
  result := DataTable.Fields[idx_ContactosCODIGO_POSTAL].AsString;
end;

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

function TContactosDataTableRules.GetCODIGO_POSTALIsNull: boolean;
begin
  result := DataTable.Fields[idx_ContactosCODIGO_POSTAL].IsNull;
end;

procedure TContactosDataTableRules.SetCODIGO_POSTALIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_ContactosCODIGO_POSTAL].AsVariant := Null;
end;

function TContactosDataTableRules.GetTELEFONO_1Value: String;
begin
  result := DataTable.Fields[idx_ContactosTELEFONO_1].AsString;
end;

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

function TContactosDataTableRules.GetTELEFONO_1IsNull: boolean;
begin
  result := DataTable.Fields[idx_ContactosTELEFONO_1].IsNull;
end;

procedure TContactosDataTableRules.SetTELEFONO_1IsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_ContactosTELEFONO_1].AsVariant := Null;
end;

function TContactosDataTableRules.GetTELEFONO_2Value: String;
begin
  result := DataTable.Fields[idx_ContactosTELEFONO_2].AsString;
end;

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

function TContactosDataTableRules.GetTELEFONO_2IsNull: boolean;
begin
  result := DataTable.Fields[idx_ContactosTELEFONO_2].IsNull;
end;

procedure TContactosDataTableRules.SetTELEFONO_2IsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_ContactosTELEFONO_2].AsVariant := Null;
end;

function TContactosDataTableRules.GetMOVIL_1Value: String;
begin
  result := DataTable.Fields[idx_ContactosMOVIL_1].AsString;
end;

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

function TContactosDataTableRules.GetMOVIL_1IsNull: boolean;
begin
  result := DataTable.Fields[idx_ContactosMOVIL_1].IsNull;
end;

procedure TContactosDataTableRules.SetMOVIL_1IsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_ContactosMOVIL_1].AsVariant := Null;
end;

function TContactosDataTableRules.GetMOVIL_2Value: String;
begin
  result := DataTable.Fields[idx_ContactosMOVIL_2].AsString;
end;

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

function TContactosDataTableRules.GetMOVIL_2IsNull: boolean;
begin
  result := DataTable.Fields[idx_ContactosMOVIL_2].IsNull;
end;

procedure TContactosDataTableRules.SetMOVIL_2IsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_ContactosMOVIL_2].AsVariant := Null;
end;

function TContactosDataTableRules.GetFAXValue: String;
begin
  result := DataTable.Fields[idx_ContactosFAX].AsString;
end;

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

function TContactosDataTableRules.GetFAXIsNull: boolean;
begin
  result := DataTable.Fields[idx_ContactosFAX].IsNull;
end;

procedure TContactosDataTableRules.SetFAXIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_ContactosFAX].AsVariant := Null;
end;

function TContactosDataTableRules.GetEMAIL_1Value: String;
begin
  result := DataTable.Fields[idx_ContactosEMAIL_1].AsString;
end;

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

function TContactosDataTableRules.GetEMAIL_1IsNull: boolean;
begin
  result := DataTable.Fields[idx_ContactosEMAIL_1].IsNull;
end;

procedure TContactosDataTableRules.SetEMAIL_1IsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_ContactosEMAIL_1].AsVariant := Null;
end;

function TContactosDataTableRules.GetEMAIL_2Value: String;
begin
  result := DataTable.Fields[idx_ContactosEMAIL_2].AsString;
end;

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

function TContactosDataTableRules.GetEMAIL_2IsNull: boolean;
begin
  result := DataTable.Fields[idx_ContactosEMAIL_2].IsNull;
end;

procedure TContactosDataTableRules.SetEMAIL_2IsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_ContactosEMAIL_2].AsVariant := Null;
end;

function TContactosDataTableRules.GetPAGINA_WEBValue: String;
begin
  result := DataTable.Fields[idx_ContactosPAGINA_WEB].AsString;
end;

procedure TContactosDataTableRules.SetPAGINA_WEBValue(const aValue: String);
begin
  DataTable.Fields[idx_ContactosPAGINA_WEB].AsString := aValue;
end;

function TContactosDataTableRules.GetPAGINA_WEBIsNull: boolean;
begin
  result := DataTable.Fields[idx_ContactosPAGINA_WEB].IsNull;
end;

procedure TContactosDataTableRules.SetPAGINA_WEBIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_ContactosPAGINA_WEB].AsVariant := Null;
end;

function TContactosDataTableRules.GetNOTASValue: IROStrings;
begin
  result := f_NOTAS;
  result.Text := DataTable.Fields[idx_ContactosNOTAS].AsString;
end;

function TContactosDataTableRules.GetNOTASIsNull: boolean;
begin
  result := DataTable.Fields[idx_ContactosNOTAS].IsNull;
end;

procedure TContactosDataTableRules.SetNOTASIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_ContactosNOTAS].AsVariant := Null;
end;

function TContactosDataTableRules.GetFECHA_ALTAValue: DateTime;
begin
  result := DataTable.Fields[idx_ContactosFECHA_ALTA].AsDateTime;
end;

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

function TContactosDataTableRules.GetFECHA_ALTAIsNull: boolean;
begin
  result := DataTable.Fields[idx_ContactosFECHA_ALTA].IsNull;
end;

procedure TContactosDataTableRules.SetFECHA_ALTAIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_ContactosFECHA_ALTA].AsVariant := Null;
end;

function TContactosDataTableRules.GetFECHA_MODIFICACIONValue: DateTime;
begin
  result := DataTable.Fields[idx_ContactosFECHA_MODIFICACION].AsDateTime;
end;

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

function TContactosDataTableRules.GetFECHA_MODIFICACIONIsNull: boolean;
begin
  result := DataTable.Fields[idx_ContactosFECHA_MODIFICACION].IsNull;
end;

procedure TContactosDataTableRules.SetFECHA_MODIFICACIONIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_ContactosFECHA_MODIFICACION].AsVariant := Null;
end;

function TContactosDataTableRules.GetUSUARIOValue: String;
begin
  result := DataTable.Fields[idx_ContactosUSUARIO].AsString;
end;

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

function TContactosDataTableRules.GetUSUARIOIsNull: boolean;
begin
  result := DataTable.Fields[idx_ContactosUSUARIO].IsNull;
end;

procedure TContactosDataTableRules.SetUSUARIOIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_ContactosUSUARIO].AsVariant := Null;
end;

function TContactosDataTableRules.GetID_EMPRESAValue: Integer;
begin
  result := DataTable.Fields[idx_ContactosID_EMPRESA].AsInteger;
end;

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

function TContactosDataTableRules.GetID_EMPRESAIsNull: boolean;
begin
  result := DataTable.Fields[idx_ContactosID_EMPRESA].IsNull;
end;

procedure TContactosDataTableRules.SetID_EMPRESAIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_ContactosID_EMPRESA].AsVariant := Null;
end;

function TContactosDataTableRules.GetREFERENCIAValue: String;
begin
  result := DataTable.Fields[idx_ContactosREFERENCIA].AsString;
end;

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

function TContactosDataTableRules.GetREFERENCIAIsNull: boolean;
begin
  result := DataTable.Fields[idx_ContactosREFERENCIA].IsNull;
end;

procedure TContactosDataTableRules.SetREFERENCIAIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_ContactosREFERENCIA].AsVariant := Null;
end;


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

destructor TDatosBancariosDataTableRules.Destroy;
begin
  inherited;
end;

function TDatosBancariosDataTableRules.GetIDValue: Integer;
begin
  result := DataTable.Fields[idx_DatosBancariosID].AsInteger;
end;

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

function TDatosBancariosDataTableRules.GetIDIsNull: boolean;
begin
  result := DataTable.Fields[idx_DatosBancariosID].IsNull;
end;

procedure TDatosBancariosDataTableRules.SetIDIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_DatosBancariosID].AsVariant := Null;
end;

function TDatosBancariosDataTableRules.GetID_CONTACTOValue: Integer;
begin
  result := DataTable.Fields[idx_DatosBancariosID_CONTACTO].AsInteger;
end;

procedure TDatosBancariosDataTableRules.SetID_CONTACTOValue(const aValue: Integer);
begin
  DataTable.Fields[idx_DatosBancariosID_CONTACTO].AsInteger := aValue;
end;

function TDatosBancariosDataTableRules.GetID_CONTACTOIsNull: boolean;
begin
  result := DataTable.Fields[idx_DatosBancariosID_CONTACTO].IsNull;
end;

procedure TDatosBancariosDataTableRules.SetID_CONTACTOIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_DatosBancariosID_CONTACTO].AsVariant := Null;
end;

function TDatosBancariosDataTableRules.GetTITULARValue: String;
begin
  result := DataTable.Fields[idx_DatosBancariosTITULAR].AsString;
end;

procedure TDatosBancariosDataTableRules.SetTITULARValue(const aValue: String);
begin
  DataTable.Fields[idx_DatosBancariosTITULAR].AsString := aValue;
end;

function TDatosBancariosDataTableRules.GetTITULARIsNull: boolean;
begin
  result := DataTable.Fields[idx_DatosBancariosTITULAR].IsNull;
end;

procedure TDatosBancariosDataTableRules.SetTITULARIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_DatosBancariosTITULAR].AsVariant := Null;
end;

function TDatosBancariosDataTableRules.GetENTIDADValue: String;
begin
  result := DataTable.Fields[idx_DatosBancariosENTIDAD].AsString;
end;

procedure TDatosBancariosDataTableRules.SetENTIDADValue(const aValue: String);
begin
  DataTable.Fields[idx_DatosBancariosENTIDAD].AsString := aValue;
end;

function TDatosBancariosDataTableRules.GetENTIDADIsNull: boolean;
begin
  result := DataTable.Fields[idx_DatosBancariosENTIDAD].IsNull;
end;

procedure TDatosBancariosDataTableRules.SetENTIDADIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_DatosBancariosENTIDAD].AsVariant := Null;
end;

function TDatosBancariosDataTableRules.GetSUCURSALValue: String;
begin
  result := DataTable.Fields[idx_DatosBancariosSUCURSAL].AsString;
end;

procedure TDatosBancariosDataTableRules.SetSUCURSALValue(const aValue: String);
begin
  DataTable.Fields[idx_DatosBancariosSUCURSAL].AsString := aValue;
end;

function TDatosBancariosDataTableRules.GetSUCURSALIsNull: boolean;
begin
  result := DataTable.Fields[idx_DatosBancariosSUCURSAL].IsNull;
end;

procedure TDatosBancariosDataTableRules.SetSUCURSALIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_DatosBancariosSUCURSAL].AsVariant := Null;
end;

function TDatosBancariosDataTableRules.GetDCValue: String;
begin
  result := DataTable.Fields[idx_DatosBancariosDC].AsString;
end;

procedure TDatosBancariosDataTableRules.SetDCValue(const aValue: String);
begin
  DataTable.Fields[idx_DatosBancariosDC].AsString := aValue;
end;

function TDatosBancariosDataTableRules.GetDCIsNull: boolean;
begin
  result := DataTable.Fields[idx_DatosBancariosDC].IsNull;
end;

procedure TDatosBancariosDataTableRules.SetDCIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_DatosBancariosDC].AsVariant := Null;
end;

function TDatosBancariosDataTableRules.GetCUENTAValue: String;
begin
  result := DataTable.Fields[idx_DatosBancariosCUENTA].AsString;
end;

procedure TDatosBancariosDataTableRules.SetCUENTAValue(const aValue: String);
begin
  DataTable.Fields[idx_DatosBancariosCUENTA].AsString := aValue;
end;

function TDatosBancariosDataTableRules.GetCUENTAIsNull: boolean;
begin
  result := DataTable.Fields[idx_DatosBancariosCUENTA].IsNull;
end;

procedure TDatosBancariosDataTableRules.SetCUENTAIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_DatosBancariosCUENTA].AsVariant := Null;
end;

function TDatosBancariosDataTableRules.GetFECHA_ALTAValue: DateTime;
begin
  result := DataTable.Fields[idx_DatosBancariosFECHA_ALTA].AsDateTime;
end;

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

function TDatosBancariosDataTableRules.GetFECHA_ALTAIsNull: boolean;
begin
  result := DataTable.Fields[idx_DatosBancariosFECHA_ALTA].IsNull;
end;

procedure TDatosBancariosDataTableRules.SetFECHA_ALTAIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_DatosBancariosFECHA_ALTA].AsVariant := Null;
end;

function TDatosBancariosDataTableRules.GetFECHA_MODIFICACIONValue: DateTime;
begin
  result := DataTable.Fields[idx_DatosBancariosFECHA_MODIFICACION].AsDateTime;
end;

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

function TDatosBancariosDataTableRules.GetFECHA_MODIFICACIONIsNull: boolean;
begin
  result := DataTable.Fields[idx_DatosBancariosFECHA_MODIFICACION].IsNull;
end;

procedure TDatosBancariosDataTableRules.SetFECHA_MODIFICACIONIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_DatosBancariosFECHA_MODIFICACION].AsVariant := Null;
end;


{ TDireccionesContactoDataTableRules }
constructor TDireccionesContactoDataTableRules.Create(aDataTable: TDADataTable);
var
  StrList: TStringList;
begin
  inherited;

  StrList := TStringList.Create;
  StrList.OnChange := NOTAS_OnChange;
  f_NOTAS := NewROStrings(StrList,True);
end;

destructor TDireccionesContactoDataTableRules.Destroy;
begin
  inherited;
end;

procedure TDireccionesContactoDataTableRules.NOTAS_OnChange(Sender: TObject);
begin
  if DataTable.Editing then DataTable.Fields[idx_DireccionesContactoNOTAS].AsVariant := TStringList(Sender).Text;
end;

function TDireccionesContactoDataTableRules.GetIDValue: Integer;
begin
  result := DataTable.Fields[idx_DireccionesContactoID].AsInteger;
end;

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

function TDireccionesContactoDataTableRules.GetIDIsNull: boolean;
begin
  result := DataTable.Fields[idx_DireccionesContactoID].IsNull;
end;

procedure TDireccionesContactoDataTableRules.SetIDIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_DireccionesContactoID].AsVariant := Null;
end;

function TDireccionesContactoDataTableRules.GetID_CONTACTOValue: Integer;
begin
  result := DataTable.Fields[idx_DireccionesContactoID_CONTACTO].AsInteger;
end;

procedure TDireccionesContactoDataTableRules.SetID_CONTACTOValue(const aValue: Integer);
begin
  DataTable.Fields[idx_DireccionesContactoID_CONTACTO].AsInteger := aValue;
end;

function TDireccionesContactoDataTableRules.GetID_CONTACTOIsNull: boolean;
begin
  result := DataTable.Fields[idx_DireccionesContactoID_CONTACTO].IsNull;
end;

procedure TDireccionesContactoDataTableRules.SetID_CONTACTOIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_DireccionesContactoID_CONTACTO].AsVariant := Null;
end;

function TDireccionesContactoDataTableRules.GetCALLEValue: String;
begin
  result := DataTable.Fields[idx_DireccionesContactoCALLE].AsString;
end;

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

function TDireccionesContactoDataTableRules.GetCALLEIsNull: boolean;
begin
  result := DataTable.Fields[idx_DireccionesContactoCALLE].IsNull;
end;

procedure TDireccionesContactoDataTableRules.SetCALLEIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_DireccionesContactoCALLE].AsVariant := Null;
end;

function TDireccionesContactoDataTableRules.GetPOBLACIONValue: String;
begin
  result := DataTable.Fields[idx_DireccionesContactoPOBLACION].AsString;
end;

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

function TDireccionesContactoDataTableRules.GetPOBLACIONIsNull: boolean;
begin
  result := DataTable.Fields[idx_DireccionesContactoPOBLACION].IsNull;
end;

procedure TDireccionesContactoDataTableRules.SetPOBLACIONIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_DireccionesContactoPOBLACION].AsVariant := Null;
end;

function TDireccionesContactoDataTableRules.GetPROVINCIAValue: String;
begin
  result := DataTable.Fields[idx_DireccionesContactoPROVINCIA].AsString;
end;

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

function TDireccionesContactoDataTableRules.GetPROVINCIAIsNull: boolean;
begin
  result := DataTable.Fields[idx_DireccionesContactoPROVINCIA].IsNull;
end;

procedure TDireccionesContactoDataTableRules.SetPROVINCIAIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_DireccionesContactoPROVINCIA].AsVariant := Null;
end;

function TDireccionesContactoDataTableRules.GetCODIGO_POSTALValue: String;
begin
  result := DataTable.Fields[idx_DireccionesContactoCODIGO_POSTAL].AsString;
end;

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

function TDireccionesContactoDataTableRules.GetCODIGO_POSTALIsNull: boolean;
begin
  result := DataTable.Fields[idx_DireccionesContactoCODIGO_POSTAL].IsNull;
end;

procedure TDireccionesContactoDataTableRules.SetCODIGO_POSTALIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_DireccionesContactoCODIGO_POSTAL].AsVariant := Null;
end;

function TDireccionesContactoDataTableRules.GetPERSONA_CONTACTOValue: String;
begin
  result := DataTable.Fields[idx_DireccionesContactoPERSONA_CONTACTO].AsString;
end;

procedure TDireccionesContactoDataTableRules.SetPERSONA_CONTACTOValue(const aValue: String);
begin
  DataTable.Fields[idx_DireccionesContactoPERSONA_CONTACTO].AsString := aValue;
end;

function TDireccionesContactoDataTableRules.GetPERSONA_CONTACTOIsNull: boolean;
begin
  result := DataTable.Fields[idx_DireccionesContactoPERSONA_CONTACTO].IsNull;
end;

procedure TDireccionesContactoDataTableRules.SetPERSONA_CONTACTOIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_DireccionesContactoPERSONA_CONTACTO].AsVariant := Null;
end;

function TDireccionesContactoDataTableRules.GetNOMBREValue: String;
begin
  result := DataTable.Fields[idx_DireccionesContactoNOMBRE].AsString;
end;

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

function TDireccionesContactoDataTableRules.GetNOMBREIsNull: boolean;
begin
  result := DataTable.Fields[idx_DireccionesContactoNOMBRE].IsNull;
end;

procedure TDireccionesContactoDataTableRules.SetNOMBREIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_DireccionesContactoNOMBRE].AsVariant := Null;
end;

function TDireccionesContactoDataTableRules.GetTELEFONOValue: String;
begin
  result := DataTable.Fields[idx_DireccionesContactoTELEFONO].AsString;
end;

procedure TDireccionesContactoDataTableRules.SetTELEFONOValue(const aValue: String);
begin
  DataTable.Fields[idx_DireccionesContactoTELEFONO].AsString := aValue;
end;

function TDireccionesContactoDataTableRules.GetTELEFONOIsNull: boolean;
begin
  result := DataTable.Fields[idx_DireccionesContactoTELEFONO].IsNull;
end;

procedure TDireccionesContactoDataTableRules.SetTELEFONOIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_DireccionesContactoTELEFONO].AsVariant := Null;
end;

function TDireccionesContactoDataTableRules.GetMOVILValue: String;
begin
  result := DataTable.Fields[idx_DireccionesContactoMOVIL].AsString;
end;

procedure TDireccionesContactoDataTableRules.SetMOVILValue(const aValue: String);
begin
  DataTable.Fields[idx_DireccionesContactoMOVIL].AsString := aValue;
end;

function TDireccionesContactoDataTableRules.GetMOVILIsNull: boolean;
begin
  result := DataTable.Fields[idx_DireccionesContactoMOVIL].IsNull;
end;

procedure TDireccionesContactoDataTableRules.SetMOVILIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_DireccionesContactoMOVIL].AsVariant := Null;
end;

function TDireccionesContactoDataTableRules.GetFAXValue: String;
begin
  result := DataTable.Fields[idx_DireccionesContactoFAX].AsString;
end;

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

function TDireccionesContactoDataTableRules.GetFAXIsNull: boolean;
begin
  result := DataTable.Fields[idx_DireccionesContactoFAX].IsNull;
end;

procedure TDireccionesContactoDataTableRules.SetFAXIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_DireccionesContactoFAX].AsVariant := Null;
end;

function TDireccionesContactoDataTableRules.GetEMAILValue: String;
begin
  result := DataTable.Fields[idx_DireccionesContactoEMAIL].AsString;
end;

procedure TDireccionesContactoDataTableRules.SetEMAILValue(const aValue: String);
begin
  DataTable.Fields[idx_DireccionesContactoEMAIL].AsString := aValue;
end;

function TDireccionesContactoDataTableRules.GetEMAILIsNull: boolean;
begin
  result := DataTable.Fields[idx_DireccionesContactoEMAIL].IsNull;
end;

procedure TDireccionesContactoDataTableRules.SetEMAILIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_DireccionesContactoEMAIL].AsVariant := Null;
end;

function TDireccionesContactoDataTableRules.GetNOTASValue: IROStrings;
begin
  result := f_NOTAS;
  result.Text := DataTable.Fields[idx_DireccionesContactoNOTAS].AsString;
end;

function TDireccionesContactoDataTableRules.GetNOTASIsNull: boolean;
begin
  result := DataTable.Fields[idx_DireccionesContactoNOTAS].IsNull;
end;

procedure TDireccionesContactoDataTableRules.SetNOTASIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_DireccionesContactoNOTAS].AsVariant := Null;
end;

function TDireccionesContactoDataTableRules.GetPORTEValue: Float;
begin
  result := DataTable.Fields[idx_DireccionesContactoPORTE].AsFloat;
end;

procedure TDireccionesContactoDataTableRules.SetPORTEValue(const aValue: Float);
begin
  DataTable.Fields[idx_DireccionesContactoPORTE].AsFloat := aValue;
end;

function TDireccionesContactoDataTableRules.GetPORTEIsNull: boolean;
begin
  result := DataTable.Fields[idx_DireccionesContactoPORTE].IsNull;
end;

procedure TDireccionesContactoDataTableRules.SetPORTEIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_DireccionesContactoPORTE].AsVariant := Null;
end;

function TDireccionesContactoDataTableRules.GetFECHA_ALTAValue: DateTime;
begin
  result := DataTable.Fields[idx_DireccionesContactoFECHA_ALTA].AsDateTime;
end;

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

function TDireccionesContactoDataTableRules.GetFECHA_ALTAIsNull: boolean;
begin
  result := DataTable.Fields[idx_DireccionesContactoFECHA_ALTA].IsNull;
end;

procedure TDireccionesContactoDataTableRules.SetFECHA_ALTAIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_DireccionesContactoFECHA_ALTA].AsVariant := Null;
end;

function TDireccionesContactoDataTableRules.GetFECHA_MODIFICACIONValue: DateTime;
begin
  result := DataTable.Fields[idx_DireccionesContactoFECHA_MODIFICACION].AsDateTime;
end;

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

function TDireccionesContactoDataTableRules.GetFECHA_MODIFICACIONIsNull: boolean;
begin
  result := DataTable.Fields[idx_DireccionesContactoFECHA_MODIFICACION].IsNull;
end;

procedure TDireccionesContactoDataTableRules.SetFECHA_MODIFICACIONIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_DireccionesContactoFECHA_MODIFICACION].AsVariant := Null;
end;


{ TContactos_RefreshDataTableRules }
constructor TContactos_RefreshDataTableRules.Create(aDataTable: TDADataTable);
var
  StrList: TStringList;
begin
  inherited;

  StrList := TStringList.Create;
  StrList.OnChange := NOTAS_OnChange;
  f_NOTAS := NewROStrings(StrList,True);
end;

destructor TContactos_RefreshDataTableRules.Destroy;
begin
  inherited;
end;

procedure TContactos_RefreshDataTableRules.NOTAS_OnChange(Sender: TObject);
begin
  if DataTable.Editing then DataTable.Fields[idx_Contactos_RefreshNOTAS].AsVariant := TStringList(Sender).Text;
end;

function TContactos_RefreshDataTableRules.GetIDValue: Integer;
begin
  result := DataTable.Fields[idx_Contactos_RefreshID].AsInteger;
end;

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

function TContactos_RefreshDataTableRules.GetIDIsNull: boolean;
begin
  result := DataTable.Fields[idx_Contactos_RefreshID].IsNull;
end;

procedure TContactos_RefreshDataTableRules.SetIDIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_Contactos_RefreshID].AsVariant := Null;
end;

function TContactos_RefreshDataTableRules.GetNIF_CIFValue: String;
begin
  result := DataTable.Fields[idx_Contactos_RefreshNIF_CIF].AsString;
end;

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

function TContactos_RefreshDataTableRules.GetNIF_CIFIsNull: boolean;
begin
  result := DataTable.Fields[idx_Contactos_RefreshNIF_CIF].IsNull;
end;

procedure TContactos_RefreshDataTableRules.SetNIF_CIFIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_Contactos_RefreshNIF_CIF].AsVariant := Null;
end;

function TContactos_RefreshDataTableRules.GetNOMBREValue: String;
begin
  result := DataTable.Fields[idx_Contactos_RefreshNOMBRE].AsString;
end;

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

function TContactos_RefreshDataTableRules.GetNOMBREIsNull: boolean;
begin
  result := DataTable.Fields[idx_Contactos_RefreshNOMBRE].IsNull;
end;

procedure TContactos_RefreshDataTableRules.SetNOMBREIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_Contactos_RefreshNOMBRE].AsVariant := Null;
end;

function TContactos_RefreshDataTableRules.GetCALLEValue: String;
begin
  result := DataTable.Fields[idx_Contactos_RefreshCALLE].AsString;
end;

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

function TContactos_RefreshDataTableRules.GetCALLEIsNull: boolean;
begin
  result := DataTable.Fields[idx_Contactos_RefreshCALLE].IsNull;
end;

procedure TContactos_RefreshDataTableRules.SetCALLEIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_Contactos_RefreshCALLE].AsVariant := Null;
end;

function TContactos_RefreshDataTableRules.GetPOBLACIONValue: String;
begin
  result := DataTable.Fields[idx_Contactos_RefreshPOBLACION].AsString;
end;

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

function TContactos_RefreshDataTableRules.GetPOBLACIONIsNull: boolean;
begin
  result := DataTable.Fields[idx_Contactos_RefreshPOBLACION].IsNull;
end;

procedure TContactos_RefreshDataTableRules.SetPOBLACIONIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_Contactos_RefreshPOBLACION].AsVariant := Null;
end;

function TContactos_RefreshDataTableRules.GetPROVINCIAValue: String;
begin
  result := DataTable.Fields[idx_Contactos_RefreshPROVINCIA].AsString;
end;

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

function TContactos_RefreshDataTableRules.GetPROVINCIAIsNull: boolean;
begin
  result := DataTable.Fields[idx_Contactos_RefreshPROVINCIA].IsNull;
end;

procedure TContactos_RefreshDataTableRules.SetPROVINCIAIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_Contactos_RefreshPROVINCIA].AsVariant := Null;
end;

function TContactos_RefreshDataTableRules.GetCODIGO_POSTALValue: String;
begin
  result := DataTable.Fields[idx_Contactos_RefreshCODIGO_POSTAL].AsString;
end;

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

function TContactos_RefreshDataTableRules.GetCODIGO_POSTALIsNull: boolean;
begin
  result := DataTable.Fields[idx_Contactos_RefreshCODIGO_POSTAL].IsNull;
end;

procedure TContactos_RefreshDataTableRules.SetCODIGO_POSTALIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_Contactos_RefreshCODIGO_POSTAL].AsVariant := Null;
end;

function TContactos_RefreshDataTableRules.GetTELEFONO_1Value: String;
begin
  result := DataTable.Fields[idx_Contactos_RefreshTELEFONO_1].AsString;
end;

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

function TContactos_RefreshDataTableRules.GetTELEFONO_1IsNull: boolean;
begin
  result := DataTable.Fields[idx_Contactos_RefreshTELEFONO_1].IsNull;
end;

procedure TContactos_RefreshDataTableRules.SetTELEFONO_1IsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_Contactos_RefreshTELEFONO_1].AsVariant := Null;
end;

function TContactos_RefreshDataTableRules.GetTELEFONO_2Value: String;
begin
  result := DataTable.Fields[idx_Contactos_RefreshTELEFONO_2].AsString;
end;

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

function TContactos_RefreshDataTableRules.GetTELEFONO_2IsNull: boolean;
begin
  result := DataTable.Fields[idx_Contactos_RefreshTELEFONO_2].IsNull;
end;

procedure TContactos_RefreshDataTableRules.SetTELEFONO_2IsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_Contactos_RefreshTELEFONO_2].AsVariant := Null;
end;

function TContactos_RefreshDataTableRules.GetMOVIL_1Value: String;
begin
  result := DataTable.Fields[idx_Contactos_RefreshMOVIL_1].AsString;
end;

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

function TContactos_RefreshDataTableRules.GetMOVIL_1IsNull: boolean;
begin
  result := DataTable.Fields[idx_Contactos_RefreshMOVIL_1].IsNull;
end;

procedure TContactos_RefreshDataTableRules.SetMOVIL_1IsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_Contactos_RefreshMOVIL_1].AsVariant := Null;
end;

function TContactos_RefreshDataTableRules.GetMOVIL_2Value: String;
begin
  result := DataTable.Fields[idx_Contactos_RefreshMOVIL_2].AsString;
end;

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

function TContactos_RefreshDataTableRules.GetMOVIL_2IsNull: boolean;
begin
  result := DataTable.Fields[idx_Contactos_RefreshMOVIL_2].IsNull;
end;

procedure TContactos_RefreshDataTableRules.SetMOVIL_2IsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_Contactos_RefreshMOVIL_2].AsVariant := Null;
end;

function TContactos_RefreshDataTableRules.GetFAXValue: String;
begin
  result := DataTable.Fields[idx_Contactos_RefreshFAX].AsString;
end;

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

function TContactos_RefreshDataTableRules.GetFAXIsNull: boolean;
begin
  result := DataTable.Fields[idx_Contactos_RefreshFAX].IsNull;
end;

procedure TContactos_RefreshDataTableRules.SetFAXIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_Contactos_RefreshFAX].AsVariant := Null;
end;

function TContactos_RefreshDataTableRules.GetEMAIL_1Value: String;
begin
  result := DataTable.Fields[idx_Contactos_RefreshEMAIL_1].AsString;
end;

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

function TContactos_RefreshDataTableRules.GetEMAIL_1IsNull: boolean;
begin
  result := DataTable.Fields[idx_Contactos_RefreshEMAIL_1].IsNull;
end;

procedure TContactos_RefreshDataTableRules.SetEMAIL_1IsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_Contactos_RefreshEMAIL_1].AsVariant := Null;
end;

function TContactos_RefreshDataTableRules.GetEMAIL_2Value: String;
begin
  result := DataTable.Fields[idx_Contactos_RefreshEMAIL_2].AsString;
end;

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

function TContactos_RefreshDataTableRules.GetEMAIL_2IsNull: boolean;
begin
  result := DataTable.Fields[idx_Contactos_RefreshEMAIL_2].IsNull;
end;

procedure TContactos_RefreshDataTableRules.SetEMAIL_2IsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_Contactos_RefreshEMAIL_2].AsVariant := Null;
end;

function TContactos_RefreshDataTableRules.GetPAGINA_WEBValue: String;
begin
  result := DataTable.Fields[idx_Contactos_RefreshPAGINA_WEB].AsString;
end;

procedure TContactos_RefreshDataTableRules.SetPAGINA_WEBValue(const aValue: String);
begin
  DataTable.Fields[idx_Contactos_RefreshPAGINA_WEB].AsString := aValue;
end;

function TContactos_RefreshDataTableRules.GetPAGINA_WEBIsNull: boolean;
begin
  result := DataTable.Fields[idx_Contactos_RefreshPAGINA_WEB].IsNull;
end;

procedure TContactos_RefreshDataTableRules.SetPAGINA_WEBIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_Contactos_RefreshPAGINA_WEB].AsVariant := Null;
end;

function TContactos_RefreshDataTableRules.GetNOTASValue: IROStrings;
begin
  result := f_NOTAS;
  result.Text := DataTable.Fields[idx_Contactos_RefreshNOTAS].AsString;
end;

function TContactos_RefreshDataTableRules.GetNOTASIsNull: boolean;
begin
  result := DataTable.Fields[idx_Contactos_RefreshNOTAS].IsNull;
end;

procedure TContactos_RefreshDataTableRules.SetNOTASIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_Contactos_RefreshNOTAS].AsVariant := Null;
end;

function TContactos_RefreshDataTableRules.GetFECHA_ALTAValue: DateTime;
begin
  result := DataTable.Fields[idx_Contactos_RefreshFECHA_ALTA].AsDateTime;
end;

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

function TContactos_RefreshDataTableRules.GetFECHA_ALTAIsNull: boolean;
begin
  result := DataTable.Fields[idx_Contactos_RefreshFECHA_ALTA].IsNull;
end;

procedure TContactos_RefreshDataTableRules.SetFECHA_ALTAIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_Contactos_RefreshFECHA_ALTA].AsVariant := Null;
end;

function TContactos_RefreshDataTableRules.GetFECHA_MODIFICACIONValue: DateTime;
begin
  result := DataTable.Fields[idx_Contactos_RefreshFECHA_MODIFICACION].AsDateTime;
end;

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

function TContactos_RefreshDataTableRules.GetFECHA_MODIFICACIONIsNull: boolean;
begin
  result := DataTable.Fields[idx_Contactos_RefreshFECHA_MODIFICACION].IsNull;
end;

procedure TContactos_RefreshDataTableRules.SetFECHA_MODIFICACIONIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_Contactos_RefreshFECHA_MODIFICACION].AsVariant := Null;
end;

function TContactos_RefreshDataTableRules.GetUSUARIOValue: String;
begin
  result := DataTable.Fields[idx_Contactos_RefreshUSUARIO].AsString;
end;

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

function TContactos_RefreshDataTableRules.GetUSUARIOIsNull: boolean;
begin
  result := DataTable.Fields[idx_Contactos_RefreshUSUARIO].IsNull;
end;

procedure TContactos_RefreshDataTableRules.SetUSUARIOIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_Contactos_RefreshUSUARIO].AsVariant := Null;
end;

function TContactos_RefreshDataTableRules.GetREFERENCIAValue: String;
begin
  result := DataTable.Fields[idx_Contactos_RefreshREFERENCIA].AsString;
end;

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

function TContactos_RefreshDataTableRules.GetREFERENCIAIsNull: boolean;
begin
  result := DataTable.Fields[idx_Contactos_RefreshREFERENCIA].IsNull;
end;

procedure TContactos_RefreshDataTableRules.SetREFERENCIAIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_Contactos_RefreshREFERENCIA].AsVariant := Null;
end;

function TContactos_RefreshDataTableRules.GetPERSONA_CONTACTOValue: String;
begin
  result := DataTable.Fields[idx_Contactos_RefreshPERSONA_CONTACTO].AsString;
end;

procedure TContactos_RefreshDataTableRules.SetPERSONA_CONTACTOValue(const aValue: String);
begin
  DataTable.Fields[idx_Contactos_RefreshPERSONA_CONTACTO].AsString := aValue;
end;

function TContactos_RefreshDataTableRules.GetPERSONA_CONTACTOIsNull: boolean;
begin
  result := DataTable.Fields[idx_Contactos_RefreshPERSONA_CONTACTO].IsNull;
end;

procedure TContactos_RefreshDataTableRules.SetPERSONA_CONTACTOIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_Contactos_RefreshPERSONA_CONTACTO].AsVariant := Null;
end;


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

destructor TPersonalContactoDataTableRules.Destroy;
begin
  inherited;
end;

function TPersonalContactoDataTableRules.GetIDValue: Integer;
begin
  result := DataTable.Fields[idx_PersonalContactoID].AsInteger;
end;

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

function TPersonalContactoDataTableRules.GetIDIsNull: boolean;
begin
  result := DataTable.Fields[idx_PersonalContactoID].IsNull;
end;

procedure TPersonalContactoDataTableRules.SetIDIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PersonalContactoID].AsVariant := Null;
end;

function TPersonalContactoDataTableRules.GetID_CONTACTOValue: Integer;
begin
  result := DataTable.Fields[idx_PersonalContactoID_CONTACTO].AsInteger;
end;

procedure TPersonalContactoDataTableRules.SetID_CONTACTOValue(const aValue: Integer);
begin
  DataTable.Fields[idx_PersonalContactoID_CONTACTO].AsInteger := aValue;
end;

function TPersonalContactoDataTableRules.GetID_CONTACTOIsNull: boolean;
begin
  result := DataTable.Fields[idx_PersonalContactoID_CONTACTO].IsNull;
end;

procedure TPersonalContactoDataTableRules.SetID_CONTACTOIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PersonalContactoID_CONTACTO].AsVariant := Null;
end;

function TPersonalContactoDataTableRules.GetNOMBREValue: String;
begin
  result := DataTable.Fields[idx_PersonalContactoNOMBRE].AsString;
end;

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

function TPersonalContactoDataTableRules.GetNOMBREIsNull: boolean;
begin
  result := DataTable.Fields[idx_PersonalContactoNOMBRE].IsNull;
end;

procedure TPersonalContactoDataTableRules.SetNOMBREIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PersonalContactoNOMBRE].AsVariant := Null;
end;

function TPersonalContactoDataTableRules.GetPUESTOValue: String;
begin
  result := DataTable.Fields[idx_PersonalContactoPUESTO].AsString;
end;

procedure TPersonalContactoDataTableRules.SetPUESTOValue(const aValue: String);
begin
  DataTable.Fields[idx_PersonalContactoPUESTO].AsString := aValue;
end;

function TPersonalContactoDataTableRules.GetPUESTOIsNull: boolean;
begin
  result := DataTable.Fields[idx_PersonalContactoPUESTO].IsNull;
end;

procedure TPersonalContactoDataTableRules.SetPUESTOIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PersonalContactoPUESTO].AsVariant := Null;
end;

function TPersonalContactoDataTableRules.GetTELEFONOValue: String;
begin
  result := DataTable.Fields[idx_PersonalContactoTELEFONO].AsString;
end;

procedure TPersonalContactoDataTableRules.SetTELEFONOValue(const aValue: String);
begin
  DataTable.Fields[idx_PersonalContactoTELEFONO].AsString := aValue;
end;

function TPersonalContactoDataTableRules.GetTELEFONOIsNull: boolean;
begin
  result := DataTable.Fields[idx_PersonalContactoTELEFONO].IsNull;
end;

procedure TPersonalContactoDataTableRules.SetTELEFONOIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PersonalContactoTELEFONO].AsVariant := Null;
end;

function TPersonalContactoDataTableRules.GetMOVILValue: String;
begin
  result := DataTable.Fields[idx_PersonalContactoMOVIL].AsString;
end;

procedure TPersonalContactoDataTableRules.SetMOVILValue(const aValue: String);
begin
  DataTable.Fields[idx_PersonalContactoMOVIL].AsString := aValue;
end;

function TPersonalContactoDataTableRules.GetMOVILIsNull: boolean;
begin
  result := DataTable.Fields[idx_PersonalContactoMOVIL].IsNull;
end;

procedure TPersonalContactoDataTableRules.SetMOVILIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PersonalContactoMOVIL].AsVariant := Null;
end;

function TPersonalContactoDataTableRules.GetFAXValue: String;
begin
  result := DataTable.Fields[idx_PersonalContactoFAX].AsString;
end;

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

function TPersonalContactoDataTableRules.GetFAXIsNull: boolean;
begin
  result := DataTable.Fields[idx_PersonalContactoFAX].IsNull;
end;

procedure TPersonalContactoDataTableRules.SetFAXIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PersonalContactoFAX].AsVariant := Null;
end;

function TPersonalContactoDataTableRules.GetEMAILValue: String;
begin
  result := DataTable.Fields[idx_PersonalContactoEMAIL].AsString;
end;

procedure TPersonalContactoDataTableRules.SetEMAILValue(const aValue: String);
begin
  DataTable.Fields[idx_PersonalContactoEMAIL].AsString := aValue;
end;

function TPersonalContactoDataTableRules.GetEMAILIsNull: boolean;
begin
  result := DataTable.Fields[idx_PersonalContactoEMAIL].IsNull;
end;

procedure TPersonalContactoDataTableRules.SetEMAILIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PersonalContactoEMAIL].AsVariant := Null;
end;

function TPersonalContactoDataTableRules.GetFECHA_ALTAValue: DateTime;
begin
  result := DataTable.Fields[idx_PersonalContactoFECHA_ALTA].AsDateTime;
end;

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

function TPersonalContactoDataTableRules.GetFECHA_ALTAIsNull: boolean;
begin
  result := DataTable.Fields[idx_PersonalContactoFECHA_ALTA].IsNull;
end;

procedure TPersonalContactoDataTableRules.SetFECHA_ALTAIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PersonalContactoFECHA_ALTA].AsVariant := Null;
end;

function TPersonalContactoDataTableRules.GetFECHA_MODIFICACIONValue: DateTime;
begin
  result := DataTable.Fields[idx_PersonalContactoFECHA_MODIFICACION].AsDateTime;
end;

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

function TPersonalContactoDataTableRules.GetFECHA_MODIFICACIONIsNull: boolean;
begin
  result := DataTable.Fields[idx_PersonalContactoFECHA_MODIFICACION].IsNull;
end;

procedure TPersonalContactoDataTableRules.SetFECHA_MODIFICACIONIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PersonalContactoFECHA_MODIFICACION].AsVariant := Null;
end;


{ TPacientesDataTableRules }
constructor TPacientesDataTableRules.Create(aDataTable: TDADataTable);
var
  StrList: TStringList;
begin
  inherited;

  StrList := TStringList.Create;
  StrList.OnChange := NOTAS_OnChange;
  f_NOTAS := NewROStrings(StrList,True);
end;

destructor TPacientesDataTableRules.Destroy;
begin
  inherited;
end;

procedure TPacientesDataTableRules.NOTAS_OnChange(Sender: TObject);
begin
  if DataTable.Editing then DataTable.Fields[idx_PacientesNOTAS].AsVariant := TStringList(Sender).Text;
end;

function TPacientesDataTableRules.GetIDValue: Integer;
begin
  result := DataTable.Fields[idx_PacientesID].AsInteger;
end;

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

function TPacientesDataTableRules.GetIDIsNull: boolean;
begin
  result := DataTable.Fields[idx_PacientesID].IsNull;
end;

procedure TPacientesDataTableRules.SetIDIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PacientesID].AsVariant := Null;
end;

function TPacientesDataTableRules.GetID_CATEGORIAValue: Integer;
begin
  result := DataTable.Fields[idx_PacientesID_CATEGORIA].AsInteger;
end;

procedure TPacientesDataTableRules.SetID_CATEGORIAValue(const aValue: Integer);
begin
  DataTable.Fields[idx_PacientesID_CATEGORIA].AsInteger := aValue;
end;

function TPacientesDataTableRules.GetID_CATEGORIAIsNull: boolean;
begin
  result := DataTable.Fields[idx_PacientesID_CATEGORIA].IsNull;
end;

procedure TPacientesDataTableRules.SetID_CATEGORIAIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PacientesID_CATEGORIA].AsVariant := Null;
end;

function TPacientesDataTableRules.GetNIF_CIFValue: String;
begin
  result := DataTable.Fields[idx_PacientesNIF_CIF].AsString;
end;

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

function TPacientesDataTableRules.GetNIF_CIFIsNull: boolean;
begin
  result := DataTable.Fields[idx_PacientesNIF_CIF].IsNull;
end;

procedure TPacientesDataTableRules.SetNIF_CIFIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PacientesNIF_CIF].AsVariant := Null;
end;

function TPacientesDataTableRules.GetNOMBREValue: String;
begin
  result := DataTable.Fields[idx_PacientesNOMBRE].AsString;
end;

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

function TPacientesDataTableRules.GetNOMBREIsNull: boolean;
begin
  result := DataTable.Fields[idx_PacientesNOMBRE].IsNull;
end;

procedure TPacientesDataTableRules.SetNOMBREIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PacientesNOMBRE].AsVariant := Null;
end;

function TPacientesDataTableRules.GetPERSONA_CONTACTOValue: String;
begin
  result := DataTable.Fields[idx_PacientesPERSONA_CONTACTO].AsString;
end;

procedure TPacientesDataTableRules.SetPERSONA_CONTACTOValue(const aValue: String);
begin
  DataTable.Fields[idx_PacientesPERSONA_CONTACTO].AsString := aValue;
end;

function TPacientesDataTableRules.GetPERSONA_CONTACTOIsNull: boolean;
begin
  result := DataTable.Fields[idx_PacientesPERSONA_CONTACTO].IsNull;
end;

procedure TPacientesDataTableRules.SetPERSONA_CONTACTOIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PacientesPERSONA_CONTACTO].AsVariant := Null;
end;

function TPacientesDataTableRules.GetCALLEValue: String;
begin
  result := DataTable.Fields[idx_PacientesCALLE].AsString;
end;

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

function TPacientesDataTableRules.GetCALLEIsNull: boolean;
begin
  result := DataTable.Fields[idx_PacientesCALLE].IsNull;
end;

procedure TPacientesDataTableRules.SetCALLEIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PacientesCALLE].AsVariant := Null;
end;

function TPacientesDataTableRules.GetPOBLACIONValue: String;
begin
  result := DataTable.Fields[idx_PacientesPOBLACION].AsString;
end;

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

function TPacientesDataTableRules.GetPOBLACIONIsNull: boolean;
begin
  result := DataTable.Fields[idx_PacientesPOBLACION].IsNull;
end;

procedure TPacientesDataTableRules.SetPOBLACIONIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PacientesPOBLACION].AsVariant := Null;
end;

function TPacientesDataTableRules.GetPROVINCIAValue: String;
begin
  result := DataTable.Fields[idx_PacientesPROVINCIA].AsString;
end;

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

function TPacientesDataTableRules.GetPROVINCIAIsNull: boolean;
begin
  result := DataTable.Fields[idx_PacientesPROVINCIA].IsNull;
end;

procedure TPacientesDataTableRules.SetPROVINCIAIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PacientesPROVINCIA].AsVariant := Null;
end;

function TPacientesDataTableRules.GetCODIGO_POSTALValue: String;
begin
  result := DataTable.Fields[idx_PacientesCODIGO_POSTAL].AsString;
end;

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

function TPacientesDataTableRules.GetCODIGO_POSTALIsNull: boolean;
begin
  result := DataTable.Fields[idx_PacientesCODIGO_POSTAL].IsNull;
end;

procedure TPacientesDataTableRules.SetCODIGO_POSTALIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PacientesCODIGO_POSTAL].AsVariant := Null;
end;

function TPacientesDataTableRules.GetTELEFONO_1Value: String;
begin
  result := DataTable.Fields[idx_PacientesTELEFONO_1].AsString;
end;

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

function TPacientesDataTableRules.GetTELEFONO_1IsNull: boolean;
begin
  result := DataTable.Fields[idx_PacientesTELEFONO_1].IsNull;
end;

procedure TPacientesDataTableRules.SetTELEFONO_1IsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PacientesTELEFONO_1].AsVariant := Null;
end;

function TPacientesDataTableRules.GetTELEFONO_2Value: String;
begin
  result := DataTable.Fields[idx_PacientesTELEFONO_2].AsString;
end;

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

function TPacientesDataTableRules.GetTELEFONO_2IsNull: boolean;
begin
  result := DataTable.Fields[idx_PacientesTELEFONO_2].IsNull;
end;

procedure TPacientesDataTableRules.SetTELEFONO_2IsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PacientesTELEFONO_2].AsVariant := Null;
end;

function TPacientesDataTableRules.GetMOVIL_1Value: String;
begin
  result := DataTable.Fields[idx_PacientesMOVIL_1].AsString;
end;

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

function TPacientesDataTableRules.GetMOVIL_1IsNull: boolean;
begin
  result := DataTable.Fields[idx_PacientesMOVIL_1].IsNull;
end;

procedure TPacientesDataTableRules.SetMOVIL_1IsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PacientesMOVIL_1].AsVariant := Null;
end;

function TPacientesDataTableRules.GetMOVIL_2Value: String;
begin
  result := DataTable.Fields[idx_PacientesMOVIL_2].AsString;
end;

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

function TPacientesDataTableRules.GetMOVIL_2IsNull: boolean;
begin
  result := DataTable.Fields[idx_PacientesMOVIL_2].IsNull;
end;

procedure TPacientesDataTableRules.SetMOVIL_2IsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PacientesMOVIL_2].AsVariant := Null;
end;

function TPacientesDataTableRules.GetFAXValue: String;
begin
  result := DataTable.Fields[idx_PacientesFAX].AsString;
end;

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

function TPacientesDataTableRules.GetFAXIsNull: boolean;
begin
  result := DataTable.Fields[idx_PacientesFAX].IsNull;
end;

procedure TPacientesDataTableRules.SetFAXIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PacientesFAX].AsVariant := Null;
end;

function TPacientesDataTableRules.GetEMAIL_1Value: String;
begin
  result := DataTable.Fields[idx_PacientesEMAIL_1].AsString;
end;

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

function TPacientesDataTableRules.GetEMAIL_1IsNull: boolean;
begin
  result := DataTable.Fields[idx_PacientesEMAIL_1].IsNull;
end;

procedure TPacientesDataTableRules.SetEMAIL_1IsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PacientesEMAIL_1].AsVariant := Null;
end;

function TPacientesDataTableRules.GetEMAIL_2Value: String;
begin
  result := DataTable.Fields[idx_PacientesEMAIL_2].AsString;
end;

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

function TPacientesDataTableRules.GetEMAIL_2IsNull: boolean;
begin
  result := DataTable.Fields[idx_PacientesEMAIL_2].IsNull;
end;

procedure TPacientesDataTableRules.SetEMAIL_2IsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PacientesEMAIL_2].AsVariant := Null;
end;

function TPacientesDataTableRules.GetPAGINA_WEBValue: String;
begin
  result := DataTable.Fields[idx_PacientesPAGINA_WEB].AsString;
end;

procedure TPacientesDataTableRules.SetPAGINA_WEBValue(const aValue: String);
begin
  DataTable.Fields[idx_PacientesPAGINA_WEB].AsString := aValue;
end;

function TPacientesDataTableRules.GetPAGINA_WEBIsNull: boolean;
begin
  result := DataTable.Fields[idx_PacientesPAGINA_WEB].IsNull;
end;

procedure TPacientesDataTableRules.SetPAGINA_WEBIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PacientesPAGINA_WEB].AsVariant := Null;
end;

function TPacientesDataTableRules.GetNOTASValue: IROStrings;
begin
  result := f_NOTAS;
  result.Text := DataTable.Fields[idx_PacientesNOTAS].AsString;
end;

function TPacientesDataTableRules.GetNOTASIsNull: boolean;
begin
  result := DataTable.Fields[idx_PacientesNOTAS].IsNull;
end;

procedure TPacientesDataTableRules.SetNOTASIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PacientesNOTAS].AsVariant := Null;
end;

function TPacientesDataTableRules.GetFECHA_ALTAValue: DateTime;
begin
  result := DataTable.Fields[idx_PacientesFECHA_ALTA].AsDateTime;
end;

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

function TPacientesDataTableRules.GetFECHA_ALTAIsNull: boolean;
begin
  result := DataTable.Fields[idx_PacientesFECHA_ALTA].IsNull;
end;

procedure TPacientesDataTableRules.SetFECHA_ALTAIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PacientesFECHA_ALTA].AsVariant := Null;
end;

function TPacientesDataTableRules.GetFECHA_MODIFICACIONValue: DateTime;
begin
  result := DataTable.Fields[idx_PacientesFECHA_MODIFICACION].AsDateTime;
end;

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

function TPacientesDataTableRules.GetFECHA_MODIFICACIONIsNull: boolean;
begin
  result := DataTable.Fields[idx_PacientesFECHA_MODIFICACION].IsNull;
end;

procedure TPacientesDataTableRules.SetFECHA_MODIFICACIONIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PacientesFECHA_MODIFICACION].AsVariant := Null;
end;

function TPacientesDataTableRules.GetUSUARIOValue: String;
begin
  result := DataTable.Fields[idx_PacientesUSUARIO].AsString;
end;

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

function TPacientesDataTableRules.GetUSUARIOIsNull: boolean;
begin
  result := DataTable.Fields[idx_PacientesUSUARIO].IsNull;
end;

procedure TPacientesDataTableRules.SetUSUARIOIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PacientesUSUARIO].AsVariant := Null;
end;

function TPacientesDataTableRules.GetID_EMPRESAValue: Integer;
begin
  result := DataTable.Fields[idx_PacientesID_EMPRESA].AsInteger;
end;

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

function TPacientesDataTableRules.GetID_EMPRESAIsNull: boolean;
begin
  result := DataTable.Fields[idx_PacientesID_EMPRESA].IsNull;
end;

procedure TPacientesDataTableRules.SetID_EMPRESAIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PacientesID_EMPRESA].AsVariant := Null;
end;

function TPacientesDataTableRules.GetREFERENCIAValue: String;
begin
  result := DataTable.Fields[idx_PacientesREFERENCIA].AsString;
end;

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

function TPacientesDataTableRules.GetREFERENCIAIsNull: boolean;
begin
  result := DataTable.Fields[idx_PacientesREFERENCIA].IsNull;
end;

procedure TPacientesDataTableRules.SetREFERENCIAIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PacientesREFERENCIA].AsVariant := Null;
end;

function TPacientesDataTableRules.GetFECHA_NACIMIENTOValue: DateTime;
begin
  result := DataTable.Fields[idx_PacientesFECHA_NACIMIENTO].AsDateTime;
end;

procedure TPacientesDataTableRules.SetFECHA_NACIMIENTOValue(const aValue: DateTime);
begin
  DataTable.Fields[idx_PacientesFECHA_NACIMIENTO].AsDateTime := aValue;
end;

function TPacientesDataTableRules.GetFECHA_NACIMIENTOIsNull: boolean;
begin
  result := DataTable.Fields[idx_PacientesFECHA_NACIMIENTO].IsNull;
end;

procedure TPacientesDataTableRules.SetFECHA_NACIMIENTOIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PacientesFECHA_NACIMIENTO].AsVariant := Null;
end;

function TPacientesDataTableRules.GetNUMERO_SSValue: String;
begin
  result := DataTable.Fields[idx_PacientesNUMERO_SS].AsString;
end;

procedure TPacientesDataTableRules.SetNUMERO_SSValue(const aValue: String);
begin
  DataTable.Fields[idx_PacientesNUMERO_SS].AsString := aValue;
end;

function TPacientesDataTableRules.GetNUMERO_SSIsNull: boolean;
begin
  result := DataTable.Fields[idx_PacientesNUMERO_SS].IsNull;
end;

procedure TPacientesDataTableRules.SetNUMERO_SSIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PacientesNUMERO_SS].AsVariant := Null;
end;

function TPacientesDataTableRules.GetFECHA_BAJAValue: DateTime;
begin
  result := DataTable.Fields[idx_PacientesFECHA_BAJA].AsDateTime;
end;

procedure TPacientesDataTableRules.SetFECHA_BAJAValue(const aValue: DateTime);
begin
  DataTable.Fields[idx_PacientesFECHA_BAJA].AsDateTime := aValue;
end;

function TPacientesDataTableRules.GetFECHA_BAJAIsNull: boolean;
begin
  result := DataTable.Fields[idx_PacientesFECHA_BAJA].IsNull;
end;

procedure TPacientesDataTableRules.SetFECHA_BAJAIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PacientesFECHA_BAJA].AsVariant := Null;
end;

function TPacientesDataTableRules.GetCAUSA_BAJAValue: String;
begin
  result := DataTable.Fields[idx_PacientesCAUSA_BAJA].AsString;
end;

procedure TPacientesDataTableRules.SetCAUSA_BAJAValue(const aValue: String);
begin
  DataTable.Fields[idx_PacientesCAUSA_BAJA].AsString := aValue;
end;

function TPacientesDataTableRules.GetCAUSA_BAJAIsNull: boolean;
begin
  result := DataTable.Fields[idx_PacientesCAUSA_BAJA].IsNull;
end;

procedure TPacientesDataTableRules.SetCAUSA_BAJAIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PacientesCAUSA_BAJA].AsVariant := Null;
end;

function TPacientesDataTableRules.GetPABELLONValue: String;
begin
  result := DataTable.Fields[idx_PacientesPABELLON].AsString;
end;

procedure TPacientesDataTableRules.SetPABELLONValue(const aValue: String);
begin
  DataTable.Fields[idx_PacientesPABELLON].AsString := aValue;
end;

function TPacientesDataTableRules.GetPABELLONIsNull: boolean;
begin
  result := DataTable.Fields[idx_PacientesPABELLON].IsNull;
end;

procedure TPacientesDataTableRules.SetPABELLONIsNull(const aValue: Boolean);
begin
  if aValue then
    DataTable.Fields[idx_PacientesPABELLON].AsVariant := Null;
end;


initialization
  RegisterDataTableRules(RID_Contactos, TContactosDataTableRules);
  RegisterDataTableRules(RID_DatosBancarios, TDatosBancariosDataTableRules);
  RegisterDataTableRules(RID_DireccionesContacto, TDireccionesContactoDataTableRules);
  RegisterDataTableRules(RID_Contactos_Refresh, TContactos_RefreshDataTableRules);
  RegisterDataTableRules(RID_PersonalContacto, TPersonalContactoDataTableRules);
  RegisterDataTableRules(RID_Pacientes, TPacientesDataTableRules);

end.
