Member validation in a recursive Hierarchy

    Debate general

  • Hello,

    In an entity with a recursive Hierarchy, we decided to implement a business rule that manage the value of an attribut based on the value of the father member.

    It's working as expected when we create the new nember and when we move to a different father. The business rule is executed to validate the member and do it's job by updated the attribute value.

    Only one test failed for this implementation : Moving a member that already have a child (or more)
    In this context the member come with all chrildren but only the member that will have a new father need to be validated one more time.
    So the Business Rule will not be executed on children members and they don't will have the good value for the attribute.

    Is there normal that children members stay in validated state ?
    Is there a way to invalidate children rows to ?
    Is there a way to force the execution of a business rule in a validated member ?



    viernes, 02 de marzo de 2012 10:33

Todas las respuestas

  • I am having the similar business scenario where child member needs to be invalidated if domain parent member is invalid.

    Does anyone have insight on this?


    jueves, 31 de enero de 2013 3:16
  • Just bumping up this thread to get comments or work around for this scenario.


    lunes, 04 de febrero de 2013 19:02
  • Hi

    I've tried to test your recursive hierarchy issue, but I had another issue that blocked me.

    I've made a testmodel with a testentity : Employee with a self domain based attribute" Manager" (for recursivity), and "hasmanager" domain based attribute with another entity : HasManager with values "YES" or "NO"

    an a derived hierarchy to display employees/Manager

    2 business rules : first to set a default value for has manager to "Yes" and second to update HasManager attribute to "No" if employee has no manager

    I've set "Enable change tracking" (group 1) for all my attributes, and when I apply business rules , I've got an error message, and HasManagerAttribute does not get set to default value nor updated.

    the error is "Invalid column name 'uda_6_102'

    doing a sql server profiler gave me the original call:

    declare @p4 mdm.IdList
    insert into @p4 values(1)
    exec mdm.udpValidateMembers @User_ID=1,@Version_ID=2,@Entity_ID=6,@MemberIdList=@p4,@MemberType_ID=1,@ProcessUIRulesOnly=0

    which gave the error :

    (1 row(s) affected)
    Msg 50000, Level 16, State 1, Procedure udp_SYSTEM_2_6_CHILDATTRIBUTES_ProcessRules, Line 517
    SYSERR207|Invalid column name 'uda_6_102'.

    I don't understand why I'm having this issue.

    here is my B.R. to update the HasManager to value "N", which is causing problem

    Any clues ?


    Xavier Averbouch
    Microsoft Community Contributor
    If a post answers your question, please click "Mark As Answer" on that post and "Vote as Helpful".

    martes, 12 de febrero de 2013 7:52