Prohibited LIST Column Characters

Hi !
If you take the column name in the group in brackets “[Name]” and save it, it will destroy the list format.
The original idea of SV or another mistake of the Sharp Development environment? :wink:

You found the Easter Egg. :slight_smile:

Did you tell SV about it?

The [Brackets] are used for List Group’s in the FORMAT string. They could have probably made the parsing work since they are between ~ Tildes ~ that delimit the ~Heading~. They work when there isn’t a surrounding Group.

You will run into some other characters that break the Format parsing… Obviously you cannot use a Tilde in the Heading. You cannot have a Picture with [ ] like @p[####] ####p@ inside a Group but can have @n4~[~@.

Q Default Tool Tip is free text that as similar problems like Q''No [brackets] inside a Group'', and no single quotes Q''This Year''s Date''.

The way to Fix the bad Format() is to Edit it in the Window… Editor. You do need to understand the FORMAT encoding, it’s not that hard and worth the effort. All run together wrapped it can be hard to see. I have a List Format Parser that splits it into 1 Column per Line that makes it easier to see. It’s also a big help learning the Format encoding. It does split your example correctly:

I would guess a flaw of the new Designer. To verify change the FORMAT() code directly to add [Brackets] then compile and see if it works. You could also test by setting ?List{PROPLIST:Header,2}='[test]' at runtime.

Thank you. So the worst case here is the limitations of the FORMAT() operator.
In this case, the input of such characters and their combinations should be prohibited ! :frowning:

I tested and the RTL parses the Format('...[... ~[Product SKU]~)... just fine and displays it (see below). So the fix should be to the new C7+ Window Designer parsing code.

I cannot run the C6 Window Designer on this machine to see if it had the same problem. I would not think Gavin would get it wrong when DAB got it right. Probably a flaw in rewriting the code in C# to render for .Net Window Forms API. Sure the conversion is not perfect, but I am very happy that SV got us to a 32-bit IDE with modern features like floating/docking pads. I can build my 20+ year-old APPs with few changes.


My List Format parser allows pasting in any Format string and displaying a Preview of the LIST. This is all done with runtime processing, so this shows the RTL handles ~[heading]~.


It also shows all the PROPLIST values which as show below PROPLIST:Header contains [Product SKU] showing it works. If you really want to do this I suggest doing it at runtime with PROPLIST:Header.

image

Thank you. I use column names in this style (“[M]”) to replace them with characters that cannot be entered in the editor: Crt(149) / Chr(153). I changed it to “#M#”. A very unexpected problem ! :slight_smile:

I would not use “#M#” because #number# is used in the Format to denote Queue field number change of sequence. That is typically not used in a Template Browse List, but it does work.

Some characters I don’t see used in my Modifier help below: $ % ^ & + - = \ : ; " ` (backtick)

Thanks ! I hadn’t thought of that. :frowning: Is the ‘$M$’ pattern valid ?

The $ is not used as a Format() Modifier character.

You may find $# in pictures e.g. @n$11.2@