kevin frank's anchor-buoy presentation long
TRANSCRIPT
![Page 1: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/1.jpg)
Grappling with 7(part 2)
Kevin Frank8/16/05
![Page 2: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/2.jpg)
Grappling with 7(part 2)
Kevin Frank8/16/05
![Page 3: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/3.jpg)
Grappling with 7(part 2)
Kevin Frank8/16/05
![Page 4: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/4.jpg)
Grappling with 7(part 2)
Kevin Frank8/16/05
![Page 5: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/5.jpg)
![Page 6: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/6.jpg)
![Page 7: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/7.jpg)
Arcata, CA
![Page 8: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/8.jpg)
How Many Of You...
![Page 9: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/9.jpg)
How Many Of You...
• Have built and deployed one or more FM7 solutions?
![Page 10: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/10.jpg)
How Many Of You...
• Have built and deployed one or more FM7 solutions?
• Have converted and deployed one or more FM7 solutions?
![Page 11: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/11.jpg)
How Many Of You...
• Have built and deployed one or more FM7 solutions?
• Have converted and deployed one or more FM7 solutions?
• Are currently building a FM7 solution?
![Page 12: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/12.jpg)
How Many Of You...
• Have built and deployed one or more FM7 solutions?
• Have converted and deployed one or more FM7 solutions?
• Are currently building a FM7 solution?
• Are sticking with FM6 until they pry it from your cold, dead fingers?
![Page 13: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/13.jpg)
If you have questions...
![Page 14: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/14.jpg)
If you have questions...Please interrupt me
and ask them.
![Page 15: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/15.jpg)
If you have questions...
I don’t mind...
Please interrupt meand ask them.
![Page 16: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/16.jpg)
If you have questions...
I don’t mind...(at all).
Please interrupt meand ask them.
![Page 17: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/17.jpg)
I only have one request...
![Page 18: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/18.jpg)
I only have one request...
![Page 19: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/19.jpg)
Violators willface thewrath
of
![Page 20: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/20.jpg)
![Page 21: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/21.jpg)
![Page 22: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/22.jpg)
< a.k.a. >< a.k.a. >
![Page 23: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/23.jpg)
![Page 24: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/24.jpg)
![Page 25: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/25.jpg)
Let’s start with a simple example
![Page 26: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/26.jpg)
Let ( [VL = "Header";L = ValueListItems ( Get ( FileName ) ;VL);X = PatternCount(L;"¶")+1;N = 1+Mod(X+gScriptParameter;X);E = MiddleWords(L;N;1);T = MiddleWords(FieldType (Get ( FileName ) ;E);2;1);P = gScriptParameter;G = GetField(E)];
Choose(P>2;Case(T="Number";Right("00000000"&G;8);G);Case(T="Number";1/(G+2);T="Date";Date(12;12;3000)-G;T="Hour";Time(23;59;59)- G;T="Text";Substitute( Upper(G); ["A"; "z"]; ["B"; "y"]; ["C"; "x"]; ["D"; "w"]; ["E"; "v"]; ["F"; "u"] ; ["G"; "t"]; ["H"; "s"]; ["I"; "r"]; ["J"; "q"]; ["K"; "p"]; ["L"; "o"]; ["M"; "n"]; ["N"; "m"]; ["O"; "l"]; ["P"; "k"]; ["Q"; "j"]; ["R"; "i"]; ["S"; "h"]; ["T"; "g"]; ["U"; "f"]; ["V"; "e"]; ["W"; "d"]; ["X"; "c"]; ["Y"; "b"]; ["Z"; "a"] ) )))
![Page 27: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/27.jpg)
( just kidding )
![Page 28: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/28.jpg)
Main Presentation:
Anchor/Buoy
A FM7 Relational Graph Design Approach
![Page 29: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/29.jpg)
What is A/B ?
![Page 30: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/30.jpg)
What is A/B ?
• A layout-centric approach to the RG
![Page 31: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/31.jpg)
What is A/B ?
• A layout-centric approach to the RG
• that restores the simplicity of 6-style relationships
![Page 32: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/32.jpg)
What is A/B ?
• A layout-centric approach to the RG
• that restores the simplicity of 6-style relationships
• without sacrificing the power of 7-style relationships
![Page 33: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/33.jpg)
What is A/B ?
• A layout-centric approach to the RG
• that restores the simplicity of 6-style relationships
• without sacrificing the power of 7-style relationships
• [ a brain child of Soliant Consulting ]
![Page 34: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/34.jpg)
XX
6
7
![Page 35: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/35.jpg)
A Primary Goal of Anchor/Buoy…
![Page 36: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/36.jpg)
A Primary Goal of Anchor/Buoy…
Is to make TO’s Is to make TO’s manageable inmanageable inscrolling listsscrolling lists
![Page 37: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/37.jpg)
e.g.e.g.
![Page 38: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/38.jpg)
![Page 39: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/39.jpg)
![Page 40: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/40.jpg)
etc.etc.
![Page 41: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/41.jpg)
![Page 42: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/42.jpg)
One of the biggest areas of confusion for developers making the transition
from FM 6 to FM 7 is…
![Page 43: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/43.jpg)
One of the biggest areas of confusion for developers making the transition
from FM 6 to FM 7 is…
![Page 44: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/44.jpg)
One of the biggest areas of confusion for developers making the transition
from FM 6 to FM 7 is…
The RelationalThe RelationalGraph (RG)Graph (RG)
![Page 45: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/45.jpg)
For one thing… it sometimes superficially resembles an…
![Page 46: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/46.jpg)
For one thing… it sometimes superficially resembles an…
Entity-Relationship DiagramEntity-Relationship Diagram
![Page 47: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/47.jpg)
But despite the superficial resemblance…
![Page 48: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/48.jpg)
But despite the superficial resemblance…
RG RG ERD ERD
![Page 49: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/49.jpg)
Of the three Database “Layers”...
![Page 50: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/50.jpg)
Data
Of the three Database “Layers”...
![Page 51: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/51.jpg)
Data
Business
Of the three Database “Layers”...
![Page 52: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/52.jpg)
Data
Business
Presentation
Of the three Database “Layers”...
![Page 53: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/53.jpg)
Data
ERDs only describe this layer...
![Page 54: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/54.jpg)
Data
Business
Presentation
The RG is essential toall three layers
![Page 55: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/55.jpg)
But despite the superficial resemblance…
<digression><digression>
![Page 56: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/56.jpg)
This is an ERDThis is an ERD
![Page 57: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/57.jpg)
![Page 58: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/58.jpg)
FileMaker 7FileMaker 7is a great toolis a great tool
![Page 59: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/59.jpg)
……but it’s not the but it’s not the right tool forright tool formaking ERDsmaking ERDs
![Page 60: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/60.jpg)
RG RG ERD ERD
![Page 61: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/61.jpg)
RG RG ERD ERD…nor does it needto resemble one(even remotely)
![Page 62: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/62.jpg)
But despite the superficial resemblance…
</digression></digression>
![Page 63: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/63.jpg)
Another reason developers may find the FM7 RG confusing...
![Page 64: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/64.jpg)
Another reason developers may find the FM7 RG confusing...
![Page 65: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/65.jpg)
Another reason developers may find the FM7 RG confusing...
AND THAT’S PUTTING IT MILDLYAND THAT’S PUTTING IT MILDLY
![Page 66: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/66.jpg)
![Page 67: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/67.jpg)
![Page 68: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/68.jpg)
![Page 69: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/69.jpg)
![Page 70: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/70.jpg)
![Page 71: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/71.jpg)
![Page 72: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/72.jpg)
![Page 73: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/73.jpg)
=
![Page 74: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/74.jpg)
=
![Page 75: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/75.jpg)
In FM6: we named these...
![Page 76: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/76.jpg)
In FM7: we name these...
![Page 77: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/77.jpg)
Some Basic Terminology
![Page 78: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/78.jpg)
Some Basic Terminology
Table = “a unique set of records and fields”
![Page 79: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/79.jpg)
Some Basic Terminology
Table = “a unique set of records and fields”
a.k.a. Base Table
![Page 80: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/80.jpg)
Some Basic Terminology
Table = “a unique set of records and fields”
a.k.a. Base Table
TO = table occurrence
![Page 81: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/81.jpg)
Some Basic Terminology
Table = “a unique set of records and fields”
a.k.a. Base Table
TO = table occurrenceMike Harris: TO Table
![Page 82: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/82.jpg)
Some Basic Terminology
Table = “a unique set of records and fields”
a.k.a. Base Table
TO = table occurrenceMike Harris: TO Table
TOG = table occurrence group
![Page 83: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/83.jpg)
Some Basic Terminology
Table = “a unique set of records and fields”
a.k.a. Base Table
TO = table occurrenceMike Harris: TO Table
TOG = table occurrence groupA discrete collection of TOs
![Page 84: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/84.jpg)
Tables
![Page 85: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/85.jpg)
TOs
![Page 86: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/86.jpg)
TOGs
![Page 87: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/87.jpg)
Some Benefits of theFM7 Relational Model
![Page 88: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/88.jpg)
• You can access data that is many “hops” away
Some Benefits of theFM7 Relational Model
![Page 89: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/89.jpg)
• You can access data that is many “hops” away• Context determines what you see when you look
at related data
Some Benefits of theFM7 Relational Model
![Page 90: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/90.jpg)
• You can access data that is many “hops” away• Context determines what you see when you look
at related data• Relationships can be based on multiple
predicates
Some Benefits of theFM7 Relational Model
![Page 91: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/91.jpg)
• You can access data that is many “hops” away• Context determines what you see when you look
at related data• Relationships can be based on multiple
predicates• Relational operators are no longer limited to “=”
Some Benefits of theFM7 Relational Model
![Page 92: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/92.jpg)
• You can access data that is many “hops” away• Context determines what you see when you look
at related data• Relationships can be based on multiple
predicates• Relational operators are no longer limited to “=”• Developer has great leeway in terms of
relational architecture
Some Benefits of theFM7 Relational Model
![Page 93: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/93.jpg)
Benefits, shmenefits!
![Page 94: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/94.jpg)
Benefits, shmenefits!
In the good old days...
![Page 95: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/95.jpg)
Benefits, shmenefits!
In the good old days...
• I always knew what to call a relationship
![Page 96: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/96.jpg)
Benefits, shmenefits!
In the good old days...
• I always knew what to call a relationship• I always knew where to put a relationship
![Page 97: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/97.jpg)
Benefits, shmenefits!
In the good old days...
• I always knew what to call a relationship• I always knew where to put a relationship• I could do these things in my sleep!
![Page 98: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/98.jpg)
Some Potentially Confusing Aspects of the FM7 Relational Model
![Page 99: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/99.jpg)
• Relationships are automatically bi-directional
Some Potentially Confusing Aspects of the FM7 Relational Model
![Page 100: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/100.jpg)
• Relationships are automatically bi-directional
– This is great for “data level” (a.k.a. “structural”) relationships, but...
Some Potentially Confusing Aspects of the FM7 Relational Model
![Page 101: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/101.jpg)
• Relationships are automatically bi-directional
– This is great for “data level” (a.k.a. “structural”) relationships, but...
– Since most FileMaker relationships are not structural, this is not only undesirable...
Some Potentially Confusing Aspects of the FM7 Relational Model
![Page 102: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/102.jpg)
• Relationships are automatically bi-directional
– This is great for “data level” (a.k.a. “structural”) relationships, but...
– Since most FileMaker relationships are not structural, this is not only undesirable...
– But frequently impossible (because a relationship cannot flow in both directions if any of its keys are unstored).
Some Potentially Confusing Aspects of the FM7 Relational Model
![Page 103: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/103.jpg)
For example: In a typical FM6 solutiontracking donors and donations...
ID#_Donor
Date
Payment_Type
Amount
ID#
First_Name
Last_Name
< etc. >
![Page 104: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/104.jpg)
These are mutually bi-directional
10 relationships from Donors to Donations:
3 relationships from Donations to Donors:
![Page 105: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/105.jpg)
These can only be resolved in one direction
10 relationships from Donors to Donations:
3 relationships from Donations to Donors:
![Page 106: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/106.jpg)
• Relationships are automatically bi-directional• Since TOs can be approached from either
direction, naming them can be problematic
Some Potentially Confusing Aspects of the FM7 Relational Model
![Page 107: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/107.jpg)
• Relationships are automatically bi-directional• Since TOs can be approached from either
direction, naming them can be problematic• You continually need to think about context
Some Potentially Confusing Aspects of the FM7 Relational Model
![Page 108: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/108.jpg)
Where am I?Where am I?
![Page 109: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/109.jpg)
Where am I starting from?Where am I starting from?
![Page 110: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/110.jpg)
Where am I starting from?Where am I starting from?
Where am I going to?Where am I going to?
![Page 111: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/111.jpg)
![Page 112: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/112.jpg)
![Page 113: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/113.jpg)
![Page 114: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/114.jpg)
It’s easy to see where you’re going in FM7…
Context is determined by where you start from
![Page 115: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/115.jpg)
It’s easy to see where you’re going in FM7…
Context is determined by where you start from
![Page 116: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/116.jpg)
Contextual Food for Thought
![Page 117: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/117.jpg)
Contextual Food for Thought
What determines “context”?
![Page 118: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/118.jpg)
Contextual Food for Thought
What determines “context”?The active TO
![Page 119: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/119.jpg)
Contextual Food for Thought
What determines “context”?The active TO
What determines the active TO?
![Page 120: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/120.jpg)
Contextual Food for Thought
What determines “context”?The active TO
What determines the active TO?1. The current layout
![Page 121: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/121.jpg)
![Page 122: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/122.jpg)
Contextual Food for Thought
What determines “context”?The active TO
What determines the active TO?1. The current layout
2. Evaluate this calculation from the context of in Specify Calculation
![Page 123: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/123.jpg)
![Page 124: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/124.jpg)
Contextual Food for Thought
What determines “context”?The active TO
What determines the active TO?1. The current layout
2. Evaluate this calculation from the context of in Specify Calculation
3. The starting from drop-down in a related value list
![Page 125: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/125.jpg)
![Page 126: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/126.jpg)
Contextual Food for Thought
What determines “context”?The active TO
What determines the active TO?1. The current layout
2. Evaluate this calculation from the context of in Specify Calculation
3. The starting from drop-down in a related value list
4. The starting with table drop-down in a lookup
![Page 127: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/127.jpg)
![Page 128: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/128.jpg)
Contextual Food for Thought
What determines “context”?The active TO
What determines the active TO?1. The current layout
2. Evaluate this calculation from the context of in Specify Calculation
3. The starting from drop-down in a related value list
4. The starting with table drop-down in a lookup
![Page 129: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/129.jpg)
• Relationships are automatically bi-directional• Since TOs can be approached from either
direction, naming them can be problematic• You continually need to think about context• You will see all related TOs whether they are
relevant or not
Some Potentially Confusing Aspects of the FM7 Relational Model
![Page 130: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/130.jpg)
![Page 131: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/131.jpg)
![Page 132: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/132.jpg)
• Relationships are automatically bi-directional• Since TOs can be approached from either
direction, naming them can be problematic• You continually need to think about context• You will see all related TOs whether they are
relevant or not• The “great leeway in terms of RG architecture”
(which I mentioned previously as a benefit) can cause a decrease in developer productivity...
Some Potentially Confusing Aspects of the FM7 Relational Model
![Page 133: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/133.jpg)
• Relationships are automatically bi-directional• Since TOs can be approached from either direction,
naming them can be problematic• You continually need to think about context• You will see all related TOs whether they are relevant
or not• The “great leeway in terms of RG architecture”
(which I mentioned previously as a benefit) can cause a decrease in developer productivity… and or sanity
Some Potentially Confusing Aspects of the FM7 Relational Model
![Page 134: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/134.jpg)
![Page 135: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/135.jpg)
![Page 136: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/136.jpg)
![Page 137: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/137.jpg)
![Page 138: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/138.jpg)
Initially, a feeling of vertigo, or even existential nausea, is to be expected.
-- Mike Harris, March 2004
![Page 139: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/139.jpg)
Hmm… For every TO, I have to decide...
![Page 140: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/140.jpg)
Hmm… For every TO, I have to decide...
• What do I call it?
![Page 141: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/141.jpg)
Hmm… For every TO, I have to decide...
• What do I call it?• Where do I put it?
![Page 142: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/142.jpg)
Hmm… For every TO, I have to decide...
• What do I call it?• Where do I put it?• What color should I make it?
![Page 143: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/143.jpg)
I wonder when we’regoing to start
learning about...
???
![Page 144: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/144.jpg)
But despite the superficial resemblance…
< now >< now >
![Page 145: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/145.jpg)
A/B in a Nutshell
![Page 146: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/146.jpg)
• Relational Graph (RG) is divided into TOGs
A/B in a Nutshell
![Page 147: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/147.jpg)
![Page 148: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/148.jpg)
• Relational Graph (RG) is divided into TOGs• Each TOG consists of one “Anchor” at the left
and any number of “Buoys” strung off rightward
A/B in a Nutshell
![Page 149: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/149.jpg)
AnchorsAnchors
BuoysBuoys
![Page 150: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/150.jpg)
• Relational Graph (RG) is divided into TOGs• Each TOG consists of one “Anchor” at the left
and any number of “Buoys” strung off rightward• As a general rule, the RG will have one Anchor
per base table
A/B in a Nutshell
![Page 151: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/151.jpg)
1 Anchor1 Anchorper baseper base
tabletable
![Page 152: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/152.jpg)
• Relational Graph (RG) is divided into TOGs• Each TOG consists of one “Anchor” at the left
and any number of “Buoys” strung off rightward• As a general rule, the RG will have one Anchor
per base table• Layouts are only attached to Anchors
A/B in a Nutshell
![Page 153: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/153.jpg)
LayoutsLayoutsXNo LayoutsNo Layouts
![Page 154: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/154.jpg)
• Relational Graph (RG) is divided into TOGs• Each TOG consists of one “Anchor” at the left
and any number of “Buoys” strung off rightward• As a general rule, the RG will have one Anchor
per base table• Layouts are only attached to Anchors• RG is restricted to one page in width, but is
allowed to grow as tall as necessary
A/B in a Nutshell
![Page 155: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/155.jpg)
Page 1 Page 2
< etc. >
![Page 156: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/156.jpg)
• Relational Graph (RG) is divided into TOGs• Each TOG consists of one “Anchor” at the left and any
number of “Buoys” strung off rightward• As a general rule, the RG will have one Anchor per
base table• Layouts are only attached to Anchors• RG is restricted to one page in width, but is allowed to
grow as tall as necessary• Color coding and TO naming conventions are an
integral component of this methodology
A/B in a Nutshell
![Page 157: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/157.jpg)
• Relational Graph (RG) is divided into TOGs• Each TOG consists of one “Anchor” at the left and any
number of “Buoys” strung off rightward• As a general rule, the RG will have one Anchor per
base table• Layouts are only attached to Anchors• RG is restricted to one page in width, but is allowed to
grow as tall as necessary• Color coding and TO naming conventions are an
integral component of this methodology
A/B in a Nutshell
Most A/B-ers agree Most A/B-ers agree
on these points...on these points...
![Page 158: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/158.jpg)
• Relational Graph (RG) is divided into TOGs• Each TOG consists of one “Anchor” at the left and any
number of “Buoys” strung off rightward• As a general rule, the RG will have one Anchor per
base table• Layouts are only attached to Anchors• RG is restricted to one page in width, but is allowed to
grow as tall as necessary• Color coding and TO naming conventions are an
integral component of this methodology
A/B in a Nutshell
But have minorBut have minor
differences re: differences re:
![Page 159: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/159.jpg)
• Relational Graph (RG) is divided into TOGs• Each TOG consists of one “Anchor” at the left and any
number of “Buoys” strung off rightward• As a general rule, the RG will have one Anchor per
base table• Layouts are only attached to Anchors• RG is restricted to one page in width, but is allowed to
grow as tall as necessary• Color coding and TO naming conventions are an
integral component of this methodology
A/B in a Nutshell
But have minorBut have minor
differences re: differences re:
![Page 160: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/160.jpg)
Color Coding &Color Coding &TO NamingTO Naming
ConventionsConventions
![Page 161: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/161.jpg)
Legend at the top of the RG
![Page 162: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/162.jpg)
Legend at the top of the RG
• Color-coded TOs based on a “null” table
![Page 163: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/163.jpg)
Legend at the top of the RG
• Color-coded TOs based on a “null” table• Anchors and Buoys colored as per above
![Page 164: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/164.jpg)
Legend at the top of the RG
• Color-coded TOs based on a “null” table• Anchors and Buoys colored as per above• Underlying table names spelled out in full
![Page 165: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/165.jpg)
Anchor Name
![Page 166: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/166.jpg)
• Anchor name is CAPITALIZED
Anchor Name
![Page 167: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/167.jpg)
• Anchor name is CAPITALIZED• Anchor name = corresponding base table name
e.g., APPEALS_EVENTS… however...
Anchor Name
![Page 168: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/168.jpg)
• Anchor name is CAPITALIZED• Anchor name = corresponding base table name
e.g., APPEALS_EVENTS… however...• Anchor name usually abbreviated, e.g., APPEV
(for a reason that will soon become apparent)
Anchor Name
![Page 169: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/169.jpg)
• Anchor name is CAPITALIZED• Anchor name = corresponding base table name
e.g., APPEALS_EVENTS… however...• Anchor name usually abbreviated, e.g., APPEV
(for a reason that will soon become apparent)
Anchor Name
![Page 170: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/170.jpg)
• Anchor name is CAPITALIZED• Anchor name = corresponding base table name
e.g., APPEALS_EVENTS… however...• Anchor name usually abbreviated, e.g., APPEV
(for a reason that will soon become apparent)• Confused?
Anchor Name
![Page 171: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/171.jpg)
• Anchor name is CAPITALIZED• Anchor name = corresponding base table name
e.g., APPEALS_EVENTS… however...• Anchor name usually abbreviated, e.g., APPEV
(for a reason that will soon become apparent)• Confused? You can always consult the legend...
Anchor Name
![Page 172: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/172.jpg)
Buoy Name
![Page 173: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/173.jpg)
Buoy Name
![Page 174: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/174.jpg)
• First the Anchor name in all lower-case, followed by “_”, e.g., appev_
Buoy Name
![Page 175: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/175.jpg)
• First the Anchor name in all lower-case, followed by “_”, e.g., appev_
• Followed by base table abbreviations for any intervening buoys (each separated by an “_”)
Buoy Name
![Page 176: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/176.jpg)
• First the Anchor name in all lower-case, followed by “_”, e.g., appev_
• Followed by base table abbreviations for any intervening buoys (each separated by an “_”)
• Followed by the base table name in all CAPS,e.g., appev_don_CON (where CON = Contacts)
Buoy Name
![Page 177: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/177.jpg)
If you need to clarify the Buoy name
![Page 178: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/178.jpg)
• Append two underscores: “__”
If you need to clarify the Buoy name
![Page 179: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/179.jpg)
• Append two underscores: “__”• Followed by a lower-case explanation
If you need to clarify the Buoy name
![Page 180: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/180.jpg)
• Append two underscores: “__”• Followed by a lower-case explanation• E.g., I wanted to indicate that this particular
buoy was linked via a field called “Country”
If you need to clarify the Buoy name
![Page 181: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/181.jpg)
• Append two underscores: “__”• Followed by a lower-case explanation• E.g., I wanted to indicate that this particular
buoy was linked via a field called “Country”
• And this buoy was used to filter a value list
If you need to clarify the Buoy name
![Page 182: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/182.jpg)
Abbreviated Anchor Names...
![Page 183: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/183.jpg)
Abbreviated Anchor Names...
![Page 184: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/184.jpg)
Abbreviated Anchor Names...
…ensure that an anchor precedes its buoys in sortedTO lists
![Page 185: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/185.jpg)
Some Benefits of the A/B Method
![Page 186: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/186.jpg)
Some Benefits of the A/B Method
• As in FM6, relationships are unidirectional, and flow from left to right, which means...
![Page 187: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/187.jpg)
Some Benefits of the A/B Method
• As in FM6, relationships are unidirectional, and flow from left to right, which means...
• You only deal with related data that is “down-stream” from wherever you happen to be
![Page 188: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/188.jpg)
From this layout...
![Page 189: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/189.jpg)
From this layout...
…which is anchoredto this TO
![Page 190: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/190.jpg)
Donor Name comes from here...
![Page 191: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/191.jpg)
Some Benefits of the A/B Method
• As in FM6, relationships are only ever thought of as flowing from left to right, and...
• You only deal with related data that is “down-stream” from wherever you happen to be
• Calculated fields and lookups always “start” from the correct TO
![Page 192: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/192.jpg)
No need to makeNo need to makeany changes hereany changes here
![Page 193: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/193.jpg)
……or hereor here
![Page 194: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/194.jpg)
Some Benefits of the A/B Method
• As in FM6, relationships are only ever thought of as flowing from left to right, and...
• You only deal with related data that is “down-stream” from wherever you happen to be
• Calculated fields and lookups always “start” from the correct TO
• You only see relevant TOs under “related tables”
![Page 195: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/195.jpg)
…ad infinitum
In A/B, “Related” TOsare “Relevant” TOs
![Page 196: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/196.jpg)
Some Benefits of the A/B Method
• As in FM6, relationships are only ever thought of as flowing from left to right
• You only deal with related data that is “down-stream” from wherever you happen to be
• Calculated fields and lookups always “start” from the correct TO
• You only see relevant TOs under “related tables”• TOGs are analogous to FM6 relationship lists
![Page 197: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/197.jpg)
![Page 198: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/198.jpg)
Some Benefits of the A/B Method• As in FM6, relationships are only ever thought of as
flowing from left to right• You only deal with related data that is “down-stream”
from wherever you happen to be• Calculated fields and lookups always “start” from the
correct TO• You only see relevant TOs under “related tables”• TOGs are analogous to FM6 relationship lists• You always know what to call a TO, where to put it and
what color to make it
![Page 199: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/199.jpg)
I’m confused --
![Page 200: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/200.jpg)
I’m confused --
If my RG is brokeninto separate TOGs,how do I navigatebetween them?
![Page 201: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/201.jpg)
I’m confused --
If my RG is brokeninto separate TOGs,how do I navigatebetween them?
For example...How do I jump froma donation to theparent donor?
![Page 202: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/202.jpg)
Grab your board &Grab your board &wetsuit, becausewetsuit, becauseit’s time to go...it’s time to go...
![Page 203: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/203.jpg)
TOG SurfingTOG Surfing
![Page 204: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/204.jpg)
To jump from a donation tothe corresponding donor
![Page 205: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/205.jpg)
To jump from a donation tothe corresponding donor
From theAnchor...
![Page 206: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/206.jpg)
GTRR to the desired Buoy...
![Page 207: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/207.jpg)
GTRR to the desired Buoy...
![Page 208: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/208.jpg)
…but choose a layout attachedto the corresponding Anchor
![Page 209: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/209.jpg)
This works because…
AND
…share a common base table
![Page 210: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/210.jpg)
This works because…
AND
…share a common base table
![Page 211: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/211.jpg)
But despite the superficial resemblance…
< demo break >< demo break >
![Page 212: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/212.jpg)
One Very Important Point
![Page 213: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/213.jpg)
• Whether starting an A/B project from scratch, or converting an existing project to A/B...
One Very Important Point
![Page 214: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/214.jpg)
• Whether starting an A/B project from scratch, or converting an existing project to A/B...
• Identify your natural anchors!
One Very Important Point
![Page 215: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/215.jpg)
• Whether starting an A/B project from scratch, or converting an existing project to A/B...
• Identify your natural anchors!– All TO’s are not created equal
One Very Important Point
![Page 216: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/216.jpg)
• Whether starting an A/B project from scratch, or converting an existing project to A/B...
• Identify your natural anchors!– All TO’s are not created equal– The first TO created for a given base table should
always be used as the anchor
One Very Important Point
![Page 217: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/217.jpg)
• Whether starting an A/B project from scratch, or converting an existing project to A/B...
• Identify your natural anchors!– All TO’s are not created equal– The first TO created for a given base table should
always be used as the anchor– (if the first TO has been deleted, then use the oldest
surviving TO for that base table)
One Very Important Point
![Page 218: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/218.jpg)
• Whether starting an A/B project from scratch, or converting an existing project to A/B...
• Identify your natural anchors!– All TO’s are not created equal– The first TO created for a given base table should
always be used as the anchor– (if the first TO has been deleted, then use the oldest
surviving TO for that base table)– This guarantees that calculated fields and lookups
always “start” from the correct TO
One Very Important Point
![Page 219: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/219.jpg)
• Whether starting an A/B project from scratch, or converting an existing project to A/B...
• Identify your natural anchors!– All TO’s are not created equal– The first TO created for a given base table should always be
used as the anchor– (if the first TO has been deleted, then use the oldest
surviving TO for that base table)– This guarantees that calculated fields and lookups always
“start” from the correct TO– Otherwise you sacrifice a big benefit of using A/B
One Very Important Point
![Page 220: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/220.jpg)
Addressing Common Concerns...
The RG is too busy
![Page 221: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/221.jpg)
Addressing Common Concerns...
The RG is too busyIt’s a small price to pay. TOs are cheap.An out-of-control graph is busy too.
![Page 222: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/222.jpg)
Addressing Common Concerns...
The RG is too busyIt’s a small price to pay. TOs are cheap.An out-of-control graph is busy too.
The RG is too big
![Page 223: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/223.jpg)
Addressing Common Concerns...
The RG is too busyIt’s a small price to pay. TOs are cheap.An out-of-control graph is busy too.
The RG is too bigGraph space is unlimited.
![Page 224: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/224.jpg)
Addressing Common Concerns...
The RG is too busyIt’s a small price to pay. TOs are cheap.An out-of-control graph is busy too.
The RG is too bigGraph space is unlimited.
I hate the criss-crossing lines -- I can’t find the “=” when I need to edit a relationship
![Page 225: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/225.jpg)
Addressing Common Concerns...
The RG is too busyIt’s a small price to pay. TOs are cheap.An out-of-control graph is busy too.
The RG is too bigGraph space is unlimited.
I hate the criss-crossing lines -- I can’t find the “=” when I need to edit a relationship
You can double-click anywhere on thediagonal portion of the relationship line.
![Page 226: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/226.jpg)
Addressing Common Concerns...
The RG doesn’t look like an ERD
![Page 227: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/227.jpg)
Addressing Common Concerns...
The RG doesn’t look like an ERDRG ERD; if you need an ERD there are any number of programs that can generate one.
![Page 228: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/228.jpg)
• Park unused TOs at the bottom of the RG• These little guys are either buoy-less anchors, or
special-purpose TOs
Miscellaneous Thought #1
![Page 229: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/229.jpg)
• Create separate TOGs to keep track of relational deletion dependencies
• This has nothing to do with A/B, per se
Miscellaneous Thought #2
![Page 230: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/230.jpg)
Since adopting A/B...
![Page 231: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/231.jpg)
Since adopting A/B...
• I always know what to call a TO
![Page 232: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/232.jpg)
Since adopting A/B...
• I always know what to call a TO• I always know where to put a TO
![Page 233: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/233.jpg)
Since adopting A/B...
• I always know what to call a TO• I always know where to put a TO• I always know what color to make it
![Page 234: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/234.jpg)
Since adopting A/B...
• I always know what to call a TO• I always know where to put a TO• I always know what color to make it• I can do it in my sleep!
![Page 235: Kevin Frank's Anchor-Buoy Presentation Long](https://reader033.vdocuments.us/reader033/viewer/2022050914/546d1061af7959ea368b6fcd/html5/thumbnails/235.jpg)
< the end >< the end >