Puede combinar algunas de las variables para obtener resultados más complejos. Consulte los ejemplos de uso de variables en diferentes escenarios organizados por su complejidad y caso de uso.
En este artículo:
Patrones variables comunes y sus casos de uso:
| Patrón | Caso de uso | Ejemplo |
|---|---|---|
{#variable}...{/variable} |
Recorrer los elementos en bucle | {#markups}{name}{/markups} |
{#!variable}...{/} |
Mostrar cuándo la variable está vacía | {#!amount}$0.00{/} |
{#variable}...{/}{#!variable}...{/} |
Mostrar valor o valor por defecto | {#previousAmount}{previousAmount}{/}{#!previousAmount}0{/} |
{variable | filter:"field":"value"} |
Filtrar datos | {items | filter:"type":"SOV"} |
{variable | sumBy:"field"} |
Calcular totales | {items | sumBy:"approved"} |
{#condition}...{/} |
Visualización condicional | {#amount!="0.00"}{amount}{/} |
{variable | groupItemsByXCO: 'type'} |
Agrupar por tipo de orden de cambio | {items | groupItemsByXCO: 'COR'} |
Empiece aquí si es la primera vez que utiliza variables en plantillas de documento. Estos ejemplos cubren conceptos fundamentales que se aplican a todos los tipos de documentos.
Puede utilizar variables y presentar los datos en forma de tabla con columnas y encabezados. A continuación se muestra un ejemplo de sintaxis:

Utilice la variable de sección de apertura. Empiece por # (por ejemplo, {#markups}) y finalice con / (por ejemplo, {/markups}).
Uso incorrecto:

Uso correcto:

Entre las variables de apertura y cierre, puede enumerar todos los datos necesarios, como {name} o {description}.

El resultado en el documento generado:

Escenario: utiliza variables como {previousAmount} y {materialsStored} en la plantilla de documento, pero, al generar documentos, algunas columnas se muestran en blanco en lugar de mostrar los valores "$0".
Para mostrar un valor por defecto cuando una variable está vacía o en blanco, utilice expresiones condicionales con el patrón siguiente:
{#variableName} {variableName} {/}{#!variableName}default_value{/}Por ejemplo, para mostrar "0" cuando {previousAmount} está en blanco:
{#previousAmount} {previousAmount} {/}{#!previousAmount}0{/}Esta expresión condicional funciona de la siguiente manera:
{#previousAmount}: si previousAmount tiene un valor, mostrarlo{previousAmount}: el valor actual de la variable.{/}: cerrar la primera condición{#!previousAmount}: si previousAmount NO tiene ningún valor (está en blanco o vacío)0: mostrar "0" como valor predeterminado{/}: cerrar la segunda condiciónPuede aplicar este patrón a cualquier variable donde desee mostrar un valor predeterminado en lugar de celdas en blanco, como:
{#materialsStored} {materialsStored} {/}{#!materialsStored}$0.00{/}{#currentAmount} {currentAmount} {/}{#!currentAmount}0{/}Estos ejemplos se organizan por tipo de documento para ayudarle a encontrar soluciones relevantes para su caso específico.
Ejemplos para personalizar hojas de cálculo y documentos de solicitud de pago.
Para eliminar elementos de línea vacíos de una solicitud de pago, utilice la expresión condicional {#amount!="0.00"} al inicio de una tabla y {/} al final de la línea. Por ejemplo:

Para eliminar los subtotales de las solicitudes de pago o de los contratos, puede introducir los elementos de la línea de pago con {#children.length===0}{xxx}{/}. Por ejemplo:

Escenario: Ha creado un tipo de orden de cambio denominado "Transferencias de tolerancia".

Desea ver los cambios de propietario aprobados para estas tolerancias en la hoja de cálculo de Excel. ¿Cómo se hace?
Escriba "Orden de cambio del propietario" para la columna de la hoja de cálculo de Excel.

Aplique el nuevo tipo a una OCO.

Asigne el nombre al tipo en la hoja de cálculo de Excel.

Escenario: desea crear una nueva ficha en el plantilla de hoja de cálculo de solicitud de pago de costes por defecto que muestre solo los elementos planificados, sin mostrar los importes de los subtotales.
Para añadir una nueva ficha sin subtotales a la plantilla de hoja de cálculo de la solicitud de pago de costes, utilice el siguiente patrón de variables:
{#children.length===0}{xxx}{/}Esta expresión condicional asegura que solo se muestren los elementos de línea sin subtotales en la ficha de la hoja de cálculo generada. {xxx} representa los campos de datos específicos que desea incluir para cada elemento de línea.
Caso de uso: esto resulta especialmente útil cuando desea proporcionar a los subcontratistas una vista clara de los elementos de trabajo individuales sin la complejidad de los cálculos de subtotales.
Escenario: desea crear una nueva ficha en la plantilla de hoja de cálculo de la solicitud de pago de presupuestos por defecto que agrupe los elementos por COR (solicitud de orden de cambio) sin mostrar los detalles de los elementos de coste individuales.
Por ejemplo, para añadir una nueva ficha denominada "Detalles opcionales agrupados por COR" a la plantilla de hoja de cálculo de la solicitud de pago de presupuestos, utilice el siguiente patrón de variables:
{#payment.lineView.rootItems|groupItemsByXCO: 'COR'}{number}{/payment.lineView.rootItems|groupItemsByXCO: 'COR'}Esta variable agrupa los elementos de línea del pago por su COR asociada y muestra solo los números de COR sin los detalles del elemento de coste subyacente.
Características principales:
Ejemplos para personalizar documentos de órdenes de cambio, incluidas RFQ, ROR y OCO.
Escenario: Desea crear un documento que contenga los comentarios durante la vida útil de una orden de cambio.
El ejemplo muestra {#rfq.comments} como etiqueta de apertura para las variables y {/rfq.comments} como etiqueta de cierre. Las otras variables relacionadas deben estar entre estas dos variables.
Por ejemplo, una RFQ con la siguiente sección de comentarios:

Añadir una tabla a un documento de Word con lo siguiente:

Trae como resultado:

En la plantilla de documento solo se debe rellenar una línea de una tabla. El software crea la tabla con la información especificada basándose en los datos de Cost Management.
Puede organizar las OCO y las RCP según la tabla de planificación de valores del contrato principal en la plantilla de documento. En el caso de las RCP, utilice este patrón:

En el caso de las OCO, reemplace rco por oco.
Escenario: Va a crear un documento de orden de cambio (por ejemplo, OCO) y desea que tenga dos tablas independientes. Una sería para los elementos de coste normal con un subtotal y, la otra, para los elementos de coste de marca de revisión. Desea añadir también el precio total de las órdenes de cambio. ¿Cómo se hace? A continuación, se muestra un ejemplo de las variables utilizadas en un documento:

Para mostrar el número de COR y OCO asociado, utilice las siguientes variables:
{this.costItem.corNumber}{this.costItem.ocoNumber}
Resultado:

Ejemplos para personalizar documentos de contrato y Planificación de valores.
Escenario: Desea crear un contrato con solo el subtotal de subelementos de SOV mostrados. No desea que un subcontratista pueda ver un elemento principal. Para ello, utilice estas variables de la plantilla de documento:

Además, no desea mostrar los valores de Coste unitario e Importe como 0 $. Puede reemplazar 0 $ por la palabra "Incluido". ¿Cómo se hace? Enriquezca variables ya utilizadas:

El resultado del contrato generado tendrá el aspecto siguiente:

Para hacer referencia a un código de presupuesto y un nombre en la plantilla de documento, utilice esta fórmula:

Por ejemplo, cuando la planificación de valores del contrato tiene este aspecto:

La fórmula presentada genera lo siguiente:

Estos ejemplos demuestran un uso sofisticado de variables para requisitos complejos de personalización de documentos.
Técnicas avanzadas de filtrado para mostrar u ocultar datos específicos en los documentos.
Puede utilizar la función de filtro al generar documentos. Por ejemplo, para mostrar únicamente el elemento de Contingencia de riesgo, utilice la variable {#payment.columnView.rootItems | filter:"name":"Risk Contingency"}:

Resultado:

Los miembros también pueden separar la tabla de valores original con todas las SCO aprobadas en dos hojas independientes.
Para generar una hoja que incluya únicamente las SOV originales, utilice la siguiente variable:
{#payment.lineView.rootItems | filter:"associationType":"SOV"} {/payment.lineView.rootItems | filter:"associationType":"SOV"}Para generar una hoja que incluya únicamente las SCO aprobadas, utilice la siguiente variable:
{#payment.lineView.rootItems | filter:"number":"Change Orders"} {/payment.lineView.rootItems | filter:"number":"Change Orders"}
En situaciones en las que los administradores no desean que el coste de contingencia se muestre en el documento generado, se pueden utilizar filtros:

Resultado:

Técnicas avanzadas para calcular totales y realizar agregación de datos en los documentos.
La función sumBy ayuda a añadir valores dentro del conjunto de datos.
Ejemplo 1: calcule el subtotal de los valores aprobados de los elementos de coste normal de cada PCO.
{#oco.pco}{regular | sumBy:'approved'}{/oco.pco}Ejemplo 2: calcule el total de los valores aprobados de todos los elementos de coste de cada PCO.
{#oco.pco}{this | getAll: "costItems" | sumBy: "approved"}{/oco.pco}
La función sumBy es especialmente útil cuando se necesita mostrar totales calculados que no están disponibles directamente como variables individuales.