[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Jan 2005
    Beiträge
    37

    Question Excel MS Qurey und SQL7967 als Fehlercode

    Hallo,

    habe ein Problem mit einer per Excel / MS Query erstellten Select Abfrage.

    An unterschiedlichen Clients wird bei Abfrage "plötzlich" ein Fehler "SQL7967" zurück gegeben obwohl die Abfrage bisher ohne Fehler ausgeführt werden konnte.

    Die Abfrage verwendet für ein in Excel einzugebendes Datum ein ? als Platzhalter (zur automatischen Aktualisierung der Abfrage), daher wird es scheinbar als Prepared Statement behandelt?!

    Gibt man in MS Qurey das Datum direkt ein, oder ersetzt man das ? in MS Query durch einen Wert, werden die Daten erfolgreich abgefragt (und an Excel zurück gegeben).

    Das Jobprotokoll weist weitere Hinweise aus:

    SQL0901 SQL Systemfehler
    MCH3601 Zeiger für angegebene Position nicht gesetzt.
    Ursache . . . . : Es wurde ein Zeiger, entweder direkt oder als ein
    Basiszeiger verwendet, für den keine Adresse festgelegt worden war.

    Ändert man am betroffenen Client die ODBC Einstellung für das Datumsformat von ISO auf EUR (System DSN gegen AS/400, Server/Erweitert/Datum/Format), lässt sich die Abfrage ausführen.

    In folgenden CA Version / ODBC Treiber Konstellationen tritt der Fehler auf:
    ODBC Treiber 8.00.03.00
    Version 5 Release 1 Modifikationsstufe 0
    ODBC Treiber 11.00.06.00
    Version 5 Release 4 Modifikationsstufe 0
    ODBC Treiber 11.00.02.00
    Version 5 Release 4 Modifikationsstufe 0

    In dieser Konfiguration jedoch nicht:
    ODBC Treiber 10.00.08.00
    Version 5 Release 3 Modifikationsstufe 0

    Es wurden seitens Admin keine PTFs eingespielt und keine Konfigurationsänderungen an der AS/400 oder am Client PC vorgenommen (jetziger Kenntnisstand).

    Welche Konfiguration auf der AS/400 könnte den o.a. Umstand auslösen? Wo und wie kann ich die Ursache weiter eingrenzen.

    (iSeries V5R4, Client win XP / Office 2003)

    Gruß Asti

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    Das Problem ist dieautomatische Datumerkennung.
    Wenn du das Datum eingeben läßt, ist das Format nicht unbedingt garantiert (Jobumgebung, ODBC-Einstellung usw.).

    Entweder schreibst du vor, dass das Datum immer in der Form YYYY-MM-TT eigegeben wird, das wird immer erkannt oder du weist dem Parameter eine spezielle Zelle zu.
    Excel erkennt dann entweder automatisch das Datumformat oder du formatierst die Zelle explizit als Datum.

    Parameter Zellen zuweisen ist sowieso die elegante Art des MS-Query.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  3. #3
    Registriert seit
    Jan 2005
    Beiträge
    37

    Ja gut, aber ;) .....

    Der Parameter ist einer Zelle zugewiesen, bzw. die Zelle dem Paramter. (User gibt neues Datum ein, Abfrage wird aktualisiert).

    Das Format ist definiert (aber als Datum EUR). Bei einigen PCs funkts noch, bei anderen nicht mehr(und das ohne Änderung am Dokument).

    Meine Vermutung war/ist eine Änderung auf AS/400 Seite, da auch an meinem Entwickler PC die Abfrage in der Originalkopie des Dokuments nicht mehr möglich ist (bzw. nur dann, wenn EUR als Datumfsormat in der ODBC Quelle ausgewählt wird, wir konfigurieren aber ISO als Standard).

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    ISO erzwingt eben YYYY-MM-TT.
    Ggf. hängts auch von der Excel-Version ab, so dass der Feldinhalt gar nicht als Typ Date sondern als String übergeben wird.
    In diesem Fall solltest du mal die Zelle mit einem eigenen Datumformat "YYYY-MM-DD" formatieren.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  5. #5
    Registriert seit
    Jan 2005
    Beiträge
    37

    Thumbs up Puuhh, das war eine harte Nuss

    Hallo,

    meine Vermutung, dass doch ein Fehler auf Seiten der AS/400 vorliegt, habe ich durch diesen Artikel

    Four Hundred Guru--Admin Alert: One Common Cure for SQL0901 Package Errors

    bestätigen können und mit Hilfe eines älteren Eintrages im Forum

    http://newsolutions.de/forum-systemi...xcel-r530.html

    auch direkt einen Workaround gefunden.

    Auf unserer Testmaschine lassen sich seit Löschen des QGPL/QZDAPKG nun wieder alle Statements ausführen (und auch neue anlegen).

    Eine Frage bleibt jetzt noch:

    Wenn das Objekt QGPL/QZDAPKG gelöscht wurde, müssten/sollten auch alle anderen vorhanden Packages gelöscht werden? Wird das Objekt QZDAPKG aus den anderen (z. B. MSQRY32FAI) "gefüllt" oder werden die anderen autom ungültig?

    Gruß Asti

  6. #6
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    QZDAPKG wird ausschließlich vom Hostservice verwendet (i.W. Schemainformationen).
    Alle anderen Pakete werden durch die jeweilige Anwendung erstellt.

    Den Paketnamen kann man in der ODBC-Konfig festlegen oder in der Verbindungsfolge angeben.
    Ich habe mir angewöhnt, hier immer die Lib QTEMP anzugeben, damit gabs nie Probleme.

    Den Inhalt kannst du per PRTSQLINF ansehen.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  7. #7
    Registriert seit
    Jan 2005
    Beiträge
    37

    Das bedeutet ....

    ... es können alle Packages (also auch die anwendunsgbezogenen) ohne Gefahr gelöscht werden?

    Das wäre mir sowieso lieb, denn einige dümpeln da scheinbar seit 1999 vor sich rum (in QGPL).

  8. #8
    Registriert seit
    Mar 2002
    Beiträge
    5.365
    nein, nur die, die von ODBC oder JDBC angelegt worden sind.

    D*B

    Zitat Zitat von Asti Beitrag anzeigen
    ... es können alle Packages (also auch die anwendunsgbezogenen) ohne Gefahr gelöscht werden?

    Das wäre mir sowieso lieb, denn einige dümpeln da scheinbar seit 1999 vor sich rum (in QGPL).
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

Similar Threads

  1. EXCEL, PDF, ZIP, IDEA, e-mail, alles auf iSeries
    By Kilianski in forum NEWSboard Server Software
    Antworten: 0
    Letzter Beitrag: 22-11-06, 15:23
  2. Datum überlebt ODBC Transfer auf Excel nicht
    By jjagi in forum IBM i Hauptforum
    Antworten: 6
    Letzter Beitrag: 07-07-06, 08:29
  3. Datenübertragung von iSeries-Server => Excel
    By grimmies in forum IBM i Hauptforum
    Antworten: 5
    Letzter Beitrag: 19-05-06, 07:07
  4. Daten ins Excel über MS Query
    By MichaelS in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 19-09-05, 13:50
  5. Nochmals Excel - MS Query
    By AndyK in forum NEWSboard Windows
    Antworten: 4
    Letzter Beitrag: 24-03-05, 15:13

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •