Hi, I read another post that said the dynamic creation of controls was not supported in FS; are there any plans to support this in the future and create a kind of control array? Thanks, Craig. |
Hi Craig, We are thinking about adding an <iterator/> component. It is at design stage at this moment. We will probably not provide run time API's to create components during run time anytime soon. If you talk about your use case a little maybe we can help with an alternate solution. Hi Yalim, Thanks for info; can you expand on the <iterator> component a little please? The use case that would be best served by runtime created controls is dynamic screens, i.e screens/forms/reports that are completely dynamic; we would just employ a similar workaround to what we did in Oracle Forms which is to have a Form with many items, say 100 or 200 items and only make those that are required visible. Thanks, Craig
(29 Apr '13, 03:51)
Craig
Hi Craig. In most use cases of this sort, the screen is not 100% dynamic i.e. it is not like you don't have a clue what it will look like during design time. (Hence you could build it with Forms.) Usually the case is that the screen consists of a number of smaller screens where only a subset of them are shown for each user. I think this more common use case is best handled by creating the mini screens as panels and showing the relevant ones during run-time. (and enabling disabling the relevant components)
(29 Apr '13, 04:02)
Yalim Gerger ♦♦
This approach has benefits: 1) You get to implement your screens declaratively. 2)You see the Panels and their logical dependencies in the IDE. This really helps for maintenance purposes. Otherwise your entire UI is in the code which can be very error prone and hard to maintain in the long run. As a side note, Michiel uses our design time API's to have his users create custom screens for themselves. So you can have your users customize their own screens if you want. If you want to do something similar he can chime in I suppose.
(29 Apr '13, 04:07)
Yalim Gerger ♦♦
|