And for your COBOL programmers, if they do not use DFSPARM / $ORTPARM DD
statements in the JCL to control SORT parameters, there are two COBOL-defined
"special registers" that can be used to specify storage values.
Below is a copy of the definition of those data areas from the COBOL V5.2
manual.
HTH
Peter
SORT-CORE-SIZE
The SORT-CORE-SIZE special register is the name of a binary data item that you
can use to specify the number of bytes of storage available to the sort utility.
Restriction: The SORT-CORE-SIZE special register is not applicable to sorting a
table with the format 2 SORT statement.
The SORT-CORE-SIZE special register has the implicit definition:
01 SORT-CORE-SIZE GLOBAL PICTURE S9(8) USAGE BINARY VALUE ZERO.
When used in nested programs, this special register is implicitly defined with
the
global attribute in the outermost program.
SORT-CORE-SIZE can be used in place of the MAINSIZE or RESINV control
statements in the sort control file:
-- The 'MAINSIZE=' option control statement keyword is equivalent to
SORT-CORE-SIZE with a positive value.
-- The 'RESINV=' option control statement keyword is equivalent to
SORT-CORE-SIZE with a negative value.
-- The 'MAINSIZE=MAX' option control statement keyword is equivalent to
SORT-CORE-SIZE with a value of +999999 or +99999999.
You can specify the SORT-CORE-SIZE special register in a function wherever an
integer argument is allowed.
SORT-FILE-SIZE
The SORT-FILE-SIZE special register is the name of a binary data item that you
can
use to specify the estimated number of records in the sort input file,
file-name-1.
Restriction: The SORT-FILE-SIZE special register is not applicable to sorting a
table with the format 2 SORT statement.
The SORT-FILE-SIZE special register has the implicit definition:
01 SORT-FILE-SIZE GLOBAL PICTURE S9(8) USAGE BINARY VALUE ZERO.
When used in nested programs, this special register is implicitly defined with
the
global attribute in the outermost program.
SORT-FILE-SIZE is equivalent to the 'FILSZ=Ennn' control statement in the sort
control file.
You can specify the SORT-FILE-SIZE special register in a function wherever an
integer argument is allowed.
-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[email protected]] On Behalf
Of David Betten
Sent: Monday, October 02, 2017 11:45 AM
To: [email protected]
Subject: Re: Sort Question
I see a couple things the DFSORT output
The reason for the small mainsize and DSA=0 is because the program is
passing MAINSIZE=00128000
ICE146I 0 END OF STATEMENTS FROM SORTCNTL - PARAMETER LIST STATEMENTS
FOLLOW
SORT FIELDS=(0001,0013,CH,A)
RECORD TYPE=F,LENGTH=(000049,,)
OPTION MAINSIZE=00128000
The small mainsize is leading to an intermediate merge.
ICE247I 0 INTERMEDIATE MERGE ENTERED - PERFORMANCE MAY BE DEGRADED
An intermediate merge happens when the sortworks are so fragmented, DFSORT
must do an intermediate merge before it can do the final merge to SORTOUT.
This greatly increases the sort work requirement as well as the elapsed
time. So the earlier recommendation of passing MAINSIZE=MAX via SORTCNTL
or DFSPARM should resolve this.
Have a nice day,
Dave Betten
z/OS Performance Specialist
Cloud and Systems Performance
IBM Corporation
email: [email protected]
IBM Mainframe Discussion List <[email protected]> wrote on
10/02/2017 03:57:35 PM:
> From: "Pfister, Nathan" <[email protected]>
> To: [email protected]
> Date: 10/02/2017 03:57 PM
> Subject: Re: Sort Question
> Sent by: IBM Mainframe Discussion List <[email protected]>
>
> Sorry for the long post, but here's all the info.
>
> Here's the sort parameters:
>
> ITEM JCL (ICEAM1) VALUE INV (ICEAM2) VALUE TSO
> (ICEAM3) VALUE TSOINV (ICEAM4) VALUE
> ---------- -------------------- --------------------
> -------------------- ---------------------
> ENABLE TD1 NONE TD1
NONE
> * NONE * NONE
>
> ABCODE MSG MSG MSG
MSG
> ALTSEQ SEE BELOW SEE BELOW SEE
> BELOW SEE BELOW
> ARESALL 0 0 0
0
> ARESINV NOT APPLICABLE 0 NOT
> APPLICABLE 0
> CFW YES YES YES
YES
> CHALT NO NO NO
NO
> CHECK YES YES YES
YES
> CINV YES YES YES
YES
> COBEXIT COB2 COB2
> COB2 COB2
> DIAGSIM NO NO NO
NO
> DSA 128 128 128
128
> DSPSIZE MAX MAX MAX
MAX
> DYNALOC (SYSDA,12) (SYSDA,12)
> (SYSDA,8) (SYSDA,8)
> * (SYSDA,4) * (SYSDA,4) *
> (SYSDA,4) * (SYSDA,4)
> DYNAPCT 75 75 10
10
> * 10 * 10
> DYNAUTO YES YES YES
YES
> DYNSPC 1024 1024 256
256
> * 256 * 256
> EFS NONE NONE
> NONE NONE
> EQUALS YES YES YES
YES
> * VLBLKSET * VLBLKSET *
> VLBLKSET * VLBLKSET
> ERET ABEND ABEND
> RC16 RC16
> * RC16 * RC16
> ESTAE YES YES YES
YES
> EXITCK STRONG STRONG
> STRONG STRONG
> EXPMAX MAX MAX MAX
MAX
> EXPOLD 50% 50% 50%
50%
> EXPRES 10% 10% 10%
10%
> FSZEST NO NO NO
NO
> GENER NOT APPLICABLE IEBGENR NOT
> APPLICABLE IEBGENR
> GNPAD NOT APPLICABLE RC0 NOT
> APPLICABLE RC0
> GNTRUNC NOT APPLICABLE RC0 NOT
> APPLICABLE RC0
> HIPRMAX OPTIMAL OPTIMAL
> OPTIMAL OPTIMAL
> IDRCPCT NONE NONE
> NONE NONE
> IEXIT NO NO NO
NO
> IGNCKPT YES YES YES
YES
> IOMAXBF 35651584 35651584
> 35651584 35651584
> LIST YES YES YES
YES
> LISTX YES YES YES
YES
> LOCALE NONE NONE
> NONE NONE
> MAXLIM 2097152 2097152
> 2097152 2097152
> * 1048576 * 1048576 *
> 1048576 * 1048576
> MINLIM 450560 1048576
> 450560 1048576
> * 450560 *
450560
> MOSIZE MAX MAX MAX
MAX
> MOWRK YES YES YES
YES
> MSGCON CRITICAL CRITICAL
> NONE NONE
> * NONE * NONE
> MSGDDN SYSOUT SYSOUT
> SYSOUT SYSOUT
> MSGPRT ALL ALL ALL
ALL
> NOMSGDD QUIT QUIT
> QUIT QUIT
> NULLOFL RC0 RC0 RC0
RC0
> NULLOUT RC0 RC0 RC0
RC0
> ODMAXBF 2097152 2097152
> 2097152 2097152
> OUTREL YES YES YES
YES
> OUTSEC YES YES YES
YES
> OVERRGN 65536 16384
> 65536 16384
> OVFLO RC0 RC0 RC0
RC0
> PAD RC0 RC0 RC0
RC0
> PARMDDN DFSPARM DFSPARM
> DFSPARM DFSPARM
> RESALL 4096 4096
> 4096 4096
> RESET YES YES YES
YES
> RESINV NOT APPLICABLE 49152 NOT
> APPLICABLE 49152
> * 0
* 0
> SDB INPUT INPUT
> INPUT INPUT
> SDBMSG NO NO NO
NO
> SIZE MAX MAX MAX
MAX
> SMF NO NO NO
NO
> SOLRF YES YES YES
YES
> SORTLIB PRIVATE PRIVATE
> PRIVATE PRIVATE
> SPANINC RC16 RC16
> RC16 RC16
> SVC 218 218 218
218
> * 109 * 109 *
> 109 * 109
> SZERO YES YES YES
YES
> TEXIT NO NO NO
NO
> TMAXLIM 6291456 6291456
> 6291456 6291456
> TRUNC RC0 RC0 RC0
RC0
> TUNE STOR STOR
> STOR STOR
> VERIFY NO NO NO
NO
> VIO NO NO NO
NO
> VLLONG NO NO NO
NO
> VLSCMP NO NO NO
NO
> VLSHRT NO NO NO
NO
> VSAMBSP OPTIMAL OPTIMAL
> OPTIMAL OPTIMAL
> VSAMEMT YES YES YES
YES
> VSAMIO NO NO NO
NO
> WRKREL YES YES YES
YES
> WRKSEC YES YES YES
YES
> Y2PAST 80 80 80
80
> ZDPRINT YES YES YES
YES
>
> Here's the jobs output:
>
> ICE201I 1 RECORD TYPE IS F - DATA STARTS IN POSITION 1
> ICE751I 0 C5-BASE C6-BASE C7-I31999 C8-I29500 E4-BASE C9-BASE
> E5-I29500 E6-I31999 C4-I31999 E7-I31999
> ICE143I 0 BLOCKSET SORT TECHNIQUE SELECTED
> ICE250I 0 VISIT http://www.ibm.com/storage/dfsort FOR DFSORT PAPERS,
> EXAMPLES AND MORE
> ICE000I 0 - CONTROL STATEMENTS FOR 5650-ZOS, Z/OS DFSORT V2R2 - 09:
> 09 ON MON OCT 02, 2017 -
> OPTION DYNSPC=1024,DYNALLOC=(SYSDA,59),FILSZ=E60000000
> ICE140I 0 END OF PARAMETERS FROM DFSPARM - SYSIN OR SORTCNTL/
> PARAMETER LIST CONTROL STATEMENTS FOLLOW
> OPTION EQUALS
00010000
> ICE146I 0 END OF STATEMENTS FROM SORTCNTL - PARAMETER LIST STATEMENTS
FOLLOW
> SORT FIELDS=(0001,0013,CH,A)
> RECORD TYPE=F,LENGTH=(000049,,)
> OPTION MAINSIZE=00128000
> ICE193I 0 ICEAM2 INVOCATION ENVIRONMENT IN EFFECT - ICEAM2
> ENVIRONMENT SELECTED
> ICE252I 1 PARMLIB OPTIONS WERE MERGED WITH INSTALLATION MODULE DEFAULTS
> ICE089I 1 PRSPM175.J05 .P10 , INPUT LRECL = 49, TYPE = F
> ICE092I 0 MAIN STORAGE = (128000,1048576,1048576)
> ICE156I 0 MAIN STORAGE ABOVE 16MB = (590271,590271)
> ICE127I 0 OPTIONS: OVFLO=RC0 ,PAD=RC0 ,TRUNC=RC0
> ,SPANINC=RC16,VLSCMP=N,SZERO=Y,RESET=Y,VSAMEMT=Y,DYNSPC=1024
> ICE128I 0 OPTIONS:
>
SIZE=1048576,MAXLIM=2097152,MINLIM=1048576,EQUALS=Y,LIST=Y,ERET=ABEND,MSGDDN=SYSOUT
> ICE129I 0 OPTIONS: VIO=N,RESDNT=ALL ,SMF=NO
> ,WRKSEC=Y,OUTSEC=Y,VERIFY=N,CHALT=N,DYNALOC=(SYSDA ,059),ABCODE=MSG
> ICE130I 0 OPTIONS: RESALL=0,RESINV=0,SVC=218
> ,CHECK=Y,WRKREL=Y,OUTREL=Y,CKPT=N,COBEXIT=COB2
> ICE131I 0 OPTIONS:
> TMAXLIM=6291456,ARESALL=0,ARESINV=0,OVERRGN=16384,CINV=Y,CFW=Y,DSA=0
> ICE132I 0 OPTIONS:
> VLSHRT=N,ZDPRINT=Y,IEXIT=N,TEXIT=N,LISTX=N,EFS=NONE
> ,EXITCK=S,PARMDDN=DFSPARM ,FSZEST=N
> ICE133I 0 OPTIONS: HIPRMAX=OPTIMAL,DSPSIZE=MAX
> ,ODMAXBF=0,SOLRF=Y,VLLONG=N,VSAMIO=N,MOSIZE=MAX
> ICE235I 0 OPTIONS: NULLOUT=RC0
> ICE236I 0 OPTIONS: DYNAPCT=75 ,MOWRK=Y,TUNE=STOR,EXPMAX=MAX
> ,EXPOLD=50% ,EXPRES=10%
> ICE750I 0 DC 0 TC 0 CS DSVVV KSZ 17 VSZ 17
> ICE752I 0 FSZ=60000000 RE IGN=0 C AVG=56 0 WSP=4364062 E DYN=16461
12256
>
> ************************************************
> ***** DATE ON SYSTEM DATE FILE = 09/30/17 *****
> ************************************************
>
>
> ****RESERVE MASTER READ COMPLETE ******
>
> ********** TOTAL RECORDS READ ---------- 002434065 **********
> ********** TOTAL RECORDS RETURNED ------ 002434065 **********
>
> ICE247I 0 INTERMEDIATE MERGE ENTERED - PERFORMANCE MAY BE DEGRADED
> ICE805I 0 JOBNAME: PRSPM175 , STEPNAME: J05
> ICE802I 0 BLOCKSET TECHNIQUE IN CONTROL
> ICE906I 0 ST=ABOVE,SR=1048576,RC=0
> ICE907I 0 ST=ABOVE,SA=1048560,NF=1,LF=1048560,SF=1048560
> ICE906I 0 ST=BELOW,SR=1024000,RC=0
> ICE907I 0 ST=BELOW,SA=1023984,NF=1,LF=1023984,SF=1023984
> ICE992I 0 RA 0 WR 0 TR 44
> ICE887I 0 CSES 0,0,0 ES 0,0,0
> ICE886I 0 SYS 0 TSTG 0 FS 0 INIT 0 MAX 0 LEN 0
> ICE915I 0 MOFSZ=4120,MOSZ=0,MOSYS=46973(5),MOSTG=46973,MEML=1048004(1)
> ICE916I 0 MOFR=0402,MOVR=VV
> ICE996I 0
>
ESM=13361357,ESO=232815,ESR=1336135,ESP=7168,ESS=16384,CES=14438400,HSZ=16777216
> ICE997I 0 HWSP=2050781,HMAX=0,MOMAX=12025088,ASV=12025222,EQ=I3,HN=1
> ICE898I 0
>
OMAX=12895727,NMAX=13361357,ENQT=12025222,CMAX=1204224,HU=99,BUN=12256,MD=NK,M0,DU=83,DR=0,HN=1
> ICE880I 0 QP=3 QA=3 HI=1678 LI=1676 MI=1678 TZ=18822 N1=16384
> N2=16384 SZ=169 HN=1
> ICE889I 0 CT=MAX , SB=3, L=0, D=0000, CCW=1MBI
> ICE901I 0 W 01PP15 53PP15 44PP15 1APP15 12PP15 67PP15 27PP15 34PP15
> ICE901I 0 W 2FPP15 66PP15 45PP15 0BPP15 2BPP15 32PP15 26PP15 06PP15
> ICE901I 0 W 22PP15 1FPP15 3EPP15 2EPP15 1BPP15 05PP15 4APP15 46PP15
> ICE901I 0 W 65PP15 04PP15 07PP15 4BPP15 09PP15 30PP15 36PP15 59PP15
> ICE901I 0 W 3APP11 18PP11 03NP11 0ANP11 3DNP11 4FNP11 31NP11 21NP11
> ICE901I 0 W 54NP11 4ENP11 1DNP11 16NP11 4CNP11 3CNP11 17NP11 08NP11
> ICE901I 0 W 11NP11 56NP11 57NP11 15NP11 39NP11 1CNP11 49NP11 62NP11
> ICE901I 0 W 0DNP11 19NP11 60NP11 14NP11 25NP11 13NP11 3FNP11 40NP11
> ICE901I 0 W 41NP11 42NP11 43NP11 23NP11 0CNP11 1ENP11 47NP11 48NP11
> ICE901I 0 W 37NP11 35NP11 2CNP11 2DNP11 4DNP11 2ANP11 0FNP11 50NP11
> ICE901I 0 W 51NP11 52NP11 02NP11 29NP11 55NP11 0ENP11 33NP11 58NP11
> ICE901I 0 W 20NP11 5ANP11 5BNP11 5CNP11 5DNP11 5ENP11 5FNP11 3BNP11
> ICE901I 0 W 61NP11 38NP11 63NP11 64NP11 28NP11 24NP11 10NP11
> SARPAGE 6
> ICE906I 1 ST=ABOVE,SR=590271,RC=0
> ICE907I 1 ST=ABOVE,SA=590248,NF=1,LF=590248,SF=590248
> ICE906I 1 ST=BELOW,SR=452737,RC=0
> ICE907I 1 ST=BELOW,SA=444528,NF=1,LF=444528,SF=444528
> ICE046A 5 SORT CAPACITY EXCEEDED - RECORD COUNT 58081219
> ICE253I 0 RECORDS SORTED - PROCESSED: 58081219, EXPECTED: 60000000
> ICE753I 1 FWK=(59,16461) SWK=(0,0) TWK=(0,0) RWK=(44,176)
> TOTAL=(103,16637) BLK=12256
> ICE278I 1 59 WORK DATA SETS WERE INSUFFICIENT TO COMPLETE THIS SORT
> SO 44 ADDITIONAL WERE USED
> ICE751I 1 DE-BASE D5-I29741 D3-BASE E1-BASE D6-BASE C4-
> I31999 C4-I31999 C4-I31999 C4-I31999 C4-I31999 C4-I31999
> ICE751I 1 C4-I31999 C4-I31999 C4-I31999 C4-I31999 C4-I31999 C4-
> I31999 C4-I31999 C4-I31999 C4-I31999 C4-I31999 C4-I31999
> ICE751I 1 C4-I31999 C4-I31999 C4-I31999 C4-I31999 C4-I31999 C4-
> I31999 C4-I31999 C4-I31999 C4-I31999 C4-I31999 C4-I31999
> ICE751I 1 C4-I31999 C4-I31999 C4-I31999 C4-I31999 C4-I31999 C4-
> I31999 C4-I31999 C4-I31999 C4-I31999 C4-I31999 C4-I31999
> ICE751I 1 C4-I31999 C4-I31999 C4-I31999 C4-I31999 C4-I31999 C4-
> I31999 E8-I29741
> ICE052I 0 END OF DFSORT
> CEE3250C The system or user abend U 046 R=NULL was issued.
> From compile unit D314DC2A at entry point D314DC2A at
> compile unit offset +000017AA at entry offset +000017AA
> at address 0B4017AA.
> <> LEAID ENTERED (LEVEL 02/26/2016 AT 17.55)
> <> LEAID LEAID109 ABEND-AID PROCESSING IGNORED. ABEND SPECIFIED NO DUMP
> <> LEAID PROCESSING COMPLETE. RC=4
>
> JCL:
> //*********************************************************************
> //* P10 - D314DC2A - HOME OFFICE ACCOUNT
> //*********************************************************************
> //P10 EXEC PGM=D314DC2A,
> // COND=(0,LT)
> //*
> //DATEFLE DD DSN=&SYS..RS.MDBC.DATEFLE(0),
> // DISP=SHR
> //*
> //GTAMLIB DD DSN=&SYS..PM.RVOM.GTAMLIB, 0
> // DISP=SHR
> //*
> //RESVIND DD DSN=&SYS..RS.MDBM.D311DA2R(0), 000
> // DISP=SHR
> //*
> //SORTCNTL DD DSN=&SYS..ENDEVOR.CCARDS(&L.SORTCNT),
> // DISP=SHR
> //*
> //DFSPARM DD DSN=&SYS..ENDEVOR.CCARDS(&L.RS17510),
> // DISP=SHR
> //*
> //SYSIN DD DUMMY
> //*
> //PRINTER DD SYSOUT=(B,&L.RSM1752)
> //*
> //SYSOUT DD SYSOUT=*
> //SYSPRINT DD SYSOUT=*
> //SYSUDUMP DD SYSOUT=*
> //SYSABEND DD SYSOUT=*
> //*
> //*
> //*
> //*********************************************************************
> //* END OF PROC PRSPM175
> //*********************************************************************
>
> The PARM currently is:
> OPTION DYNSPC=1024,DYNALLOC=(SYSDA,59),FILSZ=E60000000
>
>
>
> -----Original Message-----
> From: IBM Mainframe Discussion List [mailto:[email protected]
> ] On Behalf Of Vernooij, Kees (ITOPT1) - KLM
> Sent: Monday, October 02, 2017 9:47 AM
> To: [email protected]
> Subject: Re: Sort Question
>
> Apparently your sortwk's are that small, that many more are needed.
>
> Post your sortparameter, displayable with this job:
> //LISTDEF EXEC PGM=ICETOOL
> //TOOLMSG DD SYSOUT=*
> //DFSMSG DD SYSOUT=*
> //SHOWDEF DD SYSOUT=*
> //TOOLIN DD *
> DEFAULTS LIST(SHOWDEF)
> /*
>
> Post the full DFSORT output and the JCL of the step with the error.
>
> This info must give a clue.
>
> Kees.
>
> > -----Original Message-----
> > From: IBM Mainframe Discussion List [mailto:[email protected]]
> > On Behalf Of Pfister, Nathan
> > Sent: 02 October, 2017 15:40
> > To: [email protected]<mailto:[email protected]>
> > Subject: Sort Question
> >
> > List;
> >
> > I have a question dealing with a DFSORT job which I am hoping to get
> > some guidance on.
> >
> > We have a COBOL program which inconsistently gets a SORT CAPACITY
> > EXCEEDED error. They've changed their cards several times with
> > several different options to try and get this to work. Depending on
> > the month sometimes it works and sometimes it doesn't, with their
> > typical OPTION
> > DYNSPC=1024,DYNALLOC=(SYSDA,59)
> >
> > The latest run, we added FILSZ=E60000000
> >
> > In every run it seems to exceed the sort capacity.
> > +ICE046A 5 PRSPM175.J05 SORT CAPACITY EXCEEDED - RECORD COUNT
> > 58081219
> >
> > And the following error as well. Not sure
> >
> > ICE278I 1 59 WORK DATA SETS WERE INSUFFICIENT TO COMPLETE THIS SORT SO
> > 44 ADDITIONAL WERE USED
> >
> > The funny thing is, this has worked with a DYNALLOC of 24...there is
> > nothing else in the system at the time this was running, and plenty of
> > DASD. Obviously I am overlooking some key piece of information.
> >
> > Here's the COBOL for the Sort, which doesn't mean too much to me as I
> > am not a COBOL programmer, so I am sure I am missing parts of the sort
> > call, but this is what I was given...
> >
> > SD S1-SORT-FILE
> > RECORDING MODE IS F
> > DATA RECORDS ARE S10-SORT-REC
> > RECORD CONTAINS 49 CHARACTERS.
> > 01 S10-SORT-REC.
> > 05 S20-SORT-KEY.
> > 10 S20-KEY-LOCATION PIC X(2).
> > 10 S20-KEY-MCO PIC X(2).
> > 10 S20-KEY-PCO PIC X(2).
> > 10 S20-KEY-TREATY PIC X(4).
> > 10 S20-KEY-AS-LINE1 PIC 9(3).
> > 10 S20-KEY-AS-LINE REDEFINES S20-KEY-AS-LINE1
> > PIC 9(2)V9(1).
> > 05 S20-BREAK-KEY-R1 REDEFINES S20-SORT-KEY.
> > 10 S20-TREATY-BREAK PIC X(10).
> > 10 FILLER PIC X(3).
> > 05 S20-BREAK-KEY-R2 REDEFINES S20-SORT-KEY.
> > 10 S20-PCO-BREAK PIC X(6).
> > 10 FILLER PIC X(7).
> > 05 S20-BREAK-KEY-R3 REDEFINES S20-SORT-KEY.
> > 10 S20-MCO-BREAK PIC X(4).
> > 10 FILLER PIC X(9).
> > 05 S30-SORT-BODY.
> > 10 S30-LINE-TYPE PIC 9(1).
> > 10 S30-MONTHLY-WRITTEN PIC S9(7)V9(2) COMP-3.
> > 10 S30-TO-DATE-WRITTEN PIC S9(7)V9(2) COMP-3.
> > 10 S30-NEW-MONTH PIC S9(7)V9(2) COMP-3.
> > 10 S30-THIS-MONTH-EARNED PIC S9(7)V9(2) COMP-3.
> > 10 S30-INFORCE-TO-DATE PIC S9(7)V9(2) COMP-3.
> > 10 S30-LA-COMMISSION PIC S9(7)V9(2) COMP-3.
> > 10 S30-TOT-COMMISSION PIC S9(7)V9(2) COMP-3.
> > EJECT
> >
> > SORT S1-SORT-FILE
> > ASCENDING KEY
> > S20-SORT-KEY
> >
> > If anyone could point me in the right direction on this, I would
> > appreciate it!
> >
> > Nathan Pfister
> > Systems Programmer
> > Donegal Insurance Group
> >
> > E-MAIL CONFIDENTIALITY NOTICE: This e-mail from Donegal Insurance
> > Group may contain CONFIDENTIAL and legally protected information. If
> > you are not an intended recipient, please do not copy, use or disclose
> > this email or its contents to others; and please notify us by calling
> > toll free (800) 877-0600 x7880 or by replying to this message, and
> > then delete it from your system. Delivery of this email to an
> > unintended recipient is not a waiver of any attorney-client or other
> > applicable privilege.
> >
> > ----------------------------------------------------------------------
> > For IBM-MAIN subscribe / signoff / archive access instructions, send
> > email to [email protected]<mailto:[email protected]>
> with the message: INFO IBM-MAIN
> ********************************************************
> For information, services and offers, please visit our web site:
> https://urldefense.proofpoint.com/v2/url?
> u=http-3A__www.klm.com&d=DwIFAg&c=jf_iaSHvJObTbx-
>
siA1ZOg&r=Ae5kuKdL4c910EvfgxokfP66Pm216FnhUBn6gZrM7hw&m=eqeibEw0l0cCuikkdn5VXr0MvBo6ppDwNzEGZ1aTTLc&s=ZEJImDzmqtCV7zJgH5fUvKmdagrwyJSyO4UCFQK9_OE&e=
> . This e-mail and any attachment may contain confidential and
> privileged material intended for the addressee only. If you are not
> the addressee, you are notified that no part of the e-mail or any
> attachment may be disclosed, copied or distributed, and that any
> other action related to this e-mail or attachment is strictly
> prohibited, and may be unlawful. If you have received this e-mail by
> error, please notify the sender immediately by return e-mail, and
> delete this message.
>
> Koninklijke Luchtvaart Maatschappij NV (KLM), its subsidiaries and/
> or its employees shall not be liable for the incorrect or incomplete
> transmission of this e-mail or any attachments, nor responsible for
> any delay in receipt.
> Koninklijke Luchtvaart Maatschappij N.V. (also known as KLM Royal
> Dutch Airlines) is registered in Amstelveen, The Netherlands, with
> registered number 33014286
> ********************************************************
>
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions, send
> email to [email protected]<mailto:[email protected]>
> with the message: INFO IBM-MAIN
>
> E-MAIL CONFIDENTIALITY NOTICE: This e-mail from Donegal Insurance
> Group may contain CONFIDENTIAL and legally protected information. If
> you are not an intended recipient, please do not copy, use or
> disclose this email or its contents to others; and please notify us
> by calling toll free (800) 877-0600 x7880 or by replying to this
> message, and then delete it from your system. Delivery of this email
> to an unintended recipient is not a waiver of any attorney-client or
> other applicable privilege.
>
> ----------------------------------------------------------------------
> 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
This message and any attachments are intended only for the use of the addressee
and may contain information that is privileged and confidential. If the reader
of the message is not the intended recipient or an authorized representative of
the intended recipient, you are hereby notified that any dissemination of this
communication is strictly prohibited. If you have received this communication
in error, please notify us immediately by e-mail and delete the message and any
attachments from your system.
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN