Morning All,
I'm sure that I saw this answered on the old forum, but I can't get to it anymore.
I am 9.0 SP3 U7 x64bit and have noticed inconsistencies between using DBS and DBSW formulae. Although slower the DBS's actually send data into the cubes, whereas the DBSW's sometimes send and sometimes don't, and rather annoyingly do not say that they haven't sent the data in.
Are there any "rules of the road" on these formulae ?
Thanks
Ajay
DBS or DBSW ?
- Renaud MARTIAL
- Posts: 25
- Joined: Thu May 15, 2008 10:18 am
- Location: Paris, France
Re: DBS or DBSW ?
Hello,
(Don't blame, I'm perhaps out of topic)
don't forget that (from what I experimented) DBS are executed before DBSW (idem for DBR and DBRW), and that there's no defined or guaranteed order in which those functions are evaluated.
So if the datas sent by DBSW are issued from other datas sent to the server in the same worksheet, you should use DBS for them to be sure they are send before the DBSW (well, I'm not very clear I guess ...)
Example:
cell D2 contains value '10'
cell E2 contains formula '=DBSW(D2;"srvr:cube";"elt1";"nIndic1")'
cell E3 contains formula '=DBSW(E2;"srvr:cube";"elt1";"nIndic2")'
If you change the value in cell D2 to 12 and recalculate the sheet (F9), the result will be:
cube[ 'elt1', 'nIndic1'] = 12
cube[ 'elt1', 'nIndic2'] = 10[/color]
because the cell E1 'll be evaluated before E2, which 'll not have been updated during the processing.
In fact, you can consider that both values are evaluated in the same time (because is is buffered), and the relationship between the two functions is lost.
BUT
if you change formula in E2 to '=DBS(D2;"srvr:cube";"elt1";"nIndic1")'
the result will be correct, because the DBSW formula 'll be evaluated AFTER the DBS.
Regards,
Renaud.
(Don't blame, I'm perhaps out of topic)
don't forget that (from what I experimented) DBS are executed before DBSW (idem for DBR and DBRW), and that there's no defined or guaranteed order in which those functions are evaluated.
So if the datas sent by DBSW are issued from other datas sent to the server in the same worksheet, you should use DBS for them to be sure they are send before the DBSW (well, I'm not very clear I guess ...)
Example:
cell D2 contains value '10'
cell E2 contains formula '=DBSW(D2;"srvr:cube";"elt1";"nIndic1")'
cell E3 contains formula '=DBSW(E2;"srvr:cube";"elt1";"nIndic2")'
If you change the value in cell D2 to 12 and recalculate the sheet (F9), the result will be:
cube[ 'elt1', 'nIndic1'] = 12
cube[ 'elt1', 'nIndic2'] = 10[/color]
because the cell E1 'll be evaluated before E2, which 'll not have been updated during the processing.
In fact, you can consider that both values are evaluated in the same time (because is is buffered), and the relationship between the two functions is lost.
BUT
if you change formula in E2 to '=DBS(D2;"srvr:cube";"elt1";"nIndic1")'
the result will be correct, because the DBSW formula 'll be evaluated AFTER the DBS.
Regards,
Renaud.
- Martin Ryan
- Site Admin
- Posts: 1988
- Joined: Sat May 10, 2008 9:08 am
- OLAP Product: TM1
- Version: 10.1
- Excel Version: 2010
- Location: Wellington, New Zealand
- Contact:
Re: DBS or DBSW ?
The DBSW (and DBRW) formula is optimised for a WAN. If you have recalculate a slice with title elements, then the title elements are sent only once using the information available in the "view" cell (this is usually B1 if you have done a standard slice). The row and column elements (which are only "!"s in the "view" cell) get sent up for each of the cells that need calculating.
With DBS and DBR formulae all of the arguments - row, column and title elements get sent up repeatedly, every time there is a cell that needs calculating.
Occasionally DBRW/DBSW refuse to work for whatever reason. This can usually be resolved by changing to DBR/DBS and that's not a big deal over a LAN. Typically though, you should try to use DBRW and DBSW.
Cheers,
Martin
With DBS and DBR formulae all of the arguments - row, column and title elements get sent up repeatedly, every time there is a cell that needs calculating.
Occasionally DBRW/DBSW refuse to work for whatever reason. This can usually be resolved by changing to DBR/DBS and that's not a big deal over a LAN. Typically though, you should try to use DBRW and DBSW.
Cheers,
Martin
Please do not send technical questions via private message or email. Post them in the forum where you'll probably get a faster reply, and everyone can benefit from the answers.
Jodi Ryan Family Lawyer
Jodi Ryan Family Lawyer