Does anyone know of a way to dynamically change the column headings of a table box. I have a table box for a detail table that has about 10 columns and depending on some of the values in the header record I would like to change the captions of some of the column headings. I’ve played around with the Caption function but that only appears to work on form captions. I’ve also looked at the TableCaption and FieldCaption properties but those can’t be changed at runtime either. Any help would be greatly appreciated. Mark Keener Mark Keener Automated Number Crunching Inc Dayton, Ohio - USA mark@anc-inc.com (937) 439-9050
Insert the columns twice (with different captions) and switch them on/off based on your header. I know it isn’t the most beautiful programming technique, but Navision won’t let us change many properties in runtime (which IMHO they really should). Dennis van Es PerCom: Research & Development BV The Netherlands
Add it to the list! -jp
You can create ten non-editable text fields that are placed on top of the column headers. Set the column header ForeColor to the same as the BackColor to hide the existing column text. Now you just need to code to match the text fields XPOS, YPOS, HEIGHT and WIDTH to match that of the column header. Oh yeah, and you’ll need to handle column hiding and reordering. After all that, you can feed the text fields the variables you want.
If you really need this you can use Matrix Box object. You can use matrix box based on Integer table and set range in the OnOpen trigger : CurrForm.Matrix.MatrixRec.setrange(Number,1,10); You can create Array of descriptions and set SourceExpr in the description as Array[CurrForm.Matrix.MatrixRec.Number]. Then you can change description of any field in runtyme using code: Array[j] := ‘Whatever you want’; CurrForm.Update; You can assign any variable to the Matrix Box field and calculate it in the OnAfterGetRecord trigger of Matrix Box (not Form). Good Luck. (if you really need it) Valentin Gvozdev BMI Inc. Edited by - Valentin Gvozdev on 3/22/00 3:42:35 AM