----- Original Message ----- From: "MDRD" <[email protected]>
To: "RBASE-L Mailing List" <[email protected]> Sent: Friday, June 26, 2009 8:50 AM Subject: [RBASE-L] - Re: Limit to Long Varchar or Var for Varchar
Mike This is for storing patient treatment records so it has to be rock solid and is the key to the future of my app. I think further testing is needed and hopefully RBTI will jump in on if this is legal or not. We need to be able to touch a button then a block of text gets addedto the end of the Varchar field. Also, the lookup text will need to be Varcharwith Bold and Red text and keep that format in the main Varchar field.I am sure if this is not legal Razzak and the Dream Team will add it in thenext update of 7.6 and 8.0. Thanks everyone Marc -------------------------------------------------- From: "MikeB" <[email protected]> Sent: Thursday, June 25, 2009 6:01 PM To: "RBASE-L Mailing List" <[email protected]> Subject: [RBASE-L] - Re: Limit to Long Varchar or Var for VarcharAccording to the results I am getting at this moment, that seems to be legal. I cannot explain the anomoly that occured before, but I will chalk it up to operator error as I didn't do it in a file as I should have, but from the R>, so I lose the auditing of my own actions (which these days, I usually do audit them)...----- Original Message ----- From: "MDRD" <[email protected]>To: "RBASE-L Mailing List" <[email protected]> Sent: Thursday, June 25, 2009 6:54 PM Subject: [RBASE-L] - Re: Limit to Long Varchar or Var for VarcharMike This makes me nervous. I changed my EEP code to the below and it seems to work I started with 4194 in the Varchar field by doing Edit all and putting the cursor on the field Then Edit Using myForm, clicking the Button to add text and now I have 6748 in the column Set var vxSubj varchar = null Select subj into vxSubj from ptsoap WHERE ptspid = .vptspid SET VAR vadjdesc varchar = NULL SELECT spdesc INTO vadjdesc FROM soapcode + WHERE spcode = .vscode AND COUNT = .vsprad ORDER BY spver SET VAR vadjdesc2 varchar = NULL SET VAR vadjdesc2 = (SRPL((SRPL((SRPL(.vadjdesc, + '[fname]',.vfname,0)), '[heshe]',.heshe,0)),'[himher]', .himher,0)) set var vsubjAll varchar = (.vxsubj + Vadjdesc2 + ' ') UPDATE ptsoap SET subj = .vsubjALL WHERE ptspid = .vptspid So should I trust this or not? Thanks everyone for helping Marc -------------------------------------------------- From: "MikeB" <[email protected]> Sent: Thursday, June 25, 2009 5:41 PM To: "RBASE-L Mailing List" <[email protected]> Subject: [RBASE-L] - Re: Limit to Long Varchar or Var for VarcharI get the same result now.. When I tested this before my last post, I did all the requisite checks like:set var vc1 varchar = 'Mike' set var vc2 varchar = 'Byerley'set var vc3 varchar = ('Mike' + .vc2) -- this resulted in the expected "Cannot add Text to Varchar" set var vc3 varchar = (.vc1 + .vc2) -- this resulted in the expected "Cannot add VarChar to Varchar"This does appear to be legal, but on the issue of concantenation in the UPDATE expression, I am sure you are hosed.----- Original Message ----- From: "MDRD" <[email protected]>To: "RBASE-L Mailing List" <[email protected]> Sent: Thursday, June 25, 2009 5:22 PM Subject: [RBASE-L] - Re: Limit to Long Varchar or Var for VarcharNow this seems to work.... maybe I am afraid to say but I see light at the endof the tunnel Set var vSubj varchar Select subj into vSubj from ptsoap WHERE custnum = 4545Set var vSubj = (.vSubj + 'iiiiiiiiiiiiiiiiiiiid xxxxxxxxxxxxxxxxxxxxxxxxxx ' +.vsubj)UPDATE ptsoap SET subj = .vSubj WHERE custnum = 4545 edit all from ptsoap WHERE custnum = 4545Putting the cursor on the Varchar field seems to show it growing to 30000Now will using this in a form mess something up?? Marc -------------------------------------------------- From: "MDRD" <[email protected]> Sent: Thursday, June 25, 2009 4:10 PM To: "RBASE-L Mailing List" <[email protected]> Subject: [RBASE-L] - Re: Limit to Long Varchar or Var for VarcharHi MikeThis is the main selling point in my app and why I needed to update to 7.6 I have been bragging on my new note features, huge notes, no more 4k limit .... on and on.I thought 7.6 allowed full string manipulation on Varchar fields? Man am I having a hard timegrasping this and looks like I am in over my head big time.If I save to a file would I loose all the formatting stuff like Bold? Seems like this may be slowon workstations too? If I can not find a good way around this my app is dead and the guy with the MS SQL Exp and .Net will win this little battle we have.Using the Editor is not an option, I need a DB Memo or Rich Edit on the form the user presses a button and a paragraph of text is added to the bottom of the "notes" anything less will not keep up with the Jones so to speak. Also, the lookup text is only 4k currently and in a note field, some users want that to be bigger wherewe look up 12k from a table then drop it into this form.This is something I am suppose to have done in July and of course I was counting mychickens too soon. Some days I regret I do not drink Marc -------------------------------------------------- From: "MikeB" <[email protected]> Sent: Thursday, June 25, 2009 3:14 PM To: "RBASE-L Mailing List" <[email protected]> Subject: [RBASE-L] - Re: Limit to Long Varchar or Var for VarcharYou can't add text, note, OR Varchar data to another Varchar, but since you include your manipulation in an expression "UPDATE ptsoap SET subj = (subj + 'iiiiiiiiiiiiiiiiiiiid ') WHERE custnum = 4545...", The engine has placeholders for upto Note datatype. So even though your column is type VarChar, in the Expression it is converted to Note, making it a Note concantenation, which is legal, but the placeholder is also of Note length, truncating the returned data. You are going to have to jump through some hoops to concantenate your VarChar data. The "Continue" parameter of the WRITE command doesn't work with VarChar data, so you can'tOutput SomeFileName.txt Write .vVC1 CONTINUE Write .vVC2 out scr set var vSUBJ = ['SomeFileName.txt'] UPDATE ptsoap SET subj = .vsubj WHERE custnum = 4545The only other way I can think of is to use a hidden variable listbox and first write your VarChar data to a file, then using the Load_From_Filename property of the listbox, load the varchar data. Then you can take the first line or last line as it pleases you, concantenate the data, then Save_To_Filename from the ListBox, then set your VarChar data to the diskFile, then perform your update.----- Original Message ----- From: "MDRD" <[email protected]>To: "RBASE-L Mailing List" <[email protected]> Sent: Thursday, June 25, 2009 3:16 PM Subject: [RBASE-L] - Re: Limit to Long Varchar or Var for Varchar Man this is nuts I did Edit all from table where custnum = 4545... Double click the Varchar field I pasted several paragraphs until I had 200 lines and 18326 bytesI put 11111111111 222222222222222 3333333333 between the paragraphs I cut and pastedto make it easy to see what I was doing Exit Save ... Edit using Form, looked in form and all the data was thereUPDATE ptsoap SET subj = (subj + 'iiiiiiiiiiiiiiiiiiiid ') WHERE custnum = 4545...edit all from ptsoap WHERE custnum = 4545 ALL data past 4k is now Lost and deleted Then I went to RRBYW14 Contactsadded VC column Varchar repeated the same process cutting and pasting a bunch of text to get 18 kUpdate ........... got the same results 18k dropped to 4k after the Update command So what is the secret to get a Varchar to hold more than 4k? Marc From: jan johansen Sent: Thursday, June 25, 2009 12:54 PM To: RBASE-L Mailing List Subject: [RBASE-L] - Re: Limit to Long Varchar or Var for Varchar Marc, This is starting to sound like a structure issue. A while back I had a table that had 4 notes in it. I started having trouble with it as people were getting verbose in their typing. I had to split the table into 4 seperate tables with 1 note in each table. In 7.6 the row length is limited to 4096. I don't know if that is what is going on for you or not. Jan-----Original Message----- From: "MDRD" <[email protected]>To: [email protected] (RBASE-L Mailing List) Date: Thu, 25 Jun 2009 12:39:07 -0500 Subject: [RBASE-L] - Re: Limit to Long Varchar or Var for Varchar I started with a new DB, ALTER TABLE ptsoap ALTER subj TO subj VARCHAR (30000)UPDATE ptsoap SET subj = (subj + 'ddddddddddddd ') WHERE custnum = 4545 and ptspid = 4164Error value will be truncated I still only get about 4k in the Varchar fieldSomething is Strange and the Varchar is acting like a note field even from the R>Marc From: Alastair Burr Sent: Thursday, June 25, 2009 11:49 AM To: RBASE-L Mailing List Subject: [RBASE-L] - Re: Limit to Long Varchar or Var for Varchar either use Long Varchar: LONG VARCHAR Same as VARCHAR, with a length of 256 MB or VARCHAR · Holds alphanumeric data; you must set the maximum length· If you set the maximum length to a value over 32,767 characters, the limit is ignored and defaults to 256 MBRegards, Alastair.----- Original Message ----- From: MDRDTo: RBASE-L Mailing List Sent: Thursday, June 25, 2009 5:29 PM Subject: [RBASE-L] - Limit to Long Varchar or Var for Varchar HiI have a form with a Varchar field for notes. I can only get about 4k in the varchar field I use this code in a EEP that adds paragraphs to the end of the Varchar field. It works great up to a point then quits working as if I hit a limit like 4k for a note field.No errors on Trace.I knew at one time the Property command in 7.5 was limited to I think 1500 characters So I had to use this Update method but it looks like I hit another limit some where but Ido not know what? This is the major request we have, larger notes SET VAR vadjdesc varchar = NULL SELECT spdesc INTO vadjdesc FROM soapcode + WHERE spcode = .vscode AND COUNT = .vsprad ORDER BY spver SET VAR vadjdesc2 varchar = NULL SET VAR vadjdesc2 = (SRPL((SRPL((SRPL(.vadjdesc, +'[fname]',.vfname,0)), '[heshe]',.heshe,0)),'[himher]', .himher,0))UPDATE ptsoap SET subj = (subj + .vadjdesc2 + ' ') + WHERE ptspid = .vptspid PROPERTY table ptsoap 'refresh' Thanks Marc ---------------------------------------------------------------------------- No virus found in this incoming message. Checked by AVG - www.avg.comVersion: 8.5.374 / Virus Database: 270.12.91/2201 - Release Date: 06/25/09 06:22:00

