Include 3 is doing the same except excluding 1 and 2 includes. You can use four types of IFTHEN statements as follows: Use one or more WHEN=INIT clauses to apply build or overlay items to all of your input records. instead. What is the purpose of non-series Shimano components? TOT calculates the number of records in the input file. Both the DATE1(c) and DATE=(4MDc) operands correspond to a Cyyyycmmcdd constant for todays date where c is any separator character you like except blank. //SYSPRINT DD SYSOUT=* v If WIDTH(n) is not specified, ICETOOL sets the record length and particular value (for example, 80), or if you want to ensure that the Example: PARSE can be used for many different types of variable fields including delimited fields, comma separated values (CSV), tab separated values, blank separated values, keyword separated fields, null-terminated strings, and so on. IFTHEN clauses for the OUTREC statement can be used to select subsets of the output records and apply different BUILD, FINDREP or OVERLAY items to them. A file has 100 records. How do you get out of a corner when plotting yourself into a corner, Styling contours by colour and by line thickness in QGIS. length required to write the count record and uses it as follows: v If WIDTH(n) is specified and the calculated record length is less 99999JOHN ADMIN 28000, //SORTSTEP EXEC PGM=SORT //SORTOUT DD DSN=DEPT.EMPL.DATA.OUTPUT2, n can be from 1 to 32760. I will go through your answer, Multiplication division using DFSORT utility in Mainframe, How Intuit democratizes AI development across teams through reusability. . If you do not specify a WHEN=NONE clause, only the WHEN=INIT changes (if any) are applied to input records that do not meet the criteria for any of the WHEN=(logexp) clauses. value by not specifying WIDTH(n). Example: Reformat each record by doing various types of find and replace operations. JOHN 08000 There is a separate OUTREC statement. Please note that file in SYSUT2 takes the same DCB as that of the SYSUT1 in the above example. The nature of simulating nature: A Q&A with IBM Quantum researcher Dr. Jamie We've added a "Necessary cookies only" option to the cookie consent popup. d can be 1 to 15. You can delete, rearrange and insert fields and constants. Overlay lets you change specific existing columns without affecting the entire record. steve MONDAY 20000 INREC= and OUTREC= are invalid. Overlay lets you change specific existing columns without affecting the entire record. By clicking Post Your Answer, you agree to our terms of service, privacy policy and cookie policy. default of 15 digits. Lots of errors here. INREC adds, deletes, or reformats fields before the records are sorted or merged. By using INREC, OUTREC, and OUTFIL statements to insert the current date or past date, or future date in a variety of formats and time in a variety of formats into your records. Example 1: Formating a file (USING INREC) //SYSIN DD * SORT FIELDS=COPY INREC FIELDS= (7:2,5,20:10,3) /* Explanation: SORT FIELDS=COPY It is for copy records to output file INREC FIELDS= (7:2,5,20:10,3) - Here we have two formattings, 7:2,5 - data at 2nd position of input file with length 5 copied to 7th position of output file 40 RAMESH 34000 03 20120410 50 Kishore 50000 02 20120408. The following is an example of the IFTHEN parameter: PMP, PMBOK, PMI-ACP and PMI are registered trademarks of the Project Management Institute, Inc. Professional Scrum Master, PSM, Professional Scrum Product Owner, PSPO etc. VIJAY SUN 30000, //SORTSTEP EXEC PGM=SORT DFSORTis a very good concept for record manipulation. In the following example an INREC statement will be used to abbreviate each instance of NEW JERSEY and NEW YORK in a record when position 24 of the record contains a X01. Using BUILD in SORT Build parameter is used to reformat records. Not the answer you're looking for? For your second question, yes it can be done in one step, and greatly simplified. So the following control statement will include only those records with a Cyyyy-mm-dd date in positions 14-23 greater than todays date 30 days. Making statements based on opinion; back them up with references or personal experience. The number in stock and number sold fields are binary values which would actually be unreadable if you printed or displayed the output records shown in Table 2. length = 30) should be copied at position 1 in output file followed by the sequence number of 5 digit in Zoned Decimal format should be written at position 36 of output file. For example, if you wanted to create a record with just Cdddyy, you could do it with OUTREC as follows: Lets say we have a Cyyyymmdd date field starting at position 10 of each record. Other usages with Inrecand Outrec:(SOurce IBM). //SORTIN DD DSN=DEPT.EMPL.DATA.OUTPUT1,DISP=SHR Use IFTHEN statements if you want to insert, rearrange, delete or overlay fields in different ways for different records. OUTFIL 03 gets all the not 0000s which are not 'Y'. // DCB=(RECFM=FB,LRECL=30,BLKSIZE=0), Amusing. INREC WHEN=GROUP can be used with BEGIN to identify a header record starting a group and END to identify a trailer record ending a group. OUTREC FIELDS=(1,20,25,6,) - Here we have two formattings. So either of the following pairs of control statements will sort your records on input positions 1-6 and reformat them with todays date in the form Cyyyy-mm-dd in output positions 1-10, and input positions 1-6 in output positions 11-16. FINDREP indicates doing a find and replace operation. You can use X or 1X to specify a single blank. IFTHEN=(WHEN=(30,5,CH,EQ,Csmall),OVERLAY=(45:C***)) overlays the marks of the student with *** who are belong to small. If clause 5 is satisfied, its overlay item is applied and processing stops. Enjoy unlimited access on 5500+ Hand Picked Quality Video Courses. Specifies d digits for the count in the output record, overriding the How can I use SYNCSORT to format a Packed Decimal field with a specifc sign value? OUTREC in SORT JCL - Example 1 If you want to add sequence number to the output data after sorting input data. OUTREC control statement use in SORT OUTREC control statement is used to reformat (adds, deletes, or reformats fields) each record after they are sorted, merged, or copied by specifying all of its items one by one. If clause 2 is not satisfied, its build items are not applied and processing continues. //SYSIN DD * Use a WHEN=ANY clause after multiple WHEN=(logexp) clauses to apply additional build or overlay items to your input records if they satisfied the criteria for any of the preceding WHEN=(logexp) clauses. Replace Low Values with Spaces using SORT, JIRA Workflow for Optimal Project Tracking, Automatically Assign Issues JIRA Automation, JIRADashboard Popular Gadgets for Agile Teams, Vertical Slice vs Horizontal Slice User Story. used, ICETOOL terminates the operation. so that performance will be improved SORT OUTREC Example JCL. SUM FIELDS=NONE removes duplicates on fields specified in SORT FIELDS. OUTREC FIELDS=(1,80,SQZ=(..,PREBLANK=C'(),..)) Blanks out the (). Example: OUTREC BUILD= (1,20,C'ABC',26:5C'*', 15,3,PD,EDIT= (TTT.TT),21,30,80:X) OVERLAY: Reformat each record by specifying just the items that overlay . Back to top You can create the reformatted INREC records in one of the following ways using unedited, edited, or converted input fields. Note, the physical order in which these are specified in the JCL does not affect the order they are processed in. 7thbyte will be placed as a space in output file. OUTREC is processed after SORT/MERGE and SUM (if present) otherwise after INREC. Based on the 6th position of the file, the BUILD of output file varies. //SORTOUT DD DSN=DEPT.EMPL.DATA.OUTPUT2, VIJAY XXX 24000 IN identifies the constant (the find constant) and OUT identifies the constant (the replace constant). The DATE1(-)-30 operand corresponds to a Cyyyy-mm-dd constant for todays date minus 30 days. OUTREC FIELDS=(1,29,JFY=(.., LEAD=C'<,TRAIL=C>),..) adds the C< as a lead and C> as a trail. BUILD operand is used to construct the output record. What is issuing the message? Build gives you complete control over the items you want in your reformatted OUTREC records and the order in which they appear. OUTREC FIELDS=(..,40,8,ZD,EDIT=(SII,III,IIT),SIGNS=(,-))converts the 8 digit ZD to M12(SII,III,IIT) and displays sign only for negative values. I want to create 3 outfiles depending on the below INCLUDE criteria from the input file. Multiple output records are created with the / sub parameter. Table 1. Write unique records to output. ICETOOL always calculates the record Is it suspicious or odd to stand by the gate of a GA airport watching the planes? Likewise, the sequence number will be 1 for the first trailer record, 2 for the second trailer record and 3 for the third trailer record. Example: INREC BUILD= (1,20,C'ABC',26:5C'*', 15,3,PD,EDIT= (TTT.TT),21,30,80:X) OVERLAY: Reformat each record by specifying just the items that overlay specific columns. 1,20 - data at 1st position of input file with length 20 copied to 1st position(if you don't specific position, it will start from 1st position) of output file. If there is no match found NOMATCH=(11,3) , data at 11th position of input file will be copied as it is to output file. than or equal to n, ICETOOL sets the record length and LRECL to n. You can assign up to 1000 parsed fields (%0-%999) to the variable fields you want to extract. The DATE1 operand corresponds to a Cyyyymmdd constant for todays date. And setting Return Code if it crossing a threshold (90%). OUTREC IFTHEN=(WHEN=INIT,BUILD=(1:1,80)),..) Copies the 80 bytes data from input file to output as it is. JOHN 08000 00001 From the context, this is OUTREC on OUTFIL. Any one run of which (even with the 10,000-record example) will outweigh the costs of a "Mainframe" solution running every day for the next 15+ years. If clause 4 is satisfied, its build items are applied and processing stops. There are multiple Date Functions by which you can reformat input dates. OUTREC in SORT Using OUREC in SORT JCL OUTREC adds, deletes, or reformats fields after the records are sorted or merged. What is the purpose of non-series Shimano components? . CHANGE=(10 indicates that replacing string will occupy 10 letter positions. For instance, you want to know when one file is within 10% of the size of the other. by specifying an appropriately higher d value for DIGITS(d). Writing Only Publisher, Number In Stock, and Number Sold Fields. Example: Reformat different records in different ways by specifying how build, overlay, find/replace, or group operation items are applied to records that meet given criteria. OUTREC FIELDS=(1,39,..)copies first 39 bytes from input file to output as it is. Your client may not be so happy at the end of the year to find that they've paid for reading and "counting" 7.3m records just so that you can set an RC. You can read my previous installment if you miss it. Using OUREC in SORT JCL - Example. I have used OPTION COPY for clarity. Data at position 11 in input file will be compared with CHANGE list. HDR and TRL are added as identifiers to header/trailer, which is user defined and can be customised as per the users' needs. Find centralized, trusted content and collaborate around the technologies you use most. What are the RECFM and LRECL of your inputs? OUTREC FIELDS=(1,29,JFY=(SHIFT=LEFT,..),..) Justifies the data in the first 29 bytes to left. // DCB=(RECFM=FB,LRECL=30,BLKSIZE=0), To insert 5 blanks, write 5X between the two fields. Batch split images vertically in half, sequentially numbering the output files. OUTREC FIELDS=(1,80,SQZ=(.., MID=C,)) the data which had spaces in between separated by ,. JCL does not have BUILD/OUTREC statements. Browse other questions tagged, Where developers & technologists share private knowledge with coworkers, Reach developers & technologists worldwide. Normally it will be given with Join Keys or during the sort. Back to top It confuses people trying to give you an answer. In fact in DFSORT, BUILD is "aliased" to FIELDS in INREC, OUTREC and OUTFIL (says Frank Yaeger, who should know). If desired, a simple report can be created using OUTFIL IFTHEN to identify each different record type, format it appropriately, and remove the data added by PUSH. Build gives you complete control over the items you want in your reformatted OUTREC records and the order in which they appear. Use that to format the result. The SORT, SUM and OUTREC statements are as follows: SORT FIELDS= (106,4,CH,A) SUM FIELDS= (162,4,BI,166,4,BI) OUTREC FIELDS= (106,4,162,4,166,4) Table 2 shows the output. . INREC statement. You have your counts. (note, this was the question that existed when the first answer was written and does not relate now to the above code). Using SORT DATE Functions you can dynamically insert the date, like yyyy-mm-dd or any format instead of a constant date like 2021-01-01. v If WIDTH(n) is specified and the calculated record length is greater Linear regulator thermal information missing in datasheet. The followingcontrol statements will transform records containing a field of formatcyymmddto the formatyyymmdd. Build gives you complete control over the items you want in your reformatted OUTRECrecords and the order in which they appear. IFTHEN clauses are processed in the following order: For this example, the IFTHEN clauses are processed as follows: PARSE fields using IFTHEN parameter : Click Here. TRAN=LTOU, can be used to convert data from lower case to upper case OUTREC FIELDS=(..,4X,..) add 4 spaces from 40th byte. IFTHEN - Give us the more flexibility in handling different types of records, in . Why is there a voltage on my HDMI and coaxial cables? count data set. OVERLAY says "update the information in the current record with these data-manipulations (BUILD always creates a new copy of the current record). The problem I am facing is datasets FILE1.DATA.COUNT and FILE1.DATA.COUNT are getting created of 15 record length despite mentioning LRECL 6. WRITE(countdd) is specified. Why did Ukraine abstain from the UNHRC vote on China? . All of the data which passes the INCLUDE will be on one of the three OUTFILs, and only one. Convert the first five bytes ZD to FS in the input file. // DCB=(RECFM=FB,LRECL=40,BLKSIZE=0), you can have a common BUILD for all the includes I guess. The remaining elements of the statement are similar. You can create the reformatted OUTREC records in one of the following ways using unedited, edited, or converted input fields. Formatting output file after an INCLUDE condition in JCL, How Intuit democratizes AI development across teams through reusability. Convert the date from mmddccyy to ccyymmm(julian date). Letsinsert the below data types between the fields in the output file. Do you have an example of the input and expected output? . JOHN 28000, //SORTSTEP EXEC PGM=SORT We can even add spaces/zeroes/any character into the output record based on the requirement. There's nothing "wrong" with the control cards. If you know that your count requires less than 15 digits, you can use places 'B' (matched records), '1' (present in file1, but not in file2), or '2' (present in file2 but not in file1) in the 1st position of the output BUILD. You can delete, rearrange and insert fields and constants. The below is what I think you are trying to do. //SYSIN DD * . is the protected brand of Scrum.org. You can mix p,m fields (fixed fields) and %nn fields (parsed fields) in BUILD and OVERLAY. value, you can let ICETOOL determine and set the appropriate LRECL EDIT=(TTT.TT) is a used-defined edit mask, in this case inserting a decimal point, truncating the otherwise existing left-most digit, and having significant leading zeros when necessary. . If you want to replace or remove data anywhere in records, the FINDREP parameter of the OUTREC statement needs to use instead. Is there any other way of achieving the same in JCL? Good Data analytic skills (Data Warehousing and BI). SMITH 25000 00003 Overlay lets you change specific existing columns without affecting the entire record. One way, if on-the-dot accuracy is not required, is to talk to the technical staff who manage your storage. 2X in OUTREC FILEDS statement indicates two spaces and thus record length of output file will be 12. SORT FIELDS=COPY NOMATCH=(11,3), - Now its working fine. You can create the reformatted OUTREC records in one of the following ways using unedited, edited, or converted input fields. Don't use INREC FIELDS=, or OUTREC FIELDS= or OUTFIL OUTREC=, use BUILD in their place. Inrecworks just like if you wantto replace a part of your input record to your data. You can mix p,m fields (fixed fields) and %nn fields (parsed fields) in BUILD and OVERLAY. . Please do not use JCL as a general term for utilities. CSM, CSPO, CSD, CSP, A-CSPO, A-CSM are registered trademarks of Scrum Alliance. We share solutions for developer day to day problems and interview questions. It should be: Code: INREC FIELDS= (.) JCL does not have BUILD/OUTREC statements. How do I align things in the following tabular environment? What is \newluafunction? For yyyymm + 3 months, you could use DATE2+3; For Pyyyyddd 150 days, you could use DATE3P-150; For Zmmddyy + 7 days, you could use YDATE1+7. In addition to this it will replace 3 letter day-of-week name at position 11 in input file with its full name at position 11. AKSHAY TUE 10000 record length and LRECL must be set to a particular value (for record length. If you use PGM=SORT, for example, that's a utility. OVERLAY says "update the information in the current record with these data-manipulations (BUILD always creates a new copy of the current record). To subscribe to this RSS feed, copy and paste this URL into your RSS reader. Specifies the record length and LRECL you want ICETOOL to use for the . BUILD gives you complete control over the items you want in your reformatted OUTREC records and the order in which they appear. Explanation In the above example, the SORT card will select the records, if the date in the input record is between the current date +/- 10days. Align the data in the first 29 bytes to LEFT and replace () with <>. Hence, 10 records are written to output. INREC OVERLAY operation is used in order to rewrite data in input file before copying to output. This enables all the records in a group to be sorted together. M11 is a built-in edit-mask. Is it possible to rotate a window 90 degrees if it has the same length and width? Arrange for those counts to be in a data set of their own (preferably with record-types, headers/trailers, more standard good practice). than n, ICETOOL issues an error message and terminates the operation. Here is the OUTREC SORT card. Each day we want only the records for that day to be copied into the output file. By using this website, you agree with our Cookies Policy. BUILD is new. Time constants can also be produced in a variety of other characters, zoned decimal and packed decimal formats as well such as Chh:mm, Zhhmmssxx and Phhmmss. OUTREC FIELDS=(1,29,..) Copies the first 29 bytes of data from input file to output as it is. vijay XXX 24000 The thing is, it can be further simplified by doing something else. Following records will be selected from the input file. The first 10 records need to be written to output file. . OUTREC FIELDS=(..,30,4,CHANGE=(11,Cmath,Cmathematics),..) The math text starting from 30th byte of length 4 in the input file should replace with mathematics of length 11 while writing it to output file. Where, . IFTHEN statements allow you to reformat different records in different ways by specifying how build or overlay items are to be applied to records that meet given criteria. How should I go about getting parts for this bike? 20 bytes). If 6th position is SPACES, then text "EMPTY" is appended to input record. rev2023.3.3.43278. Example: Reformat each record by doing various types of find and replace operations. The sequence number starts at 5 and is incremented by 5 each time. //SYSOUT DD SYSOUT=* SORT FIELDS=( logically appears after the INCLUDE (wherever you code it) and by using OPTION COPY it is clear, up front, and in a logical place, that it is a COPY operation. Example: Experienced software developer. FIELDS specifies an ascending 1-byte character control field at position 81 (the identifier byte added by INREC), and an ascending 5-byte character control field starting at position 8 (the key for the detail records). Why do we calculate the second half of frequencies in DFT? smith WEDNESDAY 25000 Input file has one or more records for same employee number. // DISP=(,CATLG,DELETE), ICETOOL pads the count record on the right with blanks to the record Learn more. Using BUILD on INREC, OUTREC and OUTFIL, and not using OUTFIL OUTREC= is simply for clarity. Affordable solution to train a team and make them project ready. OUTREC FIELDS=(..,5X,..) adds 5 spaces from 63rd position. Inputfile for SORT JCL 10 suresh 20000 01 20120203 34 20 NARENDRA 40000 06 20120925 AB 30 jacob A 25000 07 20111018 1A 40 RAMESH 34000 03 20120610 2C 50 Kishore 50000 02 . Does the below answer suffice? Reformatting Records Using OUTREC - Part 2 We will explore few more common uses of OUTREC with examples below 1 . This is from the DFSORT Application Programming Guide: WRITE(countdd) Specifies the ddname of the count data set to be It will be helpful in case where days of week coded as MON, TUE, WED which needs to be replaced to MONDAY, TUESDAY, WEDNESDAY, Requirement: To replace three char days of week to its fullest form, ----+----1----+----2----+----3----+----4----+----5 To learn more, see our tips on writing great answers. john MONDAY 08000 OUTREC as equivalent of BUILD is only on OUTFIL. If WIDTH(n) is not specified, LRECL is set to the calculated required For date values in the form Cyyyy/mm/dd, you could use the DATE1(/) constant; For date values in the form Cyyyy-mm, you could use the DATE2(-) constant; For date values in the form Pyyyyddd, you could use the DATE3P constant; For date values in the form Zyymmdd (2-digit year date), you could use the YDATE1 constant. If you use DIGITS(d) and the count overflows the number of digits I have tried this but get a syntax error: I have managed to sort, sum and edit the data as required. ENDBEFR=C tells DFSORT to stop extracting data at the byte before the next comma (the comma after the first variable field). 4) Convert PD back to ZD. You can use nX to specify n blanks.To insert 10 blanks, write 10X before the first field. Explnation: Above statement will convert data field at position (1-20) of input file to its uppercase form and write it to output file. //SYSOUT DD SYSOUT=* When is the condition Overlay is the actualvalue to be replaced similarly. OUTFIL 01, moved to make it easier to follow, gets all the records which are not selected on another OUTFIL (by using SAVE). SORT FIELDS=(1,5,ZD,A) The input file will be sorted first and written to the output. The same functionality can be achieved using ICETOOL also. Build gives you complete control over the items you want in your reformatted INREC records and the order in which they appear. View all posts by Srini. length is 25) should be copied at position 1 in output file followed by the field at position (46 to 50 i.es length is 5) should be copied at position 26 of output file. INREC and OUTREC do the same, but the only difference is the way reformatting is done. Note that if all of the fields in your records have fixed positions and lengths, you don't need to use PARSE. Agree All to set an RC. IFTHEN clauses let you use sophisticated conditional logic to choose how different record types are reformatted. The finaloutput will be the same. To perform lookup of input data and if it matches then replace it with some other data. To subscribe to this RSS feed, copy and paste this URL into your RSS reader. JIRA Workflow for Optimal Project Tracking, Automatically Assign Issues JIRA Automation, JIRADashboard Popular Gadgets for Agile Teams, Vertical Slice vs Horizontal Slice User Story. To display hexadecimal representation of input value. The%parsed field is used to skip the variable field without extracting anything for it. OVERLAY - Replace the selected columns without impacting other columns. The OUTREC control statement allows you to reformat the input records after they are sorted, merged, or copied. Add two days, two years to the date in the input file. Default for PARSE: None; must be specified. OUTREC: Specifies how records are reformatted after they are sorted, copied, ormerged. X represents single space. WHEN=NONE clauses are processed after any of the other IFTHEN clauses. For details of what that mask is, look it up in the manual, as you will discover other useful pre-defined masks at the time. and what would happen then? Note, the physical order in which these are specified in the JCL does not affect the order they are processed in. . If the records are fixed-length, spaces would be appended to the end of the record to replace the deleted characters. OUTREC keeps only positions 1-80 for the OUTFIL output records, thus removing the identifier byte and sequence number we added in positions 81-83 with the INREC statement (we do not want these temporary fields in the OUTFIL output records). You can delete, rearrange and insert fields and constants. The%01parsed field is used to extract the first variable field into a 5-byte fixed parsed field. Adding a sequence number to the output file. 1,6,ZD means "the information, at this moment, at start-position one for a length of six, which is a zoned-decimal format". The INREC control statement allows you to reformat the input records before they are sorted, merged, or copied. STEVE MON 20000 LRECL to the calculated record length. The second IFTHEN WHEN=(logexp) clause identifies and operates on trailer records (TRL in positions 1-3); OVERLAY puts todays date in the form ddd/yyyy in positions 11-18, adds a 9 in position 81, adds a ZD sequence number in positions 82-83 and does not affect the rest of the record. 55555SMITH R&D 25000 DFSORT extends the reformatted input records from 80 bytes to 83 bytes to accommodate the identifier byte added in position 81 and the sequence number added in positions 82-83. Does a summoned creature play immediately after being summoned by a ready action? By clicking Accept all cookies, you agree Stack Exchange can store cookies on your device and disclose information in accordance with our Cookie Policy. Overlay lets you change specific existing columns without affecting the entire record. Reformat each record by specifying all of its items one by one. To learn more, see our tips on writing great answers. INREC is useful in case of the large input files. Example: Reformat each record by specifying just the items that overlay specific columns. INREC:Specifies how records are reformatted before they are sorted, copied, or merged. OUTREC FIELDS=(1,5,ZD,TO=FS,LENGTH=6,..)converts the first five bytes ZD from input file to FS of 6 bytes and writes it to output. Your comment must have arrived while I was writing the answer. Build give complete control over output file format. AKSHAY 10000 00002 Previous What exactly you are getting? OUTREC OVERLAY=(30:30,4,TRAN=LTOU,..) Converts the data lower to upper from 30th position of length 4 and writes to output from 30th position. Syntax for using FIELDS parameter in its simplest form:- OUTREC [FIELDS|BUILD] = ( C:P,M,.) // UNIT=TEST,SPACE=(CYL,(50,10),RLSE) Next . CHANGE=(10, - I don't know what "Code" tags are. Following records will be selected from the input file. akshay TUESDAY 10000 Unnecessary fields are eliminated from the output records using INREC or OUTREC. The IFTHEN WHEN=NONE clause identifies and operates on detail records (not HDR or TRL in positions 1-3); OVERLAY adds a 1 in position 81 and does not affect the rest of the record. 25,6 - data at 25th position of input file with length 6 copied to 21st position(because 1 to 20 already data copied so it will continue from next position) of output file. Staging Ground Beta 1 Recap, and Reviewers needed for Beta 2, How to change the properties of a ps or an pds, Passing symbol value using DFSORT to file, mainframe - generate a report with sum of particular fields. Please do not use JCL as a general term for utilities. SORT FIELDS=COPY OUTREC gives you the flexibility to reformat your output file in multiple ways . Example: Reformat different records in different ways by specifying how build, overlay, find/replace, or group operation items are applied to records that meet given criteria.