Share via Share via... Twitter LinkedIn Facebook Pinterest Telegram WhatsApp Yammer RedditCambios recientesSend via e-MailImprimirEnlace permanente × Tabla de Contenidos Monitorizar estado de Réplica Consola de réplica Métodos de script RecordsRX TotalRecordsRX RecordsTX TotalRecordsTX RecordsPend Log Start Monitorizar estado de Réplica Consola de réplica Para ver en que estado se encuentra la Réplica, es posible crear una colección que monitorice los datos que va manejando la Réplica. Colección de ejemplo: <coll name="ConsolaReplica" fontsize="8" title="ConsolaReplica" objname="Empresa" updateobj="Empresa" progid="ASData.CASBasicDataObj" sql="SELECT t1.* FROM ##PREF##Empresa t1" filter="" sort="" notab="true" editmask="2"> <group name="General" id="1" /> <!-- frames --> <frame name="borde" framebox="true" height="100%" width="100%" bgcolor="#e4eefd" /> <frame name="frame1" frame="borde" bgcolor="#00000000" align="center|top" width="100%" height="50%" scroll="true" /> <frame name="fversion" frame="borde" framebox="true" align="left" width="100%" height="30%" bgcolor="#ffffd8" /> <!-- ESTADO REPLICA --> <prop name="MAP_TL1" group="1" type="TL" frame="borde" title="CONSOLA DE REPLICA" visible="1" lmargin="1%" labelshadow="false" labelbox="true" labelfont-bold="true" fontsize="12" align="center" labelwidth="40" /> <prop name="MAP_RECORDSRX" title="Operaciones Recibidas" type="T" labelwidth="15" fontsize="15" visible="15" group="1" frame="borde" locked="true" /> <prop name="MAP_RECORDSTX" title="Operaciones Enviadas" tmargin="1%" type="T" labelwidth="15" fontsize="15" visible="15" group="1" frame="borde" locked="true" /> <prop name="MAP_RECORDSPEND" title="Operaciones Pendientes" tmargin="2%" type="T" labelwidth="15" fontsize="15" visible="15" group="1" frame="borde" locked="true" /> <prop name="MAP_LOG" title="Log" type="T" labelwidth="0" fontsize="15" fieldsize="80" visible="15" group="1" frame="frame1" locked="true" /> <!-- VERSION DE LA APLICACION --> <prop name="MAP_VERSIONAPP" frame="fversion" group="1" locked="true" type="T" visible="1" labelwidth="9" fieldsize="18" title="Aplicacion" labelshadow="false" labelbox="false" /> <prop name="MAP_VERSIONFRAME" frame="fversion" group="1" locked="true" type="T" visible="1" labelwidth="9" fieldsize="18" title="FrameXOne" labelshadow="false" labelbox="false" /> <prop name="MAP_VERSIONXONELIVE" frame="fversion" group="1" locked="true" type="T" visible="1" labelwidth="9" fieldsize="18" title="XOneLive" labelshadow="false" labelbox="false" /> <prop name="MAP_DISPOSITIVO" frame="fversion" group="1" locked="true" type="T" visible="1" labelwidth="9" fieldsize="18" title="Dispositivo" labelshadow="false" labelbox="false" /> <prop name="REPLICADOR" group="1" frame="fversion" type="B" visible="1" labelwidth="80" lmargin="25%" width="80" height="50" title="REPLICAR" method="ExecuteNode (replicar)" /> <prop name="BTSALIR" group="1" frame="fversion" type="B" width="80" height="50" labelwidth="80" lmargin="5%" visible="1" title="SALIR" method="ExecuteNode (salir)" newline="false" /> <before-edit> <action name="setval" field="MAP_VERSIONAPP" value="##VERSION##" /> <action name="setval" field="MAP_VERSIONFRAME" value="##FRAME_VERSION##" /> <action name="setval" field="MAP_VERSIONXONELIVE" value="##LIVEUPDATE_VERSION##" /> <action name="setval" field="MAP_DISPOSITIVO" value="##DEVICE_MODEL##" /> <action name="runscript"> <script language="VBScript"> this("MAP_RECORDSRX")=cstr(Replica.RecordsRX)+"/"+cstr(Replica.TotalRecordsRX) this("MAP_RECORDSTX")=cstr(Replica.RecordsTX)+"/"+cstr(Replica.TotalRecordsTX) this("MAP_RECORDSPEND")=Replica.RecordsPend this("MAP_LOG")=CStr(Replica.Log) <!-- Se programa para que se ejecute "refresh" en 5 segundos --> ui.ExecuteActionAfterDelay "refresh",5 </script> </action> </before-edit> <refresh> <action name="runscript"> <script language="VBScript"> this("MAP_RECORDSRX")=cstr(Replica.RecordsRX)+"/"+cstr(Replica.TotalRecordsRX) this("MAP_RECORDSTX")=cstr(Replica.RecordsTX)+"/"+cstr(Replica.TotalRecordsTX) this("MAP_RECORDSPEND")=Replica.RecordsPend this("MAP_LOG")=CStr(Replica.Log) <!-- Se vuelve a llamar a sí mismo en 5 segundos, para hacerse recursivo. --> ui.ExecuteActionAfterDelay "refresh",5 </script> </action> </refresh> <salir> <action name="runscript"> <script language="VBScript"> appdata.failwithmessage -11888,"##EXIT##" </script> </action> </salir> <replicar> <action name="runscript"> <script language="VBScript"> Replica.Start </script> </action> </replicar> </coll> Métodos de script Los siguientes métodos de la clase Replica son los que usamos en el ejemplo de arriba. RecordsRX Este método devuelve un entero con las operaciones recibidas desde la última vez que se entró en la aplicación. TotalRecordsRX Este método devuelve un entero con el total de operaciones recibidas, sin importar cuando hayan entrado al dispositivo. RecordsTX Este método devuelve un entero con las operaciones transmitidas desde la última vez que se entró en la aplicación. TotalRecordsTX Este método devuelve un entero con el total operaciones transmitidas, sin importar cuándo hayan entrado al dispositivo. 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. 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. Start Indica al dispositivo que comience a replicar en este instante.