All SAS macros described in this chapter use a SAS input data set that contains the indented bill of material for all end items of the product line, plant, or company. This data set is referred to as the Indented BOM data set. It is typically the Indented BOM output data set created by PROC BOM. See Indented BOM Data Set in Chapter 3 for details about the variables and special structure of this SAS data set. Not every variable in the Indented BOM data set is needed in all macros. The variables required by each macro depend on the requirements of the macro, and are listed in the corresponding section describing each macro. Note that the macros depend heavily on the form of the Indented BOM data set that
contains the complete indented bill of material for each end item.
lists the components of each indented bill of material in the depth-first order.
Refer to Aho, Hopcroft, and Ullman (1983) for details about depth-first ordering. See also Indented BOM Data Set in Chapter 3 for details regarding the records in this data set.
A simple Indented BOM data set, IndBOM
, is displayed in Figure 4.1. It contains two indented bill of material, one for the item 'A101
' and the other for the item 'LA01
'. You can easily check that each indented bill of material in this data set lists its components in depth-first order. The
data set IndBOM
is used as the Indented BOM input data set in all examples in this chapter.
You specify the name of the Indented BOM data set using the IN= parameter. If you do not provide a name when calling a postprocessing macro, the macro uses the most recently created SAS data set as the Indented BOM data set.
One SAS macro, %BOMTCNP
, requires an additional data set that contains the product structure record for the new parent-component relationship that
will be created while performing the copy-and-paste transaction. This data set is referred to as the Product Structure data
set. See Product Structure Data Set in Chapter 3 for details about this SAS data set.
Another SAS macro, %BOMTSAE
, requires another data set that contains the part master record for the item specified in the ROOT= parameter of the macro.
This data set is referred to as the Part Master data set. See Part Master Data Set in Chapter 3 for details about this SAS data set.
Figure 4.1: Indented BOM Data Set (IndBOM)
ABC Lamp Company |
Indented Bill of Material |
Obs | _Level_ | _Parent_ | Paren_ID | _Part_ | Part_ID | Desc | QtyPer | Fscrap | Qty_Prod | Unit | LeadTime | Tot_Lead | LTOff | Tot_Off | SDate | EDate | _Prod_ |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | 0 | . | A101 | 0 | Three-way socket assem. | . | . | 1 | Each | 1 | 1 | . | 0 | . | . | A101 | |
2 | 1 | A101 | 0 | 1500 | 1 | Steel holder | 1 | 0.0 | 1 | Each | 2 | 3 | 0 | 0 | . | . | A101 |
3 | 2 | 1500 | 1 | 1400 | 2 | 1/4-20 Screw | 2 | 0.0 | 2 | Each | 1 | 4 | 0 | 0 | . | . | A101 |
4 | 1 | A101 | 0 | 1601 | 3 | Three-way socket | 1 | 0.0 | 1 | Each | 2 | 3 | 0 | 0 | . | . | A101 |
5 | 1 | A101 | 0 | 1700 | 4 | Wiring assembly | 1 | 0.0 | 1 | Each | 1 | 2 | 0 | 0 | . | . | A101 |
6 | 2 | 1700 | 4 | 2200 | 5 | 16-Gauge lamp cord | 12 | 0.1 | 12 | Feet | 2 | 4 | 0 | 0 | . | 07APR2001 | A101 |
7 | 2 | 1700 | 4 | 2210 | 6 | 14-Gauge lamp cord | 12 | 0.1 | 12 | Feet | 2 | 4 | 0 | 0 | 08APR2001 | . | A101 |
8 | 2 | 1700 | 4 | 2300 | 7 | Standard plug terminal | 1 | 0.0 | 1 | Each | 1 | 3 | 0 | 0 | . | . | A101 |
9 | 0 | . | LA01 | 8 | Lamp LA | . | . | 1 | Each | 2 | 2 | . | 0 | . | . | LA01 | |
10 | 1 | LA01 | 8 | A100 | 9 | One-way socket assem. | 1 | 0.0 | 1 | Each | 1 | 3 | 2 | 2 | . | . | LA01 |
11 | 2 | A100 | 9 | 1500 | 10 | Steel holder | 1 | 0.0 | 1 | Each | 2 | 5 | 0 | 2 | . | . | LA01 |
12 | 3 | 1500 | 10 | 1400 | 11 | 1/4-20 Screw | 2 | 0.0 | 2 | Each | 1 | 6 | 0 | 2 | . | . | LA01 |
13 | 2 | A100 | 9 | 1600 | 12 | One-way socket | 1 | 0.0 | 1 | Each | 2 | 5 | 0 | 2 | . | . | LA01 |
14 | 2 | A100 | 9 | 1700 | 13 | Wiring assembly | 1 | 0.0 | 1 | Each | 1 | 4 | 0 | 2 | . | . | LA01 |
15 | 3 | 1700 | 13 | 2200 | 14 | 16-Gauge lamp cord | 12 | 0.1 | 12 | Feet | 2 | 6 | 0 | 2 | . | 07APR2001 | LA01 |
16 | 3 | 1700 | 13 | 2210 | 15 | 14-Gauge lamp cord | 12 | 0.1 | 12 | Feet | 2 | 6 | 0 | 2 | 08APR2001 | . | LA01 |
17 | 3 | 1700 | 13 | 2300 | 16 | Standard plug terminal | 1 | 0.0 | 1 | Each | 1 | 5 | 0 | 2 | . | . | LA01 |
18 | 1 | LA01 | 8 | B100 | 17 | Base assembly | 1 | 0.0 | 1 | Each | 1 | 3 | 0 | 0 | . | . | LA01 |
19 | 2 | B100 | 17 | 1100 | 18 | Finished shaft | 1 | 0.0 | 1 | Each | 2 | 5 | 0 | 0 | . | . | LA01 |
20 | 3 | 1100 | 18 | 2100 | 19 | 3/8 Steel tubing | 26 | 0.2 | 26 | Inches | 3 | 8 | 0 | 0 | . | . | LA01 |
21 | 2 | B100 | 17 | 1200 | 20 | 6-Diameter steel plate | 1 | 0.0 | 1 | Each | 3 | 6 | 0 | 0 | . | . | LA01 |
22 | 2 | B100 | 17 | 1300 | 21 | Hub | 1 | 0.0 | 1 | Each | 2 | 5 | 1 | 1 | . | . | LA01 |
23 | 2 | B100 | 17 | 1400 | 22 | 1/4-20 Screw | 4 | 0.0 | 4 | Each | 1 | 4 | 3 | 3 | . | . | LA01 |
24 | 1 | LA01 | 8 | S100 | 23 | Black shade | 1 | 0.0 | 1 | Each | 2 | 4 | 0 | 0 | . | . | LA01 |