<?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>Troubleshooting a Complex Editable Grid</title><link>https://community.appian.com/discussions/f/new-to-appian/31191/troubleshooting-a-complex-editable-grid</link><description>Howdy All, 
 I&amp;#39;m new to Appian and struggling with how to configure the Editable Grid for a form response. 
 Particularly trying to troubleshoot the &amp;quot;Add New Row&amp;quot; feature within the Editable Grid. 
 Any advice or guidance on how to adjust this would be</description><dc:language>en-US</dc:language><generator>Telligent Community 12</generator><item><title>RE: Troubleshooting a Complex Editable Grid</title><link>https://community.appian.com/thread/124632?ContentTypeID=1</link><pubDate>Fri, 19 Jan 2024 07:25:28 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:50ee057b-9a0e-4f50-85d8-c29992a330a4</guid><dc:creator>Konduru Chaitanya</dc:creator><description>&lt;p&gt;1. Your rule input consists of recordType I guess and your casting using a dot notation which would not work.&lt;/p&gt;
&lt;p&gt;2. Id parameter in the grid row layout is missing.&lt;/p&gt;
&lt;p&gt;3. In add row link please use a record type save. (Sorry for misleading with the null.)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Troubleshooting a Complex Editable Grid</title><link>https://community.appian.com/thread/124614?ContentTypeID=1</link><pubDate>Fri, 19 Jan 2024 04:53:12 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:2c07b979-77b9-4825-84b7-2fee0b1620d6</guid><dc:creator>JayaPrakash Ravipati</dc:creator><description>&lt;p&gt;Hi&amp;nbsp;&amp;nbsp;&lt;a class="internal-link view-user-profile" href="/members/kevinp617"&gt;KevinQP&lt;/a&gt;,&lt;/p&gt;
&lt;p&gt;made some changes in your code . there is no point having [fv!index].&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;pre class="ui-code" data-mode="text"&gt;/* Editable Grid */
a!localVariables(
  local!data:{
    action: &amp;quot;&amp;quot;,
    itemnumber: &amp;quot;&amp;quot;,
    itemdesc: &amp;quot;&amp;quot;,
    partnum: &amp;quot; &amp;quot;,
    urllink: &amp;quot; &amp;quot;,
    leadtime: &amp;quot;&amp;quot;,
    qty: tointeger(null),
    unitPrice: todecimal(null),
    totalc: &amp;quot;&amp;quot;
  },
a!sectionLayout(
  label: &amp;quot;&amp;quot;,
  contents: {
    a!gridLayout(
      label: &amp;quot;Please Complete below if there is no quote attached.&amp;quot;,
      labelPosition: &amp;quot;ABOVE&amp;quot;,
      headerCells: {
        /* 1 */a!gridLayoutHeaderCell(label: &amp;quot;Action&amp;quot;),
        /* 2 */a!gridLayoutHeaderCell(label: &amp;quot;Item Number&amp;quot;),
        /* 3 */a!gridLayoutHeaderCell(label: &amp;quot;Item Description&amp;quot;, align: &amp;quot;LEFT&amp;quot;),
        /* 4 */a!gridLayoutHeaderCell(label: &amp;quot;Part Number&amp;quot;, align: &amp;quot;LEFT&amp;quot;),
        /* 5 */a!gridLayoutHeaderCell(label: &amp;quot;URL Link&amp;quot;),
        /* 6 */a!gridLayoutHeaderCell(label: &amp;quot;Lead Time (Days)&amp;quot;),
        /* 7 */a!gridLayoutHeaderCell(label: &amp;quot;Qty&amp;quot;),
        /* 8 */a!gridLayoutHeaderCell(label: &amp;quot;Cost Per Unit&amp;quot;),
        /* 9 */a!gridLayoutHeaderCell(label: &amp;quot;Total Cost&amp;quot;),
        /*10 */a!gridLayoutHeaderCell(label: &amp;quot;&amp;quot;)
      },
      columnConfigs: {
        /* 1 */a!gridLayoutColumnConfig(width: &amp;quot;DISTRIBUTE&amp;quot;),
        /*        Action       */
        /* 2 */a!gridLayoutColumnConfig(width: &amp;quot;DISTRIBUTE&amp;quot;, weight: 2),
        /*     Item Number     */
        /* 3 */a!gridLayoutColumnConfig(width: &amp;quot;DISTRIBUTE&amp;quot;, weight: 3),
        /*   Item Description  */
        /* 4 */a!gridLayoutColumnConfig(width: &amp;quot;DISTRIBUTE&amp;quot;, weight: 2),
        /*     Part Number     */
        /* 5 */a!gridLayoutColumnConfig(width: &amp;quot;DISTRIBUTE&amp;quot;, weight: 2),
        /*       URL Link      */
        /* 6 */a!gridLayoutColumnConfig(width: &amp;quot;DISTRIBUTE&amp;quot;),
        /*   Lead Time (Days)  */
        /* 7 */a!gridLayoutColumnConfig(width: &amp;quot;DISTRIBUTE&amp;quot;, weight: 1),
        /*        Qty          */
        /* 8 */a!gridLayoutColumnConfig(width: &amp;quot;DISTRIBUTE&amp;quot;),
        /*    Cost Per Unit    */
        /* 9 */a!gridLayoutColumnConfig(width: &amp;quot;NARROW&amp;quot;),
        /*      Total Cost     */
        /*10 */a!gridLayoutColumnConfig(width: &amp;quot;NARROW&amp;quot;)/* [Delete Row Column] */
        
      },
      rows: {
        a!forEach(
          items: ri!Item,
          expression: a!gridRowLayout(
            contents: {
              a!textField(
                placeholder: &amp;quot;&amp;quot;,
                value: fv!item.action,
                saveInto: fv!item.action,
                required: false,
                validationGroup: &amp;quot;main&amp;quot;
              ),
              a!textField(
                placeholder: &amp;quot;&amp;quot;,
                value: fv!item.itemnumber,
                saveInto: fv!item.itemnumber,
                required: false,
                validationGroup: &amp;quot;main&amp;quot;
              ),
              a!textField(
                placeholder: &amp;quot;&amp;quot;,
                value: fv!item.itemdesc,
                saveInto: fv!item.itemdesc,
                characterLimit: 100,
                required: false,
                validationGroup: &amp;quot;main&amp;quot;
              ),
              a!textField(
                placeholder: &amp;quot;&amp;quot;,
                value: fv!item.partnumber,
                saveInto: fv!item.partnumber,
                required: false,
                validationGroup: &amp;quot;main&amp;quot;
              ),
              a!textField(
                placeholder: &amp;quot;&amp;quot;,
                value: fv!item.urllink,
                saveInto: fv!item.urllink,
                required: false,
                validationGroup: &amp;quot;main&amp;quot;
              ),
              a!textField(
                placeholder: &amp;quot;&amp;quot;,
                value: fv!item.leadtime,
                saveInto: fv!item.leadtime,
                required: false,
                validationGroup: &amp;quot;main&amp;quot;
              ),
              a!textField(
                placeholder: &amp;quot;&amp;quot;,
                value: fv!item.quantity,
                saveInto: fv!item.quantity,
                required: false,
                validations: {
                  if(
                    tointeger(fv!item.quantity) &amp;lt; 1,
                    &amp;quot;Quantity must be greater than zero&amp;quot;,
                    &amp;quot;&amp;quot;
                  )
                },
                validationGroup: &amp;quot;main&amp;quot;,
                align: &amp;quot;RIGHT&amp;quot;
              ),
              a!floatingPointField(
                placeholder: &amp;quot;&amp;quot;,
                value: fv!item.unitPrice,
                saveInto: fv!item.unitPrice,
                required: false,
                validations: {
                  if(
                    tointeger(fv!item.unitPrice) &amp;lt;tointeger(0),
                    &amp;quot;Price must be greater than zero&amp;quot;,
                    &amp;quot;&amp;quot;
                  )
                },
                validationGroup: &amp;quot;main&amp;quot;,
                align: &amp;quot;RIGHT&amp;quot;
              ),
              a!textField(
                value: a!currency(
                  isoCode: &amp;quot;USD&amp;quot;,
                  value: fv!item.totalc
                ),
                readOnly: true,
                align: &amp;quot;RIGHT&amp;quot;
              ),
              a!richTextDisplayField(
                value: {
                  a!richTextIcon(
                    icon: &amp;quot;times&amp;quot;,
                    link: a!dynamicLink(
                      saveInto: a!save(ri!Item, remove(ri!Item, fv!index))
                    ),
                    linkStyle: &amp;quot;STANDALONE&amp;quot;,
                    color: &amp;quot;NEGATIVE&amp;quot;
                  )
                }
              )
            }
          )
        ),
        /* Editable Grid */
        a!gridRowLayout(
          contents: {
            /* 1 */a!textField(
              label: &amp;quot;Action&amp;quot;,
              saveInto: ri!Item[&amp;#39;recordType!{18032ed7-381c-4379-b76b-3ef592acf874}.fields.{48a1083c-302c-4de1-a61d-245483e72a7d}&amp;#39;],
              readOnly: true
            ),
            /*       Action      */
            /* 2 */a!textField(
              label: &amp;quot;Item Number&amp;quot;,
              saveInto: ri!Item[&amp;#39;recordType!{18032ed7-381c-4379-b76b-3ef592acf874}.fields.{956062b4-7dc1-480c-903d-41f0a0e16f2a}&amp;#39;],
              readOnly: true
            ),
            /*     Item Number   */
            /* 3 */a!textField(
              label: &amp;quot;Item Description&amp;quot;,
              saveInto: ri!Item[&amp;#39;recordType!{18032ed7-381c-4379-b76b-3ef592acf874}.fields.{93159d1a-808d-4010-a9de-3ea3e20a2a16}&amp;#39;],
              readOnly: true
            ),
            /*  Item Description */
            /* 5 */a!textField(readOnly: true),
            /*     Part Number   */
            /* 6 */a!textField(readOnly: true),
            /*      URL Link     */
            /* 7 */a!textField(readOnly: true),
            /*  Lead Time (Days) */
            /* 8 */a!textField(readOnly: true),
            /*         Qty       */
            /* 9  */a!textField(
              value: &amp;quot;Total&amp;quot;,
              readOnly: true,
              align: &amp;quot;RIGHT&amp;quot;
            ),
            /*    Total Cost     */
            /* 10 */a!textField(
              value: a!currency(
                isoCode: &amp;quot;USD&amp;quot;,
                value: sum(
                  a!forEach(
                    items: &amp;quot;&amp;quot;,
                    expression: fv!item.qty * fv!item.unitPrice
                  )
                ),
                format: &amp;quot;SYMBOL&amp;quot;
              ),
              readOnly: true,
              align: &amp;quot;RIGHT&amp;quot;
            ),
            /* */a!textField(readOnly: true)
          }
        )
      },
      addRowLink: a!dynamicLink(
        label: &amp;quot;Add New Item&amp;quot;,
        saveInto: {
          a!save(
            ri!Item,
            append(
              ri!Item,
              local!data
            )
          )
        }
      ),
      rowHeader: 1
    )
  }
)
)&lt;/pre&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Troubleshooting a Complex Editable Grid</title><link>https://community.appian.com/thread/124601?ContentTypeID=1</link><pubDate>Thu, 18 Jan 2024 20:48:13 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:d8f9e1de-73cd-434d-aca9-b3bfa9235989</guid><dc:creator>Konduru Chaitanya</dc:creator><description>&lt;p&gt;Thank you!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Troubleshooting a Complex Editable Grid</title><link>https://community.appian.com/thread/124600?ContentTypeID=1</link><pubDate>Thu, 18 Jan 2024 20:46:37 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:21b70a51-1088-4f7c-af5d-90da31aef62c</guid><dc:creator>Mike Schmitt</dc:creator><description>&lt;p&gt;I use a freeware tool called GreenShot.&amp;nbsp; You can map it to the PrintScreen button (or any other available hotkey) and it gives you a screen-area selection tool, then opens that selection in a mini editor where you get options like arrows, highlight, obfuscation, and borders.&lt;/p&gt;
[quote userid="140649" url="~/discussions/f/new-to-appian/31191/troubleshooting-a-complex-editable-grid/124598"]How to do this type of screen capture anyway always wondered.[/quote]&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Troubleshooting a Complex Editable Grid</title><link>https://community.appian.com/thread/124599?ContentTypeID=1</link><pubDate>Thu, 18 Jan 2024 20:46:08 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:19794f83-c5aa-44ac-b4ae-625b845859e2</guid><dc:creator>KevinQP</dc:creator><description>&lt;p&gt;When I attempt this, this is the error I get.&lt;/p&gt;
&lt;p&gt;&lt;strong class="StrongText---richtext_strong StrongText---inMessageLayout StrongText---error"&gt;Could not display interface. Please check definition and inputs.&lt;/strong&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;Interface Definition: Expression evaluation error [evaluation ID = 0LQYE] : An error occurred while executing a save: Could not cast from List of Null to KXTItem. Details: CastInvalid&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Troubleshooting a Complex Editable Grid</title><link>https://community.appian.com/thread/124598?ContentTypeID=1</link><pubDate>Thu, 18 Jan 2024 20:40:12 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:269251f0-ed1f-4f32-b575-8870562bbf4e</guid><dc:creator>Konduru Chaitanya</dc:creator><description>&lt;p&gt;Took some time for me also. Just few seconds of difference. How to do this type of screen capture anyway always wondered.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Troubleshooting a Complex Editable Grid</title><link>https://community.appian.com/thread/124597?ContentTypeID=1</link><pubDate>Thu, 18 Jan 2024 20:37:35 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:14ee97a7-371d-4fbe-9f6a-80487eb568a2</guid><dc:creator>KevinQP</dc:creator><description>&lt;p&gt;Not a problem! Beat me to it while I was editing haha, thank you for the support&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Troubleshooting a Complex Editable Grid</title><link>https://community.appian.com/thread/124596?ContentTypeID=1</link><pubDate>Thu, 18 Jan 2024 20:37:27 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:c88a9974-b558-4392-a74c-cbfb98a4e287</guid><dc:creator>Konduru Chaitanya</dc:creator><description>&lt;p&gt;You don&amp;#39;t need to put fv!index in your value and save into as such&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;em&gt;fv!item.unitPrice[&lt;span style="background-color:#ffff00;"&gt;fv!index]&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;remove the second grid row layout. Try saving a null or a recordType value.&lt;br /&gt;a!save(ri!Item, append(ri!Item, recordType!value())&lt;br /&gt;&lt;em&gt;&lt;span style="background-color:#ffff00;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;/em&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Troubleshooting a Complex Editable Grid</title><link>https://community.appian.com/thread/124595?ContentTypeID=1</link><pubDate>Thu, 18 Jan 2024 20:36:10 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:91aecb1c-0386-4ace-9a08-94c98d1502cb</guid><dc:creator>Mike Schmitt</dc:creator><description>[quote userid="260103" url="~/discussions/f/new-to-appian/31191/troubleshooting-a-complex-editable-grid/124594"]fixed just [/quote]
&lt;p&gt;not to be too nitpicky but i would suggest you revise one more time and paste in your original code with indentation in-tact; that&amp;#39;s one of the things a Code Box most enhances about readability here.&amp;nbsp; Also (personal preference) I select &amp;quot;Java&amp;quot; from the syntax highlighting drop-down; in the absence of a &amp;quot;SAIL&amp;quot; or &amp;quot;Appian Expression&amp;quot; option there, it at least adds some visual distinction to pasted Appian code.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Troubleshooting a Complex Editable Grid</title><link>https://community.appian.com/thread/124594?ContentTypeID=1</link><pubDate>Thu, 18 Jan 2024 20:31:27 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:bb91571b-28ca-4abc-9a8c-9508956e8f6f</guid><dc:creator>KevinQP</dc:creator><description>&lt;p&gt;Hello Konduru, fixed just now and also yes I have read that particular set of documentation, but I&amp;#39;m struggling to accurately identify which part is broken. Could it just be that I need to add the index function variable to the &amp;quot;id&amp;quot;?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Troubleshooting a Complex Editable Grid</title><link>https://community.appian.com/thread/124593?ContentTypeID=1</link><pubDate>Thu, 18 Jan 2024 20:29:25 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:a91e7db8-33c2-4c3d-a98d-c4a95e50c3cd</guid><dc:creator>Mike Schmitt</dc:creator><description>&lt;p&gt;This will be much more readable if you provide a cleanly pasted code box with indentaion in-tact.&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" alt=" " src="/resized-image/__size/640x480/__key/communityserver-discussions-components-files/62/pastedimage1705609737353v1.png" /&gt;&lt;/p&gt;
&lt;p&gt;(edit: sorry, Konduru beat me to it while i was still typing.&amp;nbsp; leaving my comment here tho lol)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Troubleshooting a Complex Editable Grid</title><link>https://community.appian.com/thread/124592?ContentTypeID=1</link><pubDate>Thu, 18 Jan 2024 20:27:12 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:aa564e18-0255-4159-bb3a-c628e1603c72</guid><dc:creator>Konduru Chaitanya</dc:creator><description>&lt;p&gt;Hello&amp;nbsp;&lt;a class="internal-link view-user-profile" href="/members/kevinp617"&gt;KevinQP&lt;/a&gt;,&lt;br /&gt;&lt;br /&gt;Could you please insert your could in this way that would improve the readability. besides have you taken a look at this?&amp;nbsp;looks like you have a duplicate grid row layout in your foreach and you can use your ri!item type for your save instead of map.&lt;br /&gt;&lt;br /&gt;&lt;a href="https://docs.appian.com/suite/help/23.4/recipe-add-edit-and-remove-data-in-an-inline-editable-grid.html"&gt;Add, Edit, and Remove Data in an Inline Editable Grid&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img style="max-height:240px;max-width:320px;" alt=" " src="/resized-image/__size/640x480/__key/communityserver-discussions-components-files/62/pastedimage1705609533614v2.png" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" alt=" " src="/resized-image/__size/640x480/__key/communityserver-discussions-components-files/62/pastedimage1705609517471v1.png" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>