December 9, 2016, 2:26 am
Author:
bhavana yalavarthi
Posted: Fri Dec 09, 2016 3:56 pm (GMT 5.5)
Hi through this HEX format you will be able to see X'25'.I want to split these ISA,GS,N1 segments based on delimiter X'25'.Record length is 80.But these ISA,GS and N1 segments will not of fixed length.
Code: |
ISA*00* *00* *01*078769021 *16*054481205CPIC *16
CEC5FF544444444445FF544444444445FF5FFFFFFFFF4444445FF5FFFFFFFFFCDCC445FF
921C00C0000000000C00C0000000000C01C078769021000000C16C054481205379300C16
-----------------------------------------------------------------------
9*U*00301*000000061*0*P*~ GS*PS*078769021*054481205*161111*0229*61*X*003
F5E5FFFFF5FFFFFFFFF5F5D5A2CE5DE5FFFFFFFFF5FFFFFFFFF5FFFFFF5FFFF5FF5E5FFF
9C4C00301C000000061C0C7C1572C72C078769021C054481205C161111C0229C61C7C003
-----------------------------------------------------------------------
30*610001 BFR*00**161110*DL*A*170201*170301*161110 N1*MI*Toyota Tsusho A
FF5FFFFFF2CCD5FF55FFFFFF5CD5C5FFFFFF5FFFFFF5FFFFFF2DF5DC5E9A9A84EAAA894C
30C6100015269C00CC161110C43C1C170201C170301C161110551C49C368631032428601
-----------------------------------------------------------------------
Inc.*92*311 LIN**VP*766325AA0AC*PO*20212149 UIT*LB PID*F*9B***CR SP122B
C9845FF5FFF2DCD55ED5FFFFFFCCFCC5DD5FFFFFFFF2ECE5DC2DCC5C5FC555CD4EDFFFC4
953BC92C3115395CC57C76632511013C76C202121495493C325794C6C92CCC3902712220 |
_________________
Y.Bhavana
↧
December 9, 2016, 2:43 am
Author:
bhavana yalavarthi
Posted: Fri Dec 09, 2016 4:13 pm (GMT 5.5)
Hi all,I want to achieve this through SORT.So I can't use the cobol program for this.Can you please help me on this.
_________________
Y.Bhavana
↧
↧
December 9, 2016, 2:44 am
Author:
Arun Raj
Posted: Fri Dec 09, 2016 4:14 pm (GMT 5.5)
So those were infact blanks, and what happened to them? And on a quick dirty read, your output does not seem to be consistent with the input. The output seems to have 4 'segments' not 3. And I could not locate the ST in the below piece. What about Bill's question on the max or min length.?
Quote: |
ISA*00* *00* *01*078769021 *16*054481205CPIC *16
9*U*00301*000000061*0*P*~ GS*PS*078769021*054481205*161111*0229*61*X*003
30*610001 BFR*00**161110*DL*A*170201*170301*161110 N1*MI*Toyota Tsusho A
Inc.*92*311 |
Quote: |
ISA*00**00**01*078769021*16*054481205CPIC*161111*0229*U*00301*000000061*
GS*PS*078769021*054481205*161111*0229*61*X*003010
ST*830*610001
N1*MI*ToyotaTsushoAmerica,Inc.*92*311 |
Your original input has content that does not appear in the expected output and vice-versa.
Quote: |
Hi all,I want to achieve this through SORT.So I can't use the cobol program for this |
What you want to do, does not matter. What matters is whether the problem needs it or not.
_________________
Arun
----------------------------------------------------------------------------------------------------
Love is like an hourglass, with the heart filling up as the brain empties. -Jules Renard
↧
December 9, 2016, 2:54 am
Author:
bhavana yalavarthi
Posted: Fri Dec 09, 2016 4:24 pm (GMT 5.5)
There is no minimum or maximum data length.Just i want to have the ISA segment in one row and as follows.In the above code ST is not there as it is present at the end of the row and, as I have copied the data here only upto the 72nd column,you are not able to see.Yes sorry 4 segments-ISA,GS,ST,N1.
Code: |
ISA*00* *00* *01*078769021 *16*054481205CPIC *161111*022
9*U*00301*000000061*0*P*~ GS*PS*078769021*054481205*161111*0229*61*X*003010 ST*8
30*610001 BFR*00**161110*DL*A*170201*170301*161110 N1*MI*Toyota Tsusho America,
Inc.*92*311 LIN**VP*766325AA0AC*PO*20212149 UIT*LB PID*F*9B***CR SP122B
7.01 SDP*Y*Y FST*119049.642*C*D*170301**002*0229*DO*20212149 SDP*Y*Y FST
2*D*D*170401**002*0229*DO*20212149 LIN**VP*781985AA0AC*PO*20212149 UIT*L
9B***GA SP781B .039 X 61.73 SDP*Y*Y FST*62986.07911*C*D*170301**002*0229
2149 SDP*Y*Y FST*74957.182*D*D*170401**002*0229*DO*20212149 LIN**VP*7811
PO*20212149 UIT*LB PID*F*9B***CR SP123B .028 X 57.01 SDP*Y*Y FST*39683.2
70301**002*0229*DO*20212149 SDP*Y*Y FST*66138.69*D*D*170401**002*0229*DO
9 LIN**VP*781865AA0AC*PO*20212149 UIT*LB PID*F*9B***CR SP123B .047 X 49. |
_________________
Y.Bhavana
↧
December 9, 2016, 3:00 am
Author:
bhavana yalavarthi
Posted: Fri Dec 09, 2016 4:30 pm (GMT 5.5)
Code: |
ISA*00* *00* *01*078769021 *16*054481205CPIC *161111*0229*U*00301*000000061*0*P*~ |
The o/p will be like this Arun,as iam not able to copy the entire data,its got missed previously.
_________________
Y.Bhavana
↧
↧
December 9, 2016, 3:07 am
Author:
Arun Raj
Posted: Fri Dec 09, 2016 4:37 pm (GMT 5.5)
If you have trouble pasting the entire data, you can always show a smaller representative input, but then the output shown should be consistent with the input.
There are still questions unanswered about the source of the data. With the given little information, I am not sure if this should still be looked at as a dfsort requirement.
_________________
Arun
----------------------------------------------------------------------------------------------------
Love is like an hourglass, with the heart filling up as the brain empties. -Jules Renard
↧
December 9, 2016, 3:16 am
Author:
bhavana yalavarthi
Posted: Fri Dec 09, 2016 4:46 pm (GMT 5.5)
this is the i/p
Code: |
ISA*00* *00* *01*078769021 *16*054481205CPIC *161111*022
CEC5FF544444444445FF544444444445FF5FFFFFFFFF4444445FF5FFFFFFFFFCDCC445FFFFFF5FFF
921C00C0000000000C00C0000000000C01C078769021000000C16C054481205379300C161111C022 ------------------------------------------------------------------------------
9*U*00301*000000061*0*P*~.GS*PS*078769021*054481205*161111*0229*61*X*003010.ST*8
F5E5FFFFF5FFFFFFFFF5F5D5A2CE5DE5FFFFFFFFF5FFFFFFFFF5FFFFFF5FFFF5FF5E5FFFFFF2EE5F
9C4C00301C000000061C0C7C1572C72C078769021C054481205C161111C0229C61C7C003010523C8 ------------------------------------------------------------------------------
30*610001.BFR*00**161110*DL*A*170201*170301*161110.N1*MI*Toyota Tsusho America,
FF5FFFFFF2CCD5FF55FFFFFF5CD5C5FFFFFF5FFFFFF5FFFFFF2DF5DC5E9A9A84EAAA894C98988864
30C6100015269C00CC161110C43C1C170201C170301C161110551C49C368631032428601459931B0 ------------------------------------------------------------------------------
Inc.*92*311.LIN**VP*766325AA0AC*PO*20212149.UIT*LB.PID*F*9B***CR SP122B .026 X 4 |
This is the expected o/p.
Code: |
ISA*00**00**01*078769021*16*054481205CPIC*161111*0229*U*00301*000000061*0*P*~.
GS*PS*078769021*054481205*161111*0229*61*X*003010.
ST*830*610001.
N1*MI*ToyotaTsushoAmerica,Inc.*92*311.
ISA*00**00**01*017093972*16*054481205CPIC*161110*0320*U*00300*000000095*0*P*@.
GS*PS*0000000282*054481205*161110*0320*95*X*003010.
ST*830*950001.
N1*MI*MILLSTEELCOMPANY*92*0000000282.
ISA*00**00**01*112064324*16*054481205CPIC*161108*1452*X*00300*000000157*0*P**.
GS*PS*000000195*054481205*161108*1452*157*X*003010.
ST*830*000000272.
N1*MI*MI-TECHSTEEL-DECATUR,AL.*92*33.
ISA*00**00**01*884601162*16*054481205CPIC*161108*1453*X*00300*000000105*0*P**. |
The source is GDG generations.We will copy all gdg's data into single o/p dataset,the problem is gdg data will also be like this.
_________________
Y.Bhavana
↧
December 9, 2016, 6:51 am
Author:
chandracdac
Posted: Fri Dec 09, 2016 8:21 pm (GMT 5.5)
Bill, yes. a1 might appear with other keys also and i want to keep the first of each key
↧
December 9, 2016, 7:04 am
Author:
zh_lad
Subject: Reply to: Performing arithmetic on input field
Posted: Fri Dec 09, 2016 8:34 pm (GMT 5.5)
Sorry I couldn't pursue this as I was busy in work. I am on holiday for next week. I will resume when I am back from holiday.
Wish you all Merry Xmas and a Happy New Year.
↧
↧
December 9, 2016, 7:05 am
Author:
Bill Woodger
Subject: Reply to: Removing Duplicates based on certain value of the records
Posted: Fri Dec 09, 2016 8:35 pm (GMT 5.5)
WHEN=GROUP with KEYBEGIN and PUSH a SEQ (make sure it is large enough to accomodate the maximum number of records for a key) to temporarily extend your records, and use OUTFIL OMIT= to discard any record with "a1" and SEQ-field greater than one. Use BUILD to drop off them temporary extension.
↧
December 9, 2016, 7:06 am
Author:
Arun Raj
Posted: Fri Dec 09, 2016 8:36 pm (GMT 5.5)
Thanks and Wish you the same!
_________________
Arun
----------------------------------------------------------------------------------------------------
Love is like an hourglass, with the heart filling up as the brain empties. -Jules Renard
↧
December 9, 2016, 7:14 am
Author:
Arun Raj
Posted: Fri Dec 09, 2016 8:44 pm (GMT 5.5)
And the assumption is that the input is already sorted on the key.
_________________
Arun
----------------------------------------------------------------------------------------------------
Love is like an hourglass, with the heart filling up as the brain empties. -Jules Renard
↧
December 9, 2016, 7:19 am
Author:
chandracdac
Posted: Fri Dec 09, 2016 8:49 pm (GMT 5.5)
No input is not sorted on the key.
@Bill could you give me the sort card ?
↧
↧
December 9, 2016, 7:32 am
Author:
Bill Woodger
Subject: Reply to: Removing Duplicates based on certain value of the records
Posted: Fri Dec 09, 2016 9:02 pm (GMT 5.5)
If the input is not in key order, why did you show your sample data to be in key order?
What order do you want the output to be in? Do you have a preference for which 'a1' is retained for a particular key, given that they may be scattered across your input?
There are loads of examples here (and elsewhere). It is not rocket surgery once you have the outline. Of course, you've just changed the outline.
↧
December 9, 2016, 7:59 am
Author:
chandracdac
Posted: Fri Dec 09, 2016 9:29 pm (GMT 5.5)
ok i will do my search for examples.
Thank you for your tips
↧
December 9, 2016, 9:27 am
Author:
MrExtraordinare
Subject: TAPE VERIFY utility??
Posted: Fri Dec 09, 2016 10:57 pm (GMT 5.5)
It's been so long since I've worked with IBM mainframe tapes. When I run a IEBGENER to copy a tape to DASD, I'm getting U0061 error. It seems that the input tape might be empty but am not for sure.
Isn't there a TAPE VERIFY utility that I can include in my JCL to verify whether if the tape has data or not? I thought there was a utility but my memory failed me.
Any info you could share would be appreciated or point me in the right direction because Google Search apparently failed me.
Thanks!
↧
December 9, 2016, 9:37 am
Author:
chandracdac
Subject: Final solution
Posted: Fri Dec 09, 2016 11:07 pm (GMT 5.5)
Ok so this is what i have done finally and i got my desired result:
SELECT FROM(inputfile ) TO(outputfile1)-
ON(01,03,CH) ON(04,03,CH) ON(09,08,CH)-
FIRST DISCARD(SORTXSUM)-
USING(CTL1)
COPY FROM(inputfile ) TO(outputfile2)-
USING(CTL2)
and my CTL1 is
INCLUDE COND=(07,2,CH,EQ,C'a1')
and my CTL2 is
INCLUDE COND=(07,2,CH,NE,C'a1')
i got my result in two different files outputfile1 and outputfile2 and i am ok with that.
↧
↧
December 9, 2016, 10:30 am
Author:
steve-myers
Posted: Sat Dec 10, 2016 12:00 am (GMT 5.5)
In order for anyone to evaluate this issue we need to see the job in its entirety. We do not need to see the job statement and you can mask out anything that's proprietary or confidential. We may need the JES2 JOB LOG data set for the failing job, with anything that is proprietary or confidential masked out.
I've been in this trade for more than 40 years. In all that time I've never heard of a U0061 ABEND in IEBGENER.
If, as you suspect, there is nothing on the tape you will most likely see some obscure Sx13 ABEND.
I am not aware of any "tape verify" utility as such. I am aware of a utility in CBT to analyze standard tape labels that could serve the purpose of a "tape verify" utility, and I can suggest other ideas after seeing the failing JCL, but that's about it.
↧
December 9, 2016, 1:20 pm
Author:
luis_pr
Subject: RAMIS
Posted: Sat Dec 10, 2016 2:50 am (GMT 5.5)
Just ran into someone who is still using RAMIS from CA.
But he is not the original RAMIS User; he inherited a batch job that regularly runs using a RAMIS "proc". So we are not familiar with it; he just uses the files created in the RAMIS Step. Everything in the job seems to run fine but the files in his RAMIS Step are always empty. RAMIS and the JES Messages do not indicate there is a problem but I could not help any further. Is there a way to "see" the control statements that his job is executing? I looked at his job output and did not see stmts showing what Ramis was doing. We assume the control cards are maybe contained in the Ramis Database that his JCL allocates but we do not know how to extract information. Most likely, the files being read (not empty) have data values that are causing this but we both agreed we were unsure and were concerned at some many empty files. The prev "caretaker" who knew all this is not available anymore.
TIA!
↧
December 9, 2016, 1:42 pm
Author:
enrico-sorichetti
Subject: Reply to: TAPE VERIFY utility??
Posted: Sat Dec 10, 2016 3:12 am (GMT 5.5)
BEWARE ... BEST EFFORT AT GUESSING
IIRC depending on the DFSORT configurations options
dfsort and friends can abend or issue a message with the same number as the abend
Quote: |
For unsuccessful completion with ABEND in effect, DFSORT issues a user abend with the appropriate code as specified by the ABCODE installation option (either the error message number or a number between 1 and 99). |
in this case - most probably - ICEGENER was substituted for IEBGENER
and the ICE0061A ( equivalent to the U0061 abend ) means that ..
Quote: |
ICE061A
I/O ERROR, DD ddname, DEV address, ECB completion code, CSW status bytes, SENSE sense bytes
Explanation
Critical. This message was issued for one of the following reasons:
The job control statements incorrectly specified record length or blocking information for the data set located on the device indicated by the DEV field in the message.
A permanent error occurred during an I/O operation on the indicated device.
The most likely causes include:
The output data set of a merge, copy, or ICEGENER application is the same as one of the input data sets.
An output data set is the same as another output data set.
Hardware-related error.
|
_________________
cheers
enrico
When I tell somebody to RTFM or STFW I usually have the page open in another tab/window of my browser,
so that I am sure that the information requested can be reached with a very small effort
↧