Objeto de Réplica


Se han implementado los siguientes métodos para el control de operaciones enviadas y recibidas, así como los parámetros de licencia o los mensajes que vamos obteniendo del replicador en un log.

MÉTODO DESCRIPCIÓN
replica.RecordsRX Este método devuelve un entero con las operaciones recibidas desde la última vez que se entró en la aplicación.
replica.TotalRecordsRX Este método devuelve un entero con el total de operaciones recibidas, sin importar cuándo hayan entrado al dispositivo.
replica.RecordsTX Este método devuelve un entero con las operaciones transmitidas desde la última vez que se entró en la aplicación.
replica.TotalRecordsTX Este método devuelve un entero con el total operaciones transmitidas, sin importar cuándo hayan entrado al dispositivo.
replica.RecordsPend Este método devuelve un entero con los registros pendientes de enviar desde el dispositivo al servidor. Es la bandeja de salida del dispositivo (master_replica_queue).
replica.Log Este método devuelve una cadena con los mensajes de debug del replicador del framework, mostrando lo que va haciendo y mostrando posibles errores de conexión.
replica.GetHostname Servidor contra el que replicar. Se puede pasar un parámetro numérico “2” para que nos devuelva el HostName secundario.
replica.GetLicense Número de licencia del dispositivo.
replica.GetMid Identificador único del dispositivo en el proyecto.
replica.Start Inicia la réplica. Se le puede pasar como parámetro “files” o “data” para que replique únicamente ficheros o datos, respectivamente.
replica.Stop Detiene la réplica.
replica.SetRestriction Dos parámetros, el primero una cadena con la restricción que queremos configurar y el segundo un array con los valores de la restricción.
replica.ClearRestrictions Se le pasa como parámetro una cadena con las restricciones que quieres eliminar, separadas por comas.
replica.ClearAllRestrictions Elimina todas las restricciones de réplica que se hubieran establecido.

Restricciones


Se han implementado unas claves en el license.ini para poder restringir la réplica, de forma que se limiten los días o las horas a las que se puede replicar así como evitar que se repliquen ficheros o datos si estamos conectados con los datos 3G-4G del teléfono.


CLAVE DE RESTRICCIONES DE RÉPLICA
RestrictionAllowedHours Array de intervalos horarios donde la réplica está permitida.
RestrictionWithMobileNetwork Dos posibles parámetros: files y data a los cuales hay que ponerle valor true ó false para activar ó desactivar la réplica de ficheros y de datos, respectivamente, cuando estamos conectados a los datos 3G-4G del teléfono.
RestrictionAllowedWeekdays Array de días de la semana donde la réplica está permitida.


Vista de las claves en el fichero license.ini:

    restrictionallowedhours={"allowedHours":["8:30-14:00","16:00-18:00"]}
    restrictionwithmobilenetwork={"files":false,"data":true}
    restrictionallowedweekdays={"allowedWeekdays":["Monday","Tuesday","Wednesday","Thursday","Friday"]}



También pueden formarse estas claves por script, de forma que en lugar de ser “fijas” en el license.ini, se puedan cambiar estas claves dinámicamente.

Establecer las claves con VBScript


   Dim restrictionData(2)
   restrictionData(0)="files:false"
   restrictionData(1)="data:true"
   replica.SetRestriction "WithMobileNetwork", restrictionData
  
  Dim restrictionHours(1)
  restrictionHours(0)="allowedHours:8:30-14:00,16:00-18:00"
  replica.SetRestriction "AllowedHours", restrictionHours
  
   Dim restrictionWeekdays(1)
  restrictionWeekdays(0)="allowedWeekdays:Monday,Tuesday,Wednesday,Thursday,Friday"
  replica.SetRestriction "AllowedWeekdays", restrictionWeekdays


Se pueden eliminar las restricciones con el comando:

   replica.ClearRestrictions "WithMobileNetwork,AllowedHours" Aqui separaremos por comas los parámetros que queremos eliminar de las restricciones.
   replica.ClearAllRestrictions Para eliminar todas las restricciones que tengamos actualmente.


Establecer las claves con JavaScript


   var restrictionData = {
files: false,
data: true
   };
  replica.setRestriction("WithMobileNetwork", restrictionData);
  var restrictionHours = {
  allowedHours: ["8:30-14:00", "16:00-18:00"]
  };
  replica.setRestriction("AllowedHours", restrictionHours);
  var restrictionWeekdays = {
allowedWeekdays: ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"]
   };
 replica.setRestriction("AllowedWeekdays", restrictionWeekdays);
 


Para eliminar las restricciones:

  replica.clearRestrictions("WithMobileNetwork,AllowedHours"); Separadas por comas ponemos las restricciones que queremos eliminar.
   replica.clearAllRestrictions(); Para quitar todas las restricciones.