RunRexx() Wozu braucht man das ?

Konzeptionelles, Technisches, Termine, Fragen zum Hersteller usw.

Moderator: Moderatoren

Antworten
Benutzeravatar
BJelinek
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 218
Registriert: Sa, 02. Jun 2012 20:57
Wohnort: 73257 Köngen
Hat sich bedankt: 9 Mal
Danksagung erhalten: 3 Mal

RunRexx() Wozu braucht man das ?

Beitrag von BJelinek »

Hallo zusammen.

Wozu braucht oder benutzt man RunRexx().

Komme mit der Beschreibung in der Version 2.0 1392 nicht klar.

Wird dies von jemandem benutzt?

Schon mal Frohe Ostern
Grüße
Bernd

Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16502
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Re: RunRexx() Wozu braucht man das ?

Beitrag von Martin Altmann »

Moin,
meinst Du das hier: https://doc.alaska-software.com/content ... nrexx.html
Wenn ja: Wahrscheinlich keiner von uns - ist für OS/2-Skripte

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: RunRexx() Wozu braucht man das ?

Beitrag von Jan »

Martin,

REXX geht auch unter Windows (und Linux, Amiga, Unix-Derivate, und noch ein paar mehr). Wenn das nur für OS/2 wäre, dann würde Alaska da sicher keine Zeit rein investieren. Es gibt ja keine aktuelle Xbase++-Version für OS/2.

Wobei ich Dir sonst zustimme: Ich kenne wissentlich niemanden, der REXX benutzt. Aber irgend ein Alaska-Kunde muß wichtig genug sein das Alaska das für den umgesetzt hat. Wäre mal interessant zu wissen, was man damit ganz praktisch gesehen alles anstellen kann. Vielleicht käme man dabei dann ja auf den Geschmack.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Werner_Bayern
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2120
Registriert: Sa, 30. Jan 2010 22:58
Wohnort: Niederbayern
Hat sich bedankt: 29 Mal
Danksagung erhalten: 70 Mal

Re: RunRexx() Wozu braucht man das ?

Beitrag von Werner_Bayern »

REXX is an interpreter language which automates program execution and allows for easy changes. Using REXX, procedures are programmed which can be called and executed using a REXX command processor. Open Object Rexx (ooRexx) is an open-source REXX interpreter which can be used for executing REXX scripts under Windows, see https://www.oorexx.org.
Aus der Hilfe.
es grüßt

Werner

<when the music is over, turn off the lights!>
Benutzeravatar
BJelinek
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 218
Registriert: Sa, 02. Jun 2012 20:57
Wohnort: 73257 Köngen
Hat sich bedankt: 9 Mal
Danksagung erhalten: 3 Mal

Re: RunRexx() Wozu braucht man das ?

Beitrag von BJelinek »

Die Hilfe ist jetzt viel umfangreicher.
Kein Verweis auf oorexx.org
Grüße
Bernd

Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Werner_Bayern
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2120
Registriert: Sa, 30. Jan 2010 22:58
Wohnort: Niederbayern
Hat sich bedankt: 29 Mal
Danksagung erhalten: 70 Mal

Re: RunRexx() Wozu braucht man das ?

Beitrag von Werner_Bayern »

:?:
es grüßt

Werner

<when the music is over, turn off the lights!>
Benutzeravatar
BJelinek
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 218
Registriert: Sa, 02. Jun 2012 20:57
Wohnort: 73257 Köngen
Hat sich bedankt: 9 Mal
Danksagung erhalten: 3 Mal

Re: RunRexx() Wozu braucht man das ?

Beitrag von BJelinek »

In der Version 2.0 1392 von Heute

Lange Hilfe mit vielen Beispielen.
Grüße
Bernd

Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: RunRexx() Wozu braucht man das ?

Beitrag von Jan »

Achtung: Die Onlinehilfe, auf die Martin verlinkt hat. Nicht die lokal Hilfefunktion.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
BJelinek
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 218
Registriert: Sa, 02. Jun 2012 20:57
Wohnort: 73257 Köngen
Hat sich bedankt: 9 Mal
Danksagung erhalten: 3 Mal

Re: RunRexx() Wozu braucht man das ?

Beitrag von BJelinek »

Der Hinweis auf oorexx.org steht doch drin, habs überlesen.

Aber wie kommt man auf die Online-Hilfe ?
Grüße
Bernd

Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: RunRexx() Wozu braucht man das ?

Beitrag von Jan »

Bernd,

schau Dir den ersten Beitrag von Martin an, der zweite Beitrag in diesem Thread.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
BJelinek
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 218
Registriert: Sa, 02. Jun 2012 20:57
Wohnort: 73257 Köngen
Hat sich bedankt: 9 Mal
Danksagung erhalten: 3 Mal

Re: RunRexx() Wozu braucht man das ?

Beitrag von BJelinek »

Danke Jan,

Was ich meine, gab es einen Hinweis auf der Homepage von Alaska oder Workbench oder
sonst wo.

Wo habe ich die Information übersehen.

Habe mir jetzt eine Verknüpfung gesetzt aus dem Link von Martin.
( Danke Martin )
Grüße
Bernd

Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: RunRexx() Wozu braucht man das ?

Beitrag von Jan »

Bernd,

meines WIssens gibt es nur drei von Alaska geführte Orte, wo das erwähnt wird:
- Die entsprechenden Themen in der chm in der Xbase++-Installation
- Die Hilfe (Release Information->Xbase++->Changelog per build->Build 2.00.1392)
- Die Onlinehilfe auf doc.alaska-software.com

Auf der Homepage sowieso nicht, die ist seit Jahren vollkommen veraltet, da tut sich niemals überhaupt irgend was (ich hab denen vor mehreren Jahren mal eine lange Liste mit den allerschlimmsten Punkten geschickt, das gab ein unterkühltes Danke, und das wars dann. Nicht ein Punkt davon wurde jemals von denen angepackt). In der Workbench nur das was die Hilfefunktion DIr bietet. Und in den mitgelieferten Samples auch keine Erwähnung.

Jan
Zuletzt geändert von Jan am Mi, 31. Mär 2021 23:35, insgesamt 1-mal geändert.
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
BJelinek
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 218
Registriert: Sa, 02. Jun 2012 20:57
Wohnort: 73257 Köngen
Hat sich bedankt: 9 Mal
Danksagung erhalten: 3 Mal

Re: RunRexx() Wozu braucht man das ?

Beitrag von BJelinek »

Danke :idea:
Grüße
Bernd

Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16502
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Re: RunRexx() Wozu braucht man das ?

Beitrag von Martin Altmann »

Jan hat geschrieben: Mi, 31. Mär 2021 15:06 Martin,

REXX geht auch unter Windows (und Linux, Amiga, Unix-Derivate, und noch ein paar mehr). Wenn das nur für OS/2 wäre, dann würde Alaska da sicher keine Zeit rein investieren. Es gibt ja keine aktuelle Xbase++-Version für OS/2.
Ok, du hast also nicht gelesen, was ich oben verlinkt hatte. Schade. Dort steht:
Executes an OS/2 command file.
...

This function is not available in the Xbase++ Windows version since REXX is not part of Windows NT or Windows 9x.

RunRexx() executes an OS/2 command file and passes optional arguments to the REXX procedure in this file.
...
Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: RunRexx() Wozu braucht man das ?

Beitrag von Jan »

Martin,

stimmt, ich hatte das nicht gelesen. Wobei ich mich dann doch wundern muß: Warum baut Alaska das in die 2.0 ein, wo es die 2.0 nur für Windows gibt, nicht aber für OS/2? Genau aus dem Grund habe ich vorausgesetzt das die REXX auch unter Windows unterstützen (da es ja REXX auch für Windows gibt). Kann es sein das diese Doku da veraltet ist und einen alten Stand widerspiegelt? Immerhin ist Xbase++ ja ursprünglich mal vor vielen Jahren für OS/2 geschrieben worden.

Mal ganz abgesehen davon: In der chm-Hilfe heißt es explizit zu RunRex(), das man REXX per ooRex unter Windows nutzen kann. Also geht das doch, anders als in der Online-Hilfe beschrieben.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
BJelinek
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 218
Registriert: Sa, 02. Jun 2012 20:57
Wohnort: 73257 Köngen
Hat sich bedankt: 9 Mal
Danksagung erhalten: 3 Mal

Re: RunRexx() Wozu braucht man das ?

Beitrag von BJelinek »

Hallo Martin,

in der Hilfe von Version 2.0 1392 steht nichts mehr von OS/2

Im Chanchelog steht
Review documentation on RunRexx() for Windows. (*.chm) (W21GX7)
Deshalb bin ich ja erst darauf gekommen.
Grüße
Bernd

Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16502
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Re: RunRexx() Wozu braucht man das ?

Beitrag von Martin Altmann »

Moin,
die Onlinehilfe ist von Build 1377 (zumindest steht das oben links)

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: RunRexx() Wozu braucht man das ?

Beitrag von Jan »

Martin,

ist ja alles richtig.

Aber dennoch gibt es in diesem Bereich eine erhebliche Diskrepanz. Während der Online-Artikel sagt daß das nur unter OS/2 läuft, sagt die Hilfe in der Installation daß das auch unter Windows geht. Und das macht auch Sinn - wie ich schon 2x schrieb gibt es nur noch ein Xbase++ für Windows, keines mehr für OS/2. Warum also sollte Alaska eine Funktion, die lt. Onlinehilfe nur und ausschließlich unter OS/2 laufen kann, in eine Sprache ausschließlich für Windows einbauen? Das macht doch keinen Sinn.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16502
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Re: RunRexx() Wozu braucht man das ?

Beitrag von Martin Altmann »

Moin Jan,
ja - aber nochmal: Die Onlinehilfe ist von 1377.
Die Offlinehilfe ist mittlerweile 1392 (oder größer, keine Ahnung).

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15689
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: RunRexx() Wozu braucht man das ?

Beitrag von brandelh »

Jan hat geschrieben: Mi, 31. Mär 2021 15:06 Martin,
REXX geht auch unter Windows (und Linux, Amiga, Unix-Derivate, und noch ein paar mehr). Wenn das nur für OS/2 wäre, dann würde Alaska da sicher keine Zeit rein investieren. Es gibt ja keine aktuelle Xbase++-Version für OS/2.
Wobei ich Dir sonst zustimme: Ich kenne wissentlich niemanden, der REXX benutzt. Aber irgend ein Alaska-Kunde muß wichtig genug sein das Alaska das für den umgesetzt hat. Wäre mal interessant zu wissen, was man damit ganz praktisch gesehen alles anstellen kann. Vielleicht käme man dabei dann ja auf den Geschmack.
Jan
Möglich, dass es eine REXX Implementation für Windows etc. gibt, aber Xbase++ ist dafür nicht vorgesehen, das steht sogar in der Hilfe:
Xbase++ 2.0 Build 2.00.1087 hat geschrieben:RunRexx()
Executes an OS/2 command file.

RunRexx( <cCmdFileName> [, <cArguments,...>] ) --> xReturn

Parameters
<cCmdFileName>
<cCmdFileName> is a character string which contains the file name for the OS/2 command file executed. The file name can be specified without an extension. The default file extension is "CMD".

<cArguments,...>
<cArguments,...> is a comma-separated list of character expressions passed as arguments to the OS/2 command file. Any number of arguments can be passed.

Return
The function RunRexx() returns the return value of the REXX procedure in the file <cCmdFileName>.

Description
This function is not available in the Xbase++ Windows version since REXX is not part of Windows NT or Windows 9x.

RunRexx() executes an OS/2 command file and passes optional arguments to the REXX procedure in this file.
Zuletzt geändert von brandelh am Do, 01. Apr 2021 14:10, insgesamt 1-mal geändert.
Grund: Ich hab mal die Version oben aufgeführt, die auf dem aktuellen Laptop war etwas älter.
Gruß
Hubert
Benutzeravatar
BJelinek
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 218
Registriert: Sa, 02. Jun 2012 20:57
Wohnort: 73257 Köngen
Hat sich bedankt: 9 Mal
Danksagung erhalten: 3 Mal

Re: RunRexx() Wozu braucht man das ?

Beitrag von BJelinek »

Aktuell 1392 sieht die Hilfe so aus:
RunRexx()
Executes a REXX script file.

RunRexx( <cScriptFileName> [, <cArguments,...>] ) --> xReturn

Parameters
<cScriptFileName>
<cCmdFileName> is a character string which contains the file name of the script file to be executed.

<cArguments,...>
<cArguments,...> is a comma-separated list of character expressions passed as arguments to the script file. Any number of arguments can be passed.

Return
The function RunRexx() returns the return value of the REXX script file.

Description
RunRexx() executes a script file and passes optional arguments to the REXX procedure in this file.

REXX is an interpreter language which automates program execution and allows for easy changes. Using REXX, procedures are programmed which can be called and executed using a REXX command processor. Open Object Rexx (ooRexx) is an open-source REXX interpreter which can be used for executing REXX scripts under Windows, see https://www.oorexx.org.

REXX procedures are typically stored in files with the extension .rex. These are script files comparable to .bat files in DOS. REXX script can be replaced, processed and changed with a simple text editor. They differ from .bat files in that they must always begin with a comment line (/* Comment */) so the characters "/*" must be the first two characters in the file. These characters are key identifiers for the REXX interpreter.

All commands and functions of REXX are usable within a REXX file. If such a file is started by RunRexx() from an Xbase++ application, the REXX procedure runs in the address space of the Xbase++ application. RunRexx() extends the language scope of REXX to all globally visible functions, procedures and dynamic variables of the calling Xbase++ application. This means that all Xbase++ functions and procedures can be called and executed within the REXX script. That includes all the functions of the Xbase++ runtime library and all globally visible user-defined functions and procedures. Also, all dynamic variables visible when the call RunRexx() occurs are visible. Access to lexically scoped variables and calls to functions or procedures declared as STATIC is not possible. The program operation of an Xbase++ application can be changed without compile and link cycles since REXX script files can simply be processed with a text editor.

Passing of arguments to REXX

The function RunRexx() can pass many arguments to the REXX procedure using <cArguments,...>. The passed arguments must always have the data type "character", since REXX is a character based interpreter language. To access the passed arguments within the REXX procedure, REXX provides the command ARG and the function ARG(). The command ARG is generally needed when a REXX procedure is started from the command line. The following REXX procedure demonstrates this and receives two arguments:
Dann kommen jede menge Beispiele.
Grüße
Bernd

Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: RunRexx() Wozu braucht man das ?

Beitrag von Jan »

Hubert,

das habe ich jetzt Martin schon 2x geschrieben. Die also auch Dir noch mal: In der Onlinehilfe (die, wie Martin ganz richtig bemerkte, sich auf die 1377 bezieht) steht, das Xbase++ REXX nur in OS/2 unterstützt (wobei es die 2.0 gar nicht für OS/2 gibt). Die Hilfe in der Installation zur 1392 sagt dagegen, daß Xbase++ REXX auch unter Windows unterstützt.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15689
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: RunRexx() Wozu braucht man das ?

Beitrag von brandelh »

Hätte ich mal besser weiter gelesen vor meinem Zitat, was da alles abging dazwischen 8)

Also man kann nun wohl auch RunRexx() unter Windows verwenden, habe ich noch nicht probiert.
Wenn man das braucht ist das so schön wie andere Neuerungen, die manche nutzen - oder eben nicht.

Ich werde mich jedenfalls nicht darauf verlassen, dass jemand REXX nachinstalliert hat und nutze weiterhin RunShell() :D
Gruß
Hubert
Benutzeravatar
BJelinek
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 218
Registriert: Sa, 02. Jun 2012 20:57
Wohnort: 73257 Köngen
Hat sich bedankt: 9 Mal
Danksagung erhalten: 3 Mal

Re: RunRexx() Wozu braucht man das ?

Beitrag von BJelinek »

Vielleicht kann man da VT100 Terminal mit steuern und Rückmeldungen erhalten.
In einem Beispiel wird die VT100.CH eingebunden und VT_ .... Werte/Funktionen
benutzt.
In der 1289 haben Sie ja auch VT100 support eingebaut.
Grüße
Bernd

Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Antworten