Re: INDIRECT and real-time question



Jody Goldberg writes:
Area based is definitely a requirement, my initial thought was an
array formula based approach.

    with record ids in A2:A101
    with field ids in B1:F1
    select B2:F101
    =ReadFromFeed(feedID,A2:A101,B1:B1)<Ctrl-Shift-Enter>
 
On the positive side you get appropriate permisioning on the cells.
They would not be individually editable, and the recalc would be
enmass.
Sometimes it is not desirable. For example if I stop receiving data
for some symbol from feed I should be able to insert it manualy. 
It really happens all the time.


There are 2 downsides
1) Changing the size of the array is cumbersome.
2) With a naive approach when one of the values change, anything
   depending on all of them would recalc.  However, that can be
   circumvented by being a touch smarte w.r.t. how to handle the
   updates.  If we change the corner cell value directly and queue
   the individual update cells directly things will work nicely.
Naive approach will not work. In my SNP500 example there are 12-13
updates per 0.5 second (I found that half second is the best update
interval for user perception) out of 500 symbols. 

Update interval
    The current approach of recalculating as updates come in
    is destined for starvation.  A better approach would be to
    queue the changes for an interval, then commit in a block
    and recalc.  This should be simple to implement, all that would
    be required would be an interface to control frequency
It will be nice to have some sort of user defined dialogs. So I should be able to
register my own dialog called from say "Plugins config" menu. It can be part of XML
plugin description.

Pavel.








[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]