Explicação: A Versão 5.0 ou
as versões posteriores do produto apresentam o comportamento correto. Considere o seguinte exemplo: SET OutputRoot.MRM.A.B.C.D = 'ddd';
SET OutputRoot.MRM.A.B.C.E = 'eee';
IF OutputRoot.MRM.A IS NULL THEN
SET Environment.Variables.Result = 'NULL';
ELSE
SET Environment.Variables.Result = 'NOT NULL';
END IF;
Na Versão 2.1, o campo Environment.Variables.Result
possui o valor 'NOT NULL' e, na Versão 5.0 ou
posterior, possui o valor NULL.
O mesmo será verdadeiro se OutputRoot.MRM.A.B ou OutputRoot.MRM.A.B.C forem
testados para NULL. A razão para isto é que eles são campos-pai do MRM
e isso significa que eles próprios não possuem valores.
Portanto,
conclui-se que esses campos são implicitamente NULL e, se testados para 'IS
NULL', retornam TRUE.
Observe, entretanto, que se você utilizar nós-pai do XML, a Versão 2.1 e a Versão 5.0,
ou versões posteriores do produto, retornarão 'NOT NULL' para o campo Environment.Variables.Result.