We'll need to create a scan that we'll use to set a T# variable (we'll just use T#1 in our case) to the name of the quotepage (or something close to that name). We'll assume for this example that you have 3 quotepages with names of "GroupA", "GroupB", and "GroupC". The syntax of our scan will be as follows:
SET(T#1, GroupA)
We'll run this can on quotepage GroupA only. This will set the T#1 to the name of our quotepage, "GroupA". Now, we want to repeat this process for quotepage GroupB. Change the syntax of the scan to:
SET(T#1, GroupB)
Also, change the target QP (QuotePage) to GroupB in the scan setup window. Now run the scan again. This will set T#1 to GroupB for all the symbol in the GroupB quotepage. And last, change the scan syntax once again to:
SET(T#1, "GroupC")
And then run the scan on quotepageg GroupC. This will set T#1 to GroupC for all the symbols in the GroupC quotepage.
Now, if you open up your .All Symbols quotepage (or any other quotepage which may contain symbols for your various groups/quotepages, and add the column "T#1" to the quotepage (you can add a column to a quotepage by right-clicking on any existing column heading and choosing "Add Column"). This T#1 column should now display the name of the group/quotepage in which the symbol resides. In the case that a symbol resided in more than one of our groups/quotepages, then it will display the name of the last quotepage which we scanned.
You might prefer to just display a single character in T#1 instead of the whole quotepage name, in which case you'd just use the syntax:
SET(T#1, "A")
T# variables have a character limit of 30 characters, so be careful not to exceed this.
There is a solution which would handle symbols in multiple quotepages. For instance, if a symbol existed in both quotepages "GroupA" and "GroupB", then you might want to see " GroupA GroupB" in your T#1 column. To accomplish this, first run the following scan on your ".All Symbols" quotepage to ensure that the T#1 column is cleared out:
SET(T#1, CLEAR)
Now, repeat the steps we took above, but this time, change the syntax of each scan to the following:
SET(T#1, "%T#1 GroupA")
SET(T#1, "%T#1 GroupB")
SET(T#1, "%T#1 GroupC")
Using this syntax will basically "append" the new text to the end of T#1. Using %T#1 just places the previous value of T#1 into the resulting string. If a symbol resided in all three groups/quotepages, the resulting T#1 would be " GroupA GroupB GroupC".
You can also now sort on this T#1 column by clicking on the column heading to quickly "group" the groups.
Now, in order to force that the T#1 column be present in the quotepage that results from any scan, simply make sure that the T#1 token is present in the tokens list on the right side of the scan window. You can do this by selecting it in the list on the left, then clicking the right-arrow button between the two lists.
At any time, you can view which quotepages an specific symbol resides in, by doing the following. Open a Quick Quote window by clicking the Alt-/ keyboard combination (hold down then Alt key while striking the forward slash "/" key). Now type in the symbol you're interested in so that it becomes selected in the list on the left of the Quick Quote window. Now click the "QP" button just above the list and a list of the quotepages in which that symbol resides will appear. You may double-click on any of the quotepages to open them up.
There are other ways to access the Quick Quote window in case you forget the Alt-/ keyboard shortcut. You can click on the "Quick Quote" button in the main toolbar. Also, each quotepage has a "View a Quick Quote for selected row" button (7th from top in right column) which will bring up a Quick Quote on which ever symbol is currently selected (has the cursor).
See Also
- User Variables
- Text Variables (aka T# Variables)
- V# Variables The numerical cousins of T# Variables.