Diferencia entre revisiones de «Funciones de librería»

De Egeasy
Saltar a: navegación, buscar
 
(No se muestran 77 ediciones intermedias de 2 usuarios)
Línea 1: Línea 1:
===[[Conversión de tipos]]===
+
__NOTOC__
 +
====[[Conversión de tipos]]====
 
Funciones que transforman el resultado de una expresión a un tipo de dato específico.
 
Funciones que transforman el resultado de una expresión a un tipo de dato específico.
  
===[[Indicadores de tipo]]===
+
<p><code>[[Conversión de tipos#$Entero|$Entero]] - [[Conversión de tipos#$Fecha|$Fecha]] - [[Conversión de tipos#$Logico|$Logico]] - [[Conversión de tipos#$Real|$Real]] - [[Conversión de tipos#$Texto|$Texto]]</code></p>
  
===[[Tratamiento de textos]]===
+
====[[Indicadores de tipo]]====
 +
Funciones que indican el tipo de una expresión. La utilidad de estas funciones radica en devolver el tipo de expresiones que no son evaluadas, como pueden ser aquellas en las que se accede al dominio de algún componente o recurso.
  
===[[Tratamiento de números]]===
+
<p><code>[[Indicadores de tipo#$Coleccion|$Coleccion]] - [[Indicadores de tipo#$Lista|$Lista]] - [[Indicadores de tipo#$Tabla|$Tabla]] - [[Indicadores de tipo#$Vinculo|$Vinculo]]</code></p>
  
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
====[[Tratamiento de textos]]====
<code style="background: #FFFFFF">'''$Entero'''(E: expresión): {{T|entero}}</code>
+
<p>Funciones que nos permitirán realizar operaciones con datos de tipo texto.</p>
</blockquote>
+
  
:*'''Descripción'''<p>Devuelve el resultado de una expresión convertido a su estado numérico. En este caso, un entero. Para ello, la expresión debe devolver un entero en formato texto.</p>
+
<p><code>[[Tratamiento de textos#$CopiarTexto|$CopiarTexto]] - [[Tratamiento de textos#$LongitudTexto|$LongitudTexto]] - [[Tratamiento de textos#$Texto|$Texto]]</code></p>
  
:*'''Ejemplo'''
+
====[[Tratamiento de números]]====
 +
<p>Compendio de funciones que permiten tratar datos numéricos, tanto enteros como reales. Se podrá obtener la parte decimal o entera de un real, saber si un número es par o impar, etc.</p>
  
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<p><code>[[Tratamiento de números#$Entero|$Entero]] - [[Tratamiento de números#$EsPar|$EsPar]] - [[Tratamiento de números#$Max|$Max]] - [[Tratamiento de números#$Min|$Min]] - [[Tratamiento de números#$ParteDecimal|$ParteDecimal]] - [[Tratamiento de números#$ParteEntera|$ParteEntera]] - [[Tratamiento de números#$Real|$Real]] - [[Tratamiento de números#$Redondeo|$Redondeo]]</code></p>
<code style="background: #FFFFFF">$Entero([D.N.I.])  {{COM|//devuelve 45678123}}</code>
+
</blockquote>
+
  
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
====[[Tratamiento de horas y fechas]]====
<code style="background: #FFFFFF">'''$Real'''(E: expresión): {{T|real}}</code>
+
<p>Es muy habitual trabajar con fechas a la hora de programar un sistema de información en ODL. Por ello, se han creado numerosas funciones que nos permitirán manejar el tipo de dato "fecha". Por ejemplo, podremos obtener datos concretos como el día, mes o año, comparar dos fechas o calcular una fecha a partir de otra, entre otras.</p>
</blockquote>
+
  
:*'''Descripción'''<p>Devuelve el resultado de una expresión convertido a su estado numérico. En este caso, un real. Para ello, la expresión debe devolver un real en formato texto.</p>
+
<p><code>[[Tratamiento de horas y fechas#$Año|$Año]] - [[Tratamiento de horas y fechas#$CalculaFecha|$CalculaFecha]] - [[Tratamiento de horas y fechas#$Dia|$Dia]] - [[Tratamiento de horas y fechas#$DiferenciaDias|$DiferenciaDias]] - [[Tratamiento de horas y fechas#$DiferenciaFechas|$DiferenciaFechas]] - [[Tratamiento de horas y fechas#$Fecha|$Fecha]] - [[Tratamiento de horas y fechas#$FormatoFecha|$FormatoFecha]] - [[Tratamiento de horas y fechas#$Hoy|$Hoy]] - [[Tratamiento de horas y fechas#$Mes|$Mes]]</code></p>
  
:*'''Ejemplo'''
+
====[[Tratamiento de moneda]]====
 +
<p><code>[[Tratamiento de moneda#$Cifra|$Cifra]]</code> - <code>[[Tratamiento de moneda#$Moneda|$Moneda]]</code></p>
  
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
====[[Manejo de listas de comprobación]]====
<code style="background: #FFFFFF">$Real({{STR|"1.400,23"}})    {{COM|//devuelve 1.400,23}}</code>
+
<p>Es posible que en el desarrollo de nuestro sistema de información en ODL nos interese realizar ciertas operaciones con las listas de comprobación. Una operación frecuente es invertir la selección de las filas. Accede al siguiente artículo para conocer, por ejemplo, esta función de uso muy común.</p>
</blockquote>
+
  
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<p><code>[[Manejo de listas de comprobación#$InvertirSeleccion|$InvertirSeleccion]] - [[Manejo de listas de comprobación#$Lista|$Lista]]</code></p>
<code style="background: #FFFFFF">'''$ParteEntera'''(N: {{T|real}}): {{T|entero}}</code>
+
</blockquote>
+
  
:*'''Descripción'''<p>Devuelve el truncamiento de la parte entera de un real.</p>
+
====[[Creación de matrices]]====
 +
<p>Crea matrices a partir de otros componentes o recursos de ODL. Además, se podrán crear matrices a partir de los resultados obtenidos en una petición a la base de datos.</p>
  
:*'''Ejemplo'''
+
<p><code>[[Creación de matrices#$Matriz(texto)|$Matriz(texto)]] - [[Creación de matrices#$Matriz(componente)|$Matriz(componente)]] - [[Creación de matrices#$Matriz(enumerado,exportación)|$Matriz(enumerado,exportación)]] - [[Creación de matrices#$MatrizSQL|$MatrizSQL]]</code></p>
  
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
====[[Cálculo con matrices]]====
<code style="background: #FFFFFF">$ParteEntera($Real({{STR|"22,64"}}))    {{COM|//devuelve 22}}</code>
+
<p>Conjunto de funciones para realizar diversos cálculos sobre matrices. Sumar columnas, calcular medias, buscar un elemento concreto, buscar el valor máximo o mínimo de una columna, etc.</p>
</blockquote>
+
  
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<p><code>[[Cálculo con matrices#$Elemento|$Elemento]] - [[Cálculo con matrices#$Max|$Max]] - [[Cálculo con matrices#$Media|$Media]] - [[Cálculo con matrices#$Min|$Min]] - [[Cálculo con matrices#$NumeroColumnas|$NumeroColumnas]] - [[Cálculo con matrices#$NumeroFilas|$NumeroFilas]] - [[Cálculo con matrices#$Suma|$Suma]]</code></p>
<code style="background: #FFFFFF">'''$ParteEntera'''(N: {{T|real}}): {{T|entero}}</code>
+
</blockquote>
+
  
:*'''Descripción'''<p>Devuelve el truncamiento de la parte entera de un real.</p>
+
====[[Manejo de matrices]]====
 +
<p>En el siguiente artículo se muestran varias funciones que permiten realizar diversas operaciones con matrices. Por ejemplo, filtrar una matriz con un cierto valor, ordenar una matriz, renombrar columnas, etcétera...</p>
  
:*'''Ejemplo'''
+
<p><code>[[Manejo de matrices#$AgruparSuma|$AgruparSuma]] - [[Manejo de matrices#$Columnas|$Columnas]] - [[Manejo de matrices#$ConcatenarColumna|$ConcatenarColumna]] - [[Manejo de matrices#$EliminarFilasRepetidas|$EliminarFilasRepetidas]] - [[Manejo de matrices#$Filtrar|$Filtrar]] - [[Manejo de matrices#$MatrizFila|$MatrizFila]] - [[Manejo de matrices#$Ordenar|$Ordenar]] - [[Manejo de matrices#$RenombrarColumnas|$RenombrarColumnas]] - [[Manejo de matrices#$AsignarElemento|$AsignarElemento]]</code></p>
  
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
====[[Manejo de colecciones]]====
<code style="background: #FFFFFF">$ParteEntera($Real({{STR|"22,64"}}))    {{COM|//devuelve 22}}</code>
+
<p>En este artículo facilitamos las funciones que nos permitirán seleccionar un objeto o varios de ellos de una colección concreta, cumpliendo con una definición determinada.</p>
</blockquote>
+
  
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<p><code>[[Manejo de colecciones#$SeleccionarObjetoPorDefinicion|$SeleccionarObjetoPorDefinicion]] - [[Manejo de colecciones#$SeleccionarObjetosPorDefinicion|$SeleccionarObjetosPorDefinicion]]</code></p>
<code style="background: #FFFFFF">'''$ParteDecimal'''(N: {{T|real}}): {{T|real}}</code>
+
</blockquote>
+
  
:*'''Descripción'''<p>Devuelve la parte decimal de un real.</p>
+
====[[Funciones especiales]]====
 +
<p>Conjunto de funciones que entre sí no tienen mucho en común, o que no actúan sobre un componente o recurso concreto. No por ello carecen de la misma importancia que las demás. Te recomendamos que accedas, quizás la función que buscas se encuentre en este artículo.</p>
  
:*'''Ejemplo'''
+
<p><code>[[Funciones especiales#$Crear|$Crear]] - [[Funciones especiales#$Decision|$Decision]] - [[Funciones especiales#$DRC|$DRC]] - [[Funciones especiales#$EsTipo|$EsTipo]] - [[Funciones especiales#$Si|$Si]] - [[Funciones especiales#$VariableCentro|$VariableCentro]]</code></p>
  
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
====[[Ejecución de sentencias SQL]]====
<code style="background: #FFFFFF">$ParteDecimal($Real({{STR|"22,64"}}))      {{COM|//devuelve 0,64}}</code>
+
<p>En este artículo se muestran dos funciones que nos permitirán obtener, o bien una matriz con los valores obtenidos de una sentencia SQL, o bien el primer valor encontrado.</p>
</blockquote>
+
  
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<p><code>[[Ejecución de sentencias SQL#$MatrizSQL|$MatrizSQL]] - [[Ejecución de sentencias SQL#$ValorSQL|$ValorSQL]]</code></p>
<code style="background: #FFFFFF">'''$Redondeo'''(N: {{T|real}}): {{T|entero}}</code>
+
</blockquote>
+
  
:*'''Descripción'''<p>Redondea un número real, devolviendo un entero.</p>
+
====[[Funciones de método]]====
 +
<p>Aquí se especifican las funciones que se utilizan en el desarrollo de los métodos.</p>
  
:*'''Ejemplos'''
+
<p><code>[[Funciones de método#$Crear|$Crear]] - [[Funciones de método#$Ejecutar|$Ejecutar]] - [[Funciones de método#$Firmar|$Firmar]] - [[Funciones de método#$Guardar|$Guardar]] - [[Funciones de método#$Lanzar|$Lanzar]] - [[Funciones de método#$Mover|$Mover]] - [[Funciones de método#$Sellar|$Sellar]]</code></p>
  
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
[[Categoría:ODL]]
<code style="background: #FFFFFF">$Redondeo($Real({{STR|"22,5"}}))    {{COM|//devuelve 22}}</code>
+
[[Categoría:Funciones]]
</blockquote>
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$Redondeo($Real({{STR|"5,6"}}))        {{COM|//devuelve 6}}</code>
+
</blockquote>
+
 
+
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<code style="background: #FFFFFF">'''$EsPar'''(N: {{T|entero}}): {{T|lógico}}</code>
+
</blockquote>
+
 
+
:*'''Descripción'''<p>Devuelve verdadero si el entero es par, falso en caso contrario.</p>
+
 
+
:*'''Ejemplo'''
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$EsPar($Entero({{STR|"3"}}))      {{COM|//devuelve falso}}</code>
+
</blockquote>
+
 
+
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<code style="background: #FFFFFF">'''$Max'''(Valor1: {{T|real}}, Valor2: {{T|real}} {, V: {{T|real}}}): {{T|real}}</code>
+
</blockquote>
+
 
+
:*'''Descripción'''<p>Devuelve el mayor número de los pasados por paráemtro.</p>
+
 
+
:*'''Ejemplo'''
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$Max($Real({{STR|"20,14"}}),$Real({{STR|"7,56"}}),$Entero({{STR|"2"}}))  {{COM|//devuelve 20,14}}</code>
+
</blockquote>
+
 
+
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<code style="background: #FFFFFF">'''$Min'''(Valor1: {{T|real}}, Valor2: {{T|real}} {, V: {{T|real}}}): {{T|real}}</code>
+
</blockquote>
+
 
+
:*'''Descripción'''<p>Devuelve el menor número de los pasados por parámetro.</p>
+
 
+
:*'''Ejemplo'''
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$Min($Real({{STR|"20,14"}}),$Real({{STR|"7,56"}}),$Entero({{STR|"2"}}))  {{COM|//devuelve 2,00}}</code>
+
</blockquote>
+
 
+
===[[Tratamiento de horas y fechas]]===
+
 
+
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<code>'''$Fecha'''(E: expresión): {{T|fecha}}</code>
+
</blockquote>
+
 
+
:*'''Descripción'''<p>Convierte el resultado de una expresión a tipo fecha. El resultado de la expresión debe ser compatible con el campo fecha. El formato a seguir debe ser el siguiente dd/mm/aaaa. Si se dan los formatos dd/mm o dd se rellena con la fecha del sistema.</p>
+
 
+
:*'''Ejemplos'''
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$Fecha({{STR|"23/04/2003"}})  {{COM|//devuelve 23/04/2003}}</code>
+
</blockquote>
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$Fecha({{STR|"5/7/04"}})  {{COM|//devuelve 05/07/2004}}</code>
+
</blockquote>
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$Fecha({{STR|"23/4"}})  {{COM|//devuelve 23/04/2005}}</code>
+
</blockquote>
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$Fecha({{STR|"15"}})  {{COM|//devuelve 15/01/2005}}</code>
+
</blockquote>
+
 
+
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<code>'''$Hoy''': {{T|fecha}}</code>
+
</blockquote>
+
 
+
:*'''Descripción'''<p>Devuelve la fecha del sistema.</p>
+
 
+
:*'''Ejemplo'''
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$Hoy  {{COM|//devuelve 13/04/2005 por ejemplo}}</code>
+
</blockquote>
+
 
+
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<code>'''$Año'''(F: {{T|fecha}}): {{T|entero}}</code>
+
</blockquote>
+
 
+
:*'''Descripción'''<p>Devuelve el año de una fecha dada.</p>
+
 
+
:*'''Ejemplo'''
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$Año($Fecha({{STR|"13/04/2002"}}))  {{COM|//devuelve 2002}}</code>
+
</blockquote>
+
 
+
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<code>'''$Mes'''(F: {{T|fecha}}): {{T|entero}}</code>
+
</blockquote>
+
 
+
:*'''Descripción'''<p>Devuelve el mes de una fecha dada.</p>
+
 
+
:*'''Ejemplo'''
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$Mes($Fecha({{STR|"13/04/2002"}}))  {{COM|//devuelve 4}}</code>
+
</blockquote>
+
 
+
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<code>'''$Dia'''(F: {{T|fecha}}): {{T|entero}}</code>
+
</blockquote>
+
 
+
:*'''Descripción'''<p>Devuelve el día del mes de una fecha dada.</p>
+
 
+
:*'''Ejemplo'''
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$Dia($Fecha({{STR|"13/04/2002"}}))  {{COM|//devuelve 13}}</code>
+
</blockquote>
+
 
+
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<code>'''$DiferenciaFechas'''(Fin: {{T|fecha}}, Inicio: {{T|fecha}}): {{T|texto}}</code>
+
</blockquote>
+
 
+
:*'''Descripción'''<p>Calcula la diferencia entre dos fechas dadas en días, meses y años. La fecha ''Fin'' debe ser estrictamente mayor que la fecha ''Inicio'' para que la función pueda devolver un valor.</p>
+
 
+
:*'''Ejemplos'''
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$DiferenciaFechas($Fecha({{STR|"20/04/2002"}}), $Fecha({{STR|"13/04/2002"}}))  {{COM|//devuelve "7 días"}}</code>
+
</blockquote>
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$DiferenciaFechas($Fecha({{STR|"20/05/2003"}}), $Fecha({{STR|"13/11/2002"}})) {{COM|//devuelve "6 meses y 7 días"}}</code>
+
</blockquote>
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$DiferenciaFechas($Fecha({{STR|"30/08/2007"}}), $Fecha({{STR|"13/04/2002"}})) {{COM|//devuelve "5 años, 4 meses y 17 días"}}</code>
+
</blockquote>
+
 
+
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<code>'''$DiferenciaDias'''(Fin: {{T|fecha}}, Inicio: {{T|fecha}}): {{T|entero}}</code>
+
</blockquote>
+
 
+
:*'''Descripción'''<p>Calcula la diferencia en días de dos fechas dadas. La fecha ''Fin'' ha de ser estrictamente mayor que la fecha ''Inicio''. Se devolverá un valor entero.</p>
+
 
+
:*'''Ejemplo'''
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$DiferenciaDias($Fecha({{STR|"20/04/2002"}}),$Fecha({{STR|"13/04/2002"}})) {{COM|//devuelve 7}}</code>
+
</blockquote>
+
 
+
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<code>'''$CalculaFecha'''(Inicio: {{T|fecha}}, NDias: {{T|entero}}, Hábil: {{T|lógico}}): {{T|fecha}}</code>
+
</blockquote>
+
 
+
:*'''Descripción'''<p>Calcula una fecha a partir de una fecha inicio que introducimos como parámetro de entrada, indicando el número de días a contar y si éstos deben ser días hábiles (verdadero) o naturales (falso). El valor devuelvo será un valor tipo fecha con la nueva fecha calculada.</p>
+
 
+
:*'''Ejemplos'''
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$CalculaFecha($Fecha({{STR|"19/04/2002"}}),2,verdadero) {{COM|//devuelve 23/04/2002}}</code>
+
</blockquote>
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$CalculaFecha($Fecha({{STR|"21/04/2002"}}),2,verdadero) {{COM|//devuelve 23/04/2002}}</code>
+
</blockquote>
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$CalculaFecha($Fecha({{STR|"20/04/2002"}}),2,falso) {{COM|//devuelve 22/04/2002}}</code>
+
</blockquote>
+
 
+
===[[Manejo de listas de comprobación]]===
+
 
+
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<code>'''$Lista'''(E: expresión): {{T|lista_comprobacion}}</code>
+
</blockquote>
+
 
+
:*'''Descripción'''<p>Indica que el resultado de una expresión es una lista de comprobación. Muy útil cuando la expresión no es evaluada, por ejemplo por el acceso al dominio.</p>
+
 
+
:*'''Ejemplo'''
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$Lista([&Dominio]->[Revisión].[Documentación a requerir])</code>
+
</blockquote>
+
 
+
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<code>'''$InvertirSeleccion'''(L: {{T|lista_comprobacion}}): {{T|lista_comprobacion}}</code><p><code>'''$InvertirSeleccion'''(M: {{T|matriz}}): {{T|matriz}}</code></p>
+
</blockquote>
+
 
+
:*'''Descripción'''<p>Cambia el valor de selección de todas las filas de una lista de comprobación. También admite como parámetro una matriz cuya estructura sean dos columnas, una columna lógica llamada "seleccionado" y otra de tipo texto llamada "descripción". En este caso, invertiría los valores de la columna lógica. En realidad, una lista de comprobación es una matriz con las dos columnas que hemos comentado.</p>
+
 
+
:*'''Ejemplos'''
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<p><code style="background: #FFFFFF">[Documentación presentada] {{PR|es}} {{T|lista_comprobacion}}</code></p><p><code>$InvertirSeleccion([Datos generales].[Documentación presentada])</code></p>
+
</blockquote>
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<p><pre style="background: #FFFFFF">[Documentos entregados] {{PR|es}} {{T|tabla}}
+
      [seleccionados] {{PR|es}} {{T|logico}}
+
      [descripción] {{PR|es}} {{T|texto}}
+
</pre></p></blockquote>
+
---PENDIENTE---
+
 
+
$InvertirSeleccion($matriz([Datos generales].[Documentos entregados])</code><p><code>{{COM|//[Documentos entregados] es un campo tabla con dos columnas (seleccionado, descripción)}}</code></p>
+
 
+
===[[Creación de matrices]]===
+
 
+
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<code>'''$Matriz'''(T: {{T|texto}} {, A: {{T|texto}}}): {{T|matriz}}</code>
+
</blockquote>
+
 
+
:*'''Descripción'''<p>Devuelve una matriz de una columna, creada a partir de los valores introducidos como parámetros.</p>
+
 
+
:*'''Ejemplo'''
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$Matriz({{STR|"De documentación"}},{{STR|"De requisitos"}},{{STR|"De plazo"}},{{STR|"De incidencias"}},{{STR|"De
+
alegaciones"}},{{STR|"De denuncia"}},{{STR|"De inscripción"}},{{STR|"De actuaciones practicadas"}},{{STR|"De
+
requisitos, libros y plazo"}},{{STR|"De plazo, documentación y requisitos"}})</code>
+
</blockquote>
+
 
+
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<code>'''$Matriz'''(C: {{T|tabla}}): {{T|matriz}}</code><p><code>'''$Matriz'''(C: {{T|lista_comprobacion}}): {{T|matriz}}</code></p><p><code>'''$Matriz'''(C: {{T|catálogo}}): {{T|matriz}}</code></p><p><code>'''$Matriz'''(C: {{T|colección}}): {{T|matriz}}</code></p><p><code>'''$Matriz'''(C: {{T|clasificador}}): {{T|matriz}}</code></p>
+
</blockquote>
+
 
+
:*'''Descripción'''<p>Devuelve una matriz cuyo contenido se obtendrá de los elementos que existan en los componentes tabla, catálogo, colección, clasificador o lista de comprobación.</p>
+
 
+
:*'''Ejemplos'''
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$Matriz([Documentación presentada])</code>
+
</blockquote>
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$Matriz([Terceros].[Contenido])</code>
+
</blockquote>
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$Matriz([Datos generales].[Representantes])</code>
+
</blockquote>
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$Matriz([Datos generales].[Documentación presentada])</code>
+
</blockquote>
+
 
+
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<code>'''$Matriz'''(R: {{RE|enumerado}}): {{T|matriz}}</code><p><code>'''$Matriz'''(O: {{RE|exportacion}}): {{T|matriz}}</code></p>
+
</blockquote>
+
 
+
:*'''Descripción'''<p>Devuelve una matriz cuyo contenido se obtendrá de los elementos que existan en un enumerado (recurso) o una exportación (operación).</p>
+
 
+
:*'''Ejemplo'''
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$Matriz([Municipios])</code>
+
</blockquote>
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$Matriz([Tipos de impuestos])</code>
+
</blockquote>
+
 
+
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<code>'''$MatrizSQL'''(SentenciaSQL: {{T|texto}}): {{T|matriz}}</code></blockquote>
+
 
+
:*'''Descripción'''<p>Devuelve una matriz cuyo contenido será el resultado de una sentencia SQL. Permite insertar el resultado de una expresión en la sentencia, prefijando con los dos puntos <<''':'''>>. El valor interpolado tendrá la forma del tipo devuelto por la expresión.</p>
+
 
+
:*'''Ejemplo'''
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$MatrizSQL(<font color="#FF00FF">'''"select * from TC$USERS where DEPARTAMENT = 'Dirección'"'''</font>)</code>
+
</blockquote>
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$MatrizSQL(<font color="#FF00FF">'''"select RRC, DRC, NAME from TR$INFORMES where DOMAIN_RRC =:[Expediente]"'''</font>)</code>
+
</blockquote>
+
 
+
===[[Manejo de matrices]]===
+
 
+
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<code>'''$Filtrar'''(M: {{T|matriz}}, Condicion: {{T|texto}}): {{T|matriz}}</code></blockquote>
+
 
+
:*'''Descripción'''<p>Devuelve una matriz que introducimos como parámetro de la función, pero con aquellos elementos que cumplan la condición especificada en el segundo parámetro.</p>
+
 
+
:*'''Ejemplo'''
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$Filtrar([Municipios], <font color="#FF00FF">'''"[#Isla]=[Gran Canaria]"'''</font>) {{COM|//devuelve una matriz de los municipios de una determinada isla, tras evaluar el campo [Isla]}}</code>
+
</blockquote>
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$Filtrar($Matriz[Representantes], <font color="#FF00FF">'''"([#Tipo] = 'Secundario') y ([#Cargo] ='Directivo')"'''</font>)</code>
+
</blockquote>
+
 
+
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<code>'''$Ordenar'''(M: {{T|matriz}}, Columna: {{T|texto}}, Ascendente: {{T|lógico}}): {{T|matriz}}</code></blockquote>
+
 
+
:*'''Descripción'''<p>Devuelve una matriz cuyas filas estarán ordenadas en función de la columna que indiquemos como parámetro. Podrán ordenarse ascendentemente (verdadero) o descendentemente (falso).</p>
+
 
+
:*'''Ejemplo'''
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$Ordenar([Asignaturas], {{STR|"[#Curso]"}}, verdadero) {{COM|//devuelve una matriz con las
+
asignaturas ordenadas por curso de forma ascendente}}</code>
+
</blockquote>
+
 
+
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<code>'''$EliminarFilasRepetidas'''(M: {{T|matriz}}): {{T|matriz}}</code></blockquote>
+
 
+
:*'''Descripción'''<p>Elimina las filas repetidas de una matriz que pasamos a la función como parámetro de entrada.</p>
+
 
+
:*'''Ejemplo'''
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">PENDIENTE</code>
+
</blockquote>
+
 
+
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<code>'''$MatrizFila'''(Expresion: {{T|texto}} {, E: {{T|texto}}}): {{T|matriz}}</code></blockquote>
+
 
+
:*'''Descripción'''<p>Devuelve una matriz de una sola fila, donde los valores son obtenidos de campos definidos. La expresión corresponderá a una asignación con el nombre de la columna y a continuación la expresión de un campo donde obtener el valor. La forma de la expresión es "Nombre_columna = [Campo]"</p>
+
 
+
:*'''Ejemplo'''
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$MatrizFila(<font color="#FF00FF">'''"[Nombre] = [Denominación]->[Datos del promotor].[Promotor]"'''</font>)</code>
+
</blockquote>
+
 
+
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<code>'''$RenombrarColumnas'''(M: {{T|matriz}}, Actual: {{T|texto}}, Nuevo: {{T|texto}} {, A: {{T|texto}}, N: {{T|texto}}}): {{T|matriz}}</code></blockquote>
+
 
+
:*'''Descripción'''<p>Devuelve una matriz con las columnas «Actual» renombradas por «Nuevo».</p>
+
 
+
:*'''Ejemplo'''
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$RenombrarColumnas(M, {{STR|"Cod"}}, {{STR|"Código"}}, {{STR|"Den"}}, {{STR|"Denominación"}}) {{COM|//devuelve la matriz donde las columnas: "Cod" y "Den" se han renombrado por "Código" y "Denominación"</code>
+
</blockquote>
+
 
+
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<code>'''$RenombrarColumnas'''(M: {{T|matriz}}, Actual: {{T|texto}}, Nuevo: {{T|texto}} {, A: {{T|texto}}, N: {{T|texto}}}): {{T|matriz}}</code></blockquote>
+
 
+
:*'''Descripción'''<p>Devuelve una matriz con las columnas «Actual» renombradas por «Nuevo».</p>
+
 
+
:*'''Ejemplo'''
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$RenombrarColumnas(M, {{STR|"Cod"}}, {{STR|"Código"}}, {{STR|"Den"}}, {{STR|"Denominación"}}) {{COM|//devuelve la matriz donde las columnas: "Cod" y "Den" se han renombrado por "Código" y "Denominación"}}</code>
+
</blockquote>
+
 
+
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<code>'''$Columnas'''(M: {{T|matriz}}, Columna: {{T|texto}} {, C: {{T|texto}}}): {{T|matriz}}</code></blockquote>
+
 
+
:*'''Descripción'''<p>Función que devuelve una matriz con las columnas seleccionadas de otra matriz que introducimos como parámetro de entrada.</p>
+
 
+
:*'''Ejemplo'''
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$Columnas([Municipios], {{STR|"[#Municipio]"}}, {{STR|"[#CodProvincia]"}})</code>
+
</blockquote>
+
 
+
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<code>'''$AgruparSuma'''(M: {{T|matriz}}, Suma: {{T|texto}}, Agrupa: {{T|texto}} {, A: {{T|texto}}}): {{T|matriz}}</code></blockquote>
+
 
+
:*'''Descripción'''<p>Devuelve una matriz donde se agruparán las filas cuando exista una coincidencia entre los valores de las columnas «Agrupa» que se especifiquen. Al encontrar una coincidencia se sumarán los valores de las celdas «Suma» de cada coincidencia y el resultado se escribirá en la celda resultante de la columna «Suma». Se creará por tanto, una sola fila, con una columna «Suma» y la fusión de las columnas cuyos valores coincidan. La matriz devuelta sólo constará de las columnas «Agrupa» y la columna «Suma», que ha de ser numérica.</p>
+
 
+
:*'''Ejemplo'''
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$AgruparSuma(M, {{STR|"Importe"}}, {{STR|"Producto"}}, {{STR|"Categoría"}}) {{COM|//devuelve una matriz con las tres columnas donde siempre que coincida los valores del par «Producto» y «Categoría», los valores de «Importe» se suman}}</code>
+
</blockquote>
+
 
+
===[[Manejo de colecciones]]===
+
 
+
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<code>'''$SeleccionarObjetoPorDefinicion'''(C: {{T|colección}}, D: {{T|definición}}): {{T|contenedor}}</code></blockquote>
+
 
+
:*'''Descripción'''<p>Devuelve en forma de matriz el primer contenedor de una colección que cumple la definición.</p>
+
 
+
:*'''Ejemplo'''
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$SeleccionarObjetoPorDefinicion([Contenido], {{STR|"[Hoja contable]"}}) {{COM|//devuelve la primera hoja contable que encuentre en la colección especificada}}</code>
+
</blockquote>
+
 
+
<blockquote style="border: 2px solid #993365; background: #FFFFFF; margin:1em 1ex 1ex 1ex; padding: 1em; text-align:left">
+
<code>'''$SeleccionarObjetosPorDefinicion'''(C: {{T|colección}}, D: {{T|definición}}): {{T|matriz}}</code></blockquote>
+
 
+
:*'''Descripción'''<p>Devuelve una matriz con todos aquellos objetos de la colección que cumplan la definición.</p>
+
 
+
:*'''Ejemplo'''
+
 
+
<blockquote style="border: 1px dashed #2F6FAB; background: #FFFFFF; margin:1em 15ex 5ex 15ex; padding: 1em; text-align:left;">
+
<code style="background: #FFFFFF">$SeleccionarObjetosPorDefinicion([Contenido], {{STR|"[Hoja contable]"}}) {{COM|//devuelve todas las hojas contables contenidas en la colección}}</code>
+
</blockquote>
+

Revisión actual del 14:46 13 feb 2012

Conversión de tipos

Funciones que transforman el resultado de una expresión a un tipo de dato específico.

$Entero - $Fecha - $Logico - $Real - $Texto

Indicadores de tipo

Funciones que indican el tipo de una expresión. La utilidad de estas funciones radica en devolver el tipo de expresiones que no son evaluadas, como pueden ser aquellas en las que se accede al dominio de algún componente o recurso.

$Coleccion - $Lista - $Tabla - $Vinculo

Tratamiento de textos

Funciones que nos permitirán realizar operaciones con datos de tipo texto.

$CopiarTexto - $LongitudTexto - $Texto

Tratamiento de números

Compendio de funciones que permiten tratar datos numéricos, tanto enteros como reales. Se podrá obtener la parte decimal o entera de un real, saber si un número es par o impar, etc.

$Entero - $EsPar - $Max - $Min - $ParteDecimal - $ParteEntera - $Real - $Redondeo

Tratamiento de horas y fechas

Es muy habitual trabajar con fechas a la hora de programar un sistema de información en ODL. Por ello, se han creado numerosas funciones que nos permitirán manejar el tipo de dato "fecha". Por ejemplo, podremos obtener datos concretos como el día, mes o año, comparar dos fechas o calcular una fecha a partir de otra, entre otras.

$Año - $CalculaFecha - $Dia - $DiferenciaDias - $DiferenciaFechas - $Fecha - $FormatoFecha - $Hoy - $Mes

Tratamiento de moneda

$Cifra - $Moneda

Manejo de listas de comprobación

Es posible que en el desarrollo de nuestro sistema de información en ODL nos interese realizar ciertas operaciones con las listas de comprobación. Una operación frecuente es invertir la selección de las filas. Accede al siguiente artículo para conocer, por ejemplo, esta función de uso muy común.

$InvertirSeleccion - $Lista

Creación de matrices

Crea matrices a partir de otros componentes o recursos de ODL. Además, se podrán crear matrices a partir de los resultados obtenidos en una petición a la base de datos.

$Matriz(texto) - $Matriz(componente) - $Matriz(enumerado,exportación) - $MatrizSQL

Cálculo con matrices

Conjunto de funciones para realizar diversos cálculos sobre matrices. Sumar columnas, calcular medias, buscar un elemento concreto, buscar el valor máximo o mínimo de una columna, etc.

$Elemento - $Max - $Media - $Min - $NumeroColumnas - $NumeroFilas - $Suma

Manejo de matrices

En el siguiente artículo se muestran varias funciones que permiten realizar diversas operaciones con matrices. Por ejemplo, filtrar una matriz con un cierto valor, ordenar una matriz, renombrar columnas, etcétera...

$AgruparSuma - $Columnas - $ConcatenarColumna - $EliminarFilasRepetidas - $Filtrar - $MatrizFila - $Ordenar - $RenombrarColumnas - $AsignarElemento

Manejo de colecciones

En este artículo facilitamos las funciones que nos permitirán seleccionar un objeto o varios de ellos de una colección concreta, cumpliendo con una definición determinada.

$SeleccionarObjetoPorDefinicion - $SeleccionarObjetosPorDefinicion

Funciones especiales

Conjunto de funciones que entre sí no tienen mucho en común, o que no actúan sobre un componente o recurso concreto. No por ello carecen de la misma importancia que las demás. Te recomendamos que accedas, quizás la función que buscas se encuentre en este artículo.

$Crear - $Decision - $DRC - $EsTipo - $Si - $VariableCentro

Ejecución de sentencias SQL

En este artículo se muestran dos funciones que nos permitirán obtener, o bien una matriz con los valores obtenidos de una sentencia SQL, o bien el primer valor encontrado.

$MatrizSQL - $ValorSQL

Funciones de método

Aquí se especifican las funciones que se utilizan en el desarrollo de los métodos.

$Crear - $Ejecutar - $Firmar - $Guardar - $Lanzar - $Mover - $Sellar