Yes John ! But now, back with a simplified code, [code] "! SPECs", " a: 54.5 .", " if (£1/=a) then", " set £1:=a", " set £2:=1", " else", " set £2+=1", " endif", " 1-* 1", " print £2 picture 99999 nextword", "!> $$TEMP$$ $$TEMP$$ A3"
a: value can be 60102, 30051 but also 1113. As shown column 90, £2 is not reseted to 1 when £1 is not equal to a: As I understand it, at first record £1 can't be equal because it is not set to anything; at second record £1 is set to the previous value a: and compared to the value a: found in this second record, and it matches. ..+....3....+....4....+....5....+....6....+....7....+....8....+....9...> 07-E8 DEVTYPE = 3390-0C CYLS = 60102 0175-CYT91 SSID = 0309 02094 07-E8 DEVTYPE = 3390-0C CYLS = 30051 0175-CYT91 SSID = 030A 02095 Now if I change 60102 to 6010A in the thrid record and I receive : FPLSPV1038E Not a decimal number: "6010A" FPLMSG003I ... Issued from stage 5 of pipeline 1 FPLMSG001I ... Running "SPECs a: 54.5 . if (£1/=a) then set £1:=a" FPLSPV1426I ... Evaluating "£1/=a" FPLSPE1490I Processing item number 2: if (£1/=a) then Ok, I understand i am not using the good syntax for set and if. I did many tests but still not find it... [/code] De : CMS/TSO Pipelines Discussion List <cms-pipeli...@listserv.meduniwien.ac.at> de la part de John P. Hartmann <m...@jphartmann.eu> Date : samedi, 26 novembre 2022 à 15:03 À : cms-pipeli...@listserv.meduniwien.ac.at <cms-pipeli...@listserv.meduniwien.ac.at> Objet : Re: IF testing characters The else clause is never executed because you unconditionally assign counters 1 through 5 at the beginning of each cycle. Perhaps you should delete the first five assignments. Or use if first() to initialise counters. On 11/26/22 14:44, a.benveni...@free.fr wrote: > The last test I did do not send any error message but £4 and £5 are not > incremented as it is supposed based on the if : > > From the q da details command : > a is the cyls value > b is the serial number value > c is the ssid value > > "! SPECs", > " a: 54.5 .", > " b: 67.10 .", > " c: 85.4 .", > " set £1:=a", > " set £2:=b", > " set £3:=c", > " set £4:=0", > " set £5:=0", > " if (£1==a & £2==b & £3==c) then", > " set £4+=1", > " set £5:=1", > " else", > " set £1:=a", > " set £2:=b", > " set £3:=c", > " set £4:=1", > " set £5+=1", > " endif", > " 1-* 1", > " print £4 picture 99999 nextword", > " print £5 picture 99999 next", > "!01:" > > > De : CMS/TSO Pipelines Discussion List > <cms-pipeli...@listserv.meduniwien.ac.at> de la part de John P. Hartmann > <m...@jphartmann.eu> > Date : samedi, 26 novembre 2022 à 14:15 > À : cms-pipeli...@listserv.meduniwien.ac.at > <cms-pipeli...@listserv.meduniwien.ac.at> > Objet : Re: IF testing characters > ! is the vertical bar (|) on most European terminals. It would have > been nice to know the actual error message. > > On 11/26/22 12:14, Kris Buelens wrote: >> I don't understand what these >> !!!! are supposed to do