[NEWSboard IBMi Forum]
Seite 2 von 2 Erste 1 2
  1. #13
    Registriert seit
    Mar 2002
    Beiträge
    5.287
    genauso geht das auch!
    in der init mit RSLVSP den ProcPointer des main programms holen und cachen, wenn main programm *PGM oder *SRVPGM sein kann, dann muss man das dem Programm eh' mitteilen (oder notfalls vorab ermitteln)

    D*B

    Zitat Zitat von Xanas Beitrag anzeigen
    Zu begin Ruft jedes Programm meine Init routine auf an wurde das Programm in die qsqp400 struktur geschrieben und wir dann nicht mehr geändert.

    Das Problem ist genau das Cachen hat über den Namen nicht Funktioniert, deswegen lag meine Hoffnung in dem Pointer der Dann noch eben auf das Objekt zeigt, was auf einmal die die QRPGLEOBJ geschupst wurde.

    Ich hab nämlich mal so eine Krücke gebaut und mir den namen über den Callstack vor jedem execut ermittelt. Und siehe da keine SQL-System fehler mehr, aber das ging mit zu sehr auf die Performance.
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  2. #14
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Wenn es nur darum geht, den Joblogeintrag zu verhindern, kannst du doch das API QMHRCVPM im Monitor-Fall aufrufen und die Nachricht aus dem Joblog löschen.
    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. #15
    Registriert seit
    Sep 2004
    Beiträge
    136
    Zitat Zitat von BenderD Beitrag anzeigen
    genauso geht das auch!
    in der init mit RSLVSP den ProcPointer des main programms holen und cachen, wenn main programm *PGM oder *SRVPGM sein kann, dann muss man das dem Programm eh' mitteilen (oder notfalls vorab ermitteln)

    D*B
    Gut, dann bin ich ja wenigstens auf dem richtigem Weg. Aber ich versuchs mal ohne den monitor hin zu bekommen.

    Vielen Dank euch Beiden.

  4. #16
    Registriert seit
    Mar 2002
    Beiträge
    5.287
    am einfachsten mit c- function access auf Existenz prüfen. (Beispiel hierzu in INSTREAM und OUTSTREAM auf meiner Open Source Seite)

    D*B

    Zitat Zitat von Xanas Beitrag anzeigen
    Gut, dann bin ich ja wenigstens auf dem richtigem Weg. Aber ich versuchs mal ohne den monitor hin zu bekommen.

    Vielen Dank euch Beiden.
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  5. #17
    Registriert seit
    Sep 2004
    Beiträge
    136
    So hat super funktioniert, bei der Entscheidung wegen der Objektart hab ich mich jetzt vor erst mal auf die Nameskonventionen unser Firmer verlassen, aber mit den SystemPointern klappt wie erwartet.

    Gibts eigentlich ein öffendliches Interesse an an so einem Serviceprogramm?

  6. #18
    Registriert seit
    Sep 2004
    Beiträge
    136
    Die Verwendung könnte dann so aussehen.

    PHP-Code:
    #SQL_init();

    #SQL_setCursor('PARTSTA');

    query 'SELECT kern, intbe1 
          + '
    FROM partsta '
          + '
    WHERE intbe1 like ?';

    if #SQL_prepare( query: SQL_OPEN_READ );
      search.intbe1 = '
    %1502%';

       #SQL_bindParam( 1: %addr( search.intbe1 )
                     : SQL_VARCHAR: %len( search.intbe1 ) );
       if #SQL_open();
         #SQL_bindParam( 1: %addr( result.kern )
                      : SQL_CHAR: %len( result.kern ) );
        #SQL_bindParam( 2: %addr( result.intbe1 )
                      : SQL_CHAR: %len( result.intbe1 ) );
        // Für Faule geht auch das
        //#SQL_bindResultStructure( %addr( result ): %len( result ) );

        dow #SQL_fetch();
            dsply result;
        enddo;

        #SQL_close();

        endif;
    endif;

    #SQL_free(); 

  7. #19
    Registriert seit
    Mar 2002
    Beiträge
    5.287
    eine Kleinigkeit habe ich noch zu meckern:
    Knastfrei wäre besser, #&$§ und Co. werden im EBCDIC nicht konsistent übertragen und da kann es passieren, dass das, was mit deutscher CCSID funzt, sich mit anderer CCSID nicht wandeln lässt.
    Ansonsten wäre das nicht so völlig uninteressant, weil man mal überlegen könnte, ob man so ein Teil transparent remote (per Java JDBC Bridge) und lokal zugreifen lassen könnte.

    D*B

    Zitat Zitat von Xanas Beitrag anzeigen
    Die Verwendung könnte dann so aussehen.

    PHP-Code:
    #SQL_init();

    #SQL_setCursor('PARTSTA');

    query 'SELECT kern, intbe1 
          + '
    FROM partsta '
          + '
    WHERE intbe1 like ?';

    if #SQL_prepare( query: SQL_OPEN_READ );
      search.intbe1 = '
    %1502%';

       #SQL_bindParam( 1: %addr( search.intbe1 )
                     : SQL_VARCHAR: %len( search.intbe1 ) );
       if #SQL_open();
         #SQL_bindParam( 1: %addr( result.kern )
                      : SQL_CHAR: %len( result.kern ) );
        #SQL_bindParam( 2: %addr( result.intbe1 )
                      : SQL_CHAR: %len( result.intbe1 ) );
        // Für Faule geht auch das
        //#SQL_bindResultStructure( %addr( result ): %len( result ) );

        dow #SQL_fetch();
            dsply result;
        enddo;

        #SQL_close();

        endif;
    endif;

    #SQL_free(); 
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  8. #20
    Registriert seit
    Sep 2004
    Beiträge
    136
    Jaja die Kleinigkeit würde ich auch nicht mehr machen, aber die Kollegen wollten Serviceprogramm Funktionen sofort erkennen und so sind wir, unwissend wie wir waren, auf das Knast-Zeichen gekommen.

    Gibt's denn irgend ein SVN oder so was, wo AS/400 Knechte, so was als Open Source ablegen könnten. Natürlich würde ich dann vorher noch eine Knastfreie Version erstellen. Und noch andere offensichtliche Klopper ausräumen.

  9. #21
    Registriert seit
    Mar 2002
    Beiträge
    5.287
    SourceForge

    was den Knast angeht, da habe ich auch meine Zeit für gebraucht...


    Zitat Zitat von Xanas Beitrag anzeigen
    Jaja die Kleinigkeit würde ich auch nicht mehr machen, aber die Kollegen wollten Serviceprogramm Funktionen sofort erkennen und so sind wir, unwissend wie wir waren, auf das Knast-Zeichen gekommen.

    Gibt's denn irgend ein SVN oder so was, wo AS/400 Knechte, so was als Open Source ablegen könnten. Natürlich würde ich dann vorher noch eine Knastfreie Version erstellen. Und noch andere offensichtliche Klopper ausräumen.
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  10. #22
    Registriert seit
    Sep 2004
    Beiträge
    136
    Zitat Zitat von BenderD Beitrag anzeigen
    SourceForge
    Bohhhhr da muss man ja 200 Zeichen Registration Description für ein Projekt
    in Englisch eintippen. Was soll man da alles schreiben. Naja ich mach das erstmal fertig und dann schau ich mal wo ich das Veröffentliche.

Similar Threads

  1. Hilfe benötigt bei O-Bestimmungen
    By woodstock99 in forum NEWSboard Programmierung
    Antworten: 7
    Letzter Beitrag: 14-04-08, 14:43
  2. Probleme API QUSLJOB aufzurufen
    By TMusolf in forum NEWSboard Programmierung
    Antworten: 4
    Letzter Beitrag: 25-01-07, 12:42
  3. Hilfe! Rollback bei Transaktionen funktioniert nicht
    By remo2010 in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 23-11-06, 13:31
  4. Hilfe bei Lodrun Anleitung
    By marcel331 in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 12-08-06, 13:01
  5. Hilfe benötigt! Rücksicherung Daten von MAGSTAR Band
    By cicero22 in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 20-10-05, 11:59

Berechtigungen

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