From sunshine at public.kherson.ua Fri Jun 4 10:24:30 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Fri Jun 4 02:24:47 2004 Subject: UML diagrams for BLOB field Message-ID: Hi All, Just for info: http://paradigmasoft.com/download/v2_beta/tn/BLOB_sequence.htm Here I have upload several diagrams that describe what steps we can do with BLOB 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 frank-list2 at mindstarprods.com Fri Jun 4 20:09:06 2004 From: frank-list2 at mindstarprods.com (Frank Schima) Date: Fri Jun 4 19:10:41 2004 Subject: Feature Request: New Varchar flag Message-ID: <8F491A86-B684-11D8-9FB8-000A95BE1A8E@mindstarprods.com> Hi Ruslan, I'd like to make a feature request for Valentina 2. When creating a new field in the API, I would like to be able to create a Varchar field that is indexed but not indexed by words. Right now it requires 2 lines of code. In V4RB, here is an example: vName = New VVarChar("Name", 504, "ASCII", kV_Nullable) vName.IndexByWords = False So a new flag that indexes, but not by words, would be appreciated. I'm not sure of a good name for it: kV_NotIndexedByWords maybe? Best regards, Frank --- Frank Schima From sunshine at public.kherson.ua Sat Jun 5 08:39:27 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Sat Jun 5 00:39:36 2004 Subject: Feature Request: New Varchar flag In-Reply-To: <8F491A86-B684-11D8-9FB8-000A95BE1A8E@mindstarprods.com> Message-ID: On 6/5/04 3:09 AM, "Frank Schima" wrote: Hi Frank, > I'd like to make a feature request for Valentina 2. When creating a new > field in the API, I would like to be able to create a Varchar field > that is indexed but not indexed by words. Right now it requires 2 lines > of code. > > In V4RB, here is an example: > > vName = New VVarChar("Name", 504, "ASCII", kV_Nullable) > vName.IndexByWords = False > > So a new flag that indexes, but not by words, would be appreciated. I'm > not sure of a good name for it: kV_NotIndexedByWords maybe? If I not mistake, new code simply DO NOT do what is it not asked for. I.e. Even for TEXT field, if you say just create TEXT field INDEXED You will get index not by words, but only on first 255 bytes. You need SELF say create TEXT field INDEXED and INDEX by words To get it We will check this. Or you will check this also in betas. ------------ Also in Valentina 2.0 Valentina can do NON-indexes search by field(s). So if field is not indexed, then V2.0 will not build index for it As did Valentina 1.x But if you SORT on non-indexed field then Valentina still will index it automatically. Just very not effective to do sort without index. -- 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 Dave at TradeBaby.com Tue Jun 8 18:02:50 2004 From: Dave at TradeBaby.com (Dave Parizek) Date: Tue Jun 8 20:03:04 2004 Subject: Valentina-beta Digest, Vol 3, Issue 13 In-Reply-To: <20040521190700.31DF712CBFF@edison.macserve.net> References: <20040521190700.31DF712CBFF@edison.macserve.net> Message-ID: Where do we go to download latest beta of 2.0? its beta 4 now right? I apologize for not knowing this, but I lost my original subscription email, and I can't find on paradigma site... --Dave -- _______________________________________________ Dave Parizek Bookseller Dave@Parizek.com From sunshine at public.kherson.ua Wed Jun 9 07:45:11 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Tue Jun 8 23:45:24 2004 Subject: Valentina-beta Digest, Vol 3, Issue 13 In-Reply-To: Message-ID: On 6/9/04 4:02 AM, "Dave Parizek" wrote: > Where do we go to download latest beta of 2.0? its beta 4 now right? > > I apologize for not knowing this, but I lost my original subscription > email, and I can't find on paradigma site... Hi Dave, URL for download is http://paradigmasoft.com/download/v2_beta/v2_beta.html -- 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 Jun 9 16:04:23 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Jun 9 08:05:18 2004 Subject: Valentina 2 feature requests In-Reply-To: Message-ID: On 6/9/04 3:44 PM, "Peter De Berdt" wrote: Hi Peter, > Hi Ruslan > > I can't seem to post to the Valentina List anymore (spamcop blocks > all my ISP's mails apparently), so I apologize for sending you these > questions directly. I cc to lists. You are on Valentina beta list only ? > I was wondering if it could be possible to bundle the > standalone/client plug-in for REALbasic in one plug-in that could > access both a remote Valentina DB and a local one from the same > application. Yes, we are going to implement this in 2.0. Many developers EXPECTS this as easy thing, although it is very hard. Again, it seems we see the technical way do this. > Let me explain: I've written classes that allow my > REALbasic apps to change language while running (instead of compiling > a different application for each language). I use a local Valentina > database to store the different languages. To avoid unnecessary > overhead (the language file is static) on the network, I want to keep > this language database on the user's computer. > However, I use a different database to hold data from my CRM/ERP app > and this should be multi-user accessible (hosted on Valentina Server). > For the moment, I can't use Valentina for both, because you can only > use one plug-in at the time (OR the client, OR the standalone > version). ok > Could I add a feature request for an additional parameter in the > ImportText function, being the ability to specify the encoding of the > file that is being imported? Already implemented :-) > Most of the files I'll import will be > either MacRoman or WindowsLatin1, and I'll be using UTF-8 to store > all my data in the Valentina 2 DB. Without the possibility to specify > the encoding in ImportText, I have to fall back to: > 1. Converting the whole text file to UTF-8 using RB code, then use ImportText > 2. Write my own import routine in RB to read, convert and add data to > my Valentina DB. > Both will be much slower than being able to let Valentina Engine > handle the conversion I think. ------------------ > I'm eagerly awaiting the release of Valentina 2, have I read it > correctly that it will be released this weekend, or am I wrong? (I > desperately need UTF-8 native support in Valentina) No this is wrong. We are in early beta testing stage 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 Sat Jun 12 19:41:57 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Sat Jun 12 11:42:06 2004 Subject: Can ByRef parameter be default nil ? In-Reply-To: Message-ID: On 6/12/04 7:36 PM, "Charles Yeomans" wrote: >>>> Does this work in REALbasic ? >>>> >>>> "foo(inValue as Variant, outCount byref as Integer = nil )" ? >>> >>> No, that will not work. A ByRef parameter is always bound to a >>> specific >>> variable; you cannot pass in Nil instead. >> >> Ok, thank you Mars. >> >> You think it is not possible allow ByRef parameter to be nil (in >> future)? >> >> >> Compare RB SDK to Macromedia SDK. >> >> in Director I can easy have function with 4 params >> and specify that it can have from 2 to 4 params. >> >> we have in XDK way to check >> >> param count >> param_exists( 3 ) >> >> The same works in pugins for PHP, webSisphon, ... >> >> I think this is more powerful way that we have now in REALbasic SDK. >> Agree? >> > > I think that you should not return values in parameters in Rb. Hi Charles, 1) above point about param_exists() is important not always for task "return in param". 2) then why exists ByRef ? I see only its usage for return of value from function. 3) we really need this Charles in this function for Valentina 2.0 ValueExists( inValue as Variant, outCount byref as Integer, inSelection as VSet = nill ) as boolean Return already taken -- boolean, But this function may return also additional info. And we must not make another function, Charles, Because it make hard search in the index or even in scan of table's column. -- 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 yeomans at desuetude.com Sat Jun 12 13:33:40 2004 From: yeomans at desuetude.com (Charles Yeomans) Date: Sat Jun 12 12:33:51 2004 Subject: Can ByRef parameter be default nil ? In-Reply-To: References: Message-ID: On Jun 12, 2004, at 12:41 PM, Ruslan Zasukhin wrote: > On 6/12/04 7:36 PM, "Charles Yeomans" wrote: > >>>>> Does this work in REALbasic ? >>>>> >>>>> "foo(inValue as Variant, outCount byref as Integer = nil )" ? >>>> >>>> No, that will not work. A ByRef parameter is always bound to a >>>> specific >>>> variable; you cannot pass in Nil instead. >>> >>> Ok, thank you Mars. >>> >>> You think it is not possible allow ByRef parameter to be nil (in >>> future)? >>> >>> >>> Compare RB SDK to Macromedia SDK. >>> >>> in Director I can easy have function with 4 params >>> and specify that it can have from 2 to 4 params. >>> >>> we have in XDK way to check >>> >>> param count >>> param_exists( 3 ) >>> >>> The same works in pugins for PHP, webSisphon, ... >>> >>> I think this is more powerful way that we have now in REALbasic SDK. >>> Agree? >>> >> >> I think that you should not return values in parameters in Rb. > > Hi Charles, > > 1) above point about param_exists() is important not always for > task "return in param". > > 2) then why exists ByRef ? > I see only its usage for return of value from function. > > 3) we really need this Charles in this function for Valentina 2.0 > > ValueExists( inValue as Variant, > outCount byref as Integer, > inSelection as VSet = nill ) as boolean > > Return already taken -- boolean, > But this function may return also additional info. > > And we must not make another function, Charles, > Because it make hard search in the index or even in scan of table's > column. Perhaps; I can't of course say until I see Valentina 2. -------------- Charles Yeomans From vaccari at dst.units.it Mon Jun 14 09:47:34 2004 From: vaccari at dst.units.it (Franco Vaccari) Date: Mon Jun 14 02:47:43 2004 Subject: test Message-ID: <191D5545-BDD7-11D8-BAC5-000A95BA108C@dst.units.it> Sorry, just to check my new subscription to the beta list... -------------------- Franco Vaccari Trieste - Italy -------------------- From crochet at sequentiel.fr Mon Jun 14 17:09:18 2004 From: crochet at sequentiel.fr (serge) Date: Mon Jun 14 10:09:26 2004 Subject: V4MD 2.0 beta Message-ID: <000201c45221$90a753e0$7201a8c0@PCSerge> Hi Where do we go to download V4MD 2.0 beta? Or when.... Thank you Serge From sunshine at public.kherson.ua Mon Jun 14 18:17:06 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Mon Jun 14 10:17:16 2004 Subject: V4MD 2.0 beta In-Reply-To: <000201c45221$90a753e0$7201a8c0@PCSerge> Message-ID: On 6/14/04 6:09 PM, "serge" wrote: > Hi > Where do we go to download V4MD 2.0 beta? > Or when.... Hi Serge, It was not uploaded yet. Well, I think we will make it up to this weekend. -- 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 Jun 16 17:11:07 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Jun 16 09:11:49 2004 Subject: V4RB 2.0b5 uploaded Message-ID: Hi All, http://paradigmasoft.com/download/v2_beta/v2_beta.html 1) download all 3 archives please. 2) also note new PDF file on page 3) look on new structure of examples 4) NEW: in the "API way" examples you can see new feature of Valentina ObjectPtr link foreign key link NEW binary link NEW !!! 5) Also added new class Vlink. 6) also added new class Vset. soon we will add its subclasses VBitSet and VArraySet 7) in the Valentina module added many new constants. 8) simple example on Methods (calculated fields) *** !!! *** Please pay attention to binary logic. For now I do not show yet docs on it. try get its idea self! In short: I believe that Binary Link -- is best of the best to link 2 tables. It is better of ForeignKey and even ObjectPtr! We will explain and proov in the docs why. Note: Valentina do BIG step here. It extend Relational model by new abstraction - Link. --------------- Next beta should show examples: * how links work when we have 2 tables linked by a LINK, and we want FIND related records. * new functions that can work on related tables (!!!) select parent.*, count_linked( parent, childs ) FROM parent this is great feature!!! It already works in kernel. it allow us get RESULT table with aggregative information from related table, but without join or sub-selects! * new syntax from SQL99 SELECT Child.*, Child.prt->parent_field FROM Child I.e. Access to a field of _One_ Table, from Many table. -- 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 Jun 16 10:21:11 2004 From: jda at his.com (jda) Date: Wed Jun 16 09:21:19 2004 Subject: V4RB 2.0b5 uploaded In-Reply-To: References: Message-ID: >Hi All, > > http://paradigmasoft.com/download/v2_beta/v2_beta.html > Just to be sure that this is not supposed to work yet, I get an error with this line in V4RB myDatabase.myData.RecordCount > kMax ^^^^^^^^^^^^ "This method or property does not exist". (RecordCount is highlighted). Jon From sunshine at public.kherson.ua Wed Jun 16 17:28:37 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Jun 16 09:28:55 2004 Subject: V4RB 2.0b5 uploaded In-Reply-To: Message-ID: On 6/16/04 5:21 PM, "jda" wrote: >> Hi All, >> >> http://paradigmasoft.com/download/v2_beta/v2_beta.html >> > > Just to be sure that this is not supposed to work yet, I get an error > with this line in V4RB > > myDatabase.myData.RecordCount > kMax > ^^^^^^^^^^^^ > > "This method or property does not exist". (RecordCount is highlighted). Mmm This Is in your project ? 1) have you note that VBaseObject class renamed to Vtable ? 2) I see that class Vtable do have property RecordCount", "Integer -- 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 Jun 16 10:45:56 2004 From: jda at his.com (jda) Date: Wed Jun 16 09:46:05 2004 Subject: V4RB 2.0b5 uploaded In-Reply-To: References: Message-ID: > > > ^^^^^^^^^^^^ >> >> "This method or property does not exist". (RecordCount is highlighted). > >Mmm > >This Is in your project ? Yes. > >1) have you note that VBaseObject class renamed to Vtable ? No, but I changed all of these and now it gets past that. New error: result = myCursor.Update It looks like the proper syntax here is myCursor.updateRecord Hm, it looks like it's going to be a bigger job to convert to 2.0 than I thought... Jon From jda at his.com Wed Jun 16 10:53:22 2004 From: jda at his.com (jda) Date: Wed Jun 16 09:53:28 2004 Subject: myCursor.add doesn't work In-Reply-To: References: Message-ID: This now fails: result = myCursor.add even though it looks like it should work in the pdf docs. There is an autocomplete for myCursor.addRecord which shouldn't be, because that's a VBaseObject method. It also returns an integer, which I don't see mentioned in the docs. Jon From sunshine at public.kherson.ua Wed Jun 16 18:03:09 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Jun 16 10:03:19 2004 Subject: myCursor.add doesn't work In-Reply-To: Message-ID: On 6/16/04 5:53 PM, "jda" wrote: > This now fails: > > result = myCursor.add > > even though it looks like it should work in the pdf docs. Hmm, looks not updated in docs. Will correct now. Both Vtable and Vcursor classes now have AddRecord DeleteRecord UpdateRecord > There is an autocomplete for > > myCursor.addRecord > > which shouldn't be, because that's a VBaseObject method. It also > returns an integer, which I don't see mentioned in the docs. Yes, now it returns integer. For VTable -- this is RecID of added record. For Vcursor -- this is position in cursor of added record -- 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 Jun 16 18:04:01 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Jun 16 10:04:09 2004 Subject: V4RB 2.0b5 uploaded In-Reply-To: Message-ID: On 6/16/04 5:45 PM, "jda" wrote: >> 1) have you note that VBaseObject class renamed to Vtable ? > > No, but I changed all of these and now it gets past that. > > > New error: > > result = myCursor.Update > > > It looks like the proper syntax here is > > myCursor.updateRecord > > Hm, it looks like it's going to be a bigger job to convert to 2.0 > than I thought... Just Find / Replace, Jon, in the whole project. -- 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 Jun 16 11:23:21 2004 From: jda at his.com (jda) Date: Wed Jun 16 10:23:38 2004 Subject: VBlob.ReadRawData fails In-Reply-To: References: Message-ID: OK, the compile continues. I get an error with this styleInfo = myCursor.BlobField(fldName).readRawData ^^^^^^^^^^^^ "Requires more parameters than were passed." I don't see anything in the docs that suggest a change. Jon From jda at his.com Wed Jun 16 11:40:54 2004 From: jda at his.com (jda) Date: Wed Jun 16 10:41:01 2004 Subject: myCursor.add doesn't work In-Reply-To: References: Message-ID: > > >Yes, now it returns integer. > >For VTable -- this is RecID of added record. > >For Vcursor -- this is position in cursor of added record > If the add fails, is the value set to 0, -1, or what? I used to check for result = true/false. Jon From sunshine at public.kherson.ua Wed Jun 16 20:26:40 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Jun 16 12:26:47 2004 Subject: VBlob.ReadRawData fails In-Reply-To: Message-ID: On 6/16/04 6:23 PM, "jda" wrote: > OK, the compile continues. > > I get an error with this > > styleInfo = myCursor.BlobField(fldName).readRawData > > ^^^^^^^^^^^^ > > "Requires more parameters than were passed." > > I don't see anything in the docs that suggest a change. BLOB field is not yet TESTED. Some methods are commented in V4RB now. You use BLOB ? Tell me please, you read/write BLOB values as the whole? You do not use offsets? We have decide drop offset parameter in the BLOB field. It simplify a lots work. Later we can add BLOB_SMART or BLOB_Stream to work with offset. Will see. There is no yet final decision -- 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 Jun 16 20:26:59 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Jun 16 12:27:06 2004 Subject: myCursor.add doesn't work In-Reply-To: Message-ID: On 6/16/04 6:40 PM, "jda" wrote: >> Yes, now it returns integer. >> >> For VTable -- this is RecID of added record. >> >> For Vcursor -- this is position in cursor of added record >> > > If the add fails, is the value set to 0, -1, or what? I used to check > for result = true/false. It is 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 sunshine at public.kherson.ua Wed Jun 16 20:28:54 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Jun 16 12:29:01 2004 Subject: myCursor.add doesn't work In-Reply-To: Message-ID: On 6/16/04 6:40 PM, "jda" wrote: >> Yes, now it returns integer. >> >> For VTable -- this is RecID of added record. >> >> For Vcursor -- this is position in cursor of added record >> > > If the add fails, is the value set to 0, -1, or what? I used to check > for result = true/false. Jon, Please note. In Valentina 2.0 all functions of Valentina will throw Vexception in case of problems. This means TOTAL changes in the code. So as I have told, I am going add parameter Valentina.DoNotThrow So it will return error in db.Error as Valentina 1.x To not break a lots an existed code. But new projects (or old with time) should be updated to use exceptions. -- 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 Jun 16 20:34:49 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Jun 16 12:34:56 2004 Subject: V4RB Quick Ref corrected Message-ID: * V4RB Quick Ref corrected and uploaded To the beta 2 page added links to SQL grammar BLOB UML diagrams -- 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 Jun 16 14:32:21 2004 From: jda at his.com (jda) Date: Wed Jun 16 13:32:30 2004 Subject: VBlob.ReadRawData fails In-Reply-To: References: Message-ID: > > >BLOB field is not yet TESTED. >Some methods are commented in V4RB now. > >You use BLOB ? Yes, a lot. > >Tell me please, you read/write BLOB values as the whole? >You do not use offsets? I do it as a whole. If I had to do it with offsets, I'd probably read it into a memoryBlock and do it there. Jon From sunshine at public.kherson.ua Wed Jun 16 22:11:15 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Jun 16 14:11:23 2004 Subject: VBlob.ReadRawData fails In-Reply-To: Message-ID: On 6/16/04 9:32 PM, "jda" wrote: >> BLOB field is not yet TESTED. >> Some methods are commented in V4RB now. >> >> You use BLOB ? > > Yes, a lot. > >> >> Tell me please, you read/write BLOB values as the whole? >> You do not use offsets? > > I do it as a whole. > > If I had to do it with offsets, I'd probably read it into a > memoryBlock and do it there. Offset in theory is needed if BLOB value cannot fit into RAM. -- 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 Jun 16 15:33:13 2004 From: jda at his.com (jda) Date: Wed Jun 16 14:33:24 2004 Subject: fieldCount In-Reply-To: References: Message-ID: Ruslan, what's wrong with this statement? u = db.VTable("references").fieldCount (was u = db.VBaseObject("references").fieldCount in V1.x) Jon From sunshine at public.kherson.ua Wed Jun 16 22:38:21 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Jun 16 14:38:28 2004 Subject: fieldCount In-Reply-To: Message-ID: On 6/16/04 10:33 PM, "jda" wrote: > Ruslan, what's wrong with this statement? > > u = db.VTable("references").fieldCount > > (was u = db.VBaseObject("references").fieldCount in V1.x) Should work FieldCount as Integer Not compiles? What about my examples? -- 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 Jun 16 15:45:32 2004 From: jda at his.com (jda) Date: Wed Jun 16 14:45:37 2004 Subject: fieldCount In-Reply-To: References: Message-ID: > > > u = db.VTable("references").fieldCount >> >> (was u = db.VBaseObject("references").fieldCount in V1.x) > >Should work > > FieldCount as Integer > >Not compiles? > >What about my examples? > I looked in a few examples and didn't see equivalent code. In both cases above, db is dimmed as a VDatabase, and the errors are u = db.VTable("references").fieldCount ^^^^^^ "Method or property does not exist." From sunshine at public.kherson.ua Wed Jun 16 22:50:33 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Jun 16 14:50:39 2004 Subject: fieldCount In-Reply-To: Message-ID: On 6/16/04 10:45 PM, "jda" wrote: >> >>> u = db.VTable("references").fieldCount >>> >>> (was u = db.VBaseObject("references").fieldCount in V1.x) >> >> Should work >> >> FieldCount as Integer >> >> Not compiles? >> >> What about my examples? >> > > I looked in a few examples and didn't see equivalent code. > > In both cases above, db is dimmed as a VDatabase, and the errors are > > u = db.VTable("references").fieldCount > ^^^^^^ Simply Table() > "Method or property does not exist." -- 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 Jun 16 15:55:26 2004 From: jda at his.com (jda) Date: Wed Jun 16 14:55:34 2004 Subject: fieldCount In-Reply-To: References: Message-ID: > > > >> u = db.VTable("references").fieldCount >> ^^^^^^ > >Simply Table() > Yup, that works. Thanks. Jon From jda at his.com Wed Jun 16 16:33:41 2004 From: jda at his.com (jda) Date: Wed Jun 16 15:33:49 2004 Subject: SetMethod In-Reply-To: References: Message-ID: After many hours I've finally gotten my project compile! Of course, it crashes. The last line gives a nilObject exception: authors = CreateTextField("authors", 128, "English") authorsMethod = CreateTextField("authorsMethod", 128, "English", kV_IndexByWords) authorsMethod.SetMethod("Upper(authors)") Jon P.S. What "language" should we use for Unicode? From sunshine at public.kherson.ua Thu Jun 17 00:04:40 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Jun 16 16:04:48 2004 Subject: SetMethod In-Reply-To: Message-ID: On 6/16/04 11:33 PM, "jda" wrote: > After many hours I've finally gotten my project compile! Of course, it > crashes. After just few hours :-) > The last line gives a nilObject exception: > > authors = CreateTextField("authors", 128, "English") > authorsMethod = CreateTextField("authorsMethod", 128, "English", > kV_IndexByWords) > authorsMethod.SetMethod("Upper(authors)") This is wrong code! To create method you should send Method text on create. authorsMethod = CreateTextField( "authorsMethod", 128, "English", kV_IndexByWords, "Upper(authors)" ) > Jon > > P.S. What "language" should we use for Unicode? -- 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 Jun 16 17:15:44 2004 From: jda at his.com (jda) Date: Wed Jun 16 16:15:51 2004 Subject: SetMethod In-Reply-To: References: Message-ID: > > After many hours I've finally gotten my project compile! Of course, it >> crashes. > >After just few hours :-) Well, let's say 6-7 (which is OK with me, although I did have to leave so "holes" behind I'll fill in latter, such as dealing with Valentina.doNotThrow). :-> I think you missed this: > > > > > P.S. What "language" should we use for Unicode? > Jon From sunshine at public.kherson.ua Thu Jun 17 00:23:25 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Jun 16 16:23:30 2004 Subject: SetMethod In-Reply-To: Message-ID: On 6/17/04 12:15 AM, "jda" wrote: > I think you missed this: >>> P.S. What "language" should we use for Unicode? We have not clean up yet this area. -- 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 Jun 16 17:35:31 2004 From: jda at his.com (jda) Date: Wed Jun 16 16:35:36 2004 Subject: SetMethod In-Reply-To: References: Message-ID: >On 6/17/04 12:15 AM, "jda" wrote: > >> I think you missed this: > >>>> P.S. What "language" should we use for Unicode? > >We have not clean up yet this area. > OK. I now also see that myCursor = new VCursor(tempDataBase, "select * from references where RecId=0", kServer, kReadWrite) //make an empty cursor returns a non-nil cursor, but the sql statement is empty and trying to access any field gives me a nil error. I guess I should just stop now and wait for future betas... Jon From sunshine at public.kherson.ua Thu Jun 17 10:53:02 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Thu Jun 17 02:53:10 2004 Subject: SetMethod // Binding to Edit fields In-Reply-To: Message-ID: On 6/17/04 12:35 AM, "jda" wrote: >> On 6/17/04 12:15 AM, "jda" wrote: >> >>> I think you missed this: >> >>>>> P.S. What "language" should we use for Unicode? >> >> We have not clean up yet this area. >> > > OK. I now also see that > > myCursor = new VCursor(tempDataBase, "select * from references > where RecId=0", kServer, kReadWrite) //make an empty cursor > > > returns a non-nil cursor, but the sql statement is empty and trying > to access any field gives me a nil error. You mean cursor.SqlString ? Yes, I also have see that it is empty yet. > I guess I should just stop now and wait for future betas... I also think so, I think more important now get your response on overall new design: new classes new constant names new constant access (via module Valentina name) Also we have ideas how to implement in Valentina binding of cursor/table fields to form. For example: I think that if name EditFields in the some window exactly as field names of cursor, then we can make command cursor.BindTo( window ) And this one line will attach corresponded fields to controls, And will self get/set their values. -- 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 Jun 17 08:22:47 2004 From: jda at his.com (jda) Date: Thu Jun 17 07:22:56 2004 Subject: SetMethod // Binding to Edit fields In-Reply-To: References: Message-ID: > > >I think more important now get your response on overall new design: > new classes > new constant names > new constant access (via module Valentina name) So far, they seem reasonable. The one thing I don't really care for is the new exception mechanism, which is inconsistent even in the new release. There are many operations that you *expect* will fail from time to time, and having to create exceptions for them is a pain (especially when converting older code). I know you can put in try/catch blocks if you want to preserve a loop, but to do that for every instance is a nuisance. One example I've mentioned before is AddRecord or UpdateRecord where a field must be unique. It's going to fail occasionally if you are assigning values yourself, and I rely on Valentina to catch the error so I can generate another unique value. Another example would be a warning if you try to open a Valentina 1.x database with 2.x. There are undoubtedly dozens more. As I said, even Valentina 2.0 uses the method of assigning a return value to indicate success or not with such things as result = curs.nextRecord. Imagine having to use exceptions to deal with that! Anyway, this is my initial impression. I know that you will have a command Valentina.doNotThrow, and I plan on using that a lot. Jon From sunshine at public.kherson.ua Thu Jun 17 17:02:39 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Thu Jun 17 09:02:50 2004 Subject: SetMethod // Binding to Edit fields In-Reply-To: Message-ID: On 6/17/04 3:22 PM, "jda" wrote: >> >> >> I think more important now get your response on overall new design: >> new classes >> new constant names BTW, guys, If you adopt old project then I recommend change to new constant names! May happens that similar by name new constants have OTHER VALUES !!! Although do not be in hurry. It seems I have idea how to simulate ENUM types in RB 5.5 So something will change -- 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 Jun 17 17:12:08 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Thu Jun 17 09:12:28 2004 Subject: SetMethod // Binding to Edit fields In-Reply-To: Message-ID: On 6/17/04 3:22 PM, "jda" wrote: >> I think more important now get your response on overall new design: >> new classes >> new constant names >> new constant access (via module Valentina name) > > So far, they seem reasonable. > > The one thing I don't really care for is the new exception mechanism, > which is inconsistent even in the new release. > > There are many operations that you *expect* will fail from time to > time, and having to create exceptions for them is a pain (especially > when converting older code). > I know you can put in try/catch blocks > if you want to preserve a loop, but to do that for every instance is > a nuisance. One example I've mentioned before is AddRecord or > UpdateRecord where a field must be unique. It's going to fail > occasionally if you are assigning values yourself, and I rely on > Valentina to catch the error so I can generate another unique value. Not so simple Jon. Yes, pain is --> write more code. We have the same in C++, Java, C#. But in general such loop loop { try { action } catch { do something } } Can be more effective than loop { action if( error ) << executed on each iteration { do something } } > Another example would be a warning if you try to open a Valentina 1.x > database with 2.x. There are undoubtedly dozens more. > As I said, even Valentina 2.0 uses the method of assigning a return > value to indicate success or not with such things as result = > curs.nextRecord. Imagine having to use exceptions to deal with that! Again not so easy. Yes, NextRecord() return you bool value. If all right, then we expect to get true or false. This is logical result for this function. BUT! NextRecord() is not simple function: - it access many disk files in db to read field values. May happens that something wrong is in DEEP. Then this function will throw Exception. So both -> return and exception are legal for this function, and can happens. Just on exception we put something what happens very rare. > Anyway, this is my initial impression. I know that you will have a > command Valentina.doNotThrow, and I plan on using that a lot. You will need call it just once. And disable exceptions at all. This is for fast upgrade of existed projects. -- 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 Jun 17 16:04:16 2004 From: jda at his.com (jda) Date: Thu Jun 17 15:04:22 2004 Subject: SetMethod // Binding to Edit fields In-Reply-To: References: Message-ID: > > >BTW, guys, > >If you adopt old project then I recommend change to new constant names! > >May happens that similar by name new constants have OTHER VALUES !!! > Is there a new Valentina Utilities? I haven't seen it... Jon From sunshine at public.kherson.ua Fri Jun 18 08:05:07 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Fri Jun 18 00:05:17 2004 Subject: SetMethod // Binding to Edit fields In-Reply-To: Message-ID: On 6/17/04 11:04 PM, "jda" wrote: >> >> BTW, guys, >> >> If you adopt old project then I recommend change to new constant names! >> >> May happens that similar by name new constants have OTHER VALUES !!! >> > > Is there a new Valentina Utilities? I haven't seen it... Plugin now have own Valentina module Type Valentina. And you will get help on its methods and constants -- 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 Jun 18 16:38:47 2004 From: jda at his.com (jda) Date: Fri Jun 18 15:38:57 2004 Subject: SetMethod // Binding to Edit fields In-Reply-To: References: Message-ID: >BTW, guys, > >If you adopt old project then I recommend change to new constant names! > >May happens that similar by name new constants have OTHER VALUES !!! > Hm, what do I use for kTypeBlob? As in this line of code created using Valentina Utilities if myDatabaseCursor.Field(j).Type <> kV_TypeBlob then I don't see anything that looks appropriate in the Valentina. autocomplete... Jon From sunshine at public.kherson.ua Fri Jun 18 23:50:20 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Fri Jun 18 15:50:29 2004 Subject: ENUMS simulations In-Reply-To: Message-ID: On 6/18/04 11:38 PM, "jda" wrote: >> BTW, guys, >> >> If you adopt old project then I recommend change to new constant names! >> >> May happens that similar by name new constants have OTHER VALUES !!! >> > > Hm, what do I use for kTypeBlob? As in this line of code created > using Valentina Utilities > > if myDatabaseCursor.Field(j).Type <> kV_TypeBlob then > > > I don't see anything that looks appropriate in the Valentina. autocomplete... Right, I will add fields. Btw, let's discuss the next idea. Right now module Valentina have mixture of constants from different types and enums. It looks that I can improve this in the next way, And get syntax 100% the same as Java have * I can create in plugin MANY modules with e.g. name ELockType And constants kNoLock, kRadOnly, kReadWrite * then we can write such syntax: db.SqlSelect( query, ECursorType.kServerSide ELockType.kReadOnly, Edirection.ForwardOnly ) Compare to current attempt db.SqlSelect( query, Valentina.kServerSide Valentina.kReadOnly, Valentina.ForwardOnly ) It looks to me that the first way is more clean. And again, Java work with enums in this 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 yeomans at desuetude.com Fri Jun 18 17:11:07 2004 From: yeomans at desuetude.com (Charles Yeomans) Date: Fri Jun 18 16:11:16 2004 Subject: ENUMS simulations In-Reply-To: References: Message-ID: <03D8DDD4-C16C-11D8-90CD-000A957CB4CC@desuetude.com> On Jun 18, 2004, at 4:50 PM, Ruslan Zasukhin wrote: > > Right, I will add fields. > > Btw, let's discuss the next idea. > > Right now module Valentina have mixture of constants from different > types > and enums. > > It looks that I can improve this in the next way, > And get syntax 100% the same as Java have > > * I can create in plugin MANY modules with e.g. name > > ELockType > > And constants > > kNoLock, kRadOnly, kReadWrite > > > * then we can write such syntax: > > db.SqlSelect( > query, > ECursorType.kServerSide > ELockType.kReadOnly, > Edirection.ForwardOnly ) > > > Compare to current attempt > > db.SqlSelect( > query, > Valentina.kServerSide > Valentina.kReadOnly, > Valentina.ForwardOnly ) > > It looks to me that the first way is more clean. > And again, Java work with enums in this way. > As I understand it, the advantage of enumerations is that one can check types at compile time. I don't see that the scheme you propose offers any advantage over Valentina.kCursorServerSide. An alternative here would be to define a query class that has properties like ServerSide as Boolean; indeed, I use such a class myself. But, no matter how much you twist and turn, there doesn't seem to be a way to work around the lack of enumerations for properties that aren't Boolean in a way that provides compile-time checking. Clearly, one can check assignment at runtime and (as I like to do :) raise an exception for invalid values. Charles Yeomans From frank-list2 at mindstarprods.com Fri Jun 18 22:23:36 2004 From: frank-list2 at mindstarprods.com (Frank Schima) Date: Fri Jun 18 21:23:46 2004 Subject: ENUMS simulations In-Reply-To: References: Message-ID: On Jun 18, 2004, at 4:50 PM, Ruslan Zasukhin wrote: > * then we can write such syntax: > > db.SqlSelect( > query, > ECursorType.kServerSide > ELockType.kReadOnly, > Edirection.ForwardOnly ) > > > Compare to current attempt > > db.SqlSelect( > query, > Valentina.kServerSide > Valentina.kReadOnly, > Valentina.ForwardOnly ) > > It looks to me that the first way is more clean. > And again, Java work with enums in this way. It seems like it would make the code slightly easier to read the first way, but harder to write. Now we have to remember all these different Enum types. Since it makes coding more difficult, I am inclined to "vote" for the second way. Maybe as a compromise, you could do it both ways so we can choose which way to code? -Frank From sunshine at public.kherson.ua Sat Jun 19 09:35:46 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Sat Jun 19 01:35:53 2004 Subject: ENUMS simulations // Interface glitches. In-Reply-To: <03D8DDD4-C16C-11D8-90CD-000A957CB4CC@desuetude.com> Message-ID: On 6/19/04 12:11 AM, "Charles Yeomans" wrote: >> Btw, let's discuss the next idea. >> >> Right now module Valentina have mixture of constants from different >> types and enums. >> >> It looks that I can improve this in the next way, >> And get syntax 100% the same as Java have >> >> * I can create in plugin MANY modules with e.g. name >> >> ELockType >> >> And constants >> >> kNoLock, kRadOnly, kReadWrite >> >> >> * then we can write such syntax: >> >> db.SqlSelect( >> query, >> ECursorType.kServerSide >> ELockType.kReadOnly, >> Edirection.ForwardOnly ) >> >> >> Compare to current attempt >> >> db.SqlSelect( >> query, >> Valentina.kServerSide >> Valentina.kReadOnly, >> Valentina.ForwardOnly ) >> >> It looks to me that the first way is more clean. >> And again, Java work with enums in this way. >> > > As I understand it, the advantage of enumerations is that one can > check types at compile time. Absolutely right, Charles. Even more! Value of variable of enum type in DEBUGGER must be shown as constant v kServerSide Right now REALbasic do not have enums, so we need define all variables as integer. And in RB debugger we see v 2 << not many sense, yes? :-) > I don't see that the scheme you propose > offers any advantage over Valentina.kCursorServerSide. Only for developer eye. And I have hope that WHEN REAL implement enums, they can implement it in exactly this way. So our sources, Charles will not require changes when this come e.g. In REALbasic 6.0. Using Valentina.constant syntax, we EXACTLY will go into trap when REAL will add enums, you see? It is not fatal of course. Just mater of find/replace. > An alternative here would be to define a query class that has properties like > ServerSide as Boolean; indeed, I use such a class myself. But, no matter how > much you twist and turn, there doesn't seem to be a way to work around the > lack of enumerations for properties that aren't Boolean in a way that provides > compile-time checking. Clearly, one can check assignment at runtime and (as I > like to do :) raise an exception for invalid values. Problem still can be with the same values. Yes, Charles, I also have told many many times, And I will repeat and repeat this yet many many times, even if I will ruddy on RB lists and even if REAL team will do not like this. I hope that RB community will also add votes to this. So, REALbasic __Langugae__ still have 2 great holes: * enums * interfaces. I think I must not explain to REAL what is enums. They know this perfectly from C++ and CodeWarrior. We already have agree with REAL that Interfaces should support PROPERTIES, Like this do COM, CORBA's idl and Visual BASIC. Then if open some variable of Interface type in the debugger we will see its properties instead of NOTHING as now. Another problem with 'Interfaces' in RB 5.5 -- THEY SIMPLY DO NOT WORK as promised. Even as promised in RB 5.5. Not works because Bugs. Paradigma Software have decide DO NOT use interfaces in Valentina for RB 2.0, because it not works as we need it. :-( Very pity. Because I was going introduce so many interesting ideas based on interfaces. Let's hope that in RB 6.0 REAL will pay more attention to this FUNDAMENTAL issues of language. I underline, we talk about LANGUAGE, not about GUI features or other "interesting" features. IMHO language should be highest priority. Geoff, what you 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 sunshine at public.kherson.ua Sat Jun 19 09:35:50 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Sat Jun 19 01:35:57 2004 Subject: ENUMS simulations In-Reply-To: Message-ID: On 6/19/04 5:23 AM, "Frank Schima" wrote: > > On Jun 18, 2004, at 4:50 PM, Ruslan Zasukhin wrote: > >> * then we can write such syntax: >> >> db.SqlSelect( >> query, >> ECursorType.kServerSide >> ELockType.kReadOnly, >> Edirection.ForwardOnly ) >> >> >> Compare to current attempt >> >> db.SqlSelect( >> query, >> Valentina.kServerSide >> Valentina.kReadOnly, >> Valentina.ForwardOnly ) >> >> It looks to me that the first way is more clean. >> And again, Java work with enums in this way. > > It seems like it would make the code slightly easier to read the first > way, but harder to write. Now we have to remember all these different > Enum types. Since it makes coding more difficult, I am inclined to > "vote" for the second way. > > Maybe as a compromise, you could do it both ways so we can choose which > way to code? Interesting idea. But why you think it is more hard? You can simply remember that ALL enum types start with 'E' You simply type E... And you get list of all enum types which REALbasic knows. What you think 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 jda at his.com Sat Jun 19 09:12:30 2004 From: jda at his.com (jda) Date: Sat Jun 19 08:12:35 2004 Subject: Compress blobs? In-Reply-To: References: Message-ID: It seems you can't compress blobfields in V2. Is this on purpose? Jon From sunshine at public.kherson.ua Sat Jun 19 16:16:48 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Sat Jun 19 08:16:56 2004 Subject: Compress blobs? In-Reply-To: Message-ID: On 6/19/04 4:12 PM, "jda" wrote: > It seems you can't compress blobfields in V2. Is this on purpose? Yes of course. -- 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 Jun 19 09:20:13 2004 From: jda at his.com (jda) Date: Sat Jun 19 08:20:16 2004 Subject: Compress blobs? In-Reply-To: References: Message-ID: >On 6/19/04 4:12 PM, "jda" wrote: > >> It seems you can't compress blobfields in V2. Is this on purpose? > >Yes of course. > OK, I'll bite. Why? It was allowed in V1. Jon From sunshine at public.kherson.ua Sat Jun 19 16:28:46 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Sat Jun 19 08:28:52 2004 Subject: Compress blobs? In-Reply-To: Message-ID: On 6/19/04 4:20 PM, "jda" wrote: >> On 6/19/04 4:12 PM, "jda" wrote: >> >>> It seems you can't compress blobfields in V2. Is this on purpose? >> >> Yes of course. >> > > OK, I'll bite. Why? It was allowed in V1. Ops, I mean: yes of course we will support compression in 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-list2 at mindstarprods.com Sat Jun 19 14:38:10 2004 From: frank-list2 at mindstarprods.com (Frank Schima) Date: Sat Jun 19 13:38:17 2004 Subject: ENUMS simulations In-Reply-To: References: Message-ID: On Jun 19, 2004, at 2:35 AM, Ruslan Zasukhin wrote: > On 6/19/04 5:23 AM, "Frank Schima" > wrote: > >> >> On Jun 18, 2004, at 4:50 PM, Ruslan Zasukhin wrote: >> >>> * then we can write such syntax: >>> >>> db.SqlSelect( >>> query, >>> ECursorType.kServerSide >>> ELockType.kReadOnly, >>> Edirection.ForwardOnly ) >>> >>> >>> Compare to current attempt >>> >>> db.SqlSelect( >>> query, >>> Valentina.kServerSide >>> Valentina.kReadOnly, >>> Valentina.ForwardOnly ) >>> >>> It looks to me that the first way is more clean. >>> And again, Java work with enums in this way. >> >> It seems like it would make the code slightly easier to read the first >> way, but harder to write. Now we have to remember all these different >> Enum types. Since it makes coding more difficult, I am inclined to >> "vote" for the second way. >> >> Maybe as a compromise, you could do it both ways so we can choose >> which >> way to code? > > Interesting idea. > > But why you think it is more hard? > > You can simply remember that ALL enum types start with 'E' > > You simply type E... > And you get list of all enum types which REALbasic knows. > > What you think now ? Yes, that's fine. Based on the other posts about Enums being in RB in the future, I agree with doing it now so we get used to it. -Frank From maillist at darke.biz Sun Jun 20 10:04:00 2004 From: maillist at darke.biz (Ang Siow Chen) Date: Sat Jun 19 21:05:28 2004 Subject: FW: Some Features I think that will be cool Message-ID: -----Original Message----- From: Ang Siow Chen [mailto:siowchen@darke.biz] Sent: Saturday, June 19, 2004 9:46 PM To: Mailing List - Valentina Beta Subject: Some Features I think that will be cool Hi ruslan... Thanks for inviting me to come on board to provide my 5 cents worth for the new V2 of Valentina. I think one of the most promising features would be POINTERS. Let me explain.. Pointer records is a brilliant idea if it could be used in the way.. as mentioned POINTERS are just data pointing to somewhere else.. Why should the system have pointers only be able to point to a record Can your pointer by such that it can point to a table / a record / a field?? Meaning its just a pointer and it can be used to point to anything, and this ability should propagate around.. such that the pointing is done automatically by the system. meaning in the same table one pointer may be pointing to another record in the same table, the very next record's pointer may be pointing to the whole table, when the next may be pointing to another record or field in another table. I think this will be a veyr ver good feature if you can implement this as part of your design. Warmest Regards -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.macserve.net/pipermail/valentina-beta/attachments/20040620/0b3074c0/attachment-0001.html From sunshine at public.kherson.ua Sun Jun 20 08:22:54 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Sun Jun 20 00:23:02 2004 Subject: Some Features I think that will be cool In-Reply-To: Message-ID: On 6/20/04 5:04 AM, "Ang Siow Chen" wrote: Hi Ang, > From: Ang Siow Chen [mailto:siowchen@darke.biz] > Sent: Saturday, June 19, 2004 9:46 PM > > Hi ruslan... > > Thanks for inviting me to come on board to provide my 5 cents worth for the > new V2 of Valentina. > > I think one of the most promising features would be POINTERS. > > Let me explain.. > > Pointer records is a brilliant idea if it could be used in the way.. > as mentioned POINTERS are just data pointing to somewhere else.. > > Why should the system have pointers only be able to point to a record > Can your pointer by such that it can point to a table / a record / a field?? > > > Meaning its just a pointer and it can be used to point to anything, and this > ability should propagate around.. such that the pointing is done automatically > by the system. > > meaning in the same table one pointer may be pointing to another record in the > same table, the very next record's pointer may be pointing to the whole table, > when the next may be pointing to another record or field in another table. > > I think this will be a veyr ver good feature if you can implement this as part > of your design. Well, not very agree. 1) pointer to a field. First of all please give me example when you need this and how you will use this. And if you need this you can self store simply field's name. Or field ID in v2.0 2) Table pointer. again I do not see how this can be used. and again this can be implemnted easy by storing table's ID 3) pointer to record. we have right now in Valentina 1.x the ObjectPtr field. this is practically direct pointer to a rcord in other table or to record in the same table. ObjectPtr field ALWAYS point records of the same table. 4) NEW, pointer to record in any table. in Valentina 2.0 we add to each table llong field OID. this give you unique identifier of a record in the scope of db. This bring ability create ObjectsPtr (note 's') field type. ^^^ We have start develop it, but not finish yet. It needs resolve yet problems with referential integrity. -- 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 maillist at darke.biz Sun Jun 20 15:57:47 2004 From: maillist at darke.biz (Ang Siow Chen) Date: Sun Jun 20 02:59:12 2004 Subject: Some Features I think that will be cool In-Reply-To: Message-ID: What i mean is that the same pointer field in a table can be swapped automatically for use as either a pointer to a table / a record / field without having to have separate.... -----Original Message----- From: Ruslan Zasukhin [mailto:sunshine@public.kherson.ua] Sent: Sunday, June 20, 2004 1:23 PM To: valentina-beta@lists.macserve.net Subject: Re: Some Features I think that will be cool On 6/20/04 5:04 AM, "Ang Siow Chen" wrote: Hi Ang, > From: Ang Siow Chen [mailto:siowchen@darke.biz] > Sent: Saturday, June 19, 2004 9:46 PM > > Hi ruslan... > > Thanks for inviting me to come on board to provide my 5 cents worth for the > new V2 of Valentina. > > I think one of the most promising features would be POINTERS. > > Let me explain.. > > Pointer records is a brilliant idea if it could be used in the way.. > as mentioned POINTERS are just data pointing to somewhere else.. > > Why should the system have pointers only be able to point to a record > Can your pointer by such that it can point to a table / a record / a field?? > > > Meaning its just a pointer and it can be used to point to anything, and this > ability should propagate around.. such that the pointing is done automatically > by the system. > > meaning in the same table one pointer may be pointing to another record in the > same table, the very next record's pointer may be pointing to the whole table, > when the next may be pointing to another record or field in another table. > > I think this will be a veyr ver good feature if you can implement this as part > of your design. Well, not very agree. 1) pointer to a field. First of all please give me example when you need this and how you will use this. And if you need this you can self store simply field's name. Or field ID in v2.0 2) Table pointer. again I do not see how this can be used. and again this can be implemnted easy by storing table's ID 3) pointer to record. we have right now in Valentina 1.x the ObjectPtr field. this is practically direct pointer to a rcord in other table or to record in the same table. ObjectPtr field ALWAYS point records of the same table. 4) NEW, pointer to record in any table. in Valentina 2.0 we add to each table llong field OID. this give you unique identifier of a record in the scope of db. This bring ability create ObjectsPtr (note 's') field type. ^^^ We have start develop it, but not finish yet. It needs resolve yet problems with referential integrity. -- 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 Jun 20 15:09:03 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Sun Jun 20 07:09:12 2004 Subject: Some Features I think that will be cool In-Reply-To: Message-ID: On 6/20/04 10:57 AM, "Ang Siow Chen" wrote: > What i mean is that the same pointer field in a table can be swapped > automatically for use as either a pointer to a table / a record / field > without having to have separate.... And how this can work ? I do not see way for this. Record pointer -- this is 4 byte ulong. Field and table -- strings at least. Also Record pointer take semantic of LINKS / FOREIGN KEY constraint. How you can apply info about CASCADE deletion for Field Pointer? It seems this will not work. IF you need this, you will be able similaute this simply as ULONG field which store RecID of FieldID or TableID -- 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 maillist at darke.biz Sun Jun 20 20:27:50 2004 From: maillist at darke.biz (Ang Siow Chen) Date: Sun Jun 20 07:29:14 2004 Subject: Some Features I think that will be cool In-Reply-To: Message-ID: Just my thoughts... That is what I have in mind... Someday when I can do it .. I believe this will be a so much better system! -----Original Message----- From: Ruslan Zasukhin [mailto:sunshine@public.kherson.ua] Sent: Sunday, June 20, 2004 8:09 PM To: valentina-beta@lists.macserve.net Subject: Re: Some Features I think that will be cool On 6/20/04 10:57 AM, "Ang Siow Chen" wrote: > What i mean is that the same pointer field in a table can be swapped > automatically for use as either a pointer to a table / a record / field > without having to have separate.... And how this can work ? I do not see way for this. Record pointer -- this is 4 byte ulong. Field and table -- strings at least. Also Record pointer take semantic of LINKS / FOREIGN KEY constraint. How you can apply info about CASCADE deletion for Field Pointer? It seems this will not work. IF you need this, you will be able similaute this simply as ULONG field which store RecID of FieldID or TableID -- 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 Jun 20 15:36:11 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Sun Jun 20 07:36:18 2004 Subject: Some Features I think that will be cool In-Reply-To: Message-ID: On 6/20/04 3:27 PM, "Ang Siow Chen" wrote: > Just my thoughts... > That is what I have in mind... > > Someday when I can do it .. I believe this will be a so much better system! Well in 2.0 you will be able do this. Although tech us later why and how this can be used :-) > -----Original Message----- > From: Ruslan Zasukhin [mailto:sunshine@public.kherson.ua] > Sent: Sunday, June 20, 2004 8:09 PM > To: valentina-beta@lists.macserve.net > Subject: Re: Some Features I think that will be cool > IF you need this, you will be able similaute this simply as > ULONG field which store RecID of FieldID or TableID -- 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 maillist at darke.biz Sun Jun 20 22:59:32 2004 From: maillist at darke.biz (Ang Siow Chen) Date: Sun Jun 20 10:01:01 2004 Subject: Some Features I think that will be cool In-Reply-To: Message-ID: eg Use of such a feature 1 Customer to 1 Company Detail --> Pointer to 1 record in another table 1 Customer to Many Meter --> Pointer to 1 Table why because each meter has millions of records It is faster to jsut retrieve the whole table than to query for the meter in table... dun you think this would be great. User can design a table called relationships It has 2 fields Parent pointer Child Pointer You can create an application that has relationships that are a lot more easy to manage. because now the pointer can be anything... it can be a table pointer or a record pointer or a field pointer. Hope this defines how this can be used. -----Original Message----- From: Ruslan Zasukhin [mailto:sunshine@public.kherson.ua] Sent: Sunday, June 20, 2004 8:36 PM To: valentina-beta@lists.macserve.net Subject: Re: Some Features I think that will be cool On 6/20/04 3:27 PM, "Ang Siow Chen" wrote: > Just my thoughts... > That is what I have in mind... > > Someday when I can do it .. I believe this will be a so much better system! Well in 2.0 you will be able do this. Although tech us later why and how this can be used :-) > -----Original Message----- > From: Ruslan Zasukhin [mailto:sunshine@public.kherson.ua] > Sent: Sunday, June 20, 2004 8:09 PM > To: valentina-beta@lists.macserve.net > Subject: Re: Some Features I think that will be cool > IF you need this, you will be able similaute this simply as > ULONG field which store RecID of FieldID or TableID -- 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 maillist at darke.biz Sun Jun 20 23:11:13 2004 From: maillist at darke.biz (Ang Siow Chen) Date: Sun Jun 20 10:12:40 2004 Subject: Some Features I think that will be cool In-Reply-To: Message-ID: Another new feature SUBQUERIES meaning queries in the queries... -----Original Message----- From: Ruslan Zasukhin [mailto:sunshine@public.kherson.ua] Sent: Sunday, June 20, 2004 8:36 PM To: valentina-beta@lists.macserve.net Subject: Re: Some Features I think that will be cool On 6/20/04 3:27 PM, "Ang Siow Chen" wrote: > Just my thoughts... > That is what I have in mind... > > Someday when I can do it .. I believe this will be a so much better system! Well in 2.0 you will be able do this. Although tech us later why and how this can be used :-) > -----Original Message----- > From: Ruslan Zasukhin [mailto:sunshine@public.kherson.ua] > Sent: Sunday, June 20, 2004 8:09 PM > To: valentina-beta@lists.macserve.net > Subject: Re: Some Features I think that will be cool > IF you need this, you will be able similaute this simply as > ULONG field which store RecID of FieldID or TableID -- 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 Jun 20 23:17:42 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Sun Jun 20 15:17:54 2004 Subject: Some Features I think that will be cool In-Reply-To: Message-ID: On 6/20/04 6:11 PM, "Ang Siow Chen" wrote: > Another new feature > SUBQUERIES > > meaning queries in the queries... Yes, Ang, Valentina 2.0 support subqueries by SQL92 standard. You can find link to SQL grammar of Valentina 2.0 here -- 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 Jun 20 23:19:45 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Sun Jun 20 15:19:54 2004 Subject: Some Features I think that will be cool In-Reply-To: Message-ID: On 6/20/04 5:59 PM, "Ang Siow Chen" wrote: > eg Use of such a feature > > 1 Customer to 1 Company Detail --> Pointer to 1 record in another table > 1 Customer to Many Meter --> Pointer to 1 Table > > why because each meter has millions of records > It is faster to jsut retrieve the whole table than to query for the meter in > table... > > dun you think this would be great. > > User can design a table called relationships > It has 2 fields > Parent pointer > Child Pointer Ang, Valentina 2.0 will introduce new abstraction in model Link and Binary Link in particular. So in Valentina 2.0 instead of creation of third table to link records of 2 tables we will be able simply do db.CreateBinaryLink( T1, T2 ) Very cool! > You can create an application that has relationships that are a lot more > easy to manage. > because now the pointer can be anything... > > it can be a table pointer or a record pointer or a field pointer. -- 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 Jun 21 00:39:34 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Sun Jun 20 16:39:47 2004 Subject: V2.0? In-Reply-To: <1087766773.6681@vortex.is> Message-ID: On 6/21/04 12:26 AM, "Halldor Gislason" wrote: > Hi Ruslan, > Which page - I do not see the framework anywhere as a 2.0 beta? > > Must be misunderstanding something? http://paradigmasoft.com/download/v2_beta/v2_beta.html Ah, you need framework? We have only CW libs for now. Well, Jochen is going on the next week start port Valentina Studio to 2.0 engine, and he will use xCode. Although I think we will drop Framework and simply return to old lib + headers design. Just I do not like this framework style of headers. Since our sources can be used in other c++ compilers and other platforms then this cause big problems. If somebody know way, how to avoid this framework style includes, Then please let me know. I want that #include Will work for framework also. -- 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 j.peters at valentina-db.de Mon Jun 21 06:55:28 2004 From: j.peters at valentina-db.de (Jochen Peters) Date: Sun Jun 20 23:55:37 2004 Subject: V2.0? In-Reply-To: References: <1087766773.6681@vortex.is> Message-ID: <43372.62.154.199.179.1087793728.squirrel@webmail3.server-einstellung.de> Hi all, > Well, Jochen is going on the next week start port Valentina Studio to 2.0 > engine, and he will use xCode. > > Although I think we will drop Framework and simply return to old > > lib + headers > > design. Yes - i also do more like this lib + header way because it is more simular to the other platforms. > > Just I do not like this framework style of headers. > Since our sources can be used in other c++ compilers and other platforms > then this cause big problems. Well - at least we have to use many #ifdef.. > > If somebody know way, how to avoid this framework style includes, > Then please let me know. > I want that > > #include > > Will work for framework also. That would be ideal - but i guess there is no way to achieve this.. -- Best regards, Jochen Peters PIIT GmbH ------------------------ http://www.valentina-db.de From sunshine at public.kherson.ua Mon Jun 21 09:42:39 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Mon Jun 21 01:42:51 2004 Subject: V2.0? In-Reply-To: <43372.62.154.199.179.1087793728.squirrel@webmail3.server-einstellung.de> Message-ID: On 6/21/04 7:55 AM, "Jochen Peters" wrote: >> Just I do not like this framework style of headers. >> Since our sources can be used in other c++ compilers and other platforms >> then this cause big problems. > Well - at least we have to use many #ifdef.. And since with Valentina 2.0 we have much more public headers, This will cause blow of header section. >> If somebody know way, how to avoid this framework style includes, >> Then please let me know. >> I want that >> >> #include >> >> Will work for framework also. > That would be ideal - but i guess there is no way to achieve this.. It seems to me CW have such option use framework style headers -- 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 Jun 21 17:18:26 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Mon Jun 21 09:18:39 2004 Subject: [ANN] V4RB b6 uploaded Message-ID: Hi All, http://paradigmasoft.com/download/v2_beta/v2_beta.html If you have prev beta then you do not need download Vcomponents archive. --------------------------- Added 3 new examples Link_FoerignKey_Records Link_ObjectPtr_Records Link_BinaryLink_Records Please check them and compare how work these 3 kind of links. You will need select by mouse a record in left table on step4. You can see how you can use Links to do __navigation__ Between records of tables without SQL, Just using NEW classes Vlink, Vset, VSetIterator. * Added V4RB_ExampleGuide.pdf * [New] Vdatabase class 3 methods db.LinkCount db.Link(name) db.Link(index) -- 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 Jun 21 10:43:01 2004 From: jda at his.com (jda) Date: Mon Jun 21 09:43:15 2004 Subject: [ANN] V4RB b6 uploaded In-Reply-To: References: Message-ID: Ruslan, Are we supposed to be able to create databases? When I run your Method Create example, it works. But when I use my code it fails. Here is my code: ------------------------ tempDataBase = new MyDataBase -- no error tempDataBase.Create(f, 1, 2 * 1024 ) if tempDataBase.ErrNumber <> 0 then -- no error. ErrNumber = 0. doError return false end if myCursor = new VCursor(tempDataBase, "select * from references where RecId=0", kServer, kReadWrite) -- no error myCursor.setBlank myCursor.LongField("uniqueID").SetString(str(generateUniqueID(0))) -- nilobject error ------------------------- I can tell you that the folderItem is never created (exists = false). Any thoughts? Jon From sunshine at public.kherson.ua Mon Jun 21 18:16:09 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Mon Jun 21 10:16:22 2004 Subject: [ANN] V4RB b6 uploaded In-Reply-To: Message-ID: On 6/21/04 5:43 PM, "jda" wrote: > Ruslan, > > Are we supposed to be able to create databases? When I run your > Method Create example, it works. But when I use my code it fails. > Here is my code: > > ------------------------ > > tempDataBase = new MyDataBase -- no error > > tempDataBase.Create(f, 1, 2 * 1024 ) > > if tempDataBase.ErrNumber <> 0 then -- no error. ErrNumber = 0. > doError > return false > end if > > myCursor = new VCursor(tempDataBase, "select * from references > where RecId=0", kServer, kReadWrite) -- no error > myCursor.setBlank > > > myCursor.LongField("uniqueID").SetString(str(generateUniqueID(0))) -- > nilobject error > > ------------------------- > > > I can tell you that the folderItem is never created (exists = false). > > Any thoughts? Please take a look into V4RB_Log.txt file. What you see? It should show the last called command and its parameters -- 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 Jun 21 18:18:12 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Mon Jun 21 10:21:59 2004 Subject: V4RB_QuickReference.pdf updated by 3 new link methods 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 ------------------------------------------------------------- _______________________________________________ Vdevelopers mailing list Vdevelopers@paradigma.ukrcom.kherson.ua http://192.168.2.1/mailman/listinfo/vdevelopers From jda at his.com Mon Jun 21 11:25:19 2004 From: jda at his.com (jda) Date: Mon Jun 21 10:25:32 2004 Subject: [ANN] V4RB b6 uploaded In-Reply-To: References: Message-ID: > > >Please take a look into V4RB_Log.txt file. >What you see? > >It should show the last called command and its parameters > Here are the last few lines: ------------------- DataBase_Create... return DataBase_GetErrNumber... return (int) gV4RB_Error = 0 DataBase_SetSchemaVersion... return Cursor_Ctor... return Cursor_SetRecBlank... PARAM: inCursor = 26932612 return Cursor_GetFieldByName... PARAM: inCursor = 26932612 PARAM: inName = "uniqueID" return object = 0 ------------------- I can send you the text file off-list, if you want to see it. Jon From sunshine at public.kherson.ua Mon Jun 21 18:27:44 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Mon Jun 21 10:27:57 2004 Subject: [ANN] V4RB b6 uploaded In-Reply-To: Message-ID: On 6/21/04 6:25 PM, "jda" wrote: > Cursor_GetFieldByName... > PARAM: inCursor = 26932612 > PARAM: inName = "uniqueID" > return object = 0 > > ------------------- > > > I can send you the text file off-list, if you want to see it. You can see in the last command that object=0 This means that field with name "uniqueID" was not found. I think it was not created on some reason. Check line where you create that 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 sunshine at public.kherson.ua Mon Jun 21 18:28:51 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Mon Jun 21 10:29:01 2004 Subject: [ANN] V4RB b6 uploaded In-Reply-To: Message-ID: On 6/21/04 6:25 PM, "jda" wrote: > Cursor_GetFieldByName... > PARAM: inCursor = 26932612 > PARAM: inName = "uniqueID" > return object = 0 > > ------------------- > > > I can send you the text file off-list, if you want to see it. Do you use Classes in your app ? If yes, then classes not works yet. -- 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 Jun 21 11:31:53 2004 From: jda at his.com (jda) Date: Mon Jun 21 10:32:00 2004 Subject: [ANN] V4RB b6 uploaded In-Reply-To: References: Message-ID: > > >Do you use Classes in your app ? > >If yes, then classes not works yet. > Yes, Ruslan. Please tell us when they are implemented. I'll stop trying to test with my app until they are. Jon From sunshine at public.kherson.ua Tue Jun 22 13:59:57 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Tue Jun 22 06:01:08 2004 Subject: [Q] C++ SDK, the Class way. Message-ID: Hi C++ Developers, Hi Totte, Today morning I have made draft of example to work not with new 2.0 Interfaces, but with Valentina 1.x classes way. File is attached. Please consider it and let me know what you think on this new style, Which little differ from Valentina 1.x. * Fist of all you will see few small wrapper classes VDK_Database, VDK_Table, VDK_Field... * you can note, that this classes play role of "smart pointer" around the main classes I_Database, I_Table, I_Field. This classes have therefore operator->(). --------- * This trick gives much more flexible solution than in Valentina 1.x IMHO. -- Because in Valentina 1.x wrapper classes have totally hide kernel object, now no. you still will have access to deep kernel objects and their methods. -- Because in Valentina 1.x if we add functionality to kernel object, I was need add it to wrapper classes. Now NO!!! Because operator->() dispatch us to kernel object. So we will get automatically all new features of classes in future with NO TIME. -- Because this small wrapper classes have all methods INLINE. in the Valentina 1.x all methods of wrapper classes was located in the .cpp file, so we have to jump to that wrapper class code, then jump to kernel method. NOW we will jump directly into interface's methods!!! (after inline). -- In this new way, we will need send into constructor of VDK_Table the VDK_Database*. In Valentina 1.x I have use static pointers to hide this. I have decide refuse static pointers, because this will not work in mutli-threading. ------- Drawbacks of new way: -- I see only one potential drawback, but it is small and cosmetic, and compiler will not give you to make mistakes. Look here DbContacts db; try { I_Location_Ptr pLocation = CreateDiskLocation( L"contacts_db.vdb" ); db->put_Location( pLocation ); db->Create(); db->Close(); db.mptPerson.mpfFirstName->put_IsNull( true ); } We can create db variable on stack, But to access kernel methods we need use operator->(). In the same time to access variables and methods of DbContacts class, we need to use DOT syntax. Well, at first I have to think that this may be confusing and error prone, But it seems no. compiler will give you error in case you have made mistake between . and -> And we get actually interesting thing: it is easy to see where is YOUR variables and methods, and where are Valentina Engine methods. ------ In any case, this is the most elegant coding I was able invent around our new Interfaces in Valentina 2.0. Do not forget that this is optional way -- usage of classes. We use it when we know exactly what tables and fields we will have, When we want to use low level API and Valentina Navigational model. And I think it will be not very hard to update old sources to this new syntax. It looks that it will be possible to made N find/replaces on the whole project to get it working. What you think? Totte? -- 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 ------------------------------------------------------------- -------------- next part -------------- Skipped content of type multipart/appledouble-------------- next part -------------- Scanned by evaluation version of Dr.Web antivirus Daemon http://drweb.ru/unix/ From sunshine at public.kherson.ua Tue Jun 22 15:00:46 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Tue Jun 22 07:02:28 2004 Subject: [Q] C++ SDK, the Class way. In-Reply-To: <24590.62.154.199.179.1087904753.squirrel@webmail3.server-einstellung.de> Message-ID: On 6/22/04 2:45 PM, "Jochen Peters" wrote: Hi Jochen, I have CC to list. > First of all: This new way can be an option - but - looking at it in > the first run i feel somehow "uncomfortable" with it ... > It looks simply UNUSUAL. > > I am used to work with smartptrs in this way - the DOT notation is > used for the pointer object itself - the -> operator is used to > work with the pointed object - but this is a complete other story. > > The confusing thing is: > The user want's to work with a single object - for example the > database object. Using the above new way now means that he will actually > work with TWO objects - his own one and the underlying kernel object.. > > Well - as i have said - it can work... Yes, I also see that it is unusual. But developer I think can easy become used I think. Let's discuss. I will try give more reasons in the next letter > BTW: What happens if you work with your own objects on the heap? Nothing bad. DbContacts pdb = new DbContact() Just its your responsibility delete it later. Also note, if kernel objects are inherited from I_Unknwon, And used with smart pointers, in the example I have give, CUSTOM classes are simple C++ classes. -- 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 Jun 22 15:32:00 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Tue Jun 22 07:32:27 2004 Subject: [V4RB2b8] problem with errnumber In-Reply-To: Message-ID: On 6/22/04 2:37 PM, "Daniel FLEURY" wrote: Hi Daniel, > I updated all my project to try the new V4RB2. New features seems > very cool but I'm not here. First step, I want to run my DB and see > if my encodings problems are fixed with version 2... > > Now I can compile but cannot yet open the DB: OK, I probably do some > mistake with the new code... but I don't understand why I don't get > any error number when the mDataBase.Open(fi) fail : First of all note: Valentina 2.0 will NOT open db files of 1.x directly We will use special utility to convert db files, Or XML dump / load. > mDataBase = new MyDataBase > mDatabase.SetStructureEncryption("sometext") > mDataBase.Open(fi) Encryption is not made yet in Valentina 2.0. As well as cross-platform byte swapping. We will do this in the last turn. In other words, V4B 2.0 is not yet ready to just run old project. We will fix issues step by step. As I have told, only what shown in the examples is proven to work. > if mDataBase.isOpen then > msgbox "OK" > else > msgBox "error is "+STR(mDataBase.ErrNumber)+" ("+mDataBase.ErrString+ ")" > //HERE THE ERROR CODE IS 0 (SUCCESFULL COMPLETION) > end if -- 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 Jun 22 15:33:45 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Tue Jun 22 07:34:00 2004 Subject: [V4RB2b8] problem with errnumber In-Reply-To: Message-ID: On 6/22/04 3:15 PM, "Daniel FLEURY" wrote: > Hello Ruslan > well, sorry for my previous email: I presume I need to put > "Valentina.DoNotThrow" in the open event to get the errnumber, but > this parameter still don't exist, right ? > In next beta ? Well, I will try, Daniel, Should be not hard. But this is just ONE OF issues for your project. -- 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 crochet at sequentiel.fr Thu Jun 24 15:46:37 2004 From: crochet at sequentiel.fr (serge) Date: Thu Jun 24 08:46:50 2004 Subject: V4MD 2.0 beta In-Reply-To: Message-ID: <005201c459f1$ab9efbd0$7201a8c0@PCSerge> Hello, The same question: when.... Thanks -----Message d'origine----- De?: valentina-beta-bounces@lists.macserve.net [mailto:valentina-beta-bounces@lists.macserve.net] De la part de Ruslan Zasukhin Envoy??: lundi 14 juin 2004 17:17 ??: valentina-beta@lists.macserve.net Objet?: Re: V4MD 2.0 beta On 6/14/04 6:09 PM, "serge" wrote: > Hi > Where do we go to download V4MD 2.0 beta? > Or when.... Hi Serge, It was not uploaded yet. Well, I think we will make it up to this weekend. -- 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 Thu Jun 24 16:59:11 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Thu Jun 24 09:02:35 2004 Subject: V4MD 2.0 beta In-Reply-To: <005201c459f1$ab9efbd0$7201a8c0@PCSerge> Message-ID: On 6/24/04 4:46 PM, "serge" wrote: > Hello, > The same question: when.... > Thanks Hi Serge, Still in delay. Igor was busy on joins about 10 days. Now he have start aggregations. Please wait a little more. It is obvious that V4MD beta will grow much faster of RB, because on RB I do examples and we catch bugs to polish. With V4MD (and rest) we will need just to create examples. Kernel will work already. -- 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 Jun 30 08:17:50 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Jun 30 00:18:08 2004 Subject: [DONE] Aggregation with GROUP BY clause In-Reply-To: <000c01c45e28$0aad7860$3b04a8c0@giv> Message-ID: On 6/30/04 1:25 AM, "Igor Gomon" wrote: Hi Igor, > Hi team, > > I've done implementation of aggregative nodes working on groups > (when GROUP BY clause specified in SELECT). You need add: for single table. > Existing implementations of aggregative value calculation was incorrect > in case when value was calculated on group so I've corrected it for > all aggregative nodes. ok > Also I write new test that tests GROUP BY clause with aggregation on > single table - > > Test_VSQL_Select_AVG_For_Int_With_GroupBY_Only() > > (since I cannot find any such tests - most of existing tests are > too complex for my case). Hmm, Ivan. Why they are complex? > Test is passed OK. Igor, so am I right that Ivan's SQL test for GROUP BY now done ok ? And your new also? Igor, am I right that query as SELECT f1 AGGR_FUNC( DISTINCT f2) FROM T GROUP BY f1 Also works now? Excellent guys! ----- Now the next tasks for you: 1) SELECT DISTINCT some field FROM T SELECT DISTINCT some field FROM T WHERE find something 2) check what tests have Ivan for case when aggregative functions are on the JOIN table SELECT T1.a1, AGGR( T2.b4 ) FROM T1 join T2 GROUP BY T1.a1 May be add more tests. After this we will start implement this kind of query. Igor, I think I will need spend about day to integrate algorithms of Valentina 1.x for this. Then you will be able finish it. Actually I thin we will start from you: you make high level calls, this will show us what I need to make for you. -------- P.S. We with Ivan have made joins working yesterday! Today we going to make working Methods on join table. it seems we have idea to how make working effectively even such query SELECT T1.a1 + T2.b1 FROM T1, T2 I.e. When expression in the SELECT clause is based on fields from different tables. Igor, we have add yesterday a new class Record_Join. You need add it into Visual project. And we have move into this class the loop that was in your Table_Join::ReadRecord(). -- 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 Jun 30 12:50:52 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Jun 30 04:51:29 2004 Subject: Queries. Question to all In-Reply-To: <20040630092037.2011@mail.absus.at> Message-ID: On 6/30/04 12:20 PM, "Peter Knobloch" wrote: Hi Peter, > I'm using REALbasic (cross platform) and Valentina, maybe I'm overlooking > something. > > I want to search for the left part of words (not case-sensitive) in my > database-application: > > (1) To have an index based search i have to use "... WHERE > left(fieldname, charcount) = 'searchword'" > > (2) The field has to have the flag IndexByWords set to TRUE > > (3) This kind of search is always case-sensitive > > The last point (3) is really troublesome, I can't remember any other > database (FileMaker, mySQL, V12) I've used where this was the default > behaviour, especially since I could not find any way to override it. I am not sure about mySQL To get case-insensetive search you should create virtual field (BaseObject method) fldLwr with formula "fld" Now you can do WHERE left( fldLwr, count ) = 'smallletters' BaseObject methods is VERY POWERFUL to do any tricks. > Furthermore, according to my experience, I can not imagine too many > situations where I would need a case-sensitive search. Ok, but then please remind me, how in mySQL you will be able IF YOU WANT provide case-sensetive seach? I have CC this to Valentina list. For several years nobody have complain that Valentina do on default case-sensetive search. What you think guys ? Should we change this in 2.0 ? I think no. > (4) The only way to do a case-insensitive "word-start" search is to > use the RegEx variant > "... WHERE fieldname LIKE '\Asearchword'" No, BaseObject methods is a solution. > The disadvantage is that, this way the search does not use the index > (since my application should run off a CD-ROM I try optimize for > performance everywhere) and (the bigger problem) it didn't work at all (= > it found not a single record, but I'm sure You will tell me what I did > wrong. I use a query with several joins, "... WHERE fieldname LIKE > 'searchword'" did work). Hmm, you mean you do in query multi-table search? Does it work for you on single table ? -- 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 Jun 30 14:10:31 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Jun 30 06:14:12 2004 Subject: Re(2): Queries. Question to all In-Reply-To: <20040630104916.15802@mail.absus.at> Message-ID: On 6/30/04 1:49 PM, "Peter Knobloch" wrote: Hi Peter, > Hi Ruslan, > >> I am not sure about mySQL > "LIKE" is case insensitive, "LIKE BINARY" case sensitve > > http://dev.mysql.com/doc/mysql/en/String_comparison_functions.html#IDX1312 Ok, I see that staring with 4.0 mySQL do case-insensetive LIKE, REGEX, STRCMP, ... I think we will check other DBMS as SQL Server and Sybase. Also we need check SQL92 stadnard. > Furthermore, in mySQL "LIKE" uses an index if possible. > > http://dev.mysql.com/doc/mysql/en/MySQL_indexes.html#IDX777> This have no sense for Valentina actually. Valentina is design in such way, that we do not need this in general case. Although FIELD LIKE "start non wildacrd" really is equal to our left() = -- 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 Jun 30 14:21:34 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Jun 30 06:22:05 2004 Subject: Re(2): Queries. Question to all In-Reply-To: <20040630104916.15802@mail.absus.at> Message-ID: On 6/30/04 1:49 PM, "Peter Knobloch" wrote: >> I am not sure about mySQL > "LIKE" is case insensitive, "LIKE BINARY" case sensitve > > http://dev.mysql.com/doc/mysql/en/String_comparison_functions.html#IDX1312 Also note, Valentina 1.x in LIKE use actually REGEX. In Valentina 1.x you can do case insensitive LIKE using WHRE fld LIKE 'something' no_case ^^^^^^ Yes, this is non standard way, but works. It is not worse of BINARY -- also non standard way. >> To get case-insensetive search you should create virtual field >> (BaseObject method) fldLwr with formula "fld" > Good to hear that thats the official way: it's what I'm doing. But I > assume this doubles the size for the fields PLUS the index as well (if I > have an index on both fields). But you should to have 2 indexes for a field if you want do both case-sensitive and case-insensitive searches or sorting. Just think about this. 2 indexes will differ in the order of records!!! And note, you can buld only one index! You can index or field, or methd, or both. Up to your choice. >> For several years nobody have complain that Valentina do on default >> case-sensetive search. What you think guys ? Should we change this in >> 2.0 ? I think no. > How about an additional flag to give the developer the option if the > index should be case sensitive? YES! Valentina 2.0 will have such flag for string fields. It simplify work in this area. compare: ---------------------- Valentina 1.x: fld NOT INDEXED fldLwr method = "lower(fld)" INDEXED Now we have one field on disk. Now we have one virtual field. And we have One index on disk. But now developer MUST do one more step. when he prepare SQL query, the string constant already should be in lower case: WHERE fldLwr = 'sgdg' good WHERE fldLwr = 'sGDg' wrong ---------------------- Valentina 2.0: fld INDEXED and CASE-INSENSITIVE Let is all. Valentina will keep index for this field in lower case. Developer may even give string constant in any case WHERE fld = 'sGDg' okay, Valentina self will make it lower. -- 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 Jun 30 07:23:30 2004 From: jda at his.com (jda) Date: Wed Jun 30 06:23:37 2004 Subject: Queries. Question to all In-Reply-To: References: Message-ID: > > >I have CC this to Valentina list. >For several years nobody have complain that Valentina do on default >case-sensetive search. What you think guys ? > >Should we change this in 2.0 ? >I think no. > Since all my searches are case insensitive, I wouldn't object if that were the default. But that's not particularly important, it seems to me. Having to create a methods for each instance, though, is not particularly intuitive or friendly. Having a parameter for caseSensitive|caseInsensitive strikes me as a good thing, and I believe you (Ruslan) have mentioned that this will be implemented in 2.0, right? Jon From sunshine at public.kherson.ua Wed Jun 30 14:27:58 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Jun 30 06:30:29 2004 Subject: Queries. Question to all In-Reply-To: Message-ID: On 6/30/04 1:29 PM, "erne" wrote: > on 30-06-2004 11:50, Ruslan Zasukhin at sunshine@public.kherson.ua wrote: > >>> Furthermore, according to my experience, I can not imagine too many >>> situations where I would need a case-sensitive search. >> >> Ok, but then please remind me, how in mySQL you will be able >> IF YOU WANT provide case-sensetive seach? >> >> I have CC this to Valentina list. >> For several years nobody have complain that Valentina do on default >> case-sensetive search. What you think guys ? >> >> Should we change this in 2.0 ? >> I think no. >> > > FoxPro/dBase does case sensitive search > but allow specify Upper(Field) in the index expression > > all in all very similar to build indexed BaseObject methods > only indexes are separate from the DB structure > while BaseObject methods are not > and this is less flexible > expecially when using static classes methods to build the DB Hi Erne, On the other hand when you use BaseObject method in the query, you 1) can be sure that all will work AS YOU have ask 2) there is no need for any kind of optimizer, which will get crazy trying to choose the best index. So with BaseObject methods you get ZERO time on optimization of query. We have try to make CREATE INDEX like in foxpro. But when index is standalone, when it just exist in db/table, And is not linked to any field (like it is in BaseObject methods) Then we MUST implement also some kind of analyzer to choose the best index. I have decide that we will not spend time on this 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 Jun 30 14:29:33 2004 From: sunshine at public.kherson.ua (Ruslan Zasukhin) Date: Wed Jun 30 06:31:31 2004 Subject: Queries. Question to all In-Reply-To: Message-ID: On 6/30/04 2:23 PM, "jda" wrote: >> >> >> I have CC this to Valentina list. >> For several years nobody have complain that Valentina do on default >> case-sensetive search. What you think guys ? >> >> Should we change this in 2.0 ? >> I think no. >> > > Since all my searches are case insensitive, I wouldn't object if that > were the default. > > But that's not particularly important, it seems to me. Having to > create a methods for each instance, though, is not particularly > intuitive or friendly. Having a parameter for > caseSensitive|caseInsensitive strikes me as a good thing, and I > believe you (Ruslan) have mentioned that this will be implemented in > 2.0, right? Yes, Jon, and I just only have describe how it will work. And how it will make life easier for developers. -- 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 -------------------------------------------------------------