There’s some odd complexities in the renaming the playback modes for simulation projects. These aren’t particularly intuitive, so I thought I’d document them here, to save everyone the trouble of trying to work it out themselves.
When you create a simulation project, the deliverables for the playback modes are either created automatically when you save the project (depending upon the settings in Tools > Settings > Producer > Save > Standard), or when you select that mode from the Macro Modes button in the project editor. In either case, the deliverables are named according to the project name, followed by the playback mode, as shown below:
Now let’s say you need to change the name of the simulation. You can do this by right-clicking on the project (the entry highlighted in blue above) and selecting Rename from the shortcut menu, or by single- clicking on the project to select it, and pressing F2. If you do this, then the new name is automatically rippled down to the deliverables.
You can also rename a simulation project by editing the project’s Name property. However, if you do this, only the project’s name is changed – the deliverables are unaffected. Effectively, you are breaking the link between the project’s name and the deliverables’ names.
Even if you go back and change the simulation name using the first method (of the shortcut menu or F2), the change will no longer be reflected in the deliverables. If you want to change the names of the deliverables after changing the project’s Name property, you will need to change them individually, which you can only do via the deliverables’ individual Name properties (there is no shortcut menu or F2 option for the deliverables) – and once you do this, the deliverables will always use the names you give them. Alternatively, you can delete all of the deliverables, and when Enable Now recreates them (when you save the project), it will create them with new names that are again tied to the project name.
Interestingly, the default (not changed via the project’s Name property) project-name-based-names are not used as-is in the Trainer. Here, only the playback mode is used:
However, there is a hidden pitfall in the renaming process. As noted above, if you change the project’s name via its Name property, the link between the project’s name and the deliverables’ names is broken. As a consequence of this, in the Trainer the deliverable names are then used literally, exactly as they appear in the Producer (and Manager):
This is clearly less than ideal, as it makes it harder to identify which button is for which playback mode – and, as shown here, the name shown on the playback mode buttons may be inconsistent with the actual project name. At this point, the only thing you can do to fix this is to rename the individual deliverables themselves, via their Name properties, or delete them and allow Enable Now to recreate them. And don’t think that you could just manually rename the deliverables to “Demo”, “Practice”, and so on – the deliverable names are used in the reports, so the report will just show that users have been accessing “Demo” with no indication as to what simulation project this is, which is no use whatsoever.
So the bottom line is: If you always want your playback deliverables to be named consistently with the simulation, never change the name via the Name property!
As an added inconsistency, document deliverables are always named after the document type (with no mention of the project’s name), regardless of whether (or how) you rename the project itself:
Furthermore, even if you do rename this document (for example, to give it the same name as the project, which would honestly be more useful in the Trainer), this renaming will be discarded the next time you (re)generate the document, and the document will be (re)named to the document type again. So here, you should either never rename the document, or be prepared to rename it every time you re-generate it (which could be painful if you have a lot of simulations and use the bulk document generation option).
(With thanks to Michael A. at SAP for his clarifications.)