PDA

View Full Version : Mapped Table & Reports


ABC123

Marc Hotchkiss
04-10-2008, 08:34 PM
I just created a mapped table. It seems to work fine everywhere that I have tried it except in a report. (Forms, Lookups on Forms, Web components seem OK)

What I have done is replaced my 'country' field width in a client table (C3) with (C8). Then I have changed my country table by adding an 'autoinc' field of C8 so that if a change was made in the spelling of a country, I wouldn't have to create a routine in the program to change all country fields in any other table that I have.

In my report the country field simply defaults to the first physical record in the country table.

What is rather ironic is in the report calculated fields expression builder I can replace the mapped field with country->id and it gives me the correct three-character abreviation, but it won't let me save the expression because the country table is in theory not present.

Is this a bug or am I missing something?

Thanks,
Marc

Marc Hotchkiss
04-11-2008, 12:28 PM
This must be a bug in reports. Using a mapped table, the fields mapped from secondary tables default to the first physical record in the secondary table when placed on the report.

Anyone else have this problem

Bill Griffin
04-11-2008, 01:19 PM
Mark,


A mapped table, by definition, is a linked table with a one to one relationship. When you define the table you choose first match, last match or closest match. So isn't that what you are saying it is doing? Should you perhaps be defining a set?

I would use a mapped table for a scenario like:

Order file - order info, account number (no account information)
Customer file - account number, name address etc.

The mapped file would contain the order info and the customer info without having to do a lookup. It is a virtual table joined by the account number.

Or maybe I am just misunderstanding what you trying to do.

Marc Hotchkiss
04-11-2008, 04:07 PM
Bill,
Thanks for the reply. Mapped tables excite me due to the fact that it will cut down on a LOT of potential maintenance. I can get them to work as advertised everywhere, forms, browses, web components, except in reports.

I realize that it is a one-to-one and that is what I want, a client should have only one state and one country in there address.

I have zipped an example with a client set (which works fine) and a client map and a simple report for each. Maybe this will help.

I took this from Platinum info:
Alpha Five now allows you to create 'mapped' tables. A mapped table is a virtual table that displays data from one or more physical tables. The mapped table can include all, or a subset of, the field fields in the physical tables that it maps. It can also include calculated columns. Once you have created a mapped table, it appears in the Tables tab of the Control Panel just like any other table. You can create Forms, Reports, Labels, Letters and Operations for mapped tables just as you would for physical tables. Mapped tables can be read-only, or updateable, depending on how they are defined.

I've attached a sample...

Thanks,
Marc

Bill Griffin
04-11-2008, 05:06 PM
There does appear to be a problem with mapped tables and
could be related to the thread below:


http://msgboard.alphasoftware.com/alphaforum/showthread.php?t=72732

You should send in a bug report (Help --->> Send a Bug Report)

Marc Hotchkiss
04-11-2008, 05:22 PM
Thanks Bill! I'll get a bug report off...

Marc

Bill Griffin
04-11-2008, 05:26 PM
When you are staring at a problem like that, you do tend to question your sanity. So either we are both nuts (certainly not out of the realm of possibilities) or something is wrong.

Marc Hotchkiss
04-11-2008, 08:48 PM
I'm also having problems with the browse of a mapped table...

Marc

Selwyn Rabins
04-11-2008, 08:51 PM
I just created a mapped table. It seems to work fine everywhere that I have tried it except in a report. (Forms, Lookups on Forms, Web components seem OK)

What I have done is replaced my 'country' field width in a client table (C3) with (C8). Then I have changed my country table by adding an 'autoinc' field of C8 so that if a change was made in the spelling of a country, I wouldn't have to create a routine in the program to change all country fields in any other table that I have.

In my report the country field simply defaults to the first physical record in the country table.

What is rather ironic is in the report calculated fields expression builder I can replace the mapped field with country->id and it gives me the correct three-character abreviation, but it won't let me save the expression because the country table is in theory not present.

Is this a bug or am I missing something?

Thanks,
Marc

thanks. i can repeat the problem. it is definitely a bug, and we will definitely fix it asap. thanks.

Marc Hotchkiss
04-11-2008, 09:05 PM
Thanks Selwyn. Embedded browse also has a problem when using mapped table. If you need additional info please let me know.

I really am excited about the mapped tables. It takes care of something I have fought for years in several different programming environments.

Marc