PDA

View Full Version : Another Suite Question



rguggisberg
08-28-2013, 12:14 PM
I have been making good use of 'FEATURE[feature-name].actionState' for some time. Is there a way to make that more useful in the case of multiple releases such as:

FEATURE[feature-name[MyVariable]].actionState
or
FEATURE[feature-name[ReleaseName]].actionState

That way I could have one Custom Setup wizard page, instead of having one for each release.
Thanks!

MichaelU
09-09-2013, 10:00 AM
This isn't possible today. (The current implementation doesn't do an embedded property lookup; instead it treats the whole name--brackets included--as one long property name.) I think we'll have better luck exploring one of two alternate approaches:

Better understand what you're doing, and support it natively in the FeatureTree control (or a variant thereof), or
Apply some xml transforms or other automated modifications of your project before each build.

Which of those are you more interested in discussing?

rguggisberg
09-09-2013, 02:29 PM
Michael,
Thanks for the reply. I have 2 releases in the Suite. Let's call them ReleaseA and ReleaseB. My Suite Feature tree currently looks like this:
Features
• Support
• Database
• WorkstationReleaseA
• WorkstationReleaseB
• ServerReleaseA
• ServerReleaseB
• BackgroundTasks
• WebServer

1. For a Workstation installation I install Support and one of the 2 Workstation releases
2. For a Server installation I install Support, Database, one of the 2 Server releases, and BackgroundTasks
3. For Web Server I install all features in 2. above and WebServer
4. For a custom setup the user can pick and choose features for that release

I tried to upload an RTF file with screen shots, but the "File is too large".... so we will have to do without the visual. What is the size limit?

The Wizard Pages in question are:
InstallationWelcome (1 wizard page works well for multiple features)

MaintenanceWelcome (1 wizard page works well for multiple features except that for the 'Click - Events' for my Install/Uninstall check boxes require 2 different 'Set Active Pages'... 1 for each release) to go to MaintenanceFeaturesA or MaintenanceFeaturesB

InstallationType (1 wizard page works well for multiple features except that for the 'Click - Events' for my Custom Installation Type requires 2 different 'Set Active Pages'... 1 for each Release) to go to MaintenanceFeaturesA or MaintenanceFeaturesB

MaintenanceFeatures - Need 2 of this page because I need to specify the Release name in the Property for the checkboxes. For example:
FEATURE[WorkstationA].actionState==install
or
FEATURE[WorkstationB].actionState==install
That is why I was wanting to be able to do something like:
FEATURE[feature-name[ReleaseName]].actionState==install

It would be nice not to have to maintain 2 nearly identical MaintenanceFeatures pages.
I am open to suggestions. Is it possible that I could resolve this by setting another property using a condition in an OnBegin Event?

MichaelU
09-10-2013, 08:42 AM
Take me up a level - why do you use check boxes rather than the feature selection tree?

Or, if you want to stay in the nitty gritty, you can always use the trick of defining two different check boxes in the same location (one for each feature variant), but only make one of them visible based on something else.

rguggisberg
09-10-2013, 12:04 PM
Thanks Michael,


The Feature Selection tree is good for a 1st time install. The user checks the features they want to install. But on a Maintenance install, it is easy to lose track of which features are already installed. Yes, the installed features are checked; but if you uncheck one or 2 and check an unchecked one you can quickly lose track of which features are marked for install and which are marked for uninstall. So I have 2 columns of boxes; 1 for Install and 1 for Uninstall. The Install checkbox is visible and enabled if the feature is available for install; the Uninstall checkbox is visible and enabled if the feature is already installed (available for uninstall).

Thanks for the suggestion about having multiple checkboxes in the same location. I put the proper conditions on them for visibility and am able to do everything I wanted. I should have thought of that myself :)

One more thing... it does not look like there is a way to move or change the order of the Click Events (see below). Maybe the order doesn't matter?

10204