.bom

.bom addcategory "kategorie"
.bom setcolumn "kategorie" "abschnitt" "spalte" [...]
.bom data kategorie" "abschnitt" "spalte=wert" [...]
Mit dem Befehl .bom werden der Stückliste für einen Build Daten hinzugefügt. Sie können damit Kategorien, Abschnitte und Daten hinzufügen.
Kategorien
Bei einer Kategorie handelt es sich um Kopfdaten, die in der Stückliste ausgegeben werden. Verwenden Sie die Option addcategory, um sie anzugeben.
.bom addcategory "kategorie"
Abschnitte
Ein Abschnitt definiert Spalten mit Daten innerhalb einer Kategorie. Mit der Option setcolumn können Sie Abschnitte und Spalten in den Abschnitten angeben. Abschnittsnamen werden nicht ausgegeben. Die Spaltenüberschriften für den Abschnitt werden am Anfang eines Abschnitts ausgegeben. Sie können Abschnitte verschachteln, indem Sie die Option -p verwenden und den übergeordneten Abschnitt angeben.

Abschnitte und Spalten müssen definiert werden, bevor die Option data versucht, ihnen Daten hinzuzufügen.

.bom setcolumn "kategorie" "abschnitt" "spaltenüberschrift" [...]
.bom setcolumn "kategorie" "abschnitt" -p übergeordneter_abschnitt"spaltenüberschrift" [...]
Daten
Daten füllen die in einem Abschnitt definierten Spalten. Abschnitt und Spalten müssen bereits mit setcolumn definiert worden sein.
.bom data kategorie" "abschnitt" "spalte=wert" [...]

Das folgende Beispiel zeigt die Reihenfolge, in der Kategorien, Abschnitte, Spalten und Daten angegeben werden müssen.


.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" 

Dieses Beispiel wird in der Stückliste wie folgt angezeigt:

ShipName      WarpSpeed   Tonnage
SpaceShipOne      9        10000
                                   ShippingDate       ShippingManifest
                                       123                  456
Freighter         6        20000
Wie mit anderen Befehlen dieser Art können in dem Befehl auch Umgebungsvariablen angegeben werden. Mit einem Befehl wie
.bom data "Spaceships" "${SECTION}" "ShipName=${NAME}" "WarpSpeed=${SPEED}" "Tonnage=${TONNAGE}"

wird die Stückliste beispielsweise mit Daten gefüllt, die zuvor über andere Befehle in Umgebungsvariablen geladen wurden.

Sie können eine beliebige Anzahl an Spalten erstellen, doch kann in der Stückliste erst dann eine Zeile geschrieben werden, nachdem die letzte Spalte mit Daten gefüllt wurde.

Wenn Sie eine Spalte aus einer Datenzeile weglassen, verwendet das System den Wert der vorherigen Zeile, wie im folgenden Beispiel gezeigt.
.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"

Als Ergebnis wird der Wert von WarpSpeed aus SpaceShipOne wiederholt:
ShipName      WarpSpeed   Tonnage
SpaceShipTwo      3        30000
Tanker            3        50000