What is the point of this PROC dissertation. If it was for us die-hards,
then we already know this. If it's for the newbies, then it
would/should/could scare the hell out of them.

Since you brought it up, you forgot the ( command, the [ command, the GSUB
command, the RTN command, the '[] nnn' command, the concatenate with the MV
command, the multiple MV command, and the whole boatload of user-exits with
their cryptic syntax.

Also is pattern matching in IF commands, different IF commands, multiple
statement separators, multiple answer separators, ICONV and OCONV, IH, L and
the A"5 command.

I use PQN proc (nee Microdata) every week with a true Microdata client and
often with a UD client with some Microdata switch turned on.

Microdata advanced PQ proc to PQN while regular Pick was advancing with
EXECUTE. IMHO, EXECUTE won and Microdata faded into the sunset. (They had a
few other programming shortcomings that are clearly deficient by comparison
today).

My %2 cents
Mark Johnson
----- Original Message -----
From: "John Jenkins" <[EMAIL PROTECTED]>
To: <u2-users@listserver.u2ug.org>
Sent: Thursday, July 31, 2008 7:27 PM
Subject: RE: [U2] UniData PROC tip: DB command


> And a few more PROC commands for the die-hards:
> (I love them ! (sorry Wally !!)
> (from memory - I think I got it OK)
> BTW:
> H = "Hollerith"
> O=Output literal display text that follows
> Sn -set input buffer position to n (no blanks allowed in most flavours - a
> bit like var<-1>="xx")
> IP: - Input (key data) at current input buffer position with a colon
prompt
> IP %1 input (key data) into input buffer position 1
>
> %n - input buffer position n
> #n - output buffer position n
> &m.n - file buffer m, attribute n - attribute 0 is the ID
> !n - Select buffer n
> M - a "mark" cann be used to go FORWARD (G F) or BACKWARD (G B) to
previous
> or next mark (bad practice - but you can do it)
> C - a comment
> RI / RO - reset input or output buffer
> F-CLEAR n - clear file buffer n
> F-OPEN n - open file buffer n to the specified file - if the open fails
the
> next statement is executed otherwise it skips one statement
> F-READ n - reads specified record into file buffer n - if the read fails
the
> next statement is executed otherwise it skips one statement
> STON - stack on
> X - exit with message
> MV x y- move into buffer x as specified in y (buffer or literal)
> F;%1;C1;+;?%1 - example of RPN math - adding one to input buffer 1 in this
> example:
> e.g. PUSH %1; PUSH character 1; ADD top two stack entries - POPPING them
and
> PUSHING the result on the stack; Store the top stack entry in %1
>
> IF-  (test) - accepts one imperative and no ELSE. Multivalued lists of
> conditions and simple actions allowed
> T - (type a literal or buffer)  - he optional "Sn" displays n spaces, a B
> displays a BELL, a + inhibits CRLF at the end of a display, a comma is
> concatenate.
>
> PQN
> C Proc to test file pointers to see if they work and do count F and DIR
> pointers.
> C
> C %1 holds count of files selected, %2 holds count of good file pointers
> C %3 holds count of bad file pointers, %4 folds count of "F" pointers
> C %5 holds count of DIR pointers, %6 is a work variable for the current
file
> name being processed
> C
> C Not run to check - so please be gentle on typos etc - just an example of
> power
> C if you want you can count multi-level files as well and say how many
> sub-files in each one as an exercise (if you want to !)
> C
> T "Starting file pointer verify at ",+
> HDATE
> P
> RI
> RO
> F-CLEAR 1
> F-OPEN 1 VOC
> XBad Account - can't open VOC file
> MV %1 "0"
> MV %2 "0"
> MV %3 "0"
> MV %4 "0"
> MV %5 "0"
> HSSELECT VOC WITH F1 = "F" "f" "DIR" "dir"
> STON
> HPQ-SELECT 1
> PH
> 10 MV %6 !1
> IF # %6 G 30
> F-READ 1 %6
> G 20
> IF &2.1 = F^253f^253DIR^253dir  G 15^25315^25317^25317
> G F
> 15 F;%4;C1;+;?%4
> G F
> 17 F;%5;C1;+;?%5
> M
> F;%1;C1;+;?%1
> F-CLEAR 2
> F-OPEN 2 %6
> G 20
> F;%2;C1;+,?%2
> G 10
> 20 F;%3,C1,+,?%3
> T "File ,"%6," failed to open !",B
> G 10
> 30 T S1
> T "Run complete at ",+
> HDATE
> P
> T "Checked ",%1," files: ",%2," good pointers and ", %3," bad pointers"
> T %4," hashed files, ",%5," Directory files."
>
> Regards
>
> JayJay
> -------
> u2-users mailing list
> u2-users@listserver.u2ug.org
> To unsubscribe please visit http://listserver.u2ug.org/
-------
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/

Reply via email to