dbTalk Databases Forums  

Trapping non-leaf updates in MDX

microsoft.public.sqlserver.olap microsoft.public.sqlserver.olap


Discuss Trapping non-leaf updates in MDX in the microsoft.public.sqlserver.olap forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
Zoltan Grose
 
Posts: n/a

Default Trapping non-leaf updates in MDX - 01-25-2006 , 01:04 PM






I'm using UPDATE CUBE statements but I need to protect against upper level
updates. Querying the cube for each member is too costly so I'm looking for
an MDX option (or a cube setting to ignore all upper level updates). Right
now I'm wrapping each member name in:

StrToMember(Iif(IsLeaf([membername]), "membername", "[$$NOT_LEAF$$]"))

Obviously $$NOT_LEAF$$ is a valid member in the cube and the update will
fail.

Exceptions as flow control isn't very elegant so I'm looking for a better
option. Thoughts?

-zoltan



Reply With Quote
  #2  
Old   
Marius Dumitru
 
Posts: n/a

Default Re: Trapping non-leaf updates in MDX - 01-28-2006 , 06:20 PM






You could use cell-level write security, but I'm sure it's worth the hassle.

Who/what are you trying to protect against? Your own actions, users'
mistakes or intentional malicious changes?

--
Hope this helps

Marius


"Zoltan Grose" <zgrose (AT) mac (DOT) com> wrote

Quote:
I'm using UPDATE CUBE statements but I need to protect against upper level
updates. Querying the cube for each member is too costly so I'm looking
for an MDX option (or a cube setting to ignore all upper level updates).
Right now I'm wrapping each member name in:

StrToMember(Iif(IsLeaf([membername]), "membername", "[$$NOT_LEAF$$]"))

Obviously $$NOT_LEAF$$ is a valid member in the cube and the update will
fail.

Exceptions as flow control isn't very elegant so I'm looking for a better
option. Thoughts?

-zoltan



Reply With Quote
  #3  
Old   
Zoltan Grose
 
Posts: n/a

Default Re: Trapping non-leaf updates in MDX - 02-01-2006 , 04:21 PM



My company's application drops a CellSet into Excel and/or allows the user
to simply enter member names into a spreadsheet cell. So when the
application goes to upload data, there is no metadata associated with the
text, for example, "Financial Services". Is that a leaf? Is it a parent? Who
knows. What we *don't* want is a value to be allocated to its children. The
end user may see a entire hierarchy, but we only want leaf-level updates to
apply.

Complicating the matter is we usually have ragged dimensions so level based
security doesn't really work too well whereas it is fairly elegant in other
dimension types.
-z


"Marius Dumitru" <mariusd (AT) online (DOT) microsoft.com> wrote

Quote:
You could use cell-level write security, but I'm sure it's worth the
hassle.

Who/what are you trying to protect against? Your own actions, users'
mistakes or intentional malicious changes?

--
Hope this helps

Marius


"Zoltan Grose" <zgrose (AT) mac (DOT) com> wrote in message
news:ep5GqJeIGHA.3856 (AT) TK2MSFTNGP12 (DOT) phx.gbl...
I'm using UPDATE CUBE statements but I need to protect against upper
level updates. Querying the cube for each member is too costly so I'm
looking for an MDX option (or a cube setting to ignore all upper level
updates). Right now I'm wrapping each member name in:

StrToMember(Iif(IsLeaf([membername]), "membername", "[$$NOT_LEAF$$]"))

Obviously $$NOT_LEAF$$ is a valid member in the cube and the update will
fail.

Exceptions as flow control isn't very elegant so I'm looking for a better
option. Thoughts?

-zoltan





Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.3
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.