Procédure pour éviter l'erreur Tentative de franchissement d'un membre NULL dans une fonction

En général, l'erreur Tentative de franchissement d'un membre NULL dans la fonction [@X] apparaît dans les règles métier qui utilisent une fonction @concatenate ou une fonction de sous-chaîne pour créer un nom de membre et que le membre obtenu n'est pas présent dans la base de données dans laquelle la règle métier est exécutée.

Considérez l'exemple "Begbalance"=@member(@concatenate(@name(@parent(@currmbr("Company"))),"_Input"));, qui écrit la valeur BegBalance dans le membre Company avec un suffixe _Input pour chaque membre Company.

Si le membre est nommé Company1, il doit également exister un membre Company1_Input pour que cette formule fonctionne. Si, par exemple, un membre Company2 est créé mais qu'aucun membre Company2_Input correspondant ne l'est, la règle métier échoue avec une erreur Tentative de franchissement d'un membre NULL dans la fonction [@X].

Pour résoudre ce problème, l'instruction FIX autour de la syntaxe @concatenate ou @sibling doit être modifiée afin d'exclure les membres qui n'ont pas de membre _Input correspondant. Dans cet exemple, vous devez trouver et exclure les membres de la dimension Company qui ne comporte pas de membre Company_Input correspondant ou ajouter les membres Company_Input aux membres de la dimension Company qui ne les contiennent pas.