SevalUcar
1st May 2002, 12:48
Problem : Cannot process "big numbers"
that have more than 15 digits.
Area : BaaN Tools, probably DB Driver level
Env. : BaaN IVc3 MCR
(No pathes has been applied since 1st of Jan.2000),
Oracle 7.3, Windows NT Ent., MSCS,
P.Owner: seval.ucar@toros.com.tr

We are such a rich country (!) and our money has exceeded more than 15 digits.

Oracle 7.3 can handle such big amounts but BaaN IV cannot (may be BaaN V too). More than 15 digit number cannot be processsed correctly in BaaN IV (technical detail is below). We suppose that it had been limited in BaaN DB driver level.

To understand the problem any developer can create a table in BaaN and try process a number like 999.999.999.999.999.999 by BaaN Tools (simple sum up more than 10 numbers like this). Then do the same by Oracle tools and compare the results.

Could any of you using BaaN IV (and BaaN V too) try this and inform me about the result?
We don't know whether this could be solved on DB driver level easiliy or...
Can any of you have idea on how to overcome this limitation?

Thank you.


A bit more technical....
We've created an example table, tfxxx900, that have two fields named as lino (domain is tfgld.lino) and amnt (domain is tfgld.amnt). The table has one index named "index1" on field "lino".
We've added one record in the table and "tfxxx900.lino=1" and "tfxxx900.amnt=1234"
We've generated a session like


declaration:
table ttfxxx900
extern domain tfgld.lino hold.lino
extern domain tfgld.amnt hold.amnt

functions:
hold.lino=1
hold.amnt=1234567890123456789"

select tfxxx900.* from tfxxx900 for update
where tfxxx900._index1={:hold.lino}
selectdo
tfxxx900.amnt=hold.amnt
db.update(ttfxxx900,db.retry)
endselect
commit.transaction()

If you can look at session ttaad4100 and see correct value there is no problem in your system.
We cannot see the right value.:confused:

dbclark79
1st May 2002, 16:59
According to Knowledge Quest for Baan IV, the data type limitations are:

long = 4 bytes = -2147483648 through 2147483647

double = 8 bytes = Floating point with max. 15 significant digits

-David B. Clark
dbclark79@juno.com

SevalUcar
2nd May 2002, 10:48
Thank you for the interest and replies of my question.

We know defining and processing a number that has more than 15 digits that by using BaaN IV Tools seems impossible unless there was a workorund.
But BaaN IV Tools had been programmed too, like all other system and development softwares. Nowadays all database software and many development, CASE tools has no such limitation anymore.

But BaaN IV Tools still has.I don't know whether BaaN V has this limitation too. It was second part of my question.

Whether it is simple definition somewhere in core source code or not, this limitation is inconsistents with today's development. All DB and application development softwares, CASE tools so on support defining such big variables.

The question is, does any of you know how Baan Tools limit this in terms of logic/ core source code behind of it.
Could it be simple definitin somewhere in DBDriver level, such as coding 15 , or does it too much technical detailed and spreaded in core code ?

I also like to make BaaN development pay attantion on being compatible with the DataBases and other devl. tools as well.

Any reply on this level will welcome. Thank you all.

:confused: