[NEWSboard IBMi Forum]

Thema: Cobol und IFS

  1. #1
    Registriert seit
    Aug 2006
    Beiträge
    2.074

    Cobol und IFS

    Kölle Alaaf.

    Kann das sein das ich in Cobol auf der AS/400 nur mit den IFS Api's arbeiten kann?

    http://archive.midrange.com/cobol400.../msg00035.html


    Und nein ich möchte kein cpystmf aus der Datenbank-Datei machen ich finde das irgendwie als Bruch im Aufruf.

    GG

  2. #2
    Registriert seit
    Oct 2013
    Beiträge
    171
    Womit willst Du denn sonst arbeiten?

  3. #3
    Registriert seit
    Aug 2006
    Beiträge
    2.074
    Naja, andere Cobol-Compiler auf anderen System bieten da die Möglichkeit Textdateien direkt zu erstellen.

    z.B. Realia Cobol.

    So finde ich es schon doof.

    .GG

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    Wenn du als "andere Systeme" z.B. Linux/Unix/Windows nimmst, so ist hier das File-IO eben für dieses primäre Dateisystem gemacht. Für sog. Indexed-Dateien wird dann ISAM verwendet.

    Auf der AS/400 hast du das komplexe Dateisystem mittels Lib/PF/LF als primäres Dateisystem wofür hier COBOL entwickelt wurde. Das IFS ist nur ein sekundäres Filesystem und halt nur per API erreichbar.

    Andere COBOL-Derivate unterstützen dafür dann z.B. kein SQL um mit Datenbanken zu kommunizieren und benötigen dafür dann API's oder bieten nur SQL für Microsoft SQL-Server an was schon eine Einschränkung ist.
    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

  5. #5
    Registriert seit
    Aug 2006
    Beiträge
    2.074
    Hallo *all,

    ich habe da mal eine Verständnisfrage:

    Ich habe mir das Programm archive.midrange.com/cobol400-l/200403/msg00035.html von der Webseite geholt und meinen Vorstellungen angepasst. Was ich nicht verstehe ist warum er unbedingt die Linkage Section braucht.

    01 ITEM-COUNT PIC S9(9) BINARY.
    LINKAGE SECTION.
    77 ERRNO PIC S9(9) BINARY.
    77 ERRMSG PIC X(1024).
    PROCEDURE DIVISION.

    Wieso kann ich das nicht in die Working Storage Section schreiben. Wenn ich das mache, meckert der Compiler.

    GG

  6. #6
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    Variablen in der Linkage haben keine Adresse, außer beim Aufruf von extern.
    Dies kann man nutzen um die Adresse selber zu setzen:

    CALL PROCEDURE '__errno'
    RETURNING ERRNO-PTR
    SET ADDRESS OF ERRNO TO ERRNO-PTR

    Deine Variable ERRMSG gehört da aber eher in die Working-Storage.
    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

  7. #7
    Registriert seit
    Aug 2006
    Beiträge
    2.074
    Tja das ist ja auch eigentlich mein Kenntnisstand.

    Aber wenn ich das Teil aus der Linkage in die Workin verschubs bekomme ich beim Wandeln.

    * 76 ID: LNC2728 BEW.STUFE 30 FOLGENR. 007927
    Nachricht . . . : 'ERRNO' muß im Kapitel Programmverbindungen ein
    Datenelement ohne Referenzänderung sein, dessen Stufennummer 01 ode
    77 ist.

    Tja, ich frage mich ja nur woher man so etwas weiß......

    GG

    BTW. Das nächste Treffen zum AWk mit Thema Cobol & SQL findet in Bad Neuenahr statt.

  8. #8
    Registriert seit
    Mar 2002
    Beiträge
    5.286
    Zitat Zitat von KingofKning Beitrag anzeigen
    BTW. Das nächste Treffen zum AWk mit Thema Cobol & SQL findet in Bad Neuenahr statt.
    Vortragsthema ist:
    "Embedded SQL" und ich werde mich bemühen die Interessen der COBOLista und der RPGler unter einen Hut zu bekommen.

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

  9. #9
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    Ich kann die Adresse einer Variablen in der Working-Storage nicht ändern!
    Dafür sind adresslose Variablen (eben auf 01 oder 77) in der Linkage Section erforderlich.
    Verschiebe die ERRNO in Working-Storage, aber lass dann das "SET ADDRESS OF ERRNO" weg. Die Variable hat dann eine Adresse.
    Allerdings ist dann der Effekt weg, auf die externe ERRNO zuzugreifen da du dann eine eigene Variable hast.
    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

  10. #10
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    Das Wissen dazu steht im COBOL-Handbuch.
    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

  11. #11
    Registriert seit
    Aug 2006
    Beiträge
    2.074
    Das ich mir den Schinken das letzte mal komplett durchgelesen habe ist wohl auch schon länger her, und damals konnte ich wohl mit den Konstrukten nichts anfangen und habe das Wissen in die Ablage rund und grün verschoben....GG

  12. #12
    Registriert seit
    Oct 2013
    Beiträge
    171
    Ich hoffe, dass Ärzte anders unterwegs sind.

Similar Threads

  1. BS-Masken mit COBOL
    By Andreas Herzfeldt in forum IBM i Hauptforum
    Antworten: 9
    Letzter Beitrag: 18-02-05, 13:11
  2. Cobol-Compiler
    By infomio in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 03-04-03, 13:58
  3. Cobol und QTMHGETENV API
    By kaym in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 23-01-03, 18:54
  4. COBOL
    By Claudia Lange in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 23-07-02, 12:32
  5. SQL-Cobol und OVRDBF
    By kaym in forum IBM i Hauptforum
    Antworten: 5
    Letzter Beitrag: 07-07-02, 14:49

Berechtigungen

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