Customization
OIRs for the are available when an S1000D Product or Library has been created.
S1000D-specific OIRs cover many of the basic Windchill object types as well as the S1000D-specific objects. On Windchill systems that support co-installation of other customizations, this can cause complex definitions based on OIR inheritance. To avoid collisions with other customizations, S1000D OIR attribute rules are loaded at the Product or Library container level where they are used. This creates a sandbox for the S1000D-specific rules. This does mean though that future customizations to an OIR at Site or Organization level may need to be amended for each S1000D Product or Library container in which is it used.
When considering changes to an OIR for all Products or Libraries created from a template, you need to assess how to customize the required Product or Library template.
The first step is to create a custom version of the required Product or Library template. As an authorized user, use the Windchill Navigator to browse to the > table. Use the Save As function to make a copy of any of these S1000D templates:
• S1000D 4.0.1 Product Template (Flat)
• S1000D 4.0.1 Product Template (Master)
• S1000D 4.1 Product Template
• S1000D 4.2 Product Template
• S1000D Library Template
You can then checkout, download, and amend the template’s XML file.
For example, to make a customer-centric change to the data module OIR which initializes the value for Content Holder’s issueType:
1. Change this entry in the Product template’s XML file:
<csvExecuteImport handler=”com.ptc.arbortext.windchill.rules.load.RulesLoadImport.executeImport”>
<csvimportFilename>loadFiles/sisaad/S1000D/oirs/datamodule.xml</csvimportFilename>
</csvExecuteImport>
Change the entry to:
<csvExecuteImport handler=”com.ptc.arbortext.windchill.rules.load.RulesLoadImport.executeImport”>
<csvimportFilename>loadFiles/sisaad/S1000D/[customer-name]/oirs/datamodule.xml</csvimportFilename>
</csvExecuteImport>
2. On the Windchill server, copy the relevant sample load file (in this case datamodule.xml) to the location loadFiles/sisaad/S1000D/[customer-name]/oirs/. Make the required customer-centric customizations to the algorithms for that customer.
For example, to initialize all data modules with an issueType of changed, include this line in the file:
<AttrValue id="issueType" algorithm="wt.rule.algorithm.StringConstant">
<Arg>changed</Arg>
</AttrValue>
3. Save the custom datamodule.xml file.
4. Upload the custom Product template to the > table using the Check In action.
The custom Product template is now listed in the New Product wizard as a customer-based Product template. It enforces the customer-specific rules for the Data Module object type.
If a user creates a Product using that custom template, Data Modules created for the Product will have an issueType of changed.