Jump to content
View in the app

A better way to browse. Learn more.

FMForums.com

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

how successful is separation model?

Featured Replies

Hi Guys,

You guys keep talking i'm learning a bunch of good information!

Genx,

The link I clicked on the “FileMaker Pro Separation Model” Google search was “Only Click Here If You Can Read!” Click on the following link.

http://filemakertoday.com/com/showthread.php?t=8403&page=2

The conversation on the Separation Model starts with Post#14 by HarryGlos, Ender and Comment and ends with Post number 21 by Comment!

The following quote is from Post#16 4th paragraph.

Lets use a contacts file as an example. One of the first things you want to do is display a first and last name in a unique fashion. Data display issues are the main issue you will have to deal with using a separation model. The goal is don’t dirty your data file, with calculations, scripts etc. You want to keep all functionality in your interface file.

Milo

Edited by Guest

I've been following this thread with great interest and started converting a current file into the SM discussed here. I used the cloning method that Ender provided a link for and have a question.

I made 2 clones of the file one for INTERFACE and one for DATA and did all of the things mentioned on the link and everything is working fine. My question is what about all of the layouts, scripts, custom functions, etc in the DATA file left over from the cloning. Should I just go through and delete them? I know there are a few scripts I need to keep in the DATA file, but should I delete the rest of the stuff?

Thanks,

James

Edited by Guest

Normally you'll have very few scripts in the data file, so you should probably delete almost all of them. Same for layouts, though you'll likely want at least one layout per table, for troubleshooting if nothing else. I personally dislike troubleshooting reams of data on user interface layouts; too much junk in the way, no ability to add/remove fields on-the-fly.

As far as Custom Functions, keep any that are used in field definition calculations (most common use), but delete the others (if they're in the Interface file; don't lose them).

The separation model looks like it will work for my distrubited app, however, I have over 20 forms and tables in one .usr file with reports and so on. It is a desktop app and so networking is not an issue. However, with so many fields how am I to implement this separation model in my app? I do not get how to actually make it.

Hey Kevin,

I don't get over to this forum very often, but this is a great thread by folks who know what they're talking about. Were I you I'd start with the post by Ender http://www.fmforums.com/forum/showpost.php?post/12... Now Ender doesn’t have many good ideas so you need to really jump on the ones he has! : Follow it and you'll be going the right direction. If you have FMP 8.5 Advanced that will help you along. But "Follow the Bouncing Ball" so to speak and you'll do fine.

You'll have some question along the way, many of which have already been covered on this thread. Just shoot em on over and the good folk here will have you well in hand.

The question was asked in an earlier post if SM is easier in 8.5 than it was in 7 and the answer is defiantly!

Live Long & Prosper

Harry

Edited by Guest

Hey Harry,

Its been a while. So you coming over from Cafe to stir up trouble here as well now? :

Harry are you sure you posted the right link?

Hey their Mr. Vodka and Genx,

Mr. Vodka said: It’s been a while. So you coming over from Cafe to stir up trouble here as well now?

I guess I’ll need to spend more time here if you guys keep coming up with threads like this. The FileMaker community has little clue of the importance of what we call the “Separation Model”! I call it the “Common Logic” model myself! There is simply no reason to build otherwise. I know, I know, I here it all the time, “FileMaker is not a SQL system” and was never built for SM. But if God didn’t intent for us to use the Separation Model he would not of given us FMP 9! Have you seen that beauty? Whoa!

Genx, you are so right… Somehow I entered the wrong link and here is the right one… http://www.fmforums.com/forum/showpost.php?post/123239/

It’s Ender I tell you, the boy just makes you want to do wild and crazy stuff. : Hey, in case anyone has missed it “This really is a great thread and I can’t tell you how happy I am I stumbled upon it.

Oh, as far as me being over here on the good ol FM Forum, I should tell you that I’m on my 4th series of shots and have had my picture taken for the visa. After that its just the blood test and I can be a full member here! The strip search not withstanding. Yee-Ha, Yee-Ha! : :

Live Long & Prosper

Harry

But if God didn’t intent for us to use the Separation Model he would not of given us FMP 9! Have you seen that beauty? Whoa!

If you have, I am extremely, extremely, extremely, jealous... But can't wait lol.

Anyway, Stick around eh? :

Ok, I read his thread. I can understand that better now. Having literally over a hundred fields and calcs, this will be a task for sure. I appreciate this guidance, I really need to be able to update my db when I am done. I will let you know what happens...

Hey Kevin,

You have no problem in the world if I'm reading you correctly... You have 8 Advanced so your life will be much easier. The hundreds of fields and calcs are really of little consequence because you don't have to do anything with them. Keep em all in the Data file, strip them out (not the relationships) of the Interface file, point the relationships to the data file (remembering to maintain the exact relationship names) and as they say "Botta-Bing-Botta-Boom"!

Id like to say it's real difficult and you better send it over to me for conversion and I'll only charge you $5,000.00 and save you the grief. Man, just having to read more than a few lines from my good friend Ender (He doesn't even know who I am) : is punishment enough. Hey... It ain't a big deal. Use to be but not now. As Fenton and others have said. It's so seamless you go to the interface file forgetting the fields and calcs aren't there anymore.

Look, if it doesn't work you can always blame Ender... We all do! :

Lol, whats up with you and Ender eh?

It's so seamless you go to the interface file forgetting the fields and calcs aren't there anymore.

Entirely true. At first it was a bit annoying, but now the only place i logically go is to my data file to define stuff.

Thanks Harry, but although the data file is receiving the data from the interface file fine, if I was to make new fields in the interface file and send it to the customer as an updated improvement to the database, how would the data file know how to recognize the new fields added and the data generated from them?

Say I have the 2 files, data and interface. Now I forgot to add a phone number to the whole scheme. I distribute the database. Now I have a number of people with this bad database. I add the phone number field in the interface and send it to the customers. Boom, they have an updated database, however the data file they have does not have a place for the new addition of the phone number.

Edited by Guest

In the case you just specified, you would have to send a new data file as well since you just ADDED a new field for additional Data. Then to display it, you would have to send a new interface file as well.

Yes Kevin, It's what he said… After a few belts for clarity John comes through with both verve and panache. Ok so maybe just the verve part for the moment, but I know John’s been working on the panache part for years… :

Genx Said: Lol, whats up with you and Ender eh?

Mike and I go back a long way over on the Café. He is one of those people who can give it and take it with a great sense of humor and incredibly knowledgeable about FileMaker. Please say nothing to him about such accolades. You can’t live with him now and this would just throw the boy right over the fence. Plus he thinks “Accolades” is a topping for an ice-cream Sunday! :

Live Long & Prosper,

Harry

Edited by Guest

In the case you just specified, you would have to send a new data file as well since you just ADDED a new field for additional Data. Then to display it, you would have to send a new interface file as well

Not nesserary true, this can be taken to a higher abstraction level, like Raz in this thread and Johnathan Stark in these two links:

http://www.jonathanstark.com/downloads/Ginko.fp7.zip

http://www.jonathanstark.com/downloads/uddm_examples.zip

Now this is admitted, way to deep to my way of thinking, but the way I add would add each new field to a solution, could be utilizing this:

http://www.filemakermagazine.com/videos/data-tagging-classification-vs-organization.html

...this means that a field is a foreignID, label and data.

--sd

You all are great. That is one reason I have stayed with FM, great sense of humor and superb assistance from some really great minds. I guess I have decided to rethink my strategy. I will develop my app and if there are any bugs I can update the interface and all is good. If there are any additions, it will be in my next release, while making a list of new features. This will help keep ,my mind from frizzing out. Again, thanks so much for getting me on the right track. :

Hey Guys,

I know this may be offensive to some of the purists in the group. But for those who are less, shall we say, squeamish and more, shall we say, enlightened, I would recommend ...Unused Fields… "Don’t look Molly he said the “U” word"! Yes I did… A few unused fields sprinkled here and there, yep I got that from the food forum, can solve a lot of future headaches!

Remember we’re talking about Separation Model here… Just think about it boys and girls… :

Look, if you cut us do we not bleed? If you kick us do we not say ouch? If you show us a hot chick in a bikini do we not say hubba-hubba? If you say Microsoft Access do we not suffer in the region of the gas-tonal intestinal tract? :

Deploy your solution with unused fields (Think Data File) and save yourself a lot of grief later! Just think about it for a while and we’ll talk more later!

Hey Kevin, Neat Web Site!

Live Long & Prosper,

Harry

Edited by Guest

Amazing Harry... Thanks for the comment : I was just about to post my idea of having say, 5 fields for future access as needed... : And then you said it first....you beat me to the punch. But it will solve future headaches, you are right. I was thinking 5 numeric, 5 data, and so on as a backup. Way to go.

And remember, that you can have a Globals table in the Interface file, for temporary data. Though this is much ameliorated by the script Variables in FileMaker 8. Still, sometimes you just gotta use a global, for relationships, etc..

Wow, I take a few days off, and somebody let Harry in. What's up with that? You all should know better. Poor Kevin's gonna come away thinkin' database development is just a bunch of fun and games.

Trust me Kevin: Don't believe anything Harry tells you. It's all fiction. Except when he says something like "Ender is right," he's usually right about that.

While I appreciate the "accolades", the recipe I supplied is just what I could gleam from Colleen and Wendy, the original Separation Model mavens. They were doing Separation Model back before FM7, when it was really convoluted.

Whew, all these big words are giving me a headache. Now I gotta go look up "ameliorated"...

Lol, aight, that's my word for the day: ameliorated = "to make better".. i think lol.

Sorry, I didn't mean to obfuscate the issue :-]

I've got to tell you the truth... You guys just have me flummoxed. :

Harry

... I ... am a banana!

(thought i'd add a little maturity to this topic :o )

Hi guys,

I thought you may be interested in Harry’s new post on the Café called “The Deadbeats Spoke & Harry listened!” I think you’d enjoy it, It’s his same brand of zany! Here’s the link.

http://www.filemakertoday.com/com/showthread.php?t=13239

Milo

Lol,

It's nice, but what surprises me is the amount of features he managed to shove on the one layout and still keep it looking decent!!

  • 3 weeks later...

Hi Everyone,

I sure hope you can help me with this. I've converted a single file solution into SM and everything is working fine except this and its a biggy.

I have an Invoice, Products & Line Items relationships. In the products file each product can have up to 6 different prices based on 6 different volume levels of Direct Delivery. The FOB field and Warehouse field each have one price only.

When the New Order button is clicked on the Invoice the first place you go is the Order Type field where you select either Direct, FOB or Warehouse. You cannot enter an order until one is selected. Direct, FOB or Warehouse is the trigger in the calculation to pull the right prices. You start entering products into the Line Items portal on the Invoice. FOB and Warehouse have only one price per product regardless of the volume ordered. But as I said above there are up to 6 different price points based on a DIRECT shipment order and the price you pay for each product is based on the volume of the total order.

In my single file solution this works perfectly. When I converted it to SM it doesn't and I can't figure out way. The relationships are the same, everything I know to check is the same. But it's not working.

I can't even figure out where the prices are comming from. One of the products I just entered into the Line Items portal on the Invoice layout shows a case price of $22.40 but when I look on the product screen for that product there is not a $22.40 case price even shown for that product.

I don't know what else to do or where else to look because as I said, it works perfectly on my single file solution.

Can you give me some idea where to look?

Thanks guys, I really need your help with this.

Milo

  • 3 weeks later...

Hey Milo,

I think you most likely have more of a relation issue than you do a Separation Model issue. The first thing I’d do is check your calculations and make sure they are pointing in the right direction. Look under Specify Calculation in your calc fields and make sure that the [color:blue]“Evaluate this calculation from the context of: is pointing where it should. Also make sure that the table is properly set above the field selection window.

The second place I’d look are the field lookups, make sure they are pulling from the right places. I doubt that lookups are causing the problem, these are generally not break points in conversion. But as I said, I doubt from what you’ve explained that the problem has to do with SM. You’ve had to go through quite a few steps to convert and I have a feeling somewhere something went array. That’s the opposite of awheat or asourdough! :)

Hope this helps, let us know…

Harry

Edited by Guest

Hi Harry,

“Evaluate this calculation from the context of:" is it pointing where it should. Also make sure that the table is properly set above the field selection window.

That's it. I'm ashamed to say I didn't even know the Evaluate was even there. So much for brain power. Thanks so much for the help.

Milo

  • 3 years later...

No, it's not at all like FileMaker 6 structure.* In 6 each file contained its own data, shown on its own layouts. Any data from another file had to be shown in portals (or as a single instance). To view another file's data in a list, and work with it as local, you had to go to the other file.

If you look at the file I uploaded you'll see that the data "shows" on regular layouts as regular fields in BOTH files. It is editable, searchable, etc.. as if it was local to that file. But there is NO table at all in that Interface file (there could be, and likely would be, for globals/constants at least, but for this simplest example there is not).

When you go to the Relationship Graph in the Interface file, you will create and work with table occurrences of the DATA file just as if you were in the DATA file itself. In my example, a DATA file TO is the only TO on the graph in the Interface file.

Same with Scripts. About the only time you really notice that you're in the Interface file is when you go into Define Database, then look at Tables or Fields. Sometimes you do this by mistake; "Duh, they're in the other file!". It's that transparent.

Table occurrences are based on File References. These can be from any FileMaker file available in your environment. You can create a table occurrence then a layout based on it. The data is then available as local. It is NOT related data.

It's a difficult concept when you're used to thinking in FileMaker 6 paradigm. But it's so much more convenient. It makes complex inter-table scripting so much easier.

*Actually, perhaps I've gone off on a rant (it happens <img src='http://fmforums.com/forum/public/style_emoticons/<#EMO_DIR#>/smile.gif' class='bbc_emoticon' alt=':' />-). You're right, it is similar to 6, the concept that you can open (hidden) and interact with another file by creating a relationship to it (which created a File Reference, but it was not visible). I'm sure that was quite a (welcome) surprise to the FileMaker 2 folks. But it's way beyond that.

Hey Fenton,

I have been working on converting a group of solutions into one separation model. I have one portion pretty much done, although I do have a fair number of calculations in the data file as well as globals some for exploded string keys for dynamic portals and such. I wanted to eliminate as many calculation as possible from the data file, then I noticed in this post you mentioned putting globals in the UI. Can you explain a little about this. At this point I do not have a single field in the UI.

Also really wondering about adding in the next group of tables into this solution as they are heavy with calculation fields and the thought of scripting 100 calculations is very daunting. Where do you draw the line ( if you draw a line ) on calculations in the Data file? Though this part is really the meat of this project It almost makes me want to drop separation altogether or just go ahead and keep basic calculations in the data file.

The reason I want to set this up as a separation model is It will be a new release of a "shrink wrap" product that I would like to simplify the upgrade process as new versions and features are added to the UI.

  • 3 weeks later...

Hey Truly,

You may want to check out http://filemakertoday.com/com/showthread.php/28185-The-quot-Separation-Model-quot-Matt-Petrowsky-of-FileMaker-Magazine-and-Me! We are discussing the separation model and you may find some things of interest.

Harry

Hey Truly,

You may want to check out http://filemakertoday.com/com/showthread.php/28185-The-quot-Separation-Model-quot-Matt-Petrowsky-of-FileMaker-Magazine-and-Me! We are discussing the separation model and you may find some things of interest.

Harry

Thanks Harry.

I will check it out. :)

Oh, yes I have read much of this. Liked some of the videos that were free. Not sure if i want to subscribe to see the rest. :(

Create an account or sign in to comment

Important Information

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

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.