We require including values from a file in the DCT. Is there any other method other than inline? Since in our last project our experience was that using too many inline calls makes the dcr load slowly. We alerady have around 40 fields in the dcr and almost 15 of them would be inline fields.Has anyone tried out any other approach and suggest it?Also is there a way to write a common file of some fields(items) and then include it in the datacapture.cfg?
You can also use form api to accomplish. The DCT would load faster, but formapi would be still populating the fields
DCT's inline is an instrument to modify DCT (a template!) upon rendition. FormAPI is an instrument to provide GUI, dynamic Data Capture andmodify DCT Form Values, not a template itself. There is a small cross-section between the two like for example conditional drop-down population and the like.Still, if DCT inlines are used correctly FormAPI can not provide an easy alternative.
Making matters worse, this suggestion (which would likely require 15 call servers) and would certainly be significantly slower than the current implementation. The idea was to increase performance.
You can always craft the query...
Do you mean that in general Client-Side Java Script processing plus at least one (and quite possibly more) Client/Server round trips withasynchronous calls will make an overall process more efficient?Like Build Form => Render Form => JSP-Call Server => Parse JSON/XML => Call Back is somehow more efficient than Build Form => Render Form?Oh btw, what should happen if DCR is opened in the View mode?
In a dct I'm working on right now in fact I have two inlines that can occur in 18 different locations within my DCT. With verbose logging turned on I can see that IWOV is actually executing the things 18 separate times. Now, these scripts are fast, under a second each but when you add 2 x 18 seconds it put the rendering time at about 30-36 seconds. Remove the inlines and the thing loads in seconds.A callServer on the other hand for both would in theory only take about 5 seconds. The problem is, in order to pre-populate the selected options like an inline command on a large DCT takes trawling through it and doing a lot of searching, matching creating options objects etc.. which is expensive and could hang the form for a bit until its done So, I'm on the fence. In my case the calllServer would be faster than an inline to get my data as objects the way IWOV has executed inlines but setting all the pre-selected values after doing a callServer()etc would surely be quite painful. I still have to make up my mind about how to handle this one.
Neither is a good solution. Make the whole DCT an inline and have it generate the complete XML. The the 18 different inlines are a variable or a PM call. *much* faster.
Interesting concept. Are there techniques that you use to make your PM generated DCT's easy to update?