Autor Thema: ODBC Problem Notes - SQL Server  (Gelesen 1550 mal)

Offline RonMat

  • Junior Mitglied
  • **
  • Beiträge: 64
  • Geschlecht: Männlich
  • Immer weiter, immer weiter......
ODBC Problem Notes - SQL Server
« am: 25.06.08 - 09:05:30 »
Hallo Gemeinde,
ich stehe hier vor einem seltsamen Problem. Ich muß Daten auf einem SQL Server auslesen und entsprechende Dokumente in LN erzeugen. Ich habe mir hierzu eine Storage Procedure in SQL geschrieben der mir die entsprechenden Daten zubereitet und wollte diese nun mit der Result - Methode auslesen und in LN schreiben.
Bis 5000 Datensätze gibt es auch kein Problem - aber wenn ich mehr Datensätze einlese verhält sich LN sehr eigenartig. Ich kann nicht mehr als 7452 Datensätze einlesen.

Nachfolgendes Rohscript habe ich hierfür geschrieben:

Dim session As New NotesSession
   Set db = session.CurrentDatabase   
   Dim qrydoc As notesuidocument
   Dim view As NotesView
   Dim dc As NotesDocumentCollection
   Set view = db.GetView( "V_MatchCode" )
   
   
    '**********Beginn Datumsfestlegung******************************************
     ' Abfrage des heutigen Datums( als Enddatum)  - rechne als Startdatum 10 Tage zurück.
   'Mit Formatbefehl in das SQL-Format bringen
   
   Dim qry_from2 As New NotesDateTime( Today)
   Call qry_from2.AdjustDay(-10)
   qry_From=Format(Datevalue(Cstr(qry_from2.localtime)), "yyyy-mm-dd")       'Startdatum = Heute - 28 Tage
   qry_To=Format(Datevalue(Cstr(Today)), "yyyy-mm-dd")                                     ' Enddatum = HEUTE
   '*********************************Ende der Datumsfestlegung **********************************
      
   
   '*********************************Aufruf der ODBC Verbindung***********************************
   Dim con As New ODBCConnection
   Dim qry As New ODBCQuery
   Dim result As New ODBCResultSet
   Set qry.Connection = con   
   Set result.Query = qry
   
   If con.ConnectTo ("xxxx", "xxxxxxxxxxxxx","xxxxxx") Then                                           ' Name ODBC Verbindung,User,PW auf und öffne Verbindung
      Print "Connected to " & con.DataSourceName,,   "Connection made ..."
      
      qry.SQL = "exec [RODEIT].[ER_all]"+"'"+qry_From+"','"+qry_To+"'"
      result.Execute      
      If result.IsResultSetAvailable Then
         Do
            result.NextRow   
      
            Set doc = db.CreateDocument
            doc.form="ER"
            Call doc.Replaceitemvalue("activity_id", result.GetValue("activity_id"))
            Call doc.Replaceitemvalue("Voyage_No", result.GetValue("Voyage_No"))
            Call doc.Replaceitemvalue("City_point_id", result.GetValue("City_point_id"))
            Call doc.Replaceitemvalue("activity_date", result.GetValue("activity_date"))
            Call doc.Replaceitemvalue("eqp_type_id", result.GetValue("eqp_type_id"))
            Call doc.Replaceitemvalue("eqp_id", result.GetValue("eqp_id"))
            Call doc.Replaceitemvalue("Units",1)
            Call doc.Replaceitemvalue("Carrier", result.GetValue("Carrier"))
            Call doc.Replaceitemvalue("MatchCode",Matchcode)
            Call doc.Replaceitemvalue("Vessel_Code", result.GetValue("codigo_Nave_csav"))
            Call doc.Replaceitemvalue("Voyage", result.GetValue("Numero_viaje"))
            Call doc.Replaceitemvalue("Service_Vessel", result.GetValue("codigo_servicio"))
            Call doc.Replaceitemvalue("Service_Booking", result.GetValue("service_id"))
            Call doc.Replaceitemvalue("Commodity_id", result.GetValue("Commodity_id"))
            Call doc.Replaceitemvalue("temp_min", result.GetValue("temp_min"))
            Call doc.Replaceitemvalue("temp_max", result.GetValue("temp_max"))
            Call doc.Replaceitemvalue("hazardous", result.GetValue("hazadous"))
            Call doc.Replaceitemvalue("item_high", result.GetValue("item_high"))
            Call doc.Replaceitemvalue("item_width", result.GetValue("item_width"))
            Call doc.Replaceitemvalue("item_lenght", result.GetValue("item_lenght"))   
            Call doc.Save(True,True)
                        
            'Else
               ' Ich mache nichts - später kommt hier ein Zusatz
            
            
            'End If
         Loop Until result.IsEndOfData
         result.Close(DB_CLOSE)
      Else
         Exit Sub
      End If
      con.Disconnect
      
   End If   

Offline Joker

  • Aktives Mitglied
  • ***
  • Beiträge: 109
  • Geschlecht: Männlich
  • Let`s start !!
Re: ODBC Problem Notes - SQL Server
« Antwort #1 am: 25.06.08 - 09:54:21 »
Hi,

hatte das Problem auch schonmal.
Probieres mal mit folgender Einstellung:

result.CacheLimit = DB_NONE

Gruss
Martin

Offline RonMat

  • Junior Mitglied
  • **
  • Beiträge: 64
  • Geschlecht: Männlich
  • Immer weiter, immer weiter......
Re: ODBC Problem Notes - SQL Server
« Antwort #2 am: 25.06.08 - 10:05:26 »
Werde ich mal einbauen

Offline RonMat

  • Junior Mitglied
  • **
  • Beiträge: 64
  • Geschlecht: Männlich
  • Immer weiter, immer weiter......
Re: ODBC Problem Notes - SQL Server
« Antwort #3 am: 27.06.08 - 12:44:40 »
result.CacheLimit = DB_NONE

Das war die Lösung. Prima.

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz