View previous topic :: View next topic
|
Author |
Message |
gokuldass
New User
Joined: 18 Mar 2005 Posts: 48 Location: india
|
|
|
|
Hi,
How to write online programs in Assembler ? -- I am using CICS as my online system. Now I want to write a program using CICS in assembler. So, Can any one help me on how to establish addressbility to CICS region in Assembler.
Thanks in advance.
REgards,
Gokuldass |
|
Back to top |
|
|
parikshit123
Active User
Joined: 01 Jul 2005 Posts: 269 Location: India
|
|
|
|
Hi,
I don't think you need to do anything special. CICS command level is same for every language it support. All you have to do is to ASSEMBLE your code in stead of compile and link. |
|
Back to top |
|
|
ap_mainframes
Active User
Joined: 29 Dec 2005 Posts: 181 Location: Canada
|
|
|
|
Yes, You dont need to do anything special for using CICS in Assembler. |
|
Back to top |
|
|
gokuldass
New User
Joined: 18 Mar 2005 Posts: 48 Location: india
|
|
|
|
Hi Guys,
I need to know how to use commarea, eibblock in assembler program to do programming with CICS. Also, which is the utility that I need to use to run the JCL.
regards,
Gokuldass |
|
Back to top |
|
|
ap_mainframes
Active User
Joined: 29 Dec 2005 Posts: 181 Location: Canada
|
|
|
|
well here is a syntax of CICS used in assembler
EXEC CICS LINK PROGRAM('XXXX') COMMAREA(AAAA) X
LENGTH(4090)
And the JCL remains the same as COBOL. |
|
Back to top |
|
|
UmeySan
Active Member
Joined: 22 Aug 2006 Posts: 771 Location: Germany
|
|
|
|
Hi !
First of all, there is no JCL needed. CICS-Pgms are started as Tasks within a CICS-Region. Therefore they have to be defined in several CICS-Tables.
Second, you can use all AssInstructions in normal way.
Third, to communicate with CICS-Services you have to use CicsCommandLevel Instructions like EXEC CICS SEND MAP... for displaying a Mapset on Terminal and EXEC CICS RECEIVE MAP... for reading the displayed Map to verify the users Inputdata.
Or EXEC CICS STARTBR... or EXEC CICS READ DATASET... to read data from a Dataset.
The CommArea is a kind of WorkingStorage availiable to your programm.
Allways Remember: CicsProgramms are reent !!!
The EibBlock is a CICS SystemArea where you can verify the execution of your CICS-Commands or check status-Flags.
So i think, first off all, you have to get a little bit more familar to CICS.
Study some simple CICS-Programms.
So good luck, greetings, UmeySan |
|
Back to top |
|
|
gokuldass
New User
Joined: 18 Mar 2005 Posts: 48 Location: india
|
|
|
|
Hi Guys,
I am asking about what is DFHEICAP? why it is needed in assembler -- cics program? how to get the data from eibblock in assembler- cics program? how to use dfheicap in assembler program?
Normally, in cobol -- cics program we will be defining the dfhcommera in linkage section.. right ? Similarly how will do it in assembler -- cics program ?
Please let me know if you have queries with my questions..
REgards,
Gokuldass |
|
Back to top |
|
|
UmeySan
Active Member
Joined: 22 Aug 2006 Posts: 771 Location: Germany
|
|
|
|
@gokuldass:
Sorry, but you have to specify your questions a little bit more clearly.
The need of EICAP is the same as in Cobol.
So if you are used to programm CicsCobol, your are familiar with most recent cics funktions.
In Assembler you only have to allocate/asstablish cics-adressability at
programm-start.
Start of coding
*********************************************************************
COPY DFHBMSCA ...for BasicmappingSupportFeature
COPY DFHAID ...for allocating the EIB-Block
*
DFHEISTG DSECT
*
TITLE 'D E F I N I T I O N E N'
*********************************************************************
*----* DIVERSE DEFINITIONEN *----*
*********************************************************************
SAVEAREA DS 18F
COMBER DS 0CL300 ...Define your CommArea
COMWO DS CL4 ...where I'm comming from
COMWA DS CL6 ...what to do
...and so on
After the definitions code your main-programm-section and first astablish
cics adressability
TITLE 'Main- Programm Section '
*************************************************************HUGO DFHEIENT CODEREG=(R5,R6,R7,R10),
DATAREG=(R3,R4),EIBREG=(R2)
Start DS 0H
EXEC CICS HANDLE ABEND LABEL(ABEND)
...what to do when abend occurs
CLC EIBCALEN,=H'0' Test COMMAREA zero
BE ZZ10 Yes, no XCTL/LINK from another Pgm
You use the EIB to check what's going on, perhaps which key was pressed
CLI EIBAID,DFHCLEAR CLEAR was pressed by user
BE
CLI EIBAID,DFHPF9 PF9 was pressed
You can Test CursorPosition within a Map when Key is pressed
CLC 0(2,R14),EIBCPOSN Check CURSOR-POS.
BH AN16055
CLC 2(2,R14),EIBCPOSN
BNL AN16054
Best is, to study a simple Ass-CICS-Programm.
Regards, UmeySan |
|
Back to top |
|
|
munna_ibm
New User
Joined: 23 Apr 2005 Posts: 13 Location: chennai
|
|
|
|
Hi Umeysan,
Can u pls fwd few sample Ass-cics pgms, with the description of what those pgms r going to do.
Rgds,
Munna. |
|
Back to top |
|
|
|