Effective December 3, NetApp adopts Microsoft’s Business-to-Customer (B2C) identity management to simplify and provide secure access to NetApp resources.
For accounts that did not pre-register (prior to Dec 3), access to your NetApp data may take up to 1 hour as your legacy NSS ID is synchronized to the new B2C identity.
To learn more, read the FAQ and watch the video.
Need assistance? Complete this form and select “Registration Issue” as the Feedback Category.

Active IQ Unified Manager Discussions

WFA User Input Choices / Drop-Down Menu

A_Campbell

I'm wondering if anyone could provide advice or get me pointed in the right direction. I want to have a CIFS Share created on an existing volume that is chosen based on user choices. For example....

 

I want the user to select location, application, and environment using dropdown menus, like this:

 

Select location: Hawaii...Ohio.... Texas

Select application: app1...app2....app3.....app4

Select environment: Prod....Test

 

Then, based on choices, a CIFS share is created. For example, if Ohio, app1, and Test are selected, the share would be created on VolumeX. Other choice combinations would indicate VolumeY or VolumeZ would be used.

 

I'm not familiar with how to give the user choices from a dropdown menu in WFA. I'm also not sure how to use the combination of choices to determine the volume where the CIFS share would be created. 

 

 

Anyone worked on an example like this before?

 

 

Thanks

 

1 ACCEPTED SOLUTION

dkorns

WFA supports two types of dropdown user inputs: 

 

  • ENUM - where the wfa-programmer codes a comma separated list of dropdown choice values (Hawaii, Ohio, etc)
  • QUERY - where the wfa-programmer provides SQL code to present row-values from a WFA Cache DB dictionary/table (table: location with rows for Hawaii, Ohio, etc)

The first is easist to implement. However, it's not extensible by non-wfa-programmers and once you get a catalog of several workflows that may need this construct you've got to edit each workflow's ENUM choices. 

 

Look into EDM-Pack at the automationstore.netapp.com (or in this forum at: http://nt-ap.com/2nhZ2nl with a UserGuide). It lets you build those sorts of tables (for the UI QUERY fields) by just setting them up as tables in Microsoft Excel. Then in WFA the SQL would be something like "SELECT name,description FROM mycompanies.location" and the dropdown is your table of locations.

 

How to determine which volume the share points to? ... that could be based on other information in your tables, and/or MVEL expressions like: ( from your example exactly )

 

   ( $location == 'Ohio' && $application == 'app1' && $environment == 'test' ) ?VolumeX :VolumeY

 

Where "( ) ? :" is a WFA MVEL IF-THEN-ELSE construct (== is 'equal test ...  && is 'and' ... || is 'or' ... ? is THEN ... : is ELSE). This is a pretty painful way to do it. It would work better if you can embed info (other table columns) in your tables to make it easier to determine the volume but I don't know enough about your business-logic needs to offer more.

View solution in original post

2 REPLIES 2

dkorns

WFA supports two types of dropdown user inputs: 

 

  • ENUM - where the wfa-programmer codes a comma separated list of dropdown choice values (Hawaii, Ohio, etc)
  • QUERY - where the wfa-programmer provides SQL code to present row-values from a WFA Cache DB dictionary/table (table: location with rows for Hawaii, Ohio, etc)

The first is easist to implement. However, it's not extensible by non-wfa-programmers and once you get a catalog of several workflows that may need this construct you've got to edit each workflow's ENUM choices. 

 

Look into EDM-Pack at the automationstore.netapp.com (or in this forum at: http://nt-ap.com/2nhZ2nl with a UserGuide). It lets you build those sorts of tables (for the UI QUERY fields) by just setting them up as tables in Microsoft Excel. Then in WFA the SQL would be something like "SELECT name,description FROM mycompanies.location" and the dropdown is your table of locations.

 

How to determine which volume the share points to? ... that could be based on other information in your tables, and/or MVEL expressions like: ( from your example exactly )

 

   ( $location == 'Ohio' && $application == 'app1' && $environment == 'test' ) ?VolumeX :VolumeY

 

Where "( ) ? :" is a WFA MVEL IF-THEN-ELSE construct (== is 'equal test ...  && is 'and' ... || is 'or' ... ? is THEN ... : is ELSE). This is a pretty painful way to do it. It would work better if you can embed info (other table columns) in your tables to make it easier to determine the volume but I don't know enough about your business-logic needs to offer more.

View solution in original post

A_Campbell

@dkorns

 

This is a tremendous help to get me started on this. I will move forward with your suggestions, really appreciate the advice.

 

 

 

Adam

 

Announcements
NetApp on Discord Image

We're on Discord, are you?

Live Chat, Watch Parties, and More!

Explore Banner

Meet Explore, NetApp’s digital sales platform

Engage digitally throughout the sales process, from product discovery to configuration, and handle all your post-purchase needs.

NetApp Insights to Action
I2A Banner
Public