{{indexmenu_n>1}} ====== NODO PROP ====== El NODO **prop** es la unidad básica dentro de toda colección, define las características de un objeto tanto a nivel de visualización en pantalla como su almacenamiento en BD.\\ \\ Una definición muy simplificada de un **prop** podría ser: "un campo de formulario en su equivalente HTML", si bien en XOne, un **prop** puede ser mucho más complejo, pudiendo definir campos de texto, etiquetas de textos, botones, espacios para capturar la firma, mapas, hacer fotos con la cámara del dispositivo, un slide de imágenes, un calendario, un código de barras, código html, adjuntar archivos, gráficos de barras-tarta-líneas, un árbol de categorías, etc...\\ Se definirán tantos prop como se necesiten en dependencia de lo que se quiera obtener como resultado en cada aplicación y estos se distinguen unos de otros por su Nombre y tipo, que son dos de los atributos que son obligatorios en su definición, lo cual se verá más adelante. Esto que se muestra a continuación son algunos ejemplos de cuanto se puede lograr según los tipos de Prop y atributos que se definen en aplicaciones XOne: {{:wiki:2.-desarrollo-app:2.3.-codigo:b.-controles-xone:3.-controles-por-tipo:nodo_prop:screenshot_20200212-093452.png?230|}} {{:wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:nodo_prop:screenshot_20200212-161102_2_.png?230|}} {{:wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:nodo_prop:screenshot_20200212-161443_1_.png?230|}} {{:wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:nodo_prop:screenshot_20200212-161621_1_.png?230|}} {{:wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:nodo_prop:screenshot_20200212-162115_1_.png?230|}} \\ ==== Principales Atributos NODO PROP ==== Pero estos son sólo dos ejemplos de tipo Prop, en XONe existen una extensa lista de estos que pueden ser utilizados en nuestras APP, haciendo más fácil el desarrollo de éstas y su visualización y entorno. [[wiki:2.-desarrollo-app:2.3.-codigo:b.-controles-xone:3.-controles-por-tipo:start|Tipos de PROP:]] En este apartado lo que haremos será relacionar los principales atributos que se utilizan para lograr disímiles funcionalidades y apariencias a los PROP. |<70%>| ^ Atributo ^ Función ^ | [[wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:5.-nodo-prop:start#name|name]] | Nombre del control, es obligatorio su declaración en el prop. | | [[wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:5.-nodo-prop:start#type|type]] | Se utiliza para definir de que tipo va a ser el Prop, es **obligatorio** su declaración en el prop y define la funcionalidad del mismo. | | [[wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:5.-nodo-prop:start#width|width]] | Para definir ancho del prop a visualizar, es **obligatorio** su declaración en el prop. | | [[wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:5.-nodo-prop:start#height|height]] | Para definir alto del prop a visualizar, es **obligatorio** su declaración en el prop. | | [[wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:5.-nodo-prop:start#group|group]] | Define el grupo al que pertenece el prop dentro de una colección, solo es obligatorio en XML. | | [[wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:5.-nodo-prop:start#visible|visible]] | Para definir la visibilidad del prop definido. | | [[wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:5.-nodo-prop:start#title|title]] | Texto a mostrar por pantalla en el prop definido. | | [[wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:5.-nodo-prop:start#tooltip|tooltip]] | Se usa para definir una descripción para el usuario del prop definido para captura de datos. | | [[wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:5.-nodo-prop:start#forecolor|forecolor]] | Color de la fuente del prop. | | [[wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:5.-nodo-prop:start#bgcolor|bgcolor]] | Color del fondo del prop. | | [[wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:5.-nodo-prop:start#disablevisible|disablevisible]] | Se utiliza para definir la visibilidad del prop según condiciones determinadas. | | [[wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:5.-nodo-prop:start#disableedit|disableedit]] | Se utiliza para definir si será posible editar según condiciones determinadas. | | [[wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:5.-nodo-prop:start#locked|locked]] | Se utiliza para bloquear el prop y no sea posible editar. | | [[wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:5.-nodo-prop:start#fontsize|fontsize]] | Tamaño de la fuente del prop. | | [[wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:5.-nodo-prop:start#lines|lines]] | Número de líneas que contendrá el prop. | | [[wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:5.-nodo-prop:start#newline|newline]] | Para definir si el prop se dibuja en la misma línea o en una nueva línea del prop anterior a él definido. | | [[wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:5.-nodo-prop:start#textfont-size|textfont-size]] | Tamaño de la letra del campo texto en el prop. | | [[wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:5.-nodo-prop:start#text-bgcolor|text-bgcolor]] | Color del fondo del campo texto del prop. | | [[wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:5.-nodo-prop:start#text-forecolor|text-forecolor]] | Color de la fuente del campo texto del prop. | | [[wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:5.-nodo-prop:start#text-border|text-border]] | Para definir si tendrá o no borde el campo texto del prop. | | [[wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:5.-nodo-prop:start#labelwith|labelwith]] | Para definir el tamaño de la parte de la etiqueta en los prop tipos que soportan atributo "title", si su valor es 0, solo se muestra el valor del campo. | [[wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:5.-nodo-prop:mas_de_nodo_prop:start|Más sobre Nodo Prop]] \\ **Atributos** \\ ==== name ==== \\ |<70%>| ^ Atributo | name (Atributo Obligatorio) | ^ Descripción | Este atributo contiene el nombre del objeto **en MAYUSCULAS** (esto es una convención de los programadores XOne, no tiene por qué ser así obligatoriamente.) , El **name** del prop debe ser único dentro de la colección. Si hubiesen dos nombres de objeto repetidos, se cogería el primero que se haya definido. | ^ Nomenclatura | * Para los campos enlazados de otras colecciones se pone el prefijo “MAP_” al nombre del objeto, esto le indica a la maquinaria que dicho campo no se graba, es simplemente de lectura.\\ * Para los campos de tipo “NC”(un entero que cogemos como bits separados) se pone el prefijo “%” al nombre del objeto.\\ * Para los campos calculados (también llamados campos tipo fórmula) se pone el prefijo “$” al nombre del objeto.\\ * Para los campos tipo “Z” (tipo CONTENT, relación de 1 a n con otra colección) se pone el prefijo “@” al nombre del objeto. | ^ Veáse también | [[wiki:2.-desarrollo-app:2.3.-codigo:b.-controles-xone:3.-controles-por-tipo:start|CONTROLES POR TIPO]] | \\ Ejemplos: \\ ==== type==== \\ |<70%>| ^ Atributo | type (Atributo Obligatorio) | ^ Descripción | Se utiliza para definir de que tipo es el prop que se está definiendo, de ahí su funcionalidad. Los tipos de Prop que existen en XOne son: Tipo texto, Tipo Etiqueta, Tipo Fecha, Tipo Numérico, Tipo Check, Tipo Fecha, Tipo Contents, Tipo Imagen, Tipo Foto, Tipo Web, Tipo Video. | ^ Nomenclatura | type="valor" -- valor: No es más que el tipo de prop que se está definiendo. Se utiliza para definir de que tipo es el prop que se está definiendo, de ahí su funcionalidad. Los tipos de Prop que existen en XOne son: \\ T - Tipo texto \\ TL -Tipo Etiqueta \\ D - Tipo Fecha \\ N - Tipo Numérico. (Cuando se define solo como N, se trata de un número entero, si se quiere definir numérico con varios decimales, pues le a la N le sucederá el número de decimales que se deseen definir, N2, N3, etc.\\ NC - Tipo Check \\ D - Tipo Fecha \\ Z - Tipo Contents \\ IMG-Tipo Imagen \\ PH - Tipo Foto \\ WEB - Tipo Web \\ VD - Tipo Video | ^ Véase también: | [[wiki:2.-desarrollo-app:2.3.-codigo:b.-controles-xone:3.-controles-por-tipo:start|CONTROLES POR TIPO]] \\ [[wiki:2.-desarrollo-app:2.3.-codigo:d.-estilos-css:start|Estilos CSS]] | \\ Ejemplos:\\ \\ ==== width==== \\ |<70%>| ^ Atributo | width (Atributo Obligatorio) | ^ Descripción | Se utiliza para definir el ancho del Prop a visualizar, puede ser definido en porcientos(&), o en pixeles (pc) | ^ Nomenclatura | width="valor" -- valor: Tamaño que se quiere definir en ancho. | ^ Véase también: | [[wiki:2.-desarrollo-app:2.3.-codigo:b.-controles-xone:3.-controles-por-tipo:start|CONTROLES POR TIPO]] \\ [[wiki:2.-desarrollo-app:2.3.-codigo:d.-estilos-css:start|Estilos CSS]] | \\ Ejemplos: \\ \\ ==== height==== \\ |<70%>| ^ Atributo | height (Atributo Obligatorio) | ^ Descripción | Se utiliza para definir el alto del Prop a visualizar, puede ser definido en porcientos(&), o en pixeles (pc) | ^ Nomenclatura | height="valor" -- valor: Tamaño que se quiere definir para el alto. | ^ Véase también: | [[wiki:2.-desarrollo-app:2.3.-codigo:b.-controles-xone:3.-controles-por-tipo:start|CONTROLES POR TIPO]] \\ [[wiki:2.-desarrollo-app:2.3.-codigo:d.-estilos-css:start|Estilos CSS]] | \\ Ejemplos: \\ prop name="BT_PONERDEALER" disablevisible="MAP_PROVINCIA=''" newline="false" width="40p" tmargin="6p" height="35p" class="bt_superiores" type="B" method="ExecuteNode(grupo(8))" img="lupa.png" /> \\ ====group==== \\ |<70%>| ^ Atributo | group | ^ Descripción | Se utiliza para definir a que grupo dentro de la colección corresponde el prop que se está definiendo. Este atributo contiene un número indicando a qué pestaña pertenece este campo, de forma que los campos que forman el formulario de introducción de datos estén agrupados y al mismo tiempo se optimice su visualización en dispositivos con una pantalla reducida como es el caso de los dispositivos móviles. | ^ Nomenclatura | group="valor" -- valor: Grupo a que pertenece o número de pestaña. | ^ Véase también: | [[wiki:2.-desarrollo-app:2.3.-codigo:b.-controles-xone:3.-controles-por-tipo:start|CONTROLES POR TIPO]] | \\ Ejemplos: \\ prop name="BT_PONERDEALER" disablevisible="MAP_PROVINCIA=''" newline="false" width="40p" tmargin="6p" height="35p" class="bt_superiores" type="B" method="ExecuteNode(grupo(8))" img="lupa.png" /> \\ ====visible==== \\ |<70%>| ^ Atributo | visible| ^ Descripción | Se utiliza para definir la visibilidad del prop que se está definiendo, no es obligatorio pero en caso de que no se defina, tiene como valor implícito 1, visible en modo Edición. Este atributo indica donde vamos a poder ver dicho campo en los distintos modos en que podemos ver una colección. Este campo puede verse como un entero con 4 bits, cada uno de los cuales los podemos sumar en binario y nos dará el valor que necesitamos. | ^ Nomenclatura | visible="valor" -- valor: Modo de visibilidad, se explica a continuación. | ^ Véase también: | [[wiki:2.-desarrollo-app:2.3.-codigo:b.-controles-xone:3.-controles-por-tipo:start|CONTROLES POR TIPO]] | \\ |<70%>| ^ Posición BIT en binario ^ Visibilidad ^ | 0 ( 0 0 0 **__0__** ) | Visible en modo Edición | | 1 ( 0 0 **__0__** 0 ) | Visible en modo Listado (Grid) | | 2 ( 0 **__0__** 0 0 ) | Visible en modo Content (Grid asociado a otra colección principal) | | 3 ( **__0__** 0 0 0 ) | Visible en modo Combo para filtrar | \\ **Ejemplos**: \\ |<70%>| ^ Valor ^ Equivalente Binario ^ Visibilidad ^ | Visible="7" | 0111 | Visible en modo de Edición, listado y content | | Visible="3" | 0011 | Visible en modo de Edición y listado | | Visible="1" | 0001 | Visible sólo en modo de Edición | | Visible="0" | 0000 | No Visible en ningún modo | Ejemplos: \\ \\ ====title==== \\ |<70%>| ^ Atributo | title| ^ Descripción | Se utiliza para definir el texto que realmente se mostrará en pantalla para ese prop independientemente del name conque se haya definido el prop. | ^ Nomenclatura | title="valor" -- valor: Texto a mostrar en un botón, o un campo tipo texto, etc.| ^ Véase también: | [[wiki:2.-desarrollo-app:2.3.-codigo:b.-controles-xone:3.-controles-por-tipo:start|CONTROLES POR TIPO]] | \\ Ejemplos: \\ \\ ====tooltip==== \\ |<70%>| ^ Atributo | tooltip | ^ Descripción | Este atributo contiene un texto que será asignado al tooltip del control que se muestre en pantalla cuando se esté editando este campo. Los tooltips pueden ser muy útiles para explicar de forma breve el objetivo de este campo o su función. El mecanismo de muestra de tooltips que se emplea es el propio de Windows. | ^ Nomenclatura | tooltip="descripción del campo" | ^ Véase también: | [[wiki:2.-desarrollo-app:2.3.-codigo:b.-controles-xone:3.-controles-por-tipo:start|CONTROLES POR TIPO]] | \\ Ejemplos: \\ \\ ====forecolor==== \\ |<70%>| ^ Atributo | forecolor | ^ Descripción | Valor del color de texto en formato RGB. Puede ser expresado en decimal, hexadecimal (#), o binario (B). | ^ Nomenclatura | forecolor="valor" | ^ Véase también: | [[wiki:2.-desarrollo-app:2.3.-codigo:b.-controles-xone:3.-controles-por-tipo:start|CONTROLES POR TIPO]] \\ [[wiki:2.-desarrollo-app:2.3.-codigo:d.-estilos-css:start|Estilos CSS]] | \\ Ejemplos: \\ /> \\ ====bgcolor==== \\ |<70%>| ^ Atributo | bgcolor | ^ Descripción | Valor del color de fondo en formato RGB. Puede ser expresado en decimal, hexadecimal (#), o binario (B). | ^ Nomenclatura | bgcolor="valor" | ^ Véase también: | [[wiki:2.-desarrollo-app:2.3.-codigo:b.-controles-xone:3.-controles-por-tipo:start|CONTROLES POR TIPO]] \\ [[wiki:2.-desarrollo-app:2.3.-codigo:d.-estilos-css:start|Estilos CSS]] | \\ Ejemplos: \\ \\ ====disablevisible==== \\ |<70%>| ^ Atributo | disablevisible| ^ Descripción | Se utiliza para mostrar u ocultar un prop según condición determinada que podemos definir con este atributo.| ^ Nomenclatura |disablevisible="condicion"| ^ Véase también: | [[wiki:2.-desarrollo-app:2.3.-codigo:b.-controles-xone:3.-controles-por-tipo:start|CONTROLES POR TIPO]] | \\ Ejemplos: \\ \\ ====disableedit==== \\ |<70%>| ^ Atributo | disableedit| ^ Descripción | Se utiliza para habilitar o no edición de un campo determinado, según se cumpla o no una condición aquí definida. Si esta condición se cumple, no deja editar, si por lo contrario, es falsa, se deja editar.| ^ Nomenclatura |disableedit="condicion"| ^ Véase también: | [[wiki:2.-desarrollo-app:2.3.-codigo:b.-controles-xone:3.-controles-por-tipo:start|CONTROLES POR TIPO]] | \\ Ejemplos: \\ \\ ====locked==== \\ |<70%>| ^ Atributo | locked | ^ Descripción | Se utiliza para bloquear el prop definido de cualquier acción, solo podrá mostrarse en pantalla, el usuario no podrá acceder a él | ^ Nomenclatura | locked="true" o locked="false", true-bloqueado false-desbloqueado. | ^ Véase también: | [[wiki:2.-desarrollo-app:2.3.-codigo:b.-controles-xone:3.-controles-por-tipo:start|CONTROLES POR TIPO]] \\ [[wiki:2.-desarrollo-app:2.3.-codigo:d.-estilos-css:start|Estilos CSS]] | \\ Ejemplos: \\ \\ ====fontsize==== \\ |<70%>| ^ Atributo | fontsize | ^ Descripción | Se utiliza para definir el tamaño de la fuente del campo. | ^ Nomenclatura | fontsize="valor" | ^ Véase también: | [[wiki:2.-desarrollo-app:2.3.-codigo:b.-controles-xone:3.-controles-por-tipo:start|CONTROLES POR TIPO]] \\ [[wiki:2.-desarrollo-app:2.3.-codigo:d.-estilos-css:start|Estilos CSS]] | \\ Ejemplos: \\ \\ ====lines==== \\ |<70%>| ^ Atributo | lines| ^ Descripción | Se utiliza para definir el número de líneas que ocupará el prop, se usa principalmente para los campos que requieren texto extenso, como Direcciones, Observaciones, etc.| ^ Nomenclatura |lines="valor"-valor: Número de líneas a definir| ^ Véase también: | [[wiki:2.-desarrollo-app:2.3.-codigo:b.-controles-xone:3.-controles-por-tipo:start|CONTROLES POR TIPO]] | \\ Ejemplos: \\ \\ ====newline==== \\ |<70%>| ^ Atributo | newline | ^ Descripción | Se utiliza para definir si queremos que el prop en pantalla aparezca en la misma línea naterior o en una nueva línea. | ^ Nomenclatura | newlines="true" o newlines="false" Si el valor es false, se queda en la misma línea que el prop que le antecede, si es true, salta a una nueva línea. | ^ Véase también: | [[wiki:2.-desarrollo-app:2.3.-codigo:b.-controles-xone:3.-controles-por-tipo:start|CONTROLES POR TIPO]] | \\ Ejemplos: \\ \\ ====textfont-size==== \\ |<70%>| ^ Atributo | textfont-size | ^ Descripción | Se utiliza para definir el tamaño de la fuente del texto del campo del prop. | ^ Nomenclatura | textfont-size="valor" | ^ Véase también: | [[wiki:2.-desarrollo-app:2.3.-codigo:b.-controles-xone:3.-controles-por-tipo:start|CONTROLES POR TIPO]] \\ [[wiki:2.-desarrollo-app:2.3.-codigo:d.-estilos-css:start|Estilos CSS]] | \\ Ejemplos: \\ \\ ====text-bgcolor==== \\ |<70%>| ^ Atributo | text-bgcolor | ^ Descripción | Se utiliza para definir el color del fondo del texto del prop. | ^ Nomenclatura | text-bgcolor="valor" | ^ Véase también: | [[wiki:2.-desarrollo-app:2.3.-codigo:b.-controles-xone:3.-controles-por-tipo:start|CONTROLES POR TIPO]] \\ [[wiki:2.-desarrollo-app:2.3.-codigo:d.-estilos-css:start|Estilos CSS]] | \\ Ejemplos: \\ \\ ====text-forecolor==== \\ |<70%>| ^ Atributo | text-forecolor | ^ Descripción | Se utiliza para definir el color de la fuente del texto del prop. | ^ Nomenclatura | text-forecolor="valor" | ^ Véase también: | [[wiki:2.-desarrollo-app:2.3.-codigo:b.-controles-xone:3.-controles-por-tipo:start|CONTROLES POR TIPO]] \\ [[wiki:2.-desarrollo-app:2.3.-codigo:d.-estilos-css:start|Estilos CSS]] | \\ Ejemplos: \\ \\ ====text-border==== \\ |<70%>| ^ Atributo | text-border | ^ Descripción | Se utiliza para definir si el prop contendrá bordes o no, se puede definir también los bordes visibles o no por separados, Ejemplo: text-border-bottom, text-border-top, text-border-right, text-border-left | ^ Nomenclatura | text-border="true" o text-border="false" | ^ Véase también: | [[wiki:2.-desarrollo-app:2.3.-codigo:b.-controles-xone:3.-controles-por-tipo:start|CONTROLES POR TIPO]] \\ [[wiki:2.-desarrollo-app:2.3.-codigo:d.-estilos-css:start|Estilos CSS]] | \\ Ejemplos: \\ \\ ==== labelwidth ==== \\ |<70%>| ^ Atributo | labelwidth | ^ Descripción | Se utiliza para definir el tamaño de la etiqueta del prop o tamaño de lo que se ha definido en el atributo **title** | ^ Nomenclatura |labelwidth="7" o labelwith="0" , si el valor es 0 solo se mostrará el contenido del campo sin etiqueta. El tamaño del resto del prop será siempre el tamaño del width menos el definido en el labelwidth | ^ Véase también: | [[wiki:2.-desarrollo-app:2.3.-codigo:b.-controles-xone:3.-controles-por-tipo:start|CONTROLES POR TIPO]] \\ [[wiki:2.-desarrollo-app:2.3.-codigo:d.-estilos-css:start|Estilos CSS]] | \\ Ejemplos: \\