SUPPORT-17888 Story Template issue involving Callout Internal Ref w Custom Naming
Already submitted a support request, but re-posing here per instructions.
Can you combine Callout Internal Referencing and Custom Naming? (it almost works, see below)
Say you have tables: [Table B C] with two columns, and b and c, each with a single column.
Call table b and c:
[b] > prints B
[c] > prints C
Call Table B C using Callout Internal Referencing:
[Table <b> <c>] > prints col1 col2
If I Call [Table B C] in the story template directly, the row and cell names work as expected:
[:Table B C:row] > prints col1 col2
[:#row|1#:cell1] > prints col1
[:#row|2#:cell2] > prints col2
<cell1> > prints col1
<cell2> > prints col2
Now I want to use Callout Internal Referencing in conjunction with Custom Naming (seems to work):
[:Table <b> <c>:row] > prints col1 col2
<row> > prints col1 col2
However, when I try to access the columns, this is what I get:
#row|1# > doesn't print col1, but instead prints NO DATA IN COLUMN 1
#row|2# > doesn't print col2, but instead prints NO DATA IN COLUMN 2
Which then prevents me from naming the cells from the row as before:
[:#row|1#:cell1] > prints col1
[:#row|2#:cell2] > prints col2
If not supported, can it be added/fixed?
Or suggest an alternative?
One alternative which I'm loath to try is to enumerate the combinations of table B and C as part of the original table with two columns by adding columns for tables b and c.
BONUS feature requets:
1) Have the ability to specify a fallback table to use when the resolved Callout Internal Referencing table doesn't exist. Maybe with a syntax like:
[Table <b> <c>!Default Table <foo>!Default Table <bar>!...!Default Final] so if [Table <b> <c>] doesn't resolve to an existing table, it would check for [Default Table <foo>] and then [Default Table <bar>] etc and stop checking at [Default Final] (and allow us to name the results using the existing syntax in combination [:...:name])
2) Also, might be useful to be able to do counters like so:
[:0:X] > prints 0 (already works)
[:[<X>]!0:X] and/or [:<X>!0:X] > prints 0 (initializes name X with value 0 if it doesn't already have a value and doesn't resolve to a table name)
[:[<X>+1]:X] > prints 1 (sets name X with the result of resolving [X+1], the general form would be [X+n] )