Create names with a NIM name generator
Names tab
Build one or more outputs from filter columns. Each output can use ordered methods, parts, conversions, and iterations to form the value a mapping needs.
At a glanceDirect link to At a glance
On the Names tab, choose a source filter, add an output in Names, and assemble its method from Parts. The Results pane previews values from the selected records before you save. Once the output looks right, use it in a mapping. Add a uniqueness check if the target value must avoid existing values, or combine multiple outputs under Multi-value names.
| Part of the screen | What it controls |
|---|---|
| Columns | Source values available from the selected filter. |
| Names | Named outputs, such as username or mail. |
| Methods and Parts | Ordered candidate patterns and the source or literal text that forms each pattern. |
| Conversion | Changes to one selected part, such as case, spacing, or length. |
| Iteration | Additional candidates when the configured method needs them. |
| Results | A preview of generated values for source records. |
For example, a method can shorten Aaron to a, lowercase Bailey to bailey, and join the parts as abailey. Check the format and source data in Results before using the name in a target system.
Create a name generatorDirect link to Create a name generator
Choose the source filterDirect link to Choose the source filter
- Go to Processing > Name Generation and select Add.
- Enter a descriptive Generator Name and select Create.
- Select the Filter that returns the attributes needed to build the value. Its available columns appear in the Columns pane.
Add a method and its partsDirect link to Add a method and its parts
- In Names, select Add and enter an output name such as
username. - In Methods, select Add for that name.
- Drag source columns into the method's Parts and arrange them in the required order.
- Select a part and apply conversions to produce the intended result.
For example, a first-name part shortened to its first character and a lowercased last-name part turn Aaron Bailey into abailey.
Validate the outputDirect link to Validate the output
Use the Results pane to check representative records, including missing values, punctuation, and names that might produce the same output. Add another method or an iteration if the output must handle collisions, then select Save. Configure the actual field checks on the Uniqueness tab.
Outcome
The name generator is available as a source in mappings that use its filter.
Restrict a method by conditionDirect link to Restrict a method by condition
Use conditions when different groups of people need different name formats—for example, a department-specific username rule.
Choose a source column whose values are reliable for every group you intend to handle. Preview at least one record for each condition and one that should match no condition, so an unexpected blank or alternative value is visible before the generator is used in a mapping.
Enable condition-based methodsDirect link to Enable condition-based methods
- Edit the name generator.
- Select Use Condition Based On.
- Select the source attribute that decides which method applies, such as
organizational_unit.
Match each method to a valueDirect link to Match each method to a value
Enter the required Condition value on each method. NIM applies only methods whose condition matches the selected source-attribute value.
Verify representative recordsDirect link to Verify representative records
Use the Results pane to confirm the expected method appears for each condition value, then save the generator.
Edit or remove a name generatorDirect link to Edit or remove a name generator
- Go to Processing > Name Generation.
- Select Edit Name Generator to update its filter, names, methods, or rules; use the relevant section above as a guide.
- Select Remove Name Generator and confirm to delete one that is no longer required.
Before removing a generator, check mappings that may still use its outputs.
If you change the selected filter, review the generator's parts and preview again: available columns and their values depend on that filter.
Copy or rename a name generatorDirect link to Copy or rename a name generator
To copy a generator, select Copy Object next to it in Processing > Name Generation. NIM creates a copy with a numbered suffix, such as _01.
To rename one, select Rename Object, enter the new name, and press Enter to confirm.
Conversion referenceDirect link to Conversion reference
Conversions transform one method part at a time. Apply them in the order needed, then use the Results pane to verify real source values.
Common patterns include lowercasing a username, removing diacritical marks for a target that does not accept them, and limiting a value to a target field's maximum length. The tables below list the available conversion types; the target system's rules determine which ones you need.
Add text and spacingDirect link to Add text and spacing
| Conversion | Arguments | Result |
|---|---|---|
| Add at begin | Text | Adds text to the beginning. |
| Add at begin if not empty | Text | Adds text only when the part has a value. |
| Add at end | Text | Adds text to the end. |
| Add at end if empty | Text | Adds text only when the part is empty. |
| Add at end if not empty | Text | Adds text only when the part has a value. |
| Add at end if not found | Text; search text | Adds text only when the search text is absent. |
| Add blank at begin/end | — | Adds one space at the beginning or end. |
| Add blank at begin/end if not empty | — | Adds one space only when the part has a value. |
| Add char until length reached | Text; minimum length | Repeats text at the end until the part reaches the length. |
| Conversion: start with text / end with text | Text | Adds text at the beginning or end. |
| Insert after every character | Text | Inserts text after each character. |
Change casing and charactersDirect link to Change casing and characters
| Conversion | Arguments | Result |
|---|---|---|
| Case conversion: convert to lower case / upper case | — | Changes the entire part's case. |
| Case conversion: convert first/last N chars to lower case | Character count | Changes only the selected leading or trailing characters. |
| Case conversion: convert first/last N chars to upper case | Character count | Changes only the selected leading or trailing characters. |
| Case conversion: 1st upper, other unchanged | — | Uppercases the first character only. |
| Case conversion: 1st upper, other characters lower case | — | Formats the part as title case. |
| Conversion remove diacritical marks | — | Replaces accented characters, such as é with e. |
| Conversion: reverse all characters | — | Reverses the character order. |
| Replace argument1 by argument2 | Find characters; replacement | Replaces matching characters, case-insensitively. |
| Replace substring if ends with substring (case insensitive) | Ending text; replacement | Replaces an ending, useful for email domains. |
Remove and retain textDirect link to Remove and retain text
| Conversion | Arguments | Result |
|---|---|---|
| Delete: all blank characters | — | Removes all whitespace. |
| Delete: all non blank characters | — | Keeps only whitespace. |
| Delete all matching characters | Characters | Removes every matching character, case-insensitively. |
| Delete all but the matching characters | Characters | Keeps only the supplied characters. |
| Delete all matching UTF-8 characters | Comma-separated hex codes | Removes characters with those codes. |
| Delete all but the matching UTF-8 characters | Comma-separated hex codes | Keeps only characters with those codes. |
| Delete first/last N characters | Character count | Removes leading or trailing characters. |
| Delete substring | Text | Removes matching text, case-insensitively. |
| Delete substring (case sensitive) | Text | Removes an exact-case matching substring. |
| Delete leading/trailing blank characters | — | Trims whitespace from the beginning or end. |
Shorten a valueDirect link to Shorten a value
| Conversion | Arguments | Result |
|---|---|---|
| Shorten: use first character | — | Keeps the first character. |
| Shorten: use first character of each part | — | Keeps initials from dash- or space-separated parts. |
| Shorten: convert to first/last N characters | Character count | Keeps a specified leading or trailing length. |
| Shorten: remove after first/last matching character | Character | Keeps the value through that character. |
| Shorten: remove before first/last matching character | Character | Keeps the value from that character onward. |
| Shorten: remove after matching text (case insensitive/case sensitive) | Text | Keeps the value through the first matching text. |
| Shorten: remove before matching text (case insensitive/case sensitive) | Text | Keeps the value from the first matching text onward. |
| Shorten: limit total name length | Maximum length | Truncates the generated name at the configured total length. |
| Shorten: limit total name length (remove characters only) | Maximum length | Limits length without truncating numeric values. |
For total-length limits, apply the conversion to the last relevant method part and before a part that contains an iteration.