<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Unable to pass an array to a custom function in Active IQ Unified Manager Discussions</title>
    <link>https://community.netapp.com/t5/Active-IQ-Unified-Manager-Discussions/Unable-to-pass-an-array-to-a-custom-function/m-p/16304#M3314</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Adrian,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I assume you are referring to each individual field in&amp;nbsp; this screenshot which is about providing values to specific command parameters in the workflow design.&lt;/P&gt;&lt;P&gt;&lt;IMG src="http://community.netapp.com/legacyfs/online/22151_cmddetails.png" /&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If yes, you are right that the limit is 255 characters in WFA releases of 2.0 and 2.0.1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This has been fixed in the upcoming release of WFA 2.1. We were able to expand that limit to 2000 characters as of now.&lt;/P&gt;&lt;P&gt;WFA 2.1 will be available shortly.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Shailaja&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 22 Jul 2013 14:49:20 GMT</pubDate>
    <dc:creator>shailaja</dc:creator>
    <dc:date>2013-07-22T14:49:20Z</dc:date>
    <item>
      <title>Unable to pass an array to a custom function</title>
      <link>https://community.netapp.com/t5/Active-IQ-Unified-Manager-Discussions/Unable-to-pass-an-array-to-a-custom-function/m-p/16281#M3308</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello everyone,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm stuck while implementing a workflow in our company.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;What I would like to achive:&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;I would like to create a workflow with the following actions:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;User enters a server, a SID of an oracle db and the size for arch, data, log&lt;/LI&gt;&lt;LI&gt;Creation of 3 volumes and qtree according to the data above&lt;/LI&gt;&lt;LI&gt;Send an E-Mail with the complete "scli disk create" string to the user&lt;/LI&gt;&lt;LI&gt;APPROVAL POINT&lt;/LI&gt;&lt;LI&gt;Thin-provisioning of the LUNs&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;What I have done:&lt;/STRONG&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Copied and Customized the Send Email command&lt;/LI&gt;&lt;LI&gt;Created a custom command for thin provisioning&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;The commands&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Send EMail with CMD&lt;BR /&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;PRE __default_attr="plain" __jive_macro_name="code" class="jive_text_macro jive_macro_code _jivemacro_uid_13734623568497523" jivemacro_uid="_13734623568497523" modifiedtitle="true"&gt;&lt;P&gt;param (&lt;/P&gt;&lt;P&gt;&amp;nbsp; [parameter(Mandatory=$true, HelpMessage="SMTP server for sending the email item")]&lt;/P&gt;&lt;P&gt;&amp;nbsp; [string]$SmtpHost,&lt;/P&gt;&lt;P&gt;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; [parameter(Mandatory=$true, HelpMessage="Recipient's SMTP email address")]&lt;/P&gt;&lt;P&gt;&amp;nbsp; [string]$To,&lt;/P&gt;&lt;P&gt;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; [parameter(Mandatory=$true, HelpMessage="From field's SMTP email address")]&lt;/P&gt;&lt;P&gt;&amp;nbsp; [string]$From,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; [parameter(Mandatory=$true, HelpMessage="Subject of the email item")]&lt;/P&gt;&lt;P&gt;&amp;nbsp; [string]$Subject, &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; [parameter(Mandatory=$false, HelpMessage="SMTP port")]&lt;/P&gt;&lt;P&gt;&amp;nbsp; [ValidateRange(1,65535)]&lt;/P&gt;&lt;P&gt;&amp;nbsp; [int]$SmtpPort = 25,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; [parameter(Mandatory=$false, HelpMessage="Use SSL for secure connection if server demands it")]&lt;/P&gt;&lt;P&gt;&amp;nbsp; [bool]$UseSsl = $false,&lt;/P&gt;&lt;P&gt;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; [parameter(Mandatory=$true, HelpMessage="The command you would like to generate. Either sdcli disk connect or sdcli disk create")]&lt;/P&gt;&lt;P&gt;&amp;nbsp; [ValidateSet("connect", "create")]&lt;/P&gt;&lt;P&gt;&amp;nbsp; [string]$Action, &lt;/P&gt;&lt;P&gt;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; [parameter(Mandatory=$true, HelpMessage="The Server which the LUNs should be mapped to")]&lt;/P&gt;&lt;P&gt;&amp;nbsp; [string]$Server, &lt;/P&gt;&lt;P&gt;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; [parameter(Mandatory=$true, HelpMessage="Domain, which the server belongs to")]&lt;/P&gt;&lt;P&gt;&amp;nbsp; [string]$DomainName, &lt;/P&gt;&lt;P&gt;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; [parameter(Mandatory=$true, HelpMessage="The name of the arrays, where the volumes where created")]&lt;/P&gt;&lt;P&gt;&amp;nbsp; [string]$Controller,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; [parameter(Mandatory=$true, HelpMessage="A list the luns to connect/create, like /vol/volumename/qtree/lunname.lun")]&lt;/P&gt;&lt;P&gt;&amp;nbsp; [array]$LunList,&lt;/P&gt;&lt;P&gt;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; [parameter(Mandatory=$false, HelpMessage="A list of the size in GB")]&lt;/P&gt;&lt;P&gt;&amp;nbsp; [array]$SizeList,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; [parameter(Mandatory=$true, HelpMessage="A list of the mountpoints")]&lt;/P&gt;&lt;P&gt;&amp;nbsp; [array]$MountList&lt;/P&gt;&lt;P&gt;)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;function ConvertFromSecureToPlain{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; param(&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [Parameter(Mandatory=$true)]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [System.Security.SecureString] $SecurePassword&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; )&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Create a &amp;amp;amp;quot;password pointer&amp;amp;amp;quot;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $PasswordPointer = [Runtime.InteropServices.Marshal]::SecureStringToBSTR($SecurePassword)&lt;/P&gt;&lt;P&gt;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Get the plain text version of the password&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $PlainTextPassword = [Runtime.InteropServices.Marshal]::PtrToStringAuto($PasswordPointer)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Free the pointer&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; [Runtime.InteropServices.Marshal]::ZeroFreeBSTR($PasswordPointer)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Return the plain text password&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $PlainTextPassword&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if($UseSsl)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; if(!$SmtpUserName)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; throw "FOr Secure Connection user details are mandatory"&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if($SmtpUserName)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $SMTPCreds = Get-NaCredentials -Host $SmtpHost&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (!$SmtpUserPassword -and !$SMTPCreds) {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; throw "Could not find SMTP credentials"&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ($SMTPCreds) {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ($SMTPCreds.Username -ne $SmtpUserName)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; throw "Could not find SMTP credentials of user : " + $SmtpUserName&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ($SMTPCreds) {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $SmtpUserPassword =&amp;nbsp; ConvertFromSecureToPlain -SecurePassword $SMTPCreds.Password&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if(!$SmtpUserName -and $SmtpUserPassword)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; throw "Missing credentials information"&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;$smtpClient = New-Object System.Net.Mail.SmtpClient&lt;/P&gt;&lt;P&gt;$mailMessage = New-Object System.Net.Mail.MailMessage&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;$smtpClient.host = $SmtpHost&lt;/P&gt;&lt;P&gt;try&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $mailMessage.To.add($To)&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;catch&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; throw "'To' value is not in the SMTP address format"&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;try&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $mailMessage.from = $From&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;catch&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; throw "'From' value is not in the SMTP address format"&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if( -not (-not $SizeList -or (($LunList.length -eq $SizeList.length) -and ($LunList.length -eq $MountList.length))))&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;throw "LunList, SizeList and MountList must have the same amount of values"&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;$mailMessage.Subject = $Subject&lt;/P&gt;&lt;P&gt;#$mailMessage.Body = "Email from WFA system:`n"&lt;/P&gt;&lt;P&gt;#$mailMessage.Body += "Workflow Name = “ + $(Get-WfaRestParameter "workflowName") + "`n"&lt;/P&gt;&lt;P&gt;#$mailMessage.Body += "Workflow ID = “ + $(Get-WfaRestParameter "workflowId") + "`n"&lt;/P&gt;&lt;P&gt;#$mailMessage.Body += “Command Name = " + $(Get-WfaRestParameter "commandName") + "`n"&lt;/P&gt;&lt;P&gt;#$mailMessage.Body += “Job ID = " + $(Get-WfaRestParameter "jobId") + "`n"&lt;/P&gt;&lt;P&gt;#$mailMessage.Body += “Workflow executed by User = " + $(Get-WfaRestParameter "userName") + "`n"&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;# Customized by ABuchmann&lt;/P&gt;&lt;P&gt;$mailMessage.Body += "Führe folgende Zeilen auf dem Server " + $Server + " aus: `n`n"&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;for($i=0;$i -lt $LunList.Length;$i++)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$Cmd&amp;nbsp; = "sdcli disk&amp;nbsp; " + $Action + " -d " + $MountList[$i] + " -p " + $Controller + ":" + $LunList[$i] + " -I %computername% iqn.1991-05.com.microsoft:%computername%." + $DomainName + " -dtype dedicated"&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if($Action -eq "create")&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$Cmd += " -rs n -z " + $SizeList[$i] + "GB"&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 9pt; line-height: 12pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$mailMessage.Body += $Cmd + "`n"&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;$mailMessage.IsBodyHtml = $False&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if($SmtpUserName)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; $smtpClient.Credentials = New-Object System.Net.NetworkCredential($SmtpUserName, $SmtpUserPassword); &lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;$smtpClient.Port = $SmtpPort&lt;/P&gt;&lt;P&gt;$smtpClient.EnableSsl = $UseSsl&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Get-WFALogger -Info -message $("Sending email to " + $To)&lt;/P&gt;&lt;P&gt;$smtpClient.Send($mailMessage)&lt;/P&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;BR /&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;I tested the command above with the "Test"-Button in the "Command Definition"-window. Everything works fine, I can pass arrays to the variable $LunList, $SizeList, $MountList by separating the values using a comma and I am able to send/receive the mail.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But when I try to use the command inside of my workflow, I'm definitly not able to pass comma separated values to the command. it always fails with the following error:&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;Illegal expression: "/vol/" + datavolume.name + "/" + dataqtree.name + "/" + datavolume.name + ".lun","/vol/" + logvolume.name + "/" + logqtree.name + "/" + logvolume.name + ".lun","/vol/" + archvolume.name + "/" + archqtree.name + "/" + archvolume.name + ".lun"&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;At command 'Send Email with CMDs', tab 'Parameters', property 'LunList'&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I also tried to pass a string list like "vol1", "vol2", "vol3" but I received the same error.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is there a limitation with array? &lt;/P&gt;&lt;P&gt;It would be nice to use the "Send Email with CMDs"-Command because like that, it can be used for multiple Workflows with a different amount of LUNs&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Kind regards,&lt;/P&gt;&lt;P&gt;Adrian&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 05 Jun 2025 05:58:46 GMT</pubDate>
      <guid>https://community.netapp.com/t5/Active-IQ-Unified-Manager-Discussions/Unable-to-pass-an-array-to-a-custom-function/m-p/16281#M3308</guid>
      <dc:creator>abuchmann</dc:creator>
      <dc:date>2025-06-05T05:58:46Z</dc:date>
    </item>
    <item>
      <title>Re: Unable to pass an array to a custom function</title>
      <link>https://community.netapp.com/t5/Active-IQ-Unified-Manager-Discussions/Unable-to-pass-an-array-to-a-custom-function/m-p/16286#M3310</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Adrian,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; I haven't tried your command code but l think I know the problem. Can you try providing double // instead of a single / in the Parameters in the workflow. I think this should work. &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 11 Jul 2013 03:40:24 GMT</pubDate>
      <guid>https://community.netapp.com/t5/Active-IQ-Unified-Manager-Discussions/Unable-to-pass-an-array-to-a-custom-function/m-p/16286#M3310</guid>
      <dc:creator>sinhaa</dc:creator>
      <dc:date>2013-07-11T03:40:24Z</dc:date>
    </item>
    <item>
      <title>Re: Unable to pass an array to a custom function</title>
      <link>https://community.netapp.com/t5/Active-IQ-Unified-Manager-Discussions/Unable-to-pass-an-array-to-a-custom-function/m-p/16291#M3312</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Adrian,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Well, I attempted your command in my setup and when I passed from the workflow the following string. Worked in preview. Did not try execution however.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;"/vol/" + datavolume.name + "/" + dataqtree.name + "/" + datavolume.name + ".lun,/vol/" + logvolume.name + "/" + logqtree.name + "/" + logvolume.name + ".lun,/vol/" + archvolume.name + "/" + archqtree.name + "/" + archvolume.name + ".lun"&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The difference between your parameter input and this one is that the comma between different lun names is within the quotes.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;IMG src="http://community.netapp.com/legacyfs/online/22039_cmddetails.png" width="450" /&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;IMG src="http://community.netapp.com/legacyfs/online/22040_preview.png" width="450" /&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Shailaja&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 11 Jul 2013 15:07:27 GMT</pubDate>
      <guid>https://community.netapp.com/t5/Active-IQ-Unified-Manager-Discussions/Unable-to-pass-an-array-to-a-custom-function/m-p/16291#M3312</guid>
      <dc:creator>shailaja</dc:creator>
      <dc:date>2013-07-11T15:07:27Z</dc:date>
    </item>
    <item>
      <title>Re: Unable to pass an array to a custom function</title>
      <link>https://community.netapp.com/t5/Active-IQ-Unified-Manager-Discussions/Unable-to-pass-an-array-to-a-custom-function/m-p/16299#M3313</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;You are right. Thank you!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;May you also know more about the following issue:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If I use the function above to pass multiple volumes to the send-email-param. I sometimes have the problem that the value like&lt;/P&gt;&lt;PRE __default_attr="plain" __jive_macro_name="code" class="jive_text_macro jive_macro_code _jivemacro_uid_13745016406999211" jivemacro_uid="_13745016406999211"&gt;&lt;P&gt;"/vol/" + datavolume.name + "/" + dataqtree.name + "/" + datavolume.name + ".lun,/vol/" + logvolume.name + "/" + logqtree.name + "/" + logvolume.name + ".lun,/vol/" + mastervolume.name + "/" + masterqtree.name + "/" + mastervolume.name + ".lun,/vol/" + snapvolume.name + "/" + snapqtree.name + "/" + snapvolume.name + ".lun"&lt;/P&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;is too long. I can add it to a command, but I'm unable to save the workflow as I always receive the following error:&lt;/P&gt;&lt;P&gt;&lt;IMG src="http://community.netapp.com/legacyfs/online/22153_2013-07-22+16_02_06-WFA+by+NetApp.png" /&gt;&lt;/P&gt;&lt;P&gt;Is there a reason why there's a limit of 256 characters per field? Is there a way to set a highter limit?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 22 Jul 2013 14:09:19 GMT</pubDate>
      <guid>https://community.netapp.com/t5/Active-IQ-Unified-Manager-Discussions/Unable-to-pass-an-array-to-a-custom-function/m-p/16299#M3313</guid>
      <dc:creator>abuchmann</dc:creator>
      <dc:date>2013-07-22T14:09:19Z</dc:date>
    </item>
    <item>
      <title>Re: Unable to pass an array to a custom function</title>
      <link>https://community.netapp.com/t5/Active-IQ-Unified-Manager-Discussions/Unable-to-pass-an-array-to-a-custom-function/m-p/16304#M3314</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Adrian,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I assume you are referring to each individual field in&amp;nbsp; this screenshot which is about providing values to specific command parameters in the workflow design.&lt;/P&gt;&lt;P&gt;&lt;IMG src="http://community.netapp.com/legacyfs/online/22151_cmddetails.png" /&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If yes, you are right that the limit is 255 characters in WFA releases of 2.0 and 2.0.1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This has been fixed in the upcoming release of WFA 2.1. We were able to expand that limit to 2000 characters as of now.&lt;/P&gt;&lt;P&gt;WFA 2.1 will be available shortly.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Shailaja&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 22 Jul 2013 14:49:20 GMT</pubDate>
      <guid>https://community.netapp.com/t5/Active-IQ-Unified-Manager-Discussions/Unable-to-pass-an-array-to-a-custom-function/m-p/16304#M3314</guid>
      <dc:creator>shailaja</dc:creator>
      <dc:date>2013-07-22T14:49:20Z</dc:date>
    </item>
  </channel>
</rss>

