| T.R | Title | User | Personal Name
 | Date | Lines | 
|---|
| 353.1 | Place to steal from? | IOSG::MAURICE | IOSG ain't a place to raise a kid | Mon Mar 30 1992 09:54 | 15 | 
|  |     Hi,
    
    I think the technique you want is to alternate two phantoms. For an
    example have a look at form EM$INDEX. Symbols #EMIPH and #NEWPH are
    used to contain either "*EMI1" or "*EMI2". At the end of the ~~BIND~~
    XOP the logic is to test whether the #NEWPH has any records, and if so
    to do the following:
    
    OA$SCL_EXIT (break connection between scrolled region and phantom)
    BIND_BREAK  (old phantom)
    OA$SCL_INIT (make connection with new phantom)
    
    Cheers
    
    Stuart
 | 
| 353.2 | Another suggestion | SHALOT::NICODEM | Who told you I'm paranoid??? | Mon Mar 30 1992 14:42 | 24 | 
|  | 	The alternating of two phantoms can certainly work, and you already have
examples of that in EM and WP.  However, I wonder, in your specific case, if
there might not be a simpler, quicker method.
	You indicated that you *may* want to change the scrolled region, IF
there are records in the new "collection".  Well, you have some kind of RSE that
you're using to BIND the new phantom; why not first just run a FOR loop and
check OA$SEL_COUNT to see if it's non-zero?  In other words, if your eventual
BIND statement would say:
	BIND *PHANTOM TO dataset WITH rse
then right before that, do something like:
	FOR dataset WITH rse
	.IF OA$SEL_COUNT NE 0 THEN BIND *PHANTOM TO dataset WITH rse
	I realize that it may be a bit redundant, but you'll have to decide for
your specific case if that'll work.
	F
	P.S.  Our time doesn't change until *next* weekend...  so we're still
allowed to have crummy weather!
 | 
| 353.3 | Gemini | BRUMMY::MARTIN::BELL | Martin Bell, TCC, Birmingham UK | Mon Mar 30 1992 14:48 | 10 | 
|  | Thanks for the pointer Stuart!
I started looking at standard ALL-IN-1 code, but just about every INDEX form
seems to use a different technique, thus i started from first principles.
The double-barrelled phantom alternator looks like the way to go!
Cheers,
Martin
 | 
| 353.4 |  | BRUMMY::MARTIN::BELL | Martin Bell, TCC, Birmingham UK | Mon Mar 30 1992 15:27 | 24 | 
|  | Re: .2
Frank,
I don't really want to perform unnecessary FORs as the source data-set will
probably be quite large and the RSE may be quite complex.
Even if i do a "FOR FIRST dataset WITH rse" it could take quite a search!
I reckon the dubbul-dabble is the way to go (and i have only just got my head
around the single one)  :-)
Incidentally, is there still a limit to the size of the BIND rse within named
data - is it best to use a script for complex (ie LONG) expressions?
Cheers,
mb
p.s.
Looking out of the window, it appears that we put our clocks backward 6 hours -
it is nearly dark outside and it is only 3:30!
 | 
| 353.5 | I just couldn't resist... 8-) | SHALOT::DUNCAN | Joe - CIS/EIC Doc. Mgmt. Solution Set Consultant | Mon Mar 30 1992 18:08 | 9 | 
|  | >	Incidentally, is there still a limit to the size of the BIND rse within named
>	data - is it best to use a script for complex (ie LONG) expressions?
	 Given that Rdb can handle much more complex "RSE's" than can
	 ALL-IN-1, one option might be to migrate your application to Rdb,
	 use SRA, and bind your dataset to a view!
	 Joe Duncan @ OPA
    
 |