How to get filename of a DD PATH=xxxx at runtime?

2011-09-05 Thread Michael Knigge

Hi,

I'm looking for a way to get the pathname/filename of a DD (specifying a 
PATH not a DD) at runtime  I tried to get it out of the TIOT - JFCB 
but there is no field within the JFCB for the name (the field for the 
DSN ist filled with a dummy-value).


Does anybody know if there is another control block where I can get the 
real name? Because I need to get the name in Java it would be great if 
there would be a way without using assembler).



Thanks!


Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Obtaining System Information from a COBOL program

2011-06-23 Thread Michael Knigge

business applications. Why not use a tool designed to obtain
this kind of information?


Because you *CAN* get this information just with a few lines of code 
(even in COBOL)... And if it is that simple, *WHY* someone should not do it?



Bye,
MK

--
Yours sincerely

Michael Knigge
Development

S.E.T. Software GmbH
Lister Straße 15
30163 Hannover

Phone: +49 511 / 397 80 - 0
Fax:   +49 511 / 397 80 - 66
michael.kni...@set-software.de

Commercial Registry: HRB52778 Local Court Hannover
Chief Executive Officer: Till Dammermann, Dr. Bernd Huber

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: How to monitor a Printer?

2011-05-20 Thread Michael Knigge

Have you looked at the REXX interface into SDSF?


Not yet - very good hint!


Bye,
MK

--
Mit freundlichen Grüßen

Michael Knigge
Entwicklung

S.E.T. Software GmbH
Lister Straße 15
30163 Hannover

Telefon: +49 511 / 397 80 - 0
Fax: +49 511 / 397 80 - 66
michael.kni...@set-software.de

Handelsregister: HRB52778 Amtsgericht Hannover
Geschäftsführer: Till Dammermann, Dr.Bernd Huber

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


How to monitor a Printer?

2011-05-19 Thread Michael Knigge

All,

using SDSF I can see the progress of a print-job - I can see the total 
number of records of the print-file and I can see the number of already 
printed records.


Does anyone of you know how to get this infomation (ASM, COBOL, C, ...)? 
I was wondering if there is an API or if it is possible to get this 
information by SNMP...



Thank you!


Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: How to modify/add an OUTPUT-Statement to an DD at runtime?

2011-03-15 Thread Michael Knigge

Dynamicly allocate or one output per file.
//OUTPUT1  OUTPUTCOPIES=1,PRMODE=LINE,ROOM=12,
//  TITLE=TITLE ONE
//TSTFILE1 DD SYSOUT=A,OUTPUT=(*.OUTPUT1)


Eh, where is this dynamic?

ok, once again, maybe I wasn't clear enough...

The JCL:

//OUTPUT2  OUTPUTCOPIES=1,PRMODE=LINE,ROOM=12,
//  TITLE=TITLE TWO
//TSTFILE2 DD SYSOUT=A,OUTPUT=(*.OUTPUT2)


The contents/attributes of the OUTPUT2 Statement are totally unknown 
to the application.


Now at runtime, the application decides that the file TSTFILE2 needs the 
TITLE-Attribute set to FO And the application doesn't know the 
contents of the associated OUTPUT-Statement. It even doesn't know if 
there is an OUTPUT-Statement




Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


How to modify/add an OUTPUT-Statement to an DD at runtime?

2011-03-14 Thread Michael Knigge

All,

I need to change the attribute (in my case, the TITLE) of an 
OUTPUT-Statement at runtime. I've digged around a little bit in the IBM 
Manuals (Auth. Assember, ...) but I did not find the information I need.


If I understand the docs correctly, it is not possible to modify an 
OUTPUT-Statement at runtime - I only can add with OUTADD and delete with 
OUTDEL an OUTPUT-Statement.


So my idea is to create an additional OUTPUT-Statement with OUTADD at 
runtime. But I wonder if it is possible to *ADD* an additional 
OUTPUT-Statement to an existing DD-Statement (the DD-Statement may have 
already an associated/assigned OUTPUT-Statement)


Changing an existing TITLE-Attribute of an associated OUTPUT-Statement 
would make me happy also ;) But I did not find the data area that holds 
the OUTPUT-Statements (I know that I can find all DD-Statements at the 
TIOT, but I did not find the area that holds the OUTPUT-Statements). 
Well, and I guess ( or afraid) that overwriting the title in memory 
would cause an S0C4).



Anyone has an idea?


Thank you very much,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: How to modify/add an OUTPUT-Statement to an DD at runtime?

2011-03-14 Thread Michael Knigge

Well, you can certainly free the existing file and descriptor and allocate new
ones.


If I understand you right, I should deallocate the output-file (DD) and 
the OUTPUT-Statement and then re-allocate new ones?!? But then I need to 
get *ALL* information about the both - right?




Or you can internally issue $TO


I guess I need APF-authorization for this? That's a no-go for me


Bye  thanks,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: How to modify/add an OUTPUT-Statement to an DD at runtime?

2011-03-14 Thread Michael Knigge

Binyamin,


Or you can internally issue $TO


Well, finally I've found the right manual for the $T command

Well, I guess $TO also won't work because it can't update the TITLE 
attribute... (or I was too stupid) ;-(Furthermore, it seems to me 
that T$O sets characteristics for a complete job, not just for a single 
file



what I need is something like that:


//OUTPUT1  OUTPUTCOPIES=1,PRMODE=LINE,ROOM=12,TITLE=DUMMY
//TSTFILE1 DD SYSOUT=A,OUTPUT=(*.OUTPUT1)
//TSTFILE2 DD SYSOUT=A,OUTPUT=(*.OUTPUT1)
//TSTFILE3 DD SYSOUT=A,OUTPUT=(*.OUTPUT1)
//TSTFILE4 DD SYSOUT=A,OUTPUT=(*.OUTPUT1)


And when writing the files TSTFILE1 to TSTFILE4, I need to set 
individual strings for the TITLE for every file - at runtime


IBM even states in one of it's manuals, that the TITLE should only be 
changed by SDSF If SDSF can change the TITLE - than it is possible, 
but why IBM dosn't document how?!?!?


I even digged around in the SSI and SAPI manuals - but all in vain. I 
can't find a way or I don't understand the manuals :-(




Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: How to modify/add an OUTPUT-Statement to an DD at runtime?

2011-03-14 Thread Michael Knigge

Scott,

if I understand the manual of BPXWDYN correctly, you can create/allocate 
a new DD- or OUTPUT-Statement, but you can't *modify* an existing 
statement


right?

Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: How to modify/add an OUTPUT-Statement to an DD at runtime?

2011-03-14 Thread Michael Knigge
Thats the way I understand it also. We do it in Cobol, with a Select, then build 
the statement dynamically and open /read/write  close the file.


Yeah, but I don't know the attributes that may be set of an already 
existing OUTPUT-Statement. That's why I need a functionality to just add 
(or change an already existing) TITLE-Attribute dynamically at runtime...



Seems to me that this not an trivial (or even impossible) task...


Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: 3270 Emulator Software

2010-08-24 Thread Michael Knigge

Rick Fochtman schrieb:

You really should look at VISTA, from TomBrennanSoftware.com
It's quite good and, in my experience, very reliable.


Yeah, it is! And the Font that comes with Vista is just GREAT! It is so 
great that I use it with SPF/SE (a SPF-like Editor for Windows) and not 
just for Vista tn3270...



And just one thing to note: Tom Brennan gives excellent Support. As we 
started using it and I also started writing macros for Vista tn3270 I 
came accross afeature that I was missing: I needed to get the 
EBCDIC-Value of a character on the screen


I've sent a mail to Tom, asked for that feature and voila, just a few 
days later I've got a new version...  Try this with IBM (PCOMM) or other 
big players



Bye,
Michael

--
Yours sincerely

Michael Knigge
Development


S.E.T. Software GmbH
Lister Straße 15
30163 Hannover
GERMANY

Tel.  +49 511/3 97 80-23
Fax   +49 511/3 97 80-65
michael.kni...@set-software.de

Commercial Registry: HRB52778 Local Court Hannover
Chief Executive Officer: Till Dammermann, Dr. Bernd Huber

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: mainframe zip

2010-08-13 Thread Michael Knigge

Jim McAlpine schrieb:

Are there any free zip programs that will compress a number of mvs text
files which are compatible with winzip.


Try   ftp://ftp.info-zip.org/pub/infozip/mvs/


bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: SSH connection using PuTTY

2010-04-15 Thread Michael Knigge

try TERM=xterm


doesn't work I can't enter 2, I can't enter =.


Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: SSH connection using PuTTY

2010-04-15 Thread Michael Knigge

BTW I assume that you are actually connecting to SSH (typically port
22, with ssh mode configured in PuTTY)


Sure.

I do my daily work on several unix boxes via PuTTY (Linux, Solaris and 
AIX) and everything works like a charm.


But I may try a newer version of PuTTY.


Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Building a DLL under USS

2010-04-15 Thread Michael Knigge

All,

today I came accross a somehow strange (at least for me) problem


Usually I build my DLLs (written in C and C++) in the MVS-World of z/OS. 
But now I want to build the same DLL under USS (because I can do this 
all remote using SSH).


When I try to compile and link my DLL (it's just one C-Source file) in 
one command, the DLL get's build, but somehow doesn't work (can't be 
loaded and/or the enty-points are not found). Furthermore the DLL is 
much larger as if it is build under MVS.


like this:

c89 -Wc,MY,OPTIONS -Wl,MY_OTHER_OPTIONS -o libfoo.so foo.c



If I compile the module with the -c switch (-- don't link) and then 
link the module to a DLL in a second step, the Linker tells me that 
CEESTART can't be resolved


c89 -c -Wc,MY,OPTIONS foo.c
c89 -Wl,MY_OTHER_OPTIONS -o libfoo.so foo.o

It seems so me that (for some reason) the linker dosn't know where to 
look for the LE-Runtimes - but the file


   /usr/lpp/cbclib/xlc/etc/usr/lpp/cbclib/xlc/

looks ok so far



Would be great if anyone has an idea


Thank you,
Michael





P.S.: Just to be complete, here are my compiler and linker options:


Compiler:


DLL(CBA)
ILP32
TUNE(0)
ARCH(0)
FLOAT(IEEE)
LANGLVL(EXTENDED)
TARGET(LE)
NOOPT
LONGNAME
SOURCE
ROSTRING
OBJECT
PLIST(HOST)
NOOE
NOSTRICT_INDUC
NOWSIZEOF
NOSEQUENCE
NOMARGINS
NOINLINE
NOLIST
NOOFFSET
NOCOMPACT
NOCOMPRESS
NOIGNERRNO
NOINITAUTO
EXECOPS
DEFINE(_OS390)
DEFINE(_OE_SOCKETS)
DEFINE(_OPEN_THREADS)
DEFINE(_LARGE_FILES)
DEFINE(_POSIX_SOURCE)
DEFINE(_ISOC99_SOURCE)
DEFINE(_UNIX03_SOURCE)
DEFINE(_XOPEN_SOURCE_EXTENDED=1)
DEFINE(_XOPEN_SOURCE=500)
DEFINE(NEEDSIEEE754)
DEFINE(NEEDSLONGLONG)


Linker:

AMODE=31
RMODE=ANY
CASE=MIXED
DYNAM=DLL
REUS=RENT
UPCASE=NO
LIST
MAP
XREF

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: SSH connection using PuTTY

2010-04-15 Thread Michael Knigge

Neubert, Kevin schrieb:

I didn't think PuTTY supported 3270.  Has something changed in the last few years?  It 
even shows as an actively opposed feature for PuTTY at 
www.chiark.greenend.org.uk


Not 3270 over SSL - I'm talking about a pure SSH Connection.

Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Building a DLL under USS

2010-04-15 Thread Michael Knigge

Thank you all for your hints.


Building unter USS seems ver tricky to me

When I use -qdll with cc, then I get unknwon option -d :-(
When I use -qdll with c89, then I get unknwon option -q :-(

Now, after playing a while I got it working... I use xlc now and 
compile and link in one step.


The DLLs that are generated are all at least two times larger as the 
DLLs produced by the Compiler unter z/OS Batch. But... they are working 
now (can be loaded and used)



Again, thank you fpr your suggestions


Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


SSH connection using PuTTY

2010-04-14 Thread Michael Knigge

All,

could anyone tell me correct settings for a SSH connection to a z/OS 
Box? I use PuTTY and encounter some funny things, for i. e. I can't 
enter the number 2 Maybe just $TERM is wrong (I use vt100).



Any ideas?


Thanks,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Windoze 7

2010-04-13 Thread Michael Knigge

I have a laptop with pretty near those specs. Win7 (Ultimate 64) is a pile
of rubbish - locks up continually. Plenty of hits on the web. No answer.
Linux, even driving 6 cores 100%, runs fine - a bit warm, but never locked
up yet. It should be noted I only bought this for some Linux scheduler
testing, so no major issue for me - might be for others.


Oh no, please...

We are all grown-up here, so please no more (annoying) Windows vs. Linux 
Flamewar



Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: SQL Server replacement

2010-03-26 Thread Michael Knigge

Richards, Robert B. schrieb:

If we were looking to replace Microsoft's SQL Server with something on System 
z, what would my options be and how much effort would be required to move it 
there?


Well migrating to another DBMS is mostly a big challenge. If you are 
using just plain valinna stuff (i. e. no properitary column types, 
stored procedures, triggers, ...) then changin the DBMS is mostly 
painless...


But if there are a lot of special things (see samples above), then... 
eh... have fun ;-



As we are an ISV our products have to support a wide range of DBMS. We 
used MS-SQL Server, MySQL, PostgreSQL, Oracle and DB2 (unix and z/OS) in 
the past and they all have pros and cons.


For example: DB2 is rock-solid and very, very close on the SQL-92 
standard (well, but that is not always a gift - for example SQL-92 
states that leading spaces from CHAR(n) columns should not be removed 
and so DB2 doesn't removes them on retrieval - most other DBMS (as 
MS-SQL) do so). But administrating DB2 is not that easy imho.


Oracle is somehow rock-solid also, but I personally *HATE* tha Java 
Frontend that comes with Oracle. Furthermore I *HATE* the fact that you 
need a GUI to install Oracle (or I was too stupid to do without a GUI). 
I had to install X11 on a server just to install Oracle. Oracle also has 
its own datatypes (no INTEGER, SMALLINT and so on... Oracle knows 
NUMBER). And what is sometimes really a pain: Oracle doesn't know 
columns containiung NULL.


PostgreSQL... a great performer, great fetures but the ODBC driver is 
(sorry) crap, crap, crap If you really need ODBC, I pers. would 
avoid PostgreSQL.


MS-SQL Hmmm The system is somehow ok, the ODBC-Driver is 
stable but stupid (supports mostly just the base that is needed).


MySQL Well from a users, administrators and coders view, this is 
my favorite. Most of MySQL-Stuff is just so simple. The Server is 
installed in just one or two minutes, the ODBC-Driver is just a dream 
and using/administrating MySQL is *VERY* simple. But I've heard from 
some colleagues that they had problems with MySQL when they used rather 
big databases (multiple Gigs). But I don't remember exactly the problems 
they had...



As you see. The answer to your questing is it depends as always. I 
pers. would try MySQL on z/Linux. If ODBC is not needed you could/should 
try PostgreSQL also. DB2 is also great - I like this DBMS, but 
administrating is more overhead as for PostgreSQL and MySQL



Bye,
Michael

--
Yours sincerely

Michael Knigge
Development


S.E.T. Software GmbH
Lister Straße 15
30163 Hannover
GERMANY

Tel.  +49 511/3 97 80-23
Fax   +49 511/3 97 80-65
michael.kni...@set-software.de

Commercial Registry: HRB52778 Local Court Hannover
Chief Executive Officer: Till Dammermann, Dr. Bernd Huber

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: AFP Toolkit - open source or freeware

2010-02-18 Thread Michael Knigge
I am looking for a WYSIWYG freeware or open source tool to build AFP resources with.  We have PSF, but not InfoPrint.  Up until now we have just written OGL, but now we need to look for a tool.  It would be fine for it to run either on z or on a PC or Linux .  


Use MS-Word and the AFP-Printer Driver from IBM. It can generate 
Overlays, Page Segments and Documents.



bye,
MK

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: AFP Toolkit - open source or freeware

2010-02-18 Thread Michael Knigge

I am looking for a WYSIWYG freeware or open source tool to build AFP resources 
with.  We have PSF,


MS-Word is hardly freeware or open source, but if MS-Word will do what is needed, then perhaps 
the OpenOffice equivalent would also work (and that *is* both freeware and open source).


Well, MS-Word was just a joke. Of course any tool can be used, even 
notepad or MS-Paint.


Furthermore, the orginal auther requested a freeware tool that generates 
AFP. So... the generator is the printer driver and this tool is freeware.



Bye,
MK

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


LE Condition Handler, COBOL SORT and z/OS 1.10

2010-01-14 Thread Michael Knigge

All,

at a customers site we encounter a problem that I don't understand... 
maybe any of you can give me a hint..


At first, at the client side the LE-Option TRAP(ON,NOSPIE) is in 
effect and z/OS 1.10 is running. The described problem does not occur 
with z/OS 1.9!



Our main program (all COBOL) registers a user condition handler using 
CEEHDLR and queries a resume point using CEE3SRP.


The address of the resume point is stored in a COBOL-Variable marked 
EXTERNAL.


Now, from another sub-program we issue a COBOL-SORT (using an INPUT and 
OUTPUT PROCEDURE) and encounter a S0C4. Our condition handler get's 
called, but the EXTERNAL-Variable containing the address of our resume 
point is NULL. Furthermore, the complete WORKING-STORAGE of our 
condition handler is completely fresh.


I guess the reason is that the SORT runs in its own enclave?!?!?


So, I check if the resume-point is NULL/ZERO - if yes, I GOBACK from my 
condition handler after I've set the flag PERCOLATE (like in the current 
case if I catch an ABEND within the COBOL-SORT processing).


Now... the funny/bad thing is, that the jobstep ends not with the S0C4, 
it ends with CC=0. WHY?!?!?!?!?


As said, if running with TRAP(ON,SPIE) everything is fine. And 
TRAP(ON,NOSPIE) is even fine under z/OS 1.9 - but z/OS 1.10 gives me the 
CC=0 WHY? Anything I miss?



Bye  Thanks,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: LE Condition Handler, COBOL SORT and z/OS 1.10

2010-01-14 Thread Michael Knigge

Steve,


I got to wondering: have your LE default settings been changed in
moving from 1.9 to 1.10? If someone got it in their bonnet to set
the default to POSIX(ON) that might account for the change in
behavior.


I'll cross-check this tomorrow - but afaik POSIX(OFF) is in effect...


Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: ASA character viewer

2009-12-14 Thread Michael Knigge

:Do you know of a freeware Windows viewer that can display reports with
:embedded asa carriage control characters and be able to display it
:correctly? The viewer should be able to interpret the ASA characters.


Not windows, but Linux (or other UNIX that supports the getopt() 
function)


http://home.comcast.net/~urbanjost/CLONE/ASA/asa_carriage_control.html

May be compiled without pain using cygwin under Windows


Bye,
Michael

--
Yours sincerely

Michael Knigge
Development


S.E.T. Software GmbH
Lister Straße 15
30163 Hannover
GERMANY

Tel.  +49 511/3 97 80-23
Fax   +49 511/3 97 80-65
michael.kni...@set-software.de

Commercial Registry: HRB52778 Local Court Hannover
Chief Executive Officer: Till Dammermann, Dr. Bernd Huber

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Date / Time simulation?

2009-12-01 Thread Michael Knigge

All,

is it possible to simulate a specific time and date to an appication
(COBOL+ASM Batch and/or Java)?

There are some tools and libraries for Linux and Windows that can fake
a specific date/time to a process. Using Micro Focus COBOL one can
fake the date via environment variables...

But how about z/OS?


Thanks,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Alternatives to QuickRef?

2009-11-02 Thread Michael Knigge

Itschak Mugzach schrieb:

Does anyone knows an alternative to the mainframe product known as QuickRef?


I' currently working on a Help-System that will hopefully be released 
Q1 next year (most of the work is done - I'm currently cleaning up some 
things, implement licesnsing stuff, design the web-site and so on).


This system is a .NET Application that can be hooked into any running 
application, grab the text string under the cursor and query a DB with 
this string.


This way I can query any 3270-Emulation and query for the string under 
the cursor. (In detail, I use several techniques/methods to get the 
string to query).



If you are interested to give it a test drive or you want to have more 
technical details - let me know. And also let me know which manuals you 
need to be stored in the database (i. e. SQL-Codes, DB2-Messages, 
RACF-Messages. MVS System Codes and so on).


I also plan to provide an API so you can store your own personal data 
into the database.




Oh.. and to answer your question: Well, the only alternative that I know 
is IBM BookManager



Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Does a DD-Statement waste memory after dealloc?

2009-10-26 Thread Michael Knigge

Clark,


If these are for QSAM data sets, does the C program do a FREEPOOL
(free the buffer pool) on CLOSE.  For reasons I don't understand,
apparently CLOSE does not automatically free the buffers.  I think the


Well, I assume the C-Runtime does a FREEPOOL. If an I/O Error occurs the 
field __last_op of the __amrc_type can be __QSAM_FREEPOOL.


At no other place in the Manual something like FREEPOOL is mentioned. 
So I guess it is done automatically



Bye,
Michael

--
Yours sincerely

Michael Knigge
Development


S.E.T. Software GmbH
Lister Straße 15
30163 Hannover
GERMANY

Tel.  +49 511/3 97 80-23
Fax   +49 511/3 97 80-65
michael.kni...@set-software.de

Commercial Registry: HRB52778 Local Court Hannover
Chief Executive Officer: Till Dammermann, Dr. Bernd Huber

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Does a DD-Statement waste memory after dealloc?

2009-10-26 Thread Michael Knigge

Miklos,


We are also around dynalloc from C/C++, but
You are saying 17000 pages , but the used storage also high  ?  
(RPTSTG(ON))
So is it a reall  a memory leak (HEAPC(ON,0,0,20)) or just a high real 
storage usage ?

The LE runtime HEAPOOL(ALIGN) can make big differences .


Well, maybe I'm currently a little bit dumb, but where is the 
difference? When my Prog starts, SDSF reports something around 1700 used 
pages (ehh, a page is 4K, right?).


After some time, it reports (for example today) 15T pages  (I assume 
T=thousand). The prog does a DYNALLOC, OPEN, READ/WRITE, CLOSE, DEALLOC.


So somehwere is a memory leak. The last days I tried to find it using 
different techniques. I used a wrapper around malloc(), calloc(), 
realloc() and free() to track my own memory allocations. Result: No 
leak! Nearly everything I allocate gets freed too.


I've also used the Heap-Manager CEL4MCHK... again: no leak.


So... Until now I can be sure that I've no obvious memory leak in my 
application. Now I assume something that is special to the z/OS 
Envoronment makes my application use that much memory (the application 
runs also on Linux, AIX, SunOS and Windows - no high memory usage is 
seen on these platforms).



Just a few minutes ago I've captured a SVC Dump of my prog - since I've 
never done things with IPCS this brings me not any further. I'll have to 
get familar with IPCS first.



I also cancelled the prog and generated a dump - the dump has been 
catched by the IBM Application Fault Analyzer and I'll throw an eye on 
the analysis later. What I've seen so far is a error message:


snip
*ERROR* The left node address 1E222AD8 is larger than the parent node 
address 1E222098

/snip

whatever IBM tries to tell me with this left-right stuff ;- I'll 
consult the manual later Maybe I'm somehow irritating the heap 
manager




Bye,
Michael

--
Yours sincerely

Michael Knigge
Development


S.E.T. Software GmbH
Lister Straße 15
30163 Hannover
GERMANY

Tel.  +49 511/3 97 80-23
Fax   +49 511/3 97 80-65
michael.kni...@set-software.de

Commercial Registry: HRB52778 Local Court Hannover
Chief Executive Officer: Till Dammermann, Dr. Bernd Huber

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Does a DD-Statement waste memory after dealloc?

2009-10-26 Thread Michael Knigge

Hi Juergen,

The FREEPOOL macro releases an area of storage, previously acquired for a 
buffer pool for a specified data control block. The area must have been 
acquired either automatically (except when dynamic buffer control is used) or 


The problem is, that FREEPOOL needs the DCB - an because my appl is 
written in C, I don't have any clue about the DCB


Bye,
Michael

--
Yours sincerely

Michael Knigge
Development


S.E.T. Software GmbH
Lister Straße 15
30163 Hannover
GERMANY

Tel.  +49 511/3 97 80-23
Fax   +49 511/3 97 80-65
michael.kni...@set-software.de

Commercial Registry: HRB52778 Local Court Hannover
Chief Executive Officer: Till Dammermann, Dr. Bernd Huber

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Does a DD-Statement waste memory after dealloc?

2009-10-26 Thread Michael Knigge

Hi Chris,


Under the COMMAND panel, try VERBX VSMDATA 'SUMMARY'


Thank you for the hint... I tried it and what I get at the end of the 
summary is:


VSM SUBPOOL TRANSLATION TABLE ERROR DETECTED




The other thing I find interesting is the fact that you are up to 17T real 
pages.  Either some program is looking at a lot of storage all the time, or 
that storage has been pagefixed.  If it was not pagefixed, the system probably 
would have paged some of that storage out.  To see what is pagefixed you can 
run a RSMDATA report.


gives me

BLS18100I ASID(X'0001') FFB744 not available for PVT
IAR80303I Primary RSM data area not in dump.  RSM processing terminated.


Well all this stuff is somehow wired...


Using IPCS I was able to see that I use most of the space in the 
extended user region (ELOAL = 3A4F000) and with the IBM Fault Analyzer I 
was able to see that there are many many modules loaded in this region 
that I've never heard about :(


So I'm out of the office now for two days and when I'm back I guess 
I have to study a lot of manuals (i. e. ABCs of SysProg and so on) to 
get familar with all this stuff...


I ask myself why there is no how to find memory leaks guideline in the 
ABCs of System Programming Manuals... Other stuff is handled (for ex. 
loop detection)



So far, thank you for your hints


bye,
Michael

--
Yours sincerely

Michael Knigge
Development


S.E.T. Software GmbH
Lister Straße 15
30163 Hannover
GERMANY

Tel.  +49 511/3 97 80-23
Fax   +49 511/3 97 80-65
michael.kni...@set-software.de

Commercial Registry: HRB52778 Local Court Hannover
Chief Executive Officer: Till Dammermann, Dr. Bernd Huber

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Does a DD-Statement waste memory after dealloc?

2009-10-09 Thread Michael Knigge

All,


I currently try to find a obscure memory leak in one of our 
applications. After some days our appl occupies ~17.000 pages of real 
memory  (needs just ~1.500 after startup).


As we track all malloc(), calloc(), realloc() and free() function calls, 
I can say that there is no obvious memory leak


Now... after I've looked at the JESYSMSG I've noticed that we've done 
approx 17.000 DYNALLOCs, everyone with a different DD-Name (we let the 
z/OS generate a unique one, like SYS1, SYS2, SYS3 and 
so on). to be clear: *NOT* ~17.000 at the same time. mostly only one 
at the same time...


Of couse, we deallocate them after we've finished using the DD-Name, but 
I wonder that even after a DEALLOC (with SVC99) there is some space 
still occupied


Why? Because of performance? Because of some kind of control block that 
can only grow but not shrink?



Thanks,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Does a DD-Statement waste memory after dealloc?

2009-10-09 Thread Michael Knigge
Have you tried taking an in-flight dump (z/OS command : DUMP COMM=('foo') ) of the address space and then running IPCS against it to see where the storage is being used (VERBX VSMDATA and RSMDATA would be good place to start). 


I've never used IPCS :-(  But I'm afraid in this case I have to use it.

Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Does a DD-Statement waste memory after dealloc?

2009-10-09 Thread Michael Knigge

We are also around dynalloc from C/C++, but
You are saying 17000 pages , but the used storage also high  ?  
(RPTSTG(ON))
So is it a reall  a memory leak (HEAPC(ON,0,0,20)) or just a high real 
storage usage ?

The LE runtime HEAPOOL(ALIGN) can make big differences .



I'll give this a try

MK

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: How much will fit in a dataset?

2009-09-23 Thread Michael Knigge

Jan MOEYERSONS schrieb:
DASDCALC of Central Cost Software does a pretty good job on calculating 
DASD space. http://www.centralcoastsoftware.com/page6.html


Ah, nice tool



@ all:

thank you for your replies to my question. After reading the 3390 
Reference Summary (I even didn't know that such thing existed) and 
playing around a little bit with DASDCALC and a self written C Prog I 
guess now I have clue how this stuff works


Thank you!


Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


How much will fit in a dataset?

2009-09-22 Thread Michael Knigge

All,

I'm a little bit mystified but maybe I just need more coffee... don't 
know...



Yesterday I've allocaed a dataset (RECFM=FB, LRECL=80, BLKSIZE=800, 
SPACE=TRK(1,1)) and filled as much records in this dataset as possible. 
I've used the ISPF Editor and I was able to write 6240 records to the 
file. I've got a E37 as I tried to add the record #6241. Ok


Then I've written a little C-Program that used the fopen/fwrite/fclose 
functions to fill the same dataset. I was able to fwrite 6.290 records. 
Well... I guess I was able the write 6240 records and the difference is 
somethere in the C-Library IO-Buffer that now can't be flushed to disk.


So I've issued a fflush() after each write to be sure how many 
records I *REALLY* can write into the dataset: round about 1.200... huh? 
Here I guess that the fflush() will write a block to the DASD and will 
waste much space - because the block isn't filled yet...



I've read some manuals and I guess I know why: There may be so called 
short blocks - I guess this can happen when the C-Library calls 
fflush() to flush the IO buffer but a Block isn't full yet. Right so 
far?!?!?


So I've allocated the file with RECFM=FBS and voila... No matter if I 
issue a fflush() after each write or not - I can write 6290 records in 
both cases.



But what I really don't understand: A track is (afaik) 56.664 bytes in 
size. So I could write 56.664 / 800 (track size / block size) = 70 
blocks in one track. One block can hold up to 10 records (LRECL=80, 
BLKSIZE=800). So... one track should keep up to 700 records. z/OS 
allocates up to 16 extents, so... 700 * 16 = 11.200 Records.


So why I can only write 6.240 records?



So the question is: How can I determine how much space is still 
available? Is there a formula or something like that?!? Or any way to 
get the current allocation (allocated extents) for a dataset? And why 
the hell is my calculation wrong?!?!?



Thank you very much for your help and ideas


Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: How much will fit in a dataset?

2009-09-22 Thread Michael Knigge

Thank you all so far!


*avoid* fflush for 3 reasons: performance, wasted space on track, 
unexpected space abends.

Period.


Well, I've used the fflush() to check my assumptions... I'm aware of the 
badness of fflush() ;-



If you expect to write approx. 1 000 000 records then you get 1432,6... 
tracks. You should round it up to 1500 tracks and give some secondary 
space, i.e. 500 tracks (YMMV).


Here are the bad news (well, for me):

A) I don't have any clue how much I have to write (this is the reason 
why I need to check if the dataset is getting full and I have to 
allocate an additional file)


B) the whole stuff is written in Java... This is why I hoped I could do 
all the needed calculations by myself because calling native stuff 
(assembler) is expensive in Java



Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: How much will fit in a dataset?

2009-09-22 Thread Michael Knigge

Don Williams schrieb:

Yes, there is a formula. I'll assume that you have either 3390 or 3380 (or
equivalent). Refer to GX26-4577. It has additional references.


Ahh found it on bitsavers.org Thanks!


Bye,
MK

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: User-written ISPF-Editor line commands

2009-09-11 Thread Michael Knigge
* FA - Find All occurrences of a word. 



I did a similar thing using a Macro with Vista tn3270

If I press ALT-ENTER, the word under the Cursor is searched with a FIND 
xxx ALL command.


If I press CTRL-ENTER, the Word under the cursor is searched on column 8 
(-- so I put the cursor on a PERFORM X00-FOO-BA, press CTRL-ENTER and 
the editor jumps to the X00-FOO-BA paragraph...


I really don't wanna miss one of them


But ok, not native for ISPF because it is a 3270-Emulation macro.



Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


User-written ISPF-Editor line commands

2009-09-10 Thread Michael Knigge

All,

I've been googl'ing for a while now but in vain so far: Is it somehow 
possible to write user-defined line commands?


I want to enter FOO in front of a line in EDIT and then a self-written 
routine should be fired up that handles the line...



Any way?

Thank you,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: User-written ISPF-Editor line commands

2009-09-10 Thread Michael Knigge

Thank you guys! That's exactly what I'm looking for!


Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Need new 3270 emulator: SSH, inexpensive, reliable

2009-08-26 Thread Michael Knigge

John,

if you need a cheap and reliable 3270 Emulation then give Vista tn3270 a 
try.


see www.tombrennansoftware.com

Since V1.26 it supports secure connections over a SSL connection - I 
guess this is what you need.


The pros and cons of (all) 3270 emulations have been discussed here 
before. What I like best on Vista is the really clear font, the support 
of the author and the z/OS Utility VSTEXEC, which can be used to start 
Vista tn3270 Macros from your TSO Session...



Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Any product to undelete file?

2009-07-13 Thread Michael Knigge

Guy Gardoit schrieb:

Hmmm.  Makes me wonder if in Unix there is an recycle bin equivalent for
the rm command.


no. KDE, GNOME, XFCE and so on have a recycle bin implemented, wich only
works if files are deleted with the filemanager of the desktop
environment (-- KDE, GNOME, etc).


But there is a rather cool library called libtrash which can be used.

This library hooks the remove() and unlink() functions of the libc. So
whenever an application deletes a file, the libtrash will get informed
about this and move the file to a recycle bin directory.


Works at least for Linux, no idea if it works for AIX, SunOS, HP-UX or
whatever



Bye,
Michael





--
Mit freundlichen Grüßen

Michael Knigge
Entwicklung


S.E.T. Software GmbH
Lister Straße 15
30163 Hannover

Tel.  +49 511/3 97 80-23
Fax   +49 511/3 97 80-65
michael.kni...@set-software.de

Handelsregister: HRB52778 Amtsgericht Hannover
Geschäftsführer: Till Dammermann, Klaus Stöhr

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Question about REUS=NONE

2009-07-07 Thread Michael Knigge

All,

once upon the time, we had to write an application (in VS COBOL II) that
 uses subtasks.

Because this old COBOL release did not support subtasks, we did a trick:
We've attached from an ASM driver a little ASM stub that did just one
thing: call the wanted COBOL prog.

We had to link all COBOL-Modules statically to get all this stuff
working. The COBOL progs are also using some ASM Subs for some special
things (i. e. doing a GETMAIN, FREEMAIN, STIMERM and so on). They are
also statically linked. So the initial ATTACH attaches a really big thing...


Now we are just about 13 years later and I have to convert this
application. We want to use Enterprise COBOL and dynamic CALLs.


Now. I guess all the COBOL-Stuff will work pretty well (I guess that
the WOKING-STORAGE gets getmained for every new copy of the COBOL-Prog
within each subtask).

But I wonder how to migrate the ASM-Subs nearly painless I could
rewrite all this ASM-Subs and use dynamic Saveareas but I wonder if just
using REUS=NONE would do the same job...

So bring it to a question: What is the scope of the REUS-Option?
(Sub)Task-Level? Then using REUS=NONE would bring up a new copy of the
ASM-Stubs for every Subtask - just what I need I don't care for the
wasted memory because the ASM-Subs are mostly rather small (and well,
today they are all statically linked together with some really big
COBOL-Subs)


Thank you for hints


Bye,
Michael



--
Mit freundlichen Grüßen

Michael Knigge
Entwicklung


S.E.T. Software GmbH
Lister Straße 15
30163 Hannover

Tel.  +49 511/3 97 80-23
Fax   +49 511/3 97 80-65
michael.kni...@set-software.de

Handelsregister: HRB52778 Amtsgericht Hannover
Geschäftsführer: Till Dammermann, Klaus Stöhr

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


IF-Statement in JCL

2009-06-25 Thread Michael Knigge

All,


is it possible to control the steps to be executed by a IF-Statement, i. 
e. with a variable?


Like this:

// SET SWITCH1=YES
// SET SWITCH2=NO
//*
//* EXECUTE ONLY IF SWITCH1 IS SET TO YES
//IF SWITCH1=YES
//STEP01  EXEC PGM=IEBGENER
//... more stuff
//ENDIF
//*
//* EXECUTE ONLY IF SWITCH2 IS SET TO YES
//IF SWITCH2=YES
//STEP02  EXEC PGM=IEBGENER
//... more stuff
//ENDIF
//*


If I've understood the JCL docs corretly there are only some predefined 
variables (like RC) that can be checked... I wonder if there is a way...



Thanks

Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: IF-Statement in JCL

2009-06-25 Thread Michael Knigge

Roland,

Not with YES/NO but like this 
Note: IEFBR14 always set RC0 


oh my god, that simple..

I always thought to myself, I could write a utility that just returns 
(so do a B R14) and set a RC that I've specified with a PARM 
JCL-Statement (EXEC PGM=FOO,PARM='1' or something like that)


Your approach somehow the same, but much simplier


Thank you...


Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


How to set priority (CPU) of a job?

2009-06-12 Thread Michael Knigge

All,

maybe this is a real dumb question but


We are running a ADCD based system (around 60 MIPS) and need to run a 
job with a most powerless priority possible.


One of our jobs (a real big java program) is consuming so much CPU power 
that working on the system is nearly impossible.


So we want to submit the job but in a way, where all other stuff running 
on the system (started tasks, batch jobs and TSO Sessions) are getting 
all CPU power and the batch job is getting only what's left...


Any way? The Work Load Manager is installed and active, but I have no 
skills in this area.


It would be great if someone would bring me in the right direction...


Thank you,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: How to set priority (CPU) of a job?

2009-06-12 Thread Michael Knigge

The answer is in WLM. There should be a Service Class with the lowest
possible goal, probably with a Discretionary Goal. Then there should be
Classification Rules that direct jobs to that Service Class, probably by
jobclass. Select that jobclass for the job, if you are allowed to, OR
reset the jobclass before is starts OR reset the Service Class of the
running job under SDSF.


Thank you - I'll give it a try this evening


Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: C/C++ Calling OBTAIN / IGC0002G

2009-05-18 Thread Michael Knigge

Eileen,

I don't know what is happening at your site, but on our system 
everything runs fine.


I was able to compile and link the source and successfully do an OBTAIN 
for SYS1.PARMLIB on volume Z9RES1.


I'll attach once again my source and also the SYSOUT of the c++ so you 
can compare your and my settings



Good luck!


Bye,
Michael


--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html
*--
R0   EQU   0
R1   EQU   1
R2   EQU   2
R3   EQU   3
R4   EQU   4ADRESSIERUNG DER PARAMETER
R5   EQU   5
R6   EQU   6
R7   EQU   7
R8   EQU   8
R9   EQU   9
R10  EQU   10
R11  EQU   11   BASISREGISTER
R12  EQU   12   LE/370 COMMON ANCHOR AREA (CAA)
R13  EQU   13   LE/370 DYNAMIC SAVE AREA (DSA)
R14  EQU   14
R15  EQU   15
*--
PARM DSECT
PARM_FLG DSFFUNKTIONSCODE HEX'C100'
PARM_DSN DSFADRESSE AUF DSN (MUSS 44 BYTES LANG SEIN)
PARM_VOL DSFADRESSE AUF VOLSER (MUSS 6 BYTES LANG SEIN)
PARM_WRK DSFADRESSE AUF 140 BYTE WORK/RETURN-AREA
*--
*--
OBTAIN   CEEENTRY PPA=MAINPPA,   ADRESSE AUF PROGRAM PROLOG AREA   X
   AUTO=WORKSIZE,GROESSE DER DSECT (- SAVEAREA!)  X
   NAB=NO,   NAB NICHT ZWINGEND VORHANDEN  X
   MAIN=NO,  KEIN HAUPTPROGRAMMX
   EXPORT=NO,ENTRYPOINT NICHT EXPORTIEREN  X
   BASE=R11  BASISREGISTER
*
 USING CEECAA,R12COMMON ANCHOR AREA
 USING CEEDSA,R13DSA + LOKALE (DYNAM.) VARIABLEN
*--
 L R4,0(R1)  ADRESSE AUF PARAMETER LADEN
 USING PARM,R4   PARAMETER ADRESSIEREN
*
 OBTAIN PARM OBTAIN AUFRUFEN
 STR15,RETCODE   RETURNCODE SICHERN
*
 CEETERM RC=RETCODE
*--
MAINPPA  CEEPPA  PROGRAM PROLOG AREA
 LTORG
*--
 CEEDSA  DSECT: DYNAMIC SAVE AREA
RETCODE  DS  F   RETURNCODE
 DS  0D  ALIGNMENT SICHERSTELLEN
WORKSIZE EQU *-CEEDSA
*--
 CEECAA  DSECT: COMMON ANCHOR AREA
 CEEEDB  DSECT: ENCLAVE DATA BLOCK
*--
 END

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html
//* c++ 
//COMPILE   EXEC  PGM=CCNDRVR,
//  PARM='POSIX(OFF) ABT(RETCODE) ENVAR(PDFDIR=./, __CBC_EXTENDED=9)/
//  ./ ./ctoasm.c *.c 
//  CMDOPTS(OE,NOLSEARCH,
//  START,LONGNAME,RENT,TERMINAL,
//  OBJECT(ctoasm.o),
//  HALT(16),NOMARGINS,NESTINC(255),NOSEQUENCE,NOSSCOM,
//  NOEVENTS,NOALIAS,TARGET(LE),NOEXPORTALL,
//  ARGPARSE,EXECOPS,PLIST(HOST),REDIR,
//  LOCALE(POSIX),
//  LANGLVL(ANSI),NOUPCONV,NOLIBANSI,ANSIALIAS,
//  NOINLINE(AUTO,NOREPORT,100,1000),MEMORY,MAXMEM(*),SPILL(128),
//  NODEBUG,NOTEST,NOGONUMBER,
//  NOLIST(/dev/fd1),NOSOURCE(/dev/fd1),
//  NOAGGREGATE,NOEXPMAC,NOOFFSET,NOSHOWINC,NOXREF,
//  NOINFO,FLAG(W),NOIPA),
//  DEFINE(errno=™™(*__errno™™(™™)™™)),
//  DEFINE(_OPEN_DEFAULT=1),
//  NOSEARCH,SEARCH(/usr/include/,
///usr/lpp/cbclib/include/,
////''CEE.SCEEH.+'',
////''CBC.SCLBH.+''),
//  NOPPONLY(NOCOMMENTS,NOLINES,/dev/fd1,2048),
//  OPTIMIZE(0)'
//*STEPLIB DD  DSN=CEE.SCEERUN,DISP=SHR
//*DD  DSN=CBC.SCCNCMP,DISP=SHR
//* c++ 
//ASSEMBLE  EXEC  PGM=ASMA90,
//  PARM='NODECK,OBJECT,TERM,
//  NOLIST,NOESD,NORLD,NOXREF,FLAG(4)'
//SYSLIB   DD  DSN='CEE.SCEEMAC',DISP=SHR,DCB=DSORG=DIR
// DD  DSN='SYS1.MACLIB',DISP=SHR,DCB=DSORG=DIR
// DD  DSN='SYS1.MODGEN',DISP=SHR,DCB=DSORG=DIR
//SYSPUNCH DD  DUMMY
//SYSUT1   DD  UNIT=SYSDA,SPACE=(32000,(30,30)),
// STORCLAS=,MGMTCLAS=,DATACLAS=,DSNTYPE=,
// DCB=(RECFM=F,LRECL=4088,BLKSIZE=4088)

Re: C/C++ Calling OBTAIN / IGC0002G

2009-05-18 Thread Michael Knigge

I am trying to compile and link the programs in batch but am running
into other problems, so you attachments will be a big help.


Well, I usually work under Batch I could send you my compile and 
link JCL complete with all options (for asm, compile and link) if you 
wish



Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: C/C++ Calling OBTAIN / IGC0002G

2009-05-15 Thread Michael Knigge

Hi,


but when i look at c, c++ on the mainframe I know next to nothing - c#
is completely different. That is why i got interested in this topic.


Well, C# ist more like Java as C or C++




although some do work and others abend. and the abends happen when
running both batch and under OMVS. i have not yet looked up what the
segmentation violation abend means.


segmentation violation is a S0C4.




   int   main()
{
char dsname[44], volume[6];
 memset(dsname,' ',44);
,Command ===,
 memcpy(dsname, XCICS.EILEEN.PDSE, 17);
 memset(volume,' ', 6);
 memcpy(volume, CICH92, 6);
 memset(work,' ',140);
call_obtain(dsname,volume,work);


Try

call_obtain(XCICS.EILEEN.PDSE, CICH92);

and remove the stuff above...




Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: C/C++ Calling OBTAIN / IGC0002G

2009-05-13 Thread Michael Knigge

Cristi Terpea schrieb:

What am I doing wrong?


I really don't know ;)  But why don't you use a little ASM routine?

*
R0   EQU   0
R1   EQU   1
R2   EQU   2
R3   EQU   3
R4   EQU   4PARMS
R5   EQU   5
R6   EQU   6
R7   EQU   7
R8   EQU   8
R9   EQU   9
R10  EQU   10
R11  EQU   11   BASE
R12  EQU   12   LE/370 COMMON ANCHOR AREA (CAA)
R13  EQU   13   LE/370 DYNAMIC SAVE AREA (DSA)
R14  EQU   14
R15  EQU   15
*
PARM DSECT
PARM_FLG DSFFUNCTION-CODE HEX'C100'
PARM_DSN DSFADDR OF DSN (44 BYTES)
PARM_VOL DSFADDR OF VOLSER (6 BYTES)
PARM_WRK DSFADDR OF 140 BYTE WORK/RETURN-AREA
*
*
OBTAIN   CEEENTRY PPA=MAINPPA,   ADDR OF PROGRAM PROLOG AREA   X
   AUTO=WORKSIZE,SIZE OF DSECT (- SAVEAREA!)  X
   NAB=NO,   NAB NOT USED  X
   MAIN=NO,  NO MAINPROG   X
   EXPORT=NO,DONT EXPORT ENTRYPOINTX
   BASE=R11  BASE
*
 USING CEECAA,R12COMMON ANCHOR AREA
 USING CEEDSA,R13DSA + LOCAL (DYNAM.) VARIABLES
*--
 L R4,0(R1)  LOAD ADDR OF PARMS
 USING PARM,R4   ADDRESS PARMS
*
 OBTAIN PARM INVOKE OBTAIN
 STR15,RETCODE   SAVE RC
*
 CEETERM RC=RETCODE
*--
MAINPPA  CEEPPA  PROGRAM PROLOG AREA
 LTORG
*--
 CEEDSA  DSECT: DYNAMIC SAVE AREA
RETCODE  DS  F   RETURNCODE
 DS  0D  ENSURE ALIGNMENT!!!
WORKSIZE EQU *-CEEDSA
*--
 CEECAA  DSECT: COMMON ANCHOR AREA
 CEEEDB  DSECT: ENCLAVE DATA BLOCK
*--




So... now you can invoke OBTAIN from C by

int OBTAIN(unsigned long[]);

#pragma linkage(OBTAIN, OS)

#pragma pack(1) /* 1 byte alignment */
typedef struct
{
   char   Ds1FmtId;
   char   Ds1Dssn[6];
   unsigned short Ds1VolSq;
   char   Ds1CreDt[3];
   char   Ds1ExpDt[3];
   unsigned char  Ds1NoEpv;
   unsigned char  Ds1NoBdb;
   unsigned char  Ds1Flag1;
   char   Ds1SysCd[13];
   char   Ds1RefDt[3];
   unsigned char  Ds1SmsFg;
   unsigned char  Ds1ScXft;
   unsigned short Ds1ScXtv;
   unsigned char  Ds1DsOrg[2];
   unsigned char  Ds1RecFm;
   unsigned char  Ds1OptCd;
   unsigned short Ds1BlkL;
   unsigned short Ds1LrecL;
   unsigned char  Ds1KeyL;
   unsigned short Ds1Rkp;
   unsigned char  Ds1DsInd;
   unsigned char  Ds1ScAl1;
   unsigned char  Ds1ScAl3[3];
   unsigned char  Ds1LstAr[3];
   unsigned short Ds1TrBal;
   unsigned char  Reserved;
   unsigned char  Ds1Tthi;
   unsigned char  Ds1Ext1[10];
   unsigned char  Ds1Ext2[10];
   unsigned char  Ds1Ext3[10];
   unsigned char  Ds1PtrDs[5];
   char   Filler[44];
} DSCB;
#pragma pack() /* default alignment */


int call_obtain(char *Dsn, char *VolSer)
{
   intRc;
   unsigned long  Parm[4];
   char   ParmDsn[44];
   char   ParmVolSer[6];
   DSCB   Dscb;

   memset(ParmDsn, ' ', 44);
   memcpy(ParmDsn, Dsn, strlen(Dsn));

   memset(ParmVolSer, ' ', 6);
   memcpy(ParmVolSer, VolSer, strlen(VolSer)); /should be 6 always!

   Parm[0] = 0xC100;
   Parm[1] = (unsigned long) ParmDsn;
   Parm[2] = (unsigned long) ParmVolSer;
   Parm[3] = (unsigned long) Dscb;

   if((Rc = OBTAIN(Parm[0])) != 0)
  return(Rc);

   // do something with DSCB
   return(0);
}



This is how it works for me in a multithreaded application written in C...


Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: SPF/pc, Gone???

2009-05-08 Thread Michael Knigge
- Does anyone have any contact information? 


No, really bay news!


- Have any currently registered owners of SPF/SE heard anything from the 
company? 


The last time I've been in contact with Tim Tetiva was 08/26/2008.



Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: SPF/pc, Gone???

2009-05-08 Thread Michael Knigge
I continued to check in yearly to see if new feature would entice me away 
from the old version. I did this as recently as late last year, and at that time 
saw no signs that they were about to pull the product.


I've been in deep contact with Tim Tetia since Nov 2006. He did a lot of 
enhancements for us (and bug fixes for some bugs I've found).


One of the greatest enhancements is the ability to edit files with a RDW 
(Record Descriptor Word, the 4 byte length field of every RECFM=V 
dataset). This feature is so flexible that we can also edit files 
downloaded from a BS2000 Mainframe (with a 2 Byte length field) and also 
binary AFP-Files (2 byte length field following a X'5A').



Furthermore Tim has realized a command history function for us and the 
new command FONTSET which can be used to change the editor font at 
runtime.


And last but not least, he added support for newer Micro Focus COBOL 
Compilers (Net Express / Server Express) so one can use MERGEMSG to 
merge error-messages into the edit session.


Oh yes, and he implemented the new option SCREEN for the PRINT 
command that causes SPF/SE to print a hardcopy (prints exactly what is 
shown in the editor).




SPF/SE is much more powerful as one might think if looking at the web 
site



Bye,
Michael


--
Yours sincerely

Michael Knigge
Development


S.E.T. Software GmbH
Lister Straße 15
30163 Hannover
GERMANY

Tel.  +49 511/3 97 80-23
Fax   +49 511/3 97 80-65
michael.kni...@set-software.de

Handelsregister: HRB52778 Amtsgericht Hannover
Geschäftsführer: Till Dammermann, Klaus Stöhr

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: TN3270 Clients?

2009-04-08 Thread Michael Knigge
Does anyone know of a really good, free TN3270 client for windows?  


You should really invest $30 and buy Vista tn3270 from 
www.tombrennansoftware.com


Not free, but cheap.


If you want it really free there are (IMHO) three alternatives:

1. The (old) free Version of QWS3270
2. The console version of X3270 (-- w3270)
3. Use a free X-Server and X3270

W3270 and X3270 can be downloaded at http://x3270.bgp.nu

There a several free X-Servers, but I guess the best is Xming which 
can be downloaded - http://sourceforge.net/projects/xming



But running a X-Server just for a 3270 Session Hmmm hey, spend 
the $30 and be happy ;-)



Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Pass Parameter containing spaces to Rexx in BATCH

2009-03-25 Thread Michael Knigge

All,

I want to pass multiple parameters to a rexx running in batch, but one 
of the parameters can contain spaces (-- multiple words).


I tried

EXEC PGM=IKJEFT01,PARM='MYREXX P1 P2 IS HERE P3'

and also

EXEC PGM=IKJEFT01,PARM='MYREXX P1 ''P2 IS HERE'' P3'


but all in vain. no chance?


Thank you all,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Pass Parameter containing spaces to Rexx in BATCH

2009-03-25 Thread Michael Knigge

All,

Lots of ways to do this. Work with the syntax of your PARSE verb. 
Quick and easy: put the parameter with spaces last:


Thanks a lot for all your replies - again I've learned a little bit ;)


bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: 3270 emulator cost

2009-02-25 Thread Michael Knigge
Brennan's Vista.  At $30 a seat for a perpetual license, you can't get a 
better TN3270 emulator.  Not only is it cheap, it's way better than 
PCOMM, Extra, RUMBA, etc.  Check it out at www.tombrennansoftware.com.


I also recommand Vista tn3270 to everyone. But better than  is not 
right. It always depend on the needed features.


For example, if you need EHLLAPI/WinHLLAPI, then you can't use Vista 
because it doesn't support this stuff. But I guess for the $40.000 Tom 
Brennan would implelent this ;-



Advantages of Vista (imho)

o VERY VERY good readable Font! IMHO the greatest 3270 Font!

o Vista is small- it fires up quickly and you get quickly conncted

o powerful macro language

o Tom Brennan gives great support (he implemented extensions to the 
macro language for me - try this with IBM or other competitors)


o It simply works!





Disadvantages:

o No EHLLAPI / WinHLLAPI

o Dialogs are really old-fashioned (yes I know, who cares, but for the 
first time user they really look, ehem, strange).




I personally would never use another emulator if I had the choice.

bye,
Michael









Regards,
Tom Conley
--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



--
Mit freundlichen Grüßen

Michael Knigge
Entwicklung


S.E.T. Software GmbH
Lister Straße 15
30163 Hannover

Tel.  +49 511/3 97 80-23
Fax   +49 511/3 97 80-65
michael.kni...@set-software.de

Handelsregister: HRB52778 Amtsgericht Hannover
Geschäftsführer: Till Dammermann, Klaus Stöhr

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: USS and C

2009-02-24 Thread Michael Knigge

And the converged question is: Do the two sets overlap? That is, do
most/all of the folks who DO use C on z/OS do so under USS?


I don't have much knowledgea bout all this stuff (still learning), but 
if I got things right you can decide if your application runs in the 
POSIX-Environment or in the MVS-Environment not...


So, if your C-programmer someday will encounter a function that can only 
be used with POSIX(ON), like the threading stuff for example, then 
he/she will switch it on and he/she will be happy that function fooba() 
now will work...


Now - when this application runs it runs under USS (if I got all this 
stuff right), so. yes, UCC and C will/can overlap.



bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Anyone using TSO/E Exit IKJEFLN2 from FILE 183 of CBT-Tape?

2008-12-09 Thread Michael Knigge

All,

subject says it all: Is anyone using GSF's TSO/E Exit IKJEFLN2 that is 
availabel from CBT-Tape File 183? Is it safe to install it (-- 
somehow stable)?


I don't care if it sometimes doesn't work, but it should not crash my 
system



Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


JCL Problem...

2008-10-22 Thread Michael Knigge

All,


I have a utility that outputs a string to SYSPRINT (but that can be 
changed). Now I need to pass this string via SYSIN (or PARM) together 
with some other parameters to a second utility.


A little pseudo-sample:

//*
//* IMAGINE FOO WILL OUTPUT AN IP-ADDRESS - BUT THE ADDRESS
//* IS OF COURSE NOT KNOWN...
//*
//STEP01   EXEC PGM=FOO
//SYSPRINT   DD SYSOUT=*
//*
//* NOW I NEED TO EXECUTE A COMMAND THAT CONTAINS
//* THE IP-ADDRESS
//STEP02   EXEC PGM=BA,PARM='PING the.ip.addr.here'

. OR ...

//STEP02   EXEC PGM=BA
//SYSIN  DD *
PING the.ip.addr.here
//SYSPRINT   DD SYSOUT=*



Any ideas how to solve this problem?


My first idea was to pass the SYSPRINT from STEP01 to a following STEP 
that issues an EDIT-Macro that changes the contents to my needs (BTW, 
how to do this?). The new SYSPRINT is then passed to the PING STEP.


Of yourse this is just simplified just to show you what I need. My real 
case has nothing to do with IP-Adresses and PING and that stuff, but 
this sample is (I think so) easy to understand...



Thank you in advance



Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: JCL Problem...

2008-10-22 Thread Michael Knigge

Flint, Mike schrieb:

Is there any reason why you aren't pointing SYSPRINT (or whatever) at a
temporary (or permanent) file, and using that file as the SYSIN dataset
for STEP02?

For what reason do you *need* the SYSIN data to be instream?


I don't really need it instream - it was just to clarify that I need to 
modify the output to SYSPRINT from the first STEP (put something around).


Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Simple VTAM-Question?

2008-10-15 Thread Michael Knigge

All,

I've modified my VTAM Logon Screen and now want to activate it. Is 
this possible without an IPL? I guess I have to do a F LLA,REFRESH and 
then to restart the TN3270-Server. But what do I have to do for the 
real 3270-Terminals? Restart VTAM? How?



Thank you - guess it is a simple question for VTAM-Guys but I'm pretty 
new in this area



Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: Simple VTAM-Question?

2008-10-15 Thread Michael Knigge

Earl Buhrmester schrieb:
For your TN3270 server you don't need to cycle the server, just refresh 
the profile.  Any new connections will pick up the new USS table.

  V TCPIP,TN3270,O,PROFILE.DATA.SET

For VTAM, use the following
   F NET,TABLE,OPTION=LOAD,NEWTAB=TABNAME


Thank you Earl - that worked!


Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: Debugging Tips

2008-08-19 Thread Michael Knigge

Michael Knigge wrote:

Thank you all for your hints... When the bug is found I'll tell you...


If anybody is interested - it is solved!

The bug wasn't found by using IPCS, ABEND-AID, DumpMaster or whatever, 
just by using the all time favourite Debugger Eyes'n'Brain ;-)


My application is written in C with the exception of two modules which 
are written in assembler (for invoking LOCATE and OBTAIN). This has been 
my code (extract):


LOCATE   CSECT
LOCATE   AMODE ANY
LOCATE   RMODE ANY
 SAVE  (14,12)
 BALR  R3,0
 USING *,R3
 LRR9,R13
 LAR13,SAVEAREA
 STR13,8(R9)
 STR9,4(R13)
*
 L R4,0(R1)
 USING PARM,R4
*
 LOCATE PARM
 STR15,RC
*
 L R13,4(,R13)
 MVC   16(4,R13),RC
 LMR14,R12,12(R13)
 BRR14

SAVEAREA DS18F
RC   DSF


Where is the fault? Nowhere! It's all correct. But this is true only for 
non-threaded code. My application uses multiple threads and by using the 
above code all thready have been sharing the same SAVEAREA


I've written the ASM-modules LE/370 compliant now with dynamic saveareas 
and hey all works perfect...



Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: Debugging Tips

2008-08-18 Thread Michael Knigge

find something that will trigger an early failure, run a GTF trace with IF
recording. I'd advise using SYSMDUMP rather than SYSUDUMP, so that you can
use IPCS. Of course, if you have SLIP take the dump then you'll have


Hmmm... Never did this before I'll have look this week.


something to browse with IPCS regardless.


  GPR C-F 000C 4298A448  


R13 looks like it might be legitimate. What are the stored R14-R12,
forward and back links? What format is it?


I'm familar with the SAVEAREa concepts and so on, but everytime I'm 
digging that deep in a dump I really need some time, concentration and 
*SILENCE* - this is not my daily job


And sadly currently here in my office I have  nothing of that. So I'll 
have to go back to this issue in a few days...


bye  thanks,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: Debugging Tips

2008-08-18 Thread Michael Knigge

The 'call stack' saying UNKNOWN called UNKNOWN called UNKNOWN called (you get 
the picture) basically means that *something* called a BPX service that is 
either in LPA or located somewhere in the OMVS address space.


H I'm playing a lot with this POSIX-Threads stuff...



How familiar are you with IPCS? Enough to get around and issue a few commands? 
Set a slip trap on the 0C1 *and* the 422 for your job name, include your job, 
omvs asid and all of OMVSs dataspaces.


Currently I have no access to IPCS (no permissions on current z/OS host) 
and I've never used it. But currently I'm planning/doing the migration 
to another z/OS host for our company and then I have IPCS access and I 
plan to play arounf with it




The last few days have been very hetic here and I've been not able to 
focus on this bug. So... I've started to implement a lot of trace stuff 
this weekend in the product and hope it will crash today ;-)



If it won't... welk, then I'll have to go on digging in the dump :-(


bye  thanks
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: Debugging Tips

2008-08-14 Thread Michael Knigge

Steve,


This particular kind of thing is sometimes seen where a program is
NON-LE compliant and gets called by LE compliant code. R12 is not what
LE want's it to be (and x'000c' is NOT what LE wants) and so it
augers in and makes a crater.


I also currently assume that I have to look in this direction. Everythig 
I use is my own code, written in C or ASM. The only exception (AFAIR) is 
the invokation of the CSI (Catalog Search Interface).



Ok I'll go ahead and x-check my code again and read the C-Manual 
(linking stuff)



Thank you all for your hints... When the bug is found I'll tell you...


Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Debugging Tips

2008-08-13 Thread Michael Knigge

All,

sind a few days now I try to track down a S0C1 in one of my 
applications. The application is a multi-threaded application (TCP/IP 
Server) written in C using a bunch of self-written DLL's.


The application sometimes crashes after a few minutes, sometimes after 
some days with the S0C1. DumpMaster tells me that the ABEND occurs in 
program BPXINLPA, and the PSW is 078D1400 8002.


But no call stack (well, it tells me UNKNOWN called UNKNOWN called 
UNKNOWN) and that the failing instruction at  is at offset 
 in program PSA



The job itself ends with a S422. Some information from the Log:

+CEE0374C CONDITION=CEE3201S TOKEN=00030C81 59C3C5C5   954
  WHILE RUNNING PROGRAM UNKNOWN
  AT THE TIME OF INTERRUPT
  PSW 078D1400 8002
  GPR 0-3  4298A340 40894608 108602CA
  GPR 4-7 4298A3B0 40876C10 C086EA6C 0661F420
  GPR 8-B 40875200 4298A500  4086E872
  GPR C-F 000C 4298A448  
  FLT 0-2 4848A181A1EE3A55  
  FLT 4-6   
BPXP011I THREAD 40F74C000422, IN PROCESS 211, WAS  955
TERMINATED DUE TO A PTHREAD QUIESCE OF TYPE 2.
BPXP011I THREAD 40FA00E002AF, IN PROCESS 211, WAS  956
TERMINATED DUE TO A PTHREAD QUIESCE OF TYPE 2.
BPXP011I THREAD 40F9E2C1, IN PROCESS 211, WAS  957
TERMINATED DUE TO A PTHREAD QUIESCE OF TYPE 2.
BPXP011I THREAD 40F9F1D2, IN PROCESS 211, WAS  958
TERMINATED DUE TO A PTHREAD QUIESCE OF TYPE 2.
SYSTEM COMPLETION CODE=0C1  REASON CODE=0001
 TIME=14.27.13  SEQ=44974  CPU=  ASID=00C7
 PSW AT TIME OF ERROR  078D1400   8002  ILC 2  INTC 01
   NO ACTIVE MODULE FOUND
   NAME=UNKNOWN
   DATA AT PSW   - 000A  000130E1  
   GR 0:    1: 4298A340
  2: 40894608   3: 108602CA
  4: 4298A3B0   5: 40876C10
  6: C086EA6C   7: 0661F420
  8: 40875200   9: 4298A500
  A:    B: 4086E872
  C: 000C   D: 4298A448
  E:    F: 
 END OF SYMPTOM DUMP
BPXP018I THREAD 40F897600424, IN PROCESS 211, ENDED  321
WITHOUT BEING UNDUBBED WITH COMPLETION CODE 940C1000, AND REASON CODE
0001.
SYSTEM COMPLETION CODE=422  REASON CODE=01A0
 TIME=14.29.16  SEQ=45446  CPU=  ASID=00C7
 PSW AT TIME OF ERROR  070C4400   C08642BE  ILC 2  INTC 78
   NO ACTIVE MODULE FOUND - PRIMARY NOT EQUAL TO HOME
   NAME=UNKNOWN
BPXP023I THREAD 40F9B590, IN PROCESS 211, WAS  342
TERMINATED BY SIGNAL SIGCNCL, SENT FROM THREAD
40F897600424, IN PROCESS 211, UID 50049, IN JOB E1407900.



All I tried so far to track this one down failed. I'm at the end of my 
skills :-(




Could anyone please give me some advise how to find this bug? Any good 
manual to read?




Thank you very much,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: Debugging Tips

2008-08-13 Thread Michael Knigge

David,

I have some kind of limited skills, but I'm not *THAT* stupid ;)


I would start start by looking up the condition description in the 'LE Run-Time 
Messages' manual.  


I have some kind of limited skills, but I'm not *THAT* stupid ;)  Of 
course I've looked up the condition description



Programmer Response:  Examine the contents of registers 14 and 15. If 
register 15 has a value of 0, then the cause was probably a routine 
didn't exist and a branch was made to location 0. This would indicate a link-
edit failure. Examine the contents of register 14 to determine the point 


Yes, and R15 **AND** R14 are ZERO So I came from address Zero... 
Voood ;-)



Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: Debugging Tips

2008-08-13 Thread Michael Knigge

Being multi threaded, perhaps one or more of your modules is not really
re entrant /reusable but still bound as such. 


Well, they are... But I'm using some system stuff Catalog Search 
Interface for example, SVC99, and so on. I'll go ahead and read the 
manual if there is some kind of serializaion neccessary




LE has a number of debugging tools. I think you should find an exception
trace: one that only traces the last x number of events. 


I know very little about C, but you should be able to do a HANDLE
CONDITION and trap some diagnostic information.



Hmmm... I'll search in the LE Manuals for that... Never heared abou that



Thanks,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: Debugging Tips

2008-08-13 Thread Michael Knigge

Do you have a standard SYSUDUMP available, and are you on z/OS 1.8 or
above, and on a z9? If so, then find the RTM2WA area in the SYSUDUMP.
Now find the name BEA in the dump. That is the address of the last
successful BRANCH type instruction. It should point you to where you
came from. Find that in your source code and see what is missing.


Thanks!!!  Sounds easy... I'll check that tomorrow...


Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Problem opening VTAM-ACB

2008-06-23 Thread Michael Knigge

All,

we currently move to another z/OS System (ADCD-based) and I have a 
poblem with one of our applications.


This dialog-application generates the 3270 Datastream itself and 
communicates to the 3270 terminals using a VTAM ACB.


I've configured this ACB as usual:

AMYAPP   VBUILD TYPE=APPL
MYAPPAPPL  APPC=YES,
   AUTH=(ACQ,PASS),
   MODETAB=LOGMODES,
   PARSESS=YES

(of couse, I've put the continuation char in column 72)


The command D NET,IP=MYAPP,SCOPE=ALL gives the following:

IST075I NAME = ADCD.MYAPP, TYPE = APPL
IST486I STATUS= CONCT, DESIRED STATE= CONCT
IST1447I REGISTRATION TYPE = CDSERVR
IST977I MDLTAB=***NA*** ASLTAB=***NA***
IST861I MODETAB=LOGMODES USSTAB=***NA*** LOGTAB=***NA***
IST934I DLOGMOD=***NA*** USS LANGTAB=***NA***
IST1632I VPACING =  8
IST1938I APPC = YES
IST597I CAPABILITY-PLU INHIBITED,SLU INHIBITED,SESSION LIMIT NONE
IST231I APPL MAJOR NODE = AMYAPP
IST654I I/O TRACE = OFF, BUFFER TRACE = OFF
IST1500I STATE TRACE = OFF
IST271I JOBNAME = ***NA***, STEPNAME = ***NA***, DSPNAME ***NA***
IST228I ENCRYPTION = OPTIONAL , TYPE = DES
IST1563I CKEYNAME = MYAPP CKEY = PRIMARY CERTIFY = NO
IST1552I MAC = NONE MACTYPE = NONE
IST1050I MAXIMUM COMPRESSION LEVEL - INPUT = 0, OUTPUT = 0
IST1633I ASRCVLM = 100
IST1634I DATA SPACE USAGE: CURRENT = ***NA*** MAXIMUM = ***NA***
IST171I ACTIVE SESSIONS = 00, SESSION REQUESTS = 00
IST172I NO SESSIONS EXIST
IST314I END


Now, when I tra to open the ACB in my assembler prog, I get the RC=8 in 
R15. This just says ACB was not opened - very helpful :-(


Any hints how to track this down? My VTAM Skills are very, very, very 
limited (I'm a Coder - not an VTAM-Admin)!



 OPEN  PACB
...
PACB ACB   AM=VTAM,APPLID=APPL1,EXLST=EXLST1,MACRF=LOGON
EXLST1   EXLST AM=VTAM,LOGON=LOGON1,SYNAD=SYNAD1,LERAD=LERAD1,
   RESP=RESP1,TPEND=TPEND1,LOSTERM=LOSTERM1,
   DFASY=DFASY1,NSEXIT=NSEXIT1,RELREQ=RELREQ1,SCIP=SCIP1
.
APPL1   DCX'08'
APPL1A  DCCL8'MYAPP   '



Thank you very much for any hint!


Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: Problem opening VTAM-ACB

2008-06-23 Thread Michael Knigge

Chis,

thank you so far for your post! I wrote all the ACB and 3270 logic about 
nine years ago and I guess I've lost some knowledge over the years :-(



adjective usual is not peripheral to the discussion but central. I just noticed 
that you have coded APPC=YES. This is most inappropriate for a VTAM 
program written to support the use of the 3270 data stream to the assumed 
PC emulator.


We also support LU6.2 connections from the network - this is legacy 
code, nowadays we use TCP/IP



are doing already. If it is not zero, you should then present the value of the 
ACBERFLG field for interpretation - and exit the program, of course. This was 


A, I forgot about this one as said, approx. nine years ago


It would be interesting to know which code was used to describe your problem 
if you would be kind enough to post it.


After all your efforts... I promise! ;-)  I will try tomorrow and post 
the results



Bye  Thanks,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: Problem opening VTAM-ACB

2008-06-23 Thread Michael Knigge

Chris,


It would be interesting to know which code was used to describe your problem 
if you would be kind enough to post it.


My Code is a F4:

The application program is not authorized for SRBEXIT=YES. A request to 
open an ACB whose corresponding APPL definition statement specifies 
SRBEXIT=YES is rejected unless the application program is APF 
authorized, or using key 0-7, or in supervisor state.




Ok, I don't run authorized. I added a SRBEXIT=NO to my VTAM-Definition 
but still in vain (and still F4)


Seems I'm doning something really wrong locally. I also changed APPC=YES 
to APPC=NO in my VTAM-Definition but after a


VARY NET,INACT,ID=MYAPPfollowed by a
VARY NET,ACT,ID=MYAPP


the command D NET,ID=MYAPP,SCOPE=ALL

still shows APPC=YES


Guess I have to grab the VTAM-Book ;)



Bye,
   Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: Problem opening VTAM-ACB

2008-06-23 Thread Michael Knigge
Ok, I don't run authorized. I added a SRBEXIT=NO to my VTAM-Definition 
but still in vain (and still F4)


Don't know why exactly, but now it works I've also stopped and 
started the Appl Major Node AMYAPP and now it works...



THANK YOU!!!


Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Set JobId on Submit..

2008-06-19 Thread Michael Knigge

All,

I'm currently working on a new system and I miss a great feature(tm). On 
the systems I've been working so far the Jobid of a JCL was 
automatically set to my UserId when I've submitted the Job.


i. e.:

//ABCXYZPQ  JOB 999830010T,'SPUFI',CLASS=A,NOTIFY=SYSUID,
// MSGCLASS=H,MSGLEVEL=(1,1),SYSUID

Here ABCXYZP was replace with my userid FOOBAA0, resulting to the 
jobname FOOBAA0Q...


could anyone tell what I have to do to get this great feture back?


Thanks,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: Set JobId on Submit..

2008-06-19 Thread Michael Knigge

I'd bet it was done via the IKJEFF10 submit exit. Basically, you're
likely out of luck.


Ahhh, yes And I also found some on the CBT-Tape that will do the 
job! Thank you!





I'd really LOVE for IBM to allow something like:

//SYSUID.A JOB ...,NOTIFY=SYSUID


And I always thought I'm too stupid ;)  Now I know it really doesn't 
work ;-)



Bye  Thanks,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: DYNALLOC question (Multi-Volume)

2008-05-29 Thread Michael Knigge

If you use this on a wide scale, you might blow up your catalogs. Each
dataset reserves 255 (candidate) volumes entries in the catalog record
and these take space. Do a LISTC of such a dataset.


Ah, good point. Thanks!


Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



DYNALLOC question (Multi-Volume)

2008-05-28 Thread Michael Knigge

All,

currently I'm playing around a little bit with the SVC99 DYNALLOC. When 
I try to allocate a rather large Dataset, I (sometimes) need to specify 
DALVLCNT (Dataset volume count).


Now... I wonder it it would be safe (or ok) to specify 255 in all 
cases, even when allocating a small dataset. The documentation says 
DALVLCNT specifies the maximum number of volumes an output data set may

require **MAY**...

So... If I don't care if the dataset is a multi-volume or not (I just 
want to be sure the dataset can be allocated somehow if space is 
somewhere available), is it safe/ok to specify 255 and let z/OS decide 
to allocate multi-volume or not?



Thanks,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: DYNALLOC question (Multi-Volume)

2008-05-28 Thread Michael Knigge

Thank you guys!


bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: DASD or TAPE attached via TCP/IP

2008-05-22 Thread Michael Knigge

I wonder how it is possible to attach DASD- or TAPE-Devives via TCP/IP.


Consider NFS.


I guess I need to be more specific:


We currently consider moving from our current (shared) z/OS system to a 
dedicated ADCD-System. From this system we have no access to a Tape (but 
we need this for QA of our products).


So I wonder how (and how hard) it would be to write some thing of 
software that emulates a tape (and even better: a tape library) so we 
can also migrate our datasets.


The emulated tape should be a bunch of files on a remote Server (Windows 
or Unix).



My problem is that I don't have very deep z/OS knowledge. I'm not dumb 
;-), so I guess I could learn the needed stuff (and I want! because I 
want to understand the things behind the scenes better), but currently I 
don't know how/where to start (which manual for example). I guess there 
must be something like a ASM-Macro that registeres a device and the 
piece of code that handles the commands (CCWs?) for the device. But as I 
said already, I even don't know where to start



bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



DASD or TAPE attached via TCP/IP

2008-05-21 Thread Michael Knigge

All,

I wonder how it is possible to attach DASD- or TAPE-Devives via TCP/IP. 
There is a product called mfnetdisk (see mknetdisk.com) that is able to 
emulate a 3390 that resides on a PC and is accessed via TCP/IP.


So... I ask myself how this is possible. And (for me) even more 
interesting, would it also be possible to do the same for a Tape?



Thank you,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: DASD or TAPE attached via TCP/IP

2008-05-21 Thread Michael Knigge
Yes, it is possible, it works. Residence of emulated 3390 on PC is 
irrelevant.

It is also possible for tape ...on other systems. See iSCSI.


And how to configure on z/OS? Any hint for a manual?

Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to check if a job has run?

2008-04-08 Thread Michael Knigge

Rob,


(1) Use the IEFACTRT exit (job/step termination exit) - however this might be 
overkill for you.


Well, I need this functionality only for a few jobs and IEFACTRT would 
impact all submitted jobs... From this point of view - yes, it is overkill.




(2) Write an assembler program that always gets control as the last job step 
and process the JCT and SCT control blocks - (not sure about the GUPI status of 
these)


Well if nothing else would be possible I would do this.



(4) Post process the SMF data hunting for type-30 records using SORT or a 
freeware tool like DAF.


I would like to capture SYSLOG or SMF, but I don't know how to do it. 
Running a batch-Job for this would not fit my needs.


Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to check if a job has run?

2008-04-08 Thread Michael Knigge

David,


file, so how does this help? What would you do with it that I am not
understanding?


Hmmm. yes... confusing... :)


What I don't want is an additional STEP after every STEP in my Job.

So for example:

STEP01: IEBCOPY
STEP02: MYTOOL -- writes STEP01 returned CC=0
STEP03: IEBCOPY
STEP04: MYTOOL -- writes STEP03 returned CC=4
STEP05: IEBCOPY
STEP06: MYTOOL -- writes STEP05 returned CC=4


I didn't knew that is is quite simple to use JCT and SCT to get the CC 
of every STEP in the job. So putting only one STEP at the end of the 
Job is somehow ok for me.



And I like this more than the FTP-Idea, because the FTP-Server may be 
down, the JCT/SCT will never ;-)



Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to check if a job has run?

2008-04-07 Thread Michael Knigge

Hi,


If you have access, you can look in the system log.
Tools like OPC will capture the end of job event and then do something.


Well, I need to do this in a program. Could you bring me in the right 
direction and tell me how I can capture the SYSLOG?


My problem is that I submit a job and some time later I need to know if 
the job has run **AND** which was the return-code (best: condition code 
of every step).


My first idea was that I could write a loader-program: So if the 
program IEBCOPY needs to be executed I could code my JCL like this:


STEP01  EXEC PGM=MYLOAD,PARM='IEBCOPY'
...

Now MYLOAD loads/fetches IEBCOPY (-- see PARM) and executes it. after 
IEBCOPY returns, I could write the RC to a file. This would also be a 
solution (for my problem) even for multi-step jobs. But this approach 
doesn't work if IEBCOPY ABENDs, because MYLOAD would not get control 
anymore. Or is it also possible to cathc **ALL** ABENDs? Using LE I can 
only catch S0Cx



Bye  Thanks,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to check if a job has run?

2008-04-07 Thread Michael Knigge

You can also check SMF.


Can SMF be monitored (and how?) or do I need to SMF to a file and 
parse the file?


Thank you,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: CPU-Time in z/Os-System. Is The Cpu Time In z/Os-systems A Meaningful Indication?

2008-04-02 Thread Michael Knigge
the job protocol 11.25 (what ever that means) and this month it consumed 
16.33. Actually I expected the cpu time would be nearly the same. But there is 
this difference I can not explain. Any suggestions would be greatly appreciated.


There are several reasons why Run- or CPU-Times may change. One reason 
could be that a extent has to be allocated (for one of your output 
datasets) when running the job is running (and another time this is not 
neccessary).


Or depending of the values you insert into the DB2-Tables the INSERTs 
need more CPU/Runtime because the index(es) of your tables need to be 
reorganized or something like this.


Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



How to check if a job has run?

2008-04-02 Thread Michael Knigge

All,

currently I check via the FTP-JES-Interface if a job that I've submitted 
 has run.


But if the job has beed purged from JES2 (i. e. via SDSF) in the 
meantime it is not listed by teh FTP-JES-Interface - of course.


Now I wonder if there is another way to check if a job was run (I guess 
there must be one - Tools like OPC can also do). Is there an JES2-Exit 
or something like that?



Thank you,
Michael

P.S.: And no, I don't want to put an additional STAP at the end of my 
job that puts a MY-JOB-HAS-RUN Dataset somewhere.


--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: Convert EBCDIC to ASCII in batch?

2008-03-20 Thread Michael Knigge

not tape!), translating the contents from EBCDIC (CP-037) to ASCII
(ISO8859-1). I can think of a way to do it using UNIX services, but I'm
hoping for a simplier method. The ASCII file is to be transferred to a
Windows system, so each line must end in CRLF.


Why do you want to convert it first and than transfer it? If you 
transfer the file via FTP in ASCII-Mode, the file is converted and CRLF 
is appended to each record.



Bye,
MK

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Two COBOL questions

2008-02-08 Thread Michael Knigge

R.,


1. JCL EXEC ...,PARM='parameter'
Can I read data from PARM field in EXEC statement ?
Any ACCEPT ?


It is accessible from the LINKAGE-SECTION:

LINKAGE SECTION.
01  PARM.
05  PARM-LENGTHPIC 9(4)   COMP.
05  PARM-STRINGPIC X(999).

PROCEDURE DIVISION USING PARM.
A00-BEGINN.
DISPLAY 'PARM IS ' PARM-LENGTH ' BYTES LONG'
DISPLAY 'PARM=' PARM-STRING(1:PARM-LENGTH)




2. Dynamic allocation
Can I use permanent dataset without DDNAME ?
In other words can I specify dataset name instead of ddname ?


AFAIK, no.


Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: zOS Version 1 Release 9 and software products DVD collection

2008-02-04 Thread Michael Knigge

All (germans) ;-),


You can order a full set of zOS manuals, Redbooks and zOs related softwar= e 
products from IBM For $20.


one need a IBM Customer number to order this collection. Because I have 
no one, would one of the german list members be so kind and order the 
collection for me?



Thanks,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Question for german listers

2008-02-04 Thread Michael Knigge

I know that germans are very good at substituting english words for german 
versions.


Oh yeah, germany is a land full of consultants (there are no more 
Berater anymore) ;-)



I am going to enlist for course ES20 in either Düsseldorf or München and was 
wondering about the choice of language for computer terms.
Do the germans use the german or the english version for mainframe-related 
computer terms?


Well, I guess this is a question like how is CICS pronounced.

The funny thing is, we germans are really good at using english words, 
but also pronouncing the abbreviation in german ;-)


In the big companies there are a lof of DBAs (pronounced german), but 
of course these persons are all database administrators (pronounced 
english). ;-)



To come back to your question: I **guess** you don't have to care about 
that. Some prefer german, some prefere english. But both are well known.


The thing is, if you use computer or rechner - doesn't matter. But 
for example, if someone is talking about speicher, I personally think 
of RAM, not ot HD-Space. But it clearifies in the context.



Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: IND$FILE

2008-02-01 Thread Michael Knigge

Bob Shannon schrieb:

I have searched high and low for documentation on this relic. Can anyone help? 
TIA.


If you are able to understand C, then have a look at the x3270 
Package. It Supports IND$FILE Transfers in DFT and CUT mode.



Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Problem fetching a program object (CSV031I)

2007-12-21 Thread Michael Knigge

Peter,


Can you put each thing that needs to be patched in a separate CSECT that is
bound with the rest of your program object?


I will give this a try.


Thank you,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Problem fetching a program object (CSV031I)

2007-12-20 Thread Michael Knigge


I think that is IBMese for don't do that!.



Hmm... yes, this makes sense - absolutely ;-)


bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Problem fetching a program object (CSV031I)

2007-12-20 Thread Michael Knigge
what does AMBLIST tells you about patched module. 


Nothing one should care about I've also compared the listings of 
AMBLIST (patched and unpatched module) and they just differ in the 
hex-listing (only at the expected locations).




Why don't you use AMASPZAP for such kind of patches?


Well, now as I fight with this stuff for some days, I really think I 
should try to argue our management that we should use AMASZAP.


The problem is, that the bytes we have to patch are on different byte 
offsets with every release - so we also have to create new control cards 
for AMASZAP for every release.


Currently I wonder if it is possible to

1. build our application,
2. analyze all needed program objects
3. find the offsets to patch
4. write control cards for AMSZAP


I guess this would be fewest pain for all ;)


Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Problem fetching a program object (CSV031I)

2007-12-19 Thread Michael Knigge

All,

I have a C-Program that is compiled to a DLL and stored in a PDSE, so it 
is stored as a program object (if I got all this stuff right).


In my program I have some static areas (name it eye cathers), for 
example like this:


static char *Foo = 123456\0MY_EYE_CATHER;


This way, the String 123456[null]MY_EYE_CATCHER is contained within my 
program object. Now I create a XMIT-File from my program object and then 
I change some bytes in this generated XMIT.


For example, I look for MY_EYE_CATCHER and I replace the 123456 in 
front of this eye-catcher to something different. Same length of course.



Now when I restore the program object from this edited XMIT, I get an 
error fetching this DLL:


CSV031I LIBRARY ACCESS FAILED FOR MODULE XYZ, RETURN CODE 20, REASON 
CODE 26130003, DDNAME STEPLIB



I swear by my [whatever you like] that no other bytes than my 123456 
are changed. why the hell can't this DLL noe be fetched anymore? Are 
there some checksums within the program object that are now not correct?



The funny thing is, that this happens just on a few modules (I have 
around 20 that are going to be patched by this method), mostly 
everything goes well



Any ideas? Or a better way to patch a module?


Bye  thanks,
Michael


P.S.: If you wonder why I need to do this: We compile a product, 
generate a XMIT and if we ship it to a client we want to patch a 
client-id and date into all shipped modules - and using this method we 
can do this under windows/unix and don't need to recompile+relink under 
z/OS


--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Problem fetching a program object (CSV031I)

2007-12-19 Thread Michael Knigge

Steve,



XMIT does some internal reformatting; if the
bytes you patch happen to get folded across
data boundaries, you may well not get what
you expect.


I know this and my patch-routine is aware of this.



If you do your patching under Windows or Unix,
of course, you need to be aware of ASCII/EBCDIC
issues, too.


;-) I code stuff under Windows, Linux, AIX, SunOS, HP-UX, z/OS and 
sometimes under BS2000. I know about this ;-)




the client info). I think you have a faulty
design in your approach to managing your
client info.


Decision by our management (to do all changes needed for release under 
Win- or UNIX-Box). Not my decision...



Bye,
Michael

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


  1   2   >