View previous topic :: View next topic
|
Author |
Message |
siva.parimi
New User
Joined: 13 Nov 2006 Posts: 4
|
|
|
|
I need to know how we can pass IMS/DC online data to IMS/DB program.
I know that we can pass through IO-PCB but exast code I need. |
|
Back to top |
|
|
Bitneuker
CICS Moderator
Joined: 07 Nov 2005 Posts: 1104 Location: The Netherlands at Hole 19
|
|
|
|
There are two types of applications that can process messages. An MPP (normally a conversational application using terminals) and a BMP. You can insert messages from the MPP onto the messagequeue and the BMP may process these messages. Take a look into this item. A standard batch DLI application cannot access the messagequeue; this manual also tells you how to convert one into a BMP. Furthermore I expect you to know how to read and insert messages from an MPP; if not have a look in the manual at this forum first.
By the way: you told to know passing data from an MPP to another destination goes by IO-PCB: wrong, IO-PCB is the address of the originating terminal. You should use an Alternate-IO-PCB. |
|
Back to top |
|
|
siva.parimi
New User
Joined: 13 Nov 2006 Posts: 4
|
|
|
|
I want to pass a variable value from IMS/DC to IMS/DB program.
how to code the variable in IMS/DC screen and how we will receive that variable in IMS/DB program. |
|
Back to top |
|
|
Bitneuker
CICS Moderator
Joined: 07 Nov 2005 Posts: 1104 Location: The Netherlands at Hole 19
|
|
|
|
Your questions are a bit confusing. First I need to understand what your problem looks like. How does the constellation looks like? What is it exactly you want to do? Remember I can't look into your head from here.
If you want to send complete messages to another application accessing the MQ I gave you the answer before. If you just want to pass a variable as a parameter to another called program (so not scheduled by IMS) you provide the caller and the callee with a pointer containing the address of the data to be passed. Definition depends on the language the programs are written in.
May be your problem is like this one. |
|
Back to top |
|
|
siva.parimi
New User
Joined: 13 Nov 2006 Posts: 4
|
|
|
|
to pass a variable A 9(15) from IMS/DC online to IMS/DB program
so that I can store this on to IMS database.. |
|
Back to top |
|
|
Bitneuker
CICS Moderator
Joined: 07 Nov 2005 Posts: 1104 Location: The Netherlands at Hole 19
|
|
|
|
So your problem is almost identical to the one I linked.
The caller sending the variable has to provide the callee with at least two items: the pointer for the variable and the PCB for the database the callee is storing the variable in. You might also send a result-code. There is no IO-PCB in play at all. In PL1 we code the call as follows:
From caller program A:
CALL B (VAR_POINTER, DB_PCB, RESULT);
Callee B:
PROC: (VAR_POINTER, DB_PCB, RESULT) OPTIONS(MAIN); |
|
Back to top |
|
|
siva.parimi
New User
Joined: 13 Nov 2006 Posts: 4
|
|
|
|
Please send me that code if you have |
|
Back to top |
|
|
Bitneuker
CICS Moderator
Joined: 07 Nov 2005 Posts: 1104 Location: The Netherlands at Hole 19
|
|
|
|
What I gave you is code. Var_pointer contains the address of the data you want to pass to B, DB_PCB is the address of the database you want B to access. All parameters are addressed in A. Declaring and addressing is normal programming, so is passing parameters. |
|
Back to top |
|
|
|