You might have to rethink your concept of delimiters. && resolves into & But two dots resolve into two dots. Always. The confusion arises when it looks like you have two dots, but one of them is text and one of them is a delimiter. Take a piece of your troublesome code: &&_uniqDbTable&_n.clnt_nr Macro language treats this as 4 pieces of text: && _uniqDbTable &_n. clnt_nr It resolves each, coming up with: &_uniqueDbTable1clnt_nr This is probably not what you are hoping for. If you wanted it to resolve to: &_uniqueDbTable1.clnt_nr Then Tom's solution is 100% correct ... just add another dot: &&_uniqDbTable&_n..clnt_nr Now the pieces of text are: && _uniqDbTable &_n. .clnt_nr The first dot is a delimiter, delimiting that the name of the macro variable is _n. So this resolves to: &_uniqDbTable1.clnt_nr The second dot remained as text, but now becomes a delimiter for the name of the macro variable _uniqDbTable1. There are a number of possible variations for what you might be hoping for. Perhaps a third dot would be required here. But clarifying how dots/delimiters work is the key issue.
... View more