Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:3.-nodo-group:start [2020/02/27 13:55]
ary [Tabla]
wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:3.-nodo-group:start [2024/01/15 12:42] (actual)
ary
Línea 2: Línea 2:
 ===== Nodo GROUP ===== ===== Nodo GROUP =====
 \\ \\
-Los Group son las <wrap em>pestañas</wrap> que nos aparecerán cuando creamos un nuevo objeto o editamos un objeto existente de la colección, a cada grupo se le asigna un ID, que es utilizado para definir en los campos a que pestaña pertenece dicho campo.+Los Group son las %%pestañas%% que nos aparecerán cuando creamos un nuevo objeto o editamos un objeto existente de la colección, a cada grupo se le asigna un ID, que es utilizado para definir en los campos a que pestaña pertenece dicho campo.
  
 Si no se indica grupo para una propiedad, la capa de datos siempre hará pertenecer las propiedades al primer grupo definido en la colección. Si no se indica grupo para una propiedad, la capa de datos siempre hará pertenecer las propiedades al primer grupo definido en la colección.
Línea 25: Línea 25:
 <datatables> <datatables>
 |< 90% 18% 82% >| |< 90% 18% 82% >|
-^ ATRIBUTO                      ^ DESCRIPCION                                                                                                                                                                                                                 +^ ATRIBUTO                      ^ DESCRIPCION                                                                                                                                                                                                     
-| **name**                      | Caption o literal que se verá en la pestaña.                                                                                                                                                                                +| **name**                      | Caption o literal que se verá en la pestaña.                                                                                                                                                                    
-| **id**                        | Valor <wrap em>numérico</wrap> que va a identificar <wrap em>de forma única</wrap> a ese grupo/pestaña.                                                                                                                     +| **id**                        | Valor %%numérico%% que va a identificar %%de forma única%% a ese grupo/pestaña.                                                                                                                                 
-| **disableedit**               <wrap em>Si se cumple la condición</wrap>, deshabilita la edición de todas las propiedades/campos de la pestaña. IMPORTANTE, no dejar espacios entre el campo y el valor de la condición, por ejemplo: "ESTADO=1"           | +| **disableedit**               %%Si se cumple la condición%%, deshabilita la edición de todas las propiedades/campos de la pestaña. IMPORTANTE, no dejar espacios entre el campo y el valor de la condición, por ejemplo: "ESTADO=1"           | 
-| **disablevisible**            | Similar al anterior, pero en este caso, <wrap em>Si se cumple la condición</wrap>, la pestaña ni siquiera se muestra. Al igual que ocurre con el disableedit, NO dejar espacios entre el campo y el valor de la condición. +| **disablevisible**            | Similar al anterior, pero en este caso, %%Si se cumple la condición%%, la pestaña ni siquiera se muestra. Al igual que ocurre con el disableedit, NO dejar espacios entre el campo y el valor de la condición. 
-| **imgbk="fondo.png"**         | Imagen a mostrar de fondo en la pestaña. Cuando convive el atributo imgbk con bgcolor, prevalece el valor de imgbk.                                                                                                         +| **imgbk="fondo.png"**         | Imagen a mostrar de fondo en la pestaña. Cuando convive el atributo imgbk con bgcolor, prevalece el valor de imgbk.                                                                                             
-| **bgcolor="#FFFFFF"**         | Color de fondo de la pestaña en RGB.                                                                                                                                                                                        +| **bgcolor="#FFFFFF"**         | Color de fondo de la pestaña en RGB.                                                                                                                                                                            
-| **tab-width="50%"**           | Permite definir el ancho de una pestaña. Por defecto toma el valor "33%"                                                                                                                                                  +| **tab-width="50%"**           | Permite definir el ancho de una pestaña. Por defecto toma el valor "33%"                                                                                                                                      
-| **fixed="true|false"**        | Pestaña fija que se muestra siempre, aunque navegues por el resto de pestañas.                                                                                                                                              +| **fixed="true|false"**        | Pestaña fija que se muestra siempre, aunque navegues por el resto de pestañas.                                                                                                                                  
-| **height="10%"**              | Solo se utiliza en grupos fixed=”true”.Indica el alto de la ventana a mostrar.                                                                                                                                              +| **height="10%"**              | Solo se utiliza en grupos fixed=”true”.Indica el alto de la ventana a mostrar.                                                                                                                                  
-| **width="100%"**              | Solo se utiliza en grupos fixed=”true”.Indica el ancho de la ventana a mostrar.                                                                                                                                             +| **width="100%"**              | Solo se utiliza en grupos fixed=”true”.Indica el ancho de la ventana a mostrar.                                                                                                                                 
-| **orientation="top|bottom"**  | Solo se utiliza en grupos fixed=”true”.Indica donde se va a mostrar el grupo bloqueado.                                                                                                                                     +| **orientation="top|bottom"**  | Solo se utiliza en grupos fixed=”true”.Indica donde se va a mostrar el grupo bloqueado.                                                                                                                         
-| **animation-in**              | Animación que se produce cuando se entra en el grupo.                                                                                                                                                                       +| **animation-in**              | Animación que se produce cuando se entra en el grupo.                                                                                                                                                           
-| **animation-out**             | Animación que se produce cuando se sale del grupo.                                                                                                                                                                          |+| **animation-out**             | Animación que se produce cuando se sale del grupo.                                                                                                                                                              |
 </datatables> </datatables>
 </WRAP> </WRAP>
Línea 106: Línea 106:
 |  {{:wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:3.-nodo-group:gamesimag.png?260&nolink}}  |  {{:wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:3.-nodo-group:screenshot_20200226-110230.png?260&nolink}}  | |  {{:wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:3.-nodo-group:gamesimag.png?260&nolink}}  |  {{:wiki:2.-desarrollo-app:2.3.-codigo:a.-estructura-xml:3.-nodo-group:screenshot_20200226-110230.png?260&nolink}}  |
 </WRAP> </WRAP>
 +\\
 +\\
 +<WRAP center round tip 60%>
 +Para que un grupo se comporte como DRAWER se tiene que definir el atributo **drawer-orientation**="left o right" en la declaración del grupo, este atributo indica que el grupo es un drawer y desde donde se despliega. 
 +</WRAP>
 +\\
 === Atributos XML === === Atributos XML ===
 \\ \\
Línea 112: Línea 118:
 | width | Ancho en píxeles o porcentaje del grupo desplegable. | | width | Ancho en píxeles o porcentaje del grupo desplegable. |
 | height| Alto en píxeles o porcentaje del grupo desplegable. | | height| Alto en píxeles o porcentaje del grupo desplegable. |
 +\\
 +**Declaración**
 +\\
 +<code javascript>
 +<group name="Drawer" id="99" drawer-orientation="left" width="70%" height="100%">
 + <prop .... />
 +</group>
 +</code>
 +
 \\ \\
 === Métodos Drawer === === Métodos Drawer ===
Línea 121: Línea 136:
 | ui.lockGroup(idGrupo,close) | Como parámetros hay que indicarle el grupo que queremos bloquear y en qué estado lo queremos bloquear, visible u oculto. Este segundo parámetro es close(booleano) de forma que **true** lo bloqueará cerrado u oculto y **false** lo bloqueará desplegado ó visible. | | ui.lockGroup(idGrupo,close) | Como parámetros hay que indicarle el grupo que queremos bloquear y en qué estado lo queremos bloquear, visible u oculto. Este segundo parámetro es close(booleano) de forma que **true** lo bloqueará cerrado u oculto y **false** lo bloqueará desplegado ó visible. |
 | ui.unlockGroup(idGrupo) | Como parámetro hay que indicarle el grupo que queremos desbloquear. | | ui.unlockGroup(idGrupo) | Como parámetro hay que indicarle el grupo que queremos desbloquear. |
 +\\
 +<code javascript>
 +function irGrupo(grupo){
 +    ui.showGroup(grupo,'##RIGHTN##',1000,'##RIGHTN_OUT##',200);
 +}
 +function ocultarGrupo(grupo){
 +    ui.hideGroup(grupo);
 +}
 +function MostrarGrupo(grupo){
 +    ui.toggleGroup(grupo);
 +}
  
-<code xml> 
-<group name="Drawer" id="99" drawer-orientation="left" width="70%" height="100%"> 
- <prop .... /> 
-</group> 
 </code> </code>
 +\\
 +**Ejemplo de uso:**
 +<code javascript>
 +<coll name="Drawer" title="Entrada de la aplicacion" notab="true" editmask="0" special="true">
 +    <group name="Drawer" id="999" drawer-orientation="left" class="xnFondoDrawerC">
 +        
 +    <prop name="MAP_IMAGE_DRAWER" type="IMG" visible="1" class="xnDrawarImageC" />
 +        
 +                                
 +        <prop name="MAP_BT_OPCION1_DR" title="Menu" type="B" visible="1" onclick="javascript:irOpcion(0,5,'fmrOpcion',1);ocultarGrupo(999);" xonclick="javascript:irColl(ListaPresupuesto)" class="xnTituloDrawerC" />
 +       <prop name="MAP_BT_OPCION2_DR" title="Clientes" type="B" visible="1" onclick="javascript:irColl('ListaClientes');ocultarGrupo(999);" class="xnTituloDrawerC" /> 
 +        <prop name="MAP_BT_OPCION3_DR" title="Proveedores" type="B" visible="1" onclick="javascript:irColl('ListaProveedores');ocultarGrupo(999);" class="xnTituloDrawerC" /> 
 +        <prop name="MAP_BT_OPCION4_DR" title="Artículos" type="B" visible="1" onclick="javascript:irColl('ListaArticulos');ocultarGrupo(999);" class="xnTituloDrawerC" />
 +        <prop name="MAP_BT_OPCION5_DR" title="Presupuestos" type="B" visible="1" onclick="javascript:irColl('ListaPresupuestos');ocultarGrupo(999);" class="xnTituloDrawerC" />
 +        <prop name="MAP_BT_OPCION6_DR" title="Pedidos" type="B" visible="1" onclick="javascript:irColl('ListaPedidos');ocultarGrupo(999);" class="xnTituloDrawerC" />
 +       
 +        <prop name="MAP_BT_OPCION7_DR" tmargin="15p" title="Huella Dactilar" type="B" visible="1" method="ExecuteNode(assignarHuella)" xonclick="javascript:irOpcion(1,7,'fmrOpcion',1);ocultarGrupo(999);" class="xnTituloDrawerC" />                                                       
 +        <prop name="MAP_BT_SALIR_DR" title="Salir" type="B" visible="1" method="executenode(onback)" class="xnTituloDrawerC" />
 +         
 +    </group>
 +    
 +    <group name="Menu" id="1" width="100%" height="100%" bgcolor="#B60F55" class="xnFondoGroupC">
 +        <frame name="frmGeneral" class="xnBackgroundC" width="100%" height="100%" Xbgcolor="#00CC0000">
 +            <frame name="frmTop" class="xnHeaderC" width="100%" height="8%" Xdisablevisible="MAP_SELECCION&lt;&gt;1" framebox="false">
 +                <prop name="MAP_BT_MENU" type="B" visible="1" method="ExecuteNode(abrirDrawer(999))" class="xnButtonMenuHeaderC" />
 +                <prop name="MAP_TLTOP" type="TL" visible="1" title="PRESUPUESTOS" class="xnTituloHeaderC"  newline="false"  xbgcolor="#b60055" />
 +               
 +            </frame>
 +        </frame>
 +        
 +        <prop name="MAP_SHOWMENU" visible="0" type="N" />
 +        <prop name="MAP_SELECCION" visible="0" type="N" />
 +        <prop name="MAP_SELECTORS_VISIBLE" visible="0" type="N" />
 +        <prop name="MAP_SELECTOR_BGCOLOR" visible="0" type="T" />
 +        <prop name="MAP_SELECTOR_BGCOLOR2" visible="0" type="T" />
 +        <prop name="MAP_SELECTOR_BGCOLOR3" visible="0" type="T" />
 +        <prop name="MAP_SELECTOR_BGCOLOR4" visible="0" type="T" />
 +        <prop name="MAP_SELECTOR_BGCOLOR5" visible="0" type="T" />
 +        <prop name="MAP_HUELLADACTILAR" visible="0" type="N" />
 +        <prop name="MAP_DOPDF" visible="0" type="N" />
 +      </group>
 +    
 +     
 +    <before-edit>
 +        <action name="runscript">
 +            <script language="javascript"> 
 +                self.MAP_DOPDF = 0;
 +                self.MAP_SELECTOR_BGCOLOR = "#ffffff";
 +                self.MAP_SELECTOR_BGCOLOR2 = "#00000000";
 +                self.MAP_SELECTOR_BGCOLOR3 = "#00000000";
 +                self.MAP_SELECTOR_BGCOLOR4 = "#00000000";
 +                self.MAP_SELECTOR_BGCOLOR5 = "#00000000";
 +                self.MAP_HUELLADACTILAR = 0;       
 +                self.MAP_CONTADOR1=1;
 +                
 +                try{
 +    if(!isWatch() &amp;&amp; fingerprintManager !== "undefined"){
 +        if(fingerprintManager != null){
 +                            if (fingerprintManager.isHardwareAvailable())
 +                            {
 +                          self.MAP_T_HUELLADACTILAR_IFO = "Su dispositivo soporta la lectura de huella dactilar, pulse el boton para asignar una huella al usuario actual.";
 +                          self.MAP_HUELLADACTILAR = 1;
 +                            }else{
 +                            self.MAP_T_HUELLADACTILAR_IFO = "Su dispositivo no soporta la lectura de huella dactilar.";
 +                            }
 +        }
 +    }
 +                }catch(ex){
 +                    self.MAP_T_HUELLADACTILAR_IFO = "Su dispositivo no soporta la lectura de huella dactilar.";
 + }
 +                
 +            </script>
 +        </action>
 +    </before-edit>
 + 
 +    <onback show-wait-dialog="false" refresh="false">
 +        <action name="runscript">
 +            <script language="javascript">
 +        appData.failWithMessage(-11888, "##EXITAPP##");
 +            </script>
 +        </action>
 +    </onback>
 +    
 +   
 +    
 +    <abrirDrawer show-wait-dialog="false" refresh="false">
 +        <action name="runscript">
 +            <param name="grupo" />
 +            <script language="javascript">
 + ui.startReplica();
 +                irGrupo(grupo);
 +                ui.refresh("MAP_IMAGE_DRAWER");
 +            </script>
 +        </action>
 +    </abrirDrawer>
 +    
 +    <menu show-wait-dialog="false" refresh="false">
 +        <action name="runscript">
 +            <param name="parametro" />
 +            <script language="javascript">
 +          ui.showToast("Ha seleccionado la opción " + parametro);
 +     </script>
 +        </action>
 +    </menu>
 +    
 +    <abrirColl show-wait-dialog="false" refresh="false">
 +        <action name="runscript">
 +            <param name="coll" />
 +            <script language="javascript">
 + ui.startReplica();
 +                irColl(coll);
 +            </script>
 +        </action>
 +    </abrirColl>
 +    
 +   <assignarHuella>
 +        <action name="runscript" >
 +            <script language="javascript">
 +                if(getOS() == "IOS"){
 +                    doRegisterNewFingerprintIOS();
 +                }else{
 +            doRegisterNewFingerprint();
 +                }
 +            </script>
 +        </action>
 +    </assignarHuella>
  
-Ejemplo de uso: +</coll
-<code vb+ 
- ui.showGroup( "1","##ALPHA_IN##",600,"##ALPHA_OUT##",600); +</code>
-</code> +