Share via Share via... Twitter LinkedIn Facebook Pinterest Telegram WhatsApp Yammer Reddit TeamsCambios recientesSend via e-MailImprimirEnlace permanente × Tabla de Contenidos RÉPLICA start stop getlog recordsPend recordsRX recordsTX totalRecordsRX totalRecordsTX getHostName getLicense getMid getDatabaseId processReplicatorQueue testConnection() testAuthentication() cleanFilesDatabase() RESTRICCIONES DE RÉPLICA restrictionAllowedHours restrictionWithMobileNetwork restrictionAllowedWeekdays clearRestrictions clearAllRestrictions RÉPLICA Objeto para obtener información de la réplica. Se pueden aplicar desde aquí restricciones de réplica y arrancar o detener el servicio de réplica. Método Descripción clearAllRestrictions quitar todas las restricciones. cleanFilesDatabase() limpia la base de datos de réplica de ficheros de los ficheros con estado 201 y retorna un entero con el número de registros borrados. clearRestrictions quitar restricciones. getLog obtener log. getDatabaseId obtener ID de base de datos. getHostname obtener nombre host. getLicense obtener licencia. getMid obtener MID. getRecordsPend obtener los registros pendientes. getRecordsRX obtener registros RX. getRecordsTX obtener registros TX. getTotalRecordsTX obtener el total de registros TX. getTotalRecordsRX obtener el total de registros RX. getReplicaQueuePendingOperations devuelve número de operaciones pendientes processReplicatorQueue procesar cola del replicador. setRestriction ajustar restricción. start Iniciar réplica. Este método fuerza la réplica. Equivalente a appData.userInterface.startReplica(); stop Detener la réplica. Este método detiene la réplica. Equivalente a appData.userInterface.stopReplica(); Obsoleto en este momento. testAuthentication() retorna un objeto javascript con las propiedades result (booleano) y error (string). Sirve para probar si el socket del replicador es conectable y si se pudo hacer login. testConnection() retorna un objeto javascript con las propiedades result (booleano) y error (string). start Tipo Función Tipo de Dato devuelto Texto Plataforma Android, Blackberry (5.0), iPhone, Windows Phone Iniciar réplica. Este método fuerza la réplica. Equivalente a appData.userInterface.startReplica(); En el caso de IOS y Windows Phone, si el dispositivo ya está replicando en el momento en que se invoca este método, continúa haciéndolo. En Android, este código implica que se ponga en cola una petición de réplica que se ejecutará cuando se termine el ciclo en proceso. Ejemplo de Uso: if (!inApp()) { // controlamos si queremos probar el lauch de la app en automático. if (jsconst_oper.autoLaunch){ // si esta marcado el lauch, tenemos que comprobar: si esta en estado susceptible de recibir averias, y si es así, lanzar la app // pruebas iniciales lanzamos y ya writelogfuncionesJS("NOTIFAVERIA-checkReplicaOk - Lanzando App","replica.js"); doLaunchApp(); }else{ writelogfuncionesJS("NOTIFAVERIA-checkReplicaOk - Por RevisaAvisosNoAppJS","replica.js"); RevisaAvisosNoAppJS(); replica.start(); } } case 3: //registramos el PUSHID NO PARECE FUNCIONAR EN EL REPLICAOK-FUERA DE LA APP trazaAverias("PUSHID-processNotification - Previo registrarPushV2","replica.js"); registrarPushV2(); trazaAverias("PUSHID-processNotification - Despues registrarPushV2","replica.js"); break; default://Test. Nos deja información de log de que ha recibido y procesado una petición. writelogExceptionJS(" processNotification. Notificacion sin tipo controlado: "+tipoNotif,"js_replica.js"); break; } // marcamos la notificacion como revisada y anotamos tambien fecha.. objNotif.MODIFICADO=1; objNotif.FECHAM=new Date(); objNotif.save(); objNotif=null; collNotif.moveNext(); } stop Tipo Función Tipo de Dato devuelto Texto Plataforma Android, Blackberry (5.0), iPhone, Windows Phone Este método detiene la réplica. Equivalente a appData.userInterface.stopReplica; En estos momentos está obsoleto, no debería usarse porque provocaría problemas de pérdidas de datos. En su lugar, se aconseja el uso de colecciones de mantenimiento. Ejemplo de Uso: replica.Stop(); getlog Tipo Función Tipo de Dato devuelto Texto Plataforma Android, Blackberry (5.0), iPhone, Windows Phone Función que retorna el LOG de réplica. Ejemplo de Uso: self("MAP_LOG")= replica.getLog(); recordsPend Tipo Función Tipo de Dato devuelto Entero Plataforma Android, Blackberry (5.0), iPhone, Windows Phone Función que retorna la cantidad de registros en cola, pendientes de enviar en el dispositivo. Ejemplo de Uso: self("MAP_recordsPend")= replica.getRecordsPend(); recordsRX Tipo Función Tipo de Dato devuelto Entero Plataforma Android, Blackberry (5.0), iPhone, Windows Phone Función que retorna la cantidad de registros recibidos. Ejemplo de Uso: self("MAP_RECORDSTX")=replica.getRecordsRX(); recordsTX Tipo Función Tipo de Dato devuelto Entero Plataforma Android, Blackberry (5.0), iPhone, Windows Phone Función que retorna la cantidad de registros enviados. En IOS y Windows Phone, este contador es relativo al ciclo de réplica. En Android, es más general, se inicializa al hacer LOGIN y se incrementa en cada ciclo. Ejemplo de Uso: self("MAP_RECORDSTX")=replica.getRecordsTX(); totalRecordsRX Tipo Función Tipo de Dato devuelto Entero Plataforma Android, Blackberry (5.0), iPhone, Windows Phone Función que retorna la cantidad total de registros recibidos. En IOS y Windows Phone, este contador es relativo al ciclo de réplica. En Android, es más general, se inicializa al hacer LOGIN y se incrementa en cada ciclo. Ejemplo de Uso: self("MAP_RECORDSTX")=(replica.recordsRX) + "/" + CStr(replica.totalRecordsRX); totalRecordsTX Tipo Función Tipo de Dato devuelto Entero Plataforma Android, Blackberry (5.0), iPhone, Windows Phone Función que retorna la cantidad total de registros enviados. Ejemplo de Uso: self("MAP_RECORDSTX")=(replica.recordsTX) + "/" + CStr(replica.totalRecordsTX); getHostName Tipo Función Parámetros IDX: Indice del HostName que se quiere obtener. Si no se pasa nada, se devuelve el primero Tipo de Dato devuelto Texto Plataforma Android, Blackberry (5.0), iPhone, Windows Phone Función que retorna el host que se haya definido el en license.ini. Como parámetro se pasa el índice: 1 ó 2, que se quiere obtener. Por defecto, devuelve el primer HostNamede la configuración. Ejemplo de Uso: self("MAP_HOSTNAME")=replica.getHostName(); getLicense Tipo Función Tipo de Dato devuelto Texto Plataforma Android, Blackberry (5.0), iPhone, Windows Phone Función que retorna el número de licencia del dispositivo. Se lee del license.ini. Ejemplo de Uso: self("MAP_LICENSE")=replica.getLicense(); getMid Tipo Función Tipo de Dato devuelto Texto Plataforma Android, Blackberry (5.0), iPhone, Windows Phone Función que retorna el MID del dispositivo. Se obtiene de la licencia definida en el licence.ini. Equivalente a la macro ##MID##, que usamos en ocasiones como: <action name=“setval” field=“MAP_MID” value=“##MID##”/> Ejemplo de Uso: self("MAP_MID")=replica.getMid(); <create> <action name="setval" field="FECHAOPER" value="##NOW_TIME##" /> <action name="setval" field="IDEMPRESA" value="##ENTID##" /> <action name="runscript"> <script language="javascript"> self.MID=replica.getMid(); </script> </action> </create> getDatabaseId Tipo Función Tipo de Dato devuelto Texto Plataforma Android, Blackberry (5.0), iPhone, Windows Phone Función que retorna el número de base de datos. Se obtiene de los primero caracteres de la licencia definida en el license.ini. Ejemplo de Uso: self("MAP_DBASEID")=replica.getDatabaseId(); processReplicatorQueue Tipo Función Tipo de Dato devuelto Boolean Plataforma Android,iPhone Devuelve booleano y procesa de manera síncrona la cola de salida de réplica. Tiene timeout de 60 segundos. testConnection() Tipo Función Tipo de Dato devuelto Boolean Plataforma Android,iPhone Retorna un objeto javascript con las propiedades result (booleano) y error (string). Sirve para probar si el socket del replicador es conectable. function testReplica() { var sResult = replica.testConnection(); ui.showToast("Connection: " + sResult); sResult = replica.testAuthentication(); ui.showToast("Authentication: " + sResult); testAuthentication() Tipo Función Tipo de Dato devuelto Boolean Plataforma Android,iPhone Retorna un objeto javascript con las propiedades result (booleano) y error (string). Sirve para probar si el socket del replicador es conectable y si se pudo hacer login. function testReplica() { var sResult = replica.testConnection(); ui.showToast("Connection: " + sResult); sResult = replica.testAuthentication(); ui.showToast("Authentication: " + sResult); cleanFilesDatabase() Tipo Función Tipo de Dato devuelto Entero Plataforma Android,iPhone Limpia la base de datos de réplica de ficheros de los ficheros con estado 201 y retorna un entero con el número de registros borrados. RESTRICCIONES DE RÉPLICA 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. restrictionAllowedHours Tipo Función Tipo de Dato devuelto Texto Plataformas Android, Blackberry (5.0), iPhone, Windows Phone Array de intervalos horarios donde la réplica está permitida. restrictionWithMobileNetwork Tipo Función Tipo de Dato devuelto Texto Plataformas Android, Blackberry (5.0), iPhone, Windows Phone Dos posibles parámetros: files y data a los cuales hay que ponerle valor true o false para activar o desactivar la réplica de ficheros y de datos, respectivamente, cuando estamos conectados a los datos 3G-4G del teléfono. Estas claves pueden formarse por script, de forma que en lugar de ser “fijas” en el license.ini, se puedan cambiar estas claves dinámicamente: restrictionAllowedWeekdays Tipo Función Tipo de Dato devuelto Texto Plataformas Android, Blackberry (5.0), iPhone, Windows Phone Array de días de la semana donde la réplica está permitida. Establecer las claves con JavaScript: clearRestrictions Tipo Función Tipo de Dato devuelto Texto Plataforma Android, Blackberry (5.0), iPhone, Windows Phone Quitar las restricciones para réplica que se pasan como parámetros. clearAllRestrictions Tipo Función Tipo de Dato devuelto Texto Plataforma Android, Blackberry (5.0), iPhone, Windows Phone Quitar todas las restricciones para réplica. Ejemplos de Uso: 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.