.bom

.bom addcategory "categoría"
.bom setcolumn "categoría" "sección" "columna" [...]
.bom data categoría" "sección" "columna=valor" [...]
El mandato .bom añade datos a la Lista de materiales (BOM) para una compilación. Con él puede añadir categorías, secciones y datos.
Categorías
Una categoría es una cabecera impresa en la BOM. Utilice la opción addcategory para especificarlas.
.bom addcategory "categoría"
Secciones
Una sección define columnas de datos dentro de una categoría. Utilice la opción setcolumn para especificar secciones y columnas dentro de las secciones. Los nombres de sección no se imprimen. El conjunto de cabeceras de columnas de esta sección se imprimen al comienzo de una sección. Puede anidar secciones utilizando la opción -p e identificando la sección padre.

Las secciones y las columnas deben definirse antes que las opciones data intente añadirles datos.

.bom setcolumn "categoría" "sección" "columnheader" [...]
.bom setcolumn "categoría" "sección" -p secciónpadre"columnheader" [...]
Datos
Los datos rellenan las columnas definidas en una sección. La sección y las columnas ya deben haberse definido utilizando setcolumn.
.bom data categoría" "sección" "columna=valor" [...]

El ejemplo siguiente muestra el orden en que deben especificarse las categorías, secciones y columnas.


.bom addcategory "Spaceships"
.bom setcolumn "Spaceships" "Section1" "ShipName" "WarpSpeed" "Tonnage"
.bom setcolumn "Spaceships" "Subsection1" -p "Section1" "ShippingDate" "ShippingManifest"
.bom data "Spaceships" "Section1" "ShipName=SpaceShipOne" "WarpSpeed=9" "Tonnage=10000"
.bom data "Spaceships" "Subsection1" "ShippingDate=123" "ShippingManifest=456"
.bom data "Spaceships" "Section1" "ShipName=Freighter" "WarpSpeed=6" "Tonnage=20000" 

Este ejemplo se muestra en la BOM como sigue:

ShipName      WarpSpeed   Tonnage
SpaceShipOne      9        10000
                                   ShippingDate       ShippingManifest
                                       123                  456
Freighter         6        20000
Al igual que con otros mandatos de punto, puede utilizar variables de entorno en el mandato. Un mandato como el que sigue
.bom data "Spaceships" "${SECTION}" "ShipName=${NAME}" "WarpSpeed=${SPEED}" "Tonnage=${TONNAGE}"

llena la BOM con datos cargados en variables de entorno por mandatos anteriores.

Puede crear cualquier número de columnas, pero el sistema no escribe ninguna línea en la BOM hasta que la última columna está llena.

Si omite una columna de una línea de datos, el sistema utiliza el valor de la fila anterior, como ilustra el ejemplo siguiente.
.bom addcategory "Spaceships"
.bom setcolumn "Spaceships" "Section1" "ShipName" "WarpSpeed" "Tonnage"
.bom data "Spaceships" "Section1" "ShipName=SpaceShipTwo" "WarpSpeed=3" "Tonnage=30000"
.bom data "Spaceships" "Section1" "ShipName=Tanker" "Tonnage=50000"

El resultado es que el valor WarpSpeed de SpaceShipOne se repite:
ShipName      WarpSpeed   Tonnage
SpaceShipTwo      3        30000
Tanker            3        50000

Comentarios