[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
MCL 2.01b/Excel 3.0 Communica
- To: 72110.1107@COMPUSERVE.COM
- Subject: MCL 2.01b/Excel 3.0 Communica
- From: STEVE.M@AppleLink.Apple.COM (Aladdin Systems,Steven Mitchell,PRT)
- Date: 19 Mar 92 13:11 GMT
- Cc: INFO-MCL@CAMBRIDGE.APPLE.COM
To: Bruce Lester 72110.1107@CompuServe.COM
From: Steve Mitchell
Sub: MCL 2.01b/Excel 3.0 Communication
> I would like to build an application using Microsoft Excel 3.0 macros that
> could send requests to a MCL program running in the background.
> I would like the Excel macro to be able to send the request to MCL, wait for
> LISP to finish processing the request, and continue processing the next Excel
> macro command when LISP returns the result.
> I built a database using MCL and would like to use Excel as the user
> interface, database query front end, and reporting tool. Any ideas?
1. Don't use Excel macros; it's the worst programming language I've used
in 10 years, and I should know because I use it a lot. It's unusable
for decent user interfaces, database query front ends, and even lousy
and slow for laying out reports, and has a disgusting interface for
externals. What more could you expect from Register BASIC on the Mac?
Fortunately, there is an alternative: MCL or HyperCard 2.1 for the
user interface and front end, and Claris Resolve for the back end.
2. Do use AppleEvents.
MCL and HyperCard 2.1 can both send and receive AppleEvents, and
Resolve can receive them, but does not have sending builtin. This
is adequate for what I proposed above, is documented, and I've
seen it work. Excel has no support for AppleEvents.
3. Next week I will finish developing externals in Think C for both
Excel and Resolve to send a custom AppleEvent, in order to introduce
a new verb into their macro languages. I can probably send you
some generic AppleEvent-sending code for these apps if you need it.
If you insist on being spreadsheet-centric, I would still encourage
you to use Resolve; it has a superior scripting language and user
interface, half the AppleEvents support built-in, and a thorough
tutorial on writing externals so you can build the other half.