Timm,
the tests that James did to me are not good, as I told James I have a specific configuration I can not change.
To me it seems absurd to use for each archive a class and connected to another class (txdata) which in turn is encapsulated in the tdatabase class.
In dos in the old clipper I used the netuse () function successfully and all these problems have never been there because you can not use a similar function even in the window?
Maybe in your country it's easy to do it but I have to be able to configure the xbrowse for example every field I have to change the titles of the columns the size of the picture, I can not limit myself to a main window with tannte child sub windows and many xbrowse in a window and I just do not like it and it's not good for me.
1) I have an annual exercise folder where I insert other folders (dbf, zip, xml, xls, doc, img, ...) and in the dbf folder files and cdx and instead james told me to use only one folder with set default to me is not good
2) at the beginning of the program I have to go to check that the archives and indexes exist in the folder because I have to do it because I do not trust the people who use computers and that fuss between folders, could delete files and cdx, so I prefer to check the opening if the archives exist or are not there. The main problem is that if the program has already been opened by a user and the other user opens it after the procedure stops because it can not create indexes. After many discussions with James (privately) I canceled this check at the beginning of the program but I always have the risk that the archives are not found and if the system is not found crasha
3) I use a specific configuration a main window and a simple dialog with the explorer class menu on the left an xbrowse on the right and a tab under the xbrowse to change the order of the indexes. problems have arisen here because it seems I can not use the aliases to create the xbrowse
4) to do the insertion of a record James has created me a dialog with for example many get but I use the variables ie for example "aGet [1] var cFirst" Jame told me that I have to use "oCustomer: first" directly and then at the bottom "oCustomer: save ()". Here too, problems have arisen because in general this may work but I have to configure and save each field because there could be differences with specific functions it is difficult to explain.
5) up to now with James I have not seen a working test but only
- Code: Select all Expand view RUN
oCustomers := TCustomers():new()
oCustomers:SetOrder( "city" )
oCustomers:GoTop()
oCustomers:skip(10)
msgInfo(oCustomers:last) // Shows Farley
oCustomers:last := "Farley 2" // change
oCustomers:save() // save
msgInfo(oCustomers:last) // Shows "Farley 2"
oCustomers:last := "Farley"
oCustomers:save()
select(oCustomers:nArea)
browse() // Shows Farley
the sample run ok but what do I solve?
With you dear Timm we talked many times, I agree you have applications that work well for 20 years I believe but maybe they do not have the configurations that I normally use here in Italy, I do not know, it is likely that I'm wrong but I can not go back to my work 20 years before.
Many years ago, exactly in 199/2001, I tried to make programs in the network without success and after 18 years the situation did not change.
in these years I have limited myself to make applications with simple archives in an exclusive way and not to use the network
Since from 1991/1992 ( fw for clipper Rel. 14.4 - Momos)
I use : FiveWin for Harbour November 2023 - January 2024 - Harbour 3.2.0dev (harbour_bcc770_32_20240309) - Bcc7.70 - xMate ver. 1.15.3 - PellesC - mail: silvio[dot]falconi[at]gmail[dot]com