What about using a numeric data type with fixed decimal location as a
primary key?
------------------------------------------------------------------------
*From:* [email protected] <[email protected]> on behalf
of [email protected] <[email protected]>
*Sent:* Wednesday, November 8, 2023 6:07 PM
*To:* [email protected] <[email protected]>
*Subject:* RE: [RBASE-L] - Where do I set my Vars?
If I understand correctly, by Universal Key you mean a Primary Key
with Foreign keys linked. I personally would not use a real or double
type as Primary key, precisely because of the problems you are
encountering. You can have the same value generated at different time
and depending on how is computed can default to a different valuer,
or two different values that default to the same value. All my
primary keys, and by extension foreign keys, have the type INTEGER or
TEXT.
Now, if you want to change the type, you need to go to all the linked
tables, disable the primary/foreign link to the primary table an
rename them to a temporary name. Then, you can go to the primary
table and change the type to what ever you need it to be, and the n
go back to the secondary tables and change the name back to the
original at which time they will adopt the new type and then re-ink
them to the primary table, makes sense? There is a rename command,
but if I recall correctly, will not work with linked columns. If you
are going to do this, I would suggest converting your REAL values to
INTEGER and use them as the primary key.
At one time, I had the need to change the text length of several
primary columns and their corresponding foreign columns in numerous
tables as the needs changed. I wrote a program where you would select
the name of the primary table, primary key and the new length and the
application would do the entire process described above
automatically. If you need to do this once, you can do it manually;
however, if you have multiple occurrences, writing a program to do it
would be the best way.
Javier,
Javier Valencia, PE
14315 S Twilight Ln
Olathe, KS 66062
913-915-3137
*From:* [email protected] <[email protected]> *On
Behalf Of *Lin MacDonald
*Sent:* Wednesday, November 8, 2023 3:02 PM
*To:* [email protected]
*Subject:* Re: [RBASE-L] - Where do I set my Vars?
Sadly, that's about when I wrote this! It is a Universal Key
attached to several other tables so I can't really change it to a
double, I guess
Lin
On Wed, Nov 8, 2023, at 12:43 PM, 'Karen Tellef' via RBASE-L wrote:
Welcome to the not-so-wonderful world of the "REAL" datatype.
Long ago in DOS days that was the only datatype (other than
currency) that allowed decimals. Unfortunately it isn't real
accurate IMO (pun intended). Most of us switched all those Real
numbers to the DOUBLE datatype. With Double, a 104.31 is always
stored and displayed exactly as 104.31. With Real, internally
that number may be stored as something like 104.309187983. So
depending on your display formatting, you could get different
representations to the screen.
Looks like the 000.## type of formatting might be truncating. In
my example, it would display as 104.30 or 104.309 even tho the
number is actually 104.31. Someone else suggested using the
ROUND function if you know how many decimal places you want
displayed.
Karen
On Wednesday, November 8, 2023 at 01:47:25 PM CST,
[email protected] <[email protected]> wrote:
Hello Razzak,
Thank you - that is what I was looking for. I knew there was a
simple solution.
I am getting a strange output though: the real number stored is
104.31
000.## prints as 104.30
000.### prints as 104.309
This is an unusual situation where the number stored could
possibly be 4 numbers to the left of the decimal and 3 to the
right (we have never had more than 2 to the right)
thanks for the help!
Lin
On Tuesday, November 7, 2023 at 7:57:30 PM UTC-8 Razzak Memon wrote:
Lin,
Here's how ...
Please take a look at the attached illustration.
* Open the report in Report Designer
* Right-click on the Variable Object and select Display Format
* Under the Display Format option change the Display Format
to *0.000*
* Click on the [OK] button to save the Display Format
* Click on the [Preview] Tab to preview while still in
Report Designer
* Save the report and close the Report Designer
That's all there is to it!
I hope it helps!
Very Best Regards,
Razzak
On 11/07/2023 8:53 PM EST Lin MacDonald
<[email protected]> wrote:
This will sound silly, but I am working on a system that
I wrote several years ago, but can't remember most of
what I wrote!
I have a report that prints a Var (type: Real) It is now
printing it with 7 places after the decimal point. I
need it to print a max of 3 places. Where do I set the
number of places? I honestly can't rmemeber!
Lin
--
For group guidelines, visit
http://www.rbase.com/support/usersgroup_guidelines.php
---
You received this message because you are subscribed to
the Google Groups "RBASE-L" group.
To unsubscribe from this group and stop receiving emails
from it, send an email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/rbase-l/1c446867-f6d4-49b8-adc4-3252ed914b4b%40app.fastmail.com
<https://groups.google.com/d/msgid/rbase-l/1c446867-f6d4-49b8-adc4-3252ed914b4b%40app.fastmail.com?utm_medium=email&utm_source=footer>.
--
For group guidelines, visit
http://www.rbase.com/support/usersgroup_guidelines.php
---
You received this message because you are subscribed to the
Google Groups "RBASE-L" group.
To unsubscribe from this group and stop receiving emails from it,
send an email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/rbase-l/c065ed53-23d4-4581-baa4-11a2e5034242n%40googlegroups.com
<https://groups.google.com/d/msgid/rbase-l/c065ed53-23d4-4581-baa4-11a2e5034242n%40googlegroups.com?utm_medium=email&utm_source=footer>
.
--
For group guidelines, visit
http://www.rbase.com/support/usersgroup_guidelines.php
---
You received this message because you are subscribed to the
Google Groups "RBASE-L" group.
To unsubscribe from this group and stop receiving emails from it,
send an email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/rbase-l/1942164164.930636.1699476193291%40mail.yahoo.com
<https://groups.google.com/d/msgid/rbase-l/1942164164.930636.1699476193291%40mail.yahoo.com?utm_medium=email&utm_source=footer>.
--
For group guidelines, visit
http://www.rbase.com/support/usersgroup_guidelines.php
---
You received this message because you are subscribed to the Google
Groups "RBASE-L" group.
To unsubscribe from this group and stop receiving emails from it,
send an email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/rbase-l/c022b428-2852-45c0-bb15-d0acaa5c2fee%40app.fastmail.com
<https://groups.google.com/d/msgid/rbase-l/c022b428-2852-45c0-bb15-d0acaa5c2fee%40app.fastmail.com?utm_medium=email&utm_source=footer>.
--
For group guidelines, visit
http://www.rbase.com/support/usersgroup_guidelines.php
---
You received this message because you are subscribed to the Google
Groups "RBASE-L" group.
To unsubscribe from this group and stop receiving emails from it,
send an email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/rbase-l/0fb501da1298%24668608c0%2433921a40%24%40vtgonline.com
<https://groups.google.com/d/msgid/rbase-l/0fb501da1298%24668608c0%2433921a40%24%40vtgonline.com?utm_medium=email&utm_source=footer>.