ICEM02
ICEM02 comprueba si todas las dependencias y exclusiones del módulo están relacionadas con el módulo actual.
Los ICE de módulo de combinación se almacenan en un archivo .cub de módulo de combinación denominado Mergemod.cub y no en el archivo .cub que contiene los ICE que se usan para la validación de paquetes.
Resultado
ICEM02 muestra mensajes de error si la base de datos del módulo intenta especificar dependencias o exclusiones que no están relacionadas con el módulo actual. ICEM02 muestra un mensaje de error si la base de datos del módulo intenta especificar el módulo actual como dependiente o excluido de sí mismo.
Ejemplo
ICEM02 mostraría el siguiente mensaje de error para un módulo que contiene las entradas de la base de datos que se indican a continuación.
The dependency OtherModule.GUID2.1033.OtherModule.GUID3.0 in the
ModuleDependency table creates a dependency for an unrelated module. A
module can only define dependencies for itself
This module is listed as depending on itself!
The exclusion OtherModule.GUID2.1033.OtherModule.GUID3.0 in the
ModuleExclusion table creates an excluded module for an unrelated
module. A module can only define exclusions for itself.
This module excludes itself from the target database!
ModuleID | Idioma | Versión |
---|---|---|
MyModule.GUID1 | 1033 | 1.0 |
ModuleID | ModuleLanguage | RequiredID | RequiredLanguage | RequiredVersion |
---|---|---|---|---|
OtherModule.GUID2 | 1033 | OtherModule.GUID3 | 0 | 1.0 |
MyModule.GUID1 | 1033 | MyModule.GUID1 | 1033 | 1,2 |
Tabla ModuleExclusion (parcial)
ModuleID | ModuleLanguage | ExcludedID | ExcludedLanguage |
---|---|---|---|
OtherModule.GUID2 | 1033 | OtherModule.GUID3 | 0 |
MyModule.GUID1 | 1033 | MyModule.GUID1 | 1033 |
El módulo de combinación ICE muestra el primer error porque la primera fila de la tabla ModuleDependency no especifica una dependencia necesaria para el módulo actual especificado en la tabla ModuleSignature. Las dependencias de un módulo solo se pueden especificar en su propia tabla ModuleDependency. Si el módulo actual requiere OtherModule.GUID3, reemplace las dos primeras columnas de la fila por los datos de la tabla ModuleSignature. Si este módulo no requiere OtherModule.GUID3, elimine esta fila.
El módulo de combinación ICE muestra el segundo error porque un módulo no puede especificar una dependencia de sí mismo.
El módulo de combinación ICE muestra el tercer error porque la primera fila de la tabla ModuleExclusion no especifica una exclusión necesaria para el módulo actual especificado en la tabla ModuleSignature. Las exclusiones de un módulo solo se pueden especificar en su propia tabla ModuleExclusion. Si el módulo actual excluye OtherModule.GUID3, reemplace las dos primeras columnas de la fila por los datos de la tabla ModuleSignature. Si el módulo actual no excluye OtherModule.GUID3, elimine esta fila.
El módulo de combinación ICE muestra el cuarto error porque un módulo no puede especificar que se excluya a sí mismo.
Temas relacionados