EG 3.0 and the forthcoming version, EG 4.1, are both built/tested using .NET 1.1. (.NET 2.0 only recently became available in production, too late for SAS to consider switching framework versions...)
That means that the .NET 1.1 runtime is used in process when running EG, and that pretty much restricts custom add-in tasks to .NET 1.1 for now.
Now, I know that folks on the cutting edge will want to use .NET 2.0 to build their custom tasks -- it's the latest and greatest technology and there are some great capabilities in it. It is possible to tweak the EG configuration to run with the .NET 2.0 runtime; however, this configuration has not been tested as extensively as the default .NET 1.1 environment and cannot be officially supported at this time.
In the next few weeks we hope to have a statement about what you can do here, how it's supported, and perhaps an example or two.
.NET 2.0 is a huge release. I know that there are some risks here with using 2.0 based upon testing, etc. but the advantages are great (generics, nullable types, VS2005). We use generics a lot as well as nullable types.
Any examples you can provide for supporting 2.0 would be great.
We would like to port some of our SAS add-ins to EG but we use 2.0 too much. It cuts our coding time down by 25% at least. We do 1.1 as well but I can tell a massive productivity hit whenever we sign up for a 1.1 task. That is mainly due to the editor, BTW. Generics are great but if we need to box/unbox we will.
This allows you to take advantage of extra productivity features in the VS2005 IDE, but still build custom tasks that use .NET 1.1 (necessary for EG 3.0 and 4.1 support).
There are some caveats: you won't be able to use some of the .NET 2.0 features. That includes partial classes, which are automatically employed by the VS2005 forms designer.
We plan to do some in-house testing of this process and then provide a more detailed write-up of how this might work. However, I didn't want to wait until that's complete before sharing this information with you, in case it might help you immediately.
Hi Chris and others!
I gave a presentation on "customized analyses with SAS Enterprise Guide" (in Finnish) at SAS Forum Finland in February. I compared three alternatives to do custom analytics with EG: macros, stored processes and add-ins. My example add-in was a statistical analysis task that uses the new ods graphics of LIFETEST and the class statement of TPHREG.
Many listeners were interested in the possibilities that I tried to demonstrate, and we could agree that a libname generator would have been a useful simple add-in...
I intend to deploy some advanced statistical analytics in an easy-to-use EG look and feel for customers who have specific business needs that can be addressed with specific analytics. One such case is currently under development and I look forward for many more. The potential is huge (as it allways is with SAS), and the process of building an add-in is quite easy with for example Visual Studio .NET.
Sounds like a great presentation! When I present on this topic, I make a similar distinction among the options for custom analyses: from simple (code and macros) to more advanced (stored processes) to the very sophisticated (custom tasks). It all depends on the audience and need.
You'll be happy to know that in EG 4.1 there is an Assign Library tool, which generates LIBNAME statement code for you.