A data migration planned for this weekend required us to have detailed knowledge of the use of the -ignore_valuelists parameter.
The definition of this, is that if included in the syntax the new file created uses custom value lists from the clone instead of the source file. By not including it, the new file uses the values lists from the source file.
The behaviour meets our requirements, which we were pleased about, but there are a couple of ‘gotchas’ that perhaps not everyone is aware of. Here are our test results:
Results observed in the new file created:
Retained:
For value lists with matching names, typed-in values within ‘Use custom values’, regardless as to what was in the clone, retain the values from the original source file
Change of position within the ‘Manage Value Lists’ list doesn’t affect the contents of the value list, source file values retained
Value Lists Changed
Value list that is changed from ‘Use custom values’ to ‘Use values from field’ (and presumably ‘Use value list from another file’) treats this as a structural change and the new file inherits the version from the clone (the original content is retained in ‘Use custom values’, but the radio button is no longer selected, which is the same behaviour had this been carried out manually). Swapping from ‘Use values from field’ to ‘Use custom values’ behaves the same, replacing the source value list with the clone’s.
If a value list has been renamed in the clone AND the ‘Use custom values’ contents are ALSO changed, this is again treated as a structural change and the new file uses the values from the clone. Fields retain renamed value lists. (Beware if you have a customer who can change value list names!)
If a value list has been renamed in the clone AND the ‘Use custom values’ contents have NOT been changed, then the new file uses the clone’s value list name, as above, but of course the data is the same in both.
As mentioned, the results are pleasing to us, but a couple of the results may catch one or two of us out.
Regards
Andy