HP3000-L Archives

January 2007, Week 4

HP3000-L@RAVEN.UTC.EDU

Options: Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
Larry Barnes <[log in to unmask]>
Reply To:
Larry Barnes <[log in to unmask]>
Date:
Fri, 26 Jan 2007 08:16:57 -0800
Content-Type:
text/plain
Parts/Attachments:
text/plain (135 lines)
Hello gang,

I'm am having issues with an MPEX expression file; shown below.  It's
used for extracting Database info; shortened version of Vesoft's DB
expression file.

My problem is if the last data set in my selection is a Jumbo then it
would display that information 3 lines below the previous line being
displayed.  I added a cheat command at the end to move the cursor up 3
lines and then print the final data set (if it was a jumbo).

Does anyone know of a way to get the expression to display this last
jumbo data set without the gyrations I'm going through?  I would email
this to Vesoft but I don't' have a support email address to send it to.


Here's the text.

	VAR CALCPCT:       REAL;
	VAR HOLDCAPACITY:  INTEGER;
	VAR HOLDENTRIES:   INTEGER;
	VAR HOLDFILE:      STRING[8];
	VAR HOLDNAME:      STRING[8];
	VAR HOLDPCT:       STRING[4];
	VAR HOLDSECT:      INTEGER;
	VAR HOLDSET:       STRING[16];
	VAR HOLDTYPE:      STRING[2];
	VAR PREVGROUPACCT: STRING[17];
	VAR PREVROOT:      STRING[8];
	VAR JUMBO:         BOOLEAN;
	VAR CHUNKS:        INTEGER;

	HOLDNAME:=   " ";
	HOLDFILE:=   " ";
	HOLDSET:=    " ";
	HOLDTYPE:=   " ";
	HOLDENTRIES:=  0;
	HOLDCAPACITY:= 0;
	HOLDSECT:=     0;
	CALCPCT:=      0;
	JUMBO:=    FALSE;
	PREVGROUPACCT:='';
	PREVROOT:='';
	CHUNKS:= 1;

	SUBROUTINE PRINTEM;
	 BEGIN
	  WRITELN (HOLDNAME:8," ",
	           HOLDSET:16,"  ",
	           STRWRITE(HOLDTYPE:3:'LEFTJUST'),
	           STRWRITE(HOLDENTRIES:10:'RIGHTJUST')," ",
	           STRWRITE(HOLDCAPACITY:10:'RIGHTJUST')," ",
	           STRWRITE(CALCPCT:6),"%"," ",
	           STRWRITE(HOLDSECT:10:'RIGHTJUST'),"   ",
	           STRWRITE(CHUNKS:2:'RIGHTJUST')
	          );
	  HOLDNAME:=   " ";
	  HOLDFILE:=   " ";
	  HOLDSET:=    " ";
	  HOLDTYPE:=   " ";
	  HOLDENTRIES:=  0;
	  HOLDCAPACITY:= 0;
	  HOLDSECT:=     0;
	  CALCPCT:=      0;
	  CHUNKS:=       1;
	  JUMBO:=    FALSE;
	 END;

	SUBROUTINE LINEITEM;
	 BEGIN
	  IF INTCODE = -409 THEN
	   BEGIN
	    HOLDFILE:= LFT(FILE,8);
	    HOLDSECT:= HOLDSECT + SECTORS;
	    CHUNKS:= CHUNKS + 1;
	    JUMBO:= TRUE;
	   END
	  ELSE
	   BEGIN
	   IF LFT(FILE,8) <> HOLDFILE and HOLDFILE <> " " THEN
	    BEGIN
	     IF HOLDSECT >= 16776704 THEN
	      HOLDTYPE:= HOLDTYPE + "J"
	     ELSE
	      HOLDTYPE:= HOLDTYPE + " ";
	     PRINTEM;
	     HOLDNAME:=     FILE;
	     HOLDSET:=      DBSETNAME;
	     HOLDTYPE:=     DBSETTYPE + " ";
	     HOLDENTRIES:=  DBSETENTRIES;
	     HOLDCAPACITY:= DBSETCAPACITY;
	     HOLDSECT:=     SECTORS;
	     IF DBSETFULLNESS <=.0005 THEN 0
	     ELSE CALCPCT:= DBSETFULLNESS*100;
	    END
	   ELSE
	    HOLDNAME:=     FILE;
	    HOLDSET:=      DBSETNAME;
	    HOLDTYPE:=     DBSETTYPE + " ";
	    HOLDENTRIES:=  DBSETENTRIES;
	    HOLDCAPACITY:= DBSETCAPACITY;
	    HOLDSECT:=     SECTORS;
	    IF DBSETFULLNESS <=.0005 THEN 0
	    ELSE CALCPCT:= DBSETFULLNESS*100;
	    IF INTCODE = -401 THEN PRINTEM;
	   END;
	 END;

	MPEXHEADER1:="FILENAME SET NAME        TYPE ENTRIES    "+
	         "CAPACITY   % FULL  SECTORS    CHUNKS";
	MPEXHEADER2:="-------- --------------- ---- ---------- "+
	         "---------- ------- ---------- ------";

	FOR RFILE IN MPEXFILESETGENERAL(1, TRUE)
	 SELECT INTCODE=-401 OR INTCODE=-408 OR INTCODE=-409
	 DO
	  BEGIN
	   IF GROUP+'.'+ACCOUNT=PREVGROUPACCT AND
	      STRRDROP(TOKEN(FILE,'.'),2)<>PREVROOT THEN
	    WRITELN
	   ELSE
	    LINEITEM;

	    PREVGROUPACCT:=GROUP+'.'+ACCOUNT;
	    PREVROOT:=STRRDROP(TOKEN(FILE,'.'),2);
	  END;
	  IF JUMBO THEN
	   BEGIN
	    WRITELN("AAA");
	    PRINTEM;
	   END;

* To join/leave the list, search archives, change list settings, *
* etc., please visit http://raven.utc.edu/archives/hp3000-l.html *

ATOM RSS1 RSS2