Expresiones XPath/XQuery y funciones Funciones de extensión de MobileTogether |
Desplazarse Inicio Anterior Inicio Siguiente Más |
Las funciones de extensión de XPath que se enumeran en este apartado se han creado específicamente para su uso en los diseños de MobileTogether y se puede usar en expresiones XPath en cualquier parte del diseño. Para llamar a estas funciones de extensión se usa el espacio de nombres XPath predeterminado.
Actualizar los valores devueltos de las funciones XPathUna función XPath solo se evalúa cuando se evalúa la expresión XPath que la contiene. Esto suele ocurrir cuando se desencadena una acción que contiene la expresión XPath o cuando un cambio en los datos provoca la evaluación de una expresión XPath.
Por ejemplo, imagine que tiene una expresión XPath que contiene la función mt-audio-is-playing. Esta función puede devolver el valor true o el valor false. Imaginemos que, cuando se evalúe la expresión, el valor devuelto será true (porque se está reproduciendo audio). Si este valor aparece en la solución, entonces el valor no cambiará automáticamente cuando se detenga la reproducción de audio. Para que eso ocurra, será necesario volver a llamar a la función para que el nuevo valor actualice el valor que aparece en pantalla.
El número de maneras distintas en que se pueden actualizar dichos valores dependerá de los mecanismos de diseño utilizados. Una manera de actualizar dichos valores es con ayuda del temporizador del evento AlActualizarPágina junto con la acción Actualizar imagen en pantalla.
|
Nota: | para ver la descripción de las funciones de la biblioteca general de funciones de extensión XPath de Altova, consulte el apartado Funciones de extensión de Altova (las funciones de extensión generales pueden utilizarse en todos los productos Altova, también en MobileTogether.) |
mt-audio-get-current-position(NúmeroCanal como xs:integer) como xs:decimal Toma como argumento el número del canal donde se está reproduciendo el archivo de audio de destino. Devuelve un número decimal que es la posición actual en segundos de la reproducción de audio. Tenga en cuenta que hasta que no se inicia la reproducción no existen datos sobre la posición actual. Por tanto, esta función debe utilizarse una vez iniciada la reproducción.
Usomt-audio-get-current-position(2)
|
mt-audio-get-duration(NúmeroCanal como xs:integer) como xs:decimal Toma como argumento el número del canal en el que se está reproduciendo el archivo de audio de destino. Devuelve un número decimal que es la duración en segundos de dicho archivo de audio. Tenga en cuenta que hasta que no se inicia la reproducción no existen datos sobre la duración. Por tanto, esta función debe utilizarse una vez iniciada la reproducción.
Usomt-audio-get-duration(5)
|
mt-audio-is-playing(NúmeroCanal como xs:integer) como xs:boolean Toma como argumento el número del canal que se debe probar. Devuelve true() si se está reproduciendo un archivo de audio en dicho canal. De lo contrario, devuelve false().
Usomt-audio-is-playing(3)
|
DescripciónDevuelve true() si el dispositivo cliente está grabando audio. De lo contrario, devuelve false().
Usomt-audio-is-recording()
|
mt-available-db-connection-names(FromSolution como xs:boolean) como item()* Devuelve los nombres de todas las conexiones BD disponibles. Si FromSolution es true(), entonces devuelve los nombres de las conexiones BD de la solución. Si FromSolution es false(), entonces devuelve los nombres de las conexiones DB guardadas en el servidor. El objeto devuelto es una secuencia de cadenas de texto.
|
DescripciónDevuelve los idiomas que se han definido en el cuadro de diálogo Localización.
En este cuadro de diálogo cada idioma se identifica con su código de idioma ISO (por ejemplo: en-US) y con un nombre (por ejemplo: English). El código de idioma del idioma predeterminado es una cadena vacía, pero el nombre puede ser cualquier cadena de texto.
La función devuelve cada idioma como matriz de dos cadenas, por ejemplo: [ "en-US", "English" ]. Si se definieron varios idiomas, se devuelven como secuencia de elementos de matriz, por ejemplo: ( ["en-US", "English"], ["de-DE", "German (DE)"] ). La primera matriz de la secuencia siembre devolverá el idioma predeterminado del diseño. Así que si no se especificó ningún nombre de idioma para el idioma predeterminado (en el cuadro de diálogo "Localización"), ambas cadenas de la primera matriz estarán vacías. Si se especificó, la primera matriz incluirá una cadena vacía y el nombre que se asignó al idioma predeterminado (por ejemplo: [ "", "MiIdiomaPredeterminado" ]).
Recuerde que la secuencia devuelta será en forma de cadenas separadas por espacios.
Usomt-available-languages() puede devolver el valor en-US English mt-available-languages() puede devolver el valor en-US English de-DE German (DE) mt-available-languages() puede devolver el valor MiIdiomaPredeterminado en-US English
|
mt-base64-to-hexBinary(ImagenBase64 como xs:base64Binary) como xs:string La función convierte una imagen con codificación Base64 en una cadena hexBinary. El argumento ImagenBase64 debe ser texto codificado en base64Binary. Puede especificarse un nodo de la fuente de página que aporte dicho texto.
Usomt-base64-to-hexBinary($XML1/Element1/@image) para una imagen Base64 a hexBinay
|
DescripciónDevuelve la hora a la que se actualizó la memoria caché de la fuente de página. Si la fuente de página no está almacenada en caché, entonces devuelve una secuencia vacía.
Usomt-cache-update-dateTime($XML1)
|
mt-called-by-enter-key() como xs:boolean Devuelve true() si el grupo de acciones actual fue desencadenado al pulsar la tecla Entrar y false() en caso contrario. Al haber pulsado el usuario la tecla Entrar para iniciar ese grupo de acciones en lugar de, por ejemplo, Escape, permitiría partir de la intención del usuario para condicionar el procesamiento dentro del grupo de acciones.
|
mt-called-by-escape-key() como xs:boolean Devuelve true() si el grupo de acciones actual fue desencadenado al pulsar la tecla Escape y false() en caso contrario. Al haber pulsado el usuario la tecla Escape para iniciar ese grupo de acciones en lugar de, por ejemplo, Entrar, permitiría partir de la intención del usuario para condicionar el procesamiento dentro del grupo de acciones.
|
mt-change-image-colors(ImagenBase64 como xs:base64Binary, ColoresOrigen como xs:string+, ColoresDestino como xs:string+, Calidad como xs:integer) como xs:base64Binary Toma una imagen codificada en base64 como primer argumento, cambia los colores de la imagen dados por el argumento ColoresOrigen por los colores dados por el argumento ColoresDestino y devuelve la imagen transformada como imagen codificada en base64.
•ImagenBase64 debe ser texto codificado en base64Binary. También se puede dar un nodo que devuelve dicho texto. •ColoresOrigen y ColoresDestino deben ser secuencias con un mínimo de una cadena. Ambas secuencias deben tener el mismo número de cadenas. •Calidad es un entero comprendido entre 1 y 100. Especifica el nivel de calidad, siendo 100 el nivel de calidad máximo.
|
mt-client-ip-address() como xs:string Devuelve la dirección IP del cliente como se ve desde el servidor. Para simulaciones, configure la dirección IP en la pestaña Simulación del cuadro de diálogo Opciones (Herramientas | Opciones) de MobileTogether Designer.
|
mt-client-theme() como (xs:string, xs:string) Devuelve una secuencia de dos cadenas de texto. La primera cadena de texto es el tema que está usando la solución; esta cadena puede tener como valor ligero u oscuro. La segunda cadena es la configuración del tema de la solución (que se configura en las propiedades del proyecto), que puede tener como valor ligero, oscuro o predeterminado.
|
DescripciónDevuelve true() si el dispositivo móvil está conectado a la red LAN. De lo contrario, devuelve false().
Usomt-connected-via-lan()
|
DescripciónDevuelve true() si el dispositivo móvil está conectado por WiFi. De lo contrario devuelve false().
Usomt-connected-via-wifi()
|
mt-control-text-offset(ControlKind como xs:string) como xs:integer* mt-control-text-offset(ControlKind como xs:string, Parámetros como mapa) como xs:integer*
Devuelve el valor en píxeles de los intervalos izquierdo, superior, derecho e inferior, en ese orden, del contenido del control indicado en el argumento ControlKind. El segundo argumento, Parámetros, es opcional y es un mapa clave-valor que define las propiedades del control. Más abajo puede ver las claves disponibles y sus valores. El mapa filtra el tipo de control indicado en ControlKind en las instancias que coinciden con los valores de la propiedad que se indican en el mapa.
Los valores de retorno de esta función se pueden usar para alinear el contenido de los controles seleccionados. Véase el ejemplo de más abajo.
A continuación puede ver los pares clave-valor que se pueden usar como mapa del argumento Parámetros. El orden de los pares clave-valor en el mapa no es fijo.
•"Tamaño del texto" : "small"|"medium"|"large" •"Unidad" : "px"|"dp"|"sp"|"" predeterminado es "px". Para más información sobre la relación entre píxeles, dp (píxeles independientes de densidad) y sp (píxeles independientes de escala), consulte Tamaños: píxeles, DPI, DP, SP. •"Texto en negrita" : "true"|"false" •"Texto en cursiva" : "true"|"false" •"Subrayar texto" : "true"|"false" •"Imagen del botón" : cualquier opción de Imagen del botón (p. ej. "+"|"-"|">"|"Compartir") •"Fondo del botón" : "transparente"|"no transparente". El valor predeterminado es "no transparente".
|
mt-control-width(Texto como xs:string*, Parámetros como map(*)) como xs:integer? Devuelve el ancho mínimo en píxeles del control cuando la cadena Texto es el texto en pantalla del control. El argumento Texto es el texto que se muestra en el control. El argumento Parámetros es un mapa clave-valor que define las propiedades del control. Las claves disponibles y sus valores aparecen más abajo. El número entero que se devuelve es el ancho mínimo en píxeles del control cuando la cadena dada Texto aparece en pantalla con las propiedades especificadas en el argumento Parámetros. Este valor se puede usar después para calcular y especificar otras propiedades relacionadas con el control, como el ancho de las columnas de la tabla donde aparece el control.
Nota: esta función no está disponible para la representación de datos en clientes web.
Nota: esta función solamente se puede usar en las expresiones XPath de (i) acciones del diseño y (ii) de la opción Garantizar que existe al cargar (valor XPath) de los nodos de las estructuras fuente de página. No está permitido utilizarla en las expresiones XPath de propiedades de estilo.
A continuación aparecen los pares clave-valor que se pueden dar como mapa del argumento Parámetros. El orden que tienen los pares clave-valor en el mapa no es fijo. Si no se aporta una propiedad de control (tal y como especifica el par clave-valor), entonces se usa el valor predeterminado de esa propiedad (para el control Etiqueta o Botón). Por tanto, solamente es obligatorio el parámetro Clase de control.
•"Clase de control" : "Etiqueta"|"Botón" •"Tamaño del texto" : "small"|"medium"|"large" •"Unidad" : "px"|"" (predeterminado) •"Texto en negrita" : "true"|"false" •"Texto en cursiva" : "true"|"false" •"Subrayar texto" : "true"|"false" •"Imagen del botón" : cualquier opción de Imagen del botón (p. ej. "+"|"-"|">"|"Compartir") •"Fondo del botón" : "transparente"|"no transparente". El valor predeterminado es "no transparente".
|
mt-convert-units(Size como xs:string, TargetUnit como xs:string) como xs:string Convierte el valor de longitud indicado en el argumento Size en un valor equivalente en la unidad indicada por el argumento TargetUnit. Las unidades de la conversión pueden ser cualquiera de entre px, dp y sp. Los dos argumentos de entrada, así como el valor de salida, son cadenas de texto. Para más información sobre estas unidades y su conversión consulte Tamaños: píxeles, DPI, DP, SP.
|
DescripciónDevuelve true si el elemento fila contiene columnas nueva, modificadas o eliminadas. Devuelve false si los campos están sin modificar. La función comprueba si se produjeron modificaciones en la fila de la BD especificada. Nota: para que esta función funcione correctamente debe habilitar el elemento OriginalRowSet en la fuente de página de la BD.
Usomt-db-any-changed-fields($DB1/DB/RowSet/Row[3])
|
DescripciónDevuelve true si la variable $DB (que representa a la base de datos de origen) tiene filas nuevas, modificadas o eliminadas. Devuelve false si la base de datos está sin modificar. La función comprueba si se produjeron modificaciones en la base de datos y también funciona si el elemento RowSets no tiene una clave primaria. Nota: para que esta función funcione correctamente debe habilitar el elemento OriginalRowSet en la fuente de página de la BD.
Usomt-db-any-changed-rows($DB1)
|
DescripciónDevuelve los atributos de campo del elemento Row original:
•Para filas nuevas: la función no devuelve ningún atributo de campo. Si se llama a la función para una fila nueva, devuelve una lista vacía. •Para filas modificadas: la función devuelve atributos de campo modificados. Si se llama a la función para una fila modificada, devuelve los campos de la fila original correspondiente que no aparecen dentro del elemento Row. •Para filas originales eliminadas: la función devuelve todos los atributos de campo. Si se llama a la función para una fila que se elimina de RowSet, devuelve devuelve todos los campos de la fila original eliminada.
Nota: para que esta función funcione correctamente debe habilitar el elemento OriginalRowSet en la fuente de página de la BD.
Usomt-db-deleted-original-fields($DB1/DB/RowSet/Row[1])
|
DescripciónDevuelve todos los elementos OriginalRow que carecen de elemento Row. La función se puede usar para determinar qué cambios se realizaron en los datos que se leen de la BD. Esto solo funciona si OriginalRowSet está habilitado en la fuente de página. Nota: para que esta función funcione correctamente debe habilitar el elemento OriginalRowSet en la fuente de página de la BD. Usomt-db-deleted-original-rows($DB1)
|
DescripciónToma una fuente de página (variable) como único parámetro y devuelve la ruta de archivo de la base de datos basada en archivos de la fuente de página. La ruta de archivo es relativa al directorio de trabajo de las soluciones.
Nota•Esta es una función del lado servidor y solo se puede ejecutar en servidor. •La función funciona con bases de datos SQLite y Access.
Usomt-db-file-path($DB1)
|
DescripciónToma una fila RowSet como entrada y devuelve atributos de campo modificados del elemento Row especificado:
•Para filas nuevas: todos los atributos de campo. Si se llama a la función para una fila nueva, devuelve todos los campos •Para filas originales eliminadas: todos los atributos de campo. Si se llama a la función para un elemento OriginalRow (para el que se eliminó el elemento Row correspondiente), devuelve todos los campos. •Para filas modificadas: atributos de campo modificados. Si se llama a la función para una fila modificada, devuelve los campos que tienen un valor distinto al que está almacenado en el elemento OriginalRow correspondiente.
Nota: para que esta función funcione correctamente debe habilitar el elemento OriginalRowSet en la fuente de página de la BD.
Usomt-db-modified-fields($DB1/DB/RowSet/Row[3])
|
DescripciónDevuelve una lista de atributos de todos los elementos Row que se modificaron. La función se puede usar para determinar qué cambios se realizaron en los datos que se leen de la BD. Tenga en cuenta que esto solo funciona si OriginalRowSet está habilitado en la fuente de página. Nota: para que esta función funcione correctamente debe habilitar el elemento OriginalRowSet en la fuente de página de la BD.
Recuerde que los elementos Row, en esta función, se identifican por sus claves primarias. Esta función solamente comprueba si el contenido de la fila ha cambiado. Para comprobar filas nuevas debe usar la función mt-db-new-rows. Para comprobar filas eliminadas puede usar la función mt-db-deleted-original-rows. Reordenar las filas no se considera un cambio.
Usomt-db-modified-rows($DB1)
|
DescripciónDevuelve atributos de campo nuevos del elemento Row especificado:
•Para filas nuevas: todos los hay atributos de campo. Si se llama a la función para una fila nueva, devuelve todos los campos. •Para filas modificadas: los atributos de campo nuevos. Si se llama a la función para una fila modificada, devuelve los campos que no aparecen para el elemento OriginalRow correspondiente. •Para filas originales: una lista vacía. Si se llama a la función para un elemento OriginalRow (para el que se eliminó el elemento Row correspondiente), devuelve una lista vacía.
Nota: para que esta función funcione correctamente debe habilitar el elemento OriginalRowSet en la fuente de página de la BD.
Usomt-db-new-fields($DB1/DB/RowSet/Row[1])
|
DescripciónToma un origen de BD y devuelve una lista de elementos Row nuevos, es decir, los elementos Row que aparecen dentro del elemento RowSet pero no dentro del elemento OriginalRowSet. La función se puede usar para determinar qué cambios se realizaron en los datos que se leen de la BD. Recuerde que esto solo funciona si OriginalRowSet está habilitado en la fuente de página. Nota: para que esta función funcione correctamente debe habilitar el elemento OriginalRowSet en la fuente de página de la BD.
Usomt-db-new-rows($DB1)
|
DescripciónPara poder editar filas de BD se guarda una copia del conjunto de filas orignal en la fuente de página de DB, en un elemento llamado OriginalRowSet, y los cambios se guardan en una estructura de datos paralela llamada RowSet. Al guardar la fuente de página, el contenido de RowSet se copia a OriginalRowSet.
La función mt-db-original-row toma una fila de la estructura de datos RowSet y devuelve la fila correspondiente de la estructura original. Esta función es la opuesta a la función mt-db-row-from-original. Para más información consulte Editar datos de la base de datos y Guardar datos en la base de datos.
Nota: para que esta función funcione correctamente debe habilitar el elemento OriginalRowSet en la fuente de página de la BD.
Usomt-db-original-row($DB1/DB/RowSet/Row[1]) returns $DB1/DB/OriginalRowSet/Row[1].
|
DescripciónPara que se puedan editar las filas de BD se guarda una copia del conjunto original de filas en la fuente de página de BD en un elemento llamado OriginalRowSet, y los cambios se guardan en una estructura de datos paralela llamada RowSet. Al guardar la fuente de página, el contenido de RowSet se copia en OriginalRowSet.
La función mt-db-row-from-original toma una fila de la estructura original y devuelve la fila correspondiente en la estructura de datos RowSet. Esta función es la opuesta a la función mt-db-original-row. Para más información consulte las secciones Editar datos de BD y Guardar datos en la BD.
Nota: para que esta función funcione correctamente debe habilitar el elemento OriginalRowSet en la fuente de página de la BD.
Usomt-db-row-from-original($DB1/DB/OriginalRowSet/Row[1]) returns $DB1/DB/RowSet/Row[1].
|
mt-email-attachment(NombreArchivo como xs:string, Contenido como item(), TipoContenido como xs:string) como array(*) Prepara el contenido XML, base64 o texto proporcionado por el argumento Contenido como adjunto del correo electrónico. Que el contenido se analice como XML, como imagen base64 o como texto viene determinado por el argumento TipoContenido, que puede tomar tres valores: XML, Base64 o text. El nombre de archivo asociado con el archivo adjunto viene dado por el argumento NombreArchivo.
Nota: la función mt-email-attachment es obligatoria en la opción Archivos adjuntos dinámicos de las acciones Enviar correo electrónico a y Compartir.
Nota: cuando el correo se envíe como HTML, el cuerpo del correo debe ser HTML correcto, es decir, debe empezar con el elemento html. Por ejemplo, puede crear un cuerpo de correo electrónico válido con esta construcción XPath/XQuery: element html { element body { "Test" } }
Nota: los archivos adjuntos solamente funcionan con clientes iOS y Android.
|
DescripciónDevuelve el código de error de la última acción de BD, Cargar o Guardar. Devuelve el código de error nativo del sistema operativo o de la BD. Por ejemplo, devuelve 404 cuando no se encontró una página web.
Usomt-external-error-code()
|
DescripciónDevuelve el texto de error de la última acción de BD, Cargar o Guardar. El texto de error es el texto que acompaña al código de error devuelto.
Usomt-external-error-text()
|
mt-extract-file-extension(RutaArchivo como xs:string) como xs:string? Devuelve la extensión de archivo (p. ej. xml) del archivo situado en la ruta de acceso dada por el argumento RutaArchivo. La cadena dada por el argumento RutaArchivo debe seguir el patrón léxico de una ruta de acceso absoluta o relativa. Recuerde que puede usar la función mt-last-file-path como argumento RutaArchivo.
|
mt-extract-file-name(RutaArchivo como xs:string) como xs:string? Devuelve el nombre (la parte situada antes de la extensión del archivo) del archivo situado en la ruta de acceso dada por el argumento RutaArchivo. La cadena dada por el argumento RutaArchivo debe seguir el patrón léxico de una ruta de acceso absoluta o relativa. Recuerde que puede usar la función mt-last-file-path como argumento RutaArchivo.
|
mt-font-height(TamañoTexto como xs:string*, Unidad como xs:string) como xs:string? Devuelve el alto en píxeles de los nombres de tamaño que se enviaron como argumento TamañoTexto. Los valores permitidos para este argumento son: smallest|small|medium|large|largest. El argumento opcional Unidad especifica en qué unidad está el alto numérico devuelto. Por el momento la única unidad disponible es píxeles.
Cada plataforma o dispositivo tiene definido un alto en píxeles propio para cada nombre de tamaño. La función mt-font-height sirve para obtener los valores numéricos que corresponden a cada nombre de tamaño en cada tipo de dispositivo y después calcular otros valores numéricos. Por ejemplo, para obtener un tamaño que sea un 120% superior al tamaño numérico que corresponde al tamaño 'largest' de un dispositivo, utilice esta expresión XPath: mt-font-height('largest', 'px') * 1.2. La función genera el valor numérico (en píxeles) que corresponde al tamaño 'largest'. Este valor se multiplica por 1.2 para obtener un valor numérico que sea un 120% del valor que corresponde al tamaño 'largest'.
Nota: esta función solamente se puede usar en las expresiones XPath de (i) acciones del diseño y (ii) de la opción Garantizar que existe al cargar (valor XPath) de los nodos de las estructuras fuente de página. No está permitido utilizarla en las expresiones XPath de propiedades de estilo.
|
mt-format-number(Número como xs:numeric, CadenaImagen como xs:string) como xs:string Toma un número como primer argumento, le aplica formato en función del segundo argumento (CadenaImagen) y devuelve el número con formato como cadena de texto. Es una función práctica a la hora de aplicar un formato más sencillo a números que se leen con dificultad. La cadena de imagen también puede incluir caracteres, como por ejemplo símbolos de divisas y, por tanto, también puede utilizarse para insertar caracteres en el resultado con formato. Si desea insertar un cero en una posición y no existe ningún dígito en el número de entrada en dicha posición, entonces utilice un cero en dicha posición en la cadena de imagen (como puede ver en los ejemplos más abajo). Si prefiere no forzar el cero (o cualquier otro carácter), utilice el símbolo (#).
Los dígitos que aparecen antes del separador decimal no se acortan nunca. La parte decimal de un número (situada la derecha del separador decimal) y el dígito de unidades (el primer dígito a la izquierda del separador decimal) se redondean solamente si la imagen de cadena de la parte decimal es más corta que el número de posiciones decimales del número de entrada.
Nota: en el dispositivo móvil el separador de agrupaciones y el separador decimal del resultado con formato serán los del idioma del dispositivo móvil.
|
mt-geo-map-marker(id como xs:string, geolocation como xs:string) como map (*) mt-geo-map-marker(id como xs:string, geolocation como xs:string, popup? como (xs:string*)) como map (*) mt-geo-map-marker(id como xs:string, geolocation como xs:string, popup? como (xs:string*), color? como xs:string) como map (*) La función genera una construcción XPath de asignación* que se usa para crear un marcador para el control Mapa de geoubicación. Los argumentos id y geolocation de la función son obligatorios; los argumentos popup y color son opcionales. Cada una de las cadenas suministradas se devuelve como texto en un valor de uno de los pares clave-valor de la construcción de mapa (imagen siguiente). Cada clave de la construcción de mapa que se devuelve recibe su valor del argumento correspondiente de la función; esas correspondencias las determina la posición en el índice de cada argumento. Por ejemplo: el primer argumento de la función suministra el valor de la clave id. Observe que el tercer argumento de la función es una secuencia de cadenas de texto. Estas cadenas se usan para generar el título y el texto de la ventana emergente del marcador. La primera cadena suministra el título de esa ventana emergente; las cadenas siguientes se concatenan para producir el texto de la ventana emergente, en el que cada cadena empieza una línea nueva. Si no quiere que se cree una ventana emergente, suministre una secuencia vacía como tercer argumento. El argumento color se puede suministrar como texto (por ejemplo, "verde") o como un valor RGB (por ejemplo "#336699"). Si no se indica ningún argumento color, entonces se usa el color de marcador predeterminado del dispositivo.
Tenga en cuenta que cada función devuelve un marcados. Para generar varios marcadores use una secuencia de varias funciones mt-geo-map-marker. Consulte los siguientes ejemplos. Tenga también en cuenta que puede usar la función mt-geo-map-marker dentro de otras expresiones XPath, como se muestra más abajo en el tercer ejemplo (que usa una construcción if-then-else).
* Construcción XPath de mapa: una construcción XPath de asignación parecida a una matriz XPath. La construcción de mapa es una secuencia de pares clave-valor (consulte el mapa que se devuelve en el primer ejemplo de la sección Uso, más abajo).
Usomt-geo-map-marker("vie","48.2143531 16.3707266", ("Vienna","Altova EU","European headquarters"), "green") devuelve una única construcción XPath de mapa que, a su vez, genera un único marcador en el control Mapa de geoubicación:
map { "id":"vie", "geolocation":(48.2143531, 16.3707266), "title":"Vienna", "text":"Altova EU European headquarters", "color":"green" }
mt-geo-map-marker("vie","48.2143531 16.3707266", ("Vienna","Altova EU")), mt-geo-map-marker("bev","42.5584577 -70.8893334", ("Beverly","Altova US")) devuelve dos construcciones XPath de mapa (y dos marcadores para el control Mapa de geoubicación).
mt-geo-map-marker("vie","48.2143531 16.3707266", ("Vienna","Altova EU")), mt-geo-map-marker("bev","42.5584577 -70.8893334",("Beverly","Altova US")), if ( $XML/MapMarkers/@withLondon = "1" ) then mt-geo-map-marker("lon","51.50939 -0.11832", ("London","No Altova") ) else () devuelve dos construcciones XPath de mapa y, si el atributo @withLondon tiene el valor "1", una tercera construcción para la geoubicación de Londres; por último, la función genera dos o tres marcadores para el control Mapa de geoubicación. |
DescripciónDevuelve true() si la solución inició el rastreo por geoubicación. De lo contrario devuelve false().
Usomt-geolocation-started()
|
mt-get-page-source-from-name(PageSourceName como string) como document-node Devuelve el nodo de documento de la fuente de página cuyo nombre sea idéntico a la cadena dada. En consecuencia, puede acceder a los nodos vía XPath. Si no hay ninguna fuente de página en la página actual cuyo nombre coincida con el de la cadena dada, entonces aparece un error. No es necesario que el argumento de la cadena dada incluya el carácter $ al principio. Usomt-get-page-source-from-name("$PERSISTENT") devuelve el elemento raíz de la fuente de página $PERSISTENT, por ejemplo $PERSISTENT/Orders mt-get-page-source-from-name("PERSISTENT") devuelve el elemento raíz de la fuente de página $PERSISTENT, por ejemplo $PERSISTENT/MyRootElement
|
mt-get-page-source-name(PageSource como node()) como xs:string Devuelve el nombre de la fuente de página que se da con PageSource como argumento. El nombre se devuelve como cadena de texto.
Usomt-get-page-source-name($XML1) devuelve la cadena "$XML1" mt-get-page-source-name($PERSISTENT) devuelve la cadena "$PERSISTENT"
|
mt-get-page-source-structure(PageSource como node() o como xs:string) como xs:string mt-get-page-source-structure(PageSource como node() o como xs:string, EnsureValues como boolean) como xs:string mt-get-page-source-structure(PageSource como node() o como xs:string, EnsureValues como boolean, Path como xs:string) como xs:string
Devuelve la estructura de la fuente de página que se indica con el argumento PageSource. Si el argumento EnsureValues es true(), también se devuelve el contenido de los nodos. Si EnsureValues es false() o si no se indica un segundo argumento (véase la primera firma más arriba), la estructura de fuente de la página se devuelve sin ningún contenido. La estructura y el contenido son los que contenga la página al cargarla.
Se puede indicar un tercer argumento (Path) si quiere seleccionar una subestructura en concreto de la estructura que devuelve el primer parámetro, PageSource. La cadena de texto se evalúa como una expresión de localización XPath dentro del contexto del nodo que devuelve PageSource. Si el nodo devuelto por esta expresión es un elemento, se devuelve con sus atributos pero sin secundarios.
Usomt-get-page-source-structure($XML1) devuelve la estructura de datos que tenía la fuente de página $XML1 cuando se cargó, pero sin valores mt-get-page-source-structure($XML1, true()) devuelve la estructura de datos de la fuente de página $XML1 y sus valores mt-get-page-source-structure($XML1/Companies/Company, false(), "Departments/Department) devuelve el elemento Department con sus atributos pero sin valores. for $i in mt-get-page-source-structure($XML1, true()) return $i//Product[1] devuelve el contenido del primer elemento Product de la fuente de página $XML1 en el momento de cargarla.
|
DescripciónDevuelve true si es posible acceder al servidor. De lo contrario, devuelve false. La función comprueba si se puede establecer una conexión con MobileTogether Server en un plazo de X segundos, siendo X el argumento SegundosTiempoEspera de la función.
Usomt-has-serveraccess(SegundosTiempoEspera como integer)
|
mt-hexBinary-to-base64(HexBinary como xs:string) como xs:base64Binary La función convierte una cadena hexBinary en una cadena con codificación Base64 (por lo general una imagen). Como argumento HexBinary puede darse un nodo que aporte la cadena hexBinary necesaria.
Usomt-hexBinary-to-base64('48656C6C6F20576F726C64') devuelve la cadena Base64 'SGVsbG8gV29ybGQ='
|
mt-hexBinary-to-string(HexBinary como xs:string, Codificación como xs:string) como xs:string La función convierte una cadena hexBinary en una cadena de texto que está codificada con la codificación dada en el argumento Codificación. Como argumento HexBinary puede darse un nodo que aporte la cadena hexBinary. Si se da una cadena vacía como argumento Codificación, la cadena de texto resultante se genera con la codificación predeterminada UTF-8. Si no se especifica el argumento Codificación se produce un error.
|
DescripciónToma dos argumentos: TextoEnlace y URLDestino. La función utiliza estos dos argumentos para crear un elemento de hipervínculo HTML: <a href="URLDestino">TextoEnlace</a>. El enlace se puede insertar en los correos electrónicos que se envían con la acción Enviar correo electrónico. El enlace se puede abrir una página de Internet o una solución de MobileTogether. Para agregar un enlace al cuerpo del correo electrónico, utilice la función mt-html-anchor en la expresión XPath de la opción Cuerpo (imagen siguiente) de la acción Enviar correo electrónico.
|
mt-image-width-and-height(Image as base64encoded-image) asxs:integer+ El argumento Imagen es el cifrado en base64 de la imagen cuyas dimensiones desea conocer. El argumento debe ser de tipo xs:base64Binary. Normalmente el argumento ubica un nodo que contiene los datos cifrados en base64. La función devuelve una secuencia de dos números enteros: (i) el ancho de la imagen en píxeles y (ii) el alto de la imagen en píxeles.
|
mt-in-app-purchase-platform-to-product(PlatformID como xs:string) como xs:string El argumento PlatformID es el ID de un producto en una plataforma en concreto. Devuelve el nombre del producto asignado a este ID de producto, tal y como está definido en el el cuadro de diálogo "Compras desde la aplicación". Consulte también la función mt-in-app-purchase-product-to-platform().
|
mt-in-app-purchase-product-to-platform(ProductName como xs:string) como xs:string El argumento ProductName es el nombre de un producto tal y como está definido en el el cuadro de diálogo "Compras desde la aplicación". Devuelve el ID de ese producto en la plataforma actual conforme a la asignación del cuadro de diálogo "Compras desde la aplicación". Consulte también la funciónmt-in-app-purchase-platform-to-product().
|
mt-in-app-purchase-service-started() como xs:boolean Comprueba si el dispositivo cliente cumple con todos los requisitos para efectuar compras desde la aplicación en la tienda de aplicaciones correspondiente, lo que incluye la gestión de facturas. Por ejemplo, en Android es necesario tener una cuenta de usuario de la tienda de aplicaciones para poder realizar una compra dentro de la aplicación. La función devuelve true() si el servicio está disponible y false() si no lo está.
|
mt-invert-color(Color como xs:string) como xs:string El argumento Color es el código RGB (en formato hexadecimal). Por ejemplo: "#00FFFF". La función invierte cada componente del color (R, G y B) y devuelve el código de color nuevo.
|
DescripciónDevuelve true si todas las licencias asignadas a MobileTogether Server son licencias adquiridas y false si una o más de las licencias asignadas son de prueba. Consejo: si ya no necesita alguna licencia de prueba, anule esa asignación.
Tenga en cuenta que:
•En clientes, la función devuelve false por defecto. Solo se devuelve la información de compra de las licencias del servidor si se hace una solicitud a un servidor. •En el simulador, la función siempre devuelve false. Use la opción del simulador correspondiente para simular que se ha adquirido una licencia. Para simulaciones en el diseñador y ejecuciones de prueba en el cliente esta opción simula que las licencias para MobileTogether Server son adquiridas. En las simulaciones en el servidor se devuelve la información real de compra de las licencias del servidor.
Usomt-is-server-purchased()
|
mt-last-file-path() asxs:string? Devuelve la ruta de acceso completa (por ejemplo, en Android, /storage/emulated/0/Download/miArchivo.xml) del último archivo cliente que se utilizó (que se cargó o guardó) en cualquiera de estas acciones: Grabación de audio, Grabación de vídeo, Cargar o guardar archivo, Cargar o guardar archivo binario y Cargar o guardar imagen.
Nota: esta función puede no ser compatible con ciertas versiones de algunos sistemas operativos que no sean Android.
Usomt-last-file-path()
|
mt-last-in-app-purchase-response-code() como xs:integer Devuelve el código de ejecución correcta/error de la última solicitud de compra desde la aplicación que envío el dispositivo cliente a la tienda de aplicaciones. Si la solicitud se procesa correctamente, el código suele ser 0; de lo contrario se devuelve un número entero. Esta función es útil si se quiere comprobar si un paso en concreto del flujo de trabajo se ejecutó correctamente. Las funciones relacionadas son mt-in-app-purchase-response-text() y mt-in-app-purchase-response-was-user-canceled().
|
mt-last-in-app-purchase-response-text() como xs:string Devuelve un mensaje de texto que indica si la última solicitud de compra desde la aplicación se realizó correctamente o si falló. Esta función es especialmente útil si ocurre un error, porque describe de qué clase de error se trata. Las funciones relacionadas son mt-in-app-purchase-response-was-user-canceled() y mt-in-app-purchase-response-code().
|
mt-last-in-app-purchase-response-was-user-canceled() como xs:boolean Comprueba con la tienda de aplicaciones si el usuario canceló la última compra desde la aplicación. Devuelve true() si la última compra se canceló; de lo contrario devuelve false(). Las funciones relacionadas son mt-in-app-purchase-response-text()y mt-in-app-purchase-response-code(). Esta función sirve para distinguir las solicitudes de compra fallidas de otros errores que puedan ocurrir en la solicitud de compra.
|
DescripciónLa función toma como argumento una cadena que es una estructura JSON serializada. La estructura JSON se convierte en XML, la envuelve un elemento json y es devuelta como nodo de documento. Por ejemplo, imagine que suministra este documento JSON en una cadena (es decir, entre comillas) como el argumento de la función:
{ "Root": { "user": "Altova", "message": "Hello", "A": { "B": "B Text", "C": "C Text", "D": { } } } }
La función devolverá un nodo de documento que tiene un elemento de documento llamado json que contiene la estructura JSON convertida en XML. El elemento secundario de json será Root.
Como se trata de un nodo de documento que ha sido devuelto por la función, puede acceder a partes del documento devuelto anexando una expresión XPath de localización a la función. Por ejemplo, si evalúa esta expresión (con la expresión de localización resaltada en amarillo):
mt-load-json-from-string('{ "A": { "B": "B Text", "C": "C Text", "D": { } } }')/json/A/C
devuelve "C Text".
Usomt-load-json-from-string('{ "A": "A Text" }') devuelve el nodo de documento que tiene un elemento de documento llamado json, que tiene solamente un secundario llamado A mt-load-json-from-string('{ "A": "A Text" }')/* devuelve todos los elementos del documento: es decir, el elemento json que tiene un elemento secundario llamado A.
|
DescripciónDevuelve la cadena personalizada identificada por el argumento NombreCadena. Cada cadena personalizada forma parte de un repertorio de cadenas que se definen en el cuadro de diálogo Localization. En el repertorio de cadenas, cada NombreCadena se asocia a varias cadenas traducidas. El idioma de la cadena traducida es el mismo que el idioma del dispositivo cliente o que el idioma de la simulación.
Usomt-load-string('NombreCadena')
Cuando se introduce la función mt-load-string en el cuadro de diálogo Editar expresión XPath/XQuery, todas las cadenas personalizadas disponibles aparecen en una lista emergente (imagen siguiente). Para abrir esta lista emergente debe colocar el cursor dentro de las comillas de 'NombreCadena' y hacer clic en Ctrl+Barra espaciadora. Recorra la lista con las teclas Arriba y Abajo del teclado. El valor de la cadena personalizada seleccionada aparece a la derecha de la lista emergente (imagen anterior). El idioma de traducción del valor que aparece es el idioma de simulación que está seleccionado en MobileTogether Designer. Para introducir el nombre de una cadena personalizada en la expresión XPath, seleccione la cadena, recorra la lista de cadenas personalizadas, seleccione la cadena deseada y pulse Entrar.
|
mt-localized-string-name(Texto como xs:string) como xs:string* mt-localized-string-name(Texto como xs:string, Idioma como xs:string) como xs:string* La función toma como primer argumento un valor de cadena de texto en el idioma predeterminado o en un lenguaje traducido y devuelve el nombre del control o de la cadena que tiene el valor dado por la cadena de texto como valor de texto. Para más información consulte la sección Localización (traducción) y la descripción del comando Proyecto | Localización. La función tiene dos firmas. En la segunda de ellas, el idioma de la cadena de texto es el segundo argumento (Idioma). El argumento Idioma debe coincidir con el nombre de un idioma traducido. Si se especifica el argumento Idioma, la cadena de texto dada por el argumento Texto solo se busca en las cadenas del idioma traducido.
Los ejemplos anteriores son para una cadena de un control de tipo Botón que se llama CityButton. El idioma predeterminado de la cadena es inglés y se tradujo para los idiomas llamados DE y ES.
|
DescripciónDevuelve true() si la solución ya inició NFC. De lo contrario devuelve false().
Usomt-nfc-started()
|
DescripciónDevuelve una lista de páginas abiertas. Esta lista es una secuencia de cadenas, es decir, consiste en nombres de páginas separados por un espacio. Usomt-page-stack()
|
DescripciónEsta función solo está disponible mientras se ejecutan las acciones que indican el progreso. El valor predeterminado es false(). La función devuelve true() si la acción Enviar cancelación del progreso se desencadena mientras se está ejecutando un conjunto de acciones de indicación del progreso. Por tanto, el valor de esta función se puede usar para recibir la intención del cliente de cancelar y, en consecuencia, cancelar las acciones del servidor.
UsoSi mt-progress-cancelling()=true(), se ejecuta la acción de detener las acciones del servidor y cualquier otra acción que esa cancelación necesite (como restaurar un valor de nodo al valor previo a la acción).
|
DescripciónCarga los roles de usuario que están disponibles desde el servidor. La función actualiza los roles de usuario del servidor que se pueden consultar con la variable global MT_UserRoles.
Usomt-refresh-userroles()
|
DescripciónDevuelve la hora a la que se volvió a cargar la fuente de la página. Si no se volvió a cargar, entonces devuelve una secuencia vacía.
Usomt-reload-dateTime($XML1)
|
mt-run-appstoreapp-url(Esquema? como xs:string, Host? as xs:string, ParámetrosEntrada? como xs:string) como xs:string? mt-run-appstoreapp-url(ParámetrosEntrada? como xs:string) como xs:string?
Genera la dirección URL de una aplicación para las tiendas de aplicaciones sea desde (i) los tres argumentos proporcionados o (ii) el argumento único ParámetrosEntrada. Al hacer clic en la URL, que por lo general se enviaría en un correo electrónico, se abrirá la tienda de aplicaciones. La URL debe tener el formato: <url-scheme>://<url-host>. El archivo de manifiesto de la aplicación contiene la información del esquema, que indica al dispositivo que las URLs que empiecen por ese esquema se deben abrir con esa aplicación. Para más información consulte el apartado Aplicaciones para las tiendas de aplicaciones.
•Esquema: el nombre de esquema único asociado con la aplicación. El esquema se asigna cuando se genera el código de programa de la aplicación (Primera pantalla del asistente para la generación de código). Si se omite este argumento o si se proporciona una cadena vacía, entonces se usará el esquema de la aplicación que esté en ejecución en ese momento. •Host: el nombre de host único asociado con la aplicación. El host se asigna cuando se genera el código de programa de la aplicación (Primera pantalla del asistente para la generación de código). Si se omite este argumento o si se proporciona una cadena vacía, entonces el nombre de host será el que esté asociado con la aplicación que esté en ejecución en ese momento. •ParámetrosEntrada: toma como entrada la función mt-run-solution-url-parameters. El argumento de la función es una secuencia de valores de cadena que ofrece los valores de los parámetros de la consulta. La función mt-run-solution-url-parameters devuelve una cadena que contiene los parámetros (nombres y valores) de la cadena de consulta de la URL, codificada correctamente y con porcentajes con caracteres de escape de acuerdo con las normas de codificación de cadenas de consulta de direcciones URL. Los nombres de parámetro de la cadena resultante se generan automáticamente con la función (in1, in2 ... inN) y a cada uno de ellos se asigna un valor de los elementos de cadena del argumento de la función (y los nombres y valores se emparejan en el orden de índice). Además, el argumento ParámetrosEntrada puede suministrarse como cadena que ya esté codificada para la parte de la cadena de consulta de una URL (ver segundo ejemplo más abajo).
Es decir, la función mt-run-appstoreapp-url crea una URL, con o sin parámetros de consulta, que abre una aplicación para las tiendas de aplicaciones. Los parámetros de consulta se pasan a la aplicación cuando ésta se abre a través de la URL. A los valores de estos parámetros se puede acceder desde otros componentes del diseño por medio de la variable global $MT_InputParameters.
|
mt-run-solution-url(DirecciónServidor? como xs:string, NombreSolución? como xs:string, ParámetrosEntrada? como xs:string) como xs:string?
Genera una URL para abrir la solución indicada en un cliente de MobileTogether. Al pulsar la URL se abre la aplicación Altova MobileTogether Client y se inicia la solución en la aplicación. La URL se genera desde (i) los tres argumentos dados (véase más abajo) o (ii) el argumento InputParameters de la función.
•DirecciónServidor: toma el nombre o la dirección IP del servidor MobileTogether Server donde está implementada la solución que desea ejecutar. Si se omite este argumento o si el argumento es una cadena vacía se usará el servidor actual. •NombreSolución: toma la ruta de acceso implementada de la solución en el servidor. Por ejemplo: /public/MySolution (que apuntaría al archivo MySolution.mtd situada en el contenedor /Public). Si se omite este argumento o si el argumento es una cadena vacía se usará la solución actual. •ParámetrosEntrada: toma como entrada la función mt-run-solution-url-parameters. El argumento de esta función es (i) una secuencia de valores de cadena que ofrecen los valores de los parámetros de la consulta o (ii) una asignación de pares clave:valor que suministran el nombre y el valor de los parámetros correspondientes. La función mt-run-solution-url-parameters devuelve una cadena que contiene los parámetros (nombres y valores) de la cadena de consulta de la URL, correctamente codificada y con los porcentajes con caracteres de escape (siguiendo las normas de codificación de cadenas de consulta URL). La función genera automáticamente los nombres de parámetro de la cadena resultante (in1, in2 ... inN) y cada nombre de parámetro tiene asignado un valor de los elementos de cadena del argumento de la función. Los nombres y valores se emparejan siguiendo el orden de índice. Además, el argumento ParámetrosEntrada puede indicarse en forma de cadena ya codificada para la parte de cadena de consulta de una URL (ver ejemplo nº4 más abajo).
Es decir, la función mt-run-solution-url crea una URL, con o sin parámetros de consulta, que accede a una solución ubicada en un servidor MobileTogether Server. Los parámetros de consulta se pasan a la solución cuando ésta se abre desde la URL. A los valores de estos parámetros se puede acceder desde otros componentes del diseño con ayuda de la variable global $MT_InputParameters.
Es importante tener estos aspectos en cuenta:
•El primer argumento (DirecciónServidor) sirve para buscar en el cliente información sobre si el servidor ha proporcionado un nombre o una dirección. El número de puerto, el nombre de usuario y la contraseña que estén asociadas al nombre de servidor se utilizarán para establecer la conexión. Es decir, si se genera una URL con un nombre de servidor que no reconoce el cliente, la URL no funcionará. •El segundo argumento (NombreSolución) genera (i) la ruta de acceso implementada (en el servidor) si la solución se ejecuta en el servidor, pero también genera (ii) una ruta de acceso para simulaciones. •El tercer argumento (ParámetrosEntrada) utiliza la función de extensión XPath propia de MobileTogether llamada mt-run-solution-url-parameters. Esta función sirve para generar y codificar los pares parámetro/valor de la consulta. La función mt-run-solution-url-parameters (que codifica los parámetros de la consulta) no debe confundirse con la función mt-run-solution-url (que genera la URL entera).
|
mt-run-solution-url-parameters((Parámetros* como xs:string) como xs:string? mt-run-solution-url-parameters(Map como map) como xs:string? La función mt-run-solution-url-parameters está pensada para ser utilizada como tercer argumento de la función mt-run-solution-url. Su único argumento es una secuencia de valores de cadena o una asignación de pares clave-valor. El resultado que se genera es una única cadena, que corresponde a la parte de la cadena de consulta que se da como argumento a la función mt-run-solution-url-parameters. Esta cadena contiene los parámetros (nombres y valores) de la cadena de consulta de la URL, correctamente codificada y con caracteres de escape para los signos de porcentaje, tal y como se estipula en las reglas para codificar cadenas de consulta URL. SecuenciaEl argumento es una secuencia de valores de cadena, que son los valores de parámetro de la cadena de consulta. La función genera automáticamente los nombres de parámetro de la cadena resultante (in1, in2 ... inN) y a cada nombre de parámetro se le asigna un valor de los elementos de cadena del argumento de la función (los nombres y valores se agrupan por pares en orden de índice). Consulte los ejemplos de secuencia siguientes. AsignaciónLos parámetros (nombres y valores) también se pueden indicar como asignación de pares clave:valor. Por ejemplo: map{"key1":"value1", "key2":"value2"}. El orden de los parámetros no es importante porque cada valor de parámetro está cifrado con un nombre de parámetro específico. Consulte los ejemplos de asignación siguientes.
Nota: si la cadena Parámetros contiene comillas dobles, cámbielas por comillas simples. Esto se debe a que MobileTogether usa comillas dobles para generar la cadena de parámetros. Puede usar la función XPath replace para cambiar las comillas dobles por comillas simples: replace(<string>, '"', "'"). Consulte también los ejemplos siguientes, donde el texto se debe delimitar con comillas dobles y no simples.
Es posible acceder a los valores de estos parámetros desde los componentes de diseño, con ayuda de la variable global $MT_InputParameters.
|
mt-run-web-url(DirecciónServidor? como xs:string, NombreSolución? como xs:string, ParámetrosEntrada? as xs:string) como xs:string? mt-run-web-url(ParámetrosEntrada? como xs:string) como xs:string?
Genera una URL que se introduce en un navegador web para abrir en él la solución indicada. La URL se genera desde (i) los tres argumentos dados a la función (véase más abajo) o (ii) el argumento ParámetrosEntrada de la función:
•DirecciónServidor: toma el nombre o la dirección IP del MobileTogether Server en el que se implementó la solución que quiere ejecutar. Si se omite este argumento o si es una cadena vacía, entonces se usa el servidor actual. •NombreSolución: toma la ruta de la solución implementada en el servidor. Por ejemplo: /public/MySolution (que apuntaría al archivo MySolution.mtd en el contenedor /Public). Si se omite este argumento o si es una cadena vacía, entonces se usa la solución actual. •ParámetrosEntrada: toma la función mt-run-solution-url-parameters como entrada. El argumento de esta función es una secuencia de valores de cadena que suministra los valores de los parámetros de la consulta. La función mt-run-solution-url-parameters devuelve una cadena que contiene los parámetros (nombres y valores) de la cadena de la consulta de la URL, correctamente codificada con el símbolo % según las normas de codificación de consultas de URL. Los nombres de los parámetros en la cadena resultante los genera automáticamente la función (el formato es in1, in2... inN) y a cada uno se le asigna un valor de los elementos de la cadena del argumento de la función, emparejando nombres y valores en el orden del índice. (También se puede suministrar el argumento ParámetrosEntrada como una cadena ya codificada para la parte de una URL que es una cadena de consulta (véase el cuarto ejemplo de más abajo).)
Por tanto, la función mt-run-web-url crea una URL, con o sin parámetros de consulta, que accede a una solución en un MobileTogether Server. Los parámetros de consulta se pasan a la solución cuando esta se abre mediante la URL. Se puede acceder a los valores de esos parámetros de consulta en otros componentes del diseño usando la variable global $MT_InputParameters.
Observe lo siguiente:
•El primer argumento, ServerAddress, se usa para buscar en el cliente información sobre si el servidor ha suministrado un nombre o una dirección. El número de puerto, el nombre de usuario y la contraseña del usuario están asociados con el nombre del servidor y se usan después para conectar con él. Por tanto, si se genera una URL con un nombre de servidor que el cliente no reconoce, esa URL no funcionará. •El segundo argumento, SolutionName: (i) genera la ruta de implementación (en el servidor) si la solución se ejecuta en el servidor, pero (ii) genera una ruta de archivo para simulaciones. •El tercer argumento, InputParameters, usa la función de extensión XPath propia de MobileTogether llamada mt-run-solution-url-parameters para generar y codificar los pares de consulta parámetro-valor. No se debe confundir la función mt-run-solution-url-parameters (que codifica los parámetros de búsqueda) con la función mt-run-solution-url (que genera toda la URL). |
DescripciónToma un nodo JSON como su único argumento y devuelve el contenido de los nodos como una cadena serializada en formato JSON. El nodo JSON suministrado podría ser un documento JSON completo o parte de uno. Por ejemplo, imagine que tiene el siguiente documento JSON asociado a una fuente de página JSON llamada $JSON1:
{ "Root": { "user": "Altova", "message": "Hello", "A": { "B": "B Text", "C": "C Text", "D": { } } } }
Si se suministra el nodo del documento (es decir, $JSON1, que es el nodo virtual que es el nodo principal del documento), entonces el contenido de todo el objeto del documento se devuelve como cadena. Si se suministra como argumento el nodo $JSON1/json//Root, entonces el objeto que es el valor de la clave "Root" se devuelve como cadena. Consulte los ejemplos siguientes.
Usomt-save-json-to-string($JSON/json/Root/A/B) devuelve '"B Text"' mt-save-json-to-string($JSON/json/Root/A/D) devuelve '{}'
|
mt-server-config-url(ConfiguraciónServidor como asignación) como xs:string? La función mt-server-config-url toma una asignación como argumento y devuelve una cadena que es una URL. Cuando se envía un enlace con la URL a los dispositivos cliente y el usuario pulsa en el enlace, se actualiza automáticamente la configuración de servidor del cliente. La URL será parecida a esta: mobiletogether://mt/change-settings?settings=<configuración codificada en JSON>
La configuración de servidor codificada en JSON incluida en la URL viene dada por el argumento ConfiguraciónServidor de la función mt-server-config-url. Puede consultar la asignación de ConfiguraciónServidor más abajo. En el archivo de ejemplo ClientConfiguration.mtd de la carpeta MobileTogetherExamples/SimpleApps encontrará un ejemplo de uso de esta función.
mt-server-config-url( map{ "DelOthSrv": false(), (: si se debe eliminar la lista de servidores actuales antes de completar la importación :) "DetView": true(), (: si se debe usar una vista detallada de los datos o la cuadrícula :) "Refresh": true(), (: actualizar soluciones al iniciar :) "RetToSln": true(), (: solo clientes Windows :) "ActSrvURL": "", (: el primer servidor que tenga esta URL se hace activo :) "Servers": array{ map{ "Name": "", "URL": "", (: si DelOthSrv es false entonces se usa esta propiedad como clave para combinar la configuración nueva con la actual :) "LoginProvider": map{ "NameSuffix": "", "NamePrefix": "", }, "Port": "", "User": "", "StorePW": true(), "Password": "", "SSL": false() } (: , asignar {...} para agregar otro servidor :) } } )
|
mt-server-variable(VariableName como xs:string) como xs:string Devuelve el valor de la variable de servidor indicada en el argumento VariableName. Las variables de servidor son variables que se almacenan en el archivo mobiletogetherserver.cfg. Dentro de este archivo las variables servidor se almacenan en la sección [Server Variables], como se puede ver a continuación:
[ServerVariables] Environment=Portal Manual=AdminDocs StartPage=Admin
Por defecto, el archivo mobiletogetherserver.cfg se encuentra en la carpeta de datos de la aplicación que, como se ve más abajo, tiene distintas ubicaciones según el sistema operativo. Para editar el archivo de configuración .cfg puede usar un editor de texto.
Para más información sobre cómo simular variables de servidor consulte Simulación 2.
|
mt-solution-path() as xs:string Devuelve la ruta de la solución que se está ejecutando actualmente.
|
mt-string-to-hexBinary(Texto como xs:string, Codificación como xs:string) como xs:string La función convierte una cadena de texto en una cadena hexBinary. Como argumento Texto se puede dar un nodo que devuelva una cadena de texto. La función lee la cadena Texto usando la codificación dada en el argumento Codificación. Si se da una cadena vacía como argumento Codificación, la cadena de texto resultante se genera con la codificación predeterminada UTF-8. Si no se especifica el argumento Codificación se produce un error.
|
mt-table-rowgroup-count(VisibleOnly? as xs:boolean) as xs:integer La función debe estar dentro de un grupo de filas que se convierte en el contexto de la función. Esta devuelve el número (count) de grupos de filas de la tabla en la que se encuentra el grupo de filas que es el contexto. El argumento VisibleOnly es opcional y puede tener los valores true() o false(). Si el valor es true(), entonces la función devuelve el número de grupos de filas visibles que haya en la tabla; si el valor es false(), entonces la función devuelve el número de todos los grupos de filas (visibles e invisibles). (Los grupos de filas visibles son aquellos cuya propiedad Visible tiene el valor true(); consulte aquí para ver la descripción de las propiedades de tabla) Si no se usa el argumento opcional VisibleOnly, entonces se devuelve el número de grupos de filas visibles; el efecto es el mismo que si usa el argumento VisibleOnly con el valor true().
Nota: si la propiedad Visible de un grupo de filas se ha definido, entonces un grupo de filas secundario no puede usar la función mt-table-rowgroup-count para grupos de filas visibles.
|
mt-table-rowgroup-index(VisibleOnly? as xs:boolean) as xs:integer La función debe estar dentro de un grupo de filas que se convierte en el contexto de la función. Esta devuelve la posición (o el índice) del grupo de filas actual dentro del número total de grupos de líneas de la tabla actual. Si el argumento opcional VisibleOnly tiene el valor true(), entonces la función devuelve el índice del grupo de filas actual dentro del conjunto de grupos de filas visibles de la tabla; si el valor es false(), entonces se devuelve el índice dentro de todos los grupos de filas (visibles e invisibles). (Los grupos de filas visibles son aquellos cuya propiedad Visible tiene el valor true; consulte aquí para ver la descripción de las propiedades de tabla) Si no se usa el argumento opcional VisibleOnly, entonces se devuelve el índice dentro de todos los grupos de filas visibles.
|
mt-test-case-run() como map(*) Devuelve un asignación con información sobre la ejecución de prueba que está en ejecución en ese momento. La asignación incluye estos pares clave:valor: "name":<el nombre del caso de prueba>, "step":<el paso actual>, "count":<número total de pasos>. Si en ese momento no se está ejecutando ninguna reproducción, entonces la clave de la asignación tendrá valores vacíos.
|
mt-text-to-speech-is-language-available(Idioma como xs:string) como xs:boolean El argumento Idioma puede tomar valores de cadena en formato en (código de idioma) o en formato en-US (código idioma-país). Si el idioma especificado en el argumento Idioma está disponible en el dispositivo móvil, la función devuelve true(). De lo contrario devuelve false().
Usomt-text-to-speech-is-language-avaialable("en") devuelve true() si en o una variante de idioma en-<país> está disponible en el dispositivo móvil. De lo contrario devuelve false(). mt-text-to-speech-is-language-available("en-US") devuelve true() si en-US está disponible en el dispositivo móvil. De lo contrario devuelve false().
|
mt-text-to-speech-is-speaking() como xs:boolean Devuelve true() si está en curso la reproducción de una acción Texto a voz. De lo contrario devuelve false(). |
Consulte la descripción de esta función en el apartado Funciones XPath/XQuery: relacionadas con imágenes.
|
DescripciónSi el usuario hace clic/pulsa en el botón Atrás o intenta salir de la solución, esta función devuelve true(). De lo contrario, devuelve false(), que es su valor predeterminado.
Usomt-user-tried-to-cancel-actions()
|
mt-video-get-current-position(NombreControlVídeo como xs:string) como xs:integer Toma como argumento el nombre del control Vídeo y devuelve la posición actual (en segundos) de la reproducción del vídeo que se está reproduciéndo en este control Vídeo. Si en el control no se está reproduciendo ningún vídeo, entonces se devuelve un error. Tenga en cuenta que hasta que no se inicia la reproducción no existen datos sobre la posición actual. Por tanto, esta función debe utilizarse una vez iniciada la reproducción.
Usomt-video-get-current-position("Vídeo-01") devuelve la posición actual del vídeo que se está reproduciendo en el control Vídeo llamado Vídeo-01.
|
mt-video-get-duration(NombreControlVídeo como xs:string) como xs:integer Toma como argumento el nombre del control Vídeo y devuelve la duración (en segundos) del vídeo que se está reproduciendo en este control Vídeo. Si en el control no se está reproduciendo ningún vídeo, entonces se devuelve un error. Tenga en cuenta que hasta que no se inicia la reproducción no existen datos sobre la duración. Por tanto, esta función debe utilizarse una vez iniciada la reproducción.
Usomt-video-get-duration("Vídeo-01") devuelve la duración del vídeo que se está reproduciendo en el control Vídeo llamado Vídeo-01.
|
mt-video-height(NombreControlVídeo como xs:string) como xs:integer Toma como argumento el nombre de un control Vídeo y devuelve el alto (en píxeles) del vídeo que se está reproduciendo en dicho control. Si en el control no se está reproduciendo ningún vídeo, entonces se devuelve un error. Tenga en cuenta que hasta que no se inicia la reproducción no existen datos sobre el alto del vídeo. Por tanto, esta función debe utilizarse una vez iniciada la reproducción.
Usomt-video-height("Vídeo-01") devuelve el alto del vídeo que se está reproduciendo en el control Vídeo llamado Vídeo-01.
|
mt-video-is-playing(NombreControlVídeo como xs:string) como xs:boolean Toma como argumento el nombre de un control Vídeo y devuelve true() si se está reproduciendo un vídeo en dicho control. De lo contrario, devuelve false().
Usomt-video-is-playing("Vídeo-01") devuelve true() si se está reproduciendo un vídeo en el control Vídeo llamado Vídeo-01. De lo contrario, devuelve false().
|
mt-video-width(NombreControlVídeo como xs:string) como xs:integer Toma como argumento el nombre de un control Vídeo y devuelve el ancho (en píxeles) del vídeo que se está reproduciendo en dicho control. Si en el control no se está reproduciendo ningún vídeo, entonces se devuelve un error. Tenga en cuenta que hasta que no se inicia la reproducción no existen datos sobre el ancho del vídeo. Por tanto, esta función debe utilizarse una vez iniciada la reproducción.
Usomt-video-width("Vídeo-01") devuelve el ancho del vídeo que se está reproduciendo en el control Vídeo llamado Vídeo-01.
|
DescripciónDevuelve true() si el dispositivo cliente está mostrando su cursor de espera. De lo contrario, devuelve false().
Usomt-wait-cursor-shown()
|
© 2017-2023 Altova GmbH