Freigeben über


ICEM02

ICEM02 überprüft, ob alle Modulabhängigkeiten und -ausschlüsse auf das aktuelle Modul bezogen sind.

Mergemodul-ICEs werden in einer CUB-Mergemoduldatei mit dem Namen „Mergemod.cub“ gespeichert, nicht in der CUB-Datei mit den ICEs, die für die Paketüberprüfung verwendet werden.

Ergebnis

ICEM02 gibt Fehlermeldungen aus, wenn die Moduldatenbank versucht, Abhängigkeiten oder Ausschlüsse anzugeben, die sich nicht auf das aktuelle Modul beziehen. ICEM02 gibt eine Fehlermeldung aus, wenn die Moduldatenbank versucht, das aktuelle Modul als abhängig von sich selbst oder von sich selbst ausgeschlossen anzugeben.

Beispiel

ICEM02 würde bei einem Modul, das die unten gezeigten Datenbankeinträge enthält, die folgenden Fehlermeldungen ausgeben.

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!

ModuleSignature-Tabelle

ModuleID Sprache Version
MyModule.GUID1 1033 1.0

 

ModuleDependency-Tabelle

ModuleID ModuleLanguage RequiredID RequiredLanguage RequiredVersion
OtherModule.GUID2 1033 OtherModule.GUID3 0 1.0
MyModule.GUID1 1033 MyModule.GUID1 1033 1.2

 

ModuleExclusion-Tabelle (teilweise)

ModuleID ModuleLanguage ExcludedID ExcludedLanguage
OtherModule.GUID2 1033 OtherModule.GUID3 0
MyModule.GUID1 1033 MyModule.GUID1 1033

 

Der Mergemodul-ICE gibt den ersten Fehler aufgrund der ersten Zeile in der ModuleDependency-Tabelle aus, die keine erforderliche Abhängigkeit für das aktuelle Modul angibt, das in der ModuleSignature-Tabelle angegeben ist. Die Abhängigkeiten eines Moduls können nur in seiner eigenen ModuleDependency-Tabelle angegeben werden. Wenn OtherModule.GUID3 für das aktuelle Modul erforderlich ist, ersetzen Sie die ersten beiden Spalten der Zeile durch die Daten aus der ModuleSignature-Tabelle. Wenn OtherModule.GUID3 für dieses Modul nicht erforderlich ist, löschen Sie diese Zeile.

Der Mergemodul-ICE gibt den zweiten Fehler aus, weil ein Modul keine Abhängigkeit von sich selbst angeben kann.

Der Mergemodul-ICE gibt den dritten Fehler aufgrund der ersten Zeile in der ModuleExclusion-Tabelle aus, die keinen erforderlichen Ausschluss für das aktuelle Modul angibt, das in der ModuleSignature-Tabelle angegeben ist. Die Ausschlüsse eines Moduls können nur in seiner eigenen ModuleExclusion-Tabelle angegeben werden. Wenn das aktuelle Modul OtherModule.GUID3 ausschließt, ersetzen Sie die ersten beiden Spalten der Zeile durch die Daten aus der ModuleSignature-Tabelle. Wenn das aktuelle Modul OtherModule.GUID3 nicht ausschließt, löschen Sie diese Zeile.

Der Mergemodul-ICE gibt den vierten Fehler aus, weil ein Modul nicht angeben kann, dass es sich selbst ausschließt.

ICE-Referenz zum Mergemodul