Active IQ Unified Manager Discussions

Question about finders and Return Node variable definition

f_duranti
2,922 Views

Hi, I was checking on how to do a simple task:

I would like to set the "Enable" condition of a Command to true only if a volume exist.

To do this I was thinking on using a finders that will search for a specific volume name into an array and then use the "Return" box to configure a variable with the value true or false (if it find or don't find the volume).

The problem is that I'm not able to use the returned variable into the Enable field. Probably there's something I'm missing It's possible to define a variable this way? Should I put something special to refer to the FindChart Return Node?

Thanks

Francesco

1 ACCEPTED SOLUTION

hill
2,922 Views

Hi Francesco,

Yes, this is definitely possible, and one of the great things you can do in WFA.  I use this capability quite a bit depending on the use case the customer requires. First of all, it sounds like you are on the right track, but sometimes it's easy to be off a little bit.  Here is what I would do:

1.) decide on the variable name, and put that into the Enable of the Workflow table for your command.  In this case, I'll use a the 'createCommon' variable for the Enable and define the Volume variable 'common_vol' .

              

2.)  Find chart for 'common_vol'.  This is a view of what your find chart will most likely look like.  Not exactly, depending on the case, but close.

         

In this example:

  • Find the specific object (in this case a volume)
    • F: do nothing.  Return and set the 'createCommon' variable to 'false'
    • NF: you need to create the volume, so find an aggregate for the volme
      • F: Define the volume
        • Return and set the 'creteCommon' variable to 'true'
      • NF: Error condition where no aggregate was found

3.)  Here's an example of what the Return node definition looks like:

         

Here I simply click on the 'Add' button, then change NewVariable to whatever variable name I want, then set the value.  In this case this was my FIRST Return node where I did not want the command to be enabled if the volume was found.  In the SECOND Return node, I set the variable to 'true', since I did want the command to process.

Hope this helps.  Let me know if it does or if you are still having any issues.

-Kevin.

View solution in original post

2 REPLIES 2

hill
2,923 Views

Hi Francesco,

Yes, this is definitely possible, and one of the great things you can do in WFA.  I use this capability quite a bit depending on the use case the customer requires. First of all, it sounds like you are on the right track, but sometimes it's easy to be off a little bit.  Here is what I would do:

1.) decide on the variable name, and put that into the Enable of the Workflow table for your command.  In this case, I'll use a the 'createCommon' variable for the Enable and define the Volume variable 'common_vol' .

              

2.)  Find chart for 'common_vol'.  This is a view of what your find chart will most likely look like.  Not exactly, depending on the case, but close.

         

In this example:

  • Find the specific object (in this case a volume)
    • F: do nothing.  Return and set the 'createCommon' variable to 'false'
    • NF: you need to create the volume, so find an aggregate for the volme
      • F: Define the volume
        • Return and set the 'creteCommon' variable to 'true'
      • NF: Error condition where no aggregate was found

3.)  Here's an example of what the Return node definition looks like:

         

Here I simply click on the 'Add' button, then change NewVariable to whatever variable name I want, then set the value.  In this case this was my FIRST Return node where I did not want the command to be enabled if the volume was found.  In the SECOND Return node, I set the variable to 'true', since I did want the command to process.

Hope this helps.  Let me know if it does or if you are still having any issues.

-Kevin.

f_duranti
2,922 Views

Hi Kevin thanks for the excellent explanation

I was on the right way but the problem was on the Finder that got an error Now it works correctly.

Francesco

Public