From gbWilly at protonmail.com Fri Jul 7 00:16:08 2023 From: gbWilly at protonmail.com (gbWilly) Date: Thu, 06 Jul 2023 22:16:08 +0000 Subject: [Gambas-user] Curious about --disable-qtwebkit Message-ID: Hi, The .gitlab-ci.yml file on master does this for debian oldstable, stable and testing: GAMBAS_CONFIG_FAILURE=1./configure-C--disable-keyring--disable-sqlite2--disable-qt4--disable-qtwebkit I get all the disables exept for the --disable-qtwebkit Do these Debian versions not meet the dependencies to support it? For debian unstable it seems no problem: GAMBAS_CONFIG_FAILURE=1./configure-C--disable-keyring--disable-qt4--disable-sqlite2 Just curious behind the why. gbWilly Sent with [Proton Mail](https://proton.me/) secure email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From benoit.minisini at gambas-basic.org Fri Jul 7 00:26:17 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Fri, 7 Jul 2023 00:26:17 +0200 Subject: [Gambas-user] Release of Gambas 3.18.3 Message-ID: <3cc3d3e5-af52-45db-6457-e28d19bf530b@gambas-basic.org> Hi, I have just officially released Gambas 3.18.3, with a few more fixes comparing with the pre-release. Release notes are at: https://gambaswiki.org/wiki/doc/release/3.18.3. Source code is at: https://gitlab.com/gambas/gambas/-/archive/3.18.3/gambas-3.18.3.tar.bz2 Ubuntu binary packages should be available soon on the Gambas stable PPA. Enjoy it! -- Beno?t Minisini. From benoit.minisini at gambas-basic.org Fri Jul 7 00:24:55 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Fri, 7 Jul 2023 00:24:55 +0200 Subject: [Gambas-user] Curious about --disable-qtwebkit In-Reply-To: References: Message-ID: <64321738-46d2-4de6-f9ae-b9dfc55a20ae@gambas-basic.org> Le 07/07/2023 ? 00:16, gbWilly via User a ?crit?: > Hi, > > The .gitlab-ci.yml file on master does this for debian oldstable, stable > and testing: > |GAMBAS_CONFIG_FAILURE=1./configure-C--disable-keyring--disable-sqlite2--disable-qt4--disable-qtwebkit| > | > | > I get all the disables exept for the --disable-qtwebkit > Do these Debian versions not meet the dependencies to support it? > > For debian unstable it seems no problem: > |GAMBAS_CONFIG_FAILURE=1./configure-C--disable-keyring--disable-qt4--disable-sqlite2| > | > | > Just curious behind the why. > > gbWilly > > Sent with Proton Mail secure email. > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- I don't know, I don't use Debian. If you confirm that it works with these versions of Debian, I can remove the flag. But I think the problem is in using implicit Debian versions instead of explicit ones, as the flags depends on a specific version, not on if it's the current oldstable, stable... Regards, -- Beno?t Minisini. From gbWilly at protonmail.com Fri Jul 7 01:26:51 2023 From: gbWilly at protonmail.com (gbWilly) Date: Thu, 06 Jul 2023 23:26:51 +0000 Subject: [Gambas-user] Curious about --disable-qtwebkit In-Reply-To: <64321738-46d2-4de6-f9ae-b9dfc55a20ae@gambas-basic.org> References: <64321738-46d2-4de6-f9ae-b9dfc55a20ae@gambas-basic.org> Message-ID: > Le 07/07/2023 ? 00:16, gbWilly via User a ?crit : > > > Hi, > > > > The .gitlab-ci.yml file on master does this for debian oldstable, stable > > and testing: > > |GAMBAS_CONFIG_FAILURE=1./configure-C--disable-keyring--disable-sqlite2--disable-qt4--disable-qtwebkit| > > | > > | > > I get all the disables exept for the --disable-qtwebkit > > Do these Debian versions not meet the dependencies to support it? > > > > For debian unstable it seems no problem: > > |GAMBAS_CONFIG_FAILURE=1./configure-C--disable-keyring--disable-qt4--disable-sqlite2| > > | > > | > > Just curious behind the why. > > > > gbWilly > > > > Sent with Proton Mail https://proton.me/ secure email. > > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > > > I don't know, I don't use Debian. If you confirm that it works with > these versions of Debian, I can remove the flag. This is the rules file for current stable version 3.18.0 on debian stable repository (bookworm)(https://tracker.debian.org/media/packages/g/gambas3/rules-3.18.0-4) And thus this is what they do that seems to work as I do have a qt5-webkit component on old stable (bullseye -> gambas 3.15.2) > But I think the problem is in using implicit Debian versions instead of > explicit ones, as the flags depends on a specific version, not on if > it's the current oldstable, stable... I agree very much good sir. You can name them by their real name, it would be better (and also works better for repository management in my opinion. It would make packaging a lot easier, to figure out. And just like on Ubuntu it should be possible to package for older versions of Debian as well, still running qt4 for example. Using them by their real name makes the recipe easier as you know what can and can't be done on the different Debian versions dependency wise, and so makes automation of the process easier as well. > > Regards, > > -- > Beno?t Minisini. > gbWilly From gradobag at gradobag.it Fri Jul 7 17:26:29 2023 From: gradobag at gradobag.it (Gianluigi) Date: Fri, 7 Jul 2023 17:26:29 +0200 Subject: [Gambas-user] DataView Help Message-ID: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> Hi Benoit, in this (*) your response to Hans, to have more control over the data, you suggest the use of DataView and custom buttons. (*) https://lists.gambas-basic.org/pipermail/user/2022-August/076746.html For the past few days I have been trying to figure out how to insert new data (Minnie) into the project table that you can download at this link: https://paste.c-net.org/TrippPaolo (It weighs too much because of the presence of images). Can you kindly put me on the right track? I thank you for your attention and sorry for my ignorance Regards Gianluigi From bsteers4 at gmail.com Fri Jul 7 18:02:51 2023 From: bsteers4 at gmail.com (Bruce Steers) Date: Fri, 7 Jul 2023 17:02:51 +0100 Subject: [Gambas-user] Curious about --disable-qtwebkit In-Reply-To: References: <64321738-46d2-4de6-f9ae-b9dfc55a20ae@gambas-basic.org> Message-ID: On Fri, 7 Jul 2023, 00:27 gbWilly via User, wrote: > > Le 07/07/2023 ? 00:16, gbWilly via User a ?crit : > > > > > Hi, > > > > > > The .gitlab-ci.yml file on master does this for debian oldstable, > stable > > > and testing: > > > > |GAMBAS_CONFIG_FAILURE=1./configure-C--disable-keyring--disable-sqlite2--disable-qt4--disable-qtwebkit| > > > | > > > | > > > I get all the disables exept for the --disable-qtwebkit > > > Do these Debian versions not meet the dependencies to support it? > > > > > > For debian unstable it seems no problem: > > > > |GAMBAS_CONFIG_FAILURE=1./configure-C--disable-keyring--disable-qt4--disable-sqlite2| > > > | > > > | > > > Just curious behind the why. > > > > > > gbWilly > > > > > > Sent with Proton Mail https://proton.me/ secure email. > > > > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > > > > > > I don't know, I don't use Debian. If you confirm that it works with > > these versions of Debian, I can remove the flag. > > This is the rules file for current stable version 3.18.0 on debian stable > repository (bookworm)( > https://tracker.debian.org/media/packages/g/gambas3/rules-3.18.0-4) > And thus this is what they do that seems to work as I do have a qt5-webkit > component on old stable (bullseye -> gambas 3.15.2) > > > But I think the problem is in using implicit Debian versions instead of > > explicit ones, as the flags depends on a specific version, not on if > > it's the current oldstable, stable... > > I agree very much good sir. > You can name them by their real name, it would be better (and also works > better for repository management in my opinion. It would make packaging a > lot easier, to figure out. > > And just like on Ubuntu it should be possible to package for older > versions of Debian as well, still running qt4 for example. > > Using them by their real name makes the recipe easier as you know what can > and can't be done on the different Debian versions dependency wise, and so > makes automation of the process easier as well. > He's right I reckon. I just tried changing all Debian images to their explicit names (except sid) Also removed WebKit disable on them all and all that was needed was unstable needed ncurses6-dev changed to ncurses-dev. They all compiled all components without error. https://gitlab.com/bsteers4/gambas/-/tree/deb-named Maybe Debian buster should also be added? Respects BruceS > -------------- next part -------------- An HTML attachment was scrubbed... URL: From gbWilly at protonmail.com Fri Jul 7 18:20:07 2023 From: gbWilly at protonmail.com (gbWilly) Date: Fri, 07 Jul 2023 16:20:07 +0000 Subject: [Gambas-user] Curious about --disable-qtwebkit In-Reply-To: References: <64321738-46d2-4de6-f9ae-b9dfc55a20ae@gambas-basic.org> Message-ID: ------- Original Message ------- On Friday, July 7th, 2023 at 18:02, Bruce Steers wrote: > On Fri, 7 Jul 2023, 00:27 gbWilly via User, wrote: > >>> Le 07/07/2023 ? 00:16, gbWilly via User a ?crit : >> >>> I don't know, I don't use Debian. If you confirm that it works with >>> these versions of Debian, I can remove the flag. >> >> This is the rules file for current stable version 3.18.0 on debian stable repository (bookworm)(https://tracker.debian.org/media/packages/g/gambas3/rules-3.18.0-4) >> And thus this is what they do that seems to work as I do have a qt5-webkit component on old stable (bullseye -> gambas 3.15.2) >> >>> But I think the problem is in using implicit Debian versions instead of >>> explicit ones, as the flags depends on a specific version, not on if >>> it's the current oldstable, stable... >> >> I agree very much good sir. >> You can name them by their real name, it would be better (and also works better for repository management in my opinion. It would make packaging a lot easier, to figure out. >> >> And just like on Ubuntu it should be possible to package for older versions of Debian as well, still running qt4 for example. >> >> Using them by their real name makes the recipe easier as you know what can and can't be done on the different Debian versions dependency wise, and so makes automation of the process easier as well. > > He's right I reckon. > > I just tried changing all Debian images to their explicit names (except sid) > Also removed WebKit disable on them all and all that was needed was unstable needed ncurses6-dev changed to ncurses-dev. > > They all compiled all components without error. > https://gitlab.com/bsteers4/gambas/-/tree/deb-named > > Maybe Debian buster should also be added? > > Respects > BruceS > >> I just saw your commit and commented on it if maybe buster could be added. Also saw the fix for unstable not compiling latest commits of Beno?t. Good one Bruce -------------- next part -------------- An HTML attachment was scrubbed... URL: From t.lee.davidson at gmail.com Fri Jul 7 21:46:17 2023 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Fri, 7 Jul 2023 15:46:17 -0400 Subject: [Gambas-user] DataView Help In-Reply-To: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> Message-ID: On 7/7/23 11:26, Gianluigi wrote: > Hi Benoit, > > in this (*) your response to Hans, to have more control over the data, you suggest the use of DataView and custom buttons. > > (*) https://lists.gambas-basic.org/pipermail/user/2022-August/076746.html > > For the past few days I have been trying to figure out how to insert new data (Minnie) into the project table that you can > download at this link: > > https://paste.c-net.org/TrippPaolo > > (It weighs too much because of the presence of images). > > Can you kindly put me on the right track? > > I thank you for your attention and sorry for my ignorance > > Regards > > Gianluigi Well I'm not Beno?t, obviously, but here are my observations from playing around with it. First, I think DataView.Create and DataSource.Create should be separated into distinct event handlers as in the code below, because one is for creating a new record and the other is for saving the record. Second, I suspect the difficulty you are having is due to bugs in the Controls. The only way I found to get the DataView to add a new blank record, is to set it Editable prior to calling the Create method. The DataControls are then blanked out, but the DataView still does not display the new blank record. The saving of only a partial record appears to be caused by the behavior of the date chooser in the DataControl for the 'birth_date' field. When that dialog is closed (either by pressing ESC or by clicking on the field), the record is automatically saved. Fields that have not yet been populated with data are set to null values in the database. The last record in the DataView is indeed duplicated in the display, but not in the database. The newly created record is actually inserted into the database but not displayed. DataView.Update appears to do nothing. [code] Public Sub btnAdd_Click() '' When I try to enter the data the last record doubles in the DataView '' but actually a partial record is added. '' Disaster :-( DataView1.Editable = True DataView1.Create DataView1.Editable = False End Public Sub btnSave_Click() DataSource1.Create DataView1.Update ' Appears to do nothing End [/code] -- Lee From gbWilly at protonmail.com Fri Jul 7 22:07:00 2023 From: gbWilly at protonmail.com (gbWilly) Date: Fri, 07 Jul 2023 20:07:00 +0000 Subject: [Gambas-user] qt4/qt5 and gb.gui.qt Message-ID: Hi all, I'm working on some old projects that have been laying around catching dust for years. Now all these projects use gb.qt4 and qt4.ext. Since I still have a few old systems running qt4 and the newer systems running qt5 I decided to go for gb.gui.qt, so that applications will install on all systems regardless of qt4 or qt5. So far so good, but what about gb.qt4.ext. It provides me with TextEditor which I use in some projects. There is no gb.gui.qt.ext component to provide me with TextEdit in the IDE and my compiler complains and doesn't open my forms with TextEditor on them. So, if I want TextEditor I need to choose for either qt4 or qt5, which kinda makes no sense if you want to make packages that work on both environments. Any foreseen solutions for this problem? Anybody else run into this maybe? gbWilly Sent with [Proton Mail](https://proton.me/) secure email. -------------- next part -------------- An HTML attachment was scrubbed... URL: From gradobag at gradobag.it Fri Jul 7 22:42:20 2023 From: gradobag at gradobag.it (Gianluigi) Date: Fri, 7 Jul 2023 22:42:20 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> Message-ID: <9a060b85-2f80-069c-e3c9-94a3cf29e015@gradobag.it> Il 07/07/23 21:46, T Lee Davidson ha scritto: > Well I'm not Beno?t, obviously, but here are my observations from > playing around with it. > > First, I think DataView.Create and DataSource.Create should be > separated... Hi Lee, I thank you very much for your prompt reply. Tomorrow morning I wake up early and work, so now I go to sleep. In the afternoon I will study on what you wrote me and reply to you. I wish you all the best Gianluigi From t.lee.davidson at gmail.com Sat Jul 8 00:27:53 2023 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Fri, 7 Jul 2023 18:27:53 -0400 Subject: [Gambas-user] qt4/qt5 and gb.gui.qt In-Reply-To: References: Message-ID: On 7/7/23 16:07, gbWilly via User wrote: > Hi all, > > I'm working on some old projects that have been laying around catching dust for years. > Now all these projects use gb.qt4 and qt4.ext. > > Since I still have a few old systems running qt4 and the newer systems running qt5 I decided to go for gb.gui.qt, so that > applications will install on all systems regardless of qt4 or qt5. > > So far so good, but what about gb.qt4.ext. It provides me with TextEditor which I use in some projects. There is no > gb.gui.qt.ext component to provide me with TextEdit in the IDE and my compiler complains and doesn't open my forms with > TextEditor on them. > > So, if I want TextEditor I need to choose for either qt4 or qt5, which kinda makes no sense if you want to make packages that > work on both environments. > > Any foreseen solutions for this problem? > Anybody else run into this maybe? > > gbWilly > > Sent with Proton Mail secure email. Perhaps load it dynamically based upon which graphical toolkit version got loaded: Public Sub Form_Open() If Component.IsLoaded("gb.qt5") Then Component.Load("gb.qt5.ext") Else Component.Load("gb.qt4.ext") Endif End -- Lee From gbWilly at protonmail.com Sat Jul 8 02:25:30 2023 From: gbWilly at protonmail.com (gbWilly) Date: Sat, 08 Jul 2023 00:25:30 +0000 Subject: [Gambas-user] qt4/qt5 and gb.gui.qt In-Reply-To: References: Message-ID: ------- Original Message ------- On Saturday, July 8th, 2023 at 00:27, T Lee Davidson wrote: > On 7/7/23 16:07, gbWilly via User wrote: > > > Hi all, > > > > I'm working on some old projects that have been laying around catching dust for years. > > Now all these projects use gb.qt4 and qt4.ext. > > > > Since I still have a few old systems running qt4 and the newer systems running qt5 I decided to go for gb.gui.qt, so that > > applications will install on all systems regardless of qt4 or qt5. > > > > So far so good, but what about gb.qt4.ext. It provides me with TextEditor which I use in some projects. There is no > > gb.gui.qt.ext component to provide me with TextEdit in the IDE and my compiler complains and doesn't open my forms with > > TextEditor on them. > > > > So, if I want TextEditor I need to choose for either qt4 or qt5, which kinda makes no sense if you want to make packages that > > work on both environments. > > > > Any foreseen solutions for this problem? > > Anybody else run into this maybe? > > > > gbWilly > > > > Sent with Proton Mail https://proton.me/ secure email. > > > Perhaps load it dynamically based upon which graphical toolkit version got loaded: > Public Sub Form_Open() > > If Component.IsLoaded("gb.qt5") Then > Component.Load("gb.qt5.ext") > Else > Component.Load("gb.qt4.ext") > Endif > > End > Hi Lee, I have two problems with that: 1. To be able to use TextEditor in IDE during desing and coding I need to activate gb.qt5.ext on my system (as I have no qt4 on this system, nor gb.qt4 packages). This will activate gb.qt5 as well which in its turn creates an incompatibility with the selected gb.gui.qt. So, to design and test I have stick with qt5, no problem, but.... see 2. 2. If I now make a package to install on a qt4 system it will not install, as it packaged with gb.qt5 and gb.qt5.ext, and these systems only have gb.qt4 and gb.qt4.ext (older systems as I said). So, to make a package for both qt4 and qt5 I need gb.gui.qt which will install depending on what is available on the target system. I can't package for gb.gui.qt as I have no gb.gui.qt.ext. And no gb.gui.ext also complains during compilation with a TextEditor on a form, so forget making a package without it, unless you remove the TextEditor of course... As a workaround I would need to make a package on a qt5 system with gb.qt5 and gb.qt5.ext enabled as dependency and next on an older system make a package with gb.qt4 and gb.qt4.ext enabled as dependency. So, I have a workaround, but it kind off makes no sense to have no gb.gui.qt.ext component so you can package applications using TextEditor gb.qt4/gb.qt5 independent. But anayway thanks for thinking along, gbWilly From t.lee.davidson at gmail.com Sat Jul 8 06:07:04 2023 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Sat, 8 Jul 2023 00:07:04 -0400 Subject: [Gambas-user] qt4/qt5 and gb.gui.qt In-Reply-To: References: Message-ID: <0c596551-83f4-03f9-f47b-408789a9c2d0@gmail.com> On 7/7/23 20:25, gbWilly via User wrote: > Hi Lee, > [snip] > > So, to make a package for both qt4 and qt5 I need gb.gui.qt which will install depending on what is available on the target system. I can't package for gb.gui.qt as I have no gb.gui.qt.ext. And no gb.gui.ext also complains during compilation with a TextEditor on a form, so forget making a package without it, unless you remove the TextEditor of course... Ah, yes, I see what you mean. [snip] > So, I have a workaround, but it kind off makes no sense to have no gb.gui.qt.ext component so you can package applications using TextEditor gb.qt4/gb.qt5 independent. I agree. It is quite a sticky conundrum. There is another potential workaround, but it seems rather ugly. I created a working app with TextEdit based on gb.qt5 and gb.qt5.ext. Then, in the packaging wizard step "7. Extra dependencies", I added gb.qt4 and gb.qt4.ext. The installation software (YAST2 on this system) complains that nothing can provide gb.qt4 and gives the option to break the application by ignoring some of its dependencies. I chose that option and then also told the installer to ignore the failed integrity check. It installed, and works. I do not know if that strategy would work to install on a qt4 system since the TextEdit component (coded with gb.qt5.ext) may have a hard dependency on qt5, and I also have no gb.qt4 nor gb.qt4.ext available to test it. -- Lee From adamnt42 at gmail.com Sat Jul 8 10:28:54 2023 From: adamnt42 at gmail.com (BB) Date: Sat, 8 Jul 2023 17:58:54 +0930 Subject: [Gambas-user] qt4/qt5 and gb.gui.qt In-Reply-To: <0c596551-83f4-03f9-f47b-408789a9c2d0@gmail.com> References: <0c596551-83f4-03f9-f47b-408789a9c2d0@gmail.com> Message-ID: On 8/7/23 1:37 pm, T Lee Davidson wrote: > On 7/7/23 20:25, gbWilly via User wrote: >> Hi Lee, >> > [snip] >> >> So, to make a package for both qt4 and qt5 I need gb.gui.qt which >> will install depending on what is available on the target system. I >> can't package for gb.gui.qt as I have no gb.gui.qt.ext. And no >> gb.gui.ext also complains during compilation with a TextEditor on a >> form, so forget making a package without it, unless you remove the >> TextEditor of course... > > Ah, yes, I see what you mean. > > > [snip] >> So, I have a workaround, but it kind off makes no sense to have no >> gb.gui.qt.ext component so you can package applications using >> TextEditor gb.qt4/gb.qt5 independent. > > I agree. It is quite a sticky conundrum. There is another potential > workaround, but it seems rather ugly. > > I created a working app with TextEdit based on gb.qt5 and gb.qt5.ext. > Then, in the packaging wizard step "7. Extra dependencies", I added > gb.qt4 and gb.qt4.ext. > > The installation software (YAST2 on this system) complains that > nothing can provide gb.qt4 and gives the option to break the > application by ignoring some of its dependencies. I chose that option > and then also told the installer to ignore the failed integrity check. > > It installed, and works. I do not know if that strategy would work to > install on a qt4 system since the TextEdit component (coded with > gb.qt5.ext) may have a hard dependency on qt5, and I also have no > gb.qt4 nor gb.qt4.ext available to test it. > > Well both the sources of CTextEdit.cpp and CTextEdit.h are the same in the qt4 and qt5 directories I can't see there would be some qt5 dependency. b From gradobag at gradobag.it Sat Jul 8 15:39:52 2023 From: gradobag at gradobag.it (Gianluigi) Date: Sat, 8 Jul 2023 15:39:52 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> Message-ID: <9e620614-a928-6d81-6b80-680f0489e3d4@gradobag.it> Il 07/07/23 21:46, T Lee Davidson ha scritto: > On 7/7/23 11:26, Gianluigi wrote: >> Hi Benoit, >> >> in this (*) your response to Hans, to have more control over the >> data, you suggest the use of DataView and custom buttons. >> >> (*) >> https://lists.gambas-basic.org/pipermail/user/2022-August/076746.html >> >> For the past few days I have been trying to figure out how to insert >> new data (Minnie) into the project table that you can download at >> this link: >> >> https://paste.c-net.org/TrippPaolo >> >> (It weighs too much because of the presence of images). >> >> Can you kindly put me on the right track? >> >> I thank you for your attention and sorry for my ignorance >> >> Regards >> >> Gianluigi Dear Lee, > > Well I'm not Beno?t, obviously, but here are my observations from > playing around with it. Better than Benoit :-P since you answered :-) Maybe I shouldn't have written it since I'm hoping a response from him :-\ > > First, I think DataView.Create and DataSource.Create should be > separated into distinct event handlers as in the code below, because > one is for creating a new record and the other is for saving the record. I thought I could use it with bUpdate to False and to save the records written in the DataControls use DataSource.Save, with the BeforeSave preemptive filter. But even so it shows all the malfunctions already described, even by you (more precisely). > > Second, I suspect the difficulty you are having is due to bugs in the > Controls. I think you are referring to DataSource and DataView > > The only way I found to get the DataView to add a new blank record, is > to set it Editable prior to calling the Create method. The > DataControls are then blanked out, but the DataView still does not > display the new blank record. The final behavior is always the same as you rightly write immediately afterwards: > > The saving of only a partial record appears to be caused by the > behavior of the date chooser in the DataControl for the 'birth_date' > field. When that dialog is closed (either by pressing ESC or by > clicking on the field), the record is automatically saved. Fields that > have not yet been populated with data are set to null values in the > database. > > The last record in the DataView is indeed duplicated in the display, > but not in the database. The newly created record is actually inserted > into the database but not displayed. > > DataView.Update appears to do nothing. What do you suggest, do I write a bugtracker report and if so what should I say more (or less) than this? Benoit wants one bug at a time but in this case how to do it? > > [code] ... Regards Gianluigi From t.lee.davidson at gmail.com Sat Jul 8 17:53:04 2023 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Sat, 8 Jul 2023 11:53:04 -0400 Subject: [Gambas-user] DataView Help In-Reply-To: <9e620614-a928-6d81-6b80-680f0489e3d4@gradobag.it> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <9e620614-a928-6d81-6b80-680f0489e3d4@gradobag.it> Message-ID: <1f9aef5e-95d4-0915-1d31-dd0cfecdf92b@gmail.com> On 7/8/23 09:39, Gianluigi wrote: > Il 07/07/23 21:46, T Lee Davidson ha scritto: [snip] >> First, I think DataView.Create and DataSource.Create should be separated into distinct event handlers as in the code below, >> because one is for creating a new record and the other is for saving the record. > I thought I could use it with bUpdate to False and to save the records written in the DataControls use DataSource.Save, with the > BeforeSave preemptive filter. > But even so it shows all the malfunctions already described, even by you (more precisely). Okay. I can't see any reason why that strategy wouldn't work. But, the function of creating a new record for editing (Add) and the function of saving the edited record (Save) should be separated. Otherwise, the user would have no opportunity to edit the record before it is saved with DataSource.Create. >> >> Second, I suspect the difficulty you are having is due to bugs in the Controls. > I think you are referring to DataSource and DataView Yes, I was referring to the data controls; primarily DataView but also DataControl. > What do you suggest, do I write a bugtracker report and if so what should I say more (or less) than this? > Benoit wants one bug at a time but in this case how to do it? There appear to be four issues: 1. DataView.Create does not add a new record unless DataView.Editable=True. This may be intended behavior; I don't know. 2. When a newly created record is saved with DataSource.Create, DataView improperly displays the updated table data by duplicating the last record instead of showing the new (correctly saved) record. 3. DataView.Update appears to do nothing. (I added a 'refresh' ToolButton to the form to explicitly test this.) 4. The date chooser presented in a DataControl for a date-based field automatically saves the record when it is closed. It should not do so. -- Lee From t.lee.davidson at gmail.com Sat Jul 8 17:55:19 2023 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Sat, 8 Jul 2023 11:55:19 -0400 Subject: [Gambas-user] DataView Help In-Reply-To: <1f9aef5e-95d4-0915-1d31-dd0cfecdf92b@gmail.com> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <9e620614-a928-6d81-6b80-680f0489e3d4@gradobag.it> <1f9aef5e-95d4-0915-1d31-dd0cfecdf92b@gmail.com> Message-ID: <2663839e-7a0e-5eee-5964-27f24984fd6b@gmail.com> On 7/8/23 11:53, T Lee Davidson wrote: > 4. The date chooser presented in a DataControl for a date-based field automatically saves the record when it is closed. It > should?not?do?so. > Edit: 4. The data chooser *dialog* presented ... -- Lee From gradobag at gradobag.it Sat Jul 8 18:26:30 2023 From: gradobag at gradobag.it (Gianluigi) Date: Sat, 8 Jul 2023 18:26:30 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <1f9aef5e-95d4-0915-1d31-dd0cfecdf92b@gmail.com> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <9e620614-a928-6d81-6b80-680f0489e3d4@gradobag.it> <1f9aef5e-95d4-0915-1d31-dd0cfecdf92b@gmail.com> Message-ID: <1c53ab9a-2ffe-bcee-77e3-7b48ccec0e79@gradobag.it> Il 08/07/23 17:53, T Lee Davidson ha scritto: > On 7/8/23 09:39, Gianluigi wrote: >> Il 07/07/23 21:46, T Lee Davidson ha scritto: > [snip] >>> First, I think DataView.Create and DataSource.Create should be >>> separated into distinct event handlers as in the code below, because >>> one is for creating a new record and the other is for saving the >>> record. >> I thought I could use it with bUpdate to False and to save the >> records written in the DataControls use DataSource.Save, with the >> BeforeSave preemptive filter. >> But even so it shows all the malfunctions already described, even by >> you (more precisely). > > Okay. I can't see any reason why that strategy wouldn't work. But, the > function of creating a new record for editing (Add) and the function > of saving the edited record (Save) should be separated. Otherwise, the > user would have no opportunity to edit the record before it is saved > with DataSource.Create. > >>> >>> Second, I suspect the difficulty you are having is due to bugs in >>> the Controls. >> I think you are referring to DataSource and DataView > > Yes, I was referring to the data controls; primarily DataView but also > DataControl. > >> What do you suggest, do I write a bugtracker report and if so what >> should I say more (or less) than this? >> Benoit wants one bug at a time but in this case how to do it? > > There appear to be four issues: > > 1. DataView.Create does not add a new record unless > DataView.Editable=True. This may be intended behavior; I don't know. > > 2. When a newly created record is saved with DataSource.Create, > DataView improperly displays the updated table data by duplicating the > last record instead of showing the new (correctly saved) record. > > 3. DataView.Update appears to do nothing. (I added a 'refresh' > ToolButton to the form to explicitly test this.) > > 4. The date chooser presented in a DataControl for a date-based field > automatically saves the record when it is closed. It should not do so. > > Hi Lee, thank you again for your prompt reply. Before sending a report with your suggestions, I will try to see if Benoit would like to respond. I agree that you can't save something before you ... save it :-) But I refer you to the FBrowser New button code of the gb.db.form component and this says: Public Sub btnNew_Click() ? 'DIM hSrc AS DataSource = Common.GetSource(ME) ? 'IF NOT hSrc THEN RETURN ? dvwBrowser.Create ? $hSrc.Create ? '$iIndex = -1 End dvwBrowser is actually a DataView and $hSrc is the DataSource btnNew is like my btnAdd With best regards Gianluigi From claus.dietrich at freenet.de Sat Jul 8 18:24:53 2023 From: claus.dietrich at freenet.de (Claus Dietrich) Date: Sat, 8 Jul 2023 18:24:53 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <9e620614-a928-6d81-6b80-680f0489e3d4@gradobag.it> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <9e620614-a928-6d81-6b80-680f0489e3d4@gradobag.it> Message-ID: <2b9dab71-fca0-f3a5-1c7b-94119f992334@freenet.de> Am 08.07.23 um 15:39 schrieb Gianluigi: > Il 07/07/23 21:46, T Lee Davidson ha scritto: >> On 7/7/23 11:26, Gianluigi wrote: >> >> DataView.Update appears to do nothing. > What do you suggest, do I write a bugtracker report and if so what > should I say more (or less) than this? > Benoit wants one bug at a time but in this case how to do it? >> [code] ... > Regards > Gianluigi What an incidence. Yesterday I sent an email to Hans and reported the same issue - without having seen this thread. I finally succeeded to update the DataView after a change of a cell, but this can only be done when the control is entirely re-initialized, including all formatting stuff.? I wouldn't call it a bug, but I suggest to place a feature request for an update of displayed records when they have been changed by code.? BTW, I was surprised that the DataSource doesn't throw a Change or BeforeSave event like with the DataBrowser. It should be checked, whether the DataBrowser has the same problem. Data-bound controls of Microsoft have such an "update" function. Quote: "Used in updating operations to attempt to update the displayed record in the data source with the values provided by the user. Raises the ItemUpdating and ItemUpdated events." Best regards Claus -------------- next part -------------- An HTML attachment was scrubbed... URL: From gradobag at gradobag.it Sat Jul 8 19:05:28 2023 From: gradobag at gradobag.it (Gianluigi) Date: Sat, 8 Jul 2023 19:05:28 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <2b9dab71-fca0-f3a5-1c7b-94119f992334@freenet.de> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <9e620614-a928-6d81-6b80-680f0489e3d4@gradobag.it> <2b9dab71-fca0-f3a5-1c7b-94119f992334@freenet.de> Message-ID: <06ee34dd-b65e-70c6-98d0-5253abab24ee@gradobag.it> Il 08/07/23 18:24, Claus Dietrich ha scritto: > Am 08.07.23 um 15:39 schrieb Gianluigi: >> Il 07/07/23 21:46, T Lee Davidson ha scritto: >>> On 7/7/23 11:26, Gianluigi wrote: >>> >>> DataView.Update appears to do nothing. >> What do you suggest, do I write a bugtracker report and if so what >> should I say more (or less) than this? >> Benoit wants one bug at a time but in this case how to do it? >>> [code] ... >> Regards >> Gianluigi > > What an incidence. Yesterday I sent an email to Hans and reported the > same issue - without having seen this thread. I finally succeeded to > update the DataView after a change of a cell, but this can only be > done when the control is entirely re-initialized, including all > formatting stuff.? I wouldn't call it a bug, but I suggest to place a > feature request for an update of displayed records when they have been > changed by code.? BTW, I was surprised that the DataSource doesn't > throw a Change or BeforeSave event like with the DataBrowser. > > It should be checked, whether the DataBrowser has the same problem. > > Data-bound controls of Microsoft have such an "update" function. > Quote: "Used in updating operations to attempt to update the displayed > record in the data source with the values provided by the user. Raises > the ItemUpdating and ItemUpdated events." > > Best regards > > Claus > Hi Claus, thanks for your reply, unfortunately the explanation of how you managed to update the DataView is not clear to me. Can you exemplify it with some code in the project present at this link: https://paste.c-net.org/TrippPaolo With best regards Gianluigi From benoit.minisini at gambas-basic.org Sat Jul 8 21:02:21 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Sat, 8 Jul 2023 21:02:21 +0200 Subject: [Gambas-user] qt4/qt5 and gb.gui.qt In-Reply-To: References: <0c596551-83f4-03f9-f47b-408789a9c2d0@gmail.com> Message-ID: <122f2b58-f335-fde1-11f0-b07a8b278c23@gambas-basic.org> Le 08/07/2023 ? 10:28, BB a ?crit?: > > Well both the sources of CTextEdit.cpp and CTextEdit.h are the same in > the qt4 and qt5 directories I can't see there would be some qt5 dependency. > > b > I don't know why I didn't make a 'gb.gui.qt.ext' package. It's just a matter of duplicating the source code of 'gb.gui.qt.opengl' and replace 'opengl' by 'ext'... -- Beno?t Minisini. From dickson.tim at googlemail.com Sun Jul 9 11:31:22 2023 From: dickson.tim at googlemail.com (Tim Dickson) Date: Sun, 9 Jul 2023 10:31:22 +0100 Subject: [Gambas-user] Release of Gambas 3.18.3 In-Reply-To: <3cc3d3e5-af52-45db-6457-e28d19bf530b@gambas-basic.org> References: <3cc3d3e5-af52-45db-6457-e28d19bf530b@gambas-basic.org> Message-ID: <7525eb54-a7ff-ded9-d102-3f802dfdf6ab@googlemail.com> slackbuild suitably updated and now live of slackbuilds.org regards, Tim On 06/07/2023 23:26, Benoit Minisini wrote: > Hi, > > I have just officially released Gambas 3.18.3, with a few more fixes > comparing with the pre-release. > > Release notes are at: > https://gambaswiki.org/wiki/doc/release/3.18.3. > > Source code is at: > https://gitlab.com/gambas/gambas/-/archive/3.18.3/gambas-3.18.3.tar.bz2 > > Ubuntu binary packages should be available soon on the Gambas stable PPA. > > Enjoy it! > From gradobag at gradobag.it Sun Jul 9 17:55:24 2023 From: gradobag at gradobag.it (Gianluigi) Date: Sun, 9 Jul 2023 17:55:24 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <06ee34dd-b65e-70c6-98d0-5253abab24ee@gradobag.it> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <9e620614-a928-6d81-6b80-680f0489e3d4@gradobag.it> <2b9dab71-fca0-f3a5-1c7b-94119f992334@freenet.de> <06ee34dd-b65e-70c6-98d0-5253abab24ee@gradobag.it> Message-ID: Hi, I made a small discovery, by using Lee's trick and taking the current index to -1 you no longer have duplications in DataView and if you exclude the date and image (which trigger the save), using DataSource.Save you get a new record. By doing this you also lose the ability to know the index and therefore all the efforts so far are in vain. I think I will give up and agree with those who claim that it is impossible to make a good program with gb.db.form. I hope with DB to have better luck I apologize to everyone for the inconvenience Sincere apologies are for Lee always available to help, sorry for the stolen time :-( Regards Gianluigi From benoit.minisini at gambas-basic.org Sun Jul 9 19:52:54 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Sun, 9 Jul 2023 19:52:54 +0200 Subject: [Gambas-user] qt4/qt5 and gb.gui.qt In-Reply-To: References: Message-ID: Le 07/07/2023 ? 22:07, gbWilly via User a ?crit?: > Hi all, > > I'm working on some old projects that have been laying around catching > dust for years. > Now all these projects use gb.qt4 and qt4.ext. > > Since I still have a few old systems running qt4 and the newer systems > running qt5 I decided to go for gb.gui.qt, so that applications will > install on all systems regardless of qt4 or qt5. > > So far so good, but what about gb.qt4.ext. It provides me with > TextEditor which I use in some projects. There is no gb.gui.qt.ext > component to provide me with TextEdit in the IDE and my compiler > complains and doesn't open my forms with TextEditor on them. > > So, if I want TextEditor I need to choose for either qt4 or qt5, which > kinda makes no sense if you want to make packages that work on both > environments. > > Any foreseen solutions for this problem? > Anybody else run into this maybe? > > gbWilly > > Sent with Proton Mail secure email. > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- Commit https://gitlab.com/gambas/gambas/-/commit/d431251e2c06698d3cfce48fad80b7bb882711fd brings a new 'gb.gui.qt.ext' component. If you can try it, tell me if it works! Regards, -- Beno?t Minisini. From benoit.minisini at gambas-basic.org Sun Jul 9 19:53:51 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Sun, 9 Jul 2023 19:53:51 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <9e620614-a928-6d81-6b80-680f0489e3d4@gradobag.it> <2b9dab71-fca0-f3a5-1c7b-94119f992334@freenet.de> <06ee34dd-b65e-70c6-98d0-5253abab24ee@gradobag.it> Message-ID: Le 09/07/2023 ? 17:55, Gianluigi a ?crit?: > Hi, > > I made a small discovery, by using Lee's trick and taking the current > index to -1 you no longer have duplications in DataView and if you > exclude the date and image (which trigger the save), using > DataSource.Save you get a new record. > By doing this you also lose the ability to know the index and therefore > all the efforts so far are in vain. > I think I will give up and agree with those who claim that it is > impossible to make a good program with gb.db.form. > > I hope with DB to have better luck > > I apologize to everyone for the inconvenience > > Sincere apologies are for Lee always available to help, sorry for the > stolen time :-( > > Regards > > Gianluigi > Hi, Can someone make a summary for my lazy brain of what the problem is exactly? -- Beno?t Minisini. From t.lee.davidson at gmail.com Sun Jul 9 21:19:39 2023 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Sun, 9 Jul 2023 15:19:39 -0400 Subject: [Gambas-user] DataView Help In-Reply-To: References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <9e620614-a928-6d81-6b80-680f0489e3d4@gradobag.it> <2b9dab71-fca0-f3a5-1c7b-94119f992334@freenet.de> <06ee34dd-b65e-70c6-98d0-5253abab24ee@gradobag.it> Message-ID: On 7/9/23 13:53, Benoit Minisini wrote: > Can?someone?make?a?summary?for?my?lazy?brain?of?what?the?problem?is?exactly? From my message yesterday: ~~~ There appear to be four issues: 1. DataView.Create does not add a new record unless DataView.Editable=True. This may be intended behavior; I don't know. 2. When a newly created record is saved with DataSource.Create, DataView improperly displays the updated table data by duplicating the last record instead of showing the new (correctly saved) record. 3. DataView.Update appears to do nothing. (I added a 'refresh' ToolButton to the form to explicitly test this.) 4. The date chooser dialog presented in a DataControl for a date-based field automatically saves the record when it is closed. It should not do so. Addendum: The image chooser dialog in a DataControl for an image-based field also causes an automatic save. (Edited from original for clarity.) ~~~ I hope that helps. -- Lee From t.lee.davidson at gmail.com Sun Jul 9 21:20:56 2023 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Sun, 9 Jul 2023 15:20:56 -0400 Subject: [Gambas-user] DataView Help In-Reply-To: References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <9e620614-a928-6d81-6b80-680f0489e3d4@gradobag.it> <2b9dab71-fca0-f3a5-1c7b-94119f992334@freenet.de> <06ee34dd-b65e-70c6-98d0-5253abab24ee@gradobag.it> Message-ID: <30c8bcf1-1e2c-6ca1-ff3a-61b771b008f4@gmail.com> On 7/9/23 11:55, Gianluigi wrote: > I?apologize?to?everyone?for?the?inconvenience > > Sincere apologies are for Lee always available to help, sorry for the stolen?time?? There was no stolen time, Gianluigi. It was time well spent. I'm glad you got at least some of it sorted out. -- Lee From gradobag at gradobag.it Sun Jul 9 22:52:35 2023 From: gradobag at gradobag.it (Gianluigi) Date: Sun, 9 Jul 2023 22:52:35 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <9e620614-a928-6d81-6b80-680f0489e3d4@gradobag.it> <2b9dab71-fca0-f3a5-1c7b-94119f992334@freenet.de> <06ee34dd-b65e-70c6-98d0-5253abab24ee@gradobag.it> Message-ID: <1e227691-4922-c1ad-2b7d-fc74603a4c17@gradobag.it> Il 09/07/23 19:53, Benoit Minisini ha scritto: > Hi, > > Can someone make a summary for my lazy brain of what the problem is > exactly? > > -- > Beno?t Minisini. Hi Benoit, following your advice ( https://lists.gambas-basic.org/pipermail/user/2022-August/076746.html ) I created a downloadable database project here ( https://paste.c-net.org/TrippPaolo ) I would like to: 1 - At startup sort the records by last name descendingly and select the first record (done) 2 - If a record is deleted, if the previous one exists it must be selected (done) 3 - If a record is added, the new record must take the correct place and be selected 4 - If a record changes, the changed record must keep the selection. Lee has listed for you the malfunctions or if you prefer our inability to do these simple things. Greetings and good night Gianluigi From gradobag at gradobag.it Sun Jul 9 23:04:59 2023 From: gradobag at gradobag.it (Gianluigi) Date: Sun, 9 Jul 2023 23:04:59 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <30c8bcf1-1e2c-6ca1-ff3a-61b771b008f4@gmail.com> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <9e620614-a928-6d81-6b80-680f0489e3d4@gradobag.it> <2b9dab71-fca0-f3a5-1c7b-94119f992334@freenet.de> <06ee34dd-b65e-70c6-98d0-5253abab24ee@gradobag.it> <30c8bcf1-1e2c-6ca1-ff3a-61b771b008f4@gmail.com> Message-ID: <464c992b-558e-d133-48be-8b410e4bb2a3@gradobag.it> Il 09/07/23 21:20, T Lee Davidson ha scritto: > There was no stolen time, Gianluigi. It was time well spent. I'm glad > you got at least some of it sorted out. > > > -- > Lee Dear Lee, you are an optimistic person :-) I don't see it the same way, with DataSource to avoid one problem you have to create three more :-( Regards Gianluigi From claus.dietrich at freenet.de Mon Jul 10 00:42:13 2023 From: claus.dietrich at freenet.de (Claus Dietrich) Date: Mon, 10 Jul 2023 00:42:13 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <06ee34dd-b65e-70c6-98d0-5253abab24ee@gradobag.it> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <9e620614-a928-6d81-6b80-680f0489e3d4@gradobag.it> <2b9dab71-fca0-f3a5-1c7b-94119f992334@freenet.de> <06ee34dd-b65e-70c6-98d0-5253abab24ee@gradobag.it> Message-ID: Am 08.07.23 um 19:05 schrieb Gianluigi: > Hi Claus, > > thanks for your reply, unfortunately the explanation of how you > managed to update the DataView is not clear to me. > Can you exemplify it with some code in the project present at this link: > https://paste.c-net.org/TrippPaolo > > With best regards > > Gianluigi > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- Hi Guianluigi Thanks for the very nice advanced example. While I was replicating my odd method to update the display of changed DataView records by code, I possibly found the correct (and simple) method. Here you can download the modified version: https://magentacloud.de/s/7k4Pf79SpeTiAGe It's all in the btnSave_Click() event routine. Caution!: Only a changed surname will be saved and updated - lazy me. So just change a surname and click on the save buttion. I am not sure whether the used DataControls can make it even more simple. I didn't use their data-bound functions yet. Best regards Claus From gradobag at gradobag.it Mon Jul 10 10:25:08 2023 From: gradobag at gradobag.it (Gianluigi) Date: Mon, 10 Jul 2023 10:25:08 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <9e620614-a928-6d81-6b80-680f0489e3d4@gradobag.it> <2b9dab71-fca0-f3a5-1c7b-94119f992334@freenet.de> <06ee34dd-b65e-70c6-98d0-5253abab24ee@gradobag.it> Message-ID: <9d1a8883-5a9c-cd40-26f5-eac7bfea2b70@gradobag.it> Il 10/07/23 00:42, Claus Dietrich ha scritto: > Hi Guianluigi > > Thanks for the very nice advanced example... Dear Claus, You're welcome, but if it were advanced it would work, unfortunately it doesn't here btnSave works even with just Save on DataView and DataBrowser, however you do, the selection is lost. Note that it works even without the btnSave if you change last name and click on the grid. The mystery of DataSource continues, I think the only way is to create a component to our liking, with the usual problem that as soon as something changes in Gambas, it stops working. Regards Gianluigi P.S. In addition to that of Lee's, You should reread my last e-mail to Benoit. From benoit.minisini at gambas-basic.org Mon Jul 10 12:40:16 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Mon, 10 Jul 2023 12:40:16 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <9e620614-a928-6d81-6b80-680f0489e3d4@gradobag.it> <2b9dab71-fca0-f3a5-1c7b-94119f992334@freenet.de> <06ee34dd-b65e-70c6-98d0-5253abab24ee@gradobag.it> Message-ID: <644996aa-f076-a7ee-5bab-25808795123e@gambas-basic.org> Le 09/07/2023 ? 21:19, T Lee Davidson a ?crit?: > On 7/9/23 13:53, Benoit Minisini wrote: >> Can?someone?make?a?summary?for?my?lazy?brain?of?what?the?problem?is?exactly? > > From my message yesterday: > ~~~ > There appear to be four issues: > > 1. DataView.Create does not add a new record unless > DataView.Editable=True. This may be intended behavior; I don't know. DataView.Create() does not add a new record, it enters new record editing mode. So it's logical that you can't do that if the DataView is read-only. > > 2. When a newly created record is saved with DataSource.Create, DataView > improperly displays the updated table data by duplicating the last > record instead of showing the new (correctly saved) record. DataSource.Create() does not create a new record. It enters new record editing mode. > > 3. DataView.Update appears to do nothing. (I added a 'refresh' > ToolButton to the form to explicitly test this.) DataView.Update() reloads the contents of the DataView. It's "update" from the database to the control, not the other way. > > 4. The date chooser dialog presented in a DataControl for a date-based > field automatically saves the record when it is closed. It should not do > so. I can't reproduce. If you have a DataControl pointing at a date field, the control is updated when the date chooser closes, but the record is not saved automatically. > > Addendum: The image chooser dialog in a DataControl for an image-based > field also causes an automatic save. There is no image chooser in a DataControl. I don't know what you are talking about. > > I hope that helps. > Mmmm... Things are still not clear for me. I will try to read the thread slowly from the start. Regards, -- Beno?t Minisini. From gradobag at gradobag.it Mon Jul 10 13:17:44 2023 From: gradobag at gradobag.it (Gianluigi) Date: Mon, 10 Jul 2023 13:17:44 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <644996aa-f076-a7ee-5bab-25808795123e@gambas-basic.org> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <9e620614-a928-6d81-6b80-680f0489e3d4@gradobag.it> <2b9dab71-fca0-f3a5-1c7b-94119f992334@freenet.de> <06ee34dd-b65e-70c6-98d0-5253abab24ee@gradobag.it> <644996aa-f076-a7ee-5bab-25808795123e@gambas-basic.org> Message-ID: Il 10/07/23 12:40, Benoit Minisini ha scritto: > Mmmm... Things are still not clear for me. I will try to read the > thread slowly from the start. > > Regards, > > -- > Beno?t Minisini. Sorry to ask, have you looked at the project? Regards Gianluigi From benoit.minisini at gambas-basic.org Mon Jul 10 13:20:17 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Mon, 10 Jul 2023 13:20:17 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <9e620614-a928-6d81-6b80-680f0489e3d4@gradobag.it> <2b9dab71-fca0-f3a5-1c7b-94119f992334@freenet.de> <06ee34dd-b65e-70c6-98d0-5253abab24ee@gradobag.it> <644996aa-f076-a7ee-5bab-25808795123e@gambas-basic.org> Message-ID: Le 10/07/2023 ? 13:17, Gianluigi a ?crit?: > Il 10/07/23 12:40, Benoit Minisini ha scritto: >> Mmmm... Things are still not clear for me. I will try to read the >> thread slowly from the start. >> >> Regards, >> >> -- >> Beno?t Minisini. > > Sorry to ask, have you looked at the project? > > Regards > > Gianluigi > Not yet. I didn't have time to read the full thread, this is why I asked for a summary. -- Beno?t Minisini. From gradobag at gradobag.it Mon Jul 10 13:25:11 2023 From: gradobag at gradobag.it (Gianluigi) Date: Mon, 10 Jul 2023 13:25:11 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <9e620614-a928-6d81-6b80-680f0489e3d4@gradobag.it> <2b9dab71-fca0-f3a5-1c7b-94119f992334@freenet.de> <06ee34dd-b65e-70c6-98d0-5253abab24ee@gradobag.it> <644996aa-f076-a7ee-5bab-25808795123e@gambas-basic.org> Message-ID: <3e632072-39c6-6969-6927-e10071c930d9@gradobag.it> Il 10/07/23 13:20, Benoit Minisini ha scritto: > Le 10/07/2023 ? 13:17, Gianluigi a ?crit?: >> Il 10/07/23 12:40, Benoit Minisini ha scritto: >>> Mmmm... Things are still not clear for me. I will try to read the >>> thread slowly from the start. >>> >>> Regards, >>> >>> -- >>> Beno?t Minisini. >> >> Sorry to ask, have you looked at the project? >> >> Regards >> >> Gianluigi >> > > Not yet. I didn't have time to read the full thread, this is why I > asked for a summary. > In my opinion, this is a summary Regards Gianluigi -------- Messaggio Inoltrato -------- Oggetto: Re: [Gambas-user] DataView Help Data: Sun, 9 Jul 2023 22:52:35 +0200 Mittente: Gianluigi Rispondi-a: Gambas Mailing List A: user at lists.gambas-basic.org Il 09/07/23 19:53, Benoit Minisini ha scritto: > Hi, > > Can someone make a summary for my lazy brain of what the problem is > exactly? > > -- Beno?t Minisini. Hi Benoit, following your advice ( https://lists.gambas-basic.org/pipermail/user/2022-August/076746.html ) I created a downloadable database project here ( https://paste.c-net.org/TrippPaolo ) I would like to: 1 - At startup sort the records by last name descendingly and select the first record (done) 2 - If a record is deleted, if the previous one exists it must be selected (done) 3 - If a record is added, the new record must take the correct place and be selected 4 - If a record changes, the changed record must keep the selection. Lee has listed for you the malfunctions or if you prefer our inability to do these simple things. Greetings and good night Gianluigi ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- -------------- next part -------------- An HTML attachment was scrubbed... URL: From gradobag at gradobag.it Mon Jul 10 14:56:43 2023 From: gradobag at gradobag.it (Gianluigi) Date: Mon, 10 Jul 2023 14:56:43 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <644996aa-f076-a7ee-5bab-25808795123e@gambas-basic.org> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <9e620614-a928-6d81-6b80-680f0489e3d4@gradobag.it> <2b9dab71-fca0-f3a5-1c7b-94119f992334@freenet.de> <06ee34dd-b65e-70c6-98d0-5253abab24ee@gradobag.it> <644996aa-f076-a7ee-5bab-25808795123e@gambas-basic.org> Message-ID: <9807b717-95cc-c1c2-ce5d-10edde843b94@gradobag.it> Il 10/07/23 12:40, Benoit Minisini ha scritto: >> 4. The date chooser dialog presented in a DataControl for a >> date-based field automatically saves the record when it is closed. It >> should not do so. > > I can't reproduce. If you have a DataControl pointing at a date field, > the control is updated when the date chooser closes, but the record is > not saved automatically. You can't reproduce it because you don't use the same project we use, probably the malfunction is caused by the current index trace, but if you don't trace the index how do you know which record you are acting on? > >> >> Addendum: The image chooser dialog in a DataControl for an >> image-based field also causes an automatic save. > > There is no image chooser in a DataControl. I don't know what you are > talking about. Here we refer to DataControl gb.blob and image field > >> >> I hope that helps. >> Unfortunately not, but please look at the project if you want to understand our problems Regards Gianluigi -------------- next part -------------- An HTML attachment was scrubbed... URL: From t.lee.davidson at gmail.com Mon Jul 10 15:21:30 2023 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Mon, 10 Jul 2023 09:21:30 -0400 Subject: [Gambas-user] DataView Help In-Reply-To: <644996aa-f076-a7ee-5bab-25808795123e@gambas-basic.org> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <9e620614-a928-6d81-6b80-680f0489e3d4@gradobag.it> <2b9dab71-fca0-f3a5-1c7b-94119f992334@freenet.de> <06ee34dd-b65e-70c6-98d0-5253abab24ee@gradobag.it> <644996aa-f076-a7ee-5bab-25808795123e@gambas-basic.org> Message-ID: <31a4a940-35fe-2976-b2c4-8032c92e4cc0@gmail.com> On 7/10/23 06:40, Benoit Minisini wrote: > Le 09/07/2023 ? 21:19, T Lee Davidson a ?crit?: >> 2. When a newly created record is saved with DataSource.Create, DataView improperly displays the updated table data by >> duplicating the last record instead of showing the new (correctly saved) record. > > DataSource.Create() does not create a new record. It enters new record editing mode. I didn't say anything about DataSource.Create creating a new record. The documentation states that it effects a save: "Saves the data from the data controls and clears them afterwards." >> 3. DataView.Update appears to do nothing. (I added a 'refresh' ToolButton to the form to explicitly test this.) > > DataView.Update() reloads the contents of the DataView. It's "update" from the database to the control, not the other way. Yes, that is how I understood it. It doesn't work. >> 4. The date chooser dialog presented in a DataControl for a date-based field automatically saves the record when it is closed. >> It should not do so. > > I can't reproduce. If you have a DataControl pointing at a date field, the control is updated when the date chooser closes, but > the record is not saved automatically. The record is saved automatically in Gianluigi's project. Perhaps we need a version stripped down that isolates this. >> Addendum: The image chooser dialog in a DataControl for an image-based field also causes an automatic save. > > There is no image chooser in a DataControl. I don't know what you are talking about. Gianluigi answered that. More specifically, there is an ellipsis button presented when a DataControl handles a blob field. Clicking that brings up a "Blob Contents" dialog with "Load", "Save", and "Clear" menu items. I don't know what it is called. -- Lee From t.lee.davidson at gmail.com Mon Jul 10 23:16:58 2023 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Mon, 10 Jul 2023 17:16:58 -0400 Subject: [Gambas-user] DataView Help In-Reply-To: <464c992b-558e-d133-48be-8b410e4bb2a3@gradobag.it> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <9e620614-a928-6d81-6b80-680f0489e3d4@gradobag.it> <2b9dab71-fca0-f3a5-1c7b-94119f992334@freenet.de> <06ee34dd-b65e-70c6-98d0-5253abab24ee@gradobag.it> <30c8bcf1-1e2c-6ca1-ff3a-61b771b008f4@gmail.com> <464c992b-558e-d133-48be-8b410e4bb2a3@gradobag.it> Message-ID: <6148660d-2b2a-3d83-ce54-5f545fb707d5@gmail.com> On 7/9/23 17:04, Gianluigi wrote: > Il 09/07/23 21:20, T Lee Davidson ha scritto: >> There was no stolen time, Gianluigi. It was time well spent. I'm glad you got at least some of it sorted out. >> >> >> -- >> Lee > > Dear Lee, > > you are an optimistic person :-) > I don't see it the same way, with DataSource to avoid one problem you have to create three more :-( That's funny, Gianluigi ! I had deleted some of the messages of this thread, so I apologize if this message is in the wrong sub-thread. Anyway, I think I have some of it figured out. When using DataControls to add and edit record data, do not use DataView.Create and DataView.Save. Use DataSource.Create and DataSource.Save instead. (I think the documentation for DataSource,Create is incorrect.) Also, do not use DataView.Update as it does not appear to work correctly. (I deleted a record with DB-Browser outside of this application, and DataView.Update did not pick up the change.) Use DataSource.Update instead; although that really messes up the column width formatting of the DataView. I stripped out the image functionality of the project to make it easier to share. Attached. -- Lee P.S. Beno?t, I got a "504 Gateway time-out" on the Wiki. -------------- next part -------------- A non-text attachment was scrubbed... Name: ForCurrentTest-DataView-0.1.1.tar.gz Type: application/gzip Size: 16438 bytes Desc: not available URL: From benoit.minisini at gambas-basic.org Tue Jul 11 01:54:05 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Tue, 11 Jul 2023 01:54:05 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> Message-ID: Le 07/07/2023 ? 17:26, Gianluigi a ?crit?: > Hi Benoit, > > in this (*) your response to Hans, to have more control over the data, > you suggest the use of DataView and custom buttons. > > (*) https://lists.gambas-basic.org/pipermail/user/2022-August/076746.html > > For the past few days I have been trying to figure out how to insert new > data (Minnie) into the project table that you can download at this link: > > https://paste.c-net.org/TrippPaolo > > (It weighs too much because of the presence of images). > > Can you kindly put me on the right track? > > I thank you for your attention and sorry for my ignorance > > Regards > > Gianluigi > The mess comes from your Form_Activate() event handler that is raised each time the form is activated. It moves the DataSource cursor, and so always save the current record when, for example, the calendar popup closes What should do the code in Form_Activate(), and why? -- Beno?t Minisini. From gradobag at gradobag.it Tue Jul 11 11:45:40 2023 From: gradobag at gradobag.it (Gianluigi) Date: Tue, 11 Jul 2023 11:45:40 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> Message-ID: <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> Il 11/07/23 01:54, Benoit Minisini ha scritto: > Le 07/07/2023 ? 17:26, Gianluigi a ?crit?: >> Hi Benoit, >> >> in this (*) your response to Hans, to have more control over the >> data, you suggest the use of DataView and custom buttons. >> >> (*) >> https://lists.gambas-basic.org/pipermail/user/2022-August/076746.html >> >> For the past few days I have been trying to figure out how to insert >> new data (Minnie) into the project table that you can download at >> this link: >> >> https://paste.c-net.org/TrippPaolo >> >> (It weighs too much because of the presence of images). >> >> Can you kindly put me on the right track? >> >> I thank you for your attention and sorry for my ignorance >> >> Regards >> >> Gianluigi >> > > The mess comes from your Form_Activate() event handler that is raised > each time the form is activated. > > It moves the DataSource cursor, and so always save the current record > when, for example, the calendar popup closes > > What should do the code in Form_Activate(), and why? > Hi Benoit, As usual, in fact it seemed impossible for me to be right, I am an idiot. The code (hoping it's correct) is only for opening so I can select the first line. I moved it to Form_Open and it seems to work fine. I apologize for the late reply, I wanted to complete the project you find here ( https://paste.c-net.org/ConfirmMarches ), unfortunately two issues remain: 1- Most important, I can't figure out how to get the saved record row so that I can select it after saving. 2- I have not figured out how to do why Stop Event in BeforeSave does not also delete the data already entered. As usual you write great code, the idiot who does not understand it is me. Waiting for kind feedback, I thank you for the valuable suggestion. Regards Gianluigi From benoit.minisini at gambas-basic.org Tue Jul 11 13:53:23 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Tue, 11 Jul 2023 13:53:23 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> Message-ID: <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> Le 11/07/2023 ? 11:45, Gianluigi a ?crit?: >> >> The mess comes from your Form_Activate() event handler that is raised >> each time the form is activated. >> >> It moves the DataSource cursor, and so always save the current record >> when, for example, the calendar popup closes >> >> What should do the code in Form_Activate(), and why? >> > Hi Benoit, > > As usual, in fact it seemed impossible for me to be right, I am an idiot. > The code (hoping it's correct) is only for opening so I can select the > first line. > I moved it to Form_Open and it seems to work fine. > > I apologize for the late reply, I wanted to complete the project you > find here ( https://paste.c-net.org/ConfirmMarches ), unfortunately two > issues remain: > > 1- Most important, I can't figure out how to get the saved record row so > that I can select it after saving. Mmm... Indeed it's not easy to achieve that. Otherwise, you can use the DataView.Find() method to move the view to a specific record from a SQL where clause. It's easy if you know the primary keys of the record you just have created. > > 2- I have not figured out how to do why Stop Event in BeforeSave does > not also delete the data already entered. Stop Event in BeforeSave just stops the save process. It won't change the data already entered. Regards, -- Beno?t Minisini. From t.lee.davidson at gmail.com Tue Jul 11 14:31:36 2023 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Tue, 11 Jul 2023 08:31:36 -0400 Subject: [Gambas-user] DataView Help In-Reply-To: <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> Message-ID: <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> On 7/11/23 07:53, Benoit Minisini wrote: > Otherwise, you can use the DataView.Find() method to move the view to a specific record from a SQL where clause. It's easy if > you know the primary?keys?of?the?record?you?just?have?created. Gianluigi, The `students` table has no columns set as unique and the only primary key is `students_id` which is not available until after the record is saved. To have a high confidence of finding the very record that was just saved, you will need a record signature that is as unique as possible. The only way I can think to come close to that is to construct a 'where' clause using all the available field values (which does not include `students_id`), save it to a global variable in the DataSource.BeforeSave event handler, and then use it with Find after DataSource.Save. -- Lee From gradobag at gradobag.it Tue Jul 11 14:40:29 2023 From: gradobag at gradobag.it (Gianluigi) Date: Tue, 11 Jul 2023 14:40:29 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> Message-ID: Il 11/07/23 14:31, T Lee Davidson ha scritto: > On 7/11/23 07:53, Benoit Minisini wrote: >> Otherwise, you can use the DataView.Find() method to move the view to >> a specific record from a SQL where clause. It's easy if you know the >> primary?keys?of?the?record?you?just?have?created. > > Gianluigi, > > The `students` table has no columns set as unique and the only primary > key is `students_id` which is not available until after the record is > saved. > > To have a high confidence of finding the very record that was just > saved, you will need a record signature that is as unique as possible. > The only way I can think to come close to that is to construct a > 'where' clause using all the available field values (which does not > include `students_id`), save it to a global variable in the > DataSource.BeforeSave event handler, and then use it with Find after > DataSource.Save. > > Hi Lee, Getting the identity of the added student is easy, in the Save Sub just type: ? Dim sSQL As String = "SELECT MAX(students_id) FROM students;" ? Dim i As Integer ? DataSource1.Save ? i = DataSource1.Connection.Exec(sSQL)[0] ? Print "STUDENT ID = "; i I still couldn't select the correct row though, I always end up selecting the last one Regards Gianluigi From benoit.minisini at gambas-basic.org Tue Jul 11 14:52:27 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Tue, 11 Jul 2023 14:52:27 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> Message-ID: <3ee1515e-9e6f-f4a7-18dc-a54120bf1596@gambas-basic.org> Le 11/07/2023 ? 14:40, Gianluigi a ?crit?: > > Hi Lee, > > Getting the identity of the added student is easy, in the Save Sub just > type: > > ? Dim sSQL As String = "SELECT MAX(students_id) FROM students;" > ? Dim i As Integer > > ? DataSource1.Save > ? i = DataSource1.Connection.Exec(sSQL)[0] > ? Print "STUDENT ID = "; i > > I still couldn't select the correct row though, I always end up > selecting the last one > > Regards > > Gianluigi > If your record primary key is a serial field, you can use the 'LastInsertId' property of the 'Connection' object to get it. Regards, -- Beno?t Minisini. From gradobag at gradobag.it Tue Jul 11 15:15:53 2023 From: gradobag at gradobag.it (Gianluigi) Date: Tue, 11 Jul 2023 15:15:53 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <3ee1515e-9e6f-f4a7-18dc-a54120bf1596@gambas-basic.org> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <3ee1515e-9e6f-f4a7-18dc-a54120bf1596@gambas-basic.org> Message-ID: <6beb21d6-df99-1f3b-ed7d-3491096d868e@gradobag.it> Il 11/07/23 14:52, Benoit Minisini ha scritto: > Le 11/07/2023 ? 14:40, Gianluigi a ?crit?: >> >> Hi Lee, >> >> Getting the identity of the added student is easy, in the Save Sub >> just type: >> >> ?? Dim sSQL As String = "SELECT MAX(students_id) FROM students;" >> ?? Dim i As Integer >> >> ?? DataSource1.Save >> ?? i = DataSource1.Connection.Exec(sSQL)[0] >> ?? Print "STUDENT ID = "; i >> >> I still couldn't select the correct row though, I always end up >> selecting the last one >> >> Regards >> >> Gianluigi >> > > If your record primary key is a serial field, you can use the > 'LastInsertId' property of the 'Connection' object to get it. > > Regards, > Hi Benoit, 'LastInsertId' I hadn't noticed it cool, unfortunately I keep bumping up against my miserable brain, this is what I tried without being able to select the correct line: Public Sub btnSave_Click() ? ' Dim sSQL As String = "SELECT MAX(students_id) FROM students;" ? Dim i As Integer ? DataSource1.Save ? ' i = DataSource1.Connection.Exec(sSQL)[0] ? i = DataSource1.Connection.LastInsertId ? Print "STUDENT ID = "; i ? ' $iCurrentIndex = DataSource1.Find("students_id=&1", i) ? ' Print $iCurrentIndex ? DataView1.Find("students_id=&1", i) ? 'Try DataView1.View.Rows[DataView1.View.Row].Selected = True End Sorry and regards Gianluigi From chrisml at deganius.de Tue Jul 11 15:38:30 2023 From: chrisml at deganius.de (Christof Thalhofer) Date: Tue, 11 Jul 2023 15:38:30 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> Message-ID: <854c9cc6-7564-57d6-67fb-f88754fa7497@deganius.de> Am 11.07.23 um 14:40 schrieb Gianluigi: > Getting the identity of the added student is easy, in the Save Sub just > type: > > ? Dim sSQL As String = "SELECT MAX(students_id) FROM students;" > ? Dim i As Integer > > ? DataSource1.Save > ? i = DataSource1.Connection.Exec(sSQL)[0] > ? Print "STUDENT ID = "; i > > I still couldn't select the correct row though, I always end up > selecting the last one This is not good, as soon as not only one person can insert data, it will be unreliable. Alles Gute Christof Thalhofer -- Dies ist keine Signatur -------------- next part -------------- A non-text attachment was scrubbed... Name: OpenPGP_signature Type: application/pgp-signature Size: 840 bytes Desc: OpenPGP digital signature URL: From gradobag at gradobag.it Tue Jul 11 15:51:37 2023 From: gradobag at gradobag.it (Gianluigi) Date: Tue, 11 Jul 2023 15:51:37 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <854c9cc6-7564-57d6-67fb-f88754fa7497@deganius.de> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <854c9cc6-7564-57d6-67fb-f88754fa7497@deganius.de> Message-ID: <1f774637-bc23-79fc-3aa3-aaf722f72ecf@gradobag.it> Il 11/07/23 15:38, Christof Thalhofer ha scritto: > Am 11.07.23 um 14:40 schrieb Gianluigi: > >> Getting the identity of the added student is easy, in the Save Sub just >> type: >> >> ? ? Dim sSQL As String = "SELECT MAX(students_id) FROM students;" >> ? ? Dim i As Integer >> >> ? ? DataSource1.Save >> ? ? i = DataSource1.Connection.Exec(sSQL)[0] >> ? ? Print "STUDENT ID = "; i >> >> I still couldn't select the correct row though, I always end up >> selecting the last one > > This is not good, as soon as not only one person can insert data, it > will be unreliable. > > Alles Gute > > Christof Thalhofer > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- Hi Christof, right, I understand you have to use 'LastInsertId' ? Regards Gianluigi From benoit.minisini at gambas-basic.org Tue Jul 11 15:56:23 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Tue, 11 Jul 2023 15:56:23 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <854c9cc6-7564-57d6-67fb-f88754fa7497@deganius.de> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <854c9cc6-7564-57d6-67fb-f88754fa7497@deganius.de> Message-ID: <20e04589-35fe-16e8-17b6-e028ae61e78e@gambas-basic.org> Le 11/07/2023 ? 15:38, Christof Thalhofer a ?crit?: > Am 11.07.23 um 14:40 schrieb Gianluigi: > >> Getting the identity of the added student is easy, in the Save Sub just >> type: >> >> ? ? Dim sSQL As String = "SELECT MAX(students_id) FROM students;" >> ? ? Dim i As Integer >> >> ? ? DataSource1.Save >> ? ? i = DataSource1.Connection.Exec(sSQL)[0] >> ? ? Print "STUDENT ID = "; i >> >> I still couldn't select the correct row though, I always end up >> selecting the last one > > This is not good, as soon as not only one person can insert data, it > will be unreliable. > > Alles Gute > > Christof Thalhofer > This is a feature of the underlying database system, so it's up to it to make that feature reliable! :-) -- Beno?t Minisini. From gradobag at gradobag.it Tue Jul 11 16:06:49 2023 From: gradobag at gradobag.it (Gianluigi) Date: Tue, 11 Jul 2023 16:06:49 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <1f774637-bc23-79fc-3aa3-aaf722f72ecf@gradobag.it> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <854c9cc6-7564-57d6-67fb-f88754fa7497@deganius.de> <1f774637-bc23-79fc-3aa3-aaf722f72ecf@gradobag.it> Message-ID: <0fe59be4-3e0a-1a82-e60f-00b72a922faa@gradobag.it> Il 11/07/23 15:51, Gianluigi ha scritto: > Il 11/07/23 15:38, Christof Thalhofer ha scritto: >> Am 11.07.23 um 14:40 schrieb Gianluigi: >> >>> Getting the identity of the added student is easy, in the Save Sub just >>> type: >>> >>> ? ? Dim sSQL As String = "SELECT MAX(students_id) FROM students;" >>> ? ? Dim i As Integer >>> >>> ? ? DataSource1.Save >>> ? ? i = DataSource1.Connection.Exec(sSQL)[0] >>> ? ? Print "STUDENT ID = "; i >>> >>> I still couldn't select the correct row though, I always end up >>> selecting the last one >> >> This is not good, as soon as not only one person can insert data, it >> will be unreliable. >> >> Alles Gute >> >> Christof Thalhofer >> >> >> ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > > Hi Christof, > > right, I understand you have to use 'LastInsertId' ? > > Regards > > Gianluigi > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- Dear Christof, here, what you just pointed out brings back to why I insist with Hans that we want to use the tools that Gambas makes available to us. Not everyone who writes small business programs has the experience that Benoit has, that you have or Shordi has, to name a few that we all know. Gambas shields us from so many mistakes, we only need to be smart enough to understand how these tools work (of course I am talking about myself). With esteem Gianluigi From chrisml at deganius.de Tue Jul 11 21:11:27 2023 From: chrisml at deganius.de (Christof Thalhofer) Date: Tue, 11 Jul 2023 21:11:27 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <20e04589-35fe-16e8-17b6-e028ae61e78e@gambas-basic.org> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <854c9cc6-7564-57d6-67fb-f88754fa7497@deganius.de> <20e04589-35fe-16e8-17b6-e028ae61e78e@gambas-basic.org> Message-ID: <94df3adf-2832-4a93-937a-31a8031154ac@deganius.de> Am 11.07.23 um 15:56 schrieb Benoit Minisini: > This is a feature of the underlying database system, so it's up to it to > make that feature reliable! :-) Hmm, I disagree. For instance with Postgresql it would only be absolutely reliable if this: > DataSource1.Save > i = DataSource1.Connection.Exec(sSQL)[0] would have been encapsulated inside a transaction. If 'students_id' is a serial, then the correct procedure would be to: --- Start a transaction with "Begin;". Get the next serial number of 'students_id' with "select nextval(pg_get_serial_sequence('students', 'students_id')) as new_id;" Store the tuple together with students_id = new_id. Commit the transaction with "Commit;". If an error happened rollback the transaction with "Rollback;". --- Other RDBMS may have other commands but act the same. Alles Gute Christof Thalhofer -- Dies ist keine Signatur -------------- next part -------------- A non-text attachment was scrubbed... Name: OpenPGP_signature Type: application/pgp-signature Size: 840 bytes Desc: OpenPGP digital signature URL: From gradobag at gradobag.it Tue Jul 11 22:35:57 2023 From: gradobag at gradobag.it (Gianluigi) Date: Tue, 11 Jul 2023 22:35:57 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <94df3adf-2832-4a93-937a-31a8031154ac@deganius.de> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <854c9cc6-7564-57d6-67fb-f88754fa7497@deganius.de> <20e04589-35fe-16e8-17b6-e028ae61e78e@gambas-basic.org> <94df3adf-2832-4a93-937a-31a8031154ac@deganius.de> Message-ID: <0ec8d469-8217-015f-8c8e-cff3f4050aef@gradobag.it> Il 11/07/23 21:11, Christof Thalhofer ha scritto: > Am 11.07.23 um 15:56 schrieb Benoit Minisini: > >> This is a feature of the underlying database system, so it's up to it to >> make that feature reliable! :-) > > Hmm, I disagree. For instance with Postgresql it would only be > absolutely reliable if this: > > >????? DataSource1.Save > >????? i = DataSource1.Connection.Exec(sSQL)[0] > > would have been encapsulated inside a transaction. > > If 'students_id' is a serial, then the correct procedure would be to: > > --- > > Start a transaction with "Begin;". > > Get the next serial number of 'students_id' with > > "select nextval(pg_get_serial_sequence('students', 'students_id')) as > new_id;" > > Store the tuple together with students_id = new_id. > > Commit the transaction with "Commit;". > > If an error happened rollback the transaction with "Rollback;". > > --- > > Other RDBMS may have other commands but act the same. > > Alles Gute > > Christof Thalhofer > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- Hi Christof, you should talk about 'LastInsertId' and the current project is a small test on SQLite not on a data-server. Regards Gianluigi From t.lee.davidson at gmail.com Wed Jul 12 01:14:03 2023 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Tue, 11 Jul 2023 19:14:03 -0400 Subject: [Gambas-user] DataView Help In-Reply-To: References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> Message-ID: On 7/11/23 08:40, Gianluigi wrote: > I still couldn't select the correct row though, I always end up selecting?the?last?one It appears that DataView.Find assumes the sort order of the view is by `students_id`. But, it isn't always. In fact, when the application launches, the view is sorted by `surname` descending. The last inserted record is last in the database table. So, DataView.Find sets the current row to the last record in the view even if it is not sorted by `students_id`. It appears to me to be a bug. But, I don't know how DataView.Find could determine the sort order of whichever column. -- Lee From adamnt42 at gmail.com Wed Jul 12 02:38:53 2023 From: adamnt42 at gmail.com (BB) Date: Wed, 12 Jul 2023 10:08:53 +0930 Subject: [Gambas-user] DataView Help In-Reply-To: <0ec8d469-8217-015f-8c8e-cff3f4050aef@gradobag.it> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <854c9cc6-7564-57d6-67fb-f88754fa7497@deganius.de> <20e04589-35fe-16e8-17b6-e028ae61e78e@gambas-basic.org> <94df3adf-2832-4a93-937a-31a8031154ac@deganius.de> <0ec8d469-8217-015f-8c8e-cff3f4050aef@gradobag.it> Message-ID: On 12/7/23 6:05 am, Gianluigi wrote: > Il 11/07/23 21:11, Christof Thalhofer ha scritto: >> Am 11.07.23 um 15:56 schrieb Benoit Minisini: >> >>> This is a feature of the underlying database system, so it's up to >>> it to >>> make that feature reliable! :-) >> >> Hmm, I disagree. For instance with Postgresql it would only be >> absolutely reliable if this: >> >> >????? DataSource1.Save >> >????? i = DataSource1.Connection.Exec(sSQL)[0] >> >> would have been encapsulated inside a transaction. >> >> If 'students_id' is a serial, then the correct procedure would be to: >> >> --- >> >> Start a transaction with "Begin;". >> >> Get the next serial number of 'students_id' with >> >> "select nextval(pg_get_serial_sequence('students', 'students_id')) as >> new_id;" >> >> Store the tuple together with students_id = new_id. >> >> Commit the transaction with "Commit;". >> >> If an error happened rollback the transaction with "Rollback;". >> >> --- >> >> Other RDBMS may have other commands but act the same. >> >> Alles Gute >> >> Christof Thalhofer >> >> >> ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > > Hi Christof, > > you should talk about 'LastInsertId' and the current project is a > small test on SQLite not on a data-server. > > Regards > > Gianluigi > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- I don't believe using transaction blocks is the answer here. Transactions will guarantee the integrity of the enclosed set of queries but does not guarantee that they are all "atomic" from the point of view of the database. Christof's algorithm, while logically and technically correct looks to me to be suspicious on busy databases. Multiple and non-resolvable collisions could occur even for just two connections. The "correct" way to to this in postgresql is to use INSERT/UPDATE RETURNING which will return the serial for the inserted record. However this is NOT standard SQL. Note also that INSERT ... RETURNING was added in MariaDB 10.5.0 , I don't know if it is supported properly by MySQL. The RETURNING syntax has been supported by SQLite since version 3.35.0 (2021-03-12) and is modelled on the postgresql one. In sqlite the LastInsertID is the ID of the last inserted record, which as has been pointed out, is not necessarily the ID of the record "just" inserted by "this" user connection. The way to do this in sqlite (AFAIK) is to use the "select using all known columns" approach and it is up to the developer to know whether this will constitute a unique "key". N.B. This will not be guaranteed for ODBC connections as it depends on the underlying dbms. -------------- next part -------------- An HTML attachment was scrubbed... URL: From denisc at exemail.com.au Wed Jul 12 03:11:47 2023 From: denisc at exemail.com.au (Denis Crowther) Date: Wed, 12 Jul 2023 11:11:47 +1000 Subject: [Gambas-user] DataView Help In-Reply-To: References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <854c9cc6-7564-57d6-67fb-f88754fa7497@deganius.de> <20e04589-35fe-16e8-17b6-e028ae61e78e@gambas-basic.org> <94df3adf-2832-4a93-937a-31a8031154ac@deganius.de> <0ec8d469-8217-015f-8c8e-cff3f4050aef@gradobag.it> Message-ID: <9d9056a3-daa4-2250-e6b2-8c6a82fe4668@exemail.com.au> On 7/12/23 10:38, BB wrote: > > On 12/7/23 6:05 am, Gianluigi wrote: >> Il 11/07/23 21:11, Christof Thalhofer ha scritto: >>> Am 11.07.23 um 15:56 schrieb Benoit Minisini: >>> >>>> This is a feature of the underlying database system, so it's up to >>>> it to >>>> make that feature reliable! :-) >>> >>> Hmm, I disagree. For instance with Postgresql it would only be >>> absolutely reliable if this: >>> >>> >????? DataSource1.Save >>> >????? i = DataSource1.Connection.Exec(sSQL)[0] >>> >>> would have been encapsulated inside a transaction. >>> >>> If 'students_id' is a serial, then the correct procedure would be to: >>> >>> --- >>> >>> Start a transaction with "Begin;". >>> >>> Get the next serial number of 'students_id' with >>> >>> "select nextval(pg_get_serial_sequence('students', 'students_id')) as >>> new_id;" >>> >>> Store the tuple together with students_id = new_id. >>> >>> Commit the transaction with "Commit;". >>> >>> If an error happened rollback the transaction with "Rollback;". >>> >>> --- >>> >>> Other RDBMS may have other commands but act the same. >>> >>> Alles Gute >>> >>> Christof Thalhofer >>> >>> >>> ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- >> >> Hi Christof, >> >> you should talk about 'LastInsertId' and the current project is a >> small test on SQLite not on a data-server. >> >> Regards >> >> Gianluigi >> >> >> ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > > I don't believe using transaction blocks is the answer here. > Transactions will guarantee the integrity of the enclosed set of queries > but does not guarantee that they are all "atomic" from the point of view > of the database. Christof's algorithm, while logically and technically > correct looks to me to be suspicious on busy databases. Multiple and > non-resolvable collisions could occur even for just two connections. > > The "correct" way to to this in postgresql is to use INSERT/UPDATE > RETURNING which will return the serial for the inserted record. However > this is NOT standard SQL. Note also that INSERT ... RETURNING was added > in MariaDB 10.5.0 > , I don't know if > it is supported properly by MySQL. The RETURNING syntax has been > supported by SQLite since version 3.35.0 (2021-03-12) and is modelled on > the postgresql one. > > In sqlite the LastInsertID is the ID of the last inserted record, which > as has been pointed out, is not necessarily the ID of the record "just" > inserted by "this" user connection. The way to do this in sqlite (AFAIK) The Sqlite documentation says "If a separate thread performs a new INSERT on the same database connection" results are unpredictable. Wouldn't the "on the same database connection" make LastInsertID reliable unless you closed the connection first? > is to use the "select using all known columns" approach and it is up to > the developer to know whether this will constitute a unique "key". > > N.B. This will not be guaranteed for ODBC connections as it depends on > the underlying dbms. > > > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- -- Regards Denis From adamnt42 at gmail.com Wed Jul 12 05:13:31 2023 From: adamnt42 at gmail.com (BB) Date: Wed, 12 Jul 2023 12:43:31 +0930 Subject: [Gambas-user] DataView Help In-Reply-To: <9d9056a3-daa4-2250-e6b2-8c6a82fe4668@exemail.com.au> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <854c9cc6-7564-57d6-67fb-f88754fa7497@deganius.de> <20e04589-35fe-16e8-17b6-e028ae61e78e@gambas-basic.org> <94df3adf-2832-4a93-937a-31a8031154ac@deganius.de> <0ec8d469-8217-015f-8c8e-cff3f4050aef@gradobag.it> <9d9056a3-daa4-2250-e6b2-8c6a82fe4668@exemail.com.au> Message-ID: <5d3f56c5-a14f-78b7-a2e9-30c283b1165b@gmail.com> On 12/7/23 10:41 am, Denis Crowther wrote: > The Sqlite documentation says "If a separate thread performs a new > INSERT on the same database connection" results are unpredictable. > > Wouldn't the "on the same database connection" make LastInsertID > reliable unless you closed the connection first? No, that is an example of "It is a dog therefor it is an animal" is not the same as "It is an animal therefor it is a dog". Also it depends on what the writers were meaning when they used the term "connection." The fact is, sqlite LastInsertID IS reliable. It will return the id of the last record inserted in the table. Which is not quite the same as "the id of the record that I just inserted in the table". I just thought of another (underline) possible way to do this. Include a timestamp field in the record set by the program and match on that. Maybe. I don't know, it would depend on how accurate sqlite is with timestamps as they are stored, like almost everything else, as strings. From gradobag at gradobag.it Wed Jul 12 09:04:07 2023 From: gradobag at gradobag.it (Gianluigi) Date: Wed, 12 Jul 2023 09:04:07 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> Message-ID: Il 12/07/23 01:14, T Lee Davidson ha scritto: > On 7/11/23 08:40, Gianluigi wrote: >> I still couldn't select the correct row though, I always end up >> selecting?the?last?one > > It appears that DataView.Find assumes the sort order of the view is by > `students_id`. But, it isn't always. In fact, when the application > launches, the view is sorted by `surname` descending. > > The last inserted record is last in the database table. So, > DataView.Find sets the current row to the last record in the view even > if it is not sorted by `students_id`. > > It appears to me to be a bug. But, I don't know how DataView.Find > could determine the sort order of whichever column. > > HI, Yes, and so does DataSource.Find which, the wiki states, "Fin the first row matching the specified filter and return its index." Benoit is there any chance of getting the position, if I try to enter in Find a second parameter that I get correctly from BeforeSave ("students_id=&1 AND surname=&2, i, $sLastSurname"), I get an error of Query failed: near "&": syntax error. Does the query only work on the key? Regards Gianluigi From gradobag at gradobag.it Wed Jul 12 10:17:51 2023 From: gradobag at gradobag.it (Gianluigi) Date: Wed, 12 Jul 2023 10:17:51 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> Message-ID: <0439d9d3-b214-0be9-de86-dc57588a0253@gradobag.it> Il 12/07/23 09:04, Gianluigi ha scritto: > Il 12/07/23 01:14, T Lee Davidson ha scritto: >> On 7/11/23 08:40, Gianluigi wrote: >>> I still couldn't select the correct row though, I always end up >>> selecting?the?last?one >> >> It appears that DataView.Find assumes the sort order of the view is >> by `students_id`. But, it isn't always. In fact, when the application >> launches, the view is sorted by `surname` descending. >> >> The last inserted record is last in the database table. So, >> DataView.Find sets the current row to the last record in the view >> even if it is not sorted by `students_id`. >> >> It appears to me to be a bug. But, I don't know how DataView.Find >> could determine the sort order of whichever column. >> >> > HI, > > Yes, and so does DataSource.Find which, the wiki states, "Fin the > first row matching the specified filter and return its index." > > Benoit is there any chance of getting the position, if I try to enter > in Find a second parameter that I get correctly from BeforeSave > ("students_id=&1 AND surname=&2, i, $sLastSurname"), I get an error of > Query failed: near "&": syntax error. > Does the query only work on the key? > > Regards > Gianluigi > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- Sorry Benoit, Lee, I had misspelled the query, but even with the correct queries nothing changes, you always get the last row of the grid. Of course the error nessage does not appear.... $iCurrentIndex = DataSource1.Find("students_id=&1 AND surname=&2", i, $sLastSurname) DataView1.Find("surname=&1 AND students_id=&2", $sLastSurname, i) Regards Gianluigi From gradobag at gradobag.it Wed Jul 12 15:59:08 2023 From: gradobag at gradobag.it (Gianluigi) Date: Wed, 12 Jul 2023 15:59:08 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <0439d9d3-b214-0be9-de86-dc57588a0253@gradobag.it> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <0439d9d3-b214-0be9-de86-dc57588a0253@gradobag.it> Message-ID: <6319499b-54c8-289c-c344-5458705987c5@gradobag.it> Il 12/07/23 10:17, Gianluigi ha scritto: > Sorry Benoit, Lee, > > I had misspelled the query, but even with the correct queries nothing > changes, you always get the last row of the grid. > Of course the error nessage does not appear.... > > $iCurrentIndex = DataSource1.Find("students_id=&1 AND surname=&2", i, > $sLastSurname) > DataView1.Find("surname=&1 AND students_id=&2", $sLastSurname, i) > > Regards > > Gianluigi Hi Benoit, I tried to get the row from DataView_Data when the cell value is that of the saved record. Unfortunately it returns zero. I've run out of ideas and I don't think I'm the only one, yet if the record sits in the correct row how is it possible not to get that darn number? Since my head is now broken, I await some nightly inspiration. Sigh! Regards From chrisml at deganius.de Wed Jul 12 20:46:04 2023 From: chrisml at deganius.de (Christof Thalhofer) Date: Wed, 12 Jul 2023 20:46:04 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <0fe59be4-3e0a-1a82-e60f-00b72a922faa@gradobag.it> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <854c9cc6-7564-57d6-67fb-f88754fa7497@deganius.de> <1f774637-bc23-79fc-3aa3-aaf722f72ecf@gradobag.it> <0fe59be4-3e0a-1a82-e60f-00b72a922faa@gradobag.it> Message-ID: Dear Gianluigi, Am 11.07.23 um 16:06 schrieb Gianluigi: > here, what you just pointed out brings back to why I insist with Hans > that we want to use the tools that Gambas makes available to us. > > Not everyone who writes small business programs has the experience that > Benoit has, that you have or Shordi has, to name a few that we all know. > > Gambas shields us from so many mistakes, we only need to be smart enough > to understand how these tools work (of course I am talking about myself). Gambas cannot shield the user from caveats of the design of the underlying database schema. For instance if in a (RDBMS) database schema there are no primary keys defined or if the?e are no relations defined with foreign keys pointing to specific primary keys Gambas will not prevent the user from creating orders for nonexisting customers. This is one of the core tasks of an RDBMS. As I recall, you once tried to convince me that you didn't need primary and foreign key constraints ("referential integrity is not used in professional databases"), that it was too special, and that yes, Gambas could do it all. What is very nice about Gambas is that it makes a lot of things easier when dealing with databases. But it doesn't change the fact that you have to understand what the database is doing underneath. Ignoring that can lead to very, very costly errors. I've learned this the hard way. And if, on the one hand, you concede that I understand something about the subject, you should also take that into account when I give advice. Alles Gute Christof Thalhofer -- Dies ist keine Signatur -------------- next part -------------- A non-text attachment was scrubbed... Name: OpenPGP_signature Type: application/pgp-signature Size: 840 bytes Desc: OpenPGP digital signature URL: From benoit.minisini at gambas-basic.org Wed Jul 12 21:14:59 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Wed, 12 Jul 2023 21:14:59 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> Message-ID: <12dd20ad-2838-8677-93d1-31b9f41a4488@gambas-basic.org> Le 12/07/2023 ? 01:14, T Lee Davidson a ?crit?: > On 7/11/23 08:40, Gianluigi wrote: >> I still couldn't select the correct row though, I always end up >> selecting?the?last?one > > It appears that DataView.Find assumes the sort order of the view is by > `students_id`. But, it isn't always. In fact, when the application > launches, the view is sorted by `surname` descending. The Find() method takes the current sort order defined in the DataSource by the DataView control. In last commit https://gitlab.com/gambas/gambas/-/commit/13e65fa01dcf315357bf1d2f3577f0fa9d06b3ea, I fixed the DataSource Find() and FindNext() methods, and propagate them to DataView and DataBrowser. As LastInsertId may not be reliable, one have to use the DataView.Find() method to find the index of the last inserted record, knowing the primary keys of that record. Now, following what I just said, I will try to add a method that finds the index of the last inserted record automagically. Regards, -- Beno?t Minisini. From chrisml at deganius.de Wed Jul 12 21:23:23 2023 From: chrisml at deganius.de (Christof Thalhofer) Date: Wed, 12 Jul 2023 21:23:23 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <854c9cc6-7564-57d6-67fb-f88754fa7497@deganius.de> <20e04589-35fe-16e8-17b6-e028ae61e78e@gambas-basic.org> <94df3adf-2832-4a93-937a-31a8031154ac@deganius.de> <0ec8d469-8217-015f-8c8e-cff3f4050aef@gradobag.it> Message-ID: Am 12.07.23 um 02:38 schrieb BB: > I don't believe using transaction blocks is the answer here. > Transactions will guarantee the integrity of the enclosed set of queries > but does not guarantee that they are all "atomic" from the point of view > of the database. Christof's algorithm, while logically and technically > correct looks to me to be suspicious on busy databases. Multiple and > non-resolvable collisions could occur even for just two connections. AFAICS the piece of code I wrote, was the (ever used) equivalent of INSERT/UPDATE plus RETURNING. And it keeps you from wasting serial numbers on errors. I doubt that INSERT/UPDATE plus RETURNING will protect the users from deadlocks more than my construct does. > The "correct" way to to this in postgresql is to use INSERT/UPDATE > RETURNING which will return the serial for the inserted record. However > this is NOT standard SQL. Note also that INSERT ... RETURNING was added > in MariaDB 10.5.0 > , I don't know if > it is supported properly by MySQL. The RETURNING syntax has been > supported by SQLite since version 3.35.0 (2021-03-12) and is modelled on > the postgresql one. Thanks for the hint! I didn't have that on the screen because I never used it. Alles Gute Christof Thalhofer -- Dies ist keine Signatur -------------- next part -------------- A non-text attachment was scrubbed... Name: OpenPGP_signature Type: application/pgp-signature Size: 840 bytes Desc: OpenPGP digital signature URL: From chrisml at deganius.de Wed Jul 12 21:29:31 2023 From: chrisml at deganius.de (Christof Thalhofer) Date: Wed, 12 Jul 2023 21:29:31 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <12dd20ad-2838-8677-93d1-31b9f41a4488@gambas-basic.org> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <12dd20ad-2838-8677-93d1-31b9f41a4488@gambas-basic.org> Message-ID: <5795ce57-0ec4-6db1-36a7-c510b0c77125@deganius.de> Am 12.07.23 um 21:14 schrieb Benoit Minisini: > As LastInsertId may not be reliable, one have to use the DataView.Find() > method to find the index of the last inserted record, knowing the > primary keys of that record. > > Now, following what I just said, I will try to add a method that finds > the index of the last inserted record automagically. But please take into account that the last inserted record in a table could have been created by another user/connection. Alles Gute Christof Thalhofer -- Dies ist keine Signatur -------------- next part -------------- A non-text attachment was scrubbed... Name: OpenPGP_signature Type: application/pgp-signature Size: 840 bytes Desc: OpenPGP digital signature URL: From benoit.minisini at gambas-basic.org Wed Jul 12 21:32:40 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Wed, 12 Jul 2023 21:32:40 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <5795ce57-0ec4-6db1-36a7-c510b0c77125@deganius.de> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <12dd20ad-2838-8677-93d1-31b9f41a4488@gambas-basic.org> <5795ce57-0ec4-6db1-36a7-c510b0c77125@deganius.de> Message-ID: <0fadb805-b74e-a0aa-5da5-cf7af313a59b@gambas-basic.org> Le 12/07/2023 ? 21:29, Christof Thalhofer a ?crit?: > Am 12.07.23 um 21:14 schrieb Benoit Minisini: > >> As LastInsertId may not be reliable, one have to use the DataView.Find() >> method to find the index of the last inserted record, knowing the >> primary keys of that record. >> >> Now, following what I just said, I will try to add a method that finds >> the index of the last inserted record automagically. > > But please take into account that the last inserted record in a table > could have been created by another user/connection. > > Alles Gute > > Christof Thalhofer > No, it's just the DataSource Save() method that will take note of the primary keys of the saved record. That way, if Save() creates a new record, it will be able to find its index easily. Regards, -- Beno?t Minisini. From chrisml at deganius.de Wed Jul 12 21:40:34 2023 From: chrisml at deganius.de (Christof Thalhofer) Date: Wed, 12 Jul 2023 21:40:34 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <0fadb805-b74e-a0aa-5da5-cf7af313a59b@gambas-basic.org> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <12dd20ad-2838-8677-93d1-31b9f41a4488@gambas-basic.org> <5795ce57-0ec4-6db1-36a7-c510b0c77125@deganius.de> <0fadb805-b74e-a0aa-5da5-cf7af313a59b@gambas-basic.org> Message-ID: <042539e9-4fe6-e880-1290-7cfa0b19445d@deganius.de> Am 12.07.23 um 21:32 schrieb Benoit Minisini: > No, it's just the DataSource Save() method that will take note of the > primary keys of the saved record. > > That way, if Save() creates a new record, it will be able to find its > index easily. Ok cool. :) It should then be called "the index of the last inserted record of the current connection" just to avoid misunderstandings. Alles Gute Christof Thalhofer -- Dies ist keine Signatur -------------- next part -------------- A non-text attachment was scrubbed... Name: OpenPGP_signature Type: application/pgp-signature Size: 840 bytes Desc: OpenPGP digital signature URL: From t.lee.davidson at gmail.com Wed Jul 12 22:01:37 2023 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Wed, 12 Jul 2023 16:01:37 -0400 Subject: [Gambas-user] DataView Help In-Reply-To: <12dd20ad-2838-8677-93d1-31b9f41a4488@gambas-basic.org> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <12dd20ad-2838-8677-93d1-31b9f41a4488@gambas-basic.org> Message-ID: On 7/12/23 15:14, Benoit Minisini wrote: > Le 12/07/2023 ? 01:14, T Lee Davidson a ?crit?: >> On 7/11/23 08:40, Gianluigi wrote: >>> I still couldn't select the correct row though, I always end up selecting?the?last?one >> >> It appears that DataView.Find assumes the sort order of the view is by `students_id`. But, it isn't always. In fact, when the >> application launches, the view is sorted by `surname` descending. > > The Find() method takes the current sort order defined in the DataSource by the DataView control. Hmmm, I don't find any sort order property in either DataSource or Dataview. > In last commit https://gitlab.com/gambas/gambas/-/commit/13e65fa01dcf315357bf1d2f3577f0fa9d06b3ea, I fixed the DataSource Find() > and FindNext() methods, and propagate them to DataView and DataBrowser. > > As LastInsertId may not be reliable, one have to use the DataView.Find() method to find the index of the last inserted record, > knowing the primary keys of that record. > > Now, following what I just said, I will try to add a method that finds the index of the last inserted record automagically. That sounds like it might be quite helpful. DataView's automatic handling of column sorting is quite nice. Would it be possible to expose TableView's Sort event to DataView? With that, a developer could possibly determine that sort order had changed and which column header was clicked. And, perhaps using 'Stop Event' would allow for custom sorting although that might be used, like, never. I don't know exactly what needed to be fixed, nor what the correct behavior will now be. But, for what Gianluigi wants to accomplish, the following seems to work well: [code] Public Sub btnSave_Click() Dim iLastInsertId As Integer DataSource1.Save iLastInsertId = DataSource1.Connection.LastInsertId DataView1.MoveFirst While DataView1.Current[0] <> iLastInsertId DataView1.MoveNext Wend End [/code] Unfortunately, though, the current record does not follow a change in sort order. -- Lee From benoit.minisini at gambas-basic.org Wed Jul 12 23:50:23 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Wed, 12 Jul 2023 23:50:23 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <6319499b-54c8-289c-c344-5458705987c5@gradobag.it> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <0439d9d3-b214-0be9-de86-dc57588a0253@gradobag.it> <6319499b-54c8-289c-c344-5458705987c5@gradobag.it> Message-ID: <3c6e5f83-8f2d-e839-5e99-4093640dfba8@gambas-basic.org> Le 12/07/2023 ? 15:59, Gianluigi a ?crit?: > Il 12/07/23 10:17, Gianluigi ha scritto: >> Sorry Benoit, Lee, >> >> I had misspelled the query, but even with the correct queries nothing >> changes, you always get the last row of the grid. >> Of course the error nessage does not appear.... >> >> $iCurrentIndex = DataSource1.Find("students_id=&1 AND surname=&2", i, >> $sLastSurname) >> DataView1.Find("surname=&1 AND students_id=&2", $sLastSurname, i) >> >> Regards >> >> Gianluigi > > Hi Benoit, > > I tried to get the row from DataView_Data when the cell value is that of > the saved record. > Unfortunately it returns zero. > > I've run out of ideas and I don't think I'm the only one, yet if the > record sits in the correct row how is it possible not to get that darn > number? > > Since my head is now broken, I await some nightly inspiration. > > Sigh! > > Regards > In the last commit, calling DataSource.Save() on a new record automatically moves it to the newly created record. After having called DataSource.Save(), you just have to read DataSource.Index to get the index of the newly created record. Regards, -- Beno?t Minisini. From benoit.minisini at gambas-basic.org Wed Jul 12 23:54:34 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Wed, 12 Jul 2023 23:54:34 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <12dd20ad-2838-8677-93d1-31b9f41a4488@gambas-basic.org> Message-ID: <40dcf3f3-c75a-bcea-bfd6-1a05f8d9d474@gambas-basic.org> Le 12/07/2023 ? 22:01, T Lee Davidson a ?crit?: > On 7/12/23 15:14, Benoit Minisini wrote: >> Le 12/07/2023 ? 01:14, T Lee Davidson a ?crit?: >>> On 7/11/23 08:40, Gianluigi wrote: >>>> I still couldn't select the correct row though, I always end up >>>> selecting?the?last?one >>> >>> It appears that DataView.Find assumes the sort order of the view is >>> by `students_id`. But, it isn't always. In fact, when the application >>> launches, the view is sorted by `surname` descending. >> >> The Find() method takes the current sort order defined in the >> DataSource by the DataView control. > > Hmmm, I don't find any sort order property in either DataSource or > Dataview. > As I said, you have a Sort and an Ascending property in DataSource. You use them to define which field is used for sorting, and i which direction. Regards, -- Beno?t Minisini. From t.lee.davidson at gmail.com Thu Jul 13 00:05:44 2023 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Wed, 12 Jul 2023 18:05:44 -0400 Subject: [Gambas-user] DataView Help In-Reply-To: <40dcf3f3-c75a-bcea-bfd6-1a05f8d9d474@gambas-basic.org> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <12dd20ad-2838-8677-93d1-31b9f41a4488@gambas-basic.org> <40dcf3f3-c75a-bcea-bfd6-1a05f8d9d474@gambas-basic.org> Message-ID: <6047c819-71f9-84a2-b4f9-d2aa603f37b3@gmail.com> On 7/12/23 17:54, Benoit Minisini wrote: >> >> Hmmm, I don't find any sort order property in either DataSource or Dataview. >> > > As I said, you have a Sort and an Ascending property in DataSource. You > use?them?to?define?which?field?is?used?for?sorting,?and?i?which?direction. Okay. I see those properties in the documentation, but I do not find them in the Properties tab of the IDE's object browser panel. Is that intentional; perhaps because they can be set only programmatically? Or am I missing something? -- Lee From gradobag at gradobag.it Thu Jul 13 00:31:13 2023 From: gradobag at gradobag.it (Gianluigi) Date: Thu, 13 Jul 2023 00:31:13 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <3c6e5f83-8f2d-e839-5e99-4093640dfba8@gambas-basic.org> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <0439d9d3-b214-0be9-de86-dc57588a0253@gradobag.it> <6319499b-54c8-289c-c344-5458705987c5@gradobag.it> <3c6e5f83-8f2d-e839-5e99-4093640dfba8@gambas-basic.org> Message-ID: <71261991-6931-7d28-f97b-689961ff7e64@gradobag.it> Il 12/07/23 23:50, Benoit Minisini ha scritto: > Le 12/07/2023 ? 15:59, Gianluigi a ?crit?: >> Il 12/07/23 10:17, Gianluigi ha scritto: >>> Sorry Benoit, Lee, >>> >>> I had misspelled the query, but even with the correct queries >>> nothing changes, you always get the last row of the grid. >>> Of course the error nessage does not appear.... >>> >>> $iCurrentIndex = DataSource1.Find("students_id=&1 AND surname=&2", >>> i, $sLastSurname) >>> DataView1.Find("surname=&1 AND students_id=&2", $sLastSurname, i) >>> >>> Regards >>> >>> Gianluigi >> >> Hi Benoit, >> >> I tried to get the row from DataView_Data when the cell value is that >> of the saved record. >> Unfortunately it returns zero. >> >> I've run out of ideas and I don't think I'm the only one, yet if the >> record sits in the correct row how is it possible not to get that >> darn number? >> >> Since my head is now broken, I await some nightly inspiration. >> >> Sigh! >> >> Regards >> > > In the last commit, calling DataSource.Save() on a new record > automatically moves it to the newly created record. > > After having called DataSource.Save(), you just have to read > DataSource.Index to get the index of the newly created record. > > Regards, > Hi Benoit, Maybe I didn't understand but if in the last project(*) I do: Public Sub btnSave_Click() ? DataSource1.Save ? $iCurrentIndex = DataSource1.Index ? Print $iCurrentIndex ' <--------------------------------------- Get -1 ! End Regards Gianluigi (*) https://paste.c-net.org/ConfirmMarches From gradobag at gradobag.it Thu Jul 13 00:38:29 2023 From: gradobag at gradobag.it (Gianluigi) Date: Thu, 13 Jul 2023 00:38:29 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <854c9cc6-7564-57d6-67fb-f88754fa7497@deganius.de> <1f774637-bc23-79fc-3aa3-aaf722f72ecf@gradobag.it> <0fe59be4-3e0a-1a82-e60f-00b72a922faa@gradobag.it> Message-ID: <622db867-0df6-6e37-5a29-c4b90197a91d@gradobag.it> Il 12/07/23 20:46, Christof Thalhofer ha scritto: > Dear Gianluigi, > > Am 11.07.23 um 16:06 schrieb Gianluigi: > >> here, what you just pointed out brings back to why I insist with Hans >> that we want to use the tools that Gambas makes available to us. >> >> Not everyone who writes small business programs has the experience that >> Benoit has, that you have or Shordi has, to name a few that we all know. >> >> Gambas shields us from so many mistakes, we only need to be smart enough >> to understand how these tools work (of course I am talking about >> myself). > > Gambas cannot shield the user from caveats of the design of the > underlying database schema. > > For instance if in a (RDBMS) database schema there are no primary keys > defined or if the?e are no relations defined with foreign keys > pointing to specific primary keys Gambas will not prevent the user > from creating orders for nonexisting customers. > > This is one of the core tasks of an RDBMS. > > As I recall, you once tried to convince me that you didn't need > primary and foreign key constraints ("referential integrity is not > used in professional databases"), that it was too special, and that > yes, Gambas could do it all. > > What is very nice about Gambas is that it makes a lot of things easier > when dealing with databases. But it doesn't change the fact that you > have to understand what the database is doing underneath. Ignoring > that can lead to very, very costly errors. > > I've learned this the hard way. And if, on the one hand, you concede > that I understand something about the subject, you should also take > that into account when I give advice. > > Alles Gute > > Christof Thalhofer > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- Hi Christof, Taking one sentence out of a larger context does not get the point across. Can you explain what referential integrity is for in a report where there is no deletion or modification of records? I have never hidden that I am an amateur and am willing to follow your suggestions, but I have never received any from you. All the times I asked a question you never answered. Alles Gutte to you as well Gianluigi From benoit.minisini at gambas-basic.org Thu Jul 13 01:06:19 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Thu, 13 Jul 2023 01:06:19 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <6047c819-71f9-84a2-b4f9-d2aa603f37b3@gmail.com> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <12dd20ad-2838-8677-93d1-31b9f41a4488@gambas-basic.org> <40dcf3f3-c75a-bcea-bfd6-1a05f8d9d474@gambas-basic.org> <6047c819-71f9-84a2-b4f9-d2aa603f37b3@gmail.com> Message-ID: Le 13/07/2023 ? 00:05, T Lee Davidson a ?crit?: > On 7/12/23 17:54, Benoit Minisini wrote: >>> >>> Hmmm, I don't find any sort order property in either DataSource or >>> Dataview. >>> >> >> As I said, you have a Sort and an Ascending property in DataSource. >> You >> use?them?to?define?which?field?is?used?for?sorting,?and?i?which?direction. > > Okay. I see those properties in the documentation, but I do not find > them in the Properties tab of the IDE's object browser panel. Is that > intentional; perhaps because they can be set only programmatically? Or > am I missing something? > Maybe I thought it's not useful to set them at design time. They are used by the DataView control when you click on a column to sort the data. Regards, -- Beno?t Minisini. From benoit.minisini at gambas-basic.org Thu Jul 13 01:06:44 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Thu, 13 Jul 2023 01:06:44 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <71261991-6931-7d28-f97b-689961ff7e64@gradobag.it> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <0439d9d3-b214-0be9-de86-dc57588a0253@gradobag.it> <6319499b-54c8-289c-c344-5458705987c5@gradobag.it> <3c6e5f83-8f2d-e839-5e99-4093640dfba8@gambas-basic.org> <71261991-6931-7d28-f97b-689961ff7e64@gradobag.it> Message-ID: Le 13/07/2023 ? 00:31, Gianluigi a ?crit?: >> >> In the last commit, calling DataSource.Save() on a new record >> automatically moves it to the newly created record. >> >> After having called DataSource.Save(), you just have to read >> DataSource.Index to get the index of the newly created record. >> >> Regards, >> > Hi Benoit, > > Maybe I didn't understand but if in the last project(*) I do: > > Public Sub btnSave_Click() > > ? DataSource1.Save > ? $iCurrentIndex = DataSource1.Index > ? Print $iCurrentIndex ' <--------------------------------------- Get -1 ! > > End > > Regards > Gianluigi > > (*) https://paste.c-net.org/ConfirmMarches > Did you recompile with the very last commit? -- Beno?t Minisini. From gradobag at gradobag.it Thu Jul 13 10:30:48 2023 From: gradobag at gradobag.it (Gianluigi) Date: Thu, 13 Jul 2023 10:30:48 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <0439d9d3-b214-0be9-de86-dc57588a0253@gradobag.it> <6319499b-54c8-289c-c344-5458705987c5@gradobag.it> <3c6e5f83-8f2d-e839-5e99-4093640dfba8@gambas-basic.org> <71261991-6931-7d28-f97b-689961ff7e64@gradobag.it> Message-ID: Il 13/07/23 01:06, Benoit Minisini ha scritto: > Le 13/07/2023 ? 00:31, Gianluigi a ?crit?: >>> >>> In the last commit, calling DataSource.Save() on a new record >>> automatically moves it to the newly created record. >>> >>> After having called DataSource.Save(), you just have to read >>> DataSource.Index to get the index of the newly created record. >>> >>> Regards, >>> >> Hi Benoit, >> >> Maybe I didn't understand but if in the last project(*) I do: >> >> Public Sub btnSave_Click() >> >> ?? DataSource1.Save >> ?? $iCurrentIndex = DataSource1.Index >> ?? Print $iCurrentIndex ' <--------------------------------------- >> Get -1 ! >> >> End >> >> Regards >> Gianluigi >> >> (*) https://paste.c-net.org/ConfirmMarches >> > > Did you recompile with the very last commit? > Hi Benoit, Sorry for the late reply, but I tried to do some testing. I am sure I am using the last well-compiled commit (I always delete the previous one). To make sure I understand it well I attach here (*) the last test. Thank you very much, regards Gianluigi (*) https://paste.c-net.org/EatinOliver [System] Gambas=3.18.90 2ace8af (master) OperatingSystem=Linux Distribution=Linux Mint 21.1 Vera Kernel=5.15.0-76-generic Architecture=x86_64 Cores=16 Memory=32000M Language=it_IT.UTF-8 Desktop=CINNAMON DesktopResolution=96 DesktopScale=7 WidgetTheme=mint-y-aqua Font=Ubuntu,10 From gradobag at gradobag.it Thu Jul 13 12:15:55 2023 From: gradobag at gradobag.it (Gianluigi) Date: Thu, 13 Jul 2023 12:15:55 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <622db867-0df6-6e37-5a29-c4b90197a91d@gradobag.it> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <854c9cc6-7564-57d6-67fb-f88754fa7497@deganius.de> <1f774637-bc23-79fc-3aa3-aaf722f72ecf@gradobag.it> <0fe59be4-3e0a-1a82-e60f-00b72a922faa@gradobag.it> <622db867-0df6-6e37-5a29-c4b90197a91d@gradobag.it> Message-ID: <64a3d603-b390-d532-c1a9-90a5f306b396@gradobag.it> Il 13/07/23 00:38, Gianluigi ha scritto: > Il 12/07/23 20:46, Christof Thalhofer ha scritto: >> Dear Gianluigi, >> >> Am 11.07.23 um 16:06 schrieb Gianluigi: >> >>> here, what you just pointed out brings back to why I insist with Hans >>> that we want to use the tools that Gambas makes available to us. >>> >>> Not everyone who writes small business programs has the experience that >>> Benoit has, that you have or Shordi has, to name a few that we all >>> know. >>> >>> Gambas shields us from so many mistakes, we only need to be smart >>> enough >>> to understand how these tools work (of course I am talking about >>> myself). >> >> Gambas cannot shield the user from caveats of the design of the >> underlying database schema. >> >> For instance if in a (RDBMS) database schema there are no primary >> keys defined or if the?e are no relations defined with foreign keys >> pointing to specific primary keys Gambas will not prevent the user >> from creating orders for nonexisting customers. >> >> This is one of the core tasks of an RDBMS. >> >> As I recall, you once tried to convince me that you didn't need >> primary and foreign key constraints ("referential integrity is not >> used in professional databases"), that it was too special, and that >> yes, Gambas could do it all. >> >> What is very nice about Gambas is that it makes a lot of things >> easier when dealing with databases. But it doesn't change the fact >> that you have to understand what the database is doing underneath. >> Ignoring that can lead to very, very costly errors. >> >> I've learned this the hard way. And if, on the one hand, you concede >> that I understand something about the subject, you should also take >> that into account when I give advice. >> >> Alles Gute >> >> Christof Thalhofer >> >> >> ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > > > Hi Christof, > > Taking one sentence out of a larger context does not get the point > across. > Can you explain what referential integrity is for in a report where > there is no deletion or modification of records? > > I have never hidden that I am an amateur and am willing to follow your > suggestions, but I have never received any from you. > All the times I asked a question you never answered. > > Alles Gutte to you as well > > Gianluigi > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- Hi Christof, When I refer to your lack of help, I am of course referring to my questions about databases. You have helped me many times and for that I am grateful and I hope I have not offended you. When I talk about 'report' of course I am referring to the relationship between tables. Regards Gianluigi From gradobag at gradobag.it Thu Jul 13 13:10:33 2023 From: gradobag at gradobag.it (Gianluigi) Date: Thu, 13 Jul 2023 13:10:33 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <64a3d603-b390-d532-c1a9-90a5f306b396@gradobag.it> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <854c9cc6-7564-57d6-67fb-f88754fa7497@deganius.de> <1f774637-bc23-79fc-3aa3-aaf722f72ecf@gradobag.it> <0fe59be4-3e0a-1a82-e60f-00b72a922faa@gradobag.it> <622db867-0df6-6e37-5a29-c4b90197a91d@gradobag.it> <64a3d603-b390-d532-c1a9-90a5f306b396@gradobag.it> Message-ID: <89bca2d5-cd42-a7ac-3024-9c364f7c7957@gradobag.it> Il 13/07/23 12:15, Gianluigi ha scritto: > Il 13/07/23 00:38, Gianluigi ha scritto: >> Il 12/07/23 20:46, Christof Thalhofer ha scritto: >>> Dear Gianluigi, >>> >>> Am 11.07.23 um 16:06 schrieb Gianluigi: >>> >>>> here, what you just pointed out brings back to why I insist with Hans >>>> that we want to use the tools that Gambas makes available to us. >>>> >>>> Not everyone who writes small business programs has the experience >>>> that >>>> Benoit has, that you have or Shordi has, to name a few that we all >>>> know. >>>> >>>> Gambas shields us from so many mistakes, we only need to be smart >>>> enough >>>> to understand how these tools work (of course I am talking about >>>> myself). >>> >>> Gambas cannot shield the user from caveats of the design of the >>> underlying database schema. >>> >>> For instance if in a (RDBMS) database schema there are no primary >>> keys defined or if the?e are no relations defined with foreign keys >>> pointing to specific primary keys Gambas will not prevent the user >>> from creating orders for nonexisting customers. >>> >>> This is one of the core tasks of an RDBMS. >>> >>> As I recall, you once tried to convince me that you didn't need >>> primary and foreign key constraints ("referential integrity is not >>> used in professional databases"), that it was too special, and that >>> yes, Gambas could do it all. >>> >>> What is very nice about Gambas is that it makes a lot of things >>> easier when dealing with databases. But it doesn't change the fact >>> that you have to understand what the database is doing underneath. >>> Ignoring that can lead to very, very costly errors. >>> >>> I've learned this the hard way. And if, on the one hand, you concede >>> that I understand something about the subject, you should also take >>> that into account when I give advice. >>> >>> Alles Gute >>> >>> Christof Thalhofer >>> >>> >>> ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- >> >> >> Hi Christof, >> >> Taking one sentence out of a larger context does not get the point >> across. >> Can you explain what referential integrity is for in a report where >> there is no deletion or modification of records? >> >> I have never hidden that I am an amateur and am willing to follow >> your suggestions, but I have never received any from you. >> All the times I asked a question you never answered. >> >> Alles Gutte to you as well >> >> Gianluigi >> >> >> ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > > Hi Christof, > > When I refer to your lack of help, I am of course referring to my > questions about databases. > You have helped me many times and for that I am grateful and I hope I > have not offended you. > When I talk about 'report' of course I am referring to the > relationship between tables. > > Regards > > Gianluigi > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- I forgot, I'd really like to know where you saw an example of my database with tables without primary keys, I have no idea how you could figure that out... Gianluigi From chrisml at deganius.de Thu Jul 13 13:44:42 2023 From: chrisml at deganius.de (Christof Thalhofer) Date: Thu, 13 Jul 2023 13:44:42 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <89bca2d5-cd42-a7ac-3024-9c364f7c7957@gradobag.it> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <854c9cc6-7564-57d6-67fb-f88754fa7497@deganius.de> <1f774637-bc23-79fc-3aa3-aaf722f72ecf@gradobag.it> <0fe59be4-3e0a-1a82-e60f-00b72a922faa@gradobag.it> <622db867-0df6-6e37-5a29-c4b90197a91d@gradobag.it> <64a3d603-b390-d532-c1a9-90a5f306b396@gradobag.it> <89bca2d5-cd42-a7ac-3024-9c364f7c7957@gradobag.it> Message-ID: Dear Gian, Am 13.07.23 um 13:10 schrieb Gianluigi: > Il 13/07/23 12:15, Gianluigi ha scritto: >> Il 13/07/23 00:38, Gianluigi ha scritto: >>> Il 12/07/23 20:46, Christof Thalhofer ha scritto: >>>> For instance if in a (RDBMS) database schema there are no primary >>>> keys defined or if the?e are no relations defined with foreign keys >>>> pointing to specific primary keys Gambas will not prevent the user >>>> from creating orders for nonexisting customers. >>>> >>>> This is one of the core tasks of an RDBMS. >>>> >>>> As I recall, you once tried to convince me that you didn't need >>>> primary and foreign key constraints ("referential integrity is not >>>> used in professional databases"), that it was too special, and that >>>> yes, Gambas could do it all. ... > I forgot, I'd really like to know where you saw an example of my > database with tables without primary keys, I have no idea how you could > figure that out... I didn't say that. I wanted to show an example of possible errors in the creation of a database schema, which an inexperienced user can make. You can build a Gambas application on top of that but sooner or later you will get crippled data. Btw, I think this is a bit off-topic now. For others ... this adresses a private discussion, Gian and I had about the importance of referential integrity in RDBMS together with Gambas applications on top of it. In this context it may be of general interest after all, which is why I am answering here. And Gian, AFAIK the only mail from you that I didn't answer was the one, in which you told me that you "think the opposite". Ok, I can tell things based on experience, but if you answer me that you think the opposite, I'm done. If that's what you'd like, think the opposite, I won't try to convince you further. And don't worry, I'm not offended. :-) Alles Gute Christof Thalhofer -- [x] nail here for new monitor From gradobag at gradobag.it Thu Jul 13 14:46:36 2023 From: gradobag at gradobag.it (Gianluigi) Date: Thu, 13 Jul 2023 14:46:36 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <854c9cc6-7564-57d6-67fb-f88754fa7497@deganius.de> <1f774637-bc23-79fc-3aa3-aaf722f72ecf@gradobag.it> <0fe59be4-3e0a-1a82-e60f-00b72a922faa@gradobag.it> <622db867-0df6-6e37-5a29-c4b90197a91d@gradobag.it> <64a3d603-b390-d532-c1a9-90a5f306b396@gradobag.it> <89bca2d5-cd42-a7ac-3024-9c364f7c7957@gradobag.it> Message-ID: <69351ff3-af70-1bd3-37b1-c911424f714a@gradobag.it> Il 13/07/23 13:44, Christof Thalhofer ha scritto: > Dear Gian, > > Am 13.07.23 um 13:10 schrieb Gianluigi: >> Il 13/07/23 12:15, Gianluigi ha scritto: >>> Il 13/07/23 00:38, Gianluigi ha scritto: >>>> Il 12/07/23 20:46, Christof Thalhofer ha scritto: > >>>>> For instance if in a (RDBMS) database schema there are no primary >>>>> keys defined or if the?e are no relations defined with foreign >>>>> keys pointing to specific primary keys Gambas will not prevent the >>>>> user from creating orders for nonexisting customers. >>>>> >>>>> This is one of the core tasks of an RDBMS. >>>>> >>>>> As I recall, you once tried to convince me that you didn't need >>>>> primary and foreign key constraints ("referential integrity is not >>>>> used in professional databases"), that it was too special, and >>>>> that yes, Gambas could do it all. > > ... > >> I forgot, I'd really like to know where you saw an example of my >> database with tables without primary keys, I have no idea how you >> could figure that out... > > I didn't say that. I wanted to show an example of possible errors in > the creation of a database schema, which an inexperienced user can > make. You can build a Gambas application on top of that but sooner or > later you will get crippled data. > > Btw, I think this is a bit off-topic now. For others ... this adresses > a private discussion, Gian and I had about the importance of > referential integrity in RDBMS together with Gambas applications on > top of it. In this context it may be of general interest after all, > which is why I am answering here. > > And Gian, AFAIK the only mail from you that I didn't answer was the > one, in which you told me that you "think the opposite". Ok, I can > tell things based on experience, but if you answer me that you think > the opposite, I'm done. If that's what you'd like, think the opposite, > I won't try to convince you further. > > And don't worry, I'm not offended. :-) > > Alles Gute > > Christof Thalhofer > Hi Christof, maybe I misspoke, but I really don't think I said that about databases I think the opposite of you. How could I, since I don't know what you think but I know you've worked on it. The translator may have contributed. On foreign keys I know I said that there are professional databases that don't use them, in a discussion on our Italian forum (where I argued for their usefulness) some came up with even examples and explanations and I just mentioned it without elaborating (I couldn't). I may have said that on the DB component use of gb.db I think differently from you that you do not apreciate it. I repeat I have never worked on professional databases, all I know are small self-produced tests and having put back into operation the Access database of a metal company my client (I used to sell him stationery). However, we are talking about twenty years ago. I agree with you that this is off-topic so I would say close it here or, if the topic interests someone, open another post. Regards Gianluigi From benoit.minisini at gambas-basic.org Thu Jul 13 15:16:25 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Thu, 13 Jul 2023 15:16:25 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <0439d9d3-b214-0be9-de86-dc57588a0253@gradobag.it> <6319499b-54c8-289c-c344-5458705987c5@gradobag.it> <3c6e5f83-8f2d-e839-5e99-4093640dfba8@gambas-basic.org> <71261991-6931-7d28-f97b-689961ff7e64@gradobag.it> Message-ID: <939b62b9-0477-3879-7d8e-8cd53bcb9cb1@gambas-basic.org> Le 13/07/2023 ? 10:30, Gianluigi a ?crit?: > Hi Benoit, > > Sorry for the late reply, but I tried to do some testing. > > I am sure I am using the last well-compiled commit (I always delete the > previous one). > OK, I see: it's because the student id is a serial field, so its control has no value (it is generated by the server at insertion time). I don't think it's possible to get the last inserted record in that case in a standard and database agnostic way... :-/ There is a function that returns the last generated id in MySQL (for example), but what if you have *two* auto increment fields in your table? -- Beno?t Minisini. From gradobag at gradobag.it Thu Jul 13 15:28:19 2023 From: gradobag at gradobag.it (Gianluigi) Date: Thu, 13 Jul 2023 15:28:19 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <939b62b9-0477-3879-7d8e-8cd53bcb9cb1@gambas-basic.org> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <0439d9d3-b214-0be9-de86-dc57588a0253@gradobag.it> <6319499b-54c8-289c-c344-5458705987c5@gradobag.it> <3c6e5f83-8f2d-e839-5e99-4093640dfba8@gambas-basic.org> <71261991-6931-7d28-f97b-689961ff7e64@gradobag.it> <939b62b9-0477-3879-7d8e-8cd53bcb9cb1@gambas-basic.org> Message-ID: <6a113191-f49d-1e20-d7e3-881d4d0bc1aa@gradobag.it> Il 13/07/23 15:16, Benoit Minisini ha scritto: > Le 13/07/2023 ? 10:30, Gianluigi a ?crit?: >> Hi Benoit, >> >> Sorry for the late reply, but I tried to do some testing. >> >> I am sure I am using the last well-compiled commit (I always delete >> the previous one). >> > > OK, I see: it's because the student id is a serial field, so its > control has no value (it is generated by the server at insertion time). > > I don't think it's possible to get the last inserted record in that > case in a standard and database agnostic way... :-/ > > There is a function that returns the last generated id in MySQL (for > example), but what if you have *two* auto increment fields in your table? > Hi Benoit, If I understand correctly, this should not be a problem, just enter a non-serial long field and generate the key number yourself. Is this so, is this enough to make it work on all databases? Any suggestions on how to create the key or is MAX enough. Thank you very much Gianluigi From benoit.minisini at gambas-basic.org Thu Jul 13 15:34:39 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Thu, 13 Jul 2023 15:34:39 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <939b62b9-0477-3879-7d8e-8cd53bcb9cb1@gambas-basic.org> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <0439d9d3-b214-0be9-de86-dc57588a0253@gradobag.it> <6319499b-54c8-289c-c344-5458705987c5@gradobag.it> <3c6e5f83-8f2d-e839-5e99-4093640dfba8@gambas-basic.org> <71261991-6931-7d28-f97b-689961ff7e64@gradobag.it> <939b62b9-0477-3879-7d8e-8cd53bcb9cb1@gambas-basic.org> Message-ID: Le 13/07/2023 ? 15:16, Benoit Minisini a ?crit?: > Le 13/07/2023 ? 10:30, Gianluigi a ?crit?: >> Hi Benoit, >> >> Sorry for the late reply, but I tried to do some testing. >> >> I am sure I am using the last well-compiled commit (I always delete >> the previous one). >> > > OK, I see: it's because the student id is a serial field, so its control > has no value (it is generated by the server at insertion time). > > I don't think it's possible to get the last inserted record in that case > in a standard and database agnostic way... :-/ > > There is a function that returns the last generated id in MySQL (for > example), but what if you have *two* auto increment fields in your table? > More info... Both PostgreSQL and SQLite have a RETURNING keyword that allows to return the contents of records created by an INSERT INTO statement. It will allow to find the newly inserted record reliably. Alas MySQL does not have this feature! ?-( -- Beno?t Minisini. From benoit.minisini at gambas-basic.org Thu Jul 13 15:36:50 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Thu, 13 Jul 2023 15:36:50 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <0439d9d3-b214-0be9-de86-dc57588a0253@gradobag.it> <6319499b-54c8-289c-c344-5458705987c5@gradobag.it> <3c6e5f83-8f2d-e839-5e99-4093640dfba8@gambas-basic.org> <71261991-6931-7d28-f97b-689961ff7e64@gradobag.it> <939b62b9-0477-3879-7d8e-8cd53bcb9cb1@gambas-basic.org> Message-ID: <550b2c34-3af7-2d56-4bfd-536087227ec2@gambas-basic.org> Le 13/07/2023 ? 15:34, Benoit Minisini a ?crit?: > Le 13/07/2023 ? 15:16, Benoit Minisini a ?crit?: >> Le 13/07/2023 ? 10:30, Gianluigi a ?crit?: >>> Hi Benoit, >>> >>> Sorry for the late reply, but I tried to do some testing. >>> >>> I am sure I am using the last well-compiled commit (I always delete >>> the previous one). >>> >> >> OK, I see: it's because the student id is a serial field, so its >> control has no value (it is generated by the server at insertion time). >> >> I don't think it's possible to get the last inserted record in that >> case in a standard and database agnostic way... :-/ >> >> There is a function that returns the last generated id in MySQL (for >> example), but what if you have *two* auto increment fields in your table? >> > > More info... > > Both PostgreSQL and SQLite have a RETURNING keyword that allows to > return the contents of records created by an INSERT INTO statement. > > It will allow to find the newly inserted record reliably. > > Alas MySQL does not have this feature! ?-( > Good news: MariaDB implemented the RETURNING keyword on 2019. So maybe a standard solution can be implemented directly into the 'gb.db' component! -- Beno?t Minisini. From gradobag at gradobag.it Thu Jul 13 15:46:30 2023 From: gradobag at gradobag.it (Gianluigi) Date: Thu, 13 Jul 2023 15:46:30 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <550b2c34-3af7-2d56-4bfd-536087227ec2@gambas-basic.org> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <0439d9d3-b214-0be9-de86-dc57588a0253@gradobag.it> <6319499b-54c8-289c-c344-5458705987c5@gradobag.it> <3c6e5f83-8f2d-e839-5e99-4093640dfba8@gambas-basic.org> <71261991-6931-7d28-f97b-689961ff7e64@gradobag.it> <939b62b9-0477-3879-7d8e-8cd53bcb9cb1@gambas-basic.org> <550b2c34-3af7-2d56-4bfd-536087227ec2@gambas-basic.org> Message-ID: Il 13/07/23 15:36, Benoit Minisini ha scritto: > Le 13/07/2023 ? 15:34, Benoit Minisini a ?crit?: >> Le 13/07/2023 ? 15:16, Benoit Minisini a ?crit?: >>> Le 13/07/2023 ? 10:30, Gianluigi a ?crit?: >>>> Hi Benoit, >>>> >>>> Sorry for the late reply, but I tried to do some testing. >>>> >>>> I am sure I am using the last well-compiled commit (I always delete >>>> the previous one). >>>> >>> >>> OK, I see: it's because the student id is a serial field, so its >>> control has no value (it is generated by the server at insertion time). >>> >>> I don't think it's possible to get the last inserted record in that >>> case in a standard and database agnostic way... :-/ >>> >>> There is a function that returns the last generated id in MySQL (for >>> example), but what if you have *two* auto increment fields in your >>> table? >>> >> >> More info... >> >> Both PostgreSQL and SQLite have a RETURNING keyword that allows to >> return the contents of records created by an INSERT INTO statement. >> >> It will allow to find the newly inserted record reliably. >> >> Alas MySQL does not have this feature! ?-( >> > > Good news: MariaDB implemented the RETURNING keyword on 2019. > > So maybe a standard solution can be implemented directly into the > 'gb.db' component! > Hi Benoit, I will gladly wait :-) Regards Gianluigi From chrisml at deganius.de Thu Jul 13 16:27:43 2023 From: chrisml at deganius.de (Christof Thalhofer) Date: Thu, 13 Jul 2023 16:27:43 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <0439d9d3-b214-0be9-de86-dc57588a0253@gradobag.it> <6319499b-54c8-289c-c344-5458705987c5@gradobag.it> <3c6e5f83-8f2d-e839-5e99-4093640dfba8@gambas-basic.org> <71261991-6931-7d28-f97b-689961ff7e64@gradobag.it> <939b62b9-0477-3879-7d8e-8cd53bcb9cb1@gambas-basic.org> Message-ID: <4ef34368-dd22-060a-d7e7-7548e5d7892b@deganius.de> Am 13.07.23 um 15:34 schrieb Benoit Minisini: > Alas MySQL does not have this feature! ?-( How did you get the semicolon the other way round???? Alles Gute Christof Thalhofer -- Dies ist keine Signatur -------------- next part -------------- A non-text attachment was scrubbed... Name: OpenPGP_signature Type: application/pgp-signature Size: 840 bytes Desc: OpenPGP digital signature URL: From hans at gambas-buch.de Thu Jul 13 16:23:58 2023 From: hans at gambas-buch.de (Hans Lehmann) Date: Thu, 13 Jul 2023 16:23:58 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <0439d9d3-b214-0be9-de86-dc57588a0253@gradobag.it> <6319499b-54c8-289c-c344-5458705987c5@gradobag.it> <3c6e5f83-8f2d-e839-5e99-4093640dfba8@gambas-basic.org> <71261991-6931-7d28-f97b-689961ff7e64@gradobag.it> <939b62b9-0477-3879-7d8e-8cd53bcb9cb1@gambas-basic.org> Message-ID: Am 13.07.23 um 15:34 schrieb Benoit Minisini: > Both PostgreSQL and SQLite have a RETURNING keyword that allows to > return the contents of records created by an INSERT INTO statement. But note for SQLite: "The RETURNING syntax has been supported by SQLite since version 3.35.0 (2021-03-12)." Regargs, Hans From benoit.minisini at gambas-basic.org Thu Jul 13 16:41:48 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Thu, 13 Jul 2023 16:41:48 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: <4ef34368-dd22-060a-d7e7-7548e5d7892b@deganius.de> References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <0439d9d3-b214-0be9-de86-dc57588a0253@gradobag.it> <6319499b-54c8-289c-c344-5458705987c5@gradobag.it> <3c6e5f83-8f2d-e839-5e99-4093640dfba8@gambas-basic.org> <71261991-6931-7d28-f97b-689961ff7e64@gradobag.it> <939b62b9-0477-3879-7d8e-8cd53bcb9cb1@gambas-basic.org> <4ef34368-dd22-060a-d7e7-7548e5d7892b@deganius.de> Message-ID: <5dee0f10-3558-6973-52e9-902efdb612c2@gambas-basic.org> Le 13/07/2023 ? 16:27, Christof Thalhofer a ?crit?: > Am 13.07.23 um 15:34 schrieb Benoit Minisini: > >> Alas MySQL does not have this feature! ?-( > > How did you get the semicolon the other way round???? > > Alles Gute > > Christof Thalhofer > ?uo??s?nb poo? -- Beno?t Minisini. From benoit.minisini at gambas-basic.org Thu Jul 13 16:43:53 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Thu, 13 Jul 2023 16:43:53 +0200 Subject: [Gambas-user] DataView Help In-Reply-To: References: <6604197f-c9bc-9d52-04da-b24fa38376fb@gradobag.it> <14538bea-c45d-f54b-f810-e6642e4a9326@gradobag.it> <336d20fa-72aa-4701-2311-ab02fa3f4202@gambas-basic.org> <9239a9f8-e5f6-669f-94ba-d5b1890b0465@gmail.com> <0439d9d3-b214-0be9-de86-dc57588a0253@gradobag.it> <6319499b-54c8-289c-c344-5458705987c5@gradobag.it> <3c6e5f83-8f2d-e839-5e99-4093640dfba8@gambas-basic.org> <71261991-6931-7d28-f97b-689961ff7e64@gradobag.it> <939b62b9-0477-3879-7d8e-8cd53bcb9cb1@gambas-basic.org> Message-ID: Le 13/07/2023 ? 16:23, Hans Lehmann a ?crit?: > > Am 13.07.23 um 15:34 schrieb Benoit Minisini: >> Both PostgreSQL and SQLite have a RETURNING keyword that allows to >> return the contents of records created by an INSERT INTO statement. > > But note for SQLite: > > "The RETURNING syntax has been supported by SQLite since version 3.35.0 > (2021-03-12)." > > Regargs, > > Hans > Yes, the support must be optional according to the different database system versions. -- Beno?t Minisini. From gambas at servinfo.it Thu Jul 13 17:42:59 2023 From: gambas at servinfo.it (Marco Ancillotti) Date: Thu, 13 Jul 2023 17:42:59 +0200 Subject: [Gambas-user] gb.web.gui favicon Message-ID: <069195d9-d197-c76d-b40a-f3b12e25acc8@servinfo.it> Hi all , is there a way to change favicon of a gb.web.gui program ? I see the stock gambas icon but can't find the place to change it , I've try changing project icon or see if there is a form property ( like picture , image or something like it ) but can't find a way to do it. Thank's in advance , Marco. From benoit.minisini at gambas-basic.org Thu Jul 13 19:24:05 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Thu, 13 Jul 2023 19:24:05 +0200 Subject: [Gambas-user] gb.web.gui favicon In-Reply-To: <069195d9-d197-c76d-b40a-f3b12e25acc8@servinfo.it> References: <069195d9-d197-c76d-b40a-f3b12e25acc8@servinfo.it> Message-ID: <9b4fb455-19bd-8286-bb0a-6d953921fe25@gambas-basic.org> Le 13/07/2023 ? 17:42, Marco Ancillotti a ?crit?: > Hi all , > > is there a way to change favicon of a gb.web.gui program ? > > I see the stock gambas icon but can't find the place to change it , I've > try changing project icon or see if there is > a form property ( like picture , image or something like it ) but can't > find a way to do it. > > Thank's in advance , > Marco. > Create your custom 'favicon.png' image in the "Public" directory of your project. Regards, -- Beno?t Minisini. From gambas at servinfo.it Thu Jul 13 19:30:50 2023 From: gambas at servinfo.it (Marco Ancillotti) Date: Thu, 13 Jul 2023 19:30:50 +0200 Subject: [Gambas-user] gb.web.gui favicon In-Reply-To: <9b4fb455-19bd-8286-bb0a-6d953921fe25@gambas-basic.org> References: <069195d9-d197-c76d-b40a-f3b12e25acc8@servinfo.it> <9b4fb455-19bd-8286-bb0a-6d953921fe25@gambas-basic.org> Message-ID: <0da36659-f360-c506-1510-10fc4d1ea586@servinfo.it> It work's , thanks a lot ! Il 13/07/23 19:24, Benoit Minisini ha scritto: > Le 13/07/2023 ? 17:42, Marco Ancillotti a ?crit?: >> Hi all , >> >> is there a way to change favicon of a gb.web.gui program ? >> >> I see the stock gambas icon but can't find the place to change it , >> I've try changing project icon or see if there is >> a form property ( like picture , image or something like it ) but >> can't find a way to do it. >> >> Thank's in advance , >> Marco. >> > > Create your custom 'favicon.png' image in the "Public" directory of > your project. > > Regards, > From benoit.minisini at gambas-basic.org Fri Jul 14 12:17:45 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Fri, 14 Jul 2023 12:17:45 +0200 Subject: [Gambas-user] DataView Help... solved? Message-ID: <7fc243e0-9460-5a14-c7c5-6a44a626c155@gambas-basic.org> Hi, The last commits add a new optional boolean argument to the Connection.Create() method. If set to TRUE, then the Update() method will fill its Result object with the contents of the newly inserted record, serial fields included. This feature is used by the 'gb.db.form' DataSource control to automatically move to the newly inserted record reliably. Note that not all database systems support this feature, and not in all versions. If the feature is not supported, the optional boolean argument of Create() is silently ignored - you get a warning message on the command line only if you set DB.Debug = TRUE. And in that case, DataSource control will not move to the newly created record. Regards, -- Beno?t Minisini. From benoit.minisini at gambas-basic.org Fri Jul 14 12:29:56 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Fri, 14 Jul 2023 12:29:56 +0200 Subject: [Gambas-user] Holidays! Message-ID: <110f1331-98e3-9f04-8aae-91be83b2968a@gambas-basic.org> Hi, For your information, I leave Paris tomorrow for a week, so no Internet until July, 23rd. I hope I will find some buildings not burn by the barbarians when I come back. 8-/ -- Beno?t Minisini. From shordi at gmail.com Fri Jul 14 13:02:54 2023 From: shordi at gmail.com (=?UTF-8?Q?Jorge_Carri=C3=B3n?=) Date: Fri, 14 Jul 2023 13:02:54 +0200 Subject: [Gambas-user] Holidays! In-Reply-To: <110f1331-98e3-9f04-8aae-91be83b2968a@gambas-basic.org> References: <110f1331-98e3-9f04-8aae-91be83b2968a@gambas-basic.org> Message-ID: Enjoy, Boss, you serve it. Best regards El vie, 14 jul 2023 12:30, Benoit Minisini escribi?: > Hi, > > For your information, I leave Paris tomorrow for a week, so no Internet > until July, 23rd. > > I hope I will find some buildings not burn by the barbarians when I come > back. 8-/ > > -- > Beno?t Minisini. > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > -------------- next part -------------- An HTML attachment was scrubbed... URL: From gradobag at gradobag.it Fri Jul 14 13:12:12 2023 From: gradobag at gradobag.it (Gianluigi) Date: Fri, 14 Jul 2023 13:12:12 +0200 Subject: [Gambas-user] Holidays! In-Reply-To: References: <110f1331-98e3-9f04-8aae-91be83b2968a@gambas-basic.org> Message-ID: <71f37d3b-68ea-b91a-1ee1-2196af25b15a@gradobag.it> Il 14/07/23 13:02, Jorge Carri?n ha scritto: > Enjoy, Boss, you serve it. > > Best regards > > El vie, 14 jul 2023 12:30, Benoit Minisini > escribi?: > > Hi, > > For your information, I leave Paris tomorrow for a week, so no > Internet > until July, 23rd. > > I hope I will find some buildings not burn by the barbarians when > I come > back. 8-/ > > -- > Beno?t Minisini. > * 1 ? -------------- next part -------------- An HTML attachment was scrubbed... URL: From gradobag at gradobag.it Fri Jul 14 13:18:45 2023 From: gradobag at gradobag.it (Gianluigi) Date: Fri, 14 Jul 2023 13:18:45 +0200 Subject: [Gambas-user] Holidays! In-Reply-To: <71f37d3b-68ea-b91a-1ee1-2196af25b15a@gradobag.it> References: <110f1331-98e3-9f04-8aae-91be83b2968a@gambas-basic.org> <71f37d3b-68ea-b91a-1ee1-2196af25b15a@gradobag.it> Message-ID: <5596c9cc-dbae-b72b-e84a-fdc047c87dc4@gradobag.it> Il 14/07/23 13:12, Gianluigi ha scritto: > Il 14/07/23 13:02, Jorge Carri?n ha scritto: >> Enjoy, Boss, you serve it. >> >> Best regards >> >> El vie, 14 jul 2023 12:30, Benoit Minisini >> escribi?: >> >> Hi, >> >> For your information, I leave Paris tomorrow for a week, so no >> Internet >> until July, 23rd. >> >> I hope I will find some buildings not burn by the barbarians when >> I come >> back. 8-/ >> >> -- >> Beno?t Minisini. >> > > * 1 ? > Mathematics is not my strong point * = + Regards Gianluigi -------------- next part -------------- An HTML attachment was scrubbed... URL: From mbelmonte at belmotek.net Fri Jul 14 14:00:53 2023 From: mbelmonte at belmotek.net (=?UTF-8?Q?Mart=c3=adn?=) Date: Fri, 14 Jul 2023 14:00:53 +0200 Subject: [Gambas-user] Holidays! In-Reply-To: <110f1331-98e3-9f04-8aae-91be83b2968a@gambas-basic.org> References: <110f1331-98e3-9f04-8aae-91be83b2968a@gambas-basic.org> Message-ID: <357e468d-e685-39a4-33ca-8c144cdff0de@belmotek.net> El 14/7/23 a las 12:29, Benoit Minisini escribi?: > For your information, I leave Paris tomorrow for a week, so no > Internet until July, 23rd. > I hope I will find some buildings not burn by the barbarians when I > come back. Enjoy your vacation Beno?t. I'm going to France for a week, but not to Paris :-). Regards. Martin. From benoit.minisini at gambas-basic.org Fri Jul 14 14:45:43 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Fri, 14 Jul 2023 14:45:43 +0200 Subject: [Gambas-user] Holidays! In-Reply-To: <357e468d-e685-39a4-33ca-8c144cdff0de@belmotek.net> References: <110f1331-98e3-9f04-8aae-91be83b2968a@gambas-basic.org> <357e468d-e685-39a4-33ca-8c144cdff0de@belmotek.net> Message-ID: <0f34140a-749d-591c-71f8-962a347cdc7a@gambas-basic.org> Le 14/07/2023 ? 14:00, Mart?n a ?crit?: > El 14/7/23 a las 12:29, Benoit Minisini escribi?: >> For your information, I leave Paris tomorrow for a week, so no >> Internet until July, 23rd. >> I hope I will find some buildings not burn by the barbarians when I >> come back. > Enjoy your vacation Beno?t. > > I'm going to France for a week, but not to Paris :-). > > Regards. > > Martin. > I'm going to the south of France, around the "Aix-En-Provence" town. Where do you go? -- Beno?t Minisini. From bsteers4 at gmail.com Fri Jul 14 15:24:39 2023 From: bsteers4 at gmail.com (Bruce Steers) Date: Fri, 14 Jul 2023 14:24:39 +0100 Subject: [Gambas-user] Holidays! In-Reply-To: <110f1331-98e3-9f04-8aae-91be83b2968a@gambas-basic.org> References: <110f1331-98e3-9f04-8aae-91be83b2968a@gambas-basic.org> Message-ID: On Fri, 14 Jul 2023 at 11:30, Benoit Minisini < benoit.minisini at gambas-basic.org> wrote: > Hi, > > For your information, I leave Paris tomorrow for a week, so no Internet > until July, 23rd. > > I hope I will find some buildings not burn by the barbarians when I come > back. 8-/ > Just leave me the passwords for the gitlab site. I won't change much .... ;) hehe Have a great well deserved rest good fellow. Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From chrisml at deganius.de Fri Jul 14 15:51:07 2023 From: chrisml at deganius.de (Christof Thalhofer) Date: Fri, 14 Jul 2023 15:51:07 +0200 Subject: [Gambas-user] Holidays! In-Reply-To: <110f1331-98e3-9f04-8aae-91be83b2968a@gambas-basic.org> References: <110f1331-98e3-9f04-8aae-91be83b2968a@gambas-basic.org> Message-ID: <5c8fd7b5-ee6a-26cd-4de0-7a83562f2be9@deganius.de> Am 14.07.23 um 12:29 schrieb Benoit Minisini: > For your information, I leave Paris tomorrow for a week, so no Internet > until July, 23rd. Happy holidays! :-) Alles Gute Christof Thalhofer -- [x] nail here for new monitor From gradobag at gradobag.it Fri Jul 14 18:03:19 2023 From: gradobag at gradobag.it (Gianluigi) Date: Fri, 14 Jul 2023 18:03:19 +0200 Subject: [Gambas-user] DataView Help... solved? In-Reply-To: <7fc243e0-9460-5a14-c7c5-6a44a626c155@gambas-basic.org> References: <7fc243e0-9460-5a14-c7c5-6a44a626c155@gambas-basic.org> Message-ID: <7b19e762-860f-befb-7744-974171ea2251@gradobag.it> Il 14/07/23 12:17, Benoit Minisini ha scritto: > Hi, > > The last commits add a new optional boolean argument to the > Connection.Create() method. > > If set to TRUE, then the Update() method will fill its Result object > with the contents of the newly inserted record, serial fields included. > > This feature is used by the 'gb.db.form' DataSource control to > automatically move to the newly inserted record reliably. > > Note that not all database systems support this feature, and not in > all versions. > > If the feature is not supported, the optional boolean argument of > Create() is silently ignored - you get a warning message on the > command line only if you set DB.Debug = TRUE. And in that case, > DataSource control will not move to the newly created record. > > Regards, > Hi Benoit, unfortunately I have to say no, I haven't solved it. Indeed, if before I had understood little, now I can say that I no longer understand anything. The DataView still does not select the current record both on the change of sorting and on the new insertion and/or update (button save), I now have numerous warnings of 'allocations not freed'. Now I would think about the fun of the holidays, we will eventually think about it later. Thank you for the great effort that I still appreciate a lot. Happy holidays again :-) Gianluigi From dickson.tim at googlemail.com Fri Jul 14 18:36:50 2023 From: dickson.tim at googlemail.com (Tim Dickson) Date: Fri, 14 Jul 2023 17:36:50 +0100 Subject: [Gambas-user] Holidays! In-Reply-To: <110f1331-98e3-9f04-8aae-91be83b2968a@gambas-basic.org> References: <110f1331-98e3-9f04-8aae-91be83b2968a@gambas-basic.org> Message-ID: <7b099be8-c833-7ba9-4c36-078ccc11315c@googlemail.com> have a great holiday. :-) On 14/07/2023 11:29, Benoit Minisini wrote: > Hi, > > For your information, I leave Paris tomorrow for a week, so no > Internet until July, 23rd. > > I hope I will find some buildings not burn by the barbarians when I > come back. 8-/ > From jose.rodriguez at cenpalab.cu Fri Jul 14 19:45:48 2023 From: jose.rodriguez at cenpalab.cu (jose.rodriguez at cenpalab.cu) Date: Fri, 14 Jul 2023 13:45:48 -0400 Subject: [Gambas-user] Holidays! In-Reply-To: <110f1331-98e3-9f04-8aae-91be83b2968a@gambas-basic.org> References: <110f1331-98e3-9f04-8aae-91be83b2968a@gambas-basic.org> Message-ID: <9ba6c94269683865e6641c086a2c838e@cenpalab.cu> On 2023-07-14 06:29, Benoit Minisini wrote: > Hi, > > For your information, I leave Paris tomorrow for a week, so no Internet > until July, 23rd. > > I hope I will find some buildings not burn by the barbarians when I > come back. 8-/ Have a nice, well deserved Holiday, Benoit...! Regards, Joe1962 From benoit.minisini at gambas-basic.org Fri Jul 14 20:02:07 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Fri, 14 Jul 2023 20:02:07 +0200 Subject: [Gambas-user] DataView Help... solved? In-Reply-To: <7b19e762-860f-befb-7744-974171ea2251@gradobag.it> References: <7fc243e0-9460-5a14-c7c5-6a44a626c155@gambas-basic.org> <7b19e762-860f-befb-7744-974171ea2251@gradobag.it> Message-ID: <335505f5-4794-37d1-63c3-58e8dcb1dd3d@gambas-basic.org> Le 14/07/2023 ? 18:03, Gianluigi a ?crit?: > Il 14/07/23 12:17, Benoit Minisini ha scritto: >> Hi, >> >> The last commits add a new optional boolean argument to the >> Connection.Create() method. >> >> If set to TRUE, then the Update() method will fill its Result object >> with the contents of the newly inserted record, serial fields included. >> >> This feature is used by the 'gb.db.form' DataSource control to >> automatically move to the newly inserted record reliably. >> >> Note that not all database systems support this feature, and not in >> all versions. >> >> If the feature is not supported, the optional boolean argument of >> Create() is silently ignored - you get a warning message on the >> command line only if you set DB.Debug = TRUE. And in that case, >> DataSource control will not move to the newly created record. >> >> Regards, >> > Hi Benoit, > > unfortunately I have to say no, I haven't solved it. > > Indeed, if before I had understood little, now I can say that I no > longer understand anything. > > The DataView still does not select the current record both on the change > of sorting and on the new insertion and/or update (button save), I now > have numerous warnings of 'allocations not freed'. > > Now I would think about the fun of the holidays, we will eventually > think about it later. > > Thank you for the great effort that I still appreciate a lot. > > Happy holidays again :-) > > Gianluigi > Can you try again? It should be better now. Regards, -- Beno?t Minisini. From gradobag at gradobag.it Fri Jul 14 23:03:45 2023 From: gradobag at gradobag.it (Gianluigi) Date: Fri, 14 Jul 2023 23:03:45 +0200 Subject: [Gambas-user] DataView Help... solved? In-Reply-To: <335505f5-4794-37d1-63c3-58e8dcb1dd3d@gambas-basic.org> References: <7fc243e0-9460-5a14-c7c5-6a44a626c155@gambas-basic.org> <7b19e762-860f-befb-7744-974171ea2251@gradobag.it> <335505f5-4794-37d1-63c3-58e8dcb1dd3d@gambas-basic.org> Message-ID: Il 14/07/23 20:02, Benoit Minisini ha scritto: > Le 14/07/2023 ? 18:03, Gianluigi a ?crit?: >> Il 14/07/23 12:17, Benoit Minisini ha scritto: >>> Hi, >>> >>> The last commits add a new optional boolean argument to the >>> Connection.Create() method. >>> >>> If set to TRUE, then the Update() method will fill its Result object >>> with the contents of the newly inserted record, serial fields included. >>> >>> This feature is used by the 'gb.db.form' DataSource control to >>> automatically move to the newly inserted record reliably. >>> >>> Note that not all database systems support this feature, and not in >>> all versions. >>> >>> If the feature is not supported, the optional boolean argument of >>> Create() is silently ignored - you get a warning message on the >>> command line only if you set DB.Debug = TRUE. And in that case, >>> DataSource control will not move to the newly created record. >>> >>> Regards, >>> >> Hi Benoit, >> >> unfortunately I have to say no, I haven't solved it. >> >> Indeed, if before I had understood little, now I can say that I no >> longer understand anything. >> >> The DataView still does not select the current record both on the >> change of sorting and on the new insertion and/or update (button >> save), I now have numerous warnings of 'allocations not freed'. >> >> Now I would think about the fun of the holidays, we will eventually >> think about it later. >> >> Thank you for the great effort that I still appreciate a lot. >> >> Happy holidays again :-) >> >> Gianluigi >> > > Can you try again? It should be better now. > > Regards, > Hi Benoit, I just got back and was able to do a few tests. Everything seems to be working fine, congratulations, great job. I wish you to be able to switch off (as they say here) and relax. Best regards Gianluigi From isafiur at gmail.com Sat Jul 15 20:00:33 2023 From: isafiur at gmail.com (Safiur Rahman) Date: Sat, 15 Jul 2023 23:45:33 +0545 Subject: [Gambas-user] gb.form.stock not usable with gb.web.gui Message-ID: Hi The gb.web.gui applications are no more loading gb.form.stock icons from gambas version 3.18.3. The result is as all controls using icons from this components look ugly. Now neither gb.web.gui loads this stock icon components nor you can select this component in your web project. Is there any way out to use these stock icons? -- Regards Safiur Rahman -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: gbwebgui.png Type: image/png Size: 78711 bytes Desc: not available URL: From isafiur at gmail.com Sat Jul 15 20:23:13 2023 From: isafiur at gmail.com (Safiur Rahman) Date: Sun, 16 Jul 2023 00:08:13 +0545 Subject: [Gambas-user] gb.form.stock not usable with gb.web.gui In-Reply-To: References: Message-ID: Hi The development version works fine On 7/15/23, Safiur Rahman wrote: > Hi > The gb.web.gui applications are no more loading gb.form.stock icons from > gambas version 3.18.3. The result is as all controls using icons from this > components look ugly. > Now neither gb.web.gui loads this stock icon components nor you can select > this component in your web project. Is there any way out to use these stock > icons? > > -- > Regards > Safiur Rahman > -- Regards Safiur Rahman From t.lee.davidson at gmail.com Sun Jul 16 18:47:54 2023 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Sun, 16 Jul 2023 12:47:54 -0400 Subject: [Gambas-user] gb.form.stock not usable with gb.web.gui In-Reply-To: References: Message-ID: <6ef0d1b0-7a59-d3b1-c673-22f6df305a81@gmail.com> On 7/15/23 14:00, Safiur Rahman wrote: > Hi > The gb.web.gui applications are no more loading gb.form.stock icons from gambas version 3.18.3. The result is as all controls > using icons from this components look ugly. > Now neither gb.web.gui loads this stock icon components nor you can select this component in your web project. Is there any way > out to use these stock icons? > > -- > Regards > Safiur Rahman Confirmed on v3.18.3. I tried it with the small "apply" icon. The HTML for the image source on the button is: What actually works is: I realize that doesn't help you with the issue at the moment. But, it might help someone, who knows more about gb.web.gui than I, track down the cause. -- Lee From bsteers4 at gmail.com Mon Jul 17 13:42:56 2023 From: bsteers4 at gmail.com (Bruce Steers) Date: Mon, 17 Jul 2023 12:42:56 +0100 Subject: [Gambas-user] gb.form.stock not usable with gb.web.gui In-Reply-To: <6ef0d1b0-7a59-d3b1-c673-22f6df305a81@gmail.com> References: <6ef0d1b0-7a59-d3b1-c673-22f6df305a81@gmail.com> Message-ID: On Sun, 16 Jul 2023 at 17:48, T Lee Davidson wrote: > On 7/15/23 14:00, Safiur Rahman wrote: > > Hi > > The gb.web.gui applications are no more loading gb.form.stock icons from > gambas version 3.18.3. The result is as all controls > > using icons from this components look ugly. > > Now neither gb.web.gui loads this stock icon components nor you can > select this component in your web project. Is there any way > > out to use these stock icons? > > > > -- > > Regards > > Safiur Rahman > > Confirmed on v3.18.3. > > I tried it with the small "apply" icon. > > The HTML for the image source on the button is: > class="gw-button-image"> > > What actually works is: > class="gw-button-image"> > > > I realize that doesn't help you with the issue at the moment. But, it > might help someone, who knows more about gb.web.gui than > I, track down the cause. > I've tracked it down. WebControl.class Static Public Sub _GetLink(sLink As String) As String If sLink Begins "http://" Or If sLink Begins "https://" Then Return sLink Else If sLink Begins "icon:/" Or If sLink Begins "flag:/" Then Return "/" &/ Application.Root &/ "icon:" & Replace(sLink, "/", ":") Else Return "/" &/ Application.Root &/ sLink Endif End so the second condition.. Else If sLink Begins "icon:/" Or If sLink Begins "flag:/" Then Return "/" &/ Application.Root &/ "icon:" & Replace(sLink, "/", ":") the link already begins icon:/ then i adds icon: in the next line for now create an auto-inherited class called WebControl.class and add that _GetLink method to it and fix that line. I'm sure Ben will fix as soon as he's back from holiday. Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Mon Jul 17 15:28:48 2023 From: bsteers4 at gmail.com (Bruce Steers) Date: Mon, 17 Jul 2023 14:28:48 +0100 Subject: [Gambas-user] gb.form.stock not usable with gb.web.gui In-Reply-To: References: <6ef0d1b0-7a59-d3b1-c673-22f6df305a81@gmail.com> Message-ID: On Mon, 17 Jul 2023 at 12:42, Bruce Steers wrote: > > > On Sun, 16 Jul 2023 at 17:48, T Lee Davidson > wrote: > >> On 7/15/23 14:00, Safiur Rahman wrote: >> > Hi >> > The gb.web.gui applications are no more loading gb.form.stock icons >> from gambas version 3.18.3. The result is as all controls >> > using icons from this components look ugly. >> > Now neither gb.web.gui loads this stock icon components nor you can >> select this component in your web project. Is there any way >> > out to use these stock icons? >> > >> > -- >> > Regards >> > Safiur Rahman >> >> Confirmed on v3.18.3. >> >> I tried it with the small "apply" icon. >> >> The HTML for the image source on the button is: >> > class="gw-button-image"> >> >> What actually works is: >> > class="gw-button-image"> >> >> >> I realize that doesn't help you with the issue at the moment. But, it >> might help someone, who knows more about gb.web.gui than >> I, track down the cause. >> > > I actually found that format is correct !! see attached image how it works just fine. So i have no idea of the problem sorry. BruceS > > I've tracked it down. > > WebControl.class > > Static Public Sub _GetLink(sLink As String) As String > > If sLink Begins "http://" Or If sLink Begins "https://" Then > Return sLink > Else If sLink Begins "icon:/" Or If sLink Begins "flag:/" Then > Return "/" &/ Application.Root &/ "icon:" & Replace(sLink, "/", ":") > Else > Return "/" &/ Application.Root &/ sLink > Endif > > End > > so the second condition.. > Else If sLink Begins "icon:/" Or If sLink Begins "flag:/" Then > Return "/" &/ Application.Root &/ "icon:" & Replace(sLink, "/", ":") > > the link already begins icon:/ then i adds icon: in the next line > > for now create an auto-inherited class called WebControl.class and add > that _GetLink method to it and fix that line. > > I'm sure Ben will fix as soon as he's back from holiday. > > Respects > BruceS > -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Untitled.jpg Type: image/jpeg Size: 155965 bytes Desc: not available URL: From bsteers4 at gmail.com Mon Jul 17 15:36:23 2023 From: bsteers4 at gmail.com (Bruce Steers) Date: Mon, 17 Jul 2023 14:36:23 +0100 Subject: [Gambas-user] gb.form.stock not usable with gb.web.gui In-Reply-To: References: <6ef0d1b0-7a59-d3b1-c673-22f6df305a81@gmail.com> Message-ID: On Mon, 17 Jul 2023 at 14:28, Bruce Steers wrote: > > > On Mon, 17 Jul 2023 at 12:42, Bruce Steers wrote: > >> >> >> On Sun, 16 Jul 2023 at 17:48, T Lee Davidson >> wrote: >> >>> On 7/15/23 14:00, Safiur Rahman wrote: >>> > Hi >>> > The gb.web.gui applications are no more loading gb.form.stock icons >>> from gambas version 3.18.3. The result is as all controls >>> > using icons from this components look ugly. >>> > Now neither gb.web.gui loads this stock icon components nor you can >>> select this component in your web project. Is there any way >>> > out to use these stock icons? >>> > >>> > -- >>> > Regards >>> > Safiur Rahman >>> >>> Confirmed on v3.18.3. >>> >>> I tried it with the small "apply" icon. >>> >>> The HTML for the image source on the button is: >>> >> class="gw-button-image"> >>> >>> What actually works is: >>> >> class="gw-button-image"> >>> >>> >>> I realize that doesn't help you with the issue at the moment. But, it >>> might help someone, who knows more about gb.web.gui than >>> I, track down the cause. >>> >> >> > I actually found that format is correct !! > > > > see attached image how it works just fine. > So i have no idea of the problem sorry. > BruceS > does it fix if you change the _GetLink line to not have Application.Root in the url? (i suggest as my image links do not have a root path just / and they work okay) Else If sLink Begins "icon:/" Or If sLink Begins "flag:/" Then Return "/" & "icon:" & Replace(sLink, "/", ":") BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From gradobag at gradobag.it Mon Jul 17 18:27:01 2023 From: gradobag at gradobag.it (Gianluigi) Date: Mon, 17 Jul 2023 18:27:01 +0200 Subject: [Gambas-user] DataView Help... solved? In-Reply-To: <335505f5-4794-37d1-63c3-58e8dcb1dd3d@gambas-basic.org> References: <7fc243e0-9460-5a14-c7c5-6a44a626c155@gambas-basic.org> <7b19e762-860f-befb-7744-974171ea2251@gradobag.it> <335505f5-4794-37d1-63c3-58e8dcb1dd3d@gambas-basic.org> Message-ID: <51a642e9-2255-d1ee-14f4-0b43c305add1@gradobag.it> Il 14/07/23 20:02, Benoit Minisini ha scritto: > Can you try again? It should be better now. > > Regards, > > -- > Beno?t Minisini. Hi, just to sort things out a bit, I'm attaching the link where I downloaded the latest version of the test program: https://paste.c-net.org/BarksRenfro In addition to the program now doing what I had promised myself, given the benevolent criticisms of someone, I wanted to clarify that the test eliminates records, which I never do better to have a column (active) where it is reported if the record has been eliminated (active = False) and then put a filter on opening the connection to display only the active records in the DataView, it involves more work but many problems are avoided. Another column that should never be missing is that of the operator who updated the table and when he did the operation. As I said before, Benoit knows more than many of us, so learning to use Gambas' tools helps us make fewer mistakes. I hope the example is correct and helps someone. Besides Benoit, special thanks go to Lee who is always ready to help. Many thanks to all participants Happy holiday Gianluigi From t.lee.davidson at gmail.com Tue Jul 18 00:05:48 2023 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Mon, 17 Jul 2023 18:05:48 -0400 Subject: [Gambas-user] gb.form.stock not usable with gb.web.gui In-Reply-To: References: <6ef0d1b0-7a59-d3b1-c673-22f6df305a81@gmail.com> Message-ID: <34697436-1a22-7774-621b-50d028d264c3@gmail.com> On 7/17/23 09:36, Bruce Steers wrote: > does it fix if you change the _GetLink line to not have Application.Root in the url? > (i suggest as my image links do not have a root path just / and they work okay) > > ? Else If sLink Begins "icon:/" Or If sLink Begins "flag:/" Then > ? ? Return "/" & "icon:" & Replace(sLink, "/", ":") > The development version subroutine is at line 1017 at: https://gitlab.com/gambas/gambas/-/blob/master/comp/src/gb.web.gui/.src/WebControl.class It also uses Application.Root, and Safiur said that version works fine. -- Lee From bsteers4 at gmail.com Tue Jul 18 11:53:40 2023 From: bsteers4 at gmail.com (Bruce Steers) Date: Tue, 18 Jul 2023 10:53:40 +0100 Subject: [Gambas-user] gb.form.stock not usable with gb.web.gui In-Reply-To: <34697436-1a22-7774-621b-50d028d264c3@gmail.com> References: <6ef0d1b0-7a59-d3b1-c673-22f6df305a81@gmail.com> <34697436-1a22-7774-621b-50d028d264c3@gmail.com> Message-ID: On Mon, 17 Jul 2023 at 23:06, T Lee Davidson wrote: > On 7/17/23 09:36, Bruce Steers wrote: > > does it fix if you change the _GetLink line to not have Application.Root > in the url? > > (i suggest as my image links do not have a root path just / and they > work okay) > > > > Else If sLink Begins "icon:/" Or If sLink Begins "flag:/" Then > > Return "/" & "icon:" & Replace(sLink, "/", ":") > > > > The development version subroutine is at line 1017 at: > > https://gitlab.com/gambas/gambas/-/blob/master/comp/src/gb.web.gui/.src/WebControl.class > > It also uses Application.Root, and Safiur said that version works fine. > oops, i missed that post :-\ I just looked at past commits for both stable and master, one is to that very routine but it has also been committed to stable so can't be that. something for a well rested, sun tanned Benoit to figure out in less than a minute when he's back ;) Respects BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From gradobag at gradobag.it Tue Jul 18 16:36:41 2023 From: gradobag at gradobag.it (Gianluigi) Date: Tue, 18 Jul 2023 16:36:41 +0200 Subject: [Gambas-user] DataView Help... solved? In-Reply-To: <51a642e9-2255-d1ee-14f4-0b43c305add1@gradobag.it> References: <7fc243e0-9460-5a14-c7c5-6a44a626c155@gambas-basic.org> <7b19e762-860f-befb-7744-974171ea2251@gradobag.it> <335505f5-4794-37d1-63c3-58e8dcb1dd3d@gambas-basic.org> <51a642e9-2255-d1ee-14f4-0b43c305add1@gradobag.it> Message-ID: <3684c244-5907-a181-fe25-d9d8b0f466d8@gradobag.it> Il 17/07/23 18:27, Gianluigi ha scritto: > Il 14/07/23 20:02, Benoit Minisini ha scritto: >> Can you try again? It should be better now. >> >> Regards, >> >> -- >> Beno?t Minisini. > > > Hi, > > just to sort things out a bit, I'm attaching the link where I > downloaded the latest version of the test program: > https://paste.c-net.org/BarksRenfro > In addition to the program now doing what I had promised myself, given > the benevolent criticisms of someone, I wanted to clarify that the > test eliminates records, which I never do better to have a column > (active) where it is reported if the record has been eliminated > (active = False) and then put a filter on opening the connection to > display only the active records in the DataView, it involves more work > but many problems are avoided. > Another column that should never be missing is that of the operator > who updated the table and when he did the operation. > > As I said before, Benoit knows more than many of us, so learning to > use Gambas' tools helps us make fewer mistakes. > > I hope the example is correct and helps someone. > > Besides Benoit, special thanks go to Lee who is always ready to help. > > Many thanks to all participants > > Happy holiday > > Gianluigi > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- Hi, As expected version 0.0.4 contains some bugs, fixed in version 0.0.5 attached at this link: https://paste.c-net.org/BrushCahill I apologize Regards Gianluigi From gradobag at gradobag.it Tue Jul 18 23:04:37 2023 From: gradobag at gradobag.it (Gianluigi) Date: Tue, 18 Jul 2023 23:04:37 +0200 Subject: [Gambas-user] DataView Help... solved? In-Reply-To: <3684c244-5907-a181-fe25-d9d8b0f466d8@gradobag.it> References: <7fc243e0-9460-5a14-c7c5-6a44a626c155@gambas-basic.org> <7b19e762-860f-befb-7744-974171ea2251@gradobag.it> <335505f5-4794-37d1-63c3-58e8dcb1dd3d@gambas-basic.org> <51a642e9-2255-d1ee-14f4-0b43c305add1@gradobag.it> <3684c244-5907-a181-fe25-d9d8b0f466d8@gradobag.it> Message-ID: Il 18/07/23 16:36, Gianluigi ha scritto: > Hi, > > As expected version 0.0.4 contains some bugs, fixed in version 0.0.5 > attached at this link: > https://paste.c-net.org/BrushCahill > > I apologize > > Regards > > Gianluigi I was warned by Hans that the changes could no longer be saved, that's because I misplaced the code: 'If $bCreate = False Then Return' at the beginning of btnSave_Click instead of the second position. Correct Here is the new link: https://paste.c-net.org/HerbalCarlo If you are bored, I understand ? Regards Gianluigi From t.lee.davidson at gmail.com Wed Jul 19 03:41:54 2023 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Tue, 18 Jul 2023 21:41:54 -0400 Subject: [Gambas-user] gb.form.stock not usable with gb.web.gui In-Reply-To: References: <6ef0d1b0-7a59-d3b1-c673-22f6df305a81@gmail.com> Message-ID: On 7/17/23 09:28, Bruce Steers wrote: > I actually found that format is correct !! > > > > see attached image how it works just fine. > So i have no idea of the problem sorry. > BruceS Looking back through this thread, I see there is quite a difference between your image file path and mine. The format for the path of the ('apply' icon) image source file I get is: src="[document_root]/webguiapp.gambas/icon:icon::small:apply" I don't understand how it could work for you when it is specified as an absolute path to your document_root. Does your custom Gambas have more than a few tweaks to gb.web.gui? I have tried with Apache and Lighttpd; with Chromium and Firefox. The only format I have found that works on my system is: src="[document_root]/webguiapp.gambas/icon:small:apply"> -- Lee From claus.dietrich at freenet.de Sun Jul 23 17:07:04 2023 From: claus.dietrich at freenet.de (Claus Dietrich) Date: Sun, 23 Jul 2023 17:07:04 +0200 Subject: [Gambas-user] Color Range Message-ID: <67263702-b5b5-ad6d-a429-30663bb5dc11@freenet.de> Hi I managed to plot color histograms of a photograph for red, green and blue. Now I am looking for something in Gambas which allows me to adjust the according color range of the picture for red, green and blue individually. Does anyone have a solution? Best regards Claus From demosthenesk at gmail.com Sun Jul 23 19:10:57 2023 From: demosthenesk at gmail.com (Demosthenes Koptsis) Date: Sun, 23 Jul 2023 20:10:57 +0300 Subject: [Gambas-user] Public Form Controls Message-ID: Hello, is there a way to access a second form controls like Form2.TextBox1 from FMain without enable Public Form Control from options ? From bsteers4 at gmail.com Sun Jul 23 19:57:56 2023 From: bsteers4 at gmail.com (Bruce Steers) Date: Sun, 23 Jul 2023 18:57:56 +0100 Subject: [Gambas-user] Public Form Controls In-Reply-To: References: Message-ID: On Sun, 23 Jul 2023 at 18:11, Demosthenes Koptsis wrote: > Hello, > > is there a way to access a second form controls like Form2.TextBox1 from > FMain without enable Public Form Control from options ? > > Sure you can use the Form[] _get method Form2["TextBox1"] that will return Control.class to properly acces TextBox.class do this... Dim tb As TextBox = Form2["TextBox1"] tb.Text = "hello" BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Sun Jul 23 20:11:33 2023 From: bsteers4 at gmail.com (Bruce Steers) Date: Sun, 23 Jul 2023 19:11:33 +0100 Subject: [Gambas-user] Public Form Controls In-Reply-To: References: Message-ID: On Sun, 23 Jul 2023 at 18:57, Bruce Steers wrote: > > > On Sun, 23 Jul 2023 at 18:11, Demosthenes Koptsis > wrote: > >> Hello, >> >> is there a way to access a second form controls like Form2.TextBox1 from >> FMain without enable Public Form Control from options ? >> >> > Sure > you can use the Form[] _get method > Form2["TextBox1"] > > that will return Control.class to properly acces TextBox.class do this... > > Dim tb As TextBox = Form2["TextBox1"] > tb.Text = "hello" > Sorry that was too Brief. accessing Form2["TextBox1"] will return a "Control" object so you can access any general control properties like Width, Background, Name etc. to access TextBox specific properties like Text, Placeholder etc use the second method. or you can make a function to access any control type use Object Public Sub GetForm2Object(Name As String) As Object Return Form2[Name] End Then something like this will work... GetForm2Object("TextBox1").Text = "This text" The plus side of using Object is it works for ANY control and it's properties. the down side is the auto-complete only works if you specifically set the object return type (Ie TextBox). Public Sub GetForm2TextBox(Name As String) As TextBox if Form2[Name] Is TextBox Then Return Form2[Name] Error.Raise(Name & " is not a text box") End BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From demosthenesk at gmail.com Sun Jul 23 21:49:11 2023 From: demosthenesk at gmail.com (Demosthenes Koptsis) Date: Sun, 23 Jul 2023 22:49:11 +0300 Subject: [Gambas-user] Public Form Controls In-Reply-To: References: Message-ID: <384246aa-daa4-2f99-f977-14ad8dc2e0b2@gmail.com> Thanks ! On 7/23/23 21:11, Bruce Steers wrote: > > > On Sun, 23 Jul 2023 at 18:57, Bruce Steers wrote: > > > > On Sun, 23 Jul 2023 at 18:11, Demosthenes Koptsis > wrote: > > Hello, > > is there a way to access a second form controls like > Form2.TextBox1 from > FMain without enable Public Form Control from options ? > > > Sure > you can use the Form[] _get method > Form2["TextBox1"] > > that will return Control.class to properly acces TextBox.class do > this... > > Dim tb As TextBox = Form2["TextBox1"] > tb.Text = "hello" > > > Sorry that was too Brief. > > accessing Form2["TextBox1"] will return a "Control" object so you can > access any general control properties like Width, Background, Name etc. > > to access TextBox specific properties like Text, Placeholder etc use > the second method. > > or you can make a function to access any control type use Object > > Public Sub GetForm2Object(Name As String) As Object > ? Return Form2[Name] > > End > > Then something like this will work... > > GetForm2Object("TextBox1").Text = "This text" > > The plus side of using Object is it works for ANY control and it's > properties. > the down side is the auto-complete only works if you specifically set > the object return type (Ie TextBox). > > Public Sub GetForm2TextBox(Name As String) As TextBox > ? if Form2[Name] Is TextBox Then Return Form2[Name] > Error.Raise(Name & " is not a text box") > > End > > BruceS > > > ----[http://gambaswiki.org/wiki/doc/netiquette ]---- -------------- next part -------------- An HTML attachment was scrubbed... URL: From demosthenesk at gmail.com Sun Jul 23 21:56:35 2023 From: demosthenesk at gmail.com (Demosthenes Koptsis) Date: Sun, 23 Jul 2023 22:56:35 +0300 Subject: [Gambas-user] Public Form Controls In-Reply-To: References: Message-ID: ok i understood the example you gave.... something else now but relative to subject... Which programming approach is better... Public Form Controls OR Not Public... As new programmer i feel more easier the Public Form Controls. The example you gave increase complexity... On 7/23/23 21:11, Bruce Steers wrote: > > > On Sun, 23 Jul 2023 at 18:57, Bruce Steers wrote: > > > > On Sun, 23 Jul 2023 at 18:11, Demosthenes Koptsis > wrote: > > Hello, > > is there a way to access a second form controls like > Form2.TextBox1 from > FMain without enable Public Form Control from options ? > > > Sure > you can use the Form[] _get method > Form2["TextBox1"] > > that will return Control.class to properly acces TextBox.class do > this... > > Dim tb As TextBox = Form2["TextBox1"] > tb.Text = "hello" > > > Sorry that was too Brief. > > accessing Form2["TextBox1"] will return a "Control" object so you can > access any general control properties like Width, Background, Name etc. > > to access TextBox specific properties like Text, Placeholder etc use > the second method. > > or you can make a function to access any control type use Object > > Public Sub GetForm2Object(Name As String) As Object > ? Return Form2[Name] > > End > > Then something like this will work... > > GetForm2Object("TextBox1").Text = "This text" > > The plus side of using Object is it works for ANY control and it's > properties. > the down side is the auto-complete only works if you specifically set > the object return type (Ie TextBox). > > Public Sub GetForm2TextBox(Name As String) As TextBox > ? if Form2[Name] Is TextBox Then Return Form2[Name] > Error.Raise(Name & " is not a text box") > > End > > BruceS > > > ----[http://gambaswiki.org/wiki/doc/netiquette ]---- -------------- next part -------------- An HTML attachment was scrubbed... URL: From t.lee.davidson at gmail.com Sun Jul 23 22:10:56 2023 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Sun, 23 Jul 2023 16:10:56 -0400 Subject: [Gambas-user] Public Form Controls In-Reply-To: References: Message-ID: On 7/23/23 15:56, Demosthenes Koptsis wrote: > Which programming approach is better... Public Form Controls OR Not Public... > > As new programmer i feel more easier the Public Form Controls. > > The example you gave increase complexity... If I need to access a control from other than its parent form, I have no qualms about making it Public. Public does not mean that it is accessible from outside the application. It just gives it global scope within the application. -- Lee From bsteers4 at gmail.com Sun Jul 23 22:18:06 2023 From: bsteers4 at gmail.com (Bruce Steers) Date: Sun, 23 Jul 2023 21:18:06 +0100 Subject: [Gambas-user] Public Form Controls In-Reply-To: References: Message-ID: On Sun, 23 Jul 2023 at 20:57, Demosthenes Koptsis wrote: > ok i understood the example you gave.... > > > something else now but relative to subject... > > Which programming approach is better... Public Form Controls OR Not > Public... > > As new programmer i feel more easier the Public Form Controls. > > The example you gave increase complexity... > if you set main options to "all controls public" then the IDE auto-complete can be very full of items you do not really want to see, I personally just use the individual controls "Public" property to make only that control visible across other forms. (you can hold Ctrl and select multiple controls then set their Public property to True in the IDE) but yes , i used to just set "all controls public" in the ide project properties as it was "easier" :) it depends on your needs. BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Sun Jul 23 22:25:14 2023 From: bsteers4 at gmail.com (Bruce Steers) Date: Sun, 23 Jul 2023 21:25:14 +0100 Subject: [Gambas-user] Public Form Controls In-Reply-To: References: Message-ID: I take it you know the "individual Public" property i am speaking of? All controls/Containers have it in the IDE see image BruceS On Sun, 23 Jul 2023 at 21:18, Bruce Steers wrote: > > > On Sun, 23 Jul 2023 at 20:57, Demosthenes Koptsis > wrote: > >> ok i understood the example you gave.... >> >> >> something else now but relative to subject... >> >> Which programming approach is better... Public Form Controls OR Not >> Public... >> >> As new programmer i feel more easier the Public Form Controls. >> >> The example you gave increase complexity... >> > if you set main options to "all controls public" then the IDE > auto-complete can be very full of items you do not really want to see, > > I personally just use the individual controls "Public" property to make > only that control visible across other forms. > (you can hold Ctrl and select multiple controls then set their Public > property to True in the IDE) > > but yes , i used to just set "all controls public" in the ide project > properties as it was "easier" :) > it depends on your needs. > > BruceS > > -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Untitled.jpg Type: image/jpeg Size: 207925 bytes Desc: not available URL: From gradobag at gradobag.it Sun Jul 23 23:08:04 2023 From: gradobag at gradobag.it (Gianluigi) Date: Sun, 23 Jul 2023 23:08:04 +0200 Subject: [Gambas-user] Public Form Controls In-Reply-To: References: Message-ID: Il 23/07/23 21:56, Demosthenes Koptsis ha scritto: > > ok i understood the example you gave.... > > > something else now but relative to subject... > > Which programming approach is better... Public Form Controls OR Not > Public... > > As new programmer i feel more easier the Public Form Controls. > > The example you gave increase complexity... > Hi, There is an equally simple way without making the controls public, write this code in the form with the textbox you want to make accessible to other forms: Public Sub PrintTextBox(sText As String) ? If sText Then TextBox1.Text = sText End In the other forms just write the name of the form+dot+PrintTextBox('The text you want') Regards Gianluigi From gradobag at gradobag.it Mon Jul 24 00:04:39 2023 From: gradobag at gradobag.it (Gianluigi) Date: Mon, 24 Jul 2023 00:04:39 +0200 Subject: [Gambas-user] Color Range In-Reply-To: <67263702-b5b5-ad6d-a429-30663bb5dc11@freenet.de> References: <67263702-b5b5-ad6d-a429-30663bb5dc11@freenet.de> Message-ID: <60dca12c-94b4-b51c-68a3-544dff061cc9@gradobag.it> Il 23/07/23 17:07, Claus Dietrich ha scritto: > Hi > > I managed to plot color histograms of a photograph for red, green and > blue. > > Now I am looking for something in Gambas which allows me to adjust the > according color range of the picture for red, green and blue > individually. > > Does anyone have a solution? > > Best regards > > Claus > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- Hi Claus, If you've already read this, I don't know how to help you: http://gambaswiki.org/wiki/comp/gb.image.effect/image Best regards Gianluigi From claus.dietrich at freenet.de Mon Jul 24 11:34:08 2023 From: claus.dietrich at freenet.de (Claus Dietrich) Date: Mon, 24 Jul 2023 11:34:08 +0200 Subject: [Gambas-user] Color Range In-Reply-To: <60dca12c-94b4-b51c-68a3-544dff061cc9@gradobag.it> References: <67263702-b5b5-ad6d-a429-30663bb5dc11@freenet.de> <60dca12c-94b4-b51c-68a3-544dff061cc9@gradobag.it> Message-ID: Am 24.07.23 um 00:04 schrieb Gianluigi: > Hi Claus, > > If you've already read this, I don't know how to help you: > > http://gambaswiki.org/wiki/comp/gb.image.effect/image > > Best regards > > Gianluigi > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- Hi Gianluigi Thanks, I am aware of it and use it a lot. I had a closer look to gb.image.effect, which offers the methods "Normalize" and "Equalize". The spectrogramm showed me, that "Equalize" is getting close to what I am looking for, but it does it automatically and for all colors. The context-description of the method "Normalize" also fits to my requirements, but its visual effect is very small and it also works fully automatic and for all colors. Is there any known documentation about gb.image.imlib? Best regards Claus From gradobag at gradobag.it Mon Jul 24 12:04:19 2023 From: gradobag at gradobag.it (Gianluigi) Date: Mon, 24 Jul 2023 12:04:19 +0200 Subject: [Gambas-user] Reverse phrases Message-ID: <28f2c439-abc1-df4e-1638-19360678c377@gradobag.it> ??? ??o?d?? o? ?u?? ?uo?u? s?op '?po? ??s?q ? s? s??? Regards Gianluigi -------------- next part -------------- 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 From t.lee.davidson at gmail.com Mon Jul 24 14:37:37 2023 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Mon, 24 Jul 2023 08:37:37 -0400 Subject: [Gambas-user] Color Range In-Reply-To: References: <67263702-b5b5-ad6d-a429-30663bb5dc11@freenet.de> <60dca12c-94b4-b51c-68a3-544dff061cc9@gradobag.it> Message-ID: <8c716231-1932-f86d-08f3-a5b54245c346@gmail.com> On 7/24/23 05:34, Claus Dietrich wrote: > Is?there?any?known?documentation?about?gb.image.imlib? The documentation for gb.image.imlib is here: https://gambaswiki.org/wiki/comp/gb.image.imlib/image I have to assume you are already aware of that. So, is that not what you are looking for? -- Lee From gradobag at gradobag.it Tue Jul 25 14:28:17 2023 From: gradobag at gradobag.it (Gianluigi) Date: Tue, 25 Jul 2023 14:28:17 +0200 Subject: [Gambas-user] Color Range In-Reply-To: References: <67263702-b5b5-ad6d-a429-30663bb5dc11@freenet.de> <60dca12c-94b4-b51c-68a3-544dff061cc9@gradobag.it> Message-ID: Il 24/07/23 11:34, Claus Dietrich ha scritto: > Am 24.07.23 um 00:04 schrieb Gianluigi: >> Hi Claus, >> >> If you've already read this, I don't know how to help you: >> >> http://gambaswiki.org/wiki/comp/gb.image.effect/image >> >> Best regards >> >> Gianluigi >> >> >> ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > > Hi Gianluigi > > Thanks, I am aware of it and use it a lot. > > I had a closer look to gb.image.effect, which offers the methods > "Normalize" and "Equalize". The spectrogramm showed me, that > "Equalize" is getting close to what I am looking for, but it does it > automatically and for all colors. The context-description of the > method "Normalize" also fits to my requirements, but its visual effect > is very small and it also works fully automatic and for all colors. > > Is there any known documentation about gb.image.imlib? > > Best regards > > Claus > It's not clear to me if you want to do something like this (*)? Maybe you should explain the problem better. Best regards Gianluigi (*) see link : https://paste.c-net.org/GymnastCylinder From demosthenesk at gmail.com Tue Jul 25 19:55:56 2023 From: demosthenesk at gmail.com (Demosthenes Koptsis) Date: Tue, 25 Jul 2023 20:55:56 +0300 Subject: [Gambas-user] [BUG] No Scrollbar on Properties Panel in IDE Message-ID: Hello, i have compiled and installed Gambas 3.18.3 in Debian 13. i cannot scroll down the properties grid on ide, see screenshot -------------- next part -------------- A non-text attachment was scrubbed... Name: Screenshot at 2023-07-25 20-47-10.png Type: image/png Size: 196613 bytes Desc: not available URL: From bsteers4 at gmail.com Tue Jul 25 20:16:44 2023 From: bsteers4 at gmail.com (Bruce Steers) Date: Tue, 25 Jul 2023 19:16:44 +0100 Subject: [Gambas-user] [BUG] No Scrollbar on Properties Panel in IDE In-Reply-To: References: Message-ID: On Tue, 25 Jul 2023 at 18:57, Demosthenes Koptsis wrote: > Hello, > > i have compiled and installed Gambas 3.18.3 in Debian 13. > > i cannot scroll down the properties grid on ide, see screenshot > Try the following... Change your main desktop theme. (some are buggy and gambas uses the desktop themes to render controls) Or increase your main font size a bit. (a very small font size with some themes can make controls be too small to render properly in gambas) In the IDE menus select the "? / System information" option and copy that information and paste it here. that can help us detect the issue. It's most likely a toolkit/theme (or font) problem as mentioned. also if you are using X try the ide with both gtk and QT by typing the following in a terminal.. env GB_GUI=gb.gtk gambas3 env GB_GUI=gb.qt5 gambas3 that will load gambas IDE with different toolkits, you will probably find one is okay. BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsteers4 at gmail.com Tue Jul 25 20:20:03 2023 From: bsteers4 at gmail.com (Bruce Steers) Date: Tue, 25 Jul 2023 19:20:03 +0100 Subject: [Gambas-user] [BUG] No Scrollbar on Properties Panel in IDE In-Reply-To: References: Message-ID: On Tue, 25 Jul 2023 at 19:16, Bruce Steers wrote: > > > On Tue, 25 Jul 2023 at 18:57, Demosthenes Koptsis > wrote: > >> Hello, >> >> i have compiled and installed Gambas 3.18.3 in Debian 13. >> >> i cannot scroll down the properties grid on ide, see screenshot >> > > Try the following... > Change your main desktop theme. (some are buggy and gambas uses the > desktop themes to render controls) > Or increase your main font size a bit. > > (a very small font size with some themes can make controls be too small to > render properly in gambas) > > In the IDE menus select the "? / System information" option and copy that > information and paste it here. that can help us detect the issue. > > It's most likely a toolkit/theme (or font) problem as mentioned. > > also if you are using X try the ide with both gtk and QT by typing the > following in a terminal.. > > env GB_GUI=gb.gtk gambas3 > > env GB_GUI=gb.qt5 gambas3 > > that will load gambas IDE with different toolkits, you will probably find > one is okay. > > BruceS > PS. did you have the repository gambas installed before and it worked okay or have you only tried the compiled version? PPS. before running make install with compilation did you remove all gambas3 apt installed parts to avoid conflicts? sudo apt remove gambas3* BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From claus.dietrich at freenet.de Tue Jul 25 20:22:35 2023 From: claus.dietrich at freenet.de (Claus Dietrich) Date: Tue, 25 Jul 2023 20:22:35 +0200 Subject: [Gambas-user] Color Range In-Reply-To: References: <67263702-b5b5-ad6d-a429-30663bb5dc11@freenet.de> <60dca12c-94b4-b51c-68a3-544dff061cc9@gradobag.it> Message-ID: <3552d0c1-2890-0029-d58e-58677ba4ce81@freenet.de> Am 25.07.23 um 14:28 schrieb Gianluigi: >> Hi Gianluigi >> >> Thanks, I am aware of it and use it a lot. >> >> I had a closer look to gb.image.effect, which offers the methods >> "Normalize" and "Equalize". The spectrogramm showed me, that >> "Equalize" is getting close to what I am looking for, but it does it >> automatically and for all colors. The context-description of the >> method "Normalize" also fits to my requirements, but its visual >> effect is very small and it also works fully automatic and for all >> colors. >> >> Is there any known documentation about gb.image.imlib? >> >> Best regards >> >> Claus >> > > It's not clear to me if you want to do something like this (*)? Maybe > you should explain the problem better. > > Best regards > > Gianluigi > > (*) see link : https://paste.c-net.org/GymnastCylinder > Hi Gianluigi Its all about my Gambas scanner program, which after years became pretty mature and it's doing a fantastic job for documents and photographs. But now I am planning to digitize tons of aged paper photographs (I guess more than thousand). Normally I use two dialogues within Gimp (see attached screenshots) to correct the ageing effects. The one shows the spreading of the color range (showing a typical spectrogram for red of an old photograph as reference) while the other provides an adjustment of the color curve, with a spectrogram in the background for orientation. Normally I do adjustments for red, green and blue separately. To do this for more than thousand photos in a separate application would be crazy. Like in good scanner apps I like to be able to do exactly this within my app. Post corrections for Lightness, Contrast and Gamma are already implemented but they cannot compensate ageing effects. I already tested a post correction for aged photographs with the fully automatic "Equalize" method, but the results are unpredictable and are ranging from good to very poor. I compared this method with Gimp and found, that the results are identical to those of the Gimp's Auto-Contrast feature, which is not what I need. Hope that someone has an idea, how this can be done within Gambas. Best regards Claus -------------- next part -------------- A non-text attachment was scrubbed... Name: Bildschirmfoto vom 2023-07-25 18-47-17a.png Type: image/png Size: 54355 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Bildschirmfoto vom 2023-07-25 18-50-28a.png Type: image/png Size: 56228 bytes Desc: not available URL: From demosthenesk at gmail.com Tue Jul 25 20:27:42 2023 From: demosthenesk at gmail.com (Demosthenes Koptsis) Date: Tue, 25 Jul 2023 21:27:42 +0300 Subject: [Gambas-user] [BUG] No Scrollbar on Properties Panel in IDE In-Reply-To: References: Message-ID: <2a087464-723e-3f21-f0ec-cd54acf29729@gmail.com> i had repository gambas3 of Debian 13 which it was 3.18.2 but i removed it On 7/25/23 21:20, Bruce Steers wrote: > > > On Tue, 25 Jul 2023 at 19:16, Bruce Steers wrote: > > > > On Tue, 25 Jul 2023 at 18:57, Demosthenes Koptsis > wrote: > > Hello, > > i have compiled and installed Gambas 3.18.3 in Debian 13. > > i cannot scroll down the properties grid on ide, see screenshot > > > Try the following... > Change your main desktop theme. (some are buggy and gambas uses > the desktop themes to render controls) > Or increase your main font size a bit. > > (a very small font size with some themes can make controls be too > small to render properly in gambas) > > In the IDE menus select the "? / System information" option and > copy that information and paste it here. that can help us detect > the issue. > > It's most likely a toolkit/theme (or font) problem as mentioned. > > also if you are using X try the ide with both gtk and QT by typing > the following in a terminal.. > > env GB_GUI=gb.gtk gambas3 > > env GB_GUI=gb.qt5 gambas3 > > that will load gambas IDE with different toolkits, you will > probably find one is okay. > > BruceS > > > PS. did you have the repository gambas installed before and it worked > okay or have you only tried the compiled version? > PPS. before running make install with compilation did you remove all > gambas3 apt installed parts to avoid conflicts? > sudo apt remove gambas3* > > BruceS > > ----[http://gambaswiki.org/wiki/doc/netiquette ]---- -------------- next part -------------- An HTML attachment was scrubbed... URL: From demosthenesk at gmail.com Tue Jul 25 20:30:52 2023 From: demosthenesk at gmail.com (Demosthenes Koptsis) Date: Tue, 25 Jul 2023 21:30:52 +0300 Subject: [Gambas-user] [FIXED][BUG] No Scrollbar on Properties Panel in IDE In-Reply-To: References: Message-ID: <7129190f-8916-790e-43e6-1f7c6937d02f@gmail.com> It was a theme issue... i changed theme and the scrollbar appeared. Thanks ! On 7/25/23 21:16, Bruce Steers wrote: > > > On Tue, 25 Jul 2023 at 18:57, Demosthenes Koptsis > wrote: > > Hello, > > i have compiled and installed Gambas 3.18.3 in Debian 13. > > i cannot scroll down the properties grid on ide, see screenshot > > > Try the following... > Change your main desktop theme. (some are buggy and gambas uses the > desktop themes to render controls) > Or increase your main font size a bit. > > (a very small font size with some themes can make controls be too > small to render properly in gambas) > > In the IDE menus select the "? / System information" option and copy > that information and paste it here. that can help us detect the issue. > > It's most likely a toolkit/theme (or font) problem as mentioned. > > also if you are using X try the ide with both gtk and QT by typing the > following in a terminal.. > > env GB_GUI=gb.gtk gambas3 > > env GB_GUI=gb.qt5 gambas3 > > that will load gambas IDE with different toolkits, you will probably > find one is okay. > > BruceS > > ----[http://gambaswiki.org/wiki/doc/netiquette ]---- -------------- next part -------------- An HTML attachment was scrubbed... URL: From benoit.minisini at gambas-basic.org Tue Jul 25 21:33:04 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Tue, 25 Jul 2023 21:33:04 +0200 Subject: [Gambas-user] Color Range In-Reply-To: <3552d0c1-2890-0029-d58e-58677ba4ce81@freenet.de> References: <67263702-b5b5-ad6d-a429-30663bb5dc11@freenet.de> <60dca12c-94b4-b51c-68a3-544dff061cc9@gradobag.it> <3552d0c1-2890-0029-d58e-58677ba4ce81@freenet.de> Message-ID: <75803e03-593e-8003-e662-459f8d6fd6c7@gambas-basic.org> Le 25/07/2023 ? 20:22, Claus Dietrich a ?crit?: > Am 25.07.23 um 14:28 schrieb Gianluigi: >>> Hi Gianluigi >>> >>> Thanks, I am aware of it and use it a lot. >>> >>> I had a closer look to gb.image.effect, which offers the methods >>> "Normalize" and "Equalize". The spectrogramm showed me, that >>> "Equalize" is getting close to what I am looking for, but it does it >>> automatically and for all colors. The context-description of the >>> method "Normalize" also fits to my requirements, but its visual >>> effect is very small and it also works fully automatic and for all >>> colors. >>> >>> Is there any known documentation about gb.image.imlib? >>> >>> Best regards >>> >>> Claus >>> >> >> It's not clear to me if you want to do something like this (*)? Maybe >> you should explain the problem better. >> >> Best regards >> >> Gianluigi >> >> (*) see link : https://paste.c-net.org/GymnastCylinder >> > Hi Gianluigi > > Its all about my Gambas scanner program, which after years became pretty > mature and it's doing a fantastic job for documents and photographs. But > now I am planning to digitize tons of aged paper photographs (I guess > more than thousand). Normally I use two dialogues within Gimp (see > attached screenshots) to correct the ageing effects. The one shows the > spreading of the color range (showing a typical spectrogram for red of > an old photograph as reference) while the other provides an adjustment > of the color curve, with a spectrogram in the background for > orientation. Normally I do adjustments for red, green and blue > separately. To do this for more than thousand photos in a separate > application would be crazy. Like in good scanner apps I like to be able > to do exactly this within my app. Post corrections for Lightness, > Contrast and Gamma are already implemented but they cannot compensate > ageing effects. > > I already tested a post correction for aged photographs with the fully > automatic "Equalize" method, but the results are unpredictable and are > ranging from good to very poor. I compared this method with Gimp and > found, that the results are identical to those of the Gimp's > Auto-Contrast feature, which is not what I need. > > Hope that someone has an idea, how this can be done within Gambas. > > Best regards > > Claus > If you know the algorithm associated with the the image filter you need, you can try to implement it by accessing the image RGBA data directly, and use the FAST keyword to let the gcc compiler transform your Gambas code into a faster version. As I understand the dialog box, you need to be able to define a function that takes a color intensity between 0 and 255 and that returns the new value, and apply that functino to a color channel. Please confirm my interpretation! Regards, -- Beno?t Minisini. From gradobag at gradobag.it Tue Jul 25 22:19:58 2023 From: gradobag at gradobag.it (Gianluigi) Date: Tue, 25 Jul 2023 22:19:58 +0200 Subject: [Gambas-user] Color Range In-Reply-To: <75803e03-593e-8003-e662-459f8d6fd6c7@gambas-basic.org> References: <67263702-b5b5-ad6d-a429-30663bb5dc11@freenet.de> <60dca12c-94b4-b51c-68a3-544dff061cc9@gradobag.it> <3552d0c1-2890-0029-d58e-58677ba4ce81@freenet.de> <75803e03-593e-8003-e662-459f8d6fd6c7@gambas-basic.org> Message-ID: <4e39dc57-aff1-a151-cd84-2c129bcc6048@gradobag.it> Il 25/07/23 21:33, Benoit Minisini ha scritto: > Le 25/07/2023 ? 20:22, Claus Dietrich a ?crit?: >> Am 25.07.23 um 14:28 schrieb Gianluigi: >>>> Hi Gianluigi >>>> >>>> Thanks, I am aware of it and use it a lot. >>>> >>>> I had a closer look to gb.image.effect, which offers the methods >>>> "Normalize" and "Equalize". The spectrogramm showed me, that >>>> "Equalize" is getting close to what I am looking for, but it does >>>> it automatically and for all colors. The context-description of the >>>> method "Normalize" also fits to my requirements, but its visual >>>> effect is very small and it also works fully automatic and for all >>>> colors. >>>> >>>> Is there any known documentation about gb.image.imlib? >>>> >>>> Best regards >>>> >>>> Claus >>>> >>> >>> It's not clear to me if you want to do something like this (*)? >>> Maybe you should explain the problem better. >>> >>> Best regards >>> >>> Gianluigi >>> >>> (*) see link : https://paste.c-net.org/GymnastCylinder >>> >> Hi Gianluigi >> >> Its all about my Gambas scanner program, which after years became >> pretty mature and it's doing a fantastic job for documents and >> photographs. But now I am planning to digitize tons of aged paper >> photographs (I guess more than thousand). Normally I use two >> dialogues within Gimp (see attached screenshots) to correct the >> ageing effects. The one shows the spreading of the color range >> (showing a typical spectrogram for red of an old photograph as >> reference) while the other provides an adjustment of the color curve, >> with a spectrogram in the background for orientation. Normally I do >> adjustments for red, green and blue separately. To do this for more >> than thousand photos in a separate application would be crazy. Like >> in good scanner apps I like to be able to do exactly this within my >> app. Post corrections for Lightness, Contrast and Gamma are already >> implemented but they cannot compensate ageing effects. >> >> I already tested a post correction for aged photographs with the >> fully automatic "Equalize" method, but the results are unpredictable >> and are ranging from good to very poor. I compared this method with >> Gimp and found, that the results are identical to those of the Gimp's >> Auto-Contrast feature, which is not what I need. >> >> Hope that someone has an idea, how this can be done within Gambas. >> >> Best regards >> >> Claus >> > > If you know the algorithm associated with the the image filter you > need, you can try to implement it by accessing the image RGBA data > directly, and use the FAST keyword to let the gcc compiler transform > your Gambas code into a faster version. > > As I understand the dialog box, you need to be able to define a > function that takes a color intensity between 0 and 255 and that > returns the new value, and apply that functino to a color channel. > > Please confirm my interpretation! > > Regards, > @Claus, ubi maior minor cessat :-) @Benoit, ????s ???? ???o s??p??o? ??? ??? With best regards to all Gianluigi From benoit.minisini at gambas-basic.org Wed Jul 26 11:01:32 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Wed, 26 Jul 2023 11:01:32 +0200 Subject: [Gambas-user] Color Range In-Reply-To: <8562dda0-507f-4627-f76c-7dca561f239a@freenet.de> References: <67263702-b5b5-ad6d-a429-30663bb5dc11@freenet.de> <60dca12c-94b4-b51c-68a3-544dff061cc9@gradobag.it> <3552d0c1-2890-0029-d58e-58677ba4ce81@freenet.de> <75803e03-593e-8003-e662-459f8d6fd6c7@gambas-basic.org> <8562dda0-507f-4627-f76c-7dca561f239a@freenet.de> Message-ID: <9193afda-2891-de26-20db-1f8e67247f00@gambas-basic.org> Le 26/07/2023 ? 10:53, Claus Dietrich a ?crit?: > Am 25.07.23 um 21:33 schrieb Benoit Minisini: >> >> If you know the algorithm associated with the the image filter you >> need, you can try to implement it by accessing the image RGBA data >> directly, and use the FAST keyword to let the gcc compiler transform >> your Gambas code into a faster version. >> >> As I understand the dialog box, you need to be able to define a >> function that takes a color intensity between 0 and 255 and that >> returns the new value, and apply that functino to a color channel. >> >> Please confirm my interpretation! >> >> Regards, >> >> -- >> Beno?t Minisini. > > Hi Benoit > > This sounds correct but image processing is not my domain. All I found > is an automatic algorithm written for Gimp in the language "LUA" > (Chapter 7.1 Contrast Stretching). The before/after comparison shows > what it can do: > > https://pippin.gimp.org/image-processing/chapter-automaticadjustments.html > > It might well be that this particular LUA algorithm is actually doing > what the Gambas "Equalize" function provides. As this provides rather > unpredictable results, it might already help if the min/max values were > adjustable (as option) and not being determined automatically. However, > programs like Gimp and good scanner programs also care about the medium > shades. > > The basics of "color curves" (my second requirement) are described here: > https://www.gimp.org/tutorials/Basic_Color_Curves/ > > What would be the right approach to realize a color shade mapping for > red, green and blue individually with (FAST) Gambas? > > Regards > > Claus > I don't understand: do you want -automatic- or -manual- processing? If you want manual processing, I can add a function that applies a "curve" to the image components (red, green, blue, alpha, value...) but I won't make a GUI for defining the curve like the GIMP has. It's up to you. Regards, -- Beno?t Minisini. From demosthenesk at gmail.com Wed Jul 26 16:33:20 2023 From: demosthenesk at gmail.com (Demosthenes Koptsis) Date: Wed, 26 Jul 2023 17:33:20 +0300 Subject: [Gambas-user] Bugtracker - no activation email Message-ID: <38727e41-b6ed-a7bc-55c6-bf686a3e8165@gmail.com> hello, i was been registered at Bugtracker with details: username: demosthenesk email: demosthenesk at gmail.com i have never got an activation email... can somebody see it ? From benoit.minisini at gambas-basic.org Wed Jul 26 16:55:30 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Wed, 26 Jul 2023 16:55:30 +0200 Subject: [Gambas-user] Bugtracker - no activation email In-Reply-To: <38727e41-b6ed-a7bc-55c6-bf686a3e8165@gmail.com> References: <38727e41-b6ed-a7bc-55c6-bf686a3e8165@gmail.com> Message-ID: Le 26/07/2023 ? 16:33, Demosthenes Koptsis a ?crit?: > hello, > > i was been registered at Bugtracker with details: > > username: demosthenesk > > email: demosthenesk at gmail.com > > i have never got an activation email... > > can somebody see it ? > Is it possible for you to try with another e-mail that is not 'gmail.com' ? -- Beno?t Minisini. From bsteers4 at gmail.com Wed Jul 26 17:53:01 2023 From: bsteers4 at gmail.com (Bruce Steers) Date: Wed, 26 Jul 2023 16:53:01 +0100 Subject: [Gambas-user] Bugtracker - no activation email In-Reply-To: <38727e41-b6ed-a7bc-55c6-bf686a3e8165@gmail.com> References: <38727e41-b6ed-a7bc-55c6-bf686a3e8165@gmail.com> Message-ID: On Wed, 26 Jul 2023 at 15:34, Demosthenes Koptsis wrote: > hello, > > i was been registered at Bugtracker with details: > > username: demosthenesk > > email: demosthenesk at gmail.com > > i have never got an activation email... > > can somebody see it ? > bugtracker servers stopped sending emails to gmail addresses a while ago. I initially signed up with my gmail a long long time ago and used to also get notifications of messages to my reported bugs but then the messages just stopped. I set up an alias at my domain bws.org.uk to redirect to my gmail and used that address on the bugtracker instead. now i get messages again. So if you can configure an alternative address with your dns/webspace/etc do that BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From demosthenesk at gmail.com Wed Jul 26 20:17:04 2023 From: demosthenesk at gmail.com (Demosthenes Koptsis) Date: Wed, 26 Jul 2023 21:17:04 +0300 Subject: [Gambas-user] Bugtracker - no activation email In-Reply-To: References: <38727e41-b6ed-a7bc-55c6-bf686a3e8165@gmail.com> Message-ID: <25912dae-4d02-a08e-1274-5932969ea436@gmail.com> ok, i will not use another email. i will use this mailing list to report bugs thanks On 7/26/23 17:55, Benoit Minisini wrote: > Le 26/07/2023 ? 16:33, Demosthenes Koptsis a ?crit?: >> hello, >> >> i was been registered at Bugtracker with details: >> >> username: demosthenesk >> >> email: demosthenesk at gmail.com >> >> i have never got an activation email... >> >> can somebody see it ? >> > > Is it possible for you to try with another e-mail that is not > 'gmail.com' ? > From shordi at gmail.com Thu Jul 27 13:12:56 2023 From: shordi at gmail.com (=?UTF-8?Q?Jorge_Carri=C3=B3n?=) Date: Thu, 27 Jul 2023 13:12:56 +0200 Subject: [Gambas-user] What means this errors? Message-ID: I have a control that does some strange things... (for example, it reparents the form it belongs to within another form contained within itself) It works very well and allows me to assign "skins" to the projects where I use it. Like this: [image: Captura de pantalla de 2023-07-27 13-11-02.png] The problem is that this morning I discovered with the property inspector these errors that don't seem to have an effect... [image: Captura de pantalla de 2023-07-27 13-03-00.png] but they are a bit scary (especially the stack overflow thing) How can I know what causes them and how to correct them? I attached a project that reproduces the error. Best Regards -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Captura de pantalla de 2023-07-27 13-11-02.png Type: image/png Size: 243616 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Captura de pantalla de 2023-07-27 13-03-00.png Type: image/png Size: 126433 bytes Desc: not available URL: From t.lee.davidson at gmail.com Thu Jul 27 15:43:13 2023 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Thu, 27 Jul 2023 09:43:13 -0400 Subject: [Gambas-user] What means this errors? In-Reply-To: References: Message-ID: On 7/27/23 07:12, Jorge Carri?n wrote: > I attached a project that reproduces the error. > I did not find it attached. -- Lee From benoit.minisini at gambas-basic.org Thu Jul 27 15:48:48 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Thu, 27 Jul 2023 15:48:48 +0200 Subject: [Gambas-user] What means this errors? In-Reply-To: References: Message-ID: <255ccf08-f2e9-ecb3-373f-98c2794253d4@gambas-basic.org> Le 27/07/2023 ? 15:43, T Lee Davidson a ?crit?: > On 7/27/23 07:12, Jorge Carri?n wrote: >> I attached a project that reproduces the error. >> > > I did not find it attached. > > Yes. And I got only reduced screenshots I can't read. Regards, -- Beno?t Minisini. From shordi at gmail.com Thu Jul 27 18:13:01 2023 From: shordi at gmail.com (=?UTF-8?Q?Jorge_Carri=C3=B3n?=) Date: Thu, 27 Jul 2023 18:13:01 +0200 Subject: [Gambas-user] What means this errors? In-Reply-To: <255ccf08-f2e9-ecb3-373f-98c2794253d4@gambas-basic.org> References: <255ccf08-f2e9-ecb3-373f-98c2794253d4@gambas-basic.org> Message-ID: Sorry, it must be the hot... Here it is. El jue, 27 jul 2023 a las 15:49, Benoit Minisini (< benoit.minisini at gambas-basic.org>) escribi?: > Le 27/07/2023 ? 15:43, T Lee Davidson a ?crit : > > On 7/27/23 07:12, Jorge Carri?n wrote: > >> I attached a project that reproduces the error. > >> > > > > I did not find it attached. > > > > > > Yes. And I got only reduced screenshots I can't read. > > Regards, > > -- > Beno?t Minisini. > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: test-0.0.1.tar.gz Type: application/gzip Size: 17702 bytes Desc: not available URL: From benoit.minisini at gambas-basic.org Thu Jul 27 19:11:45 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Thu, 27 Jul 2023 19:11:45 +0200 Subject: [Gambas-user] What means this errors? In-Reply-To: References: <255ccf08-f2e9-ecb3-373f-98c2794253d4@gambas-basic.org> Message-ID: <13f57f5f-041b-9f29-0baa-35da15bd80a6@gambas-basic.org> Le 27/07/2023 ? 18:13, Jorge Carri?n a ?crit?: > Sorry, it must be the hot... > > Here it is. > What should I do exactly with this project? -- Beno?t Minisini. From shordi at gmail.com Thu Jul 27 19:27:15 2023 From: shordi at gmail.com (=?UTF-8?Q?Jorge_Carri=C3=B3n?=) Date: Thu, 27 Jul 2023 19:27:15 +0200 Subject: [Gambas-user] What means this errors? In-Reply-To: <13f57f5f-041b-9f29-0baa-35da15bd80a6@gambas-basic.org> References: <255ccf08-f2e9-ecb3-373f-98c2794253d4@gambas-basic.org> <13f57f5f-041b-9f29-0baa-35da15bd80a6@gambas-basic.org> Message-ID: Oh!.. I guess that depuration stops doesn't pass with the source. Just put a F9 stop on the Numer 5 line and Double Clik on the WindowFrame1 object. You will get the properties of the object with the errors... Like this: [image: Captura de pantalla de 2023-07-27 19-18-40.png] The class works fine, as I said (it provides a form with its own header where you can insert buttons and such) but the messages are scary. I don't know where they are generated or what they imply. Sorry for my clumsiness with this language thing... Thanks for your time. Best regards El jue, 27 jul 2023 a las 19:12, Benoit Minisini (< benoit.minisini at gambas-basic.org>) escribi?: > Le 27/07/2023 ? 18:13, Jorge Carri?n a ?crit : > > Sorry, it must be the hot... > > > > Here it is. > > > > What should I do exactly with this project? > > -- > Beno?t Minisini. > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Captura de pantalla de 2023-07-27 19-18-40.png Type: image/png Size: 138570 bytes Desc: not available URL: From benoit.minisini at gambas-basic.org Thu Jul 27 19:44:23 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Thu, 27 Jul 2023 19:44:23 +0200 Subject: [Gambas-user] What means this errors? In-Reply-To: References: <255ccf08-f2e9-ecb3-373f-98c2794253d4@gambas-basic.org> <13f57f5f-041b-9f29-0baa-35da15bd80a6@gambas-basic.org> Message-ID: <83d73fe3-3ddf-4a8e-ae1a-b222f7c08299@gambas-basic.org> Le 27/07/2023 ? 19:27, Jorge Carri?n a ?crit?: > Oh!.. I guess that depuration stops doesn't pass with the source. Just > put a F9 stop on the Numer 5 line and Double Clik on the WindowFrame1 > object. You will get the properties of the object with the errors... > Like this: > Captura de pantalla de 2023-07-27 19-18-40.png > The class works fine, as I said (it provides a form with its own header > where you can insert buttons and such) but the messages are scary. I > don't know where they are generated or what they imply. > > Sorry for my clumsiness with this language thing... > > Thanks for your time. > > Best regards > The error messages come from the debugger that apparently cannot display properly the different public symbols of the WindowFrame class. That needs some investigation... -- Beno?t Minisini. From benoit.minisini at gambas-basic.org Thu Jul 27 19:49:02 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Thu, 27 Jul 2023 19:49:02 +0200 Subject: [Gambas-user] What means this errors? In-Reply-To: <83d73fe3-3ddf-4a8e-ae1a-b222f7c08299@gambas-basic.org> References: <255ccf08-f2e9-ecb3-373f-98c2794253d4@gambas-basic.org> <13f57f5f-041b-9f29-0baa-35da15bd80a6@gambas-basic.org> <83d73fe3-3ddf-4a8e-ae1a-b222f7c08299@gambas-basic.org> Message-ID: Le 27/07/2023 ? 19:44, Benoit Minisini a ?crit?: > Le 27/07/2023 ? 19:27, Jorge Carri?n a ?crit?: >> Oh!.. I guess that depuration stops doesn't pass with the source. Just >> put a F9 stop on the Numer 5 line and Double Clik on the WindowFrame1 >> object. You will get the properties of the object with the errors... >> Like this: >> Captura de pantalla de 2023-07-27 19-18-40.png >> The class works fine, as I said (it provides a form with its own >> header where you can insert buttons and such) but the messages are >> scary. I don't know where they are generated or what they imply. >> >> Sorry for my clumsiness with this language thing... >> >> Thanks for your time. >> >> Best regards >> > > The error messages come from the debugger that apparently cannot display > properly the different public symbols of the WindowFrame class. > > That needs some investigation... > The errors come from incorrect implementations of some properties of the WindowFrame class (FootBar property for example). Fix your code, and things will be fine. Regards, -- Beno?t Minisini. From shordi at gmail.com Thu Jul 27 20:07:21 2023 From: shordi at gmail.com (=?UTF-8?Q?Jorge_Carri=C3=B3n?=) Date: Thu, 27 Jul 2023 20:07:21 +0200 Subject: [Gambas-user] What means this errors? In-Reply-To: References: <255ccf08-f2e9-ecb3-373f-98c2794253d4@gambas-basic.org> <13f57f5f-041b-9f29-0baa-35da15bd80a6@gambas-basic.org> <83d73fe3-3ddf-4a8e-ae1a-b222f7c08299@gambas-basic.org> Message-ID: Fixed! Half were the result of massive name changes (Footbar, foot, etc) and the other half were circular references. Thanks a lot. It's wonderful when the IDE and Compiler tell you, in writing and repeatedly, how dumb you are... and you can correct yourself. But it's terrifying when they don't say anything... and you're still being a dumb. Thanks again. Best Regards El jue, 27 jul 2023 a las 19:50, Benoit Minisini (< benoit.minisini at gambas-basic.org>) escribi?: > Le 27/07/2023 ? 19:44, Benoit Minisini a ?crit : > > Le 27/07/2023 ? 19:27, Jorge Carri?n a ?crit : > >> Oh!.. I guess that depuration stops doesn't pass with the source. Just > >> put a F9 stop on the Numer 5 line and Double Clik on the WindowFrame1 > >> object. You will get the properties of the object with the errors... > >> Like this: > >> Captura de pantalla de 2023-07-27 19-18-40.png > >> The class works fine, as I said (it provides a form with its own > >> header where you can insert buttons and such) but the messages are > >> scary. I don't know where they are generated or what they imply. > >> > >> Sorry for my clumsiness with this language thing... > >> > >> Thanks for your time. > >> > >> Best regards > >> > > > > The error messages come from the debugger that apparently cannot display > > properly the different public symbols of the WindowFrame class. > > > > That needs some investigation... > > > > The errors come from incorrect implementations of some properties of the > WindowFrame class (FootBar property for example). Fix your code, and > things will be fine. > > Regards, > > -- > Beno?t Minisini. > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > -------------- next part -------------- An HTML attachment was scrubbed... URL: From shordi at gmail.com Thu Jul 27 20:39:46 2023 From: shordi at gmail.com (=?UTF-8?Q?Jorge_Carri=C3=B3n?=) Date: Thu, 27 Jul 2023 20:39:46 +0200 Subject: [Gambas-user] What means this errors? In-Reply-To: References: <255ccf08-f2e9-ecb3-373f-98c2794253d4@gambas-basic.org> <13f57f5f-041b-9f29-0baa-35da15bd80a6@gambas-basic.org> <83d73fe3-3ddf-4a8e-ae1a-b222f7c08299@gambas-basic.org> Message-ID: I wrote: *"t's wonderful when the IDE and Compiler tell you, in writing and repeatedly, how dumb you are... and you can correct yourself. But it's terrifying when they don't say anything... and you're still being a dumb."* And thinking about it later, I have to clarify that in Spanish, that "you", used in that way, is an impersonal "you". I hope it's the same in English and I'm not calling anyone, but myself, a dumb... Best Regards El jue, 27 jul 2023 a las 20:07, Jorge Carri?n () escribi?: > Fixed! Half were the result of massive name changes (Footbar, foot, etc) > and the other half were circular references. > Thanks a lot. > It's wonderful when the IDE and Compiler tell you, in writing and > repeatedly, how dumb you are... and you can correct yourself. But it's > terrifying when they don't say anything... and you're still being a dumb. > > Thanks again. > > Best Regards > > El jue, 27 jul 2023 a las 19:50, Benoit Minisini (< > benoit.minisini at gambas-basic.org>) escribi?: > >> Le 27/07/2023 ? 19:44, Benoit Minisini a ?crit : >> > Le 27/07/2023 ? 19:27, Jorge Carri?n a ?crit : >> >> Oh!.. I guess that depuration stops doesn't pass with the source. Just >> >> put a F9 stop on the Numer 5 line and Double Clik on the WindowFrame1 >> >> object. You will get the properties of the object with the errors... >> >> Like this: >> >> Captura de pantalla de 2023-07-27 19-18-40.png >> >> The class works fine, as I said (it provides a form with its own >> >> header where you can insert buttons and such) but the messages are >> >> scary. I don't know where they are generated or what they imply. >> >> >> >> Sorry for my clumsiness with this language thing... >> >> >> >> Thanks for your time. >> >> >> >> Best regards >> >> >> > >> > The error messages come from the debugger that apparently cannot >> display >> > properly the different public symbols of the WindowFrame class. >> > >> > That needs some investigation... >> > >> >> The errors come from incorrect implementations of some properties of the >> WindowFrame class (FootBar property for example). Fix your code, and >> things will be fine. >> >> Regards, >> >> -- >> Beno?t Minisini. >> >> >> ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From claus.dietrich at freenet.de Thu Jul 27 20:59:46 2023 From: claus.dietrich at freenet.de (Claus Dietrich) Date: Thu, 27 Jul 2023 20:59:46 +0200 Subject: [Gambas-user] Color Range In-Reply-To: <9193afda-2891-de26-20db-1f8e67247f00@gambas-basic.org> References: <67263702-b5b5-ad6d-a429-30663bb5dc11@freenet.de> <60dca12c-94b4-b51c-68a3-544dff061cc9@gradobag.it> <3552d0c1-2890-0029-d58e-58677ba4ce81@freenet.de> <75803e03-593e-8003-e662-459f8d6fd6c7@gambas-basic.org> <8562dda0-507f-4627-f76c-7dca561f239a@freenet.de> <9193afda-2891-de26-20db-1f8e67247f00@gambas-basic.org> Message-ID: Am 26.07.23 um 11:01 schrieb Benoit Minisini: > > I don't understand: do you want -automatic- or -manual- processing? > > If you want manual processing, I can add a function that applies a > "curve" to the image components (red, green, blue, alpha, value...) > but I won't make a GUI for defining the curve like the GIMP has. It's > up to you. > > Regards, > > -- > Beno?t Minisini. Dear Beno?t Sorry that I mailed you directly. I forgot to change the addressee. In order to demonstrate the current limitations of Gambas and to show how the proposed feature could improve aged photos, I took a fraction of a less private old photo for my assessment application and offer it in the cloud for download: https://magentacloud.de/s/RHdt5YgwKYgQMwC Please refer to the histograms which will provide you with an indication how they have to be stretched (manually and individually) for better results. If this is convincing you and if there is no other solution I suggest to have a look into the histogram-stretching routine of the "Normalize" method in kimageeffects.cpp. According to my observation it might by usable for the purpose. With best regards Claus From t.lee.davidson at gmail.com Fri Jul 28 03:20:47 2023 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Thu, 27 Jul 2023 21:20:47 -0400 Subject: [Gambas-user] What means this errors? In-Reply-To: References: <255ccf08-f2e9-ecb3-373f-98c2794253d4@gambas-basic.org> <13f57f5f-041b-9f29-0baa-35da15bd80a6@gambas-basic.org> <83d73fe3-3ddf-4a8e-ae1a-b222f7c08299@gambas-basic.org> Message-ID: On 7/27/23 14:39, Jorge Carri?n wrote: > I wrote: > > /"t's wonderful when the IDE and Compiler tell you, in writing and repeatedly, how dumb you are... and you can correct yourself. > But it's terrifying when they don't say anything... and you're still being a dumb."/ > > And thinking about it later, I have to clarify that in Spanish, that "you", used in that way, is an impersonal "you". I hope > it's the same in English and I'm not calling anyone, but myself, a dumb... > > Best Regards There is no impersonal "you" in English. But, the context made it clear. No worries. -- Lee From jussi.lahtinen at gmail.com Sat Jul 29 01:32:30 2023 From: jussi.lahtinen at gmail.com (Jussi Lahtinen) Date: Sat, 29 Jul 2023 02:32:30 +0300 Subject: [Gambas-user] What means this errors? In-Reply-To: References: <255ccf08-f2e9-ecb3-373f-98c2794253d4@gambas-basic.org> <13f57f5f-041b-9f29-0baa-35da15bd80a6@gambas-basic.org> <83d73fe3-3ddf-4a8e-ae1a-b222f7c08299@gambas-basic.org> Message-ID: > > There is no impersonal "you" in English. > There is. Google it. Jussi -------------- next part -------------- An HTML attachment was scrubbed... URL: From t.lee.davidson at gmail.com Sat Jul 29 02:54:09 2023 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Fri, 28 Jul 2023 20:54:09 -0400 Subject: [Gambas-user] What means this errors? In-Reply-To: References: <255ccf08-f2e9-ecb3-373f-98c2794253d4@gambas-basic.org> <13f57f5f-041b-9f29-0baa-35da15bd80a6@gambas-basic.org> <83d73fe3-3ddf-4a8e-ae1a-b222f7c08299@gambas-basic.org> Message-ID: <17b7e0d0-64b3-4f92-715e-5e3d457945eb@gmail.com> On 7/28/23 19:32, Jussi Lahtinen wrote: > There is no impersonal "you" in English. > > > ?There is. Google it. > > Jussi I don't use Skewgle. There is no impersonal "you" in English. That word, however, can be used in an impersonal manner. And, it is the context that indicates such usage. -- Lee From jussi.lahtinen at gmail.com Sat Jul 29 03:14:38 2023 From: jussi.lahtinen at gmail.com (Jussi Lahtinen) Date: Sat, 29 Jul 2023 04:14:38 +0300 Subject: [Gambas-user] What means this errors? In-Reply-To: <17b7e0d0-64b3-4f92-715e-5e3d457945eb@gmail.com> References: <255ccf08-f2e9-ecb3-373f-98c2794253d4@gambas-basic.org> <13f57f5f-041b-9f29-0baa-35da15bd80a6@gambas-basic.org> <83d73fe3-3ddf-4a8e-ae1a-b222f7c08299@gambas-basic.org> <17b7e0d0-64b3-4f92-715e-5e3d457945eb@gmail.com> Message-ID: > There is no impersonal "you" in English. That word, however, can be used > in an impersonal manner. That is exactly what "impersonal you" means. There seems to be even academic papers about it. Example here: https://www.sciencedirect.com/science/article/abs/pii/S0378216612001208 Jussi -------------- next part -------------- An HTML attachment was scrubbed... URL: From t.lee.davidson at gmail.com Sat Jul 29 18:34:43 2023 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Sat, 29 Jul 2023 12:34:43 -0400 Subject: [Gambas-user] What means this errors? In-Reply-To: References: <255ccf08-f2e9-ecb3-373f-98c2794253d4@gambas-basic.org> <13f57f5f-041b-9f29-0baa-35da15bd80a6@gambas-basic.org> <83d73fe3-3ddf-4a8e-ae1a-b222f7c08299@gambas-basic.org> <17b7e0d0-64b3-4f92-715e-5e3d457945eb@gmail.com> Message-ID: <7a3fbeda-2599-fbef-64c2-a8c047baeeee@gmail.com> On 7/28/23 21:14, Jussi Lahtinen wrote: > > There is no impersonal "you" in English. That word, however, can be used in an impersonal manner. > > > That is exactly what "impersonal you" means. There seems to be even academic papers about it. > Example here: https://www.sciencedirect.com/science/article/abs/pii/S0378216612001208 > > > Jussi I did not write '"impersonal you"', Jussi. I wrote 'impersonal "you"' referring to the word itself as opposed to its usage. Stop trying to reframe it. Spanish has something like five different words for the English "you". In English the word for the personal "you" and the impersonal "you" is, get this, the very same word, "you". There is no impersonal "you" in English. How its meaning is to be understood depends on its context and usage. Now, was it not enough that Jorge understood that his message was received as it was intended? Or do you think it beneficial somehow to stir up some useless argument? -- Lee From demosthenesk at gmail.com Sat Jul 29 19:08:32 2023 From: demosthenesk at gmail.com (Demosthenes Koptsis) Date: Sat, 29 Jul 2023 20:08:32 +0300 Subject: [Gambas-user] About Make Patch File Message-ID: <220f4f96-3c9a-74d7-1232-6b1b591d2817@gmail.com> Hello, i have some questions about patch files created by gambas ide. If origin project is "Project1a" and current project is "Project1" and i create a patch between the two, when i apply the patch to "Project1" it will be like "Project1a" after patched ? Am i wrong ? From demosthenesk at gmail.com Sat Jul 29 22:18:50 2023 From: demosthenesk at gmail.com (Demosthenes Koptsis) Date: Sat, 29 Jul 2023 23:18:50 +0300 Subject: [Gambas-user] About Make Patch File In-Reply-To: <220f4f96-3c9a-74d7-1232-6b1b591d2817@gmail.com> References: <220f4f96-3c9a-74d7-1232-6b1b591d2817@gmail.com> Message-ID: <6b63aa5a-d710-8080-28c1-e17b01b7847e@gmail.com> Well i figured out, the patch will be applied to origin (Project1a) and finally will be look like Project1. On 7/29/23 20:08, Demosthenes Koptsis wrote: > Hello, > > i have some questions about patch files created by gambas ide. > > If origin project is "Project1a" and current project is "Project1" and > i create a patch between the two, > > when i apply the patch to "Project1" it will be like "Project1a" after > patched ? > > Am i wrong ? > > From jussi.lahtinen at gmail.com Sat Jul 29 23:38:11 2023 From: jussi.lahtinen at gmail.com (Jussi Lahtinen) Date: Sun, 30 Jul 2023 00:38:11 +0300 Subject: [Gambas-user] What means this errors? In-Reply-To: <7a3fbeda-2599-fbef-64c2-a8c047baeeee@gmail.com> References: <255ccf08-f2e9-ecb3-373f-98c2794253d4@gambas-basic.org> <13f57f5f-041b-9f29-0baa-35da15bd80a6@gambas-basic.org> <83d73fe3-3ddf-4a8e-ae1a-b222f7c08299@gambas-basic.org> <17b7e0d0-64b3-4f92-715e-5e3d457945eb@gmail.com> <7a3fbeda-2599-fbef-64c2-a8c047baeeee@gmail.com> Message-ID: I was just correcting your false correction. Please see the original message by Jorge. It is exactly the same in Spanish and in English. "You" can refer to personal or impersonal (but also plural). And in Spanish "tu" and "usted" can refer to personal or impersonal (but always singular, informal and formal accordingly). I could not guess such a simple correction would lead to debate. All this is very easy to verify if you still not believe me. Jussi On Saturday, July 29, 2023, T Lee Davidson wrote: > On 7/28/23 21:14, Jussi Lahtinen wrote: > >> >> There is no impersonal "you" in English. That word, however, can be >> used in an impersonal manner. >> >> >> That is exactly what "impersonal you" means. There seems to be even >> academic papers about it. >> Example here: https://www.sciencedirect.com/ >> science/article/abs/pii/S0378216612001208 > /science/article/abs/pii/S0378216612001208> >> >> Jussi >> > > I did not write '"impersonal you"', Jussi. I wrote 'impersonal "you"' > referring to the word itself as opposed to its usage. Stop trying to > reframe it. > > Spanish has something like five different words for the English "you". In > English the word for the personal "you" and the impersonal "you" is, get > this, the very same word, "you". There is no impersonal "you" in English. > How its meaning is to be understood depends on its context and usage. > > Now, was it not enough that Jorge understood that his message was received > as it was intended? Or do you think it beneficial somehow to stir up some > useless argument? > > > -- > Lee > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > -------------- next part -------------- An HTML attachment was scrubbed... URL: From roberto.premoli at tiscali.it Sun Jul 30 17:23:35 2023 From: roberto.premoli at tiscali.it (roberto.premoli at tiscali.it) Date: Sun, 30 Jul 2023 17:23:35 +0200 Subject: [Gambas-user] sorce from 3.15.2 does not work on 3.18.0 Message-ID: <0dfda01cfcf2abe48b959fd7cd48ae59@tiscali.it> Hello, i wrote a code on gambas 3.15.2 and it works perfect. If i move the source on 3.18.0 and press F5, i get error "the program has returned the value 1". And no more happen! How can I debug / solve? Thanks, Roberto -------------- next part -------------- An HTML attachment was scrubbed... URL: From gradobag at gradobag.it Sun Jul 30 18:12:06 2023 From: gradobag at gradobag.it (Gianluigi) Date: Sun, 30 Jul 2023 18:12:06 +0200 Subject: [Gambas-user] gb.bd.form in stable version Message-ID: <971332b1-075f-7df2-dbbd-422f959ecaae@gradobag.it> Hi Benoit, the test program 'ForCurrentTest-DataView' version 0.0.7 present at this link: https://paste.c-net.org/SomedayTolerate seems to demonstrate the robustness of the latest gb.db.form component implementation. Would you be kind enough to implement it in the stable version of Gambas, this would greatly facilitate the work on the GAMBAS BOOK, since these days prof. Hans is updating the database chapters. Best regards Gianluigi From bsteers4 at gmail.com Sun Jul 30 18:15:26 2023 From: bsteers4 at gmail.com (Bruce Steers) Date: Sun, 30 Jul 2023 17:15:26 +0100 Subject: [Gambas-user] sorce from 3.15.2 does not work on 3.18.0 In-Reply-To: <0dfda01cfcf2abe48b959fd7cd48ae59@tiscali.it> References: <0dfda01cfcf2abe48b959fd7cd48ae59@tiscali.it> Message-ID: Did you hit "compile all" button to rebuild the binaries (or delete the projects .gambas folder does the same thing) On Sun, 30 Jul 2023, 16:49 , wrote: > Hello, > i wrote a code on gambas 3.15.2 and it works perfect. If i move the source on 3.18.0 and press F5, i get error "the program has returned the value 1". And no more happen! > How can I debug / solve? > > Thanks, Roberto > > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > -------------- next part -------------- An HTML attachment was scrubbed... URL: From gradobag at gradobag.it Sun Jul 30 18:36:03 2023 From: gradobag at gradobag.it (Gianluigi) Date: Sun, 30 Jul 2023 18:36:03 +0200 Subject: [Gambas-user] gb.bd.form in stable version In-Reply-To: <971332b1-075f-7df2-dbbd-422f959ecaae@gradobag.it> References: <971332b1-075f-7df2-dbbd-422f959ecaae@gradobag.it> Message-ID: <2d8598af-c8d6-dee4-cd23-b80dd2c34040@gradobag.it> Il 30/07/23 18:12, Gianluigi ha scritto: > Hi Benoit, > > the test program 'ForCurrentTest-DataView' version 0.0.7 present at > this link: > https://paste.c-net.org/SomedayTolerate > seems to demonstrate the robustness of the latest gb.db.form component > implementation. > Would you be kind enough to implement it in the stable version of > Gambas, this would greatly facilitate the work on the GAMBAS BOOK, > since these days prof. Hans is updating the database chapters. > > Best regards > > Gianluigi > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- Sorry it's version 8 at this link https://paste.c-net.org/ExplainsCharging Regards Gianluigi From benoit.minisini at gambas-basic.org Sun Jul 30 18:37:56 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Sun, 30 Jul 2023 18:37:56 +0200 Subject: [Gambas-user] sorce from 3.15.2 does not work on 3.18.0 In-Reply-To: <0dfda01cfcf2abe48b959fd7cd48ae59@tiscali.it> References: <0dfda01cfcf2abe48b959fd7cd48ae59@tiscali.it> Message-ID: Le 30/07/2023 ? 17:23, roberto.premoli at tiscali.it a ?crit?: > Hello, > i wrote a code on gambas 3.15.2 and it works perfect. If i move the source on 3.18.0 and press F5, i get error "the program has returned the value 1". And no more happen! > How can I debug / solve? > > Thanks, Roberto > Can you send me the project, compiled for gambas 3.15.2 ? -- Beno?t Minisini. From benoit.minisini at gambas-basic.org Sun Jul 30 18:47:31 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Sun, 30 Jul 2023 18:47:31 +0200 Subject: [Gambas-user] gb.bd.form in stable version In-Reply-To: <2d8598af-c8d6-dee4-cd23-b80dd2c34040@gradobag.it> References: <971332b1-075f-7df2-dbbd-422f959ecaae@gradobag.it> <2d8598af-c8d6-dee4-cd23-b80dd2c34040@gradobag.it> Message-ID: Le 30/07/2023 ? 18:36, Gianluigi a ?crit?: > Il 30/07/23 18:12, Gianluigi ha scritto: >> Hi Benoit, >> >> the test program 'ForCurrentTest-DataView' version 0.0.7 present at >> this link: >> https://paste.c-net.org/SomedayTolerate >> seems to demonstrate the robustness of the latest gb.db.form component >> implementation. >> Would you be kind enough to implement it in the stable version of >> Gambas, this would greatly facilitate the work on the GAMBAS BOOK, >> since these days prof. Hans is updating the database chapters. >> >> Best regards >> >> Gianluigi >> >> >> ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > > Sorry it's version 8 at this link https://paste.c-net.org/ExplainsCharging > > Regards > > Gianluigi > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- Sorry, I don't understand what you are talking about and what you want exactly. -- Beno?t Minisini. From roberto.premoli at tiscali.it Sun Jul 30 18:48:29 2023 From: roberto.premoli at tiscali.it (roberto.premoli at tiscali.it) Date: Sun, 30 Jul 2023 18:48:29 +0200 Subject: [Gambas-user] sorce from 3.15.2 does not work on 3.18.0 In-Reply-To: References: <0dfda01cfcf2abe48b959fd7cd48ae59@tiscali.it> Message-ID: Il 30.07.2023 18:37 Benoit Minisini ha scritto: > Le 30/07/2023 ? 17:23, roberto.premoli at tiscali.it [1]a ?crit : > >> Hello, i wrote a code on gambas 3.15.2 and it works perfect. If i >> move >> the source on 3.18.0 and press F5, i get error "the program has >> returned the value 1". And no more happen! How can I debug / solve? >> Thanks, Roberto > > Can you send me the project, compiled for gambas 3.15.2 ? > > -- Beno?t Minisini. ----[ http://gambaswiki.org/wiki/doc/netiquette > [2] > ]---- Links: ------ [1] mailto:roberto.premoli at tiscali.it [2] http://gambaswiki.org/wiki/doc/netiquette Do you want the compiled .deb package or the source code? From roberto.premoli at tiscali.it Sun Jul 30 18:51:35 2023 From: roberto.premoli at tiscali.it (roberto.premoli at tiscali.it) Date: Sun, 30 Jul 2023 18:51:35 +0200 Subject: [Gambas-user] sorce from 3.15.2 does not work on 3.18.0 In-Reply-To: References: <0dfda01cfcf2abe48b959fd7cd48ae59@tiscali.it> Message-ID: <16a2ba95393703f7ab72526703bcf3aa@tiscali.it> Il 30.07.2023 18:15 Bruce Steers ha scritto: > Did you hit "compile all" button to rebuild the binaries (or delete > the > projects .gambas folder does the same thing) > > On Sun, 30 Jul 2023, 16:49 , wrote: > >> Hello, >> i wrote a code on gambas 3.15.2 and it works perfect. If i move the >> source on 3.18.0 and press F5, i get error "the program has returned >> the value 1". And no more happen! >> How can I debug / solve? >> >> Thanks, Roberto >> >> ----[ http://gambaswiki.org/wiki/doc/netiquette [1] ]---- Links: ------ [1] http://gambaswiki.org/wiki/doc/netiquette [2] mailto:roberto.premoli at tiscali.it I deleted the .gambas folder and then select "Project -> Compile All" but I get the same error. Roberto From gradobag at gradobag.it Sun Jul 30 18:59:02 2023 From: gradobag at gradobag.it (Gianluigi) Date: Sun, 30 Jul 2023 18:59:02 +0200 Subject: [Gambas-user] gb.bd.form in stable version In-Reply-To: References: <971332b1-075f-7df2-dbbd-422f959ecaae@gradobag.it> <2d8598af-c8d6-dee4-cd23-b80dd2c34040@gradobag.it> Message-ID: <95d5168c-2e29-1079-980a-fae12754c2bf@gradobag.it> Il 30/07/23 18:47, Benoit Minisini ha scritto: > Le 30/07/2023 ? 18:36, Gianluigi a ?crit?: >> Il 30/07/23 18:12, Gianluigi ha scritto: >>> Hi Benoit, >>> >>> the test program 'ForCurrentTest-DataView' version 0.0.7 present at >>> this link: >>> https://paste.c-net.org/SomedayTolerate >>> seems to demonstrate the robustness of the latest gb.db.form >>> component implementation. >>> Would you be kind enough to implement it in the stable version of >>> Gambas, this would greatly facilitate the work on the GAMBAS BOOK, >>> since these days prof. Hans is updating the database chapters. >>> >>> Best regards >>> >>> Gianluigi >>> >>> >>> ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- >> >> Sorry it's version 8 at this link >> https://paste.c-net.org/ExplainsCharging >> >> Regards >> >> Gianluigi >> >> >> ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > > Sorry, I don't understand what you are talking about and what you want > exactly. > I was kindly asking if you could implement the latest version of the gb.db.form component in the stable. Thank you Gianluigi From benoit.minisini at gambas-basic.org Sun Jul 30 19:12:10 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Sun, 30 Jul 2023 19:12:10 +0200 Subject: [Gambas-user] sorce from 3.15.2 does not work on 3.18.0 In-Reply-To: References: <0dfda01cfcf2abe48b959fd7cd48ae59@tiscali.it> Message-ID: Le 30/07/2023 ? 18:48, roberto.premoli at tiscali.it a ?crit?: > Il 30.07.2023 18:37 Benoit Minisini ha scritto: > >> Le 30/07/2023 ? 17:23, roberto.premoli at tiscali.it [1]a ?crit : >> >>> Hello, i wrote a code on gambas 3.15.2 and it works perfect. If i move >>> the source on 3.18.0 and press F5, i get error "the program has >>> returned the value 1". And no more happen! How can I debug / solve? >>> Thanks, Roberto >> >> Can you send me the project, compiled for gambas 3.15.2 ? >> >> -- Beno?t Minisini. ----[ http://gambaswiki.org/wiki/doc/netiquette [2] >> ]---- > > > Links: > ------ > [1] mailto:roberto.premoli at tiscali.it > [2] http://gambaswiki.org/wiki/doc/netiquette > > > Do you want the compiled .deb package or the source code? > I need an archive of the project folder with the result of the compilation with gambas 3.15.2 inside. Thanks! -- Beno?t Minisini. From t.lee.davidson at gmail.com Sun Jul 30 19:25:16 2023 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Sun, 30 Jul 2023 13:25:16 -0400 Subject: [Gambas-user] What means this errors? In-Reply-To: References: <255ccf08-f2e9-ecb3-373f-98c2794253d4@gambas-basic.org> <13f57f5f-041b-9f29-0baa-35da15bd80a6@gambas-basic.org> <83d73fe3-3ddf-4a8e-ae1a-b222f7c08299@gambas-basic.org> <17b7e0d0-64b3-4f92-715e-5e3d457945eb@gmail.com> <7a3fbeda-2599-fbef-64c2-a8c047baeeee@gmail.com> Message-ID: <0dbf3555-c1b3-566b-e1d0-346baa4d69d6@gmail.com> On 7/29/23 17:38, Jussi Lahtinen wrote: > I was just correcting your false correction. I did not make any false correction. I was informing, that there is no English word that represents an impersonal "you", and reassuring that its context made it clear. If it is the same in Spanish, then there should have been no problem with what I stated. Yes, the same word can be used as both personal and impersonal. I did not say it couldn't. In fact, I said it could. And, that is the difference between the word itself and its usage, which you seem to want to blend together merely for the sake of argument. So to actually "correct" me, do tell, what distinctly unique English word represents the impersonal "you" in the absence of context and/or usage? And, kindly stop falsely accusing me. -- Lee From jussi.lahtinen at gmail.com Mon Jul 31 00:43:12 2023 From: jussi.lahtinen at gmail.com (Jussi Lahtinen) Date: Mon, 31 Jul 2023 01:43:12 +0300 Subject: [Gambas-user] What means this errors? In-Reply-To: <0dbf3555-c1b3-566b-e1d0-346baa4d69d6@gmail.com> References: <255ccf08-f2e9-ecb3-373f-98c2794253d4@gambas-basic.org> <13f57f5f-041b-9f29-0baa-35da15bd80a6@gambas-basic.org> <83d73fe3-3ddf-4a8e-ae1a-b222f7c08299@gambas-basic.org> <17b7e0d0-64b3-4f92-715e-5e3d457945eb@gmail.com> <7a3fbeda-2599-fbef-64c2-a8c047baeeee@gmail.com> <0dbf3555-c1b3-566b-e1d0-346baa4d69d6@gmail.com> Message-ID: Please see what Jorge wrote and what you replied. You implied it is not the same in English and Spanish, which is false. I have no further to say about this. Jussi On Sun, Jul 30, 2023 at 8:26?PM T Lee Davidson wrote: > On 7/29/23 17:38, Jussi Lahtinen wrote: > > I was just correcting your false correction. > > I did not make any false correction. I was informing, that there is no > English word that represents an impersonal "you", and > reassuring that its context made it clear. If it is the same in Spanish, > then there should have been no problem with what I stated. > > Yes, the same word can be used as both personal and impersonal. I did not > say it couldn't. In fact, I said it could. And, that > is the difference between the word itself and its usage, which you seem to > want to blend together merely for the sake of argument. > > So to actually "correct" me, do tell, what distinctly unique English word > represents the impersonal "you" in the absence of > context and/or usage? > > And, kindly stop falsely accusing me. > > > -- > Lee > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > -------------- next part -------------- An HTML attachment was scrubbed... URL: From jfrank1500 at gmail.com Mon Jul 31 03:22:59 2023 From: jfrank1500 at gmail.com (Frank) Date: Sun, 30 Jul 2023 22:22:59 -0300 Subject: [Gambas-user] Lua component for Gambas Message-ID: Hello. I started making a Gambas component for the Lua language. It's already functional. Just assign a value to the Code property and call the Execute method. If anyone is interested, it's available at https://gitlab.com/jfrank1500/gambas/-/tree/master/gb.lua?ref_type=heads By the way, is there any more recent documentation or book with guidelines on how to create C/C++ components for Gambas? Frank -------------- next part -------------- An HTML attachment was scrubbed... URL: From dosida at gmail.com Mon Jul 31 06:43:41 2023 From: dosida at gmail.com (Dimitris Anogiatis) Date: Sun, 30 Jul 2023 22:43:41 -0600 Subject: [Gambas-user] Lua component for Gambas In-Reply-To: References: Message-ID: Hey Frank, This page in the wiki might be the starting point that you want to create your components for Gambas. https://gambaswiki.org/wiki/dev/overview You can also take a look at the Application repository to get ideas on what components and applications other users are making https://gambaswiki.org/wiki/app Hope this helps. Regards, Dimitris On Sun, Jul 30, 2023 at 7:21?PM Frank wrote: > Hello. > > I started making a Gambas component for the Lua language. > > It's already functional. Just assign a value to the Code property and call > the Execute method. > > If anyone is interested, it's available at > https://gitlab.com/jfrank1500/gambas/-/tree/master/gb.lua?ref_type=heads > > By the way, is there any more recent documentation or book with guidelines > on how to create C/C++ components for Gambas? > > Frank > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- > -------------- next part -------------- An HTML attachment was scrubbed... URL: From benoit.minisini at gambas-basic.org Mon Jul 31 09:21:22 2023 From: benoit.minisini at gambas-basic.org (Benoit Minisini) Date: Mon, 31 Jul 2023 09:21:22 +0200 Subject: [Gambas-user] Lua component for Gambas In-Reply-To: References: Message-ID: <48843bb8-f92a-69f0-af96-92e1957807fc@gambas-basic.org> Le 31/07/2023 ? 03:22, Frank a ?crit?: > Hello. > > I started making a Gambas component for the Lua language. > > It's already functional. Just assign a value to the Code property and > call the Execute method. > > If anyone is interested, it's available at > https://gitlab.com/jfrank1500/gambas/-/tree/master/gb.lua?ref_type=heads > > > By the way, is there any more recent documentation or book with > guidelines on how to create C/C++ components for Gambas? > > Frank > > > ----[ http://gambaswiki.org/wiki/doc/netiquette ]---- Fine! I don't know what's your goal exactly with this component. But if you go further, I suggest the following: - Put the code for one class in its own file, for example "c_lua.c" for the _Lua class. - I don't see the point for the "Execute" event. - I don't see the point of adding the properties to make the Lua class a GUI control. As the interpreter API documentation is not up to date, ask your question on the mailing-list, and I will answer. Regards, -- Beno?t Minisini. From vuott at tutanota.com Mon Jul 31 12:26:20 2023 From: vuott at tutanota.com (vuott at tutanota.com) Date: Mon, 31 Jul 2023 12:26:20 +0200 (CEST) Subject: [Gambas-user] Lua component for Gambas In-Reply-To: References: Message-ID: ...about creating C/C++ Components for Gambas I suggest: https://web.archive.org/web/20201026120522/https://www-e.ovgu.de/tboege/gambas/native_comp.pdf https://lists.gambas-basic.org/pipermail/user/2014-September/049855.html 31 lug 2023, 03:21 da jfrank1500 at gmail.com: > Hello. > > I started making a Gambas component for the Lua language. > > It's already functional. Just assign a value to the Code property and call the Execute method. > ? > If anyone is interested, it's available at > https://gitlab.com/jfrank1500/gambas/-/tree/master/gb.lua?ref_type=heads > > By the way, is there any more recent documentation or book with guidelines on how to create C/C++ components for Gambas? > > Frank > -------------- next part -------------- An HTML attachment was scrubbed... URL: From hans at gambas-buch.de Mon Jul 31 13:30:01 2023 From: hans at gambas-buch.de (Hans Lehmann) Date: Mon, 31 Jul 2023 13:30:01 +0200 Subject: [Gambas-user] TableView: Mark row Message-ID: <4077a7e1-6b86-2523-e74c-ea9149cade4f@gambas-buch.de> Hello. Is it correct that these two statements are the same? (1) tblView.Rows.Select(0) (2) tblView.Rows[0].Selected = True With kind regards Hans -------------- next part -------------- An HTML attachment was scrubbed... URL: From gradobag at gradobag.it Mon Jul 31 14:07:27 2023 From: gradobag at gradobag.it (Gianluigi) Date: Mon, 31 Jul 2023 14:07:27 +0200 Subject: [Gambas-user] TableView: Mark row In-Reply-To: <4077a7e1-6b86-2523-e74c-ea9149cade4f@gambas-buch.de> References: <4077a7e1-6b86-2523-e74c-ea9149cade4f@gambas-buch.de> Message-ID: <7bca561a-1031-2fd2-93f0-18e77c964fe8@gradobag.it> Il 31/07/23 13:30, Hans Lehmann ha scritto: > Hello. > > Is it correct that these two statements are the same? > > (1) tblView.Rows.Select(0) > (2) tblView.Rows[0].Selected = True > > With kind regards > > Hans Hi Hans, I would say yes. I specify that the first is a method, while the second is a property. With Best regards Gianluigi -------------- next part -------------- An HTML attachment was scrubbed... URL: From t.lee.davidson at gmail.com Mon Jul 31 16:54:26 2023 From: t.lee.davidson at gmail.com (T Lee Davidson) Date: Mon, 31 Jul 2023 10:54:26 -0400 Subject: [Gambas-user] What means this errors? In-Reply-To: References: <13f57f5f-041b-9f29-0baa-35da15bd80a6@gambas-basic.org> <83d73fe3-3ddf-4a8e-ae1a-b222f7c08299@gambas-basic.org> <17b7e0d0-64b3-4f92-715e-5e3d457945eb@gmail.com> <7a3fbeda-2599-fbef-64c2-a8c047baeeee@gmail.com> <0dbf3555-c1b3-566b-e1d0-346baa4d69d6@gmail.com> Message-ID: On 7/30/23 18:43, Jussi Lahtinen wrote: > You implied it is not the same in English and Spanish, which is false. I did NOT imply that it is not the same in English and Spanish. I implied, by logical deduction with my contrast between the word itself and its context, that there is no distinctly unique word for an impersonal "you" but that its context determines its meaning. And, that would actually be same in Spanish as I understand it. I figured Jorg is intelligent enough to comprehend that. > I have no further to say about this. Good. Thank you. -- Lee From bsteers4 at gmail.com Mon Jul 31 18:17:10 2023 From: bsteers4 at gmail.com (Bruce Steers) Date: Mon, 31 Jul 2023 17:17:10 +0100 Subject: [Gambas-user] TableView: Mark row In-Reply-To: <4077a7e1-6b86-2523-e74c-ea9149cade4f@gambas-buch.de> References: <4077a7e1-6b86-2523-e74c-ea9149cade4f@gambas-buch.de> Message-ID: On Mon, 31 Jul 2023 at 12:52, Hans Lehmann wrote: > Hello. > > Is it correct that these two statements are the same? > > (1) tblView.Rows.Select(0) > (2) tblView.Rows[0].Selected = True > > With kind regards > > Hans > they will do the same thing a different way. the first way uses a method from the GridView.Rows class that can also set many rows at once. http://gambaswiki.org/wiki/comp/gb.qt4/_gridview_rows the second individually sets a rows Selected property via GridView.Row.Selected . http://gambaswiki.org/wiki/comp/gb.qt4/_gridview_row BruceS -------------- next part -------------- An HTML attachment was scrubbed... URL: From adamnt42 at gmail.com Mon Jul 31 23:56:15 2023 From: adamnt42 at gmail.com (BB) Date: Tue, 1 Aug 2023 07:26:15 +0930 Subject: [Gambas-user] TableView: Mark row In-Reply-To: References: <4077a7e1-6b86-2523-e74c-ea9149cade4f@gambas-buch.de> Message-ID: <851aac4c-0b47-dfa6-1fb4-9e6009ce70f6@gmail.com> Another, perhaps more subtle difference is *GridView1.Rows.Select* just sets the selected value to *true* whereas *GridView1.Rows[index].Selected *takes a value so, for example you can toggle the value : *GridView1.Rows[index].Selected = Not (GridView1.Rows[index].Selected)* b -------------- next part -------------- An HTML attachment was scrubbed... URL: