Configuring OData based models builder cannot load page and misc feedback (Banzai)

  • 1
  • Problem
  • Updated 3 years ago
  • In Progress
Have been playing around with External Data Source (specifically OData based) and ran in to several issues which in some cases resulted in my pages not even able to display in the builder any longer and requiring a "revert" to previous version.

Here's some high level information and feedback:

1) Initially when using the "External Object Name" field I thought it was just a straight text box so I typed in the value, saved the page and previewed but saw no data.  It wasn't intuitive to me that this was a "autocomplete" as each time I typed nothing changed so I just assumed it was a straight textbox.  I then decided to hit refresh and noticed that what I typed was gone which led me to determining that this must be an autocomplete field.

2) After figuring out that it was an autocomplete, I still was not getting any data but had no indication as to why.  I wasn't sure if the service was configured correctly, or if I was using the wrong name for the model, etc.  Possibly some messaging even if its in the console regarding that no result was found or something?  Because there are several levels of configuration, troubleshooting could be difficult without some messaging around what's occurring.

3) Unable to load page in builder - It appears that when an invalid External Object Name is input in the field and the page saved, it's rendered no longer usable and reverting is required.  Here's the steps:
a) Create OData config
b) Create new blank page
c) add model choosing OData service
d) type in a known "bad" name for External Object Name
e) Click Save
f) Refresh browser window
Expected: Page reloads / Actual: blocked UI at "Loading Model metadata" and uncaught typeerror: Cannot read property 'split' of undefined  (See screenshot below.)

4) Would be helpful I think (especially for troubleshooting issues, etc.) if the features like "Model Services" and "Authentication Providers" had a "test" button.  As it stands, you have to setup those two plus a model and identifying source of problem could be challenging.

5) Lastly, the addition of External Data Sources to Skuid opens up tremendous possibilities.  This is a truly incredible feature, thank you all!
Photo of Barry Schnell

Barry Schnell, Champion

  • 18,076 Points 10k badge 2x thumb

Posted 3 years ago

  • 1
Photo of Barry Schnell

Barry Schnell, Champion

  • 18,076 Points 10k badge 2x thumb
Sorry, appears the screenshot didn't pull in and for some reason it's not letting me edit the OP.  Here's the screen shot for #3.



Also, here is the page XML.  I was able to get this by clicking "View/Edit XML" after Step #3e before step #3f.

<skuidpage unsavedchangeswarning="yes" personalizationmode="server" showsidebar="true" showheader="true">   <models>
      <model id="NewModel" limit="20" query="true" createrowifnonefound="false" adapter="OData1-3" processonclient="true" service="ODataTestServiceRO">
         <fields/>
         <conditions/>
         <actions/>
      </model>
   </models>
   <components/>
   <resources>
      <labels/>
      <javascript/>
      <css/>
   </resources>
   <styles>
      <styleitem type="background" bgtype="none"/>
   </styles>
</skuidpage>
(Edited)
Photo of Rob Hatch

Rob Hatch, Official Rep

  • 44,006 Points 20k badge 2x thumb
Barry:   Thanks for these ideas.  Most of these are ideas for future enhancements,  but I do want to let you know that the issue related to bad Odata External Object name has been fixed.  You will get an error in the builder,  but the builder will load... 

We have had long discussions about that External Object Name.  In some OData sources we have found hundreds of object names - which makes a picklist control really problematic there.  This is why we are sticking with an autocomplete for the moment. 

Again - thanks for your ideas. 
Photo of Barry Schnell

Barry Schnell, Champion

  • 18,076 Points 10k badge 2x thumb
Thanks Rob and agreed, most are for future consideration/enhancement.

Couple of q's:

1) Will the External Object Name fix be included in the next release (still appears broken as of 7.34)
2) Regarding the autocomplete vs picklist, makes perfect sense to leave as a autocomplete.  What threw me off what just seeing the straight text box as opposed to a text box with a "mag glass" on the right and when I typed something in, nothing ever came back (was due to other issues that have since been addressed).  That said, the "Salesforce Object Name" field doesn't have a mag glass either :)  I think if the other issues weren't prohibiting the search from completing successfully, it wouldn't have drawn any attention.  Possibly a tooltip on the field to indicate the field is searchable?  As a future thing, would be cool to have a mag glass and a popup to pick from :)
Photo of Rob Hatch

Rob Hatch, Official Rep

  • 44,006 Points 20k badge 2x thumb
Re 1:  I think this is fixed.  At least I follow your repro steps above with an exisitng OData connector in our org and I get an error in the page - but the page loads.  What else are you doing here? 
Photo of Barry Schnell

Barry Schnell, Champion

  • 18,076 Points 10k badge 2x thumb
Hey Rob - I'm following the repro steps in the OP and still get the "split" error. In fact, I started with a brand new page last night just to be sure. Possibly you are running a pre-release version in your org?  I tested with 7.34.  Let me know and I can capture a video.  Thanks!
Photo of Barry Schnell

Barry Schnell, Champion

  • 18,076 Points 10k badge 2x thumb
Tested and confirmed as resolved as of Skuid 7.35 (update 7.4)