[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    Feb 2001
    Beiträge
    20.254
    Das "wenn möglich" gibt dir ja Gelegenheit.
    Also: Ohne Cursor funktioniert ein Select nur, wenn max. genau 1 Zeile erwartet wird.
    In diesem Fall kodiert man einen "select ... into ...".

    Alle anderen Select's gehen nur mit Cursor (ohne Cursor kein Fetch).
    Die SQLCA musst du auf jeden Fall auswerten:
    SQLCOD = 100 => keine Daten.
    Allerdings liefert der letzte Fetch ebenfalls SQLCOD=100, nur in der Struktur können trotzdem Sätze gelesen worden sein (Z.B. nur 11999 Sätze).
    Dann musst du eben noch 999 Sätze verarbeiten, deine Struktur ist eben nicht vollständig gefüllt.
    Die nachfolgenden Vorkommen der Mehrfachstruktur habe immer noch den VORHERIGEN Inhalt !!!

    Und wenn wir über RPGLE sprechen kann der Fetch dir den Speicher zerhauen, wenn deine Struktur weniger Vorkommen hat, als du im Fetch angibst.
    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

  2. #2
    Registriert seit
    Dec 2006
    Beiträge
    7
    Zitat Zitat von Fuerchau
    Alle anderen Select's gehen nur mit Cursor (ohne Cursor kein Fetch).
    Die SQLCA musst du auf jeden Fall auswerten:
    SQLCOD = 100 => keine Daten.
    Allerdings liefert der letzte Fetch ebenfalls SQLCOD=100, nur in der Struktur können trotzdem Sätze gelesen worden sein (Z.B. nur 11999 Sätze).
    Dann musst du eben noch 999 Sätze verarbeiten, deine Struktur ist eben nicht vollständig gefüllt.
    Die nachfolgenden Vorkommen der Mehrfachstruktur habe immer noch den VORHERIGEN Inhalt !!!

    Und wenn wir über RPGLE sprechen kann der Fetch dir den Speicher zerhauen, wenn deine Struktur weniger Vorkommen hat, als du im Fetch angibst.
    Ok, nun weiß ich wie das Zeug auf der AS400 geht. Aber ich entwickle in .NET über die IBM-Schnittstelle, wie bekomm ich den nun die Objekte da raus? ^^ Alles muss immer so schwer sein

    Achja, sorry für das dumme Nachgefrage, bin nunmal ein Anfänger...

  3. #3
    Registriert seit
    Feb 2001
    Beiträge
    20.254
    Nun, da bist du ggf. hier falsch.
    Aber in soweit:

    .NET arbeitet immer asynchron !
    Wieviele Sätze blockweise verarbeitet werden bestimmst du über die PageSize (o.ä.).
    .NET regelt den Cursor intern !

    Es funktionieren auch Update und Delete, allerdings BATCH.
    Für die AS/400-Dateien muss nur ein UNIQUE-Key vorhanden sein, dann kann .NET den Update/Delete automatisch als SQL definieren, ansonsten wird diese Funktion abgelehnt.

    Es gibt im Recordset auch eine Supports-Eigenschaft, in der festgestellt werden kann, ob das Recordset Update/Delete unterstützt.

    Im Falle des Updates/Deletes kann ein Fehler ausgelöst werden, dass sich die Daten zwischenzeitlich geändert haben.
    Über einen Filter kann man sich diese Sätze dann rausselektieren, da mittels UpdateBatch mehrere Operationen durchgeführt werden können und somit mehrere Sätze betroffen sein können.

    Für das Arbeiten mit .NET kannst du die Designer verwenden um komfortabel Queries zu definieren.

    PS:
    Du solltes zum Arbeiten mit der AS/400 den ODBC-Treiber an Stelle des OLEDB IBMDA400 verwenden (ODBC-Provider von .NET), da dieser mehr Komfort bietet.
    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

  4. #4
    Registriert seit
    Dec 2006
    Beiträge
    7
    kay, dann werd ich mal weiterbasteln. Danke für die Hilfe

  5. #5
    Registriert seit
    Dec 2007
    Beiträge
    16
    Hallo,

    in C# ist dieses ohne weiteres möglich:

    Die Fill Methode des DataAdapters kann mit den Parametern "Start" und "Anzahl" aufgerufen werden.

    Frag mich aber nicht wie perfomant das ist und was intern da passiert.

    Gruß Björn

Similar Threads

  1. Message aus MSGF in RPG-ILE auslesen
    By TomWaf in forum NEWSboard Programmierung
    Antworten: 16
    Letzter Beitrag: 24-08-10, 13:47
  2. Teildateien mit sql auslesen
    By chrisssiie in forum NEWSboard Programmierung
    Antworten: 19
    Letzter Beitrag: 09-01-07, 10:53
  3. Anzahl gelöschter Datensätze in PF
    By Der_Unwissende in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 20-10-06, 08:32
  4. Mailadresse von User auf Iseries speichern und auslesen
    By linguin in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 22-06-06, 08:39
  5. Spoolattribute zur Seitengröße auslesen?
    By FrankL in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 27-04-06, 14:24

Berechtigungen

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