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

Reply via email to