<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://community.appian.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>How to create a todatasubset with Column values have array of elements?</title><link>https://community.appian.com/discussions/f/user-interface/12376/how-to-create-a-todatasubset-with-column-values-have-array-of-elements</link><description>Hi, 
 We have array of elements as Column data. with those we need to create todatasubset. 
 Example like I have 4 Array of elements like each 
 CustomerName Array, 
 ProductName Array, 
 Qty Array, 
 Price Array. 
 
 Please let me know how to create</description><dc:language>en-US</dc:language><generator>Telligent Community 12</generator><item><title>RE: How to create a todatasubset with Column values have array of elements?</title><link>https://community.appian.com/thread/54888?ContentTypeID=1</link><pubDate>Tue, 08 May 2018 05:41:32 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:80f7add1-fb93-4783-b99a-058f376d8960</guid><dc:creator>ramp</dc:creator><description>This solves my use case&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to create a todatasubset with Column values have array of elements?</title><link>https://community.appian.com/thread/54887?ContentTypeID=1</link><pubDate>Tue, 08 May 2018 05:41:01 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:0c50cb80-ba47-4cd1-8eb5-37e6d9bde2e2</guid><dc:creator>ramp</dc:creator><description>&lt;p&gt;Thanks for the working solution. here is the little updated version by enabling the selection to get the selected row indexes.&lt;/p&gt;
&lt;p&gt;load(&lt;br /&gt;&amp;nbsp; local!custArray: touniformstring( &amp;quot;aaa&amp;quot;, &amp;quot;bbb&amp;quot;, &amp;quot;ccc&amp;quot; ),&lt;br /&gt;&amp;nbsp; local!prodNmArray: { &amp;quot;ddd&amp;quot;, &amp;quot;eee&amp;quot;, &amp;quot;ggg&amp;quot; },&lt;br /&gt;&amp;nbsp; local!qtyArray: { 10, null, 30 },&lt;br /&gt;&amp;nbsp; local!priceArray: { 40, 50, 60 },&lt;br /&gt;&amp;nbsp; local!array: a!forEach(&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; items: local!custArray,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; expression: {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; customerName: index(local!custArray, fv!index, null),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; productName: index(local!prodNmArray, fv!index, null),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; quantity: index(local!qtyArray, fv!index, null),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; price: index(local!priceArray, fv!index, null)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp; ),&lt;br /&gt;&amp;nbsp; local!gridSelection:a!gridSelection(&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; pagingInfo: a!pagingInfo(&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; startIndex: 1,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; batchSize: 10&lt;br /&gt;&amp;nbsp; )&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp; ),&lt;br /&gt;&amp;nbsp; local!finalData: todatasubset(&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; local!array,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; topaginginfo( 1, - 1 )&lt;br /&gt;&amp;nbsp; ),&lt;br /&gt;&amp;nbsp; a!formLayout(&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; label: &amp;quot;Test Data&amp;quot; &amp;amp; local!gridSelection.selected,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; contents: {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; a!gridField(&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; label: &amp;quot;Test&amp;quot;,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; totalCount: local!finalData.totalCount,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; columns: {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; a!gridTextColumn(&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; label: &amp;quot;Customer&amp;quot;,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; data: index( local!finalData.data, &amp;quot;customerName&amp;quot;, null )&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; a!gridTextColumn(&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; label: &amp;quot;Product Name&amp;quot;,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; data: index( local!finalData.data, &amp;quot;productName&amp;quot;, null )&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; a!gridTextColumn(&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; label: &amp;quot;Quantity&amp;quot;,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; data: index( local!finalData.data, &amp;quot;quantity&amp;quot;, null )&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; a!gridTextColumn(&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; label: &amp;quot;Price&amp;quot;,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; data: index( local!finalData.data, &amp;quot;price&amp;quot;, null )&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; )&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; },&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; value: local!gridSelection,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; saveInto: a!save(target:local!gridSelection,value:save!value),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; identifiers: local!finalData.identifiers,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; selection: true&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; )&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp; )&lt;br /&gt;)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Thanks a lot. its solved my requirements&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to create a todatasubset with Column values have array of elements?</title><link>https://community.appian.com/thread/54861?ContentTypeID=1</link><pubDate>Mon, 07 May 2018 11:58:03 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:7c776113-00e5-467a-94f2-9b5f298091fa</guid><dc:creator>Brazil Vibanco</dc:creator><description>&lt;p&gt;Adding some little changes:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;load(
  local!custArray: touniformstring( &amp;quot;aaa&amp;quot;, &amp;quot;bbb&amp;quot;, &amp;quot;ccc&amp;quot; ),
  local!prodNmArray: { &amp;quot;ddd&amp;quot;, &amp;quot;eee&amp;quot;, &amp;quot;ggg&amp;quot; },
  local!qtyArray: { 10, null, 30 },
  local!priceArray: { 40, 50, 60 },
  local!array: a!forEach(
    items: local!custArray,
    expression: {
      customerName: index(local!custArray, fv!index, null),
      productName: index(local!prodNmArray, fv!index, null),
      quantity: index(local!qtyArray, fv!index, null),
      price: index(local!priceArray, fv!index, null)
    }
  ),
  local!finalData: todatasubset(
    local!array,
    topaginginfo( 1, - 1 )
  ),
  a!formLayout(
    label: &amp;quot;Test Data&amp;quot;,
    contents: {
      a!gridField(
        label: &amp;quot;Test&amp;quot;,
        totalCount: local!finalData.totalCount,
        columns: {
          a!gridTextColumn(
            label: &amp;quot;Customer&amp;quot;,
            data: index( local!finalData.data, &amp;quot;customerName&amp;quot;, null )
          ),
          a!gridTextColumn(
            label: &amp;quot;Product Name&amp;quot;,
            data: index( local!finalData.data, &amp;quot;productName&amp;quot;, null )
          ),
          a!gridTextColumn(
            label: &amp;quot;Quantity&amp;quot;,
            data: index( local!finalData.data, &amp;quot;quantity&amp;quot;, null )
          ),
          a!gridTextColumn(
            label: &amp;quot;Price&amp;quot;,
            data: index( local!finalData.data, &amp;quot;price&amp;quot;, null )
          )
        },
        value: a!pagingInfo( 1, - 1 )
      )
    }
  )
)&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Hope it solves your issue&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to create a todatasubset with Column values have array of elements?</title><link>https://community.appian.com/thread/54850?ContentTypeID=1</link><pubDate>Mon, 07 May 2018 08:35:04 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:d993100e-9d0a-4dd6-8c93-f8837c37fe4a</guid><dc:creator>krishnaprasadd</dc:creator><description>Hi megharanib,&lt;br /&gt;
&lt;br /&gt;
I tried with the same Example and it is working for me without using the cast function. If you Still facing the issue just provide some sample data to me so that it will be helpful for me to find out the issue.&lt;br /&gt;
&lt;br /&gt;
Please find the Sample Code below: &lt;br /&gt;
&lt;br /&gt;
load(&lt;br /&gt;
  local!custArray: {&lt;br /&gt;
    &amp;quot;aaa&amp;quot;,&lt;br /&gt;
    &amp;quot;bbb&amp;quot;,&lt;br /&gt;
    &amp;quot;ccc&amp;quot;&lt;br /&gt;
  },&lt;br /&gt;
  local!prodNmArray: {&lt;br /&gt;
    &amp;quot;ddd&amp;quot;,&lt;br /&gt;
    &amp;quot;eee&amp;quot;,&lt;br /&gt;
    &amp;quot;ggg&amp;quot;&lt;br /&gt;
  },&lt;br /&gt;
  local!qtyArray: {&lt;br /&gt;
    10,&lt;br /&gt;
    20,&lt;br /&gt;
    30&lt;br /&gt;
  },&lt;br /&gt;
  local!priceArray: {&lt;br /&gt;
    40,&lt;br /&gt;
    50,&lt;br /&gt;
    60&lt;br /&gt;
  },&lt;br /&gt;
  local!array: apply(&lt;br /&gt;
    rule!POC_genericTestRule(&lt;br /&gt;
      customerName: _,&lt;br /&gt;
      productName: _,&lt;br /&gt;
      quantity: _,&lt;br /&gt;
      price: _&lt;br /&gt;
    ),&lt;br /&gt;
    merge(&lt;br /&gt;
      local!custArray,&lt;br /&gt;
      local!prodNmArray,&lt;br /&gt;
      local!qtyArray,&lt;br /&gt;
      local!priceArray&lt;br /&gt;
    )&lt;br /&gt;
  ),&lt;br /&gt;
  local!finalData: todatasubset(&lt;br /&gt;
    local!array,&lt;br /&gt;
    topaginginfo(&lt;br /&gt;
      1,&lt;br /&gt;
      - 1&lt;br /&gt;
    )&lt;br /&gt;
  ),&lt;br /&gt;
  a!formLayout(&lt;br /&gt;
    label: &amp;quot;Test Data&amp;quot;,&lt;br /&gt;
    firstColumnContents: {&lt;br /&gt;
      a!gridField(&lt;br /&gt;
        label: &amp;quot;Test&amp;quot;,&lt;br /&gt;
        totalCount: local!finalData.totalCount,&lt;br /&gt;
        columns: {&lt;br /&gt;
          a!gridTextColumn(&lt;br /&gt;
            label: &amp;quot;Customer&amp;quot;,&lt;br /&gt;
            data: index(&lt;br /&gt;
              local!finalData.data,&lt;br /&gt;
              &amp;quot;customerName&amp;quot;,&lt;br /&gt;
              &amp;quot;&amp;quot;&lt;br /&gt;
            )&lt;br /&gt;
          ),&lt;br /&gt;
          a!gridTextColumn(&lt;br /&gt;
            label: &amp;quot;Product Name&amp;quot;,&lt;br /&gt;
            data: index(&lt;br /&gt;
              local!finalData.data,&lt;br /&gt;
              &amp;quot;productName&amp;quot;,&lt;br /&gt;
              &amp;quot;&amp;quot;&lt;br /&gt;
            )&lt;br /&gt;
          ),&lt;br /&gt;
          a!gridTextColumn(&lt;br /&gt;
            label: &amp;quot;Quantity&amp;quot;,&lt;br /&gt;
            data: index(&lt;br /&gt;
              local!finalData.data,&lt;br /&gt;
              &amp;quot;quantity&amp;quot;,&lt;br /&gt;
              &amp;quot;&amp;quot;&lt;br /&gt;
            )&lt;br /&gt;
          ),&lt;br /&gt;
          a!gridTextColumn(&lt;br /&gt;
            label: &amp;quot;Price&amp;quot;,&lt;br /&gt;
            data: index(&lt;br /&gt;
              local!finalData.data,&lt;br /&gt;
              &amp;quot;price&amp;quot;,&lt;br /&gt;
              &amp;quot;&amp;quot;&lt;br /&gt;
            )&lt;br /&gt;
          )&lt;br /&gt;
        },&lt;br /&gt;
        value: a!pagingInfo(&lt;br /&gt;
          1,&lt;br /&gt;
          - 1&lt;br /&gt;
        )&lt;br /&gt;
      )&lt;br /&gt;
    }&lt;br /&gt;
  )&lt;br /&gt;
)&lt;br /&gt;
&lt;br /&gt;
POC_genericTestRule:&lt;br /&gt;
&lt;br /&gt;
{&lt;br /&gt;
  customerName: ri!customerName,&lt;br /&gt;
  productName: ri!productName,&lt;br /&gt;
  quantity: ri!quantity,&lt;br /&gt;
  price: ri!price&lt;br /&gt;
}&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to create a todatasubset with Column values have array of elements?</title><link>https://community.appian.com/thread/54846?ContentTypeID=1</link><pubDate>Mon, 07 May 2018 07:13:14 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:f46730ba-5c86-4b60-ab0c-cd3361dc92f1</guid><dc:creator>ramp</dc:creator><description>Can you provide the working sample please&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to create a todatasubset with Column values have array of elements?</title><link>https://community.appian.com/thread/54840?ContentTypeID=1</link><pubDate>Mon, 07 May 2018 06:25:15 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:104c9db2-055c-416f-bfc3-c00a24945368</guid><dc:creator>krishnaprasadd</dc:creator><description>Hi megharanib,&lt;br /&gt;
&lt;br /&gt;
I tried with the same code and it is working in my case. I think the data what you created is of type &amp;quot;List of Variant&amp;quot;. Convert into dictionary before forming the datasubset using cast(194, data). Then you will get the desired totalcount.&lt;br /&gt;
&lt;br /&gt;
I hope this will work&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to create a todatasubset with Column values have array of elements?</title><link>https://community.appian.com/thread/54835?ContentTypeID=1</link><pubDate>Mon, 07 May 2018 05:50:20 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:975a8f29-e34f-4c9d-ba14-1409864e9946</guid><dc:creator>ramp</dc:creator><description>Hi,&lt;br /&gt;
More or less I am expecting the same. but when I am trying to render to paging grid its not happening. todatasubset(local!array,topaginginfo(1,-1)).totalCount resulting only one row.&lt;br /&gt;
&lt;br /&gt;
we need to render this todatasubsset into paging grid. help me how to achieve this.&lt;br /&gt;
&lt;br /&gt;
Thanks for prompt response.&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to create a todatasubset with Column values have array of elements?</title><link>https://community.appian.com/thread/54834?ContentTypeID=1</link><pubDate>Mon, 07 May 2018 05:26:45 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:a2251aa9-d4ab-4c90-8cd6-acf781386140</guid><dc:creator>megharanib</dc:creator><description>load(&lt;br /&gt;
  local!custArray:{&amp;quot;aaa&amp;quot;,&amp;quot;bbb&amp;quot;,&amp;quot;ccc&amp;quot;},&lt;br /&gt;
  local!prodNmArray:{&amp;quot;ddd&amp;quot;,&amp;quot;eee&amp;quot;,&amp;quot;ggg&amp;quot;},&lt;br /&gt;
  local!qtyArray:{10,20,30},&lt;br /&gt;
  local!priceArray:{40,50,60},&lt;br /&gt;
  local!array:merge(local!custArray,local!prodNmArray,local!qtyArray,local!priceArray),&lt;br /&gt;
  todatasubset(local!array,topaginginfo(1,-1))&lt;br /&gt;
)&lt;br /&gt;
&lt;br /&gt;
If i am not wrong, this is what you are expecting.&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>