Jump to content

This topic is 7234 days old. Please don't post here. Open a new topic instead.

Recommended Posts

Posted

Hi gang,

My app uses PHP as middleware and FM7 for the backend. My data model uses key field IDs to define relationships between tables. Here's an example of records across two tables, Names & Phones:

NameID 1 John Smith :: PhoneID 1, 555.1212

NameID 1 John Smith :: PhoneID 2, 555.3434

NameID 2 Jane Doe :: PhoneID 3, 555.5656

NameID 3 Bob Jones :: PhoneID 4, 555.7878

NameID 4 Bob Jones :: PhoneID 5, 555.9090

For web publication, it is not necessary to define this relationship in FM7. I simply have a primary key, Names:NameID and a corresponding Phones:NameID. Then, using PHP, I can simply grab the NameID in one FX instance from the Names table and use it to find related phone numbers in a second FX instance from the Phones table.

My app is 100% utilized via the web. All my FM7 layouts are already stripped of any GUI for performance - they simply have fields and labels in the default position. I'm thinking performance might be further boosted if I don't define relationships in FM7, plus it speeds up development.

Do you see a reason to define these relationships in FM7? I can see the possibility of a DBA threatening data integrity if they modify records directly in FM7 where relationships don't exist, but again, I can mandate that all data be changed via the web front end.

Thank you for your thoughts in advance.

Shannon

-=-=-

Posted

If the DBA insists on creating the relationships, you could recommend that the "Separation Model" is used to instigate them. This way you will still have untethered access to the data tables.

Good Luck.

Garry

Posted

Garry,

I presume from your response that you agree with me the relationships do not need to be defined in the DB tier. And if they do, you're suggesting an option I hadn't considered - the development of a DBA interface using the separation model. Excellent idea.

Thanks as usual!

Shannon

-=-=-

Posted

If you do not need to use "built-in" relationships, well you do not need to use them ???-)

When we were using CDML, Portals could be handy in some situations, however [FMP-InlineAction] tags were just as effective in other situations.

Using different FX instances for different tables works fine for me (so far).

All the best.

Garry

Posted

I built a few web apps in 1996-98 using FM3 and Tango. I found ways of tweaking FileMaker to boost performance and generally tried to keep the burden off FileMaker.

Using multiple FX instances is working fine for me too. Some pages have 8-10 unique FX calls to separate FM7 tables. The database tier has no logic beyond data entry validation. There are no calculations or scripts or graphics on any layouts. FM7 simply serves as data storage. I do have relationships defined in FM7, but this is just for the ERD drawing and I will likely remove them after development.

Performance is great, but I haven't launched a full production version yet. I know performance can degrade for many reasons at each tier (html/css/js or php or FM7) as well as network conditions, etc. I'm just curious what others have found re: FX and relationships.

What kind of performance testing has anyone here done with FX? Have you noticed a performance boost after removing the relationships in FM7? Any other general FM7 or FMS7A tips you use to tweak faster load times?

Thanks!

Shannon

-=-=-

This topic is 7234 days old. Please don't post here. Open a new topic instead.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.