[Gambas-user] Safety for collections
bsteers4 at gmail.com
Tue Aug 22 13:41:34 CEST 2023
On Tue, 22 Aug 2023 at 12:19, BB <adamnt42 at gmail.com> wrote:
> On 22/8/23 8:38 pm, BB wrote:
> There is probably a simple way to do this, damned if I can see how.
> I have a collection of things (datObjects) that have a property
> (ObjectName::string) that in UML terms are Unique and ID. What I am trying
> to do is prevent the *replacement* of an object in the collection if the
> ObjectName is already there. Better still, I'd like to warn the user when
> they enter the ObjectName that it already exists.
> The input form has a TextBox for the ObjectName and a "save" button. The
> latter updates the collection, whose key is the ObjectName, either adding
> or amending the item in the collection. So I kind of need to do this:
> 1) Are they really trying to add a new item or update an existing one?
> If adding then prevent them from overwriting one with the same ObjectName,
> otherwise if amending then only allow changes to the other data and not the
> 2) Then update the collection accordingly.
> Is that clear? It isn't to me. Any input would really be appreciated.
> p.s. I am trying to avoid having separate Add and Update buttons for
> I may have oversimplified. The basic gen is that there is a form with a
> list of some type on the left and an "editor" panel on the right. The user
> clicks on an item in the list and the data for that item is loaded in the
> editor. Now the quick way for them to add a new item is to click on a
> similar one, give it a new name and change some of the other data as
> required, then click the save button. BUT the new name they use may already
> exist. ... ...
I may not be getting the jist as i only have simple code to suggest..
If datObjects.Exist(sName) Then
Dim c As Integer = 2
While dat.Objects.Exist(sName & Str(c))
sName = sName & Str(c)
That'll try Name2, Name3 etc till a free name is found.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the User