SyteLine Basics: Add a Field on a Form That’s Not Part of the IDO

Okay, we’ve all been there.  The users have requested that we add a field to a form.  No problem.  You load up the form, zip into Design mode and start looking through the IDO Collection.  Suddenly a grey cloud appears overhead and a single violin starts playing in the background.  The field they want isn’t part of the IDO.

(*Big Overdramatic SIGH*)

So much for a quick 5-minute modification. 

Well…if you’re like me and too lazy to modify the IDO, there is a solution as long as they only want to display the field and not edit it.

It’s possible to bind the field and the IDO Collection in one step.  Let’s look at an example starting with the Item Form.  Assume that the users want to see our #1 ranked vendor for this item.  As you may or may not know, this field is found in the itemvend table and is NOT part of the SLItems IDO (the standard IDO on the Items form.)

First, we need to add an Edit field which we’ll name editVendor as well as a Static field which contains our label of “#1 Vendor”.  Here’s what it should look like:

In the Binding field on the editVendor component, we need to add the following:

COLLECTION(SL.SLItemvends(PROPERTY(VendNum) FILTER(Item=FP(Item) AND Rank=1)))

Here’s a screen shot and unfortunately it runs off the edge of the screen:

This binds the appropriate Collection AND the Vendnum field for the matching Item and where Rank = 1.

Save your form and you’re all set.  You’ve just added a field that is outside the form IDO.

Leave a Reply

Your email address will not be published. Required fields are marked *