Path: utzoo!mnetor!uunet!lll-winken!lll-tis!ames!oliveb!sun!halff@nprdc.arpa From: halff@nprdc.arpa (Henry Halff) Newsgroups: comp.sys.mac.hypercard Subject: Re: Re: Re: Reports (tm) for HyperCard Message-ID: <51896@sun.uucp> Date: 4 May 88 04:35:59 GMT Sender: news@sun.uucp Distribution: comp Lines: 46 Approved: hyper-hackers%plaid@sun.com > Wade Blomgren, in a private mail writes; Might it be possible to leave > the "report card" in another otherwise empty (separate) stack until it > is actually needed to produce a report in your main stack, then have > your stack go get the "report card" and paste it into itself, deleting > it when the the report process is complete? Or have the report card paste itself into your main stack; see below. > > I think so, but didn't think of it and haven't tried it. Does someone > have an answer? I might. Make a stack (say "Reports Master") with one or more report cards in it. Design layouts for these cards that generate reports for any of the backgrounds in any of your data stacks. (You needn't install a report card in any of your data stacks to do this.) Then add a button to the ReportCard background. The button (call it "External Print") should have the following script. on mouseUp put "Report on what stack?" get sfgetfile("STAK") if it is empty then hide message exit mouseUp end if push this card domenu "Copy Card" go to it domenu "Paste Card" send mouseUp to background button Print domenu "Delete Card" pop card end mouseUp To use the beast, first select a layout (as usual). Then push the External Print button with the above script. You will be asked to choose a stack, and can choose any data stack that has a background for the selected layout. The script will paste a report card into the target stack, print the report, delete the report card from the target stack, and return to the original stack. You'll never need to install a report card in any other stacks. All layouts can be designed in the Master Reports stack as long as their backgrounds are set to the appropriate data stacks. Thanks to Wade & Eugene for coming up with this idea.