View previous topic :: View next topic
|
Author |
Message |
trumpcards Warnings : 1 New User
Joined: 03 Jul 2006 Posts: 11
|
|
|
|
I have a requirement to handle the record contains more than 32676 characters.
I have a variable file with record length 1023307. When I compile I get the message that record contains max 32767 characters so it takes only 32767 only.
FD ITCDBQ00-FILE-IN
RECORDING MODE IS V
* RECORD CONTAINS 277 TO 27817 CHARACTERS
RECORD CONTAINS 277 TO 1023337 CHARACTERS
LABEL RECORDS ARE STANDARD
BLOCK CONTAINS 0 RECORDS.
01 MIN-ITCDBQ00-RECORD PIC X(277).
01 SF-HOLD-RECORD.
02 ITCDBQ00-KEY.
COPY ITCFMQ00.
* 02 FILLER PIC X(27795).
02 FILLER PIC X(1023315).
01 SF-HOLD-PROF.
02 FILLER PIC X(22).
02 PROF-SF.
COPY ITCFMXSP.
* 02 FILLER PIC X(1275).
02 FILLER PIC X(1253).
01 SF-HOLD-INST.
02 FILLER PIC X(22).
02 INST-SF.
COPY ITCFMXSI. |
|
Back to top |
|
|
murmohk1
Senior Member
Joined: 29 Jun 2006 Posts: 1436 Location: Bangalore,India
|
|
|
|
trumpcards,
Quote: |
02 FILLER PIC X(1023315). |
32767 is max record length allowed. Also why do you need a filler that bigh? |
|
Back to top |
|
|
trumpcards Warnings : 1 New User
Joined: 03 Jul 2006 Posts: 11
|
|
|
|
This file contains the three records.
1) 01 MIN-ITCDBQ00-RECORD PIC X(277).
02)01 SF-HOLD-RECORD.
02 ITCDBQ00-KEY.
COPY ITCFMQ00. ------------------------record length of 22bytes
* 02 FILLER PIC X(27795).
02 FILLER PIC X(1023315).
03)01 SF-HOLD-PROF.
02 FILLER PIC X(22).
02 PROF-SF.
COPY ITCFMXSP.
* 02 FILLER PIC X(1275).
02 FILLER PIC X(1253).
04)01 SF-HOLD-INST.
02 FILLER PIC X(22).
02 INST-SF.
COPY ITCFMXSI.---record length is 1023315
record length of ITCFMXSI copy layout was 1023337.
so take the common record length of all the records i had taken the filler
size as X(1023315).
. |
|
Back to top |
|
|
CICS Guy
Senior Member
Joined: 18 Jul 2007 Posts: 2146 Location: At my coffee table
|
|
|
|
Try defining it as a spanned record:
Quote: |
Recording mode S (spanned)
The records can be either fixed-length or variable-length, and can be larger than a block. If a record is larger than the remaining space in a block, a segment of the record is written to fill the block. The remainder of the record is stored in the next block (or blocks, if required). Only complete records are made available to you. Each segment of a record in a block, even if it is the entire record, includes a segment-descriptor field, and each block includes a block-descriptor field. These fields are not described in the data division; provision is automatically made for them. These fields are not available to you. |
|
|
Back to top |
|
|
agkshirsagar
Active Member
Joined: 27 Feb 2007 Posts: 691 Location: Earth
|
|
|
|
Quote: |
record length of ITCFMXSI copy layout was 1023337. |
Are you sure?
Hint: Multiple 01 level declared under FD entry are actually redefine the first 01 level entry.
Check if you have such case.. |
|
Back to top |
|
|
trumpcards Warnings : 1 New User
Joined: 03 Jul 2006 Posts: 11
|
|
|
|
No previously bcbs association had a line sequence number of x(020) now they chnaged it to the s9(04) comp,for this fileld number of records are changed huge.professional claims up to 500 and institutaional claims up to 999.
01 level items are not redefined.If we redifine alo each record length more than 32767.
Could u plz provide if any alternate solutions are.
Thanks,
mannava |
|
Back to top |
|
|
agkshirsagar
Active Member
Joined: 27 Feb 2007 Posts: 691 Location: Earth
|
|
|
|
As CICS guy suggested go for VS or VBS format records.
we never tried it before because our report and dataset sizes are well within the limit. If you find anything new, do let us know, All the best.. |
|
Back to top |
|
|
CICS Guy
Senior Member
Joined: 18 Jul 2007 Posts: 2146 Location: At my coffee table
|
|
|
|
trumpcards wrote: |
No previously bcbs association had a line sequence number of x(020) now they chnaged it to the s9(04) comp,for this fileld number of records are changed huge.professional claims up to 500 and institutaional claims up to 999. |
I'm sure you understand what you wrote, but it makes little sense to me....
Quote: |
01 level items are not redefined.If we redifine alo each record length more than 32767. |
Multiple 01 levels in an FD are implicit redefinitions....
The max character count for 01-49 data-names is 16,777,215 bytes |
|
Back to top |
|
|
trumpcards Warnings : 1 New User
Joined: 03 Jul 2006 Posts: 11
|
|
|
|
Thanks Abhijit Kshirsagar,
ITCFMXSI is the common layout for all sf layout records
SF HAS 11,20,30,40,50 ,60 ,70,80,90...records are there, each record has 255 bytes, in that RECORD TYPE 11 OCCERS 23 TIMES PREVIOUSLY AND NOW IT IS 999 TIMES,LIKE 20,30,70,90..
THATS WHY TO TAL RECORDS ARE 4013 for institutional claims.
so total length of this common layout is 4013*255=1023337.
I thought that we can split the file and we will code the program. But my program just read the input files and sends to the corresponding layout.
Thanks,
Mannava |
|
Back to top |
|
|
stodolas
Active Member
Joined: 13 Jun 2007 Posts: 632 Location: Wisconsin
|
|
|
|
I am playing with records of up to PIC X(16000000) Without issue, but I have not tried to do file I/O with them. They are fine in memory. But CICS Guy is right you need to define the files as Undefined record length with spanned records. |
|
Back to top |
|
|
|