Quick and OMNIDEX.
Nancy Tietz
ntietz@mcare3.med.umich.edu
Tue, 8 Jun 1999 13:10:36 -0400
We always do an INITIALIZE procedure for Omnidex screens. This does the
initial seq read for you and gets something called 'base-id'. Example:
( TEMP BASE-ID CHAR*5 RESET AT STARTUP )
GET <<dataset name here>> SEQUENTIAL
LET CONTROL-CMD = "BASEID($LASTGET);"
DO EXTERNAL OMNIFINDCONTROL(CONTROL-CMD,BUFFER,MESSAGE)
IF MESSAGE <> " "
THEN ERROR = MESSAGE
ELSE LET BASE-ID = LJ(TRUNC(BUFFER))
then at the start of the POSTPATH: (because we do more than 1 option of
omnifinds):
LET CONTROL-CMD="RESET(LEAD)BASE " + BASE-ID + ";" ;12/05/96
DO EXTERNAL OMNIFINDCONTROL(CONTROL-CMD,BUFFER,MESSAGE)
IF MESSAGE <> ""
THEN ERROR = MESSAGE
then for the actual omnifind within postpath: (note the use of BASE-ID that
you got in the INITIALIZE):
LET CRITERIA = TRUNC(PHONE) + ";"
LET SEARCH-KEY = "LEAD.PHONE(BASE " + BASE-ID +");"
DO EXTERNAL OMNIFIND(SEARCH-KEY,CRITERIA,QUALIFY-COUNT,MESSAGE)
IF MESSAGE <> ""
THEN ERROR = MESSAGE
ELSE INFO = ASCII(QUALIFY-COUNT) + " Entries qualified"
then the FIND procedure just has the
GET LEAD SEQUENTIAL
I hope this helps!
-----Original Message-----
From: Leo Leal [mailto:Leo.Leal@billingconcepts.com]
Sent: Tuesday, June 08, 1999 12:58 PM
To: powerh-l@lists.swau.edu
Subject: Quick and OMNIDEX.
Hi all,
I have a problem with a screen that uses the OMNIFIND intrinsic. The screen
is called from a higher level screen that lists the values from a detail
data set in a cluster. The user does a find and using the OMNIFIND intrinsic
will return a chain of records and display them on the screen. Then we have
a DESIGNER 1 procedure that calls a detail level screen for the record
selected. It is the second screen that we have a problem with. On the second
screen we receive the key value to retrieve the record. This value is used
by the OMNIFIND intrinsic. At debug I can see that the qualifying count was
1 but then the get sequential part of the FIND procedure reads from the
beginning of the data set and does not display the record I selected.
We are using Powerhouse v819c1 on an HP3000 with MPE/ix 6.0.
Here are some snippets of the code.
Main screen call to passing screen.
PROCEDURE DESIGNER 1
BEGIN
LET T-PASSING = DIV-CODE OF USF-LEC-COST + &
LEC-NO OF USF-LEC-COST + &
OCN-NO OF USF-LEC-COST + &
STATE OF USF-LEC-COST + &
END-DATE OF USF-LEC-COST + &
LIBRARY-CODE OF USF-LEC-COST + &
";"
RUN SCREEN USFCSTXS.QUICKPRG PASSING T-PASSING MODE F
END
Receiving screen.
PROCEDURE POSTPATH
BEGIN
IF PATH = 1
THEN BEGIN
LET CONTROL-CMD = "RESET(USF-LEC-COST)"
DO EXTERNAL OMNIFINDCONTROL(CONTROL-CMD,BUFFER,MESSAGE)
LET SEARCH-KEY = "USF-LEC-COST.ULC-KEY-NRECID;"
LET CRITERIA = T-PASSING
DO EXTERNAL OMNIFIND(SEARCH-KEY,CRITERIA,QUALIFY-COUNT,MESSAGE)
END
IF MESSAGE <> ""
THEN BEGIN
ERROR = MESSAGE
END
END
PROCEDURE PATH
BEGIN
LET PATH = 1
END
PROCEDURE FIND
BEGIN
GET USF-LEC-COST SEQUENTIAL
END
Thanks
Leonel Leal II
Programmer/Analyst
Billing Concepts
Direct: 210-949-7268
E-mail: leo.leal@billingconcepts.com
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
Subscribe: "subscribe powerh-l" in message body to majordomo@lists.swau.edu
Unsubscribe: "unsubscribe powerh-l" in message to majordomo@lists.swau.edu
powerh-l@lists.swau.edu is gatewayed one-way to bit.listserv.powerh-l
This list is closed, thus to post to the list, you must be a subscriber.
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
Subscribe: "subscribe powerh-l" in message body to majordomo@lists.swau.edu
Unsubscribe: "unsubscribe powerh-l" in message to majordomo@lists.swau.edu
powerh-l@lists.swau.edu is gatewayed one-way to bit.listserv.powerh-l
This list is closed, thus to post to the list, you must be a subscriber.