At 11:53 AM 6/18/2013, Karen Tellef wrote:

Using build 0611 of 9.5, 64-bit.

I have an integer column holding an invoice# and we want to create invoice
numbers greater than the integer limit. So we'd like to have a BigNum column
instead.

Try #1: I tried doing an ALTER TABLE to simply change the datatype to
BigNum (11,0).
It works, but it put a decimal at the end.  Although this works:
     select all from acctrec where invno >= 1037005
This does not work:
     select all from acctrec where invno = 1037005
I tried putting a decimal, a .0, etc., and I cannot get an "equal" to work.

Try #2: So I added a new column to the table TestBigNum (11,0). If I type in a value, the "select ... = 1037005" works perfectly. So now to get the data over
there...  I tried:
     UPDATE acctrec SET TestBigNum = InvNo
But I actually get the letters "NaN" in the column!

Anyone have a clue how to get these old values converted into a BigNum that is
searchable, or is this perhaps a bug (I've never used BigNum before)

At 01:15 PM 6/18/2013, Kramer, Jason J wrote:

I think there is an error with the typecasting routine used to convert to a
BIGNUM. If you run the code below, you will see that you end up with a table
where the BIGNUM column is filled with textual entries that are the command
that fills them plus some extra garbage.  If you issue the UPDATE itest1 SET
bigcol=intcol command from the command line instead of within the RMD file,
the result is just the text of the command in the bigcol without the extra
garbage. I'm going to report it via R:DCC.

SET VAR viloop INTEGER = 1
SET VAR virndval INTEGER = NULL

CREATE TABLE itest1 (intcol INTEGER,bigcol BIGNUM (11,0),realcol REAL,
doucol DOUBLE)
WHILE viloop <= 1000 THEN
  SET VAR virndval = (RANDOM(1999999999))
  INSERT INTO itest1 (intcol) VALUES .virndval
  SET VAR viloop = .viloop + 1
ENDWHILE

UPDATE itest1 SET bigcol=intcol
UPDATE itest1 SET realcol=intcol
UPDATE itest1 SET doucol=intcol

CLEAR VAR viloop,virndval

RETURN


At 12:52 PM 6/18/2013, Mike Byerley wrote:

Try to project a new table from the old one omitting the INTEGER col and
with Where count = 0, then add a BIGNUM col to that (with a different
colname), then do an Insert from the existing table, test that the new
table behaves properly and if OK, then drop your old table, rename, etc.

At 01:01 PM 6/18/2013, Albert Berry wrote:

I fooled around here, and came up with the following from data types:
BIGNUM maps to DECIMAL
DECIMAL maps to DOUBLE
so I made a dummy database using an invoices table from another
database (59,000+ records)

ALTER TABLE Invoices ADD InvNoBig DOUBLE
UPDATE Invoices SET InvNoBig = InvNo -- ERROR
UPDATE Invoices SET InvNoBig = (FLOAT(InvNo)) -- ERROR
UPDATE Invoices SET InvNoBig = FLOAT(InvNo) -- Yeah!!!

At 10:53 PM 6/18/2013, George H Baker wrote:

Karen,

Try a NUMERIC type designation> I use a Numeric 15 digit field. No decimal.

This is an imported IDnumber on which I search and update records. It has
worked for me. I do no math with it but that should not be a problem.


Karen, Jason, Mike, Albert, George, et al.

You didn't have to find a workaround nor encounter such -ERROR- messages
when using the BIGNUM data type in R:BASE eXtreme 9.5 (64).

I am using R:BASE eXtreme 9.5 (64), Build: 9.5.2.20718, and everything
works as it should.

Jason, thanks for submitting a wonderful sample to the members of our
eXpanded R:Dream Team.

Very Best R:egards,

Razzak.

www.rbase.com
www.facebook.com/rbase
--
30+ years of continuous innovation!
15 Years of R:BASE Technologies, Inc. making R:BASE what it is today!
--

--- 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.
================================================


Reply via email to