Autor Thema: ODBC AS/400 (Mehrere DSN) & Lotus Script  (Gelesen 4422 mal)

Offline reraru

  • Aktives Mitglied
  • ***
  • Beiträge: 109
  • Geschlecht: Männlich
ODBC AS/400 (Mehrere DSN) & Lotus Script
« am: 02.08.05 - 16:02:36 »
Hallo zusammen!

Ich greife mit LS auf eine AS/400 ODBC Datenbank zu. Das klappt bisher sehr gut.


Sub Click(Source As Button)
   
   Dim Session As New NotesSession
   Dim db As NotesDatabase   
   Set db = Session.currentdatabase   
   Dim view As NotesView   
   Dim Del As NotesDocument   
   Dim Con As New ODBCConnection   
   Dim Qry As New ODBCQuery   
   Dim res As New ODBCResultSet   
   
   'Cache des Recordsets auf MAXIMUM setzen. Sonst werden nicht alle Datensätze angezeigt!!!
   res.CacheLimit = limit&   
   
   ' alle Kunden vor neuem Import aus Notes DB löschen
   Dim collection As NotesDocumentCollection
   Set collection = db.AllDocuments
   If collection.Count >= 1  Then
      Call collection.RemoveAll ( True )
   End If
   
    'Verbindungsaufbau zur AS/400
   RetCode% = Con.ConnectTo("ANCRADTA","user","password")
   
   Set Qry.Connection = Con     '   
   Qry.SQL = "SELECT KDKDNR,KDNAM1,KDNAM2,KDSTR1,KDPLZ1,KDORT  FROM ANCRADTA.KDSTAMPF WHERE KDPRGR <> 30  ORDER BY KDNAM1"
   Set Res.Query = Qry
   Res.Execute
   RetCode% = Res.FirstRow   
   Do While RetCode% =True
      Dim Doc As New NotesDocument(db)         
      doc.form = "Person"
      doc.CompanyName = Cstr(Res.GetValue("KDNAM1") )
      doc.OfficeStreetAddress = Cstr(Res.GetValue("KDSTR1"))
      doc.OfficeZip = Cstr(Res.GetValue("KDPLZ1"))
      doc.OfficeCity = Cstr(Res.GetValue("KDORT"))     
      Call doc.save (True, True)
      RetCode% = Res.NextRow
   Loop
   RetCode% = Res.Close( DB_CLOSE )
   RetCode% = Con.Disconnect
   
End Sub


In meinem SQL Statement möchte ich nun aber auf mehr als eine ODBC Verbindung zugreifen.

Ich verwende die Felder aus mehreren Tabellen. Die Tabellen befinden sich in verschiedenen Bibliotheken auf unserer AS/400.

Wie kann ich das anstellen?

Vielen Dank im Voraus!

Gruß René

P.S.: Die Suchfunktion hat mir leider nicht geholfen!
System:
Lotus Notes 8.5.2 / Lotus Domino 8.5.2 FP2
Notes-Formelsprache (wenig Script-Kenntnisse)

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: ODBC AS/400 (Mehrere DSN) & Lotus Script
« Antwort #1 am: 02.08.05 - 16:33:56 »
Ich weiss nicht wie du deinen ODBC Driver konfiguriert hast. Wenn der nur auf die Lib Zugriff hat dann wird das nicht gehen. Wenn du aber einen SystemODBC hast, dann solltest du mit:
SystemName.Libl.File in deinem SQL Statement arbeiten können.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline reraru

  • Aktives Mitglied
  • ***
  • Beiträge: 109
  • Geschlecht: Männlich
Re: ODBC AS/400 (Mehrere DSN) & Lotus Script
« Antwort #2 am: 02.08.05 - 17:32:55 »
Hi!

Also ich habe bisher im Script hier die ODBC-Verbindung deklariert:

 'Verbindungsaufbau zur AS/400
   RetCode% = Con.ConnectTo("ODBC Datenquelle","user","password")

Die neue ODBC Datenquelle ist eine System DSN!

In der Datenquelle habe ich keine Bibliothek hinterlegt.

In diesem Fall müsste Dein Vorschlag:

SystemName.Libl.File evtl. funktionieren.

Jetzt habe ich gerade noch ein ganz besonders tolles Feature entdeckt!

Wenn ich das Script (das funktionierende) speichere ohne eine Änderung zu machen,
dann funktioniert das.

Gehe ich hin und setze nur irgendwo eine Leerstelle an (egal wo auch im Kommentar),
dann schlägt der Designer auf einen Hammer!

Das kann doch nur ein Bug sein, oder???

Vielen Dank!

Gruß René


System:
Lotus Notes 8.5.2 / Lotus Domino 8.5.2 FP2
Notes-Formelsprache (wenig Script-Kenntnisse)

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: ODBC AS/400 (Mehrere DSN) & Lotus Script
« Antwort #3 am: 02.08.05 - 18:15:16 »
Wenn du jetzt noch verrätst auf welche nHammer?

Das Problem ist das nicht viele von uns mal eben eine AS/400 ISeries oder wie sie aktuell gerade heissen mag zu Hause stehen haben.
Das bedeutet, Für tiefergehende Unterstützung sind wir auf Fernraten oder einen vorOrt Termin angewiesen.  >:D
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline Ralf_M_Petter

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.879
  • Geschlecht: Männlich
  • Jeder ist seines eigenen Glückes Schmied
    • Ralf's Blog
Re: ODBC AS/400 (Mehrere DSN) & Lotus Script
« Antwort #4 am: 03.08.05 - 07:49:59 »
Die aktuelle heisst I/5.

Ich verstehe das Problem von reraru aber wirklich beim besten Willen auch nicht. Bekommt er eine Fehlermeldung?

Ja Ja Fragen über Fragen und keine Antworten!

Grüße

Ralf
Jede Menge Tipps und Tricks zu IT Themen findet Ihr auf meinem Blog  Everything about IT  Eine wahre Schatzkiste sind aber sicher die Beiträge zu meinem Lieblingsthema Tipps und Tricks zu IBM Notes/Domino Schaut doch einfach mal rein.

Offline reraru

  • Aktives Mitglied
  • ***
  • Beiträge: 109
  • Geschlecht: Männlich
Re: ODBC AS/400 (Mehrere DSN) & Lotus Script
« Antwort #5 am: 03.08.05 - 10:14:44 »
Moin zusammen!

@Thomas Schulte:

Mit auf den Hammer laufen meine ich einen Syntaxfehler:



Dieser Fehler düfte ja eigentlich nicht auftreten, da 1. der Code funktioniert und 2. ich ja eigentlich nichts ändere, sondern lediglich erneut speichere.
___

Wenn ich Dich also richtig verstehe, dann soll ich eine ODBC zur AS/400 einrichten, in der ich keine Bibliothek angebe:





Dann würd ich die Verbindung per LS so aufbauen:

Code

'Verbindungsaufbau zur AS/400
RetCode% = Con.ConnectTo("ODBC DSN","user","password")
	
Set Qry.Connection = Con       
Qry.SQL = "SELECT * BIBLIOTHEK1.DATEI1.FELD1,  BIBLIOTHEK2.DATEI3.FELD1 FROM BIBLIOTHEK1.DATEI1, BIBLIOTHEK2.DATEI3" 


Wäre das vom Sinn her richtig???
System:
Lotus Notes 8.5.2 / Lotus Domino 8.5.2 FP2
Notes-Formelsprache (wenig Script-Kenntnisse)

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: ODBC AS/400 (Mehrere DSN) & Lotus Script
« Antwort #6 am: 03.08.05 - 10:23:20 »
Ja vom Sinn her wäre das richtig.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline Ralf_M_Petter

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.879
  • Geschlecht: Männlich
  • Jeder ist seines eigenen Glückes Schmied
    • Ralf's Blog
Re: ODBC AS/400 (Mehrere DSN) & Lotus Script
« Antwort #7 am: 03.08.05 - 10:25:17 »
Hm wobei das SQL Statement keinen Sinn macht? Übrigens wenn die Feldnamen eindeutig sind, kannst du die Lib.Datei vor den Feldnamen weglassen.

Grüße

Ralf

P.S. Übrigens habe deinen Code probiert, lässt sich bei mir einwandfrei kompilieren. Kannst du den Code mal in eine frische Datenbank kopieren und dort zu speichern probieren.
Jede Menge Tipps und Tricks zu IT Themen findet Ihr auf meinem Blog  Everything about IT  Eine wahre Schatzkiste sind aber sicher die Beiträge zu meinem Lieblingsthema Tipps und Tricks zu IBM Notes/Domino Schaut doch einfach mal rein.

Offline reraru

  • Aktives Mitglied
  • ***
  • Beiträge: 109
  • Geschlecht: Männlich
Re: ODBC AS/400 (Mehrere DSN) & Lotus Script
« Antwort #8 am: 03.08.05 - 10:28:49 »
Hi!

@Ralf: Das "*" ist über, dann müsste es passen!

Ich werde jetzt mal eine neue DB anlegen und den Code dort rein kopieren!

Stay tuned!  ;D
System:
Lotus Notes 8.5.2 / Lotus Domino 8.5.2 FP2
Notes-Formelsprache (wenig Script-Kenntnisse)

Offline reraru

  • Aktives Mitglied
  • ***
  • Beiträge: 109
  • Geschlecht: Männlich
Re: ODBC AS/400 (Mehrere DSN) & Lotus Script
« Antwort #9 am: 03.08.05 - 10:33:29 »
Ich habe es probiert! Der Fehler taucht trotzdem auf.

Ich habe gerade noch gesehen das ja schon diese Deklaration angemeckert wird:

Dim Con As New ODBCConnection   
Dim Qry As New ODBCQuery   
Dim res As New ODBCResultSet   

Class or type name not found: ODBCConnection
Class or type name not found: ODBCQuery 
Class or type name not found: ODBCResultSet

???
System:
Lotus Notes 8.5.2 / Lotus Domino 8.5.2 FP2
Notes-Formelsprache (wenig Script-Kenntnisse)

Offline Ralf_M_Petter

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.879
  • Geschlecht: Männlich
  • Jeder ist seines eigenen Glückes Schmied
    • Ralf's Blog
Re: ODBC AS/400 (Mehrere DSN) & Lotus Script
« Antwort #10 am: 03.08.05 - 10:37:19 »
Das USELSX "*LSXODBC" hast du aber schon oder ?

Grüße

Ralf
Jede Menge Tipps und Tricks zu IT Themen findet Ihr auf meinem Blog  Everything about IT  Eine wahre Schatzkiste sind aber sicher die Beiträge zu meinem Lieblingsthema Tipps und Tricks zu IBM Notes/Domino Schaut doch einfach mal rein.

Offline reraru

  • Aktives Mitglied
  • ***
  • Beiträge: 109
  • Geschlecht: Männlich
Re: ODBC AS/400 (Mehrere DSN) & Lotus Script
« Antwort #11 am: 03.08.05 - 11:50:50 »
 ;D .... Aäähhh....

Sorry!

Oh mein Gott! Ich weiss nicht wie, aber ich habe tatsächlich vergessen, das in die Datenbank zu kopieren!   >:D

Sorry!

Jetzt funktioniert nach etwas Modifizierung am SQL Statement auch alles!

Vielen, vielen Dank noch einmal!

Gruß René
System:
Lotus Notes 8.5.2 / Lotus Domino 8.5.2 FP2
Notes-Formelsprache (wenig Script-Kenntnisse)

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: ODBC AS/400 (Mehrere DSN) & Lotus Script
« Antwort #12 am: 03.08.05 - 11:52:31 »
Siehste wir können auch Blindflug.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline Ralf_M_Petter

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.879
  • Geschlecht: Männlich
  • Jeder ist seines eigenen Glückes Schmied
    • Ralf's Blog
Re: ODBC AS/400 (Mehrere DSN) & Lotus Script
« Antwort #13 am: 03.08.05 - 11:55:32 »
kein Problem alles schon selbst gehabt. Lotus Notes verflucht nur um am nächsten Tag draufzukommen, dass man den Fehler selbst gemacht hat.

Grüße

Ralf
Jede Menge Tipps und Tricks zu IT Themen findet Ihr auf meinem Blog  Everything about IT  Eine wahre Schatzkiste sind aber sicher die Beiträge zu meinem Lieblingsthema Tipps und Tricks zu IBM Notes/Domino Schaut doch einfach mal rein.

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz