From valentina-list at vermontsoftworks.com Tue Nov 2 09:40:03 2004 From: valentina-list at vermontsoftworks.com (Erik Mueller-Harder) Date: Tue Nov 2 08:40:09 2004 Subject: IndexStyle, class approach Message-ID: <15311208-2CDD-11D9-9E1A-000393DC4766@vermontsoftworks.com> Hi, Ruslan -- I've finally gotten a chance to look at IndexStyles. Your example is great, and I'm very excited by it. However, I cannot get it to work at all when defining my database, tables, and fields as classes. Wherever I first try to use CreateIndexStyle(), whether as part of the database constructor, the table constructor, the field constructor, or (kludgily) after everything has already been created, I get an Apple crash report informing me that my application failed with an EXC_BAD_ACCESS exception and a KERN_INVALID_ADDRESS code. I'll report this in your new bug-tracking system too, but I wondered if you had any comments? Thanks, -- Erik From valentina-list at vermontsoftworks.com Tue Nov 2 15:05:29 2004 From: valentina-list at vermontsoftworks.com (Erik Mueller-Harder) Date: Tue Nov 2 14:05:33 2004 Subject: [V4RB] static binary link declaration Message-ID: <8B509C26-2D0A-11D9-9E1A-000393DC4766@vermontsoftworks.com> Hi, Ruslan -- I'm still struggling with binary link declarations in classes. In a dynamically defined database, one would use link = CreateBinaryLink("linkVenueAdmin", tblVenue, tblAdmin, Valentina.kOne, Valentina.kOne) for a one-to-one binary link. I've created a VenueAdminLink class and have created a linkVenueAdmin property of my database that's a member of this class. In the VenueAdminLink's constructor method, I've assigned its name -- but I don't see properties to assign for the two tables involved or for their one/many aspects. Is all this still on your to-do list? Or am I going about this in the wrong way? Many thanks, -- Erik From sunshine at public.kherson.ua Tue Nov 2 22:09:39 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Tue Nov 2 14:10:51 2004 Subject: [V4RB] static binary link declaration In-Reply-To: <8B509C26-2D0A-11D9-9E1A-000393DC4766@vermontsoftworks.com> Message-ID: On 11/2/04 10:05 PM, "Erik Mueller-Harder" wrote: > Hi, Ruslan -- > > I'm still struggling with binary link declarations in classes. In a > dynamically defined database, one would use > > link = CreateBinaryLink("linkVenueAdmin", tblVenue, tblAdmin, > Valentina.kOne, Valentina.kOne) > > for a one-to-one binary link. > > I've created a VenueAdminLink class and have created a linkVenueAdmin > property of my database that's a member of this class. > > In the VenueAdminLink's constructor method, I've assigned its name -- > but I don't see properties to assign for the two tables involved or for > their one/many aspects. > > Is all this still on your to-do list? Or am I going about this in the > wrong way? Ivan, Do you have such test ? With Binary Link ? Erik, I still have your project... I will try to run it ASAP. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From IvanSmahin at public.kherson.ua Wed Nov 3 00:20:48 2004 From: IvanSmahin at public.kherson.ua (Ivan Smahin) Date: Tue Nov 2 16:20:54 2004 Subject: [V4RB] static binary link declaration Message-ID: <708896370.20041103002048@public.kherson.ua> Hello Erik, Tuesday, November 2, 2004, 10:09:39 PM, you wrote: RZ> On 11/2/04 10:05 PM, "Erik Mueller-Harder" RZ> wrote: >> Hi, Ruslan -- >> >> I'm still struggling with binary link declarations in classes. In a >> dynamically defined database, one would use >> >> link = CreateBinaryLink("linkVenueAdmin", tblVenue, tblAdmin, >> Valentina.kOne, Valentina.kOne) >> >> for a one-to-one binary link. >> What is the problem with "static" way? As for me it's almost the same as "dynamic". The difference is only in db.Create code-place. Unfortunately I'm not fluent in RB so it would be great if you clarify the situation more detailed. Thank you. >> I've created a VenueAdminLink class and have created a linkVenueAdmin >> property of my database that's a member of this class. >> >> In the VenueAdminLink's constructor method, I've assigned its name -- >> but I don't see properties to assign for the two tables involved or for >> their one/many aspects. >> >> Is all this still on your to-do list? Or am I going about this in the >> wrong way? RZ> Ivan, RZ> Do you have such test ? RZ> With Binary Link ? RZ> Erik, I still have your project... RZ> I will try to run it ASAP. -- Best regards, Ivan mailto:IvanSmahin@public.kherson.ua From sunshine at public.kherson.ua Wed Nov 3 02:23:44 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Tue Nov 2 18:24:52 2004 Subject: IndexStyle, class approach In-Reply-To: <15311208-2CDD-11D9-9E1A-000393DC4766@vermontsoftworks.com> Message-ID: On 11/2/04 4:40 PM, "Erik Mueller-Harder" wrote: > Hi, Ruslan -- > > I've finally gotten a chance to look at IndexStyles. Your example is > great, and I'm very excited by it. > > However, I cannot get it to work at all when defining my database, > tables, and fields as classes. Wherever I first try to use > CreateIndexStyle(), whether as part of the database constructor, the > table constructor, the field constructor, or (kludgily) after > everything has already been created, I get an Apple crash report > informing me that my application failed with an EXC_BAD_ACCESS > exception and a KERN_INVALID_ADDRESS code. > > I'll report this in your new bug-tracking system too, but I wondered if > you had any comments? Hi Erik, Just we not yet polish so much the Class way. We need add similar example into folder Class way and make sure it works. Ivan, also please add such test into Static Model section. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From sunshine at public.kherson.ua Wed Nov 3 02:33:37 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Tue Nov 2 18:34:44 2004 Subject: IndexStyle, class approach In-Reply-To: <15311208-2CDD-11D9-9E1A-000393DC4766@vermontsoftworks.com> Message-ID: On 11/2/04 4:40 PM, "Erik Mueller-Harder" wrote: > Hi, Ruslan -- > > I've finally gotten a chance to look at IndexStyles. Your example is > great, and I'm very excited by it. > > However, I cannot get it to work at all when defining my database, > tables, and fields as classes. Wherever I first try to use > CreateIndexStyle(), whether as part of the database constructor, the > table constructor, the field constructor, or (kludgily) after > everything has already been created, I get an Apple crash report > informing me that my application failed with an EXC_BAD_ACCESS > exception and a KERN_INVALID_ADDRESS code. > > I'll report this in your new bug-tracking system too, but I wondered if > you had any comments? Hi All, Today also I have found that right now it split on words not good. It not consider punctuation. I will add this, this is easy. ** But this bring the issue which we have discuss before. Ability for developer define own set of "punctuation chars" or "breakers" So I think IndexStyle should be improved for this. indStle.SetBreakers( "./*-+?:;'"|\\<>%^#@!??+" ) ** also working with Jon project I have to see that into index comes such words as "a" "the" ** Also comes numbers as 0455477 1214 -- I think may be Valentina should on default use style with length limit at least 2 or 3 or may be even 4? Or better put this on developer ? -- May be we can to have also style.DisableNumbers = true ? does this have sense? may be better to have some other more general way ? -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From valentina-list at vermontsoftworks.com Wed Nov 3 09:33:04 2004 From: valentina-list at vermontsoftworks.com (Erik Mueller-Harder) Date: Wed Nov 3 08:33:14 2004 Subject: IndexStyle In-Reply-To: References: Message-ID: <45A58201-2DA5-11D9-9720-000393DC4766@vermontsoftworks.com> On Nov 2, 2004, at 19:33, Ruslan Zasukhin wrote: > Today also I have found that right now it split on words not good. > It not consider punctuation. > > I will add this, this is easy. > > ** But this bring the issue which we have discuss before. > Ability for developer define own set of "punctuation chars" > or "breakers" > > So I think IndexStyle should be improved for this. > > indStle.SetBreakers( "./*-+?:;'"|\\<>%^#@!??+" ) Yes. Being able to set individual breaking characters would be great. > ** also working with Jon project I have to see that into index comes > such > words as > > "a" "the" > > ** Also comes numbers as 0455477 1214 > > -- I think may be Valentina should on default use style with length > limit at > least 2 or 3 or may be even 4? Or better put this on developer ? I'd be inclined to want everything indexed unless I as a developer explicitly overrode that behavior. But I suppose that having a default length limit of 2 or maybe 3 would be OK -- as long as it was very clearly documented and overrideable. > -- May be we can to have also > style.DisableNumbers = true ? > > does this have sense? > may be better to have some other more general way ? I'd prefer a more general solution. It seems to me that it might be handy to be able to use Unicode "categories" as convenient shortcuts in the discussions of both breaking characters and word indexing. The main Unicode categories are letters, numbers, punctuation, symbols, marks, separators, and miscellaneous. Subcategories exist for upper- & lower-case letters, different types of punctuation, etc. And there are other category "properties" such as whitespace, quotation marks, alphabetic, etc. All the work has already been done to assign a category and (optionally) properties to each Unicode code point. (etc.) Developers could easily define their break-character categories (e.g., separators, punctuation, and whitespace) and then define what resulting "words" they want indexed (e.g., any "word" whose characters are all letters, every "word" that doesn't include a number, or only "words" made up of only uppercase letters). Perhaps methods such as: style.BreakCategory("separator") = True // All separators and punctuation style.BreakCategory("punctuation") = True // are now break characters, style.BreakCategory("number") = False // but numbers are not. could work for defining break-character categories. Defining good Valentina defaults would keep us from having to use these too much, of course, and we'd probably still need to be able to override specific items in the break-character categories -- perhaps with your "SetBreakers" method, above. Still, the ability to define large groups of characters quickly, without having to worry about whether or not you've left out a character or two, would be quite worthwhile, I think. The question of "word" indexing (e.g., "apple", "0455477") is more difficult, it seems to me, because some developers might need to index, for example, all "words" that do not contain any digits, whereas others might need to index those that contain digits but are not exclusively numeric: apple 0455477 3M R2D2 Perhaps something like: style.IndexCategory("number") = True // 0455477, 3M, R2D2 are indexed style.IndexCategory("number" valentina.all) = True // 0455477 is indexed style.IndexCategory("number" valentina.any) = True // 3M, R2D2 are indexed Hmm. That needs some further work, I think. Anyway, my point is that this kind of general solution will end up giving the developer much more flexibility. Using broad categories, we can save keystrokes and avoid leaving out specific code points. With useful defaults, we shouldn't have to spend too much time thinking about all this, except in special cases. Thoughts? -- Erik From jda at his.com Wed Nov 3 09:44:20 2004 From: jda at his.com (jda) Date: Wed Nov 3 08:44:32 2004 Subject: IndexStyle In-Reply-To: <45A58201-2DA5-11D9-9720-000393DC4766@vermontsoftworks.com> References: <45A58201-2DA5-11D9-9720-000393DC4766@vermontsoftworks.com> Message-ID: >> >> >>-- I think may be Valentina should on default use style with length limit at >>least 2 or 3 or may be even 4? Or better put this on developer ? > >I'd be inclined to want everything indexed unless I as a developer >explicitly overrode that behavior. But I suppose that having a >default length limit of 2 or maybe 3 would be OK -- as long as it >was very clearly documented and overrideable. I agree. In the sciences, for example, two letter abbreviations are common (Ia, Cu, ad infinitum) and users may want to search for these abbreviations. So for my purposes, for example, I'd probably exclude only 1 letter words from the index (I, a, etc.). BTW, would this be letters or bytes? If one uses UTF-8, 1 letter may be 2-4 bytes. > >The main Unicode categories are letters, numbers, punctuation, >symbols, marks, separators, and miscellaneous. Subcategories exist >for upper- & lower-case letters, different types of punctuation, >etc. And there are other category "properties" such as whitespace, >quotation marks, alphabetic, etc. All the work has already been >done to assign a category and (optionally) properties to each >Unicode code point. > > > (etc.) > >Developers could easily define their break-character categories >(e.g., separators, punctuation, and whitespace) and then define what >resulting "words" they want indexed (e.g., any "word" whose >characters are all letters, every "word" that doesn't include a >number, or only "words" made up of only uppercase letters). > >Perhaps methods such as: > > style.BreakCategory("separator") = True // All separators >and punctuation > style.BreakCategory("punctuation") = True // are now break characters, > style.BreakCategory("number") = False // but numbers are not. > >could work for defining break-character categories. Defining good >Valentina defaults would keep us from having to use these too much, >of course, and we'd probably still need to be able to override >specific items in the break-character categories -- perhaps with >your "SetBreakers" method, above. Still, the ability to define >large groups of characters quickly, without having to worry about >whether or not you've left out a character or two, would be quite >worthwhile, I think. Very well said. Jon From valentina-list at vermontsoftworks.com Wed Nov 3 09:54:12 2004 From: valentina-list at vermontsoftworks.com (Erik Mueller-Harder) Date: Wed Nov 3 08:54:20 2004 Subject: [V4RB] static binary link declaration In-Reply-To: <708896370.20041103002048@public.kherson.ua> References: <708896370.20041103002048@public.kherson.ua> Message-ID: <396631AC-2DA8-11D9-9720-000393DC4766@vermontsoftworks.com> Hi, Ivan -- On Nov 2, 2004, at 17:20, Ivan Smahin wrote: > What is the problem with "static" way? > As for me it's almost the same as "dynamic". The difference is only in > db.Create > code-place. > Unfortunately I'm not fluent in RB so it would be great if you clarify > the situation more detailed. Before the database can be created with db.Create, the db object must be instantiated: db = new dbClass dbClass, in this case, is a subclass of VDatabase with properties pre-defined by V4RB (name, schemaVersion, etc.) and with properties defined by the developer (tables, mostly). If the developer is truly taking an object-oriented approach, each table property of the database is defined in the database's constructor: tblPerson = new personTbl tblPhone = new phoneTbl and each table is itself defined as a subclass of VTable with properties pre-defined by V4RB (name, locale, etc.) and with properties defined by the developer (fields, mostly). Generally, I stop there and set up each field thus: accessible = new VBoolean("accessible") But a whole-hearted OOP approach might actually involve defining each field as a subclass of VField (or of their respective VField subclasses, such as VVarChar). The problem, then, is currently with the new "link" and "indexStyle" properties of VDatabase. If I define them within the constructor method of the database, my application crashes -- I think because db.Create hasn't yet been called. Why should I not just define the links and indexStyles after I call db.Create? Well, in the case of indexStyles, I need to create the style and assign it to the field before the field is created -- but the field is automatically created when I call db.Create. But (even if that weren't a problem), it seems very inelegant and un-OOP-like to create links and indexStyles after the fact and, worst -- I'm unable without a lot of extra work to define them as properties of my database and table subclasses. Does this answer your question, or have I just muddied the waters? Thanks for your help, -- Erik From rjb at robelko.com Wed Nov 3 15:59:21 2004 From: rjb at robelko.com (Robert Brenstein) Date: Wed Nov 3 09:11:17 2004 Subject: IndexStyle In-Reply-To: <45A58201-2DA5-11D9-9720-000393DC4766@vermontsoftworks.com> References: <45A58201-2DA5-11D9-9720-000393DC4766@vermontsoftworks.com> Message-ID: >>-- I think may be Valentina should on default use style with length limit at >>least 2 or 3 or may be even 4? Or better put this on developer ? > >I'd be inclined to want everything indexed unless I as a developer >explicitly overrode that behavior. But I suppose that having a >default length limit of 2 or maybe 3 would be OK -- as long as it >was very clearly documented and overrideable. While 2-3 char words in English can commonly be excluded when indexing generic texts, this may or may not be true for other languages. Furthermore, it may be desirable for some texts to index 2-3 char acronyms. Not to mention a number of 3-char words in English that are proper nouns or verbs and should normally be included. And for scientific texts, 1-2 char words can also be quite proper (like element symbols). A solution used by Atomz for example is to allow us to provide an explicit list of words to be excluded. Robert From sunshine at public.kherson.ua Wed Nov 3 18:24:15 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Nov 3 10:25:28 2004 Subject: [V4RB] static binary link declaration In-Reply-To: <396631AC-2DA8-11D9-9720-000393DC4766@vermontsoftworks.com> Message-ID: On 11/3/04 4:54 PM, "Erik Mueller-Harder" wrote: > The problem, then, is currently with the new "link" and "indexStyle" > properties of VDatabase. If I define them within the constructor > method of the database, my application crashes -- I think because > db.Create hasn't yet been called. > > Why should I not just define the links and indexStyles after I call > db.Create? You should NOT. Just this is not fixed. > Well, in the case of indexStyles, I need to create the > style and assign it to the field before the field is created -- but the > field is automatically created when I call db.Create. But (even if > that weren't a problem), it seems very inelegant and un-OOP-like to > create links and indexStyles after the fact and, worst -- I'm unable > without a lot of extra work to define them as properties of my database > and table subclasses. > > Does this answer your question, or have I just muddied the waters? Yes., answer is you have CRASHES, Ivan did think that you ask about HOW TO. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From sunshine at public.kherson.ua Wed Nov 3 18:25:19 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Nov 3 10:26:25 2004 Subject: IndexStyle In-Reply-To: Message-ID: On 11/3/04 4:59 PM, "Robert Brenstein" wrote: >>> -- I think may be Valentina should on default use style with length limit at >>> least 2 or 3 or may be even 4? Or better put this on developer ? >> >> I'd be inclined to want everything indexed unless I as a developer >> explicitly overrode that behavior. But I suppose that having a >> default length limit of 2 or maybe 3 would be OK -- as long as it >> was very clearly documented and overrideable. > > While 2-3 char words in English can commonly be excluded when > indexing generic texts, this may or may not be true for other > languages. Furthermore, it may be desirable for some texts to index > 2-3 char acronyms. Not to mention a number of 3-char words in English > that are proper nouns or verbs and should normally be included. And > for scientific texts, 1-2 char words can also be quite proper (like > element symbols). A solution used by Atomz for example is to allow us > to provide an explicit list of words to be excluded. I think on default Valentina will not exclude nothing. It is task of developer define style. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From jda at his.com Wed Nov 3 16:34:08 2004 From: jda at his.com (jda) Date: Wed Nov 3 15:34:13 2004 Subject: REGEX searches In-Reply-To: References: <45A58201-2DA5-11D9-9720-000393DC4766@vermontsoftworks.com> Message-ID: Hi Ruslan, I assume that in V2 Regex searches adopt the case-sensitivity of the field you are searching in (depending on collation, etc.). How do you turn it ON (or OFF) if the default is not what you want? I looked at the ICU web site, and they said (?i) turns case sensitivity off, but not how to turn it on. And there are no example of an actual SQL query where this is used (meaning, where in the statement would it go?). Thanks, Jon From sunshine at public.kherson.ua Thu Nov 4 11:51:18 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Thu Nov 4 03:52:36 2004 Subject: REGEX searches In-Reply-To: Message-ID: On 11/3/04 11:34 PM, "jda" wrote: Hi Jon, > I assume that in V2 Regex searches adopt the case-sensitivity of the > field you are searching in (depending on collation, etc.). How do you > turn it ON (or OFF) if the default is not what you want? Frankly saying it seems we did not work out this issue yet. Yes, I think REGEX should take into account the current settings of field. On the other hand I am not sure that REGEX uses Collator. We need read cods on this. Igor, please check this point and tell us. > I looked at the ICU web site, and they said (?i) turns case > sensitivity off, but not how to turn it on. And there are no example > of an actual SQL query where this is used (meaning, where in the > statement would it go?). Aha, so the same option. I think they strictly follow to perl's syntax, som must be Like in Valentina 1.x docs! ?i- set it off ?i set it on -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From sunshine at public.kherson.ua Thu Nov 4 20:29:29 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Thu Nov 4 12:30:42 2004 Subject: [V4RB] b23 uploaded. Message-ID: Hi All, This beta fixes few beta related to searches of strings. * All examples are the same. * API is the same, except 2 new classes which I will use only for viSQL. * Now you can do HAVING for Valentina -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From sunshine at public.kherson.ua Sat Nov 6 00:29:21 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Fri Nov 5 16:30:42 2004 Subject: V4RB, new build Message-ID: Hi All, Please download new build. It contains many changes in regard to enums. 1) At last of end I have decide make each enum as separate namespace. We have told about this on start. So now usage of enum constants by syntax is very similar to Java. db.Create( f, EVDbMode.kDescDatIndBlb ) All enums start with "EV" prefix. So you can easy use power of RB auto- completion tool. 2) All examples adopted to this new enums. 3) Now Valentina.DebugLevel do works. you can see new example for this. We have now 4 levels of debugging. 0 - LogNothing 1 - LogErrors 2 - LogFunctions 3 - LogParams For these contants we have now enum EVDebugLevel 4) Added new property Valentina.FlushEachLog as Boolean you can set this TRUE in case you get crashes. in this case you will not loose info about last Valentina calles. When TRUE the speed is much slower, because EACH line of log file is flushed 5) [NEW] enum Verror with a lots of error code contants. V4RB build this enum automatically using XML error files which you can find the Vcomponents/Resources folder. This is very handy because we get up to date list of error constants. NOTE: in the next build name will be change to common rule EVError So from this moment, you never should use just error numbers in your code. Code should looks as if( e.ErrCode = EVError.FieldNameNotUnique ) then PLEASE adopt your projects to this changes. Jon, please send me adopted project for future work. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From jda at his.com Fri Nov 5 18:37:08 2004 From: jda at his.com (jda) Date: Fri Nov 5 17:37:18 2004 Subject: V4RB, new build In-Reply-To: References: Message-ID: >5) [NEW] enum Verror with a lots of error code contants. > > V4RB build this enum automatically using XML error files > which you can find the Vcomponents/Resources folder. > This is very handy because we get up to date list of error constants. > > NOTE: in the next build name will be change to common rule > EVError > > So from this moment, you never should use just error numbers > in your code. Code should looks as > > if( e.ErrCode = EVError.FieldNameNotUnique ) then > I don't see EVError in RB autocomplete... Jon From jda at his.com Fri Nov 5 18:42:46 2004 From: jda at his.com (jda) Date: Fri Nov 5 17:42:52 2004 Subject: V4RB, new build In-Reply-To: References: Message-ID: >3) Now Valentina.DebugLevel do works. > you can see new example for this. > We have now 4 levels of debugging. > > 0 - LogNothing > 1 - LogErrors > 2 - LogFunctions > 3 - LogParams > >For these contants we have now enum EVDebugLevel > I set this Valentina.DebugLevel = EVDebugLevel.kLogNothing I no longer see the V4RB log file, there is still the FBL_TreeParser.txt and FBL_Asserts.txt. And Valentina is still dog-slow. Are these expected? Jon From sunshine at public.kherson.ua Sat Nov 6 07:36:33 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Fri Nov 5 23:37:49 2004 Subject: V4RB, new build In-Reply-To: Message-ID: On 11/6/04 1:37 AM, "jda" wrote: >> 5) [NEW] enum Verror with a lots of error code contants. >> >> V4RB build this enum automatically using XML error files >> which you can find the Vcomponents/Resources folder. >> This is very handy because we get up to date list of error constants. >> >> NOTE: in the next build name will be change to common rule >> EVError >> >> So from this moment, you never should use just error numbers >> in your code. Code should looks as >> >> if( e.ErrCode = EVError.FieldNameNotUnique ) then >> > > I don't see EVError in RB autocomplete... Read the first line In THIS build it have name VError -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From sunshine at public.kherson.ua Sat Nov 6 07:37:10 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Fri Nov 5 23:38:20 2004 Subject: V4RB, new build In-Reply-To: Message-ID: On 11/6/04 1:42 AM, "jda" wrote: >> 3) Now Valentina.DebugLevel do works. >> you can see new example for this. >> We have now 4 levels of debugging. >> >> 0 - LogNothing >> 1 - LogErrors >> 2 - LogFunctions >> 3 - LogParams >> >> For these contants we have now enum EVDebugLevel >> > > I set this > > Valentina.DebugLevel = EVDebugLevel.kLogNothing > > I no longer see the V4RB log file, there is still the > FBL_TreeParser.txt and FBL_Asserts.txt. And Valentina is still > dog-slow. Are these expected? Not sure. We need yet remove that logs. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From sunshine at public.kherson.ua Sat Nov 6 23:36:29 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Sat Nov 6 15:37:43 2004 Subject: FIXED: IndexStyle and Binary link for Classes way. Message-ID: -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From sunshine at public.kherson.ua Sat Nov 6 23:38:01 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Sat Nov 6 15:39:12 2004 Subject: NEW: V4RB: VBinaryClass added Message-ID: So now for class way we can write simply as: mLink = new VBinaryLink( "name", t1, t2 ONE, MANY ) -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From jda at his.com Sun Nov 7 16:52:13 2004 From: jda at his.com (jda) Date: Sun Nov 7 15:52:25 2004 Subject: V4RB, new build In-Reply-To: References: Message-ID: Hi Ruslan, After using a database for a while, it develops spurious (false) empty records. For example, I have one now with 8 real records and 158 false ones. I haven't figured out the steps to reproduce this yet, but it always happens with time. Would you like to see the db? Or would that be useless? Jon From sunshine at public.kherson.ua Sun Nov 7 23:53:20 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Sun Nov 7 15:54:38 2004 Subject: V4RB, new build In-Reply-To: Message-ID: On 11/7/04 11:52 PM, "jda" wrote: > Hi Ruslan, > > After using a database for a while, it develops spurious (false) > empty records. For example, I have one now with 8 real records and > 158 false ones. I haven't figured out the steps to reproduce this > yet, but it always happens with time. Would you like to see the db? > Or would that be useless? Yes send me. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From jda at his.com Sun Nov 7 17:00:44 2004 From: jda at his.com (jda) Date: Sun Nov 7 16:00:49 2004 Subject: V4RB, new build In-Reply-To: References: Message-ID: >On 11/7/04 11:52 PM, "jda" wrote: > >> Hi Ruslan, >> >> After using a database for a while, it develops spurious (false) >> empty records. For example, I have one now with 8 real records and >> 158 false ones. I haven't figured out the steps to reproduce this >> yet, but it always happens with time. Would you like to see the db? >> Or would that be useless? > >Yes send me. > I don't need to -- I just figured out how to reproduce. I'm entering into mantis right now... Jon From sunshine at public.kherson.ua Mon Nov 8 16:24:08 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Mon Nov 8 08:25:23 2004 Subject: V4RB, VISQL PROJECT Message-ID: Hi All, I have improve a lots the window Structure Browser of viSQL project. Now it can display for us * properties of db and table. * links of database and their properties * links of a table * default value of a field if it exists * volumes and list of internal embedded files TODO: * CHECK constraint for a field * list of constraints of table (PK, FK, CHECK, ...) * anything more I have forget ? -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From valentina-list at vermontsoftworks.com Mon Nov 8 10:32:59 2004 From: valentina-list at vermontsoftworks.com (Erik Mueller-Harder) Date: Mon Nov 8 09:33:09 2004 Subject: [V4RB] b23 uploaded. In-Reply-To: References: Message-ID: <7886EABF-319B-11D9-90EB-000393DC4766@vermontsoftworks.com> Hi, Ruslan -- I'm unable to un-Stuff the VEngine archive. I've tried both the HTTP and the FTP download links, but I get a corrupted file every time. Thanks, -- Erik On Nov 4, 2004, at 13:29, Ruslan Zasukhin wrote: > Hi All, > > This beta fixes few beta related to searches of strings. > > * All examples are the same. > > * API is the same, except 2 new classes which I will use only for > viSQL. > > * Now you can do HAVING for Valentina From sunshine at public.kherson.ua Mon Nov 8 18:53:19 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Mon Nov 8 10:54:36 2004 Subject: [V4RB] b23 uploaded. In-Reply-To: <7886EABF-319B-11D9-90EB-000393DC4766@vermontsoftworks.com> Message-ID: On 11/8/04 5:32 PM, "Erik Mueller-Harder" wrote: > Hi, Ruslan -- > > I'm unable to un-Stuff the VEngine archive. I've tried both the HTTP > and the FTP download links, but I get a corrupted file every time. Hi Erik, Strange. It seems Jon was able to work with it, Jon ? In any case today I will make new build in 3-5 hours later. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From jda at his.com Mon Nov 8 11:57:38 2004 From: jda at his.com (jda) Date: Mon Nov 8 10:57:52 2004 Subject: [V4RB] b23 uploaded. In-Reply-To: References: Message-ID: > > > I'm unable to un-Stuff the VEngine archive. I've tried both the HTTP >> and the FTP download links, but I get a corrupted file every time. > >Hi Erik, > >Strange. > >It seems Jon was able to work with it, Jon ? > >In any case today I will make new build in 3-5 hours later. > Erik, just in case this is the problem, make sure you are using Unstuffit 9 -- I've had problems unstuffing version 9 archives with older versions of Unstuffit. Jon From sunshine at public.kherson.ua Mon Nov 8 19:04:21 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Mon Nov 8 11:05:34 2004 Subject: [V4RB] b23 uploaded. In-Reply-To: Message-ID: On 11/8/04 6:57 PM, "jda" wrote: >> >>> I'm unable to un-Stuff the VEngine archive. I've tried both the HTTP >>> and the FTP download links, but I get a corrupted file every time. >> >> Hi Erik, >> >> Strange. >> >> It seems Jon was able to work with it, Jon ? >> >> In any case today I will make new build in 3-5 hours later. >> > > Erik, just in case this is the problem, make sure you are using > Unstuffit 9 -- I've had problems unstuffing version 9 archives with > older versions of Unstuffit. Actually I have use Stuffit 8. Stuffit 9 looks to be very buggy. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From sunshine at public.kherson.ua Tue Nov 9 00:25:18 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Mon Nov 8 16:26:36 2004 Subject: V4RB b24 uploaded Message-ID: * improved viSQL * fixed bug in bool search * Now must work Classes model with IndexStyle and BinaryLink. * new example Classes/BinaryLink * new class added VBinaryLink for use in Classes way. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From jda at his.com Mon Nov 8 18:02:25 2004 From: jda at his.com (jda) Date: Mon Nov 8 17:02:34 2004 Subject: V4RB b24 uploaded In-Reply-To: References: Message-ID: >* improved viSQL > >* fixed bug in bool search > >* Now must work Classes model with IndexStyle and BinaryLink. > >* new example Classes/BinaryLink > >* new class added VBinaryLink for use in Classes way. > There's something wrong with the V4RB plug-in. All my Valentina objects now have the generic Object class. viSQL won't compile, either: theLine = theLine + app.rw.mCursor.Field(i).name (.Field is highlighted, error Method or Property does not exist). Jon From jda at his.com Mon Nov 8 18:06:43 2004 From: jda at his.com (jda) Date: Mon Nov 8 17:06:49 2004 Subject: V4RB b24 uploaded In-Reply-To: References: Message-ID: >> >> > >There's something wrong with the V4RB plug-in. All my Valentina >objects now have the generic Object class. viSQL won't compile, >either: > >theLine = theLine + app.rw.mCursor.Field(i).name > >(.Field is highlighted, error Method or Property does not exist). > Never mind. I downloaded VEngine again and now it's OK (the first one had a modification date of Nov 5, the second download has a date of Nov 8). Jon From sunshine at public.kherson.ua Tue Nov 9 09:48:26 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Tue Nov 9 01:49:44 2004 Subject: V4RB b24 uploaded In-Reply-To: Message-ID: On 11/9/04 1:06 AM, "jda" wrote: >> There's something wrong with the V4RB plug-in. All my Valentina >> objects now have the generic Object class. viSQL won't compile, >> either: >> >> theLine = theLine + app.rw.mCursor.Field(i).name >> >> (.Field is highlighted, error Method or Property does not exist). >> > > Never mind. I downloaded VEngine again and now it's OK (the first one > had a modification date of Nov 5, the second download has a date of > Nov 8). Probably you have download it before I have finish upload -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From ernestogiannotta at tiscalinet.it Tue Nov 9 09:17:25 2004 From: ernestogiannotta at tiscalinet.it (erne) Date: Tue Nov 9 02:17:44 2004 Subject: V4RB 1.11 SQLExecute Update Bug Message-ID: Hello Ruslan, I found a bug in SQLExecute V4RB 1.11 (it works fine in 1.10) when I try to do something like i = SqlExecute("Update BO Set fld = 0") i holds the correct number of records but values are not updated I got a small project that reproduce this should I send it to you or go to some bug report page? Cool Runnings, Erne. | er | musical box | ne | a media store From sunshine at public.kherson.ua Tue Nov 9 23:18:11 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Tue Nov 9 15:19:27 2004 Subject: V4RB new build Message-ID: - 0000074: [Feature] Split to words (Ruslan Zasukhin) - 0000079: [Other] Can't set schemaVersion until db is created on disk (Ivan Smahin) ---------------------- New function added into Vstring, VVarChar and Vtext fields SplitToWords( inStr as String ) as String It can be used only if field is indexed self. It take into account the index style for given field. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From jda at his.com Tue Nov 9 21:21:22 2004 From: jda at his.com (jda) Date: Tue Nov 9 20:21:32 2004 Subject: SplitToWords In-Reply-To: References: Message-ID: >New function added into Vstring, VVarChar and Vtext fields > SplitToWords( inStr as String ) as String > >It can be used only if field is indexed self. >It take into account the index style for given field. > Ruslan, I've gotten SplitToWords to work, but it's pretty cumbersome and, for reasons I can't quite figure out yet (no doubt due to conflicts with the database object) I'm able to crash my app with it. Is there some reason this can't be implemented in a more straightforward fashion, like Valentina.EscapeString? Do we really need to go to the trouble of creating an indexedbyword field first and then using its method to splitByWord? Jon From sunshine at public.kherson.ua Wed Nov 10 08:17:52 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Nov 10 00:19:08 2004 Subject: SplitToWords In-Reply-To: Message-ID: On 11/10/04 4:21 AM, "jda" wrote: >> New function added into Vstring, VVarChar and Vtext fields >> SplitToWords( inStr as String ) as String >> >> It can be used only if field is indexed self. >> It take into account the index style for given field. >> > > Ruslan, I've gotten SplitToWords to work, but it's pretty cumbersome > and, for reasons I can't quite figure out yet (no doubt due to > conflicts with the database object) I'm able to crash my app with it. > > Is there some reason this can't be implemented in a more > straightforward fashion, like Valentina.EscapeString? Do we really > need to go to the trouble of creating an indexedbyword field first > and then using its method to splitByWord? It cannot be in the Valentina module. It must be in the Vfield itself BECAUSE result of SplitToWords() depend on index style of a field. You see? -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From jda at his.com Wed Nov 10 07:00:13 2004 From: jda at his.com (jda) Date: Wed Nov 10 06:00:22 2004 Subject: SplitToWords In-Reply-To: References: Message-ID: > > Is there some reason this can't be implemented in a more >> straightforward fashion, like Valentina.EscapeString? Do we really >> need to go to the trouble of creating an indexedbyword field first >> and then using its method to splitByWord? > >It cannot be in the Valentina module. > >It must be in the Vfield itself BECAUSE result of SplitToWords() depend on >index style of a field. You see? > Please explain. What index style? Locale? Then can't we pass that as a parameter to the method? What I've tried with v2 now is to "hijack" an existing indexed field (e.g. authors) and use it to get the splittowords result. This works, but if I call it repeatedly from different methods -> crash. So I'm thinking I need to create a table and a field dedicated to just this one function. That seems like a lot of work (and overhead) just to get this one function to work. Or am I missing something (very possible)? Jon From sunshine at public.kherson.ua Wed Nov 10 16:00:08 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Nov 10 08:01:24 2004 Subject: SplitToWords In-Reply-To: Message-ID: On 11/10/04 2:00 PM, "jda" wrote: >>> Is there some reason this can't be implemented in a more >>> straightforward fashion, like Valentina.EscapeString? Do we really >>> need to go to the trouble of creating an indexedbyword field first >>> and then using its method to splitByWord? >> >> It cannot be in the Valentina module. >> >> It must be in the Vfield itself BECAUSE result of SplitToWords() depend on >> index style of a field. You see? >> > > Please explain. What index style? Locale? Then can't we pass that as > a parameter to the method? IndexStyle -- this is new feature Jon. We have discuss it a lots on list. Check example API/IndexStyle. > What I've tried with v2 now is to "hijack" an existing indexed field > (e.g. authors) and use it to get the splittowords result. This works, > but if I call it repeatedly from different methods -> crash. So I'm > thinking I need to create a table and a field dedicated to just this > one function. NO !!!!!!!!!!!!!!!!!!!!!!!!!! You need call SplitToWords using that field into which you will store string. > That seems like a lot of work (and overhead) just to > get this one function to work. Or am I missing something (very > possible)? -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From jda at his.com Wed Nov 10 09:07:34 2004 From: jda at his.com (jda) Date: Wed Nov 10 08:07:45 2004 Subject: SplitToWords In-Reply-To: References: Message-ID: > > >> What I've tried with v2 now is to "hijack" an existing indexed field >> (e.g. authors) and use it to get the splittowords result. This works, >> but if I call it repeatedly from different methods -> crash. So I'm >> thinking I need to create a table and a field dedicated to just this >> one function. > >NO !!!!!!!!!!!!!!!!!!!!!!!!!! > >You need call SplitToWords using that field into which you will store >string. > I haven't heard you yell like that for a long time! :-) I'm not storing the string anywhere. I'm taking a string that the user types in and creating an SQL query with it. That's all. And I need that because otherwise I can't prepare the SQL search properly for indexedByWord fields. That's why I wanted something like s = Valentina.SplitToWords. Jon From sunshine at public.kherson.ua Wed Nov 10 16:18:10 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Nov 10 08:19:21 2004 Subject: SplitToWords In-Reply-To: Message-ID: On 11/10/04 4:07 PM, "jda" wrote: >>> What I've tried with v2 now is to "hijack" an existing indexed field >>> (e.g. authors) and use it to get the splittowords result. This works, >>> but if I call it repeatedly from different methods -> crash. So I'm >>> thinking I need to create a table and a field dedicated to just this >>> one function. >> >> NO !!!!!!!!!!!!!!!!!!!!!!!!!! >> >> You need call SplitToWords using that field into which you will store >> string. >> > > I haven't heard you yell like that for a long time! :-) > > I'm not storing the string anywhere. > > I'm taking a string that the user types in and creating an SQL query > with it. That's all. And I need that because otherwise I can't > prepare the SQL search properly for indexedByWord fields. That's why > I wanted something like s = Valentina.SplitToWords. Ok, but you do search on some field? Then use THIS field fld.SplitWords() Other filed with other IndexStyle can return other results. You see -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From sunshine at public.kherson.ua Wed Nov 10 23:04:29 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Nov 10 15:05:39 2004 Subject: Joins in V4RB 2b24 In-Reply-To: Message-ID: On 11/10/04 6:29 PM, "Frank Schima" wrote: Hi Frank, > I've been eagerly watching the releases for V4RB 2. I'm sorry I haven't > been doing more testing. I definitely plan to once certain aspects of > the kernel are ready so I can test my existing projects. > > Anyway, are inner and outer joins supposed to be working now? Yes. Works as old syntax so SQL92 syntaax. NOT works only sorting on join. This is the last major feature I must to finish. > Are summation functions with GROUP BY supposed to be working? Yes, and HAVING also. Also work syb-queries, UNION, EXCEPT, INTERSECT, Ivan have told that we have implement even type of queries that Oracle do not have :-) Although as I remember we have not implement sub-query that depend on external table. > I will test this if so. I suppose that is why I was converting the > _Tests project to version 2. I want to see what is supposed to work. > Have you got that project running successfully? I did not check it yet. > Thanks for your work on ViSQL! -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From jda at his.com Thu Nov 11 09:50:58 2004 From: jda at his.com (jda) Date: Thu Nov 11 08:51:07 2004 Subject: Searching for an empty/non-empty field In-Reply-To: References: Message-ID: Does anyone know how to search for an empty/non-empty indexedByWords field in v2? The obvious (to me, anyway) solution: select * from theTable where myField='' doesn't work. I also need the converse (searching for a non-empty field). Thanks, Jon From frank-list3 at mindstarprods.com Thu Nov 11 08:03:33 2004 From: frank-list3 at mindstarprods.com (Frank Schima) Date: Thu Nov 11 09:03:59 2004 Subject: Searching for an empty/non-empty field In-Reply-To: References: Message-ID: Hi Jon, On Nov 11, 2004, at 7:50 AM, jda wrote: > Does anyone know how to search for an empty/non-empty indexedByWords > field in v2? The obvious (to me, anyway) solution: > > select * from theTable where myField='' > > doesn't work. > > I also need the converse (searching for a non-empty field). Try this: select * from theTable where len(myField) = 0 and the converse would be: select * from theTable where len(myField) > 0 Both cases would (should) skip Null values. Best regards, Frank Schima p.s. Please don't reply to an unrelated post because Mail sees it as a thread! :^) From jda at his.com Thu Nov 11 10:20:02 2004 From: jda at his.com (jda) Date: Thu Nov 11 09:20:09 2004 Subject: Searching for an empty/non-empty field Message-ID: >Try this: > > select * from theTable where len(myField) = 0 > >and the converse would be: > > select * from theTable where len(myField) > 0 > >Both cases would (should) skip Null values. > Hm, that generates an exception: Internal Error (626688). Sounds like another bug report. BTW, is anyone else out there beta testing V2? There are > 25 issues on the beta bug tracker (http://paradigma.ukrcom.kherson.ua/bt/login_page.php), and I think all but one are from me! I encourage anyone who wants to see v2 be a success to jump in. It's definitely usable now, although still buggy (see above). >p.s. Please don't reply to an unrelated post because Mail sees it as >a thread! :^) > Oops. Done. Jon From sunshine at public.kherson.ua Thu Nov 11 17:42:01 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Thu Nov 11 09:43:22 2004 Subject: Searching for an empty/non-empty field In-Reply-To: Message-ID: On 11/11/04 5:20 PM, "jda" wrote: >> Try this: >> >> select * from theTable where len(myField) = 0 >> >> and the converse would be: >> >> select * from theTable where len(myField) > 0 >> >> Both cases would (should) skip Null values. >> > > Hm, that generates an exception: Internal Error (626688). Sounds like > another bug report. Ivan will check. Jon, may be I have now understand, do you want WHERE fld IS NULL WHERE fld IS NOT NULL ? > BTW, is anyone else out there beta testing V2? There are > 25 issues > on the beta bug tracker > (http://paradigma.ukrcom.kherson.ua/bt/login_page.php), and I think > all but one are from me! I encourage anyone who wants to see v2 be a > success to jump in. It's definitely usable now, although still buggy > (see above). I agree. It is time for V4RB developers to start convert own existed projects to 2.0. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From frank-list3 at mindstarprods.com Thu Nov 11 08:45:12 2004 From: frank-list3 at mindstarprods.com (Frank Schima) Date: Thu Nov 11 09:45:18 2004 Subject: Bug Reporting Message-ID: On Nov 11, 2004, at 8:20 AM, jda wrote: > BTW, is anyone else out there beta testing V2? There are > 25 issues > on the beta bug tracker > (http://paradigma.ukrcom.kherson.ua/bt/login_page.php), and I think > all but one are from me! I encourage anyone who wants to see v2 be a > success to jump in. It's definitely usable now, although still buggy > (see above). I just entered another one. But I totally agree, and hopefully everyone will try to use this nice tracking system. My only qualm with it is that "Other" seems to be the most common sub-category for V4RB bug reports. It seems we at least need a sub-category for "API". Also, the only other person besides Jon and myself to post a V4RB bug report added many reports into one. But he needs to split it up into many different ones for each issue. Otherwise the bug tracking system does not work. Best regards, Frank Schima From frank-list3 at mindstarprods.com Thu Nov 11 08:51:07 2004 From: frank-list3 at mindstarprods.com (Frank Schima) Date: Thu Nov 11 09:51:15 2004 Subject: Bug Reporting In-Reply-To: References: Message-ID: <803E011A-33F9-11D9-B131-0003939246BC@mindstarprods.com> On Nov 11, 2004, at 8:45 AM, Frank Schima wrote: > Also, the only other person besides Jon and myself to post a V4RB bug > report added > many reports into one. But he needs to split it up into many different > ones for each issue. Otherwise the bug tracking system does not work. Oh wait, I think that *was* Jon. And you probably already did this. Sorry for the noise :^). -Frank Schima From sunshine at public.kherson.ua Thu Nov 11 17:52:41 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Thu Nov 11 09:53:56 2004 Subject: Bug Reporting In-Reply-To: Message-ID: On 11/11/04 5:45 PM, "Frank Schima" wrote: >> BTW, is anyone else out there beta testing V2? There are > 25 issues >> on the beta bug tracker >> (http://paradigma.ukrcom.kherson.ua/bt/login_page.php), and I think >> all but one are from me! I encourage anyone who wants to see v2 be a >> success to jump in. It's definitely usable now, although still buggy >> (see above). > > I just entered another one. But I totally agree, and hopefully everyone > will try to use this nice tracking system. My only qualm with it is > that "Other" seems to be the most common sub-category for V4RB bug > reports. It seems we at least need a sub-category for "API". No problems! If you see need for some CATEGORY in the mantis projects let me know and I will add them. So what else except API ? > Also, the only other person besides Jon and myself to post a V4RB bug > report added > many reports into one. But he needs to split it up into many different > ones for each issue. Otherwise the bug tracking system does not work. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From frank-list3 at mindstarprods.com Thu Nov 11 09:06:18 2004 From: frank-list3 at mindstarprods.com (Frank Schima) Date: Thu Nov 11 10:06:29 2004 Subject: Bug Reporting In-Reply-To: References: Message-ID: <9F7461E4-33FB-11D9-B131-0003939246BC@mindstarprods.com> On Nov 11, 2004, at 8:52 AM, Ruslan Zasukhin wrote: >> will try to use this nice tracking system. My only qualm with it is >> that "Other" seems to be the most common sub-category for V4RB bug >> reports. It seems we at least need a sub-category for "API". > > No problems! > > If you see need for some CATEGORY in the mantis projects let me know > and I > will add them. > > So what else except API ? That's all I can think of at the moment. Although, maybe you should rename "Feature" to "Feature Request" to be clear. The same would be true in the "severity" popup where it also appears. Thanks! Frank Schima From sunshine at public.kherson.ua Thu Nov 11 18:10:49 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Thu Nov 11 10:12:07 2004 Subject: Bug Reporting In-Reply-To: <9F7461E4-33FB-11D9-B131-0003939246BC@mindstarprods.com> Message-ID: On 11/11/04 6:06 PM, "Frank Schima" wrote: > >>> will try to use this nice tracking system. My only qualm with it is >>> that "Other" seems to be the most common sub-category for V4RB bug >>> reports. It seems we at least need a sub-category for "API". >> >> No problems! >> >> If you see need for some CATEGORY in the mantis projects let me know >> and I >> will add them. >> >> So what else except API ? > > That's all I can think of at the moment. Although, maybe you should > rename "Feature" to "Feature Request" to be clear. The same would be > true in the "severity" popup where it also appears. Severity menu I cannot control as I see. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From vaccari at dst.units.it Thu Nov 11 18:29:41 2004 From: vaccari at dst.units.it (Franco Vaccari) Date: Thu Nov 11 11:29:51 2004 Subject: Searching for an empty/non-empty field In-Reply-To: References: Message-ID: <4528199F-3407-11D9-967B-000A95BA108C@dst.units.it> Ok, I might be ready in the near future to testing my (quite) large project to work with V4RB2. Two questions: 1) I guess I've lost the link to the V4RB2 beta downloads :-/ 2) Is there a document summarizing the modifications one has to make to the V4RB1.11 code in order to work with V4RB2? Thanks Franco On 11 Nov 2004, at 16:42, Ruslan Zasukhin wrote: >> BTW, is anyone else out there beta testing V2? There are > 25 issues >> on the beta bug tracker >> (http://paradigma.ukrcom.kherson.ua/bt/login_page.php), and I think >> all but one are from me! I encourage anyone who wants to see v2 be a >> success to jump in. It's definitely usable now, although still buggy >> (see above). > > I agree. > > It is time for V4RB developers to start convert own existed projects > to 2.0. > > -- > Best regards, > Ruslan Zasukhin [ I feel the need...the need for speed ] > -------------------- Franco Vaccari Trieste - Italy -------------------- From sunshine at public.kherson.ua Thu Nov 11 19:45:17 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Thu Nov 11 11:46:34 2004 Subject: Searching for an empty/non-empty field In-Reply-To: <4528199F-3407-11D9-967B-000A95BA108C@dst.units.it> Message-ID: On 11/11/04 7:29 PM, "Franco Vaccari" wrote: > Ok, I might be ready in the near future to testing my (quite) large > project to work with V4RB2. Two questions: > > 1) I guess I've lost the link to the V4RB2 beta downloads :-/ http://paradigmasoft.com/download/v2_beta/download.html > 2) Is there a document summarizing the modifications one has to make to > the V4RB1.11 code in order to work with V4RB2? Not yet Good point -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From jda at his.com Thu Nov 11 14:10:02 2004 From: jda at his.com (jda) Date: Thu Nov 11 13:10:11 2004 Subject: Searching for an empty/non-empty field In-Reply-To: References: Message-ID: > > > >> Hm, that generates an exception: Internal Error (626688). Sounds like >> another bug report. > >Ivan will check. > >Jon, may be I have now understand, do you want > > WHERE fld IS NULL > WHERE fld IS NOT NULL > >? Yes, I think so (assuming NULL can be applied to any text field, indexed any way). I tried using NULL with V2 and got one of those weird SQL error windows that you can't dismiss! Jon From jda at his.com Thu Nov 11 14:11:39 2004 From: jda at his.com (jda) Date: Thu Nov 11 13:11:43 2004 Subject: Bug Reporting In-Reply-To: <803E011A-33F9-11D9-B131-0003939246BC@mindstarprods.com> References: <803E011A-33F9-11D9-B131-0003939246BC@mindstarprods.com> Message-ID: >On Nov 11, 2004, at 8:45 AM, Frank Schima wrote: > >>Also, the only other person besides Jon and myself to post a V4RB >>bug report >>added many reports into one. But he needs to split it up into many >>different ones for each issue. Otherwise the bug tracking system >>does not work. > >Oh wait, I think that *was* Jon. And you probably already did this. >Sorry for the noise :^). > Hi Frank, yes it was me! :-> I entered that in the "early days" of mantis, when there were just so many problems I was overwhelmed. Since then I enter one per incident. Jon From sunshine at public.kherson.ua Thu Nov 11 21:18:08 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Thu Nov 11 13:19:30 2004 Subject: Searching for an empty/non-empty field In-Reply-To: Message-ID: On 11/11/04 9:10 PM, "jda" wrote: >> Jon, may be I have now understand, do you want >> >> WHERE fld IS NULL >> WHERE fld IS NOT NULL >> >> ? > > Yes, I think so (assuming NULL can be applied to any text field, > indexed any way). Yes of course > I tried using NULL with V2 and got one of those > weird SQL error windows that you can't dismiss! You mean new window which show some error? Aha, I need disable it. This is console actually. I do not know why REALbasic show it in such way. So our parser say you have error on SQL. Check error. And show us your SQL -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From jda at his.com Thu Nov 11 14:30:48 2004 From: jda at his.com (jda) Date: Thu Nov 11 13:30:54 2004 Subject: Searching for an empty/non-empty field In-Reply-To: References: Message-ID: > > >> I tried using NULL with V2 and got one of those >> weird SQL error windows that you can't dismiss! > >You mean new window which show some error? > >Aha, I need disable it. This is console actually. >I do not know why REALbasic show it in such way. Yes, it is annoying, isn't it? > >So our parser say you have error on SQL. >Check error. >And show us your SQL > I tried this three times just now, each time it crashed: 1. Make a new db 2. SELECT * from thereferences WHERE title = NULL Crash log: Thread 0 Crashed: 0 Kernel_Carbon_Debug.shlb 0x0206ffb8 CastValueType__Q23fbl9Field_ImpCFQ23fbl26smart_ptr + 0x48 1 Kernel_Carbon_Debug.shlb 0x02069584 Find__Q23fbl9Field_ImpCFQ23fbl26smart_ptrQ23fbl25smart_ptr + 0x40 2 Kernel_Carbon_Debug.shlb 0x02369a58 Execute__Q23fbl17PNode_Field_ValueFQ23fbl24smart_ptr + 0x58 3 Kernel_Carbon_Debug.shlb 0x0228434c Execute__Q23fbl4PlanFv + 0x4c 4 Kernel_Carbon_Debug.shlb 0x02215c10 Execute__Q23fbl5QueryFv + 0x7c 5 Kernel_Carbon_Debug.shlb 0x0227b234 Refresh__Q23fbl14Table_IndirectFv + 0x1d0 6 Kernel_Carbon_Debug.shlb 0x0227af78 put_Where__Q23fbl14Table_IndirectFQ23fbl25smart_ptr + ... Jon From sunshine at public.kherson.ua Thu Nov 11 21:36:57 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Thu Nov 11 13:38:10 2004 Subject: [BUG, Ivan] Searching for an empty/non-empty field In-Reply-To: Message-ID: On 11/11/04 9:30 PM, "jda" wrote: > I tried this three times just now, each time it crashed: > > 1. Make a new db > 2. SELECT * from thereferences WHERE title = NULL Jon, Actually correct syntax is SELECT * from thereferences WHERE title IS NULL Ivan, please add to our VSQL_Test_User_Errors group this query SELECT * from thereferences WHERE title = NULL Make sure it not crashes but return error. It will be cool if it will return "It is not correct to use = NULL. You must to use IS NULL." :-) > Crash log: > > Thread 0 Crashed: > 0 Kernel_Carbon_Debug.shlb 0x0206ffb8 > CastValueType__Q23fbl9Field_ImpCFQ23fbl26smart_ptr + > 0x48 > 1 Kernel_Carbon_Debug.shlb 0x02069584 > Find__Q23fbl9Field_ImpCFQ23fbl26smart_ptrQ23fbl25smart_ptr 23fbl6BitSet> > + 0x40 > 2 Kernel_Carbon_Debug.shlb 0x02369a58 > Execute__Q23fbl17PNode_Field_ValueFQ23fbl24smart_ptr + > 0x58 > 3 Kernel_Carbon_Debug.shlb 0x0228434c > Execute__Q23fbl4PlanFv + 0x4c > 4 Kernel_Carbon_Debug.shlb 0x02215c10 > Execute__Q23fbl5QueryFv + 0x7c > 5 Kernel_Carbon_Debug.shlb 0x0227b234 > Refresh__Q23fbl14Table_IndirectFv + 0x1d0 > 6 Kernel_Carbon_Debug.shlb 0x0227af78 > put_Where__Q23fbl14Table_IndirectFQ23fbl25smart_ptr + -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From jda at his.com Thu Nov 11 14:47:12 2004 From: jda at his.com (jda) Date: Thu Nov 11 13:47:15 2004 Subject: [BUG, Ivan] Searching for an empty/non-empty field In-Reply-To: References: Message-ID: > >Jon, > >Actually correct syntax is > SELECT * from thereferences WHERE title IS NULL > > >Ivan, please add to our VSQL_Test_User_Errors group this query > SELECT * from thereferences WHERE title = NULL > >Make sure it not crashes but return error. Thanks for the correction. One more little problem, then. I tried SELECT hit from thereferences WHERE title IS NULL on an empty db and got no match... Jon From sunshine at public.kherson.ua Thu Nov 11 21:50:54 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Thu Nov 11 13:52:09 2004 Subject: [BUG, Ivan] Searching for an empty/non-empty field In-Reply-To: Message-ID: On 11/11/04 9:47 PM, "jda" wrote: >> Actually correct syntax is >> SELECT * from thereferences WHERE title IS NULL >> >> >> Ivan, please add to our VSQL_Test_User_Errors group this query >> SELECT * from thereferences WHERE title = NULL >> >> Make sure it not crashes but return error. > > Thanks for the correction. > > One more little problem, then. > > I tried > > SELECT hit from thereferences WHERE title IS NULL > > on an empty db and got no match... Did not catch. If db is empty. The all right. No match -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From jda at his.com Thu Nov 11 14:59:19 2004 From: jda at his.com (jda) Date: Thu Nov 11 13:59:22 2004 Subject: [BUG, Ivan] Searching for an empty/non-empty field In-Reply-To: References: Message-ID: > > > One more little problem, then. >> >> I tried >> >> SELECT hit from thereferences WHERE title IS NULL >> >> on an empty db and got no match... > >Did not catch. > >If db is empty. The all right. No match > Sorry, I shouldn't have written empty. My databases always have one record -- I meant that this record had no entries in any field. So title IS NULL, but I didn't get a hit. Jon From frank-list3 at mindstarprods.com Thu Nov 11 13:10:08 2004 From: frank-list3 at mindstarprods.com (Frank Schima) Date: Thu Nov 11 14:10:16 2004 Subject: [BUG, Ivan] Searching for an empty/non-empty field In-Reply-To: References: Message-ID: On Nov 11, 2004, at 12:59 PM, jda wrote: >> >> > One more little problem, then. >>> >>> I tried >>> >>> SELECT hit from thereferences WHERE title IS NULL >>> >>> on an empty db and got no match... >> >> Did not catch. >> >> If db is empty. The all right. No match >> > > Sorry, I shouldn't have written empty. My databases always have one > record -- I meant that this record had no entries in any field. So > title IS NULL, but I didn't get a hit. Jon, just to be clear. NULL is different than empty for a text field. Are you sure the field is not simply empty? Best regards, Frank Schima From jda at his.com Thu Nov 11 15:13:41 2004 From: jda at his.com (jda) Date: Thu Nov 11 14:13:49 2004 Subject: [BUG, Ivan] Searching for an empty/non-empty field In-Reply-To: References: Message-ID: >. > >Did not catch. > >If db is empty. The all right. No match > One last piece of info -- if I use title IS NOT NULL it DOES match all records where the title is empty AND when the title field has text (title is VText, indexedByWords, if that matters). So, IS NOT NULL always matches, regardless of whether the field is empty or not. Jon From jda at his.com Thu Nov 11 15:16:16 2004 From: jda at his.com (jda) Date: Thu Nov 11 14:16:19 2004 Subject: [BUG, Ivan] Searching for an empty/non-empty field In-Reply-To: References: Message-ID: >>>> >>> >>>Did not catch. >>> >>>If db is empty. The all right. No match >>> >> >>Sorry, I shouldn't have written empty. My databases always have one >>record -- I meant that this record had no entries in any field. So >>title IS NULL, but I didn't get a hit. > >Jon, just to be clear. NULL is different than empty for a text >field. Are you sure the field is not simply empty? > Well, I *think* it is really NULL. I have this written in the code that updates text fields: if TextField(index).text = "" then myCursor.TextField(fldName).deleteData //set text field to null So, at least in V1.x, I thought this "nulled-out" the field. Jon From sunshine at public.kherson.ua Thu Nov 11 22:17:40 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Thu Nov 11 14:18:56 2004 Subject: [BUG, Ivan] Searching for an empty/non-empty field In-Reply-To: Message-ID: On 11/11/04 9:59 PM, "jda" wrote: >> >>> One more little problem, then. >>> >>> I tried >>> >>> SELECT hit from thereferences WHERE title IS NULL >>> >>> on an empty db and got no match... >> >> Did not catch. >> >> If db is empty. The all right. No match >> > > Sorry, I shouldn't have written empty. My databases always have one > record -- I meant that this record had no entries in any field. So > title IS NULL, but I didn't get a hit. Aha, I see now Ivan fix NULL files for for BLOBs. You have not yet this build. And THIS FIX also have resolve problem with record deletion that you have report -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From sunshine at public.kherson.ua Thu Nov 11 22:32:34 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Thu Nov 11 14:33:49 2004 Subject: FIXED:KERNEL: Crash on double Shutdown() Message-ID: -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From frank-list3 at mindstarprods.com Thu Nov 11 14:25:56 2004 From: frank-list3 at mindstarprods.com (Frank Schima) Date: Thu Nov 11 15:26:03 2004 Subject: Searching for an empty/non-empty field In-Reply-To: <4528199F-3407-11D9-967B-000A95BA108C@dst.units.it> References: <4528199F-3407-11D9-967B-000A95BA108C@dst.units.it> Message-ID: <4679EDDB-3428-11D9-B131-0003939246BC@mindstarprods.com> Hi Franco, On Nov 11, 2004, at 10:29 AM, Franco Vaccari wrote: > 2) Is there a document summarizing the modifications one has to make > to the V4RB1.11 code in order to work with V4RB2? Not yet. It's really pretty easy though. The changes are mostly syntax: Old New VBaseObject VTable ValentinaInit Valentina.Init ValentinaCreate Valentina.Create ValentinaShutdown Valentina.Shutdown ValentinaEscapeString Valentina.EscapeString Then the kv_ constants have gone away and hence the ValentinaUtilties module can now be removed from the project. Instead you must use Class Constants - which really is a much better way to handle this. For instance: kv_SetNull becomes EVOnDeletion.kOnDelete_SetNull At this point code completion becomes very helpful to find out all these new codes. Just type "EV" and tab to see the list of types. Mostly I just try to compile and fix the errors that appear. It's usually pretty straightforward to figure out the new syntax with the help of code completion. The SQL syntax is mostly the same. I believe LIKE has become REGEX now. Best regards, Frank From sunshine at public.kherson.ua Thu Nov 11 23:30:40 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Thu Nov 11 15:32:00 2004 Subject: Searching for an empty/non-empty field In-Reply-To: <4679EDDB-3428-11D9-B131-0003939246BC@mindstarprods.com> Message-ID: On 11/11/04 11:25 PM, "Frank Schima" wrote: > Then the kv_ constants have gone away and hence the ValentinaUtilties > module can now be removed from the project. Instead you must use Class > Constants - which really is a much better way to handle this. For > instance: > > kv_SetNull becomes EVOnDeletion.kOnDelete_SetNull Btw, I have polish this. In next build EVOnDeletion.kSetNull -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From sunshine at public.kherson.ua Thu Nov 11 23:31:16 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Thu Nov 11 15:32:30 2004 Subject: Searching for an empty/non-empty field In-Reply-To: <4679EDDB-3428-11D9-B131-0003939246BC@mindstarprods.com> Message-ID: On 11/11/04 11:25 PM, "Frank Schima" wrote: > The SQL syntax is mostly the same. I believe LIKE has become REGEX now. Yes. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From vaccari at dst.units.it Fri Nov 12 16:18:17 2004 From: vaccari at dst.units.it (Franco Vaccari) Date: Fri Nov 12 09:19:30 2004 Subject: Moving to 2.0 [was: Re: Searching...] In-Reply-To: <4679EDDB-3428-11D9-B131-0003939246BC@mindstarprods.com> References: <4528199F-3407-11D9-967B-000A95BA108C@dst.units.it> <4679EDDB-3428-11D9-B131-0003939246BC@mindstarprods.com> Message-ID: <146086BF-34BE-11D9-967B-000A95BA108C@dst.units.it> Thanks Frank! Got something to try during the weekend... Of course I'll backup program and DB, but any DB corruption experienced with the latest V4RB2 beta? Ciao Franco On 11 Nov 2004, at 22:25, Frank Schima wrote: > Hi Franco, > > > On Nov 11, 2004, at 10:29 AM, Franco Vaccari wrote: > >> 2) Is there a document summarizing the modifications one has to make >> to the V4RB1.11 code in order to work with V4RB2? > > Not yet. It's really pretty easy though. The changes are mostly syntax: > > Old New > VBaseObject VTable > ValentinaInit Valentina.Init > ValentinaCreate Valentina.Create > ValentinaShutdown Valentina.Shutdown > ValentinaEscapeString Valentina.EscapeString > > -------------------- Franco Vaccari Trieste - Italy -------------------- From sunshine at public.kherson.ua Fri Nov 12 17:41:22 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Fri Nov 12 09:42:42 2004 Subject: Moving to 2.0 [was: Re: Searching...] In-Reply-To: <146086BF-34BE-11D9-967B-000A95BA108C@dst.units.it> Message-ID: On 11/12/04 5:18 PM, "Franco Vaccari" wrote: > Thanks Frank! > > Got something to try during the weekend... Of course I'll backup > program and DB, but any DB corruption experienced with the latest > V4RB2 beta? Better do it in other way: COPY you current app. And in this folder you will correct app for 2.0. DB from 1.x version cannot be used for now in 2.0 We need yet make Convert() function. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From vaccari at dst.units.it Fri Nov 12 17:57:27 2004 From: vaccari at dst.units.it (Franco Vaccari) Date: Fri Nov 12 10:57:34 2004 Subject: Moving to 2.0 [was: Re: Searching...] In-Reply-To: References: Message-ID: On 12 Nov 2004, at 16:41, Ruslan Zasukhin wrote: > On 11/12/04 5:18 PM, "Franco Vaccari" wrote: > >> Thanks Frank! >> >> Got something to try during the weekend... Of course I'll backup >> program and DB, but any DB corruption experienced with the latest >> V4RB2 beta? > > Better do it in other way: > > COPY you current app. > And in this folder you will correct app for 2.0. > > DB from 1.x version cannot be used for now in 2.0 > We need yet make Convert() function. Ah, good to know... Is the current 2.0 beta format going to change before 2.0 final? And last question before leaving: is there a temporary serial number to use with the beta? Or will it run in demo mode? Or should I use my 1.1 serial? A *very* quick look at documentation didn't answer... Ciao Franco -------------------- Franco Vaccari Trieste - Italy -------------------- From sunshine at public.kherson.ua Fri Nov 12 20:30:24 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Fri Nov 12 14:39:59 2004 Subject: Moving to 2.0 [was: Re: Searching...] In-Reply-To: Message-ID: On 11/12/04 6:57 PM, "Franco Vaccari" wrote: >> Better do it in other way: >> >> COPY you current app. >> And in this folder you will correct app for 2.0. >> >> DB from 1.x version cannot be used for now in 2.0 >> We need yet make Convert() function. > > Ah, good to know... Is the current 2.0 beta format going to change > before 2.0 final? yes > And last question before leaving: is there a temporary serial number to > use with the beta? Use it as is for now > Or will it run in demo mode? No limits for now. When we will be closer to release we will add serials > Or should I use my 1.1 serial? no > A *very* quick look at documentation didn't answer... -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From sunshine at public.kherson.ua Sat Nov 13 01:10:34 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Fri Nov 12 17:11:50 2004 Subject: [V4RB 0000098]: Put .tmp file in Temporary Files folder In-Reply-To: <96d81086a9836b00f1186d2baf60e501@paradigma.ukrcom.kheron.ua> Message-ID: On 11/12/04 4:56 PM, "vbt@paradigma.ukrcom.kherson.ua" wrote: I am not sure this is good idea. What if 2 db with the same name in the different folders? I open them both. They try create dbname.tmp in the TMP folder. Conflict. I think it is of course possible then to use totally unique names... May be > The following issue has been SUBMITTED. > ====================================================================== > > ====================================================================== > Reported By: Jon Ashwell > Assigned To: > ====================================================================== > Project: V4RB > Issue ID: 98 > Category: Feature > Reproducibility: always > Severity: feature > Priority: normal > Status: new > ====================================================================== > Date Submitted: 11-12-2004 16:56 EET > Last Modified: 11-12-2004 16:56 EET > ====================================================================== > Summary: Put .tmp file in Temporary Files folder > Description: > The .tmp files should not be visible to the user, and should be trashed > automatically even if our V-based apps crash. The Temporary File folder > (on OS X, at least) takes care of this. > ====================================================================== > > Issue History > Date Modified Username Field Change > ====================================================================== > 11-12-04 16:56 Jon Ashwell New Issue > ====================================================================== > -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From jda at his.com Fri Nov 12 18:19:45 2004 From: jda at his.com (jda) Date: Fri Nov 12 17:19:57 2004 Subject: [V4RB 0000098]: Put .tmp file in Temporary Files folder In-Reply-To: References: Message-ID: >On 11/12/04 4:56 PM, "vbt@paradigma.ukrcom.kherson.ua" > wrote: > >I am not sure this is good idea. > >What if 2 db with the same name in the different folders? >I open them both. They try create dbname.tmp in the TMP folder. >Conflict. > >I think it is of course possible then to use totally unique names... >May be > The Finder in OS X will automatically add a number to the end of the file name to make it unique... Jon From sunshine at public.kherson.ua Sat Nov 13 12:22:57 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Sat Nov 13 04:24:16 2004 Subject: ViSQL fixes Message-ID: * added menu New database so now we can create empty db with viSQL and continue all rest with help of SQL commands * fixed the Volumes count. now we can see .vdb files -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From sunshine at public.kherson.ua Sat Nov 13 21:15:58 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Sat Nov 13 13:17:15 2004 Subject: [V4RB 0000103]: length()=0 does not work In-Reply-To: Message-ID: On 11/13/04 9:05 PM, "vbt@paradigma.ukrcom.kherson.ua" wrote: > > A NOTE has been added to this issue. > ====================================================================== > > ====================================================================== > Reported By: Jon Ashwell > Assigned To: > ====================================================================== > Project: V4RB > Issue ID: 103 > Category: SQL > Reproducibility: always > Severity: major > Priority: normal > Status: new > ====================================================================== > Date Submitted: 11-13-2004 20:41 EET > Last Modified: 11-13-2004 21:05 EET > ====================================================================== > Summary: length()=0 does not work > Description: > 1. Run my project > 2. New database > 3. Refs -> SQL/Regex search > 4. Enter length(title) = 0 -> no matches > > (Note: if the length of the field is non-zero and you do the search for > that non-zero number, it does find the match correctly). > ====================================================================== > > ---------------------------------------------------------------------- > Ruslan Zasukhin - 11-13-04 20:55 > ---------------------------------------------------------------------- > It and must not work! > > because if value is NULL then only fld IS NULL can find that record!!! > > ---------------------------------------------------------------------- > Jon Ashwell - 11-13-04 21:05 > ---------------------------------------------------------------------- > That may be logical to a computer, but not a human. A NULL field is empty, > right? NOT RIGHT, Jon. NULL is not the same as EMPTY STRING! NULL is not the same as ZERO for numeric fields! This is why exists NULL > But the field exists, right? It's length is 0. If that's a "rule", > I can live with it of course. But it makes sense to me that Valentina > should interpret NULL as empty (0) in the appropriate circumstance. Kind > of like 0 = false and non-zero = true if you apply boolean logic. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From sunshine at public.kherson.ua Sat Nov 13 21:31:44 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Sat Nov 13 13:32:59 2004 Subject: In-Reply-To: Message-ID: On 11/13/04 9:25 PM, "jda" wrote: > I'm tired of talking through a browser... > >> NOT RIGHT, Jon. > >> NULL is not the same as EMPTY STRING! > >> NULL is not the same as ZERO for numeric fields! > >> This is why exists NULL > > You may be technically correct, but it is an empty victory. The NULL > issue is only of technical interest to you, I think. There is no > reason I can think of why a user wouldn't look for a field with a > length of 0 (to the user, it appears NULL) and expect to find a match > if there was nothing entered in it. Then it is your responsibility to build fa?ade for user. > When I do my own searching it doesn't matter what the rules are -- I > will obey them. But since I let my user enter SQL searches manually, > it would be friendlier to them if the logical result was the real > result. Jon. Len(0) never will return records that are NULL. POINT. Not an issue for discussion. This is SQL __standard__ > I've made my point, and I'm not going to press this any more. There > are more important issues to resolve. Yes, and you need think how "resolve" this for your users. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From frank-list3 at mindstarprods.com Sat Nov 13 13:52:23 2004 From: frank-list3 at mindstarprods.com (Frank Schima) Date: Sat Nov 13 14:52:39 2004 Subject: Null vs. Empty In-Reply-To: References: Message-ID: Hi guys, Think of NULL as undefined or unknown. The len() of a Null text field is not defined/unknown and hence not zero. This is standard SQL database behavior - it is also the logical behavior when you think about it. The standard logic matrices for True, False and AND, OR XOR, etc. can be extended to include NULLs. The bottom line is that you, the developer, have to define what *you* want to do with NULLs for your particular application. So standard SQL practice to look for empty or NULL strings is the following: SELECT MyTextField FROM MyTable WHERE len(MyTextField) = 0 OR MyTextField is NULL You could just not allow NULLs for the field. Or make sure that every time a record is added that it be set to an empty string by default. Ruslan, in Valentina 2, can we remove the NULL flag from a Text field? Best regards, Frank On Nov 13, 2004, at 12:31 PM, Ruslan Zasukhin wrote: > On 11/13/04 9:25 PM, "jda" wrote: > >> I'm tired of talking through a browser... >> >>> NOT RIGHT, Jon. >> >>> NULL is not the same as EMPTY STRING! >> >>> NULL is not the same as ZERO for numeric fields! >> >>> This is why exists NULL >> >> You may be technically correct, but it is an empty victory. The NULL >> issue is only of technical interest to you, I think. There is no >> reason I can think of why a user wouldn't look for a field with a >> length of 0 (to the user, it appears NULL) and expect to find a match >> if there was nothing entered in it. > > Then it is your responsibility to build fa?ade for user. > > >> When I do my own searching it doesn't matter what the rules are -- I >> will obey them. But since I let my user enter SQL searches manually, >> it would be friendlier to them if the logical result was the real >> result. > > Jon. > > Len(0) never will return records that are NULL. POINT. > > Not an issue for discussion. > > This is SQL __standard__ > >> I've made my point, and I'm not going to press this any more. There >> are more important issues to resolve. > > Yes, and you need think how "resolve" this for your users. > > -- > Best regards, > Ruslan Zasukhin [ I feel the need...the need for speed ] > ------------------------------------------------------------- > e-mail: ruslan@paradigmasoft.com > web: http://www.paradigmasoft.com > > To subscribe to the Valentina mail list go to: > http://lists.macserve.net/mailman/listinfo/valentina > ------------------------------------------------------------- > > > _______________________________________________ > Valentina-beta mailing list > Valentina-beta@lists.macserve.net > http://lists.macserve.net/mailman/listinfo/valentina-beta > From sunshine at public.kherson.ua Sun Nov 14 00:50:52 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Sat Nov 13 16:52:09 2004 Subject: Null vs. Empty In-Reply-To: Message-ID: On 11/13/04 10:52 PM, "Frank Schima" wrote: > Hi guys, > > > Think of NULL as undefined or unknown. The len() of a Null text field > is not defined/unknown and hence not zero. This is standard SQL > database behavior - it is also the logical behavior when you think > about it. The standard logic matrices for True, False and AND, OR XOR, > etc. can be extended to include NULLs. > > The bottom line is that you, the developer, have to define what *you* > want to do with NULLs for your particular application. > > So standard SQL practice to look for empty or NULL strings is the > following: > > SELECT MyTextField > FROM MyTable > WHERE len(MyTextField) = 0 OR MyTextField is NULL > > You could just not allow NULLs for the field. Or make sure that every > time a record is added that it be set to an empty string by default. > > Ruslan, in Valentina 2, can we remove the NULL flag from a Text field? May be yes, not sure. In any case BLOB fields do NOT use additional bit to keep info about NULL. Internal BLOB's format allow us always say: this is NULL. You see? -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From jda at his.com Sat Nov 13 19:32:21 2004 From: jda at his.com (jda) Date: Sat Nov 13 18:32:32 2004 Subject: Null vs. Empty In-Reply-To: References: Message-ID: >So standard SQL practice to look for empty or NULL strings is the following: > > SELECT MyTextField > FROM MyTable > WHERE len(MyTextField) = 0 OR MyTextField is NULL > >You could just not allow NULLs for the field. Or make sure that >every time a record is added that it be set to an empty string by >default. > >Ruslan, in Valentina 2, can we remove the NULL flag from a Text field? > Thanks, Frank. Actually, I used NULL instead of an empty string in V1.x (where I think you could do that) because that way I saved 128 bytes (the size of my segments) per empty text field -- since I have about 34 text fields per record, and they are often empty, making them NULL instead of an empty string saved a lot of space. Is this still the case in V2, Ruslan? I mean, will an empty text field still take up one segment and a NULL 0? Jon From frank-list3 at mindstarprods.com Sat Nov 13 18:54:46 2004 From: frank-list3 at mindstarprods.com (Frank Schima) Date: Sat Nov 13 19:54:53 2004 Subject: Null vs. Empty In-Reply-To: References: Message-ID: <2947075A-35E0-11D9-B993-0003939246BC@mindstarprods.com> On Nov 13, 2004, at 3:50 PM, Ruslan Zasukhin wrote: >> Ruslan, in Valentina 2, can we remove the NULL flag from a Text field? > > May be yes, not sure. > > In any case BLOB fields do NOT use additional bit to keep info about > NULL. > > Internal BLOB's format allow us always say: this is NULL. > > You see? I understand. Please make sure that fact is documented - i.e. Text fields always have the Nullable flag = true. Best regards, Frank Schima From sunshine at public.kherson.ua Sun Nov 14 09:17:55 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Sun Nov 14 01:19:16 2004 Subject: Null vs. Empty In-Reply-To: Message-ID: On 11/14/04 2:32 AM, "jda" wrote: >> So standard SQL practice to look for empty or NULL strings is the following: >> >> SELECT MyTextField >> FROM MyTable >> WHERE len(MyTextField) = 0 OR MyTextField is NULL >> >> You could just not allow NULLs for the field. Or make sure that >> every time a record is added that it be set to an empty string by >> default. >> >> Ruslan, in Valentina 2, can we remove the NULL flag from a Text field? >> > > Thanks, Frank. > > Actually, I used NULL instead of an empty string in V1.x (where I > think you could do that) because that way I saved 128 bytes (the size > of my segments) per empty text field -- since I have about 34 text > fields per record, and they are often empty, making them NULL instead > of an empty string saved a lot of space. > > Is this still the case in V2, Ruslan? yes > I mean, will an empty text > field still take up one segment and a NULL 0? yes -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From ernestogiannotta at tiscalinet.it Sun Nov 14 19:45:42 2004 From: ernestogiannotta at tiscalinet.it (erne) Date: Sun Nov 14 12:45:54 2004 Subject: V4RB 2 examples - Records_AddDeleteUpdate Message-ID: <634B54E9-366D-11D9-AF12-003065514D2E@tiscalinet.it> Hello Ruslan, I've noticed that the Records_AddDeleteUpdate example does not work it has an error in code where an empty cursor is created: mCursor = mDatabase.SqlSelect( "SELECT * FROM T1 WHERE false") in this read only cursor records can't be added, edited or deleted should be: mCursor = mDatabase.SqlSelect( "SELECT * FROM T1 WHERE false", EVCursorLocation.kServerSide, EVLockType.kReadWrite, EVCursorDirection.kRandom ) I know this is an easy fix but maybe you want to update the example file Cool Runnings, Erne. |er| musical box |ne| a media store From ernestogiannotta at tiscalinet.it Sun Nov 14 19:49:34 2004 From: ernestogiannotta at tiscalinet.it (erne) Date: Sun Nov 14 12:49:44 2004 Subject: V4RB 2 Bind Example Message-ID: Hello Ruslan, I found that the Bind example generates an empty cursor whenever "and" clause is used in query I tried also to remove the bind part but the query still fails 1 field search and "or" searches seem to work fine Cool Runnings, Erne. |er| musical box |ne| a media store From sunshine at public.kherson.ua Sun Nov 14 20:57:13 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Sun Nov 14 12:58:33 2004 Subject: V4RB 2 examples - Records_AddDeleteUpdate In-Reply-To: <634B54E9-366D-11D9-AF12-003065514D2E@tiscalinet.it> Message-ID: On 11/14/04 8:45 PM, "erne" wrote: > Hello Ruslan, > > I've noticed that the Records_AddDeleteUpdate example does not work > it has an error in code where an empty cursor is created: > > mCursor = mDatabase.SqlSelect( "SELECT * FROM T1 WHERE false") > > in this read only cursor records can't be added, edited or deleted > > should be: > > mCursor = mDatabase.SqlSelect( "SELECT * FROM T1 WHERE false", > EVCursorLocation.kServerSide, EVLockType.kReadWrite, > EVCursorDirection.kRandom ) > > > I know this is an easy fix but maybe you want to update the example file Agree Erne, thank you. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From sunshine at public.kherson.ua Sun Nov 14 20:58:08 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Sun Nov 14 12:59:25 2004 Subject: V4RB 2 Bind Example In-Reply-To: Message-ID: On 11/14/04 8:49 PM, "erne" wrote: > Hello Ruslan, > > I found that the Bind example generates an empty cursor > whenever "and" clause is used in query > > I tried also to remove the bind part but the query still fails > > 1 field search and "or" searches seem to work fine Hmm, Can you send me DATABASE + list of queries that you have try -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From jda at his.com Sun Nov 14 14:10:33 2004 From: jda at his.com (jda) Date: Sun Nov 14 13:10:41 2004 Subject: V4RB 2 Bind Example In-Reply-To: References: Message-ID: >On 11/14/04 8:49 PM, "erne" wrote: > >> Hello Ruslan, >> >> I found that the Bind example generates an empty cursor >> whenever "and" clause is used in query >> >> I tried also to remove the bind part but the query still fails >> >> 1 field search and "or" searches seem to work fine > >Hmm, > >Can you send me DATABASE + list of queries that you have try > The database built by the example you distribute fails with an AND query. I reported a similar AND search bug (with LONG fields) this morning with my project (mantis) -- maybe the same bug? Jon From sunshine at public.kherson.ua Sun Nov 14 22:14:35 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Sun Nov 14 14:16:03 2004 Subject: V4RB 2 Bind Example In-Reply-To: Message-ID: On 11/14/04 9:10 PM, "jda" wrote: >> On 11/14/04 8:49 PM, "erne" wrote: >> >>> Hello Ruslan, >>> >>> I found that the Bind example generates an empty cursor >>> whenever "and" clause is used in query >>> >>> I tried also to remove the bind part but the query still fails >>> >>> 1 field search and "or" searches seem to work fine >> >> Hmm, >> >> Can you send me DATABASE + list of queries that you have try >> > > The database built by the example you distribute fails with an AND > query. I reported a similar AND search bug (with LONG fields) this > morning with my project (mantis) -- maybe the same bug? Probably, Sergey will check -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From rbarber at yhb.att.ne.jp Mon Nov 15 13:06:58 2004 From: rbarber at yhb.att.ne.jp (ron barber) Date: Sun Nov 14 22:06:02 2004 Subject: beta 2.0 and unicode In-Reply-To: References: Message-ID: Hi Ruslan Thanks for your work on the new beta. I am just now able to start to test with some Japanese unicode, but I'm not sure where to start. Can I simply replace the VXCMD_Macho_MC of v1.x with the VXCMD_Client_Macho_MC and use the same init procedure and db making procedure? Is there a beta code I need to include instead of my license code? Is there a current list of changed features or is there a searchable archive of the beta list? Sorry to be so ignorant, but I'm looking forward to the new implementations, Ron From sunshine at public.kherson.ua Mon Nov 15 09:49:13 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Mon Nov 15 01:50:33 2004 Subject: beta 2.0 and unicode In-Reply-To: Message-ID: On 11/15/04 6:06 AM, "ron barber" wrote: Hi Ron, We have for now only C++, RB and Director for 2.0. So if you want participate then I'd ask you look at REALbasic. Yes we need Japan testers! > Thanks for your work on the new beta. I am just now able to start to > test with some Japanese unicode, but I'm not sure where to start. > > Can I simply replace the VXCMD_Macho_MC of v1.x with the > VXCMD_Client_Macho_MC and use the same init procedure and db making > procedure? > > Is there a beta code I need to include instead of my license code? > > Is there a current list of changed features or is there a searchable > archive of the beta list? > > Sorry to be so ignorant, but I'm looking forward to the new > implementations, -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From ernestogiannotta at tiscalinet.it Mon Nov 15 09:54:59 2004 From: ernestogiannotta at tiscalinet.it (erne) Date: Mon Nov 15 02:55:13 2004 Subject: V4RB 2 Bind Example In-Reply-To: References: Message-ID: <07FB4F73-36E4-11D9-AF12-003065514D2E@tiscalinet.it> Hi Ruslan, On 14 nov 2004, at 19:58, Ruslan Zasukhin wrote: >> I found that the Bind example generates an empty cursor >> whenever "and" clause is used in query >> >> I tried also to remove the bind part but the query still fails >> >> 1 field search and "or" searches seem to work fine > > Hmm, > > Can you send me DATABASE + list of queries that you have try sure I could but it's just the Bind example in the SQL_Way folder of Examples steps 1 to 5 work fine steps 6 to 9 fail what I'm doing is trying to get familiar with new V4RB2 features and trying all the examples in the order suggested by the Example Guide pdf should I use the bug tracking site to report what I find? BTW have you sorted out the SQLExecute bug in V4RB1.11? I'm about to release an app and I'll have to use 1.10 if a fix doesn't come out Cool Runnings, Erne. |er| musical box |ne| a media store From sunshine at public.kherson.ua Mon Nov 15 10:56:49 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Mon Nov 15 02:58:06 2004 Subject: V4RB 2 Bind Example In-Reply-To: <07FB4F73-36E4-11D9-AF12-003065514D2E@tiscalinet.it> Message-ID: On 11/15/04 10:54 AM, "erne" wrote: >> Can you send me DATABASE + list of queries that you have try > > sure I could > but it's just the Bind example in the SQL_Way folder of Examples > steps 1 to 5 work fine > steps 6 to 9 fail No need Erne. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From ernestogiannotta at tiscalinet.it Mon Nov 15 10:33:37 2004 From: ernestogiannotta at tiscalinet.it (erne) Date: Mon Nov 15 03:33:48 2004 Subject: V4RB Date and Time Separators are null Message-ID: <6D495DD5-36E9-11D9-AF12-003065514D2E@tiscalinet.it> Hello Ruslan, Inspecting the DB properties I find that the DateSeparator and TimeSeparator properties always return the null (Chr(0)) string no matter what I set them to BTW the example Structure browser labels both props as DateSep while the second should of course be TimeSep Cool Runnings, Erne. |er| musical box |ne| a media store From rbarber at yhb.att.ne.jp Mon Nov 15 18:36:03 2004 From: rbarber at yhb.att.ne.jp (ron barber) Date: Mon Nov 15 03:35:04 2004 Subject: beta 2.0 and unicode In-Reply-To: References: Message-ID: On Nov 15, 2004, at 4:49 PM, Ruslan Zasukhin wrote: > On 11/15/04 6:06 AM, "ron barber" wrote: > > We have for now only C++, RB and Director for 2.0. > > So if you want participate then I'd ask you look at REALbasic. I don't have REALbasic. I use Revolution so there is absolutely no need for it ; ) Even if I did have it, it would not answer my Rev. questions and VXCMD problems. So, please let me know on this list when you have a VXCMD ready. Do you plan to put out a VXCMD beta before the final product, if so, when? > > Yes we need Japan testers! I will be glad to do some heavy testing once you have a VXCMD available. I know Lynn is anxious for the Japan market as well. Thanks Ron >> Thanks for your work on the new beta. I am just now able to start to >> test with some Japanese unicode, but I'm not sure where to start. >> >> Can I simply replace the VXCMD_Macho_MC of v1.x with the >> VXCMD_Client_Macho_MC and use the same init procedure and db making >> procedure? >> >> Is there a beta code I need to include instead of my license code? >> >> Is there a current list of changed features or is there a searchable >> archive of the beta list? >> >> Sorry to be so ignorant, but I'm looking forward to the new >> implementations, > > -- > Best regards, > Ruslan Zasukhin [ I feel the need...the need for speed ] > ------------------------------------------------------------- > e-mail: ruslan@paradigmasoft.com > web: http://www.paradigmasoft.com > > To subscribe to the Valentina mail list go to: > http://lists.macserve.net/mailman/listinfo/valentina > ------------------------------------------------------------- > > > _______________________________________________ > Valentina-beta mailing list > Valentina-beta@lists.macserve.net > http://lists.macserve.net/mailman/listinfo/valentina-beta > From sunshine at public.kherson.ua Mon Nov 15 11:40:26 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Mon Nov 15 03:41:47 2004 Subject: beta 2.0 and unicode In-Reply-To: Message-ID: On 11/15/04 11:36 AM, "ron barber" wrote: >> We have for now only C++, RB and Director for 2.0. >> >> So if you want participate then I'd ask you look at REALbasic. > > I don't have REALbasic. I use Revolution so there is absolutely no need > for it ; ) > > Even if I did have it, it would not answer my Rev. questions and VXCMD > problems. So, please let me know on this list when you have a VXCMD > ready. Do you plan to put out a VXCMD beta before the final product, if > so, when? We want ship 2.0 final for C++, V4RB, V4MD. And next month after this ship VXCMD and probably VCOM. >> Yes we need Japan testers! > > I will be glad to do some heavy testing once you have a VXCMD > available. I know Lynn is anxious for the Japan market as well. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From sunshine at public.kherson.ua Mon Nov 15 13:28:05 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Mon Nov 15 05:29:24 2004 Subject: V4RB Date and Time Separators are null In-Reply-To: <6D495DD5-36E9-11D9-AF12-003065514D2E@tiscalinet.it> Message-ID: On 11/15/04 11:33 AM, "erne" wrote: > Hello Ruslan, > > Inspecting the DB properties I find that the DateSeparator and > TimeSeparator properties always return the null (Chr(0)) string > no matter what I set them to Yes I have see this, Erne. > BTW the example Structure browser labels both props as DateSep > while the second should of course be TimeSep ok. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From sunshine at public.kherson.ua Tue Nov 16 19:59:27 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Tue Nov 16 12:00:47 2004 Subject: [V4RB 0000109]: SplitToWords misses apostrophe In-Reply-To: Message-ID: On 11/16/04 7:48 PM, "vbt@paradigma.ukrcom.kherson.ua" wrote: > > The following issue has been SUBMITTED. > ====================================================================== > > ====================================================================== > Reported By: Jon Ashwell > Assigned To: > ====================================================================== > Project: V4RB > Issue ID: 109 > Category: API > Reproducibility: always > Severity: major > Priority: normal > Status: new > ====================================================================== > Date Submitted: 11-16-2004 19:48 EET > Last Modified: 11-16-2004 19:48 EET > ====================================================================== > Summary: SplitToWords misses apostrophe > Description: > If you feed O'Shea to SplitToWords, it comes back > > O'Shea > > instead of > > O Shea Well, then I afraid in the index also comes 2 words instead of one. We need ask the ICU guys about this. I am working now on Collation Attributes. May be here solution exists. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From valentina-list at vermontsoftworks.com Tue Nov 16 14:12:53 2004 From: valentina-list at vermontsoftworks.com (Erik Mueller-Harder) Date: Tue Nov 16 13:13:03 2004 Subject: [V4RB 0000109]: SplitToWords misses apostrophe In-Reply-To: References: Message-ID: <83F51635-3803-11D9-9185-000393DC4766@vermontsoftworks.com> On Nov 16, 2004, at 12:59, Ruslan Zasukhin wrote: >> If you feed O'Shea to SplitToWords, it comes back >> >> O'Shea >> >> instead of >> >> O Shea > > Well, then I afraid in the index also comes 2 words instead of one. > > We need ask the ICU guys about this. Well, here's an excellent example of why we need to be able to set break characters (and categories). I, for one, would *absolutely* want O'Shea to remain intact as one word at all times.... -- Erik From sunshine at public.kherson.ua Tue Nov 16 22:05:49 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Tue Nov 16 14:07:09 2004 Subject: [V4RB 0000109]: SplitToWords misses apostrophe In-Reply-To: <83F51635-3803-11D9-9185-000393DC4766@vermontsoftworks.com> Message-ID: On 11/16/04 9:12 PM, "Erik Mueller-Harder" wrote: > >>> If you feed O'Shea to SplitToWords, it comes back >>> >>> O'Shea >>> >>> instead of >>> >>> O Shea >> >> Well, then I afraid in the index also comes 2 words instead of one. >> >> We need ask the ICU guys about this. > > Well, here's an excellent example of why we need to be able to set > break characters (and categories). I, for one, would *absolutely* want > O'Shea to remain intact as one word at all times.... But IBM guys I think are not stupid.... I think they have solution -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From jda at his.com Tue Nov 16 15:14:04 2004 From: jda at his.com (jda) Date: Tue Nov 16 14:14:17 2004 Subject: [V4RB 0000109]: SplitToWords misses apostrophe In-Reply-To: References: Message-ID: > > > Well, here's an excellent example of why we need to be able to set >> break characters (and categories). I, for one, would *absolutely* want >> O'Shea to remain intact as one word at all times.... > >But IBM guys I think are not stupid.... > >I think they have solution > I'm delighted to have it stay O'Shea as well -- as long as the rules are consistent! If this is how Valentina is indexing O'Shea, that's great. I've also found that smart apostrophes don't count as word breaks, too (O'Shea). Jon From sunshine at public.kherson.ua Tue Nov 16 22:21:37 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Tue Nov 16 14:22:57 2004 Subject: SplitToWords In-Reply-To: Message-ID: On 11/16/04 10:15 PM, "jda" wrote: >>>> Well, then I afraid in the index also comes 2 words instead of one. >>> >>>> We need ask the ICU guys about this. >>> >>> >>> Ruslan, it *should* come back as 2 words (o shea), so the ICU is >>> right. But it comes back as one (o'shea) when you use the Valentina >>> function -- you can see this yourself in the SplitToWords example. >> >> Aha, now I see. >> >> Why you think that it should be 2 words? >> > > They were in Valentina 1.x, that's all. This is not an argument. Valentina 1.x could be wrong. > See my latest email to the > beta list, coming to your mailbox soon... ok -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From sunshine at public.kherson.ua Tue Nov 16 22:22:51 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Tue Nov 16 14:24:10 2004 Subject: [V4RB 0000109]: SplitToWords misses apostrophe In-Reply-To: Message-ID: On 11/16/04 10:14 PM, "jda" wrote: >>> Well, here's an excellent example of why we need to be able to set >>> break characters (and categories). I, for one, would *absolutely* want >>> O'Shea to remain intact as one word at all times.... >> >> But IBM guys I think are not stupid.... >> >> I think they have solution >> > > I'm delighted to have it stay O'Shea as well -- as long as the rules > are consistent! If this is how Valentina is indexing O'Shea, that's > great. Jon, Now you know that these rules make not me and not Paradigma. But IBM guys. And I think Unicode org > I've also found that smart apostrophes don't count as word breaks, > too (O'Shea). -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From jda at his.com Tue Nov 16 15:25:07 2004 From: jda at his.com (jda) Date: Tue Nov 16 14:25:16 2004 Subject: [V4RB 0000109]: SplitToWords misses apostrophe In-Reply-To: References: Message-ID: About consistency -- this search fails in an indexed text field: select id,hit from thereferences where ((left(allFields, 6)='o'shea')) order by id So I don't know how o'shea is actually being indexed. FWIW, searching for o or shea also fails. Jon From valentina-list at vermontsoftworks.com Tue Nov 16 15:45:25 2004 From: valentina-list at vermontsoftworks.com (Erik Mueller-Harder) Date: Tue Nov 16 14:45:32 2004 Subject: [V4RB 0000109]: SplitToWords misses apostrophe In-Reply-To: References: Message-ID: <713AEAF6-3810-11D9-9185-000393DC4766@vermontsoftworks.com> On Nov 16, 2004, at 15:25, jda wrote: > select id,hit from thereferences where ((left(allFields, 6)='o'shea')) > order by id I assume you're escaping o'shea? Is capitalization an issue? -- Erik From valentina-list at vermontsoftworks.com Tue Nov 16 15:49:19 2004 From: valentina-list at vermontsoftworks.com (Erik Mueller-Harder) Date: Tue Nov 16 14:49:26 2004 Subject: [V4RB 0000109]: SplitToWords misses apostrophe In-Reply-To: References: Message-ID: On Nov 16, 2004, at 15:05, Ruslan Zasukhin wrote: >>>> If you feed O'Shea to SplitToWords, it comes back >>>> >>>> O'Shea >>>> >>>> instead of >>>> >>>> O Shea >>> >>> Well, then I afraid in the index also comes 2 words instead of one. >>> >>> We need ask the ICU guys about this. >> >> Well, here's an excellent example of why we need to be able to set >> break characters (and categories). I, for one, would *absolutely* >> want >> O'Shea to remain intact as one word at all times.... > > But IBM guys I think are not stupid.... Of course! It's just that I'm hoping there will be a *flexible* solution, as developers' (and users') needs will vary from circumstance to circumstance -- by which I mean more than merely locale. > I think they have solution As long as *Valentina* will let us have a method to override their solution, if need be.... -- Erik From jda at his.com Tue Nov 16 15:52:19 2004 From: jda at his.com (jda) Date: Tue Nov 16 14:52:28 2004 Subject: [V4RB 0000109]: SplitToWords misses apostrophe In-Reply-To: <713AEAF6-3810-11D9-9185-000393DC4766@vermontsoftworks.com> References: <713AEAF6-3810-11D9-9185-000393DC4766@vermontsoftworks.com> Message-ID: >On Nov 16, 2004, at 15:25, jda wrote: > >>select id,hit from thereferences where ((left(allFields, >>6)='o'shea')) order by id > >I assume you're escaping o'shea? :-) I wasn't, but I did that about 10 minutes ago and now it is found. > >Is capitalization an issue? > No. With collationStrength = 0 searches are case-insensitive. Seems to work now. As I said, as long as things are consistent we'll be fine -- and I prefer that apostrophes NOT be word breaks (which they were in Valentina 1.x). No, the ICU guys aren't dumb... Jon From ernestogiannotta at tiscalinet.it Tue Nov 16 23:38:28 2004 From: ernestogiannotta at tiscalinet.it (erne) Date: Tue Nov 16 16:38:44 2004 Subject: V4RB2 IndexByWords example Message-ID: <3BF7FADA-3820-11D9-898A-003065514D2E@tiscalinet.it> Hello Ruslan, when I run the IndexByWords example this is what I find: fld_text begins with 'he' finds the 'Hellow world' record but it shouldn't since it starts with uppercase 'H'... aha! I see, this is because CollationAttribute of DB is set to 0 fld_text contains 'he' crashes the app fld_text ends with 'he' crashes the app fld_text exact match 'hellow' finds the 'Hellow world' record it's cool, CollationAttribute will allow to get rid of those Uppercase methods fld_text like 'Hello' finds no record, fld_text like 'Hellow world' finds the 'Hellow world' record, is like now supposed to work as an exact match of the whole field containts without regard for what the collation attribute is? BTW it doesn't accept the no_case keyword anymore, this throws a Vale Exception fld_text regex 'ellow' finds the 'Hellow world' record, just as I expected, if I want it case insensitive I must use regex (?i) syntax is the no_case keyword definitely dropped? Cool Runnings, Erne. |er| musical box |ne| a media store From jda at his.com Tue Nov 16 18:52:10 2004 From: jda at his.com (jda) Date: Tue Nov 16 17:52:18 2004 Subject: createVarCharField crash Message-ID: Ruslan, I've adapted this code from my 1.x-based app. It creates a temporary method that should return one of three fields (depending on if any are NULL or not). fld is dimmed as a VField (although I've also tried VVarChar). When this line is run it crashes: fld = myDatabase.myReferences.createVarCharField("authorEditorSortMethod", 2000, "en_US", EVFlag.fNone, "if (authors IS NULL, if (editors IS NULL,title,editors),authors)") The crash log is Thread 0 Crashed: 0 Kernel_Carbon_Final.shlb 0x0209d24c 0x2008000 + 0x9524c 1 Kernel_Carbon_Final.shlb 0x02038a08 0x2008000 + 0x30a08 2 Kernel_Carbon_Final.shlb 0x02272248 0x2008000 + 0x26a248 3 Kernel_Carbon_Final.shlb 0x02037bcc 0x2008000 + 0x2fbcc 4 Kernel_Carbon_Final.shlb 0x0203772c 0x2008000 + 0x2f72c 5 Plugin 0x004f6620 Table_CreateField_Simple__FP16REALobjectStructP16REALstringStructiiP16REALstringStructQ23fbl29smart_ptrQ23fbl29smart_ptr + 0x514 Is this a problem with my code? Or is it a 2.x bug that I should report? Jon From jda at his.com Tue Nov 16 21:11:27 2004 From: jda at his.com (jda) Date: Tue Nov 16 20:11:36 2004 Subject: createVarCharField crash In-Reply-To: References: Message-ID: > Ruslan, > >I've adapted this code from my 1.x-based app. It creates a temporary >method that should return one of three fields (depending on if any >are NULL or not). > >fld is dimmed as a VField (although I've also tried VVarChar). When >this line is run it crashes: > > fld = >myDatabase.myReferences.createVarCharField("authorEditorSortMethod", >2000, "en_US", EVFlag.fNone, "if (authors IS NULL, if (editors IS >NULL,title,editors),authors)") > A little followup. The crash is caused by the "if" method at the end. I've tidied it up using IFNULL: fld = myDatabase.myReferences.createVarCharField("authorEditorSortMethod", 2000, "en_US", EVFlag.fNone, "IFNULL(authors), authors, (IFNULL(editors),editors,title)") but I get a similar crash in Table_CreateField_Simple__ Is there anything wrong with the method (the logic is: if authors, return authors; if no authors, return editors; if no editors, return title). Jon From jda at his.com Wed Nov 17 07:25:04 2004 From: jda at his.com (jda) Date: Wed Nov 17 06:25:13 2004 Subject: createVarCharField crash In-Reply-To: References: Message-ID: > > fld = >myDatabase.myReferences.createVarCharField("authorEditorSortMethod", >2000, "en_US", EVFlag.fNone, "IFNULL(authors), authors, >(IFNULL(editors),editors,title)") Final followup: on closer inspection, that syntax is incorrect. Using this IFNULL(authors, IFNULL(editors,title)) doesn't cause a crash. I think this is now correct. Jon From valentina-list at vermontsoftworks.com Wed Nov 17 11:01:02 2004 From: valentina-list at vermontsoftworks.com (Erik Mueller-Harder) Date: Wed Nov 17 10:01:10 2004 Subject: OID / ObjectsPtr Message-ID: Hi, Ruslan -- I'm curious as to how development is going on the table-independent OID concept. Does this look like something we might be able to try out in the next couple of weeks, or will it take longer? I ask, because I'm suddenly in a position where I think it could be extremely useful: I have a kind of index table with records that should point to records on any of a dozen or so other tables. Being able to store each target's OID rather than a tableID/recID combination might be very nice.... Thanks! -- Erik From sunshine at public.kherson.ua Wed Nov 17 18:20:39 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Nov 17 10:22:04 2004 Subject: OID / ObjectsPtr In-Reply-To: Message-ID: On 11/17/04 6:01 PM, "Erik Mueller-Harder" wrote: Hi Erik, > I'm curious as to how development is going on the table-independent OID > concept. Does this look like something we might be able to try out in > the next couple of weeks, or will it take longer? > I ask, because I'm suddenly in a position where I think it could be > extremely useful: I have a kind of index table with records that > should point to records on any of a dozen or so other tables. Being > able to store each target's OID rather than a tableID/recID combination > might be very nice.... Look. In C++ kernel I have create draft of another new field type ObjectsPtr pointer to OID ^^^ Differ from ObjectPtr pointer to RecID But the more I did think on this the more problems I have see. - no way for cascade deletion. You need walk on all tables of db to check that OID. So it looks to me, you can just use OID self, without any help from engine. OID field work right now, yes? So you can store its values in the some ULLong (8 bytes) field. All rest is up to. Of course in the future I will try to find some more ideas for ObjectsPtr. For example, I think in real task developer will have structure ONE table can point 2-3-4-5 tables. but db have another 10-20 tables. I.e. Exists sense info, ObjectsPtr field about this POSSIBLE Targets. Then we need check only these 5 tables, but do not touch rest 10. This is the only optimization I can invent for now. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From sunshine at public.kherson.ua Wed Nov 17 19:45:08 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Nov 17 11:46:32 2004 Subject: [WARN] Changes in sys tables Message-ID: Hi All, I have support of 8 attributes for Collator of ICU into Valentina. So now these attributes are stored in the sys tables. This means that with next beta you need trash all your existed dbs. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From sunshine at public.kherson.ua Wed Nov 17 22:22:13 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Nov 17 14:23:35 2004 Subject: V4RB2 IndexByWords example In-Reply-To: <3BF7FADA-3820-11D9-898A-003065514D2E@tiscalinet.it> Message-ID: On 11/17/04 12:38 AM, "erne" wrote: Hi Erne, > when I run the IndexByWords example this is what I find: > > fld_text begins with 'he' > finds the 'Hellow world' record but it shouldn't since it starts with > uppercase 'H'... aha! I see, this is because CollationAttribute of DB > is set to 0 > > fld_text contains 'he' > crashes the app > > fld_text ends with 'he' > crashes the app Checking right now....no more crash. Here was fixes. > fld_text exact match 'hellow' > finds the 'Hellow world' record > it's cool, CollationAttribute will allow to get rid of those Uppercase > methods > > fld_text like 'Hello' > finds no record, > fld_text like 'Hellow world' > finds the 'Hellow world' record, > is like now supposed to work as an exact match of the whole field > containts without regard for what the collation attribute is? > BTW it doesn't accept the no_case keyword anymore, this throws a Vale > Exception > > fld_text regex 'ellow' > finds the 'Hellow world' record, > just as I expected, if I want it case insensitive I must use regex (?i) > syntax is the no_case keyword definitely dropped? We have no for now no_case in 2.0 May be better add it back in future -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From sunshine at public.kherson.ua Wed Nov 17 23:11:37 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Nov 17 15:12:58 2004 Subject: [ANN] V4RB 2.0b27 uploaded Message-ID: kernel - 2.0 b27 ================ - 0000110: [Indexes] Memory corruption for TEXT filed + Right(), Locate() V4RB - 2.0 b27 ============== - 0000111: [Change] CollationAttribute for db, table, field. - 0000107: [SQL] AND search on integer field fails - 0000108: [Examples] Link_Binary_Records example won't compile - 0000047: [Feature Request] Search case insensitive BUT sees accents (ForceNoCase plus collation = 2, I think). -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From jda at his.com Wed Nov 17 16:31:04 2004 From: jda at his.com (jda) Date: Wed Nov 17 15:31:14 2004 Subject: [ANN] V4RB 2.0b27 uploaded In-Reply-To: References: Message-ID: > >- 0000111: [Change] CollationAttribute for db, table, field. Sorry, but I don't see an example. My project won't compile -- stops on collationAttribute = 0 and says more parameters are needed. What are they? Jon From jda at his.com Wed Nov 17 17:01:42 2004 From: jda at his.com (jda) Date: Wed Nov 17 16:01:49 2004 Subject: [ANN] V4RB 2.0b27 uploaded In-Reply-To: References: Message-ID: >Sorry, but I don't see an example. My project won't compile -- stops on > >collationAttribute = 0 > >and says more parameters are needed. What are they? > Info for others who might care...I've found that tempDatabase.collationAttribute(EVColAttribute.kStrength)= 0 allows case insensitive, accent insensitive searches. A value of 1 allows case insensitive, accent *sensitive* searches. Lots more options you can set, but it's not clear (to me, at least) what most of them mean yet. Jon From valentina-list at vermontsoftworks.com Wed Nov 17 17:30:17 2004 From: valentina-list at vermontsoftworks.com (Erik Mueller-Harder) Date: Wed Nov 17 16:30:24 2004 Subject: Collation (was: Re: [ANN] V4RB 2.0b27 uploaded) In-Reply-To: References: Message-ID: <41C7C706-38E8-11D9-8267-000393DC4766@vermontsoftworks.com> On Nov 17, 2004, at 17:01, jda wrote: >> Sorry, but I don't see an example. IndexByWordsWithStyle has an example. >> My project won't compile -- stops on >> >> collationAttribute = 0 >> >> and says more parameters are needed. What are they? > > Info for others who might care...I've found that > > tempDatabase.collationAttribute(EVColAttribute.kStrength)= 0 > > allows case insensitive, accent insensitive searches. > > A value of 1 allows case insensitive, accent *sensitive* searches. > > Lots more options you can set, but it's not clear (to me, at least) > what most of them mean yet. I've found useful documentation at HTH, -- Erik From jda at his.com Wed Nov 17 17:39:52 2004 From: jda at his.com (jda) Date: Wed Nov 17 16:40:01 2004 Subject: Collation (was: Re: [ANN] V4RB 2.0b27 uploaded) In-Reply-To: <41C7C706-38E8-11D9-8267-000393DC4766@vermontsoftworks.com> References: <41C7C706-38E8-11D9-8267-000393DC4766@vermontsoftworks.com> Message-ID: >On Nov 17, 2004, at 17:01, jda wrote: > >>>Sorry, but I don't see an example. > >IndexByWordsWithStyle has an example. Good eyes! > >I've found useful documentation at > > > >HTH, > Very much. Thanks. Jon From sunshine at public.kherson.ua Thu Nov 18 07:21:06 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Nov 17 23:22:30 2004 Subject: createVarCharField crash In-Reply-To: Message-ID: On 11/17/04 1:52 AM, "jda" wrote: > Ruslan, > > I've adapted this code from my 1.x-based app. It creates a temporary > method that should return one of three fields (depending on if any > are NULL or not). > > fld is dimmed as a VField (although I've also tried VVarChar). When > this line is run it crashes: > > > fld = > myDatabase.myReferences.createVarCharField("authorEditorSortMethod", > 2000, "en_US", EVFlag.fNone, "if (authors IS NULL, if (editors IS > NULL,title,editors),authors)") > > > The crash log is > > Thread 0 Crashed: > 0 Kernel_Carbon_Final.shlb 0x0209d24c 0x2008000 + 0x9524c > 1 Kernel_Carbon_Final.shlb 0x02038a08 0x2008000 + 0x30a08 > 2 Kernel_Carbon_Final.shlb 0x02272248 0x2008000 + 0x26a248 > 3 Kernel_Carbon_Final.shlb 0x02037bcc 0x2008000 + 0x2fbcc > 4 Kernel_Carbon_Final.shlb 0x0203772c 0x2008000 + 0x2f72c > 5 Plugin 0x004f6620 > Table_CreateField_Simple__FP16REALobjectStructP16REALstringStructiiP16REALstri > ngStructQ23fbl29smart_ptrQ23fbl29smart_ptr rty> > + 0x514 > > > > Is this a problem with my code? Or is it a 2.x bug that I should report? Is it fixed in b27, Jon? -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From jda at his.com Thu Nov 18 08:24:32 2004 From: jda at his.com (jda) Date: Thu Nov 18 07:24:43 2004 Subject: createVarCharField crash In-Reply-To: References: Message-ID: > > > >> fld = >> myDatabase.myReferences.createVarCharField("authorEditorSortMethod", >> 2000, "en_US", EVFlag.fNone, "if (authors IS NULL, if (editors IS >> NULL,title,editors),authors)") >> >> >> The crash log is >> >> Thread 0 Crashed: >> 0 Kernel_Carbon_Final.shlb 0x0209d24c 0x2008000 + 0x9524c >> 1 Kernel_Carbon_Final.shlb 0x02038a08 0x2008000 + 0x30a08 >> 2 Kernel_Carbon_Final.shlb 0x02272248 0x2008000 + 0x26a248 >> 3 Kernel_Carbon_Final.shlb 0x02037bcc 0x2008000 + 0x2fbcc >> 4 Kernel_Carbon_Final.shlb 0x0203772c 0x2008000 + 0x2f72c >> 5 Plugin 0x004f6620 >> >>Table_CreateField_Simple__FP16REALobjectStructP16REALstringStructiiP16REALstri >> >>ngStructQ23fbl29smart_ptrQ23fbl29smart_ptr> rty> >> + 0x514 >> >> >> >> Is this a problem with my code? Or is it a 2.x bug that I should report? > >Is it fixed in b27, Jon? > It was apparently bad sql on my part -- I got it to work in b26 when I used IFNULL instead. I sent that info to the list in case anyone else had this kind of problem. So yes, you can delete the bug report Jon From frank-list3 at mindstarprods.com Thu Nov 18 10:42:32 2004 From: frank-list3 at mindstarprods.com (Frank Schima) Date: Thu Nov 18 11:42:45 2004 Subject: Uploading a Project into Mantis Message-ID: <399493A0-3989-11D9-8251-0003939246BC@mindstarprods.com> Hi Ruslan, What is the proper procedure for submitting a sample project that shows a bug? There does not seem to be any way to upload a project into the Mantis bug tracker. Best regards, Frank From sunshine at public.kherson.ua Thu Nov 18 19:47:15 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Thu Nov 18 11:48:41 2004 Subject: Uploading a Project into Mantis In-Reply-To: <399493A0-3989-11D9-8251-0003939246BC@mindstarprods.com> Message-ID: On 11/18/04 7:42 PM, "Frank Schima" wrote: > Hi Ruslan, > > > What is the proper procedure for submitting a sample project that shows > a bug? There does not seem to be any way to upload a project into the > Mantis bug tracker. Hi Frank, We do not accept files for now. Send it to me -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From jda at his.com Thu Nov 18 14:15:51 2004 From: jda at his.com (jda) Date: Thu Nov 18 13:16:00 2004 Subject: Adding/merging cursors Message-ID: Ruslan, in V2 what would be the best way of merging records in two cursors (e.g. AND or OR). As I recall you can't take two existing cursors and AND or OR them, but you mentioned a long time ago thatin V2 there would be another, easy way to do this. What I'm thinking of is taking two cursors, each of which has all the publications by one author, and ANDing them to see on which works they were co-authors (or ORing them to see the total number of works on which either was an author). Thanks, Jon From valentina-list at vermontsoftworks.com Thu Nov 18 14:32:54 2004 From: valentina-list at vermontsoftworks.com (Erik Mueller-Harder) Date: Thu Nov 18 13:33:04 2004 Subject: Random access in a VSet? Message-ID: Hi, Ruslan -- I was hoping to populate an instance of Einhuger's DataGrid class with data from a VSet. In order to do that, I need to have random access to recIDs in the VSet. I see how to work my way sequentially through a VSet using a VSetIterator, but how can one position oneself at a particular spot in the set? Am I missing something obvious? Thanks! -- Erik From valentina-list at vermontsoftworks.com Thu Nov 18 14:34:40 2004 From: valentina-list at vermontsoftworks.com (Erik Mueller-Harder) Date: Thu Nov 18 13:34:44 2004 Subject: Adding/merging cursors In-Reply-To: References: Message-ID: Hi, Jon -- On Nov 18, 2004, at 14:15, jda wrote: > in V2 what would be the best way of merging records in two cursors > (e.g. AND or OR). As I recall you can't take two existing cursors and > AND or OR them, but you mentioned a long time ago thatin V2 there > would be another, easy way to do this. > > What I'm thinking of is taking two cursors, each of which has all the > publications by one author, and ANDing them to see on which works they > were co-authors (or ORing them to see the total number of works on > which either was an author). I'm not sure about cursors, but have you looked at the wealth of methods available with VSets? Given two sets, you can get differences, intersections, unions, etc. -- Erik From jda at his.com Thu Nov 18 15:19:29 2004 From: jda at his.com (jda) Date: Thu Nov 18 14:19:39 2004 Subject: Adding/merging cursors In-Reply-To: References: Message-ID: >Hi, Jon -- > >On Nov 18, 2004, at 14:15, jda wrote: > >>in V2 what would be the best way of merging records in two cursors >>(e.g. AND or OR). As I recall you can't take two existing cursors >>and AND or OR them, but you mentioned a long time ago thatin V2 >>there would be another, easy way to do this. >> >>What I'm thinking of is taking two cursors, each of which has all >>the publications by one author, and ANDing them to see on which >>works they were co-authors (or ORing them to see the total number >>of works on which either was an author). > >I'm not sure about cursors, but have you looked at the wealth of >methods available with VSets? Given two sets, you can get >differences, intersections, unions, etc. > >-- Erik > Hi Erik, I haven't looked at VSets yet -- there is very little documentation on these, so I really don't know what they are for and how best to use them. If there is a way of getting cursors -> VSets -> cursors, or something else that VSets can do, that might be an answer... Jon From valentina-list at vermontsoftworks.com Thu Nov 18 15:43:13 2004 From: valentina-list at vermontsoftworks.com (Erik Mueller-Harder) Date: Thu Nov 18 14:43:22 2004 Subject: Adding/merging cursors In-Reply-To: References: Message-ID: <7772CF30-39A2-11D9-ACB5-000393DC4766@vermontsoftworks.com> > I haven't looked at VSets yet -- there is very little documentation on > these Yes. I know everything is in development, but I'm beginning to find the lack of documentation a bit of a trial. > so I really don't know what they are for and how best to use them. If > there is a way of getting cursors -> VSets -> cursors, or something > else that VSets can do, that might be an answer... I don't think there's any way to convert between VSets and VCursors. Cursors are obviously the SQL route; sets involve the API approach. Check out the Field_Find example for, well, an example. The results of multiple inquiries against a table can be combined and (apparently) sorted. The final resulting set can be looped through by means of a VSetIterator. I've been dabbling with them and have been quite impressed; they'd be of limited functionality to me, though, without a method for arriving at a particular row (see my "Random access in a VSet?" message from earlier today). I imagine the lack of such a method is probably due to v2's early stage of development. In early October, Olivier asked about the advantages of the API method over standard SQL. I'm including Ruslan's answer below. -- Erik > Good question! > Yes SQL is standard. > YES SQL is perfect for REMOTE database access and control. > > But in the world exists other tasks also, > And SQL sometimes is not the best way. > > -------------------------- > I think in the first turn THE LOCAL db is an issue. > > * SQL is slower because you need spend time to build strings, > then must exists parser which parse strings, > which build trees of nodes, which at last of end do call > the same API function. > > * SQL parser and engine usually need to have powerful analysator and > optimizer which also eat space and time > > * Or look on this. You have table, you have some WHEHRE condition which > select from million records e.g. 10,000 records. > You sort it by f1. > > Now user ask to sort by f2. What you do in SQL way ? > You must again execute the full SQL query, i.e. You again need > PARSER, optimize, do SEARCH WHERE and only now do new ORDER BY > Ah, also cursor need unlock records, > and later again lock records, actually THE SAME records! > > What we have with sets? > You have execute search and get set. > Now you can THIS SET sort many times in different ways. > I.e. When user say SORT BY f2, you do only the final step > > sort( s2, f2 ) > > Cool? I think very cool! From sunshine at public.kherson.ua Thu Nov 18 22:50:27 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Thu Nov 18 14:51:49 2004 Subject: Random access in a VSet? In-Reply-To: Message-ID: On 11/18/04 9:32 PM, "Erik Mueller-Harder" wrote: > Hi, Ruslan -- > > I was hoping to populate an instance of Einhuger's DataGrid class with > data from a VSet. > > In order to do that, I need to have random access to recIDs in the > VSet. I see how to work my way sequentially through a VSet using a > VSetIterator, but how can one position oneself at a particular spot in > the set? Am I missing something obvious? > > Thanks! You are right, there is no API. Hmm. In C++ kernel we have 2 sets: BitSet and ArraySet. ArraySet do have random access operator[i]. BitSet cannot have random access.. In V4RB for simplicity for now I have made only Vset. I was going also add sub-classes for it VBitSet and VArraySet. But them we will need also special Vfield.Find() as VArraySet I need to think on this. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From jda at his.com Thu Nov 18 15:54:43 2004 From: jda at his.com (jda) Date: Thu Nov 18 14:54:50 2004 Subject: Adding/merging cursors In-Reply-To: <7772CF30-39A2-11D9-ACB5-000393DC4766@vermontsoftworks.com> References: <7772CF30-39A2-11D9-ACB5-000393DC4766@vermontsoftworks.com> Message-ID: > >>so I really don't know what they are for and how best to use them. >>If there is a way of getting cursors -> VSets -> cursors, or >>something else that VSets can do, that might be an answer... > >I don't think there's any way to convert between VSets and VCursors. >Cursors are obviously the SQL route; sets involve the API approach. >Check out the Field_Find example for, well, an example. The results >of multiple inquiries against a table can be combined and >(apparently) sorted. The final resulting set can be looped through >by means of a VSetIterator. Hm, sounds like they might be very useful here. How do you pull individual field data out of a VSet record? I don't see anything in sparse docs that there are, and autocomplete doesn't suggest anything obvious. As always, Erik, thanks for the very helpful info. Jon From ernestogiannotta at tiscalinet.it Thu Nov 18 22:10:49 2004 From: ernestogiannotta at tiscalinet.it (erne) Date: Thu Nov 18 15:11:02 2004 Subject: Adding/merging cursors In-Reply-To: References: <7772CF30-39A2-11D9-ACB5-000393DC4766@vermontsoftworks.com> Message-ID: <528CE07C-39A6-11D9-898A-003065514D2E@tiscalinet.it> Hello guys, On 18 nov 2004, at 21:54, jda wrote: >> >>> so I really don't know what they are for and how best to use them. >>> If there is a way of getting cursors -> VSets -> cursors, or >>> something else that VSets can do, that might be an answer... >> >> I don't think there's any way to convert between VSets and VCursors. >> Cursors are obviously the SQL route; sets involve the API approach. >> Check out the Field_Find example for, well, an example. The results >> of multiple inquiries against a table can be combined and >> (apparently) sorted. The final resulting set can be looped through >> by means of a VSetIterator. > > Hm, sounds like they might be very useful here. How do you pull > individual field data out of a VSet record? I don't see anything in > sparse docs that there are, and autocomplete doesn't suggest anything > obvious. > I'm also trying to explore new cool features of V2, but *really need* some (even raw) documentation most function won't even appear in RB autocomplete and I know nothing about parameters expected/needed searching the mail archive yields little or no results Cool Runnings, Erne. |er| musical box |ne| a media store From ernestogiannotta at tiscalinet.it Thu Nov 18 22:34:05 2004 From: ernestogiannotta at tiscalinet.it (erne) Date: Thu Nov 18 15:34:19 2004 Subject: Adding/merging cursors In-Reply-To: <528CE07C-39A6-11D9-898A-003065514D2E@tiscalinet.it> References: <7772CF30-39A2-11D9-ACB5-000393DC4766@vermontsoftworks.com> <528CE07C-39A6-11D9-898A-003065514D2E@tiscalinet.it> Message-ID: <925A8EAD-39A9-11D9-898A-003065514D2E@tiscalinet.it> On 18 nov 2004, at 22:10, erne wrote: > > I'm also trying to explore new cool features of V2, > but *really need* some (even raw) documentation > ooops! sorry... I found the quickreference pdf in the download page it's what I was asking for :-) Cool Runnings, Erne. |er| musical box |ne| a media store From valentina-list at vermontsoftworks.com Thu Nov 18 16:53:23 2004 From: valentina-list at vermontsoftworks.com (Erik Mueller-Harder) Date: Thu Nov 18 15:53:34 2004 Subject: Adding/merging cursors In-Reply-To: References: <7772CF30-39A2-11D9-ACB5-000393DC4766@vermontsoftworks.com> Message-ID: <4499F3AA-39AC-11D9-ACB5-000393DC4766@vermontsoftworks.com> > Hm, sounds like they might be very useful here. How do you pull > individual field data out of a VSet record? I don't see anything in > sparse docs that there are, and autocomplete doesn't suggest anything > obvious. I've gleaned most everything I know from the examples -- though I'll admit that even there, in an effort to make the examples easy to generate & update, some basic elements are obscured. Here's a short bit that works for me (note that this is all via Class methods): Dim vt as MyTableClass Dim vs as VSet Dim vsi as VSetIterator vt = db.myTable vs = vt.lastName.Find(nameString) vsi = vs.MakeNewIterator if vt.GoToRecID(vsi.FirstItem) then editFieldTitle.text = vt.title.value checkBoxAccessible.value = vt.accessible.value ... end if In other words, the VSetIterator returns a recID, which you then use in the table's GoToRecID method. From that point, you can simply refer to the table's field properties (such as "title" and "accessible" in my example) and retrieve their values. Here, I'm getting values only for the first record in the set; I could set up a loop instead, using the VSetIterator.NextItem method. Have fun exploring.... -- Erik From ernestogiannotta at tiscalinet.it Thu Nov 18 22:58:02 2004 From: ernestogiannotta at tiscalinet.it (erne) Date: Thu Nov 18 15:58:14 2004 Subject: V4RB2 IndexByWord Example Message-ID: Hello Ruslan, just downloaded new beta and testing IndexByWord Example it doesn't crash anymore :-) but still find something weird: fld_text begins with 'hell' finds the 'Hellow world' record fld_text contains 'hell' finds no record fld_text contains 'Hell' finds the 'Hellow world' record i.e. contains is case sensitive even if CollationStrenght is set to kPrimary the same applies to ends with, i.e. fld_text ends with 'Low' finds no record fld_text ends with 'low' finds the 'Hellow world' record the same happens either with SQL way or with API way Cool Runnings, Erne. |er| musical box |ne| a media store From sunshine at public.kherson.ua Fri Nov 19 02:20:10 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Thu Nov 18 18:21:32 2004 Subject: V4RB2 IndexByWord Example In-Reply-To: Message-ID: On 11/18/04 11:58 PM, "erne" wrote: Hi Erne, > just downloaded new beta and testing IndexByWord Example > it doesn't crash anymore :-) > > but still find something weird: > fld_text begins with 'hell' finds the 'Hellow world' record But this is correct. Why you think this is wrong ?? > fld_text contains 'hell' finds no record > > fld_text contains 'Hell' finds the 'Hellow world' record > i.e. contains is case sensitive even if CollationStrenght is set to > kPrimary > > the same applies to ends with, i.e. > fld_text ends with 'Low' finds no record > > fld_text ends with 'low' finds the 'Hellow world' record > > > the same happens either with SQL way or with API way I will check rest -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From ernestogiannotta at tiscalinet.it Fri Nov 19 12:38:02 2004 From: ernestogiannotta at tiscalinet.it (erne) Date: Fri Nov 19 05:38:57 2004 Subject: V4RB2 IndexByWord Example In-Reply-To: Message-ID: on 19-11-2004 1:20, Ruslan Zasukhin at sunshine@public.kherson.ua wrote: >> just downloaded new beta and testing IndexByWord Example >> it doesn't crash anymore :-) >> >> but still find something weird: >> fld_text begins with 'hell' finds the 'Hellow world' record > > But this is correct. Why you think this is wrong ?? > no, no I think this is ok sorry, I was not clear this was example of correct behaviour to higlight the wrong one shown below >> fld_text contains 'hell' finds no record >> >> fld_text contains 'Hell' finds the 'Hellow world' record >> i.e. contains is case sensitive even if CollationStrenght is set to >> kPrimary >> >> the same applies to ends with, i.e. >> fld_text ends with 'Low' finds no record >> >> fld_text ends with 'low' finds the 'Hellow world' record >> >> >> the same happens either with SQL way or with API way > > I will check rest > thanks Cool RUnnings, Erne. -- | e r | Ernesto Giannotta | n e | Musical Box - a media store From sunshine at public.kherson.ua Fri Nov 19 18:36:33 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Fri Nov 19 10:37:55 2004 Subject: Adding/merging cursors In-Reply-To: <4499F3AA-39AC-11D9-ACB5-000393DC4766@vermontsoftworks.com> Message-ID: Hi All, Sorry for delay on this issue. This is my answers. 1) there is no yet API to add cursors. 2) I will add in near days 3 new functions Union( t1 as Vtable, t2 as Vtable ) as Vtable. Intersection() Except() If REALBasic could work normally with interfaces then we'd have ideal solution: Cursor can be transformed into Vtable or I_Table and then you can use above 3 funcs. For now this can not work because of bugs in RB. 3) Do not forget that now you can do UNION directly in SQL, so this eliminate need of adding of cursors. ------------------- 4) Vset is very very simple conception. You have table. 1000 records. you make some search. you get some set of found records, e.g. 100 records. this set you can think as ARRAY OF RecIDs. so all rest work is as simple as you get some RecID, and use Vtable class directly to go to that record and use it. SQL Cursor, in background also use Sets. SQL Cursors can do JOINS. But Sets work only with single table. 5) we make docs guys. Just Valentina now become so huge. V4RB Ref now is more of 110 pages, and will be I think more of 150. Also we have prepare about 50 new pictures for ValentinaKernel.pdf. I think we can just ship for you now just pictures with no comments. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From ernestogiannotta at tiscalinet.it Sun Nov 21 19:40:43 2004 From: ernestogiannotta at tiscalinet.it (erne) Date: Mon Nov 22 10:42:53 2004 Subject: V4RB2 IndexByWordsWithStyle Message-ID: Hi Ruslan, testing the IndexByWordsWithStyle example here's what I find: fld_varchar begins with 'god' finds the 'In God we trust' record but it should not I think since IndexStyle.IgnoreLength = 3 fld_varchar begins with 'we' finds no record and that's what I expect i.e. the style is acting like IndexStyle.IgnoreLength is set to 2 Cool Runnings, Erne. |er| musical box |ne| a media store From sunshine at public.kherson.ua Mon Nov 22 18:44:59 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Mon Nov 22 10:46:35 2004 Subject: V4RB2 IndexByWordsWithStyle In-Reply-To: Message-ID: On 11/21/04 8:40 PM, "erne" wrote: > Hi Ruslan, > > testing the IndexByWordsWithStyle example > here's what I find: > > fld_varchar begins with 'god' > finds the 'In God we trust' record but it should not I think since > IndexStyle.IgnoreLength = 3 > > fld_varchar begins with 'we' > finds no record and that's what I expect > > i.e. the style is acting like IndexStyle.IgnoreLength is set to 2 Ok, thank you Erne, I will check this. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From ernestogiannotta at tiscalinet.it Sun Nov 21 20:14:08 2004 From: ernestogiannotta at tiscalinet.it (erne) Date: Mon Nov 22 11:06:40 2004 Subject: V4RB2 Like keyword Message-ID: <84E37677-3BF1-11D9-898A-003065514D2E@tiscalinet.it> Hello Ruslan testing the index by word example here's what I find fld_varchar like '%xxxx' finds all the records but it shouldn't I think Cool Runnings, Erne. |er| musical box |ne| a media store From ernestogiannotta at tiscalinet.it Mon Nov 22 21:32:12 2004 From: ernestogiannotta at tiscalinet.it (erne) Date: Mon Nov 22 14:32:25 2004 Subject: V4RB2 vLink Message-ID: <96E02AC6-3CC5-11D9-898A-003065514D2E@tiscalinet.it> hello Ruslan, looking into new vLink class and have some questions we create BinaryLink with DB method: DB.CreateBinaryLink( inName as String, inLeftTable as VTable, inRightTable as VTable, [inLeftPower as Integer = 1], [inRightPower as Integer = 0], // 1 : M [inOnDelete as integer = 1], [inStorageType as integer = 0], // kDefault inTemporary as Boolean = false) As VLink how can we delete this if we don't need it anymore? so the vLink object knows the Tables it is linking but when we want to find linked we must call: vLink.FindLinked( inRecID as Integer, inTableA as VTable, inTableB as VTable ) as VSet why must we specify the tables here? mmm... I see, we need specify the direction of desired link so it could also be implemented by index as in: vLink.FindLinked( inRecID as Integer, inTableA as Integer, inTableB as Integer ) as VSet after all we are required to know the Index order of linked tables if we must link records by: vLink.LinkRecords( inRecIDs() as Integer ) anyway, to specify the 2nd table seems redundant as we have: vLink.DeleteLinkedRecords( inRecID as Integer, inTableA as VTable ) vLink.DeleteAllLinkedRecords( inTableA as VTable ) so it should be enough: vLink.FindLinked( inRecID as Integer, inTableA as [VTable or Integer] ) as VSet unless vLink will be able to link more than 2 tables in the future in which case the LinkRecords, DeleteLinkedRecords and DeleteAllLinkedRecords methods must be updated What the BranchCount property indicates? Can it be more than 2? Why the Owner must be one of the linked tables? Can't vLink live at DB level? What exactly Temporary means? The link will be deleted on DB.Close? and finally, how can vLink be used via SQL? Thanks for listening (and, of course, for all these new supercool features :-) Cool Runnings, Erne. |er| musical box |ne| a media store From jda at his.com Thu Nov 25 12:58:02 2004 From: jda at his.com (jda) Date: Thu Nov 25 11:58:11 2004 Subject: SQL search should require escaped characters, no? Message-ID: Hi Ruslan, In b28 I find that select * from myTable where title='a.b.c' finds a record with a.b.c in the title field. I thought it should fail (and was using 'a\.b\.c' as the search string, which didn't work). In contrast, the same search done as REGEX requires the periods to be escaped. This seems inconsistent -- I thought you always had to escape strings in SQL. Is this a bug I should report? Jon P.S. Happy Thanksgiving everyone (where ever you are)! From sunshine at public.kherson.ua Thu Nov 25 20:07:09 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Thu Nov 25 12:07:19 2004 Subject: SQL search should require escaped characters, no? In-Reply-To: Message-ID: On 11/25/04 7:58 PM, "jda" wrote: Hi Jon, > In b28 I find that > > select * from myTable where title='a.b.c' > > finds a record with a.b.c in the title field. > > I thought it should fail (and was using 'a\.b\.c' as the search > string, which didn't work). In contrast, the same search done as > REGEX requires the periods to be escaped. > > This seems inconsistent -- I thought you always had to escape strings in SQL. 1) you always need EscapeString() using parameter inForRegEx = false. in this mode only SINGLE QUOTE and BACK SLASH will be escaped. so DOT will not be escaped. 2) for REGEX search the DOT (and other chars) will be escapped > Is this a bug I should report? This is not a bug. > Jon > > P.S. Happy Thanksgiving everyone (where ever you are)! -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina ------------------------------------------------------------- From jda at his.com Fri Nov 26 09:20:10 2004 From: jda at his.com (jda) Date: Fri Nov 26 08:20:21 2004 Subject: Merging searches Message-ID: Hi, Sorry to revisit this issue, but I thought I had it licked (and don't). Rather than ask for a feature, I thought I'd outline the problem and ask how it might be solved. I have search queries stored so I can create "smart groups" (a la iTunes). I want the user to be able to select multiple groups at once (as many as he likes), and have my app return the records common to all (AND) or all the records found in any (OR). I've seen reference to an sql UNION command (which I think Ruslan mentioned is supported in v2), which may be good for the records common to all. I've also seen that there is a UNION ALL command (supported by v2?), which looks like it would be useful for getting all the records found in any cursor. Or is there some other way? My question is, what is the best (simplest and most efficient) way to do this in Valentina 2? Thanks, Jon From jda at his.com Fri Nov 26 09:49:47 2004 From: jda at his.com (jda) Date: Fri Nov 26 08:49:57 2004 Subject: Merging searches In-Reply-To: References: Message-ID: >I have search queries stored so I can create "smart groups" (a la >iTunes). I want the user to be able to select multiple groups at >once (as many as he likes), and have my app return the records >common to all (AND) or all the records found in any (OR). > >My question is, what is the best (simplest and most efficient) way >to do this in Valentina 2? > Hm, let me propose an answer to my own question. How does this sound: 1. Do a query and collect the RecIDs in an array. 2. Do another query, and see if the recID of each hit is already in the array or not. Then keep it or remove it (depending if the user is ANDing or ORing the groups). 3. Repeat until all groups are done. 4. Sort the array and remove duplicates. 5. Do a final query for all records by 'WHERE RecID = x OR RecID = y...', using the values in the array. I don't see any flaws with this... Jon From ernestogiannotta at tiscalinet.it Fri Nov 26 16:11:47 2004 From: ernestogiannotta at tiscalinet.it (erne) Date: Fri Nov 26 09:12:10 2004 Subject: Merging searches In-Reply-To: Message-ID: on 26-11-2004 15:49, jda at jda@his.com wrote: >> My question is, what is the best (simplest and most efficient) way >> to do this in Valentina 2? >> > > Hm, let me propose an answer to my own question. How does this sound: > > 1. Do a query and collect the RecIDs in an array. > 2. Do another query, and see if the recID of each hit is already in > the array or not. Then keep it or remove it (depending if the user is > ANDing or ORing the groups). > 3. Repeat until all groups are done. > 4. Sort the array and remove duplicates. > 5. Do a final query for all records by 'WHERE RecID = x OR RecID = > y...', using the values in the array. > what about "Where Recid in x, y..." ? Cool Runnings, Erne. -- | e r | Ernesto Giannotta | n e | Musical Box - a media store From jda at his.com Fri Nov 26 10:24:49 2004 From: jda at his.com (jda) Date: Fri Nov 26 09:25:02 2004 Subject: Merging searches In-Reply-To: References: Message-ID: > > > 5. Do a final query for all records by 'WHERE RecID = x OR RecID = >> y...', using the values in the array. >> > >what about "Where Recid in x, y..." ? > Hm, I didn't know you could use that syntax? Is it any faster (it certainly is more compact!)? Jon From ernestogiannotta at tiscalinet.it Fri Nov 26 16:36:15 2004 From: ernestogiannotta at tiscalinet.it (erne) Date: Fri Nov 26 09:36:35 2004 Subject: Merging searches In-Reply-To: Message-ID: on 26-11-2004 16:24, jda at jda@his.com wrote: >>> 5. Do a final query for all records by 'WHERE RecID = x OR RecID = >>> y...', using the values in the array. >>> >> >> what about "Where Recid in x, y..." ? >> > > Hm, I didn't know you could use that syntax? Is it any faster (it > certainly is more compact!)? > I've not checked now, but IIRC it's implemented faster? don't know cooler? you bet! :-) Cool Runnings, Erne. -- | e r | Ernesto Giannotta | n e | Musical Box - a media store From jda at his.com Fri Nov 26 10:39:27 2004 From: jda at his.com (jda) Date: Fri Nov 26 09:39:34 2004 Subject: Merging searches In-Reply-To: References: Message-ID: > > >> what about "Where Recid in x, y..." ? >>> >> >> Hm, I didn't know you could use that syntax? Is it any faster (it >> certainly is more compact!)? >> > >I've not checked now, but IIRC it's implemented > >faster? don't know > >cooler? you bet! :-) > I checked -- you can do this in Valentina 2. Much nicer. Thanks! Jon From ernestogiannotta at tiscalinet.it Fri Nov 26 16:47:40 2004 From: ernestogiannotta at tiscalinet.it (erne) Date: Fri Nov 26 09:47:58 2004 Subject: Merging searches In-Reply-To: Message-ID: on 26-11-2004 16:39, jda at jda@his.com wrote: >> >>>> what about "Where Recid in x, y..." ? >>>> >>> >>> Hm, I didn't know you could use that syntax? Is it any faster (it >>> certainly is more compact!)? >>> >> >> I've not checked now, but IIRC it's implemented >> >> faster? don't know >> >> cooler? you bet! :-) >> > > I checked -- you can do this in Valentina 2. Much nicer. Thanks! > not sure, but I think this should work on vale 1.10 and later also (I'm sure I'm using this coupled with the split function of RB ;-) Cool Runnings, Erne. -- | e r | Ernesto Giannotta | n e | Musical Box - a media store From ernestogiannotta at tiscalinet.it Sun Nov 28 19:37:38 2004 From: ernestogiannotta at tiscalinet.it (erne) Date: Sun Nov 28 12:37:51 2004 Subject: V4RB2 - Method_Create example Message-ID: <94227E8E-416C-11D9-8B9F-003065514D2E@tiscalinet.it> Hello Ruslan, runnings the Method_Create example in the Api_Way folder I find that the Upper(VarChar) method fails to update correctly it can't display strings longer than the one that was first input e.g. if first string input is "abra" you get "ABRA" then you input "very cool" you get "VERY" Trying the method Length(VarChar) if first string input is "abra" you get 4 then you input "very cool" you still get 4 Cool Runnings, Erne. |er| musical box |ne| a media store From rbarber at yhb.att.ne.jp Mon Nov 29 13:35:42 2004 From: rbarber at yhb.att.ne.jp (ron barber) Date: Tue Nov 30 06:40:46 2004 Subject: beta 2.0 and unicode In-Reply-To: References: Message-ID: <210363C2-41C0-11D9-AB6F-000A95DAEEF0@yhb.att.ne.jp> Hi again Ruslan Here's hoping things work out in your Ukraine. I've been thinking more about this and decided I would ask why you don't compile a VXCMD for us to test along with the others like RB & Director? It would not necessarily have to be compiled for every small feature change or addition but it might prevent big problems earlier. Thanks Ron On Nov 15, 2004, at 4:49 PM, Ruslan Zasukhin wrote: > On 11/15/04 6:06 AM, "ron barber" wrote: > > Hi Ron, > > We have for now only C++, RB and Director for 2.0. > > So if you want participate then I'd ask you look at REALbasic. > > Yes we need Japan testers! > > >> Thanks for your work on the new beta. I am just now able to start to >> test with some Japanese unicode, but I'm not sure where to start. >> >> Can I simply replace the VXCMD_Macho_MC of v1.x with the >> VXCMD_Client_Macho_MC and use the same init procedure and db making >> procedure? >> >> Is there a beta code I need to include instead of my license code? >> >> Is there a current list of changed features or is there a searchable >> archive of the beta list? >> >> Sorry to be so ignorant, but I'm looking forward to the new >> implementations, > > -- > Best regards, > Ruslan Zasukhin [ I feel the need...the need for speed ] > ------------------------------------------------------------- > e-mail: ruslan@paradigmasoft.com > web: http://www.paradigmasoft.com > > To subscribe to the Valentina mail list go to: > http://lists.macserve.net/mailman/listinfo/valentina > ------------------------------------------------------------- > > > _______________________________________________ > Valentina-beta mailing list > Valentina-beta@lists.macserve.net > http://lists.macserve.net/mailman/listinfo/valentina-beta > From sunshine at public.kherson.ua Tue Nov 30 14:43:25 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Tue Nov 30 06:43:37 2004 Subject: beta 2.0 and unicode In-Reply-To: <210363C2-41C0-11D9-AB6F-000A95DAEEF0@yhb.att.ne.jp> Message-ID: On 11/29/04 6:35 AM, "ron barber" wrote: > Hi again Ruslan > > Here's hoping things work out in your Ukraine. > > I've been thinking more about this and decided I would ask why you > don't compile a VXCMD for us to test along with the others like RB & > Director? It would not necessarily have to be compiled for every small > feature change or addition but it might prevent big problems earlier. Hi Ron, Because this not so simple task. We have change our C++ API, so we need re-write each plugin. I think minimum a week is required to redo EXISTED code. And in 2.0 we have add much more new funcs, So this is another week. -- Best regards, Ruslan Zasukhin [ I feel the need...the need for speed ] ------------------------------------------------------------- e-mail: ruslan@paradigmasoft.com web: http://www.paradigmasoft.com To subscribe to the Valentina mail list go to: http://lists.macserve.net/mailman/listinfo/valentina -------------------------------------------------------------