Re: z/OSMF

2023-07-01 Thread Brian Westerman
Bummer,

However, this is exactly the kind of thing I was looking for.  It's better to 
know, than to guess (or hope).  Do you know what the z14+ functions might be?

Brian

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: Where am I going wrong with XLC __TIMESTAMP__ ?

2023-07-01 Thread Paul Gilmartin
On Sat, 1 Jul 2023 21:34:25 -0500, Charles Mills wrote:
>
>Seriously, the IBM doc lists it as the value returned if no timestamp is 
>available.
> 
They should specify which timestamp: ISPF, UNIX, FAMS, ... and which dominates
if they disagree.  RCF.

>>What is the timestamp of the "one i#include"?
>
>2023/07/01 14:09:52
>
8 seconds after the source.  That's astonishing if it's a system header.
Is it generated on-the-fly?

>FWIW, the timestamp of the source file is 2023/07/01 14:09:44 

Many years ago, I discovered hat for various settings of the TZ environment
variable there was inconsistency among the __TME__ macro, strftime(),
and the page heading in the SYSPRINT file.  SR.  WAD.  Some years later
it was much mitigated.  I can assume only that a cu$tomer more influential
than I escalated the matter.

-- 
gil

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: Where am I going wrong with XLC __TIMESTAMP__ ?

2023-07-01 Thread David Crayford
Looks like a but with XL C++. I would open a case with IBM

> xlC -o  posts posts.cpp && ./posts
blah blah, Built Jul  2 2023 10:51:48, Source timestamp Mon Jan  1  0:00:01 1990

> ibm-clang++64 -o  posts posts.cpp && ./posts
blah blah, Built Jul  2 2023 10:52:08, Source timestamp Sun Jul  2 10:49:43 2023

> On 2 Jul 2023, at 5:52 am, Charles Mills  wrote:
> 
> I am using XLC __TIMESTAMP__ for the first (!) time. The source file is in 
> UNIX and definitely has a timestamp. Here is the code
> 
> static const char versionMsg[] = "blah blah, Built " __DATE__ " " __TIME__ ", 
> Source timestamp " __TIMESTAMP__ ; 
> 
> The message is displaying as
> 
> blah blah, Built Jul  1 2023 14:12:35, Source timestamp Mon Jan  1  0:00:01 
> 1990   
> 
> There is one i#include ahead of the char[] and it is also a UNIX file with a 
> timestamp. 
> 
> The exact same code works as expected on Windows.
> 
> What am I doing wrong or missing?
> 
> Charles
> 
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: Where am I going wrong with XLC __TIMESTAMP__ ?

2023-07-01 Thread Charles Mills
On Sat, 1 Jul 2023 20:24:04 -0500, Paul Gilmartin  wrote:

>Does "Mon Jan  1  0:00:01 1990 mean anything to you?

I was in Paris for New Year's. It was fantastic. We drank champagne until it 
ran out, and then moved on to homemade grappa. We sang songs from West Side 
Story. I slept until noon.

Seriously, the IBM doc lists it as the value returned if no timestamp is 
available.

>What is the timestamp of the "one i#include"?

2023/07/01 14:09:52

FWIW, the timestamp of the source file is 2023/07/01 14:09:44 

>What happens with a minimal test such as:

Have not tried.

Charles

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: Where am I going wrong with XLC __TIMESTAMP__ ?

2023-07-01 Thread Paul Gilmartin
On Sat, 1 Jul 2023 21:00:34 -0500, Paul Gilmartin  wrote:

>On Sun, 2 Jul 2023 11:52:43 +1000, Attila Fogarasi wrote:
>
>>Jan 1 1990 is POSIX epoch start in USS, so you are getting 0 for the time
>>value somehow.
>>
>WTF?!  
>
>
Also: 


-- 
gil

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: Where am I going wrong with XLC __TIMESTAMP__ ?

2023-07-01 Thread Paul Gilmartin
On Sun, 2 Jul 2023 11:52:43 +1000, Attila Fogarasi wrote:

>Jan 1 1990 is POSIX epoch start in USS, so you are getting 0 for the time
>value somehow.
>
WTF?!  


-- 
gil

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: Where am I going wrong with XLC __TIMESTAMP__ ?

2023-07-01 Thread Attila Fogarasi
Jan 1 1990 is POSIX epoch start in USS, so you are getting 0 for the time
value somehow.

On Sun, Jul 2, 2023 at 11:24 AM Paul Gilmartin <
042bfe9c879d-dmarc-requ...@listserv.ua.edu> wrote:

> On Sat, 1 Jul 2023 16:52:20 -0500, Charles Mills  wrote:
> >...
> >The message is displaying as
> >
> >blah blah, Built Jul  1 2023 14:12:35, Source timestamp Mon Jan  1
> 0:00:01 1990
> >
> >There is one i#include ahead of the char[] and it is also a UNIX file
> with a timestamp.
> >
> Does "Mon Jan  1  0:00:01 1990 mean anything to you?
>
> What is the timestamp of the "one i#include"?
>
> What happens with a minimal test such as:
>
> char *t1 =__TIMESTAMP__;
> #include 
>
> int main( void ) {
> printf( "%s\n", t1 );
> return( 0 ); }
>
> --
> gil
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: Where am I going wrong with XLC __TIMESTAMP__ ?

2023-07-01 Thread Paul Gilmartin
On Sat, 1 Jul 2023 16:52:20 -0500, Charles Mills  wrote:
>...
>The message is displaying as
>
>blah blah, Built Jul  1 2023 14:12:35, Source timestamp Mon Jan  1  0:00:01 
>1990   
>
>There is one i#include ahead of the char[] and it is also a UNIX file with a 
>timestamp. 
>
Does "Mon Jan  1  0:00:01 1990 mean anything to you?

What is the timestamp of the "one i#include"?

What happens with a minimal test such as:

char *t1 =__TIMESTAMP__;
#include 

int main( void ) {
printf( "%s\n", t1 );
return( 0 ); }

-- 
gil

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: 0C1 abend

2023-07-01 Thread Wayne Bickerdike
Check any link edit for unresolved XTRN. One of a myriad of causers.

On Sun, Jul 2, 2023 at 4:15 AM Paul Gilmartin <
042bfe9c879d-dmarc-requ...@listserv.ua.edu> wrote:

> On Sat, 1 Jul 2023 10:22:23 -0400, Steve Smith  wrote:
>
> >The "normal cause" is that an invalid opcode came up in the CPU's eternal
> >quest for things to do.
> >
> "quest for things to do" sounds like speculative execution.  What
> happens to a program check in speculative execution?  Does it
> speculatively enter the exception handler, etc.?
>
> --
> gil
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>


-- 
Wayne V. Bickerdike

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Where am I going wrong with XLC __TIMESTAMP__ ?

2023-07-01 Thread Charles Mills
I am using XLC __TIMESTAMP__ for the first (!) time. The source file is in UNIX 
and definitely has a timestamp. Here is the code

static const char versionMsg[] = "blah blah, Built " __DATE__ " " __TIME__ ", 
Source timestamp " __TIMESTAMP__ ; 

The message is displaying as

blah blah, Built Jul  1 2023 14:12:35, Source timestamp Mon Jan  1  0:00:01 
1990   

There is one i#include ahead of the char[] and it is also a UNIX file with a 
timestamp. 

The exact same code works as expected on Windows.

What am I doing wrong or missing?

Charles

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: EHLLAPI and connInfo (Re: OLE and ooRexx (Re: Using EHLLAPI from ooRexx

2023-07-01 Thread Farley, Peter
Thanks Rony.  Further exchanges with Erich on the ooRexx Help discussion have 
also given me the information I need to access the autECLFieldList results.  
There is a function "FieldInfo" that takes an integer argument to retrieve that 
member of the FieldList object array, from which you can use/extract the field 
information.

Peter

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of 
Rony G. Flatscher
Sent: Saturday, July 1, 2023 8:37 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: EHLLAPI and connInfo (Re: OLE and ooRexx (Re: Using EHLLAPI from ooRexx

On 01.07.2023 14:17, Rony G. Flatscher wrote:
> Sorry, my bad.  "autECLConnList" is probably an array so you may want 
> to try either "str = autoECLConnList[1]~name" or "str = 
> autoECLConnLista~t(1)~name" instead.

Ah, just saw in the ooRexx support list that Erich was able to introspect it 
(so he probably has EHLLAPI installed on his machine). This is what he writes:

> str = connList(1)~Name

connList(1) is not a method invocation, but a simple function call - but we
have no function called "connList".
 From the docs you'd think that connList[1] should work, but it doesn't (not
sure why the docs show it like this).
To figure out what is actually implemented, use the samples\ole\methinfo
sample with input "PCOMM.autECLConnList"
Among others, it will list
VT_DISPATCH ConnInfo([in] VT_VARIANT Index)
Given a numeric index, returns one of the items in the collection.

So this code works:

~~~
do c = 1 to connList~count
conn = connList~connInfo(c)
say conn~name conn~connType conn~codepage conn~started conn~ready
end
~~~

so to translate this to the variables names the IBM docs and the ooRexx 
transcription uses:

~~~
autoECLConnList = .OleObject~new("PCOMM.autECLConnList")
autoECLConnList~Refresh
str = autECLConnList~connInfo(1)~Name

~~~

("connInfo" is probably a default property such that VBA would refer to it.)

Also an interesting link (just found it searching for "connInfo" in addition) 
in this context may
be: 
. 


(If transcribing VBA code to ooRexx usually replacing the dot (.) in statements 
with a tilde (~) 
would be enough already to make it run under ooRexx.)

---rony



> ( VBA/OLE arrays may use indexes from 0 up to size-1, but could also - and 
> sometimes do - 
> arbitrarily define the lower bound index and the upper bound index).
>
> ---
>
> If you want to use the OLE interface from ooRexx then the documentation 
> "Windows Extensions 
> Reference" in "winextensions.pdf" in "Chapter 8. OLE Automation" will be 
> helpful.
>
> ---
>
> Also the tools of "OLEInfo" may be helpful (even for other languages than 
> ooRexx using OLE) :
>
>  * listProgIds.rex ... lists all OLE/COM ProgIds, one can optionally filter 
> the (overwhelming)
>    output to contain supplied string chunks (it is always interesting to see 
> what your Windows
>    machine has installed)
>
>  * createOleInfo.rex ... queries and documents the published attributes, 
> methods/functions,
>    constants and events of OLE Windows programs in a verbose (includes 
> published constants) or in a
>    terse form (the latter is meant to serve as a sort of reference that one 
> can put next to the
>    keyboard); the generated documentation is HTML with a CSS for formatting 
> and includes the
>    arguments, their published names and types
>
>  * getOleConstants.rex ... creates an ooRexx package (program) that makes all 
> published constants
>    available to Rexx programs via the environment symbol ".ole.const"
>
> E.g., if you ever wanted to see all published Excel methods, events, 
> attributes in a terse 
> (reference) form then you could issue:
>
>    createOleInfo.rex Excel.Application 1
>
> and maybe in your case you could try e.g.:
>
>    createOleInfo.rex PCOMM.autECLConnList
>
>
> You can get OLEInfo from my sandbox at 
>   > where the readme.txt 
> file gets displayed such that you can study at a little bit more detail. To 
> download it you could 
> press the button at the right hand corner of the line named "Tree 
> [r12695]/..." labeled "Download 
> Snapshot" which creates a zip-archive of that part of the source code tree 
> that then can be 
> downloaded.
>
> HTH,
>
> ---rony
--

This message and any attachments are intended only for the use of the addressee 
and may 

Re: 0C1 abend

2023-07-01 Thread Paul Gilmartin
On Sat, 1 Jul 2023 10:22:23 -0400, Steve Smith  wrote:

>The "normal cause" is that an invalid opcode came up in the CPU's eternal
>quest for things to do.
>
"quest for things to do" sounds like speculative execution.  What
happens to a program check in speculative execution?  Does it
speculatively enter the exception handler, etc.?

-- 
gil

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: 0C1 abend

2023-07-01 Thread S B
 We just upgraded to z/OS 2.5 and no changes to DB2 or BMC DB2 Utilities (since 
we did not have a SME support and thought (incorrectly) that we do not need any 
manintence for DB2 or BMC). This was until a user run BMC Unload with Direct 
set to Yes/AUTO and received 0C1. They changed Direct to No and the job was 
successful but took a bit longer to complete. 
We then find out that in our sandbox1 we had some maintence for BMC Utilities 
that were not moved with z/OS 2.5. We were able to recreate 0C1 on a sandbox2 
which was corrected after we applied the BMC Utilities maintenance found on 
sandbox1. 
We will apply the found maintenance to our users LPARs this Sunday and hope for 
the best
hth

On Saturday, July 1, 2023 at 09:19:54 AM EDT, Bill Giannelli 
 wrote:  
 
 So this is for BMC Unload for Db2. A few changes, first z/OS upgrade to v2.5. 
Then applied DB2 RSU2305 maintenance, Then activated Db2 function Level 509. I 
am wondering if any of these are the cause
On Sat, 1 Jul 2023 08:09:12 -0500, Stephen Donaldson  
wrote:

>What do the registers and PSW say?  You could have branched into data or into 
>the PSA.  Branching into the PSA is often caused by a missing or xero address, 
>for example you had weak externals that were not resolved or some 
>vector/branch table that was not populated. Or you could have overwriten your 
>code with data or some other means generating an attempt to execute an invalid 
>instruction.
>
>Regards,
>
>Stephen.
>
>--
>For IBM-MAIN subscribe / signoff / archive access instructions,
>send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
  

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: Is there a USS-file compatible equivalent to the SUPERC OVSUM compare yet?

2023-07-01 Thread Collinson, Shannon
Thanks, Sebastian!  As far as I know (or could read at the links below), grep 
wouldn't do what I need (comparing the files), but I appreciate the proper 
git-hub link to the tools & toys!  I thought I'd found that earlier, but if so, 
I must have come at in in a filtered manner.  That wjsckmp rexx is actually 
going to come in really handy, since I've been cleaning up non-empty 
mountpoints when I spot them, but I didn't know we could search for them 
without unmounting the files...

-Original Message-
From: Sebastian Welton 
Sent: Thursday, June 29, 2023 4:40 AM
Subject: Re: Is there a USS-file compatible equivalent to the SUPERC OVSUM 
compare yet?

On Wed, 28 Jun 2023 16:39:26 +, Collinson, Shannon 
 wrote:

>I think there was a USS tools thing (fscp?) that'd compare the contents 
>of two filesystems that I used to run when converting those from HFS to ZFS 
>years ago, but the tools page is gone now so I can't grab that to check.  
>Pretty sure it wouldn't work for what I want to do anyhow, which is to compare 
>the files/directories/etc in two paths that could be in different locations in 
>their filesystems.  Is there something else that says "this guy's missing, 
>this one's new, the attributes (or better yet contents) of these are 
>different" for USS?  I cobbled together this from something a coworker had 
>that compared just directories-and made it compare the listings of those 
>directories-but the output's a little ugly.  Do you have or know of anything 
>better?

The Tools and Toys, including fscp can now be found here: 
https://urldefense.com/v3/__https://github.com/IBM/IBM-Z-zOS/tree/main/zOS-Tools-and-Toys__;!!JT0xjr86ZxPthq8!sqShzbsvuJ8-Pz9Fd-LMCRPt8P-TUigcQNpx03GK4X6qfKSsZ9B29K4Qu50WguK9n-phj6Mt_4DkPB3dmh3b8PdQnx5mZQ$

There is also grep:

https://urldefense.com/v3/__https://www.ibm.com/docs/en/zos/2.3.0?topic=descriptions-grep-search-file-specified-pattern__;!!JT0xjr86ZxPthq8!sqShzbsvuJ8-Pz9Fd-LMCRPt8P-TUigcQNpx03GK4X6qfKSsZ9B29K4Qu50WguK9n-phj6Mt_4DkPB3dmh3b8Pd3nyP83g$

With a good write up here by Lionel Dyck:

https://urldefense.com/v3/__https://community.ibm.com/community/user/ibmz-and-linuxone/blogs/lionel-dyck2/2021/07/24/using-grep-with-zos-data-sets__;!!JT0xjr86ZxPthq8!sqShzbsvuJ8-Pz9Fd-LMCRPt8P-TUigcQNpx03GK4X6qfKSsZ9B29K4Qu50WguK9n-phj6Mt_4DkPB3dmh3b8PdR_V9hzw$

Sebastian.


The information transmitted is intended solely for the individual or entity to 
which it is addressed and may contain confidential and/or privileged material. 
Any review, retransmission, dissemination or other use of or taking action in 
reliance upon this information by persons or entities other than the intended 
recipient is prohibited. If you have received this email in error please 
contact the sender and delete the material from any computer.

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: A Discussion about RLSE on RAID Drives with Chat GPT-4

2023-07-01 Thread Walt Farrell
On Thu, 29 Jun 2023 18:10:06 -0500, Hobart Spitz  wrote:

>https://chat.openai.com/share/1718b445-7a89-47a3-ab23-b670aa8c2211

That URL gives a 404 error, for me.

Perhaps you could have your conversation again, and quote the conversation here 
directly next time?

-- 
Walt

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: 0C1 abend

2023-07-01 Thread Steve Smith
The "normal cause" is that an invalid opcode came up in the CPU's eternal
quest for things to do.

What led to this could be any of a myriad of things.  You will need to find
someone who knows the rudiments of debugging to start on a resolution.  Any
specific answer you see on this mailing list is pure uninformed guessing.

sas

On Sat, Jul 1, 2023 at 9:04 AM Bill Giannelli 
wrote:

> How do I resolve a 0C1 abend. what is normally the cause?
> thanks
> Bill
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: 0C1 abend

2023-07-01 Thread Stephen Donaldson
I wouldn't be able to rule out anything. Do you just want to identify the 
module or get some detail for IBM or BMC or is there some user code/exit that 
potentially needs remediation? I previously answered as though it were the 
latter.

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: 0C1 abend

2023-07-01 Thread Bill Giannelli
So this is for BMC Unload for Db2. A few changes, first z/OS upgrade to v2.5. 
Then applied DB2 RSU2305 maintenance, Then activated Db2 function Level 509. I 
am wondering if any of these are the cause
On Sat, 1 Jul 2023 08:09:12 -0500, Stephen Donaldson  
wrote:

>What do the registers and PSW say?  You could have branched into data or into 
>the PSA.  Branching into the PSA is often caused by a missing or xero address, 
>for example you had weak externals that were not resolved or some 
>vector/branch table that was not populated. Or you could have overwriten your 
>code with data or some other means generating an attempt to execute an invalid 
>instruction.
>
>Regards,
>
>Stephen.
>
>--
>For IBM-MAIN subscribe / signoff / archive access instructions,
>send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: 0C1 abend

2023-07-01 Thread Stephen Donaldson
What do the registers and PSW say?  You could have branched into data or into 
the PSA.  Branching into the PSA is often caused by a missing or xero address, 
for example you had weak externals that were not resolved or some vector/branch 
table that was not populated. Or you could have overwriten your code with data 
or some other means generating an attempt to execute an invalid instruction.

Regards,

Stephen.

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


0C1 abend

2023-07-01 Thread Bill Giannelli
How do I resolve a 0C1 abend. what is normally the cause?
thanks
Bill

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: z/OSMF

2023-07-01 Thread Peter Relson
Brian W wrote:

So is IBM definitely dropping support for the z13s BEFORE z/OS 3.1 is 
officially out?  If not, then it should be supported by z/OS 3.1. . .


The conclusion expressed after the "If not" is not warranted.

Dropping of support for a machine is unrelated to what machine an operating 
system release might require (I do not have any knowledge of whether/when 
support is being dropped for z13s). And of course withdrawal from marketing is 
unrelated to dropping of support (aside from the fact that the former generally 
precedes the latter).

z/OS 3.1 requires z14 functions. It cannot be IPL'ed on a z13 of any flavor.

Peter Relson
z/OS Core Technology Design.


--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


EHLLAPI and connInfo (Re: OLE and ooRexx (Re: Using EHLLAPI from ooRexx

2023-07-01 Thread Rony G. Flatscher

On 01.07.2023 14:17, Rony G. Flatscher wrote:
Sorry, my bad.  "autECLConnList" is probably an array so you may want to try either "str = 
autoECLConnList[1]~name" or "str = autoECLConnLista~t(1)~name" instead.


Ah, just saw in the ooRexx support list that Erich was able to introspect it (so he probably has 
EHLLAPI installed on his machine). This is what he writes:



str = connList(1)~Name


   connList(1) is not a method invocation, but a simple function call - but we
   have no function called "connList".
From the docs you'd think that connList[1] should work, but it doesn't (not
   sure why the docs show it like this).
   To figure out what is actually implemented, use the samples\ole\methinfo
   sample with input "PCOMM.autECLConnList"
   Among others, it will list
   VT_DISPATCH ConnInfo([in] VT_VARIANT Index)
   Given a numeric index, returns one of the items in the collection.

   So this code works:

   ~~~
   do c = 1 to connList~count
   conn = connList~connInfo(c)
   say conn~name conn~connType conn~codepage conn~started conn~ready
   end
   ~~~

so to translate this to the variables names the IBM docs and the ooRexx 
transcription uses:

   ~~~
   autoECLConnList = .OleObject~new("PCOMM.autECLConnList")
   autoECLConnList~Refresh
   str = autECLConnList~connInfo(1)~Name

   ~~~

("connInfo" is probably a default property such that VBA would refer to it.)

Also an interesting link (just found it searching for "connInfo" in addition) in this context may 
be: 
. 



(If transcribing VBA code to ooRexx usually replacing the dot (.) in statements with a tilde (~) 
would be enough already to make it run under ooRexx.)


---rony



( VBA/OLE arrays may use indexes from 0 up to size-1, but could also - and sometimes do - 
arbitrarily define the lower bound index and the upper bound index).


---

If you want to use the OLE interface from ooRexx then the documentation "Windows Extensions 
Reference" in "winextensions.pdf" in "Chapter 8. OLE Automation" will be helpful.


---

Also the tools of "OLEInfo" may be helpful (even for other languages than 
ooRexx using OLE) :

 * listProgIds.rex ... lists all OLE/COM ProgIds, one can optionally filter the 
(overwhelming)
   output to contain supplied string chunks (it is always interesting to see 
what your Windows
   machine has installed)

 * createOleInfo.rex ... queries and documents the published attributes, 
methods/functions,
   constants and events of OLE Windows programs in a verbose (includes 
published constants) or in a
   terse form (the latter is meant to serve as a sort of reference that one can 
put next to the
   keyboard); the generated documentation is HTML with a CSS for formatting and 
includes the
   arguments, their published names and types

 * getOleConstants.rex ... creates an ooRexx package (program) that makes all 
published constants
   available to Rexx programs via the environment symbol ".ole.const"

E.g., if you ever wanted to see all published Excel methods, events, attributes in a terse 
(reference) form then you could issue:


   createOleInfo.rex Excel.Application 1

and maybe in your case you could try e.g.:

   createOleInfo.rex PCOMM.autECLConnList


You can get OLEInfo from my sandbox at 
 where the readme.txt 
file gets displayed such that you can study at a little bit more detail. To download it you could 
press the button at the right hand corner of the line named "Tree [r12695]/..." labeled "Download 
Snapshot" which creates a zip-archive of that part of the source code tree that then can be 
downloaded.


HTH,

---rony


On 30.06.2023 17:13, Farley, Peter wrote:

No luck I am afraid:

  5 *-* str = autECLConnList(1)~Name
Error 43 running C:\Users\myname\Documents\testdir\testhacl.rex line 5:  
Routine not found.
Error 43.1:  Could not find routine "AUTECLCONNLIST".

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of 
Rony G. Flatscher
Sent: Friday, June 30, 2023 3:46 AM
To:IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Using EHLLAPI from ooRexx

Just noted that the mailer ruined the syntax:

     autoECLConnList = .OleObject~new("PCOMM.autECLConnList")
     autoECLConnList~Refresh
     str = autECLConnList(1)~Name

---rony


On 30.06.2023 09:22, Rony G. Flatscher wrote:

On 30.06.2023 08:46, Farley, Peter wrote:

Thanks for the link David, but that seems to be tied intimately to
x3270, and I need it to work with PCOMM.

Also investigating PCOMM HACL (Host Access Class Library) as an
alternative, using VBScript (<*Sigh*>, yet another language to learn).

Judging from


OLE and ooRexx (Re: Using EHLLAPI from ooRexx

2023-07-01 Thread Rony G. Flatscher
Sorry, my bad.  "autECLConnList" is probably an array so you may want to try either "str = 
autoECLConnList[1]~name" or "str = autoECLConnLista~t(1)~name" instead.


( VBA/OLE arrays may use indexes from 0 up to size-1, but could also - and sometimes do - 
arbitrarily define the lower bound index and the upper bound index).


---

If you want to use the OLE interface from ooRexx then the documentation "Windows Extensions 
Reference" in "winextensions.pdf" in "Chapter 8. OLE Automation" will be helpful.


---

Also the tools of "OLEInfo" may be helpful (even for other languages than 
ooRexx using OLE) :

 * listProgIds.rex ... lists all OLE/COM ProgIds, one can optionally filter the 
(overwhelming)
   output to contain supplied string chunks (it is always interesting to see 
what your Windows
   machine has installed)

 * createOleInfo.rex ... queries and documents the published attributes, 
methods/functions,
   constants and events of OLE Windows programs in a verbose (includes 
published constants) or in a
   terse form (the latter is meant to serve as a sort of reference that one can 
put next to the
   keyboard); the generated documentation is HTML with a CSS for formatting and 
includes the
   arguments, their published names and types

 * getOleConstants.rex ... creates an ooRexx package (program) that makes all 
published constants
   available to Rexx programs via the environment symbol ".ole.const"

E.g., if you ever wanted to see all published Excel methods, events, attributes in a terse 
(reference) form then you could issue:


   createOleInfo.rex Excel.Application 1

and maybe in your case you could try e.g.:

   createOleInfo.rex PCOMM.autECLConnList


You can get OLEInfo from my sandbox at 
 where the readme.txt file 
gets displayed such that you can study at a little bit more detail. To download it you could press 
the button at the right hand corner of the line named "Tree [r12695]/..." labeled "Download 
Snapshot" which creates a zip-archive of that part of the source code tree that then can be downloaded.


HTH,

---rony


On 30.06.2023 17:13, Farley, Peter wrote:

No luck I am afraid:

  5 *-* str = autECLConnList(1)~Name
Error 43 running C:\Users\myname\Documents\testdir\testhacl.rex line 5:  
Routine not found.
Error 43.1:  Could not find routine "AUTECLCONNLIST".

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of 
Rony G. Flatscher
Sent: Friday, June 30, 2023 3:46 AM
To:IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Using EHLLAPI from ooRexx

Just noted that the mailer ruined the syntax:

     autoECLConnList = .OleObject~new("PCOMM.autECLConnList")
     autoECLConnList~Refresh
     str = autECLConnList(1)~Name

---rony


On 30.06.2023 09:22, Rony G. Flatscher wrote:

On 30.06.2023 08:46, Farley, Peter wrote:

Thanks for the link David, but that seems to be tied intimately to
x3270, and I need it to work with PCOMM.

Also investigating PCOMM HACL (Host Access Class Library) as an
alternative, using VBScript (<*Sigh*>, yet another language to learn).

Judging from
  there are OLE APIs which should allow you to use the Windows version of ooRexx as it supports OLE.

That is the reason why you can code in ooRexx for MS Excel, MS Word,
MS Powerpoint and the like, just look up the ooRexx samples in
"ooRexx\samples\ole\apps" where you would see also samples for 
OpenOffice/LibreOffice via OLE.

So looking at the VBA example:

    |Dim Str as String Dim autECLConnList as Object Dim Num as Long Set
autECLConnList =
    CreateObject("PCOMM.autECLConnList") autECLConnList.Refresh Str =
autECLConnList(1).Name|

try the following in ooRexx:

    autoECLConnList = .OleObject~new(|PCOMM.autECLConnList")|
    autoECLConnList~Refresh
    str = autECLConnList(1)~Name

Does that work for you?

---rony


-Original Message-
From: IBM Mainframe Discussion List   On
Behalf Of David Crayford
Sent: Thursday, June 29, 2023 11:48 PMTo:IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Using EHLLAPI from ooRexx

It may be easier to
usehttps://urldefense.com/v3/__https://github.com/py3270/py3270__;!!E
br-cpPeAnfNniQ8HSAI-g_K5b7VKg!LslIz3RHy9Ct1CC2dStYVdn9sNVor2JieWkv62q
KTHeNjTV8BP_GG59tue0S-FF-h_YqPRXXtxsO4U4NUCOrg08$


On 29 Jun 2023, at 10:56 pm, Farley, 
Peter<031df298a9da-dmarc-requ...@listserv.ua.edu>  wrote:

Hi All,

I have sent this question to the ooRexx help list but have not yet
seen an answer.  Hoping someone here has been down this path and can help cure 
my ignorance.

I have an automation task before me that needs some complex 3270
screen interactions, so I was hoping to use ooRexx from the company