When should I use gridField over Record Type?

Hi everyone, I'm new to Appian and I'm trying to create some interaces.

What I want do is showing in a table some data. My doubts are regarding when I should prefer gridField over Record Type. I'm able to achieve the "same" result with both.

I've also read Using Record Type https://docs.appian.com/suite/help/20.1/Using_the_Records_Tab.html#:~:text=Unlike%20traditional%20records%2C%20or%20the,the%20context%20of%20that%20information.

In gridField I use queryEntity and then I put in columns my values, while in Record Type I just follow interface steps.

In case you had to show a table with values and then clicking on a row you have to save the value a query another entity to show another table in the same page, which of the two solution would follow? Why?

Thank you

  Discussion posts and replies are publicly visible

  • 0
    Certified Lead Developer

    You're comparing apples to SUVs.  They're not even remotely the same category.

    A Record Type corresponds to a single row in a database, usually a row of a View that you expressly make for the purpose of being a Record.  It's a cohesive collection of related data to be evaluated, examined, and manipulated as a collective whole, in a uniquely Appian sort of way.

    A gridField is an interface component.  It shows multiple rows of data in tabular form on any interface you want, even the interfaces of a Record.

    You can make a Record Type, and in the Summary page of the Record that you can make you can make a gridField.  Or any of the other pages of the Record.  The record list which contains the list details for you to select one Record among them can be displayed as a grid, and then all full of gridFields on every page when you pick one.

    Find what data makes a cohesive whole to make a Record.

    Find what data WITHIN the Record would best be displayed as a grid, then use a gridField to display it.

  • 0
    Certified Lead Developer

    Assuming that you mean using a custom paging grid to "replace" the grid for a Record List - I've done this a few times in the past where I needed just a bit more customization on the "Record List" form itself than is allowed by the OOB record list grid configuration.  This could include extended filters (though you lose the ability to use the nice user-saved filters baked into the OOB product in recent versions), and/or an extended set of links / actions which would be launched on the context of the whole Record type and not as relevant to one particular entry.

  • 0
    Certified Lead Developer
    in reply to Dave Lewis

    I think I can understand where the confusion comes in.

    A Record Type is a massive conglomeration of data in a cohesive whole, and everything about the cohesive whole.  A whole thing like a Car, or a Person, or a Contract, or a Hotel Property.  For that you make a Record Type.

    For a smaller subset of that, or some chunk of data too small to need the Record Type treatment, you could use a CDT and show the CDTs in a gridField on some interface. 

    The key there is, though, that you still need a container for the interface to be IN.  It could be a Record Type, or an Action, or the start form of a process linked to a Sites page.

    So, is the thing so big that it should be a Record?  That's a design choice on your part.  You could tell us more about the data and what size it is and we could give our advice.

  • Thank you davidl, your explanation make things in my head clear. In my actual case I'm querying a view that it's a ten records summary of a big table (sum, groups and other conditions), when I click on one of that records I have to show all the records to which the previous data is related.
    Obviously I have created a CDT (and a constant) to query the view in DB. 
    Then since I wanted to make one of the columns clickable with a link and struggling with gridField I faced Record Type.

  • Thank you. I try to stick with OOB standards at the moment, but appreciate your point of view