Zum Inhalt springen

Cognos Fehlermeldung QE-DEF-0360: „use of 2-part reference“

    Cognos Fehlermeldungen sind oftmals nicht gerade hilfreich… Diese hier ist noch halbwegs „sprechend“ – wenn man etwas damit anzufangen weiß.

    QE-DEF-0360 The query contains a reference to at least one object '[myNamespace].[myFilterName]' that does not exist. Possible cause is the use of 2-part reference to a model query item, which is a deprecated feature. RQP-DEF-0149 The query specification is incorrect. RQP-DEF-0457 Referenced Query 'Query' is not defined or its query items contain unresolved references. RSV-SRV-0042 Trace back:RSReportService.cpp(724): QFException: CCL_CAUGHT: RSReportService::processImpl()RSReportServiceMethod.cpp(258): QFException: CCL_RETHROW: RSReportServiceMethod::process(): promptPagingForward_RequestRSASyncExecutionThread.cpp(859): QFException: 
    usw. usw. ...

    In dem hier verwendeten Framework-Model (v10.2.2.) wird ein drei-schichtiges Design verfolgt – bestehend aus:

    3. Presentation-View
    2. Model-View
    1. Physical-View

    Die unterste Schicht („Physical-View“) enthält ausschließlich importierte Datenbank-Strukturen wie Tabellen, Views und Aliase. Sie enthält keine Relationships. Jegliche Modellierungstätigkeit findet in Schicht-Nr. 2 statt. Hierzu gehört auch das Erzeugen von Relationships zwischen physischen Tabellen wie auch zwischen Tabellen und Alias-Shortcuts, um bspw. Role-Playing-Dimensions zu implementieren. Die oberste Schicht besteht ausschließlich aus Reference-Shortcuts und Objekten, die der Strukturierung dienen – also Namespaces und Ordner. Das Design folgt den Empfehlungen von Cognos.

    Der obenstehende Fehler kommt zustande, weil in der Presentation-View ein Shortcut auf einen Filter exisitiert. Er hat folgenden Namen: [myFilterName]. Dieser Filter-Shortcut verweist auf die eigentliche Filter-Definition innerhalb der Model-View. Der dort ansässige Filter trägt den gleichen Namen „[myFilterName]“. Und das ist auch schon das Problem. Die Namen beider Objekte (Filter und Shortcut auf diesen Filter) müssen sich im Namen unterscheiden. Nachdem ich den Namen der Filter-Definition in Schicht Nr. 2 auf „[myFilterName]_x“ geändert hatte, war der Fehler behoben.

    Das Problem hatte ich bisher nur bei Stand-Alone-Filtern und Stand-Alone-Calculations. Getestet habe ich mit Query-Studio. Vielleicht hilft es dem ein oder anderen Framework-Modellierer …