Introduction

The Clone item view enables users to clone a structure as a way of creating a new one and can be configured to support specific use cases. One example is Configuring a Menu Option for Document Cloning. Having a proper configuration in place can prevent mistakes by users performing the clone operation.


Prerequisites

  • Familiarity with SystemWeaver concepts such as Items, Parts and Attributes, and also with the GUI and common operations of the swExplorer.  
  • Knowledge of XML.
  • You must be assigned to the Architect role to configure the view.

Configuring the View

  1. Go to File > Configure the explorer
  2. On the Item views tab, select Clone item.
  3. Click View example XML and copy the script (also shown below) as a starting point for your configuration. 
  4. Click Edit configuration and paste the script in the Edit XML window. (If there are existing <Config> sections there, just add this new config below them within the <Configs> tag.) 
  5. Modify the script to meet the needs of the use case. (See the explanation of available elements below.)
  6. When you are ready to test and make it available to users, checkmark the Active box. Users must log out and back in to see the new option.


Example Configuration


<Configs>
  <Config id="Id1">
    <ViewSettings>
      <Caption>Letter</Caption>
      <RibbonGroup>Templates</RibbonGroup>
      <Description>Hint shown in the ribbon</Description>
    </ViewSettings>
    <TopItemType>7PRA</TopItemType>
    <IsEditable>False</IsEditable>
    <TraceTopPartType>PPP</TraceTopPartType>
    <CloneParts>
      <Part sid="6PRR" action="clone" traceparttype="QQQ">
        <Include>@ABAN="include"</Include>
      </Part>  
      <Part sid="6REQA" action="include">
        <Ignore>1=1</Ignore>
      </Part>  
      <Part sid="ITLD" action="include"/>
      <Part sid="ADES" action="clone"/> 
      <Part sid="7ICU" action="clone"/>
    </CloneParts>
    <Transformations>
      <Part old="ADCF">DFRE</Part>
      <Part old="UGFS">SSRE</Part>
      <Item old="ADC">DFRE</Item>
      <NamePattern old="Template_%">Copy_%</NamePattern>
      <IgnoreAttribute>GDS</IgnoreAttribute>
      <IgnoreDescription>GDSS</IgnoreDescription>
      <IgnoreNonDefaultAttributes/>
    </Transformations>
  </Config>
</Configs>



Explanation of the Clone Item Configuration Elements

id: This is required and must be unique within the configuration.

Caption: The name of the view. This will appear on the Items ribbon tab as a one-click option for users to use this view. 

RibbonGroup: Enter a name (existing or new) for the ribbon group where the new view option button will appear. 

Description: The optional hovertip that displays for the menu option on the Items ribbon.

TopItemType: The SID for the item type for which this view will apply, i.e., be available.

IsEditable: Defines if the configured settings can be edited or not. Applies to the Part selections.

TraceTopPartType: (Optional). The SID to be used to link the new item to the original item. This part will be created when the new item is created. 

CloneParts: Specify how parts in the part structure  should be treated:

  • Each <Part> element specifies how part types of the parts should be treated, with optional conditions.
  • The sid attribute specifies the part type of the parts to be treated.
  • The action attribute (include/clone) specifies the default action according to the part type.
    • 'include' means that the original item included as parts of the specified type will be included  (as-is) in the cloned structure without being cloned. Note that naturally no part of an included item can be cloned since the entire part structure of the included item will be retained.
    • 'clone' means that the original item will in fact be cloned.
  • The optional sub-elements <Include> and <Ignore> define alternative actions, with conditions specified as an included path expression that must evaluate to either false or true. <Ignore> can be an alternative action to both 'include' and 'clone' actions, while <Include> is only a meaningful alternative to 'clone' actions.
    Part types that are not covered by any Part tag will be ignored by the clone operation, i.e., neither cloned or included.

Transformations: Specify additional transformations to cloned items:

  • Optional <Part> elements change the part type of a cloned part, from the original type as specified by the old attribute, to the one specified by the included string.
  • Optional <Item> elements change the part type of a cloned item in the same way.
  • Optional <Attribute> elements change the item attribute type of a cloned item in the same way.
  • The optional <NamePattern> element can modify the cloned item name.
  • The old attribute specifies the pattern of the name of the cloned item. The "%" wildcard character specifies a part of the original name, which can be used as part of the new name. Any additional characters specified before or after the % must be found in the original name.  If no match can be found, the cloned item will retain the original name.
  • Optional <IgnoreAttribute> elements mean that cloned items will get empty attributes, for attribute types according to the included SID string.
  • Optional <IgnoreDescriptions> elements mean that cloned items will get an empty Description, for item types matching the included SID string.
  • The optional <IgnoreNonDefaultAttributes> means that any non-default attribute in the original item structure will not be included in cloned items.


What's Next? 

To see an example of using TraceTopPartType to create a link between a clone and its origin, see Configuring a Trace to Origin in Clone Item View.