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 added
to the end of the Varchar field. Also, the lookup text will need to be
Varchar
with 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 the
next 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 Varchar
According 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 Varchar
Mike
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 Varchar
I 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 Varchar
Now this seems to work.... maybe I am afraid to say but I see light at
the end
of the tunnel
Set var vSubj varchar
Select subj into vSubj from ptsoap WHERE custnum = 4545
Set var vSubj = (.vSubj + 'iiiiiiiiiiiiiiiiiiiid
xxxxxxxxxxxxxxxxxxxxxxxxxx ' +.vsubj)
UPDATE ptsoap SET subj = .vSubj WHERE custnum = 4545
edit all from ptsoap WHERE custnum = 4545
Putting the cursor on the Varchar field seems to show it growing to
30000
Now 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 Varchar
Hi Mike
This 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 time
grasping 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 slow
on 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 where
we 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 my
chickens 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 Varchar
You 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't
Output SomeFileName.txt
Write .vVC1 CONTINUE
Write .vVC2
out scr
set var vSUBJ = ['SomeFileName.txt']
UPDATE ptsoap SET subj = .vsubj WHERE custnum = 4545
The 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 bytes
I put 11111111111 222222222222222 3333333333 between the
paragraphs I cut and pasted
to make it easy to see what I was doing
Exit Save ...
Edit using Form, looked in form and all the data was there
UPDATE 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
Contacts
added VC column Varchar repeated the same process cutting and pasting
a bunch of text to get 18 k
Update ...........
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 = 4164
Error value will be truncated
I still only get about 4k in the Varchar field
Something 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 MB
Regards,
Alastair.
----- Original Message -----
From: MDRD
To: RBASE-L Mailing List
Sent: Thursday, June 25, 2009 5:29 PM
Subject: [RBASE-L] - Limit to Long Varchar or Var for Varchar
Hi
I 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 I
do 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.com
Version: 8.5.374 / Virus Database: 270.12.91/2201 - Release Date:
06/25/09 06:22:00
--- RBASE-L
================================================
TO POST A MESSAGE TO ALL MEMBERS:
Send a plain text email to [email protected]
(Don't use any of these words as your Subject:
INTRO, SUBSCRIBE, UNSUBSCRIBE, SEARCH,
REMOVE, SUSPEND, RESUME, DIGEST, RESEND, HELP)
================================================
TO SEE MESSAGE POSTING GUIDELINES:
Send a plain text email to [email protected]
In the message SUBJECT, put just one word: INTRO
================================================
TO UNSUBSCRIBE:
Send a plain text email to [email protected]
In the message SUBJECT, put just one word: UNSUBSCRIBE
================================================
TO SEARCH ARCHIVES:
Send a plain text email to [email protected]
In the message SUBJECT, put just one word: SEARCH-n
(where n is the number of days). In the message body,
place any
text to search for.
================================================