Hello Cameron...
This This Is an Old and very common practice for BMS Maps..If I understand you, 
&LN variable is used for both the LABEL and The Line Number on the BMS POS= 
parameter.If I recall correctly You need two VARIABLES .&LN for the BMS 
Position= Parameter and another Variable for the BMS POS= parameter
.
.
.
As for question two, You could issue an EXEC CICS TQD INQUIRE and get the
number of items in the TD Queue. Then base the syncpoint on a percentage.
5%  - 10%.I don't like hard coded values...Paul D'Angelo

---------- Original Message ----------
From: Cameron Conacher <[email protected]>
To: [email protected]
Subject: A couple of CICS questions for today. (1-BMS; 2-SYNCPOINT 
rule-of-thumb)
Date: Fri, 27 Nov 2020 13:02:32 -0500

Good morning folks,
I have a couple of CICS related questions for today.
I have been using CICS since the mid seventies. I should remember this, but
I just can't recall.
I am creating a BMS Map.
I have a number of detail data lines that repeat a number of times.
In the past I have created little assembler macros in the BMS Map to
describe one line and then repeat the definitions for some number of lines.
Something like this.....
          MACRO
          SXREF  &ROW=
&LN   SETA     &ROW-4
.
.
a bunch of DFHMDFs.
.
prefix&LN DFHMDF blah blah
prefix2&LN DFHMDF blah blah
 .
         MEND

Then I have my DFHMDI followed by a number of these:
        SXREF ROW=05
        SXREF ROW=06
        SXREF ROW=07
        SXREF ROW=08
        SXREF ROW=09
        SXREF ROW=10
        SXREF ROW=11
        SXREF ROW=12
This all works fine, however the DFHMDF Field Definitions are created
without leading zeros. (SETA)
So I see fields like prefix1I (when &ROW=05) as well as prefix10I (when
%ROW=15)

My question is how I can make the first definition to look something like
prefix01I (when &ROW=05)
I hope this is making sense.
I know I can do this by crafting two MACROs (one for items 1-9 and another
for 10+), but I was curious if someone has some other technique?

Last question for today....
I have a CICS Program which processes log data that is in an Intrapartition
Transient Data Queue.
The program is triggered from the TDQ which was set with a trigger level of
+1.
When the program runs, it copies everything in the TDQ to an RLS Managed
VSAM file.
Again, everything is fine here.
When the program runs, because it copies ALL the queue data, it will
request some number of locks on the VSAM file.
A lot of TDQ data means many locks.
I plan to add a SYNCPOINT into the program to clear the locks.
So, the question today is if someone has a "rule-of-thumb" ... take a
SYNCPOINT after 100 write or 1,000 writes or 10,000 writes... or....

Thanks

.......Cameron

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to