Das Notes Forum
Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: HeiCore am 24.11.03 - 09:10:28
-
Hi!
Wie kann ich einen ODBC Live-Zugriff realisieren?
DECS funktioniert nicht wie gewünscht.
Was mache ich falsch?
Danke für die Hilfe.
Heicore
-
Hallo Hei-Core,
was ist ein Live-Zugriff ?
Poste doch mal Deinen Code ?
Ciao
Don Pasquale
-
Habe eine Maske in Notes. Diese Felder finden sich in einer SQL-Tabelle wieder. Ich möchte bei Setzung eines Flags, durch z.B. berechnete Felder einen Zugriff auf die SQL-Version per ODBC.
Ich möchte einen Austausch per Text-File vermeiden, habe nicht wirklich Script-Erfahrung.
DECS bekomme ich nicht zum laufen.
Es sollte doch möglich sein, Felder einzubinden, die per ODBC auf den SQL-Server greifen?
Lesend und schreibend.
Vielen Dank für Eure Mühe!!
-
Hier ein Beispiel für einen lesenden zugriff auf eine SQL DB
Dim DSN As String
Dim USER As String
Dim PASSW As String
DSN = "NAME der ODBC Verbindung"
PASSW = "Passwort"
USER ="NAme"
Dim SQL As String
Dim SQL_NOTIZ As String
SQL_NOTIZ = "SELECT MAX (NOTIZ_ID) AS ID FROM FIRMENAKTE_NOTIZ"
Dim Con As New ODBCConnection
RetCode% = Con.ConnectTo( DSN, USER, PASSW)
If RetCode% <>-1 Then
Messagebox " Keine Verbindung zur Datenbank" & Chr$(10) & "Überprüfen Sie bitte den DSN Wert im Administrator Konfigurationsdokument" & Chr$(10)
Else
Dim Qry As New ODBCQuery
Set Qry.Connection = Con
Qry.SQL = SQL_NOTIZ
Print qry.SQL
Dim res As New ODBCResultSet
Set Res.Query = Qry
Res.Execute
RetCode% = Res.FirstRow
If RetCode% =True Then
getNewNotizID = Cint(Res.GetValue( "ID" )) + 1
End If
RetCode% = Res.Close( DB_CLOSE )
RetCode% = Con.Disconnect
End If
Ciao
Don Pasquale
-
Und wie schreibe ich dann nach Änderung in einem Feld?
-
WAS hat sich WANN WO geändert ?
Die Maske wird aufgerufen, in die Vorbelegung des Feldes
schreibst Du den obigen Code.
Wenn ein User etwas ändern möchte, wirst Du in diesem Fall schon eine
Inputbox verwenden müssen ( unelegant, ich weiss) und dann per SQL die Sache wieder zurückschreiben.
Dies funktioniert mit dem UPDATE BEfehl von SQL.
Ob das Update funktioniert hat erfährst über
den Rückgabewert von Res.Execute
Dim iUpdate as String
Set Qry.Connection = Con
Qry.SQL = updateSQL
Set Res.Query = Qry
iUpdate = Res.Execute
Ciao
Don Pasquale
Wenn Du weitere Fragen hast, poste doch bitte das was Du bereits hast,
dann verstehe ich besser was Du meinst