ICE10
O ICE10 valida se o estado de anúncio dos recursos filho corresponde ao do recurso pai.
Um recurso filho não pode proibir anúncios, enquanto o recurso pai permite anúncios. A combinação a seguir de atributos pai e filho é, portanto, inválida.
parent = msidbFeatureAttributesFavorAdvertise
child = msidbFeatureAttributesDisallowAdvertise
Essa combinação é inválida porque desativará o pai sempre que o pai for anunciado. No entanto, o inverso é permitido. Um filho pode ser marcado para dar preferência a anúncios, enquanto o pai é marcado para não permitir anúncios.
O ICE10 da ação personalizada determina o estado dos recursos pai e filho da coluna Attributes da tabela Feature. Observe que é válido definir o estado de um recurso como 0 e ter o pai ou filho definido para dar preferência ao anúncio ou para não o permitir.
O ICE10 postará um erro se a coluna Attributes da tabela Feature contiver uma incompatibilidade no estado de anúncio.
O ICE10 posta a mensagem de erro a seguir para o exemplo mostrado.
Conflicting states, one favors, one disallows. Child: Word differs in advertise state
from Parent: Office.
Observe para esse exemplo que o Microsoft Excel e o Microsoft Word são recursos filho do Microsoft Office.
Tabela Feature (parcial)
Recurso | Feature_Parent | Atributos |
---|---|---|
Office | Nulo | 4 |
Excel | Office | 4 |
Word | Office | 8 |
No exemplo, Word é definido como não permitir anúncio, o que está em conflito com o estado de anúncio de permissão do pai, Office.
Em alguns casos, o ICE10 posta o seguinte erro:
Parent feature: 'Parent' not found for child feature: 'Child'. This error means
that for the child feature 'Child', the feature 'Parent' is not listed in the
Feature table.
Isso indica uma referência de chave estrangeira inválida. A correção é fazer com que 'Filho' seja apontado para o recurso pai correto ou adicionar uma entrada para o recurso pai 'Pai' à tabela Feature.