

I quickly had issues with data consistency because the RecID field is not a permanent identifier for data. A RecID can be reused when a record is deleted and new data is inserted into the DB.įor example, after you populate the listbox with the records you want (using the RecID as the rowtag), this data now becomes stale. If another user deletes, let's say record 5 (RecID 5), and you click on the listbox with the rowtag of (RecID) 5 - any DB operations you perform with that RecID will be on the wrong data. Now you can get a closer, truer look at your control when your project is run in a web browser. I found it safer to place a ULLONG field in tables were I needed permanency and use either a Serial32 or Serial64 (which is basically a sequence) to generate a unique identifier for each record. Xojo 2022r4 includes a much improved WebListBox preview in the Layout Editor. I also set this field's "Unique" attribute to true. I retrieve both RecID and sequence number from the DB when populating a listbox and place one field in the rowtag and one in a column with a width of 0 making it invisible.

Which one goes where is up to you and your programming style. The new WebListbox has monster changes and I really cant do it justice in.
#Xojo weblistbox windows#
Xojo is a multi-platform, object-oriented application development tool that enables people to created high-quality, powerful and secure applications for the desktop (OS X, Windows and Linux), web and web-mobile. Web 2.0 is a complete reimagining of what Xojo web applications look like. The Xojo rowtag can also take an array if you want to get creative and put both the RecID and the sequence # in the rowtag.īefore I complete any record operations, i check the DB to see if the sequence # still exists and if so, does the RecID match. Xojo Web 2. Added HeaderPressed and HeaderStyle properties to WebListBox. If you are creating a web application, you’ve already noticed most of the time you are using WebListBox controls. A value can be an absolute value (in pixels), a percentage, a relative length expressed as 'i' where i is an integer, or an '' that indicates 'fill in the remaining width'. If true, the record still exits and I use a server side cursor to lock the record while I perform whatever operation needs to happen. A list of comma separated values, with each value controlling the width of the associated column. Continue reading Xojo IDE: WebListBox Preview.

If the sequence number doesn't exist, the record was deleted before I refreshed my listbox. ControlInstance List Inherits WebListBox.
#Xojo weblistbox download#
There are many ways to do this as Ruslan or Ivan can tell you. You find this example project in your Plugins Download as a Xojo project file within the examples folder.
