On linux
pro -basekey ini -s 500
shows following error 'The -s parameter requires a numeric argument. (11996)'
I spent the better part of an hour debugging and trying to figure out why 500 wasn't numeric.
The error should have been "-basekey is not supported on this platform" or "unknown option -basekey"
pro -basWhateverImistypehere ini nonnumerric 500 t.txt 500 -p echoparam.p
should show "unknown option -basWhateverImistypehere" but also shows "The -s parameter requires a numeric argument. (11996)"
This kind of unclear errors will occur each time Progress identifies part of a parameter as valid.
pro -basekey ini 500 500 t.txt 500
is also
pro -b -a ini -s 500 -e 500 -k t.txt -e 500
I understand this kind of parsing is kept in place because it used to work in the past. But I think the error reporting should show the entire parameter it cannot parse and not a single option that also happens to exist on its own.
Personally I don't mind if the concatenating of parameters is dropped altogether as , I consider
"-LnB 10000 25 1000" instead of "-L 10000 -n 25 -B 1000" as very unclear.
+1
I have had a similar situation when accidentally using a new client parameter with an older OpenEdge version (which did not have support for the parameter). I don't remember which parameter is was (possibly -rereadfields), but I remember that the error message was quite misleading ("You have not supplied a parameter for argument -e" or something like that).
I agree.
Some way to see the parameter resolution could also help with this and more, e.g. a command line utility that shows the effective parameters after removing redundant duplicates and indicate where it comes from.
EXAMPLE
---------------SomeDB.pf---------------------------
#SomeDB.pf
-s 50
-db SomeDB -N tcp -S 5432 -H somehost
-db AnotherDB -N tcp -S 5455 -H somehost
-Bt 500
---------------EOF-----------------------------------
------------------SomeStuff.pf---------------------
#SomeStuff.pf
-pf SomeDB.pf
-s 80
-----------proenv shell------------------------------
proenv> $DLC/bin/showparam -s 30 -pf someStuff.pf -Bt 100 -tmpbsize 8 mydb -x 5461 -H somehost -zn - TB 40
Parsing: -s 30 -pf someStuff.pf -Bt 100 -tmpbsize 8 mydb -x 5461 -H somehost -zn -TB 40
PF-FILES
-pf SomeStuff