Sorry! I was snoozing on my couch.
Oh... each individual field...
Yeah that is a pain. But you just have to work through the logic.
Macro2: $If(<Album Library>=1,<Publisher>
- <Genre>,Macro3)
$IsNull(<Publisher>,,$IsNull(<Genre>,," - "))So for the dash, the logic here is simple. You only need a dash is there is a value for both <Publisher> and <Genre>.
If either of them is missing the dash is not needed.
For these smaller macros it isn't all that bad. The larger one needs more attention.
Macro3: $If(<Album Library>=2,<Developer>
- <Console>
- <Sound Team>
- <Original Album>,Macro4)
1st dash: $IsNull(<Developer>,,$IsNull(<Console><Sound Team><Original Album>,," - "))
2nd dash: $IsNull(<Console>,,$IsNull(<Sound Team><Original Album>,," - "))
3rd dash: $IsNull(<Sound Team>,,$IsNull(<Original Album>,," - "))
The first dash can only appear if <Developer> is not null and all the other fields after it are not empty.
The same logic applies for each dash after the first.
After taking out the dashes in the original macros and replacing them with the appropriate code it becomes:
$IsNull(<Album Library>,,$If(<Album Library>=1,<Publisher>$IsNull(<Publisher>,,$IsNull(<Genre>,," - "))<Genre>,$If(<Album Library>=2,<Developer>$IsNull(<Developer>,,$IsNull(<Console><Sound Team><Original Album>,," - "))<Console>$IsNull(<Console>,,$IsNull(<Sound Team><Original Album>,," - "))<Sound Team>$IsNull(<Sound Team>,,$IsNull(<Original Album>,," - "))<Original Album>,$If(<Album Library>=3,<Comment>$IsNull(<Comment>,,$IsNull(<Publisher>,," - "))<Publisher>,$If(<Album Library>=4,<Work>$IsNull(<Work>,,$IsNull(<Original Year>,," - "))<Original Year>,)))))
Hope I did not fat finger something in there and it works out of the preverbal box.