[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Mar 2017
    Beiträge
    4

    Zugriff auf iSeries/AS400 über Access

    Hallo zusammen,

    wir haben bei uns eine AS/400 / iSeries stehen.
    Ich möchte nun via ODBC auf diverse Tabellen zugreifen.
    Bisher habe ich hierfür immer eine Benutzer DSN über die Datenverbindungen angelegt und die komplette Tabelle eingebunden.

    Nun habe ich aber gehört dass das auch komfortabler direkt aus dem Access herausgeht über eine Abfrage (PassThrough ??) und man dort auch ohne DSN Eintrag zugreifen kann.

    Kann mir jemand sagen, was ich als SQL String hinterlegen müsste damit dies geht?
    Mir reicht es wenn die Access Abfrage mit die OS/400 Tabelle wiedergibt.
    Am besten natürlich mit Suchkriterien, aber das ist Schritt 2!

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    Nun, ohne ODBC-String gehts da nun auch nicht.
    Sobald du die Abfrage als PathThru definiert hast, musst du per RechtsClick auf den Fenstertitel der Abrage das Eigenschaftsfenster öffnen.
    Da findest du dann die Möglichkeit, den ODBC-String insgesamt einzugeben.
    Da dies allerdings relativ komplex ist, kannst du da auch auf den Wizzard gehen und dir die Verbindungsfolge generieren lassen.
    Alternativ kann man da natürtlich trotzdem "ODBC;DSN=MyDsn;" eintragen.
    Schwierig wird es dabei allerdings mit Parameter-Abfragen.
    Passthru-Abfragen lassen sich dann nicht so einfach an Formulare binden.

    Dies ist dann aber grundsätzlich bei jeder Passthru-Abfrage durchzuführen (kann man ja kopieren).
    Je nach Einstellung im iSeries-Navigator kann es dazu kommen, dass bei jeder Abfrage auch eine Anmeldung erforderlich wird.

    Alternativ zu Abfrageobjekten kann man natürlich auch im Code seine Datenverbindungen und Abfragen native programmieren. Unter bestimmten Umständen sind dann auch Datenbindungen zulässig.
    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
    Mar 2017
    Beiträge
    4
    Hallo Fuerchau,

    erstmal vielen vielen Dank für die Antwort!

    Der ODBC-String ist ja auch ok. Nur die DSN möchte ich nicht füllen. Will das komplett umgehen.
    Weiterer Grund für die Aktion ist, dass einige unserer Tabellen so groß sind, dass die im Access garnicht mehr verarbeitet werden können. Die Kriterien dort wollte ich individuell anpassen.
    z.B. Auftragsdatum heute() - 60 Tage oder so.
    Daher wäre ein vorheriger Filter traumhaft.
    Nun habe ich den Wizzard benutzt, der schickt mich aber direkt wieder zu den Computerdatenquellen.
    Was ich ja umgehen wollte.
    Bin auch mit deiner Antwort ein klein wenig "überfordert" hast du evtl. eine Beispieldatei wo ich mir das mal ansehen kann?

    Hintergrund ist auch, ich habe eine Exceldatei gesehen wo das ohne DSN funktioniert =>

    Verbindungszeichenfolge
    DRIVER={Client Access ODBC Driver (32-bit)};SYSTEM=SYSTEMXXX.COM;DBQ=QGPL DOPAAAL1/ADSTALC;DFTPKGLIB=QGPL;LANGUAGEID=ENU;PKG=QGPL/DEFAULT(IBM),2,0,1,0,2048;QRYSTGLMT=-1;CONNTYPE=2;SSL=;SIGNON=;Uid =XXXXX;

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    Nimm doch einfach die Beispiel-Folge und modifiziere sie passend.
    Anschließend kopierst du diese dann in den Eigenschafts-Dialog:
    ODBC;Verbindungsfolge
    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
    Mar 2017
    Beiträge
    4
    ah ok

    da kommt aber jetzt

    Reservierter Fehler (-7778); es gibt keine MEldung für diesen Fehler.

  6. #6
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    Ok, da kommen wir so nicht weiter.
    Mach einfach folgendes (ich habe das mal nachvollzogen):

    Rufe den Wizzard auf.
    Bleibe bei Dateidatenquelle und erstelle eine neue Quelle.
    Nach der Konfiguration deiner Einstellungen und speichern der DSN in einer Datei übernimmt der Wizzard die Verbindungsfolge.
    Diese Datei-DSN kannst du dann überall hin mitnehmen solange der Pfad (ggf. identisch zu deiner MDB) verfügbar ist.
    Leider ist diese Datei-DSN dann nicht mehr über den Wizzard änderbar, da der Standard-Wizzard dies nicht anbietet. Sie kann aber mit z.B. Notepad bearbeitet werden.

    Für alle ODBC-Einstellungen musst du halt mal ein wenig googeln.

    Weitere Alternative.
    Erstelle z.B. auf dem Desktop eine Textdatei und ändere die Endung auf ".udl".
    Dies funktionert nur, wenn du in den Explorereinstellungen die Einstellung "Ausblenden bekannte Dateiendungen" deaktivierst (ist generell sowieso besser).
    Per Doppelclick auf die Datei kannst du eine Verbindungsfolge erstellen.
    Die .UDL kannst du mit Notepad öffnen und ab Extended properties steht deine Verbindungsfolge.
    Leider lässt sich diese auch nicht per Wizzard ändern, das hat Microsoft wohl verschlafen.
    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
    Mar 2017
    Beiträge
    4
    hallo,

    vielen Dank für deine Antwort, dass muss ich mir mal ansehen!

Similar Threads

  1. Zugriff über ODBC und MS Access
    By malzusrex in forum IBM i Hauptforum
    Antworten: 12
    Letzter Beitrag: 12-06-16, 13:30
  2. .NET native Zugriff auf iSeries
    By Booley in forum IBM i Hauptforum
    Antworten: 5
    Letzter Beitrag: 24-10-07, 09:18
  3. Antworten: 2
    Letzter Beitrag: 22-08-02, 08:27
  4. Antworten: 2
    Letzter Beitrag: 08-08-02, 12:29
  5. Zugriff auf DB/400 über JDBC
    By Rucker in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 29-09-01, 12:16

Berechtigungen

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