Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
CICS
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Transactions== A CICS transaction is a set of operations that perform a task together. Usually, the majority of transactions are relatively simple tasks such as requesting an inventory list or entering a debit or credit to an account. A primary characteristic of a transaction is that it should be [[atomicity (database systems)|atomic]]. On [[IBM Z]] servers, CICS easily supports thousands of transactions per second, making it a mainstay of enterprise computing. CICS applications comprise transactions, which can be written in numerous [[programming language]]s, including COBOL, PL/I, C, C++, IBM Basic Assembly Language, [[Rexx]], and Java. Each CICS program is initiated using a transaction identifier. CICS screens are usually sent as a construct called a map, a module created with [[Basic Mapping Support]] (BMS) assembler macros or third-party tools. CICS [[panel (computer software)|screens]] may contain text that is highlighted, has different colors, and/or blinks depending on the terminal type used. An example of how a map can be sent through COBOL is given below. The end user inputs data, which is made accessible to the program by receiving a map from CICS. <syntaxhighlight lang="cobolfree"> EXEC CICS RECEIVE MAPSET('LOSMATT') MAP('LOSATT') INTO(OUR-MAP) END-EXEC. </syntaxhighlight> For technical reasons, the arguments to some command parameters must be quoted and some must not be quoted, depending on what is being referenced. Most programmers will code out of a reference book until they get the "hang" or concept of which arguments are quoted, or they'll typically use a "canned template" where they have example code that they just copy and paste, then edit to change the values. ===Example of BMS Map Code=== Basic Mapping Support defines the screen format through assembler macros such as the following. This was assembled to generate both the ''physical map set''{{snd}} a load module in a CICS load library{{snd}} and a ''symbolic map set''{{snd}} a structure definition or ''DSECT'' in PL/I, COBOL, assembler, etc. which was copied into the source program.<ref>{{cite web|last=IBM Corporation|title=Basic mapping support|url=http://publib.boulder.ibm.com/infocenter/cicsts/v2r3/index.jsp?topic=/com.ibm.cics.ts23.doc/dfhp3/dfhp370.htm|archive-url=https://archive.today/20130103084403/http://publib.boulder.ibm.com/infocenter/cicsts/v2r3/index.jsp?topic=/com.ibm.cics.ts23.doc/dfhp3/dfhp370.htm|url-status=dead|archive-date=2013-01-03|work=CICS Information Center}}</ref> <syntaxhighlight lang="cobolfree"> LOSMATT DFHMSD TYPE=MAP, X MODE=INOUT, X TIOAPFX=YES, X TERM=3270-2, X LANG=COBOL, X MAPATTS=(COLOR,HILIGHT), X DSATTS=(COLOR,HILIGHT), X STORAGE=AUTO, X CTRL=(FREEKB,FRSET) * LOSATT DFHMDI SIZE=(24,80), X LINE=1, X COLUMN=1 * LSSTDII DFHMDF POS=(1,01), X LENGTH=04, X COLOR=BLUE, X INITIAL='MQCM', X ATTRB=PROT * DFHMDF POS=(24,01), X LENGTH=79, X COLOR=BLUE X ATTRB=ASKIP, X INITIAL='PF7- 8- 9- 10- X 11- 12-CANCEL' * DFHMSD TYPE=FINAL END </syntaxhighlight>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)