Techbrief Fm8 Migrtn Found
-
Author
brian-jones -
Category
Documents
-
view
217 -
download
0
Embed Size (px)
Transcript of Techbrief Fm8 Migrtn Found
-
7/23/2019 Techbrief Fm8 Migrtn Found
1/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
Technolog y Brief
Upgrading to
FileMaker 8:igration Foundationsand Methodologies
-
7/23/2019 Techbrief Fm8 Migrtn Found
2/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es page
out s ec no ogy r e
It is the intent of this technology brief to help the experienced FileMaker developer better understand and
prepare or migration to t e i e a er pro uct ami y. ea ing t is ocument wi assist you in p anning, preparing
or, an executing a strategic approac to migration.
Originally compiled, edited and principally authored by Danny Mack, President of New Millennium Communications
Inc., a FileMaker Solutions Alliance Partner, this paper is part of a series of technology briefs written by developers
or eve opers, to assist in migrating existing so utions to t e new i e a er pro uct ami y.
or a itiona tec nica materia s, p ease re er to printe an e ectronic manua s an on ine e p t at s ip wit
i e a er ro , i e a er ro vance , i e a er erver , an i e a er erver vance .
ease ote: This technical brief is relevant to both FileMaker 8 and FileMaker 7 products.
a e o ontents
. verview ..................................... ........................................... ........................................... .................................
. oun ations
everaging t e a ue roposition o i e a er ro ..................................................................
e i e a er e ationa o e
i e e erences in i e a er ro ................................................................................................
Scripting Issues Encountered When Migrating to FileMaker Pro 8 ....................................... .56
ecurity an ccess rivi ege ssues
ecor wners ip in onverte o utions: pening an ommitting ecor s ..........
Migration and Web Publishing ...................................... ............................................ .......................85
. et o o ogies
Conversion Basics ........................................... ............................................ .....................................89
ing a ew nter ace i e to an xisting o ution, ater onso i ating a es
ase tu y: igrating sing t e u & po e pproac ....................................................
e eparation o e : i e a er ro eve opment o e
ri ging . p an . p ....................................................................................................................
. ppen ix
onversion ssues & eso utions ...................................... ........................................... ...............
orewor
is ocument assumes t at t e rea er is a rea y ami iar wit t e asic eatures o i e a er ro , an as rea
t e ec rie entite pgra ing to i e a er ro igrating xisting o utions.
-
7/23/2019 Techbrief Fm8 Migrtn Found
3/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
e in ormation in t is compen ium o artic es is t e resu t o a ar -wor ing team o i e a er, nc. emp oyees
an in epen ent eve opers w o ave esigne , exp ore , an teste i e a er ro an i e a er erver . t
represents an evo ving o y o now e ge, one t at wi mature over t e next mont s an years as t e app icationis mastered by professional FileMaker developers building solutions.
t as een a privi ege to wor wit t is team.
anny ac
ou er, o ora o
arc
2005 FileMaker, Inc. All Rights Reserved. FileMaker is a trademark of FileMaker, Inc., registered in the U.S. and
ot er countries, an t e e o er ogo is a tra emar o i e a er, nc. ot er tra emar s are t e property
o t eir respective owners. ention o t ir party pro ucts an companies is or in ormationa purposes on y an
oes not constitute an en orsement nor recommen ation. ro uct speci cations an avai a i ity are su ject toc ange wit out notices. oc
, ,
. , , ,
, ,
- . , .
, , ,
CONSEQUENTIAL, LOSS OF BUSINESS PROFITS, PUNITIVE OR SPECIAL DAMAGES, EVEN IF FILEMAKER,
. .
.
.
.
page 2
-
7/23/2019 Techbrief Fm8 Migrtn Found
4/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
Overview
rie ynopses o t e ections o t is ocument
Overview
oun at ons
Leveraging the Value Proposition of FileMaker Pro 8 Michael Thompson
ic ae iscusses t e a vantages o i e a er ro rom t e point o view o ot eve opers an usiness
owners, an a resses t e strategic issues associate wit migrating to t is new tec no ogy, inc u ing ow to
recognize a return on t e investment in migration.
The FileMaker 8 Relational Model FileMaker, Inc. and Danny Mack
un amenta artic e o t e new re ationa mo e , inc u ing a comparison to ear ier versions o i e a er ro,
an intro uction to t e re ations ips grap , an an exp anation o context . t i ustrates t e new eatures ant e new ru es wit easy to o ow examp es.
File References in FileMaker Pro 8 Corn Walker
File references are viewable and editable in FileMaker Pro 8 and the issues associated with them are
un amenta to getting your converte so ution up an running success u y.
Scripting Issues Encountered When Migrating to FileMaker Pro 8 Darren Terry
n converte so utions, certain scripts may not unction as t ey i previous y. arren reviews t ese issues in
etai so t at you un erstan ow t e e avior as c ange , an w at to o a out it.
Security and Access Privilege Issues Steven Blackwell
asswor s an groups are converte to accounts an privi ege sets, ut t e ru es ave c ange . n erstan ingt e etai s o access privi ege conversion is essentia to rep icating t e origina e avior or exten ing it.
Record Ownership in Converted Solutions: Opening and Committing Records Ilyse Kazar
The script steps and other events that cause records to be opened (locked) and committed (unlocked) have
c ange signi cant y. is as major imp ications or t e e avior o converte so utions as we as or new
so ution esign.
Migration and Web Publishing Bob Bowers
is is a primer on t e rea m o i e a er we pu is ing, inc u ing ot ustom e u is ing an t e
entirely new Instant Web Publishing.
et o o og es
Conversion Basics Danny Mack
anny presents a step- y-step orientation to t e conversion process, inc u ing preparation, testing, an t e
necessary un amenta tas s or getting your so ution restore to its origina unctiona ity.
page 3
-
7/23/2019 Techbrief Fm8 Migrtn Found
5/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
Adding a New Interface File to an Existing Solution, Later Consolidating Tables Todd Geist
ow oes one migrate a so ution, most re ia y an economica y, to an optima i e a er ro arc itecture
o ays out a step- y-step migration strategy, inc u ing a rationa e t at may eave you t in ing: w y wouyou do it any other way?
Case Study: Migrating Using the Hub & Spoke Approach Molly Connolly & Bob Bowers
n many so utions,t e majority o t e inter ace an ogic is concentrate in one e, t e u , or in a ew u s.
t may ma e sense to conso i ate t e spo e es into t e u es.
The Separation Model: A FileMaker Pro 8 Development Model Colleen Hammersley & Wendy
King
i e a er ro is a ream come true or t ose w o ave ong a vocate t e separation o ata an inter ace.
o een an en y present t e new app ication mo e in a its g ory.
Bridging .fp5 and .fp7 Ernest Koeere are many rea wor scenarios in t at it wi e necessary or i e a er ro es to exc ange ata wit
FileMaker .fp5 files. There are several technologies that make this possible.
ppen x
Conversion Issues & Resolutions Team
is is t e ocumentation o speci c issues t at can e encountere in so utions t at ave een converte to
i e a er ro , an suggeste reso utions w at you can o to rep icate t e origina e avior . e issues are
cross-referenced to the behavior changes in the application documented in the .pdf entitled FM 7 Converting
ata ases .
page 4
-
7/23/2019 Techbrief Fm8 Migrtn Found
6/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
Overview
earn e a er ro e ore onvert ng a omp ex o ut on
s as een state e sew ere, starting to earn i e a er ro y converting a comp ex so ution may e
confusing. It is highly advisable to build some mastery of the new application by first building a new solution.
njoy t e ease o creating mu tip e ta es in one e
xp ore t e e ciency o t e new scripting possi i ities, especia y script parameters
n erstan t e re ations ips grap an t e importance o managing t e context rom w ic your
ca cu ations an scripts wi eva uate
iscover t e power o t e new security mo e
earn your options or so ution arc itecture wit your inter ace in t e same e as your ata ta es, or
in an entire y separate e wit no ta es
Once you have a reasonably good understanding of the new environment, then it becomes appropriate to
consi er t e approac to ta e to migrating an existing soution.
trateg c pproac to t e grat on rocess
s out ine in t e ec rie , pgra ing to i e a er ro : igrating xisting o utions , t ere are severa
possible approaches to take to migration. Hybrid approaches are possible where one method is used for one
part o a soution w i e anot er met o is use or anot er part.
ere is a recap o t e approac es, as iscusse in t e ec rie .
. onvert an ep oy, t en mo i y i necessary
. o i y, convert, test, & mo i y
. a new inter ace e, an t en ater conso i ate ta es
4. Consolidate multiple files into a single file, starting with an existing file
. Consolidate multiple files into a single file, starting from scratch
6. Create new files an interface file and a data file, or multiple interface and data files
. Co-existence of .fp5 and .fp7 files
ac o t ese approac es cou e consi ere separatey. evert e ess, t ey can a so occur as part o asequentia process. ome o t e stages or aspects o t e sequence may not appy to your situation, ut t ere
wi e situations in w ic eac o t ese approac es is re evant. so, or some eve opers w o support mu tip e
so utions, one approac may app y to one so ution w i e a i erent approac may app y to anot er.
page
-
7/23/2019 Techbrief Fm8 Migrtn Found
7/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
. onvert an ep oy, o y ecessary
you ave a re ative y simp e so ution or a so ution t at is not usiness-critica , t en you may e a e toconvert and simply deploy your solution without modification. If some features are broken or there are minor
data problems, you can fix them as you go.
or more comp ex so utions, i you try to just convert an run, you may air y quic y rea ize t at it is not t e
i ea approac an start again wit a more met o ica approac . is ocument is inten e to ena e you to
ta e a sequentia approac to a success u migration o your so ution.
. onvert an estore to r g na unct ona ty o y, onvert, est, o y
ui ing on t e in ormation in t e igrating xisting o utions ec rie , an in t e onverting
ata ases .p t at comes wit i e a er ro an i e a er ro vance , you can systematica y preparees or conversion an o ow an iterative approac . a ing innocuous or even ene cia c anges to your
solution in FileMaker Pro 6, and then converting, testing, modifying in .fp5 again, re-converting, and testing,
unti you are satis e t at you ave one as muc as is practica an e cient in t e . p ormat. ou can t en
o t e remaining tas s in t e new . p es, test, an ep oy. ee t e section on onversion asics or more
etai e in ormation. e oun ationa in ormation in t e sections on i e e erences in i e a er ro , cr ipting
ssues ncountere en igrating to i e a er ro , ecurity an ccess rivi ege ssues, an ecor wners ip in
onverte o utions: pening an ommitting ecor s,are a essentia rea ing.
ere is a nite set o issues t at wi nee manua attention to ena e converte so utions to operate simi ar y
to t e way t ey i in i e a er ro . ot a o t ese issues wi a ect a so utions.
ust as important as t e process o manua mo i cation, is t e met o o ogy use or testing your so ution.
epen ing on t e sca e o a so ution, it may or may not e easi e to test a permutations o t e eatures
of a solution. Scripts may work reliably if performed in a certain sequence, but not if performed in a different
sequence. It will be most efficient and reliable if you, the developer, understand the issues that need to be
a resse an t en systematica y an comp ete y eva uate, an mo i y i necessary, a instances o an issue in
your so ution. na ysis too s wi ma e it practica to o t is.
ome too s are avai a e now or automating t e mo i cation o es, an more too s wi emerge.
. a ew nter ace e an t en onso ate a es
ne o t e ey a vantages o i e a er ro is t e a i ity to see an manage your ata ase structure or
at east arge sections o it at a time , in a grap ica inter ace. our mu ti-ta e usiness processes can e
represente visua y an , t an s to many en ancements to t e avai a e too s, manage e cient y an re ia y.
page 6
-
7/23/2019 Techbrief Fm8 Migrtn Found
8/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
new inter ace e can e a e to an existing so ution, pointing at t e ata ta es in t e o so ution,
t ere y provi ing a unctiona an appropriate environment or en ancing your so ution, everaging t e power
an optima so ution arc itecture o i e a er ro . ou can ater conso i ate your ata ta es into one e
or a ew es an re-point your inter ace e. is met o as t e a e ene t o not rea ing t e existingunctionaity o converte so utions w i e a owing t e eve oper to exp ore t e power o i e a er ro in a
separate file. See the section onAdding a New Interface File to an Existing Solution, Later Consolidating Tablesfor a
etai e treatment o t is met o .
. . onso at ng es
you are a so utey sure t at you wi e conso i ating t e ata ta es an can a or to wait unti you ave
revised both the table structure and the interface before using the new solution, then you may want to start by
ui ing a new e wit mu tip e ta es, ut e warne t at or a comp ex so ution it may not e very e cient
un ess you ave a rea y mastere i e a er ro .
ere are a vantages to aving ewer es, or simp icity an managea i ity. ou may want to optimize your
ca cu ations or t e way t at you access re ate ata. epen ing on your so ution, you may want to conso i ate
your data tables and fields into a single file or into a few files, either by starting from a single existing file, or by
starting rom scratc , ringing over just t e ata e s, an se ective y ringing over ot er e s, t en copying
ayouts an importing scripts, or writing new scripts.
ere are a num er o tec nica etai s t at are necessary to un erstan to ac ieve t is migration strategy
success u y. ere is goo in ormation a out t ese issues in t e sections on ing a ew nter ace i e to an
Existing Solution, Later Consolidating Tablesan in Case Study: Migrating Using the Hub & Spoke Approach.
. reate a ew o ut on nt re y ewr te
tarting wit new es is most appropriate or a new usiness pro em or an iso ate in ormation omain. t
could be appropriate if you want to take full advantage of the new FileMaker Pro 8 possibilities and you can
a or to wait to comp ete your re esigne so ution e ore ep oying. t is a so appropriate i t e eatures o t e
origina so ution are o so ete or poor y esigne in t e rst p ace. e oremost requirement w en esigning a
new so ution is to etermine your so ution arc itecture. e artic es on e i e a er e ationa o e an e
eparation o e : i e a er ro eve opment o e re ot essentia rea ing.
. e a er ro o-ex st ng w t ar er ers ons o e a er ro
In organizations with a large number of FileMaker Pro files and multiple solutions (sets of files), it may be
necessary to convert some es e ore ot ers. t ere are epen encies etween so utions in i erentepartments or usiness omains, it may e necessary to emp oy a tec no ogy t at ena es t e exc ange o
ata etween i e a er ro es an i e a er ro . es. ee t e ocument on ri ging . p an . p
or more in ormation.
page
-
7/23/2019 Techbrief Fm8 Migrtn Found
9/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
Database Design and Evolution
primary i ea expresse t roug out t is ocument is t at it may e cost-e ective an most practica to n
mu tip e points in t e migration process w en your so ution can e sta e an unctiona . is wi provi e ene ts
to your organization i you are an in- ouse eve oper, an wi a ow you to more quic y ta e a vantage o
i e a er ro i you are an in epen ent custom or commercia so ution eve oper.
When re-writing a solution from scratch, there will still be a conversion component to the process. At a minimum,
t e o so ution wi most i e y e converte to i e a er ro prior to importing ata into t e new so ution. t
is possi e to export ata rom an . p or . p e to a text e an t en to import it, ut t at wou not an e t e
contents o container e s.
ost i e a er ro soutions ave evo ve over time an ave een en ance ase on wis om gaine a ong t e
way both from the insights of the developer and based on feedback from users. Developers technical knowledge
increases over time an t at is o ten re ecte in t e incrementa en ancements to t e eatures o a so ution.
e evo ution o i e a er ro so utions may e simi ar. n act, t e expertise an now e ge ase w ic exists
a out i e a er ro is ess mature, an it wi ta e a w i e or est practices an true expertise to eve op, so
an incrementa approac may prove to e t e most re ia e way to minimize w at wi prove in t e ong run to e
novice errors.
ompoun ing t e a vantages o ta ing t is approac is t at nee s c ange over time, so t at y t e time you nis
a gran esign t e priorities may ave c ange . rue usiness va ue is o ten rea ize y an incrementa strategy to
eve oping new systems.
out t e aut or
anny ac is t e resi ent o ew i ennium ommunications, nc., a i e a er o utions iance artner ase
in ou er, o ora o. ew i ennium specia izes in i e a er ro consu ting an so ution eve opment, an is t epu is er o numerous p ug-ins an too s t at aci itate t e wor o i e a er ro eve opers, avai a e at
http://www.newmillennium.com.
page 8
-
7/23/2019 Techbrief Fm8 Migrtn Found
10/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
Foundations
Leveraging the Value Proposition of FileMaker Pro 8
i e a er ro represents a new era or t e i e a er ro ami y o pro ucts. it renewe power an
exi i ity, t e pro uct is poise to emerge as a mar et- ea ing rapi app ication eve opment environment
applicable to all sizes and types of organizations. More than ever, FileMaker Pro 8 allows users with a broad range of
expertise to contri ute signi cant y to ata ase so utions t at pro uce tangi e va ue. et er t e o jective is to
create a pro essiona commercia so tware app ication or a es top ata ase t at can e exten e to t e , t e
, an eyon , i e a er ro certain y meets t e nee .
rom a eve opers perspective, t is new version o ers tremen ous a vantages over its pre ecessors an over
ot er so tware eve opment too s. t is important to remem er, owever, t at suc a vantages are use u on y to
t e extent t at t ey create va ue in a particu ar context. it out a c ear un erstan ing o t e va ue proposition, t e
i e a er ro tec nica istinctions may e ost in t e in o tec no ogy o erings, w ic too o ten over-promise
and under-deliver. As FileMaker Pro is commonly used in the context of a business or professional organization, the
eve oper an usiness manager are we a vise to un erstan t e pro uct s istinct va ue proposition an earn
ow est to everage t at proposition wit in t eir particu ar environment.
at is it a out i e a er ro t at compe s its use y organizations su ject matter experts s an
eve opers i e maintaining its istoric ease o use, t e i e a er ro ami y o pro uct o ers an entire y
new wor o innovative an power u eatures un i e any ot er ata ase or so tware eve opment environment.
rganizations a opting t e new too s wi see imme iate gains rom increase e size imits, virtua y un imite
number of tables, direct server access, server side processing, robust security, and faster wide area network (WAN)
access. i e protecting t eir inte ectua property an e ping en ance ata con entia ity an integrity, eve oper
can now provi e en users or a ministrators wit ar more exi i ity an many more options or managing critica
usiness processes. ntegrating so utions wit existing assets is muc easier an more exi e. it power u
new eatures suc as ustom unctions an xten e rivi eges, eve opers can imp ement usiness ogic an
usiness ru es across a soution simp y y c ic ing a c ec ox. n t ey can more easi y co a orate wit ot erdevelopers and with subject matter experts without the inefficiencies associated with the interruption of workflow
FileMaker Pro 8, FileMaker Server 8 and FileMaker Server 8 Advanced together make for a compelling best-case
usiness ecision as a eve opment an ep oyment environment.
i e it is c ear t at t e new pro uct ine as a ot to o er a most any organizationa environment, its com ination
o ease-o -use, rapi app ication eve opment, an enterprise eve power must e use appropriate y i its
u potentia is to e rea ize . e promise o new eatures an unctions oes not remove t e un amenta
requirements o t e so tware eve opment process nor oes it insu ate t e organizationa ea ers ip, management
an ot er sta e o ers rom eing materia y invo ve t roug out. ocuse too narrow y on t e tec no ogy, it easy
to lose sight of the broader organizational objectives. Indeed, if the needs of the organization and market do not
ea t e process, t en muc o t e va ue an potentia o t e tec no ogy wi e sacri ce .
et er a su ject matter expert turne ata ase esigner or a seasone veteran esigns a so ution, it is up to
t e eve oper to manage t e va ue e ivery process an to create an maintain an environment t at is con ucive
to rea istic expectations. urt ermore, a so ution or to ay s pro em wit itt e to erance or a apting to
tomorrows nee s, or one t at is i cu t to use or maintain, quic y oses muc o its potentia va ue. is means
page 9
-
7/23/2019 Techbrief Fm8 Migrtn Found
11/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
t at e ivery o va ue must e consi ere t roug out t e i ecyc e o a project, not simpy at so ution e ivery an
initia imp ementation. ortunate y, i e a er ro is an exceptiona eve opment environment or provi ing va ue
t roug out t e i ecyc e o a project. n erstan ing ow to get t e most out o t e tec no ogy at eac stage o t e
process is essentia i a so ution is to rea ize its u potentia . e intention an comp exity o a so ution, as we ast e environment in w ic it wi e use , wi etermine w ere to oo to everage t e va ue o t e new eatures o
FileMaker Pro 8.
equ rements at er ng: o v ng t e g t ro em
rganizationa constraints are o ten revea e t roug secon ary symptoms, an in many cases root causes
o pro ems are not imme iate y apparent. urt ermore, t e symptoms, as we as t eir un er ying pro ems,
rarely exist in isolation. Invariably other systems can affect and are affected by newly implemented solutions.
ina y, t e pro ems we a ress to ay wi a most certain y revea urt er constraints an pro uce uninten e
consequences. is is w y un erstan ing t e pro ems an t eir contexts is one o t e rst steps in creating
so utions.
ra itiona y, so tware eve opers ave re ie upon requirements gat ering an nee s assessment processes
to define the objectives and to understand the often-complex relationships involved in designing an effective
so ution. roug interviews wit en users an usiness managers, t ey pro uce a written speci cation t at
e ps t e eve oper an t e sta e o ers un erstan an communicate a out t e project.
n most cases, input rom users is gat ere t roug interviews an t en trans ate into text. i e t is process
can e re ative y e ective, it assumes t at t e users are capa e o escri ing t eir nee s in a manner t at
is both consistent with the real needs of the project and comprehensible (in all of its detail and nuance) to
t e interviewer. t a so assumes t at ot t e interviewer an user un erstan t e environment in w ic t e
pro em an so ution exist we enoug to provi e an accurate an use u trans ation. is can e especia y
c a enging w en t e eve oper is un ami iar wit t e intricacies o t e environment. i e t e use o rawings
an moc -ups can narrow t is communication gap, even wit visua ai s, t e nee s gat ering process can
invove severa iterations o esign an ee ac in or er to accurate y assess t e etai s.
i e a er ro o ers power u capa i ities to augment an assist in t e requirements gat ering an nee s
e ning process. i e a er ro s ease o use a ows even non-tec nica users t e a i ity to participate more
su stantia y in t e e ning stage o t e process. y using i e a er ro as t e environment or creating t e
visua ai s an training users on t e use o asic ayout too s, t ose most ami iar wit t e organizationa
processes can exp ore an experiment in rea time. ing an moving ayout e ements on wor ow inter aces
an oo ing at ata in i erent ways can acce erate t e process t roug w ic un erstan ing o t e signi cant
issues is developed. More importantly, having the subject matter experts involved at this level of exploration
o ten revea s unrecognize nee s an re ate issues t at wou ot erwise e revea e muc ater in t eeve opment cyc e.
i e muc o t is capa i ity as existe in prior versions o i e a er ro, i e a er ro promises muc
etter per ormance over t e wi e area networ . is means t at su ject matter experts an eve opers can
page 10
-
7/23/2019 Techbrief Fm8 Migrtn Found
12/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
wor toget er rom i erent ocations wit out t e use o t ir -party remote access so tware. anges ma e
y t e eve oper on a serve set o es wi appear to t e imme iate y upon committing t ose c anges to
t e server upon returning to rowse mo e rom ayout mo e an vice versa. itiona y, many o t e new
eatures an capa i ities o i e a er ro provi e improve support or co a oration. e ning new e s,or instance, no onger requires enying ot er users access to t e ata ase. is minimizes t e isruption to
other users as SMEs and developers collaborate to understand and define the requirements of a solution. It
a so opens up t e possi i ity or mu tip e teams to e wor ing simu taneous y wit t e same set o es. is
rea -time eve opment environment o ere y i e a er ro can ramatica y s orten t e iterative cyc es o
communication invo ve in t e requirements gat ering process.
u tip e ta es in a e an t e re ations ips grap are two ot er new eatures avai a e in i e a er ro t at
can en ance t e requirements e ning process. eve opers can exp ore an emonstrate ata arc itecture
without the time consuming hassle of creating individual related files. Multiple tables of data are quickly
create in t e same e ne e s session no nee to go ac an ort rom one e to anot er to a e s
to i erent ta es . nce roug ta e structures are in p ace, t e re ations ips grap provi es a very e cient
means or e ning re ations ips etween ta es. e act t at re ations ips are now i irectiona means t att ere is no nee to create reverse re ations ips; urt er re ucing t e time spent in ear y conceptua stages.
The relationships graph also provides an effective means for communicating the data structure to users and
ot er esign team mem ers. ets ace it; comp ex re ationa ata ase esign oes not come natura y to
everyone. et even ata ase neop ytes un erstan t e nee at some eve or organizing ata in a certain
manner. picture paints a t ousan wor s, an provi ing sur ace eve ata requirements in a grap ica ormat
can quic y acce erate t e un erstan ing o more comp ex ata structure. we -organize re ations ips grap
provi es a visua overview o t e arc itecture, w ic can t en e use to exp ain it to tec nica an non-
tec nica sta e o ers a i e. xpan ing on t e arc itecture in rea time y creating new ta e occurrences an
re ating t em to t e existing structure is a so a power u orm o communication. emem er too t at w at is
create in t e re ations ips grap is not simpy a visua ai ecause t e ta e structure it e nes is via e in an
o itse . amp e ata can e entere or importe into t e ta es in or er to more c ear y emonstrate ow t e
structure wi actua y wor .
In prior versions of FileMaker Pro, designing data architecture was something best performed with a flow chart
or entity-relationship diagram (ERD). While these will still be invaluable1, t e new eatures o i e a er ro
ma e exp oring ata arc itecture more accessi e. timatey, t e esign o your so ution may require severa
es, eac containing a num er o ta es. n t e ear y stages o requirements gat ering an nee s assessment,
owever, exp oring ata structure or t e purposes o earning an communicating can e accomp is e very
e cient y in a sing e e.
ann ng: e rt o reat ng xpectat ons
ne promise o i e a er ro is s orter eve opment cyc es. ere are many timesaving new eatures an
new ways to esign quic , e ective so utions. onet e ess, p anning w at it wi ta e to success u y comp ete
any so tware eve opment project is tric y usiness, an t e new an unique nature o i e a er ro a s ye
anot er varia e to t e p anning equation.
page
-
7/23/2019 Techbrief Fm8 Migrtn Found
13/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
n t e initia use o i e a er ro , not a assumpt ons er ve rom pr or vers ons or ot er
eve opment env ronments may app y. i e i e a er ro can e use in t e same manner as prior
versions, to o so wou e to ignore its potentia . ecause i e a er ro is unique in many ways rom ot er
so tware eve opment environments, i erent strategies an tec niques wi e use to pro uce inten eresu ts. t s easy to t n t at t e uses o t e new e a er ro eatures are o v ous, ut
effective design methodologies and best practices will emerge only through an experiential
un erstan ng o t ese eatures an ow t ey re ate to o eatures an ot er new eatures. t wi
e necessary to exp ore new possi i ities in ata structure, navigationa met o o ogy, ata integrity, transaction
management, security, wor ow contro , an many ot er aspects o so ution creation e ore acquiring a goo
an e on t e actors t at in uence t e p anning process. i e eventua y i e a er ro wi ecome as
ami iar as ear ier versions an ot er too s, it is est to approac its initia use wit caution an respect w en it
comes to creating an managing expectations or ear y eve opment projects.
ne way to exp ore t e new eatures an possi i ities in i e a er ro an earn ow to etter estimate
time an resource requirements is to su ivi e more comp ex so utions into sma er su -projects. a e t e
quintessentia ata ase so ution, t e contact manager, or instance. nstea o jumping in wit ot eet on y toiscover ate in t e game t at t ere is a etter way to o most o w at is a rea y one , egin wit t e asics.
at oes it ta e to manage a ist o names ow wi users enter new names an n existing names at
is the best way to manage the navigation between list views and entry views? Once you have a functional and
e ective name managing so ution t en a p one num ers. i eac name ave a imite or un imite num er
o p one num ers associate wit it at is t e est ata structure to manage t is a itiona entity
i e t is examp e may e over y simp istic an t e approac may seem ru imentary an ine cient given t e
experience o many eve opers, it is surprising w at can e gaine t roug suc a step- y-step met o o ogy.
In addition many of the new features in FileMaker Pro 8 make an incremental process more manageable. Being
a e to e ne mu tip e ta es per e, i- irectiona re ations ips, seeing a wor ing re ations ip iagram in t e
re ations ips grap , t e a i ity to pass parameters rom uttons to scripts an rom scripts to su -scripts, a
p ay a part in ma ing an incrementa , earn as you go, approac e ective.
not er actor t at must e a resse in t e p anning p ase is t at o eve opment strategy. e i e a er
Pro developer of past versions was often programming mostif not allof a solution him or herself. Thanks to
some o its new eatures, i e a er ro is a muc etter environment or co a orative eve opment. u tip e
eve opers or eve opment teams can now access a aspects o a serve e simu taneous y wit on y minima
inter erence. ere are a so more e ective met o s or mu tip e eve opers or teams to wor on separate sets
o t e same es, ringing t em toget er at a ater point in time. ina y, i e a er ro is a etter environment
or mo u ar esign. ne eve oper or team can e wor ing on t e contact management mo u e w i e t e
ot er team wor s on a separate invoicing mo u e. e two mo u es can e integrate w en t e in epen ent
mo u es are rea y.
anning an e ning a eve opment strategy is an essentia step i appropriate expectations are to e create
an maintaine t roug out t e process. i e a er ros power an exi i ity, a ong wit its ease o use,
provi e many timesaving new eatures t at wi eventua y s orten eve opment cyc es. y provi ing too s
page 12
-
7/23/2019 Techbrief Fm8 Migrtn Found
14/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
t at ma e incrementa an co a orative eve opment more accessi e, greater un erstan ing o eve opment
met o o ogies can e acquire t roug out t e eve opment process an a team or mu ti- eve oper approac
can e emp oye to urt er s orten project comp etion times.
Design: Where No One Has Gone Before
i e t e speci cs o esign in i e a er ro are iscusse in greater etai e sew ere in t is ocument
an in ot er re ate materia s, it is c ear t at one o t e most signi cant c anges in i e a er ro is t at
o greater esign options. u tip e ta es per e, remova o t e ty- e imit, increase capacity o text an
container e s, increase e size, mu tip e win ows per ta e, a new security mo e , an a more exi e an
powerful relational structure are just a few of the enhanced features that will change the way FileMaker Pro
so utions are esigne .
i e t e tec nica ene ts o t is new unctionaity may e imme iate y o vious, t e nuances t at t is new
power rings to t e va ue equation are easi y over oo e . it custom so utions, or instance, t e increasegranu arity o access to t e various ayers o a i e a er ro so ution can a ow t e power-users an su ject
matter experts to stay connected throughout its lifecycle. Allowing super-users the ability to design entry
ayouts, reports, an scripte processes t at meet t eir speci c nee s w i e restricting access to areas t at may
compromise t e integrity o t e so ution is now more managea e.
it commercia so utions or so utions t at wi require upgra es over time, t e a i ity to separate ata rom
structure ot inter ace an ogic is muc easier in i e a er ro t an in prior versions. e eve oper
needs to only replace the structure files as a part of an upgrade process. Separate structure files that continue
to wor wit t e customers existing ata es wi e iminate t e nee or comp ex an unwie y import
routines.
i e a er ro a so en s itse to a mo u ar approac to so ution esign. it t is approac , a e ne
set o unctions is containe in a e or set o es, constituting a mo u e. ac mo u e is esigne to a ow
other modules to access its data while safeguarding its functionality. A contact management solution built by
one developer, for instance, can be designed to allow an invoicing module developed by another developer
to interact wit its ata. sa es reporting mo u e mig t access ata rom ot t e contact management an
invoicing systems. e va ue o t is approac is certain y evi ent in commercia app ications as many eve opers
can everage t eir speci c expertise an so utions in com ination wit t ose o ot er eve opers. urt ermore
a eve oper can a ow ot er eve opers access to nee e in ormation an unctiona ity wit out a owing access
to t e entire so ution, protecting ot t e sta i ity o t e mo u e as we as t e inte ectua property.
t er eve opment environments can a so ene t rom a mo u ar approac . it a we - eve ope set o
esign princip es, mu tip e s an eve opers wit in an organization can eve op mo u es t at e iver speci
unctiona ity, wit out compromising ot er eve opment e orts or ive systems. mix o commercia mo u es
wit custom mo u es or a -ons mig t e t e est way to e iver va ue w en meeting an organizations nee s.
ese esign met o o ogies an ot ers are covere more extensive y e sew ere in t is an ot er ocuments,
page 13
-
7/23/2019 Techbrief Fm8 Migrtn Found
15/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
an new esign met o o ogies may emerge as t e use o i e a er ro matures. onet e ess, it is c ear t at
one o t e strongest va ues e ivere y t is new tec no ogy is t at o versati e esign. e way t at so utions
are esigne in i e a er ro is orever c ange , an commercia eve opers an organizations wi ot reap
t e rewar s o t e pro uct as t e tec no ogy an its use continue to evo ve.
eve opment: t s out xecut on
nce t e esign strategy is in p ace, i e a er ro continues to e iver va ue y provi ing a very exi e
environment or eve opment. egar ess o t e rigor wit w ic t e requirements, speci cation an esign
p ases are comp ete , un oreseen opportunities an constraints wi emerge in t e eve opment process.
e ear ier t ese issues sur ace, t e more e cient y an e ective y t ey can e a resse . e co a orative,
real-time development environment of FileMaker Pro 8 provides many opportunities for optimizing the
eve opment process.
timate y, comp ex so utions consist o components an su -components t at are integrate to wor toget eras a seam ess w o e. n prior versions o i e a er ro it was o ten necessary to ui comp ex co ections o
su -components a at once suc t at it was a most impossi e to etermine w ere one component en e an
the next began. FileMaker Pro 8 provides for greater modularity of design, which allows discrete (or semi-
iscrete components to e constructe an teste or ater integration wit ot er components. time c oc
mo u e use to capture t e time spent on a project, or instance, can e ui t an teste y ot eve opers
an users e ore com ining it wit a time s eets mo u e eing simu taneous y constructe . ntegrating t e two
mo u es can appen t roug a num er o possi e esign scenarios, w ic may invo ve merging unctiona ity
in t e same e, com ining unctiona ity etween two es, or importing e ements rom one e into anot er.
In any case, the new features of FileMaker Pro 8 allow the integration of modules to occur in a seamless and
straig t orwar manner.
e a i ity to ui an test sma su -components an mo u es represents a signi cant improvement in t e
way i e a er ro so utions are eve ope . t a ows or un oreseen issues to emerge t roug t e eve opment
process in a more containe an contro e manner. it a equate testing, t e unctiona ity, usa i ity, an
appropriateness of each module can be well vetted before the module becomes immersed in the overall
so ution. atc ing t e pro ems ear y on wi e p acce erate t eir reso ution an eep t e pro ems in one
mo u e rom etrimenta y a ecting ot er mo u es.
i e a er ro as een a rea -time eve opment environment or years. e increase a i ity or mu tip e
eve opers or eve opment teams to access t e u unctiona ity o a so ution wit out inter ering wit ot er
eve opers, users, an testers p aces i e a er ro in a new eague. ertain y, more comp ex an mission
critical development activities might best be orchestrated using separate sets of files, but many development
projects can now peace u y co-exist wit ot er eve opment projects, wit testing, an even wit ive use ot e so ution. n cases w en a secon set o eve opment es is warrante , t e integration o new unctiona ity
into t e ive e set is more easi y an e ue to a vances in script importing, ata importing, an copying
ayouts etween es.
While implicit in the above illustrations, the value and leverage of collaborative development should not be
page 14
-
7/23/2019 Techbrief Fm8 Migrtn Found
16/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
un erestimate . ncreasing y, t ere is a strong sentiment in programming communities t at team oriente
eve opment pro uces signi cant a vantages over t e sing e eve oper approac . om ining eve opers
wit ot er eve opers or eve opers wit s in t e co e writing process can en ance t e qua ity o t e
eve opment in many ways. wo participants ocuse on t e same pro em an ringing i erent perspectivesare more likely to uncover issues early on and to see a wider variety of possibilities than a single developer. If
one partner in a pair is also intimately familiar with the needs of the organization, the demands of the workflow
an t e expectations o t e users, so muc t e etter.
ina y, t e spee o eve opment in i e a er ro promises to e outstan ing in comparison ot to its
pre ecessors an to ot er eve opment environments. any operations, w ic use to ta e severa es, e s,
re ations ips, an scripts, can now e manage wit a sma an u o t ese e ements. n t ere are more
robust tools available to simplify much of the repetitive and laborious programming with respect to navigation,
inter ace contro , an ata management. nce t e un erstan ing o t e new eature set is more mature,
eve oping so utions in i e a er ro cou ta e ess time t an in previous versions o t e pro uct.
or t e most part, eve oping so tware so utions is a process o iscovery an a aptation. t is not unti we putt e pieces o our p ans an strategy toget er to ma e t em unction as a armonious an we -orc estrate
whole that we understand how the design of a solution will come together. Integral to this process is feedback
rom s, users, usiness ea ers, eve opers an t e so ution itse as eac unction is create , teste ,
revea e , an integrate into t e arger context o ot er systems an t e organizationa environmentt e
onger t e ee ac cyc e, t e greater t e possi i ity or waste e ort an or aying i - ate oun ations. uc
o t e new unctiona ity avai a e in i e a er ro provi es or increase co a oration invo ving t e s
an ot er sta e o ers uring t e eve opment process. uc invo vement ten s to s ortcut ee ac cyc es,
allowing the development team more insight into the opportunities and constraints that emerge from the
so ution. timate y, t is saves va ua e resources an pro uces a more e ective en resu t.
est ng: e ten gnore unce o revent on
Let us face it; no one wants to test software. Inventing the testing procedures alone is challenging enough,
and there are rarely adequate resources to complete the solution much less to test all of the variables.
urt ermore, t ose w o o ta e t e time are o ten quic y is eartene y unexpecte iscrepancies in ata
an in user interactions, ot o w ic invaria y compromise ot erwise we -conceive an we -written
so utions. esting commercia app ications is even more eman ing, as many customers in an inconceiva e
variety o environments wi use t em. ven arge so tware companies use pu ic eta testing cyc es at times
un e nownst to en users to vet an re ne t eir so utions.
egar ess o t e resistance to an t e ac o resources or its execution, t ere is itt e ou t t at so tware
testing pays o , an it is not enoug to ave t e eve opment team o t e testing. ssuring t e sta i ity o t e
so tware requires testing at a stages o t e process an y a wi e variety o users. n cases w ere t e time,
resource an expertise is not avai a e or a orma testing process, t e i e a er ro rea -time environment
page
-
7/23/2019 Techbrief Fm8 Migrtn Found
17/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
can provi e tremen ous a vantages y re ucing ee ac cyc es an invo ving en users an su ject matter
experts t roug out t e testing process. urt ermore, as even extensive testing is vu nera e to un oreseen
consequences, a ter initia eta testing is comp ete, issues t at arise uring ear y imp ementation can e easi y
a resse wit out inter ering wit t e ongoing use o t e so ution.
One of the challenges in testing cycles is that feedback from tester to developer takes too long, and planned
testing perio s can e interrupte y s ow-stopping pro ems. n orma testing environments, pro essiona
testers are emp oye to run t roug a series o e ne sequences in or er to test eac eature an unction,
reporting any issues ac to t e eve oper. it i e a er ro, eve opers wor ing irect y wit users in ear y
testing cyc es can vet initia issues in rea -time, i enti ying an repairing many on t e spot in or er to eep t e
testing process moving. n cases w ere more researc is require to reso ve a s ow-stopping issue, t e user ca
move on to other aspects of testing or return to other work while the developer fixes the problem. The fact
t at testing an repairs can e one in t e ep oyment environment e iminates t e nee or compi ing cyc es as
we as issues t at sometime arise rom t e compi ing process.
ecause a rea -time eve opment environment can ramatica y s orten testing cyc es, en users an su jectmatter experts w o may not ave time or ong testing perio s can e more invo ve . irty-minutes o testing
in rea -time wit user an eve oper can accomp is quite a it wit respect to eva uating t e usa i ity an
e cacy o imp emente wor ow. urt ermore, a user may i enti y issues t at a pro essiona tester is una e
to see ue to t e users ami iarity wit ot wor ow processes an expecte ata. n some situations,
testing can e incorporate into a user s regu ar jo unction, especia y a ter a so ution is imp emente , w en
re nements are a resse or new eatures are a e .
For many developers and organizations, testing is considered a necessary evil and can be ignored all together
muc to t e etriment o t e imp ementation. e rea -time nature o i e a er ro o ers t e a i ity to
re rame t e testing project, o ering new opportunities to ma e t e process more e cient an e ective.
i e a er ro exten s t is capa i ity y a owing access to esign unctions w i e ot ers are accessing
ata ase unctiona ity. is gives t e eve oper more options an exi i ity in t e testing process as we as
a owing users an s to e invo ve in a manner t at urt er everages precious resources.
mp ementat on: e rt o t e o ut
o ing out new so tware so utions in an organization is tric y usiness. ven w en so utions are we esigne
an teste , it ta es time to integrate c anges into usiness processes an systems. n a ition to t e tec nica
c a enges, user uy-in an a option can present signi cant o stac es. e more processes, systems an uman
beings affected by the software, the more challenging the implementation.
n or er to minimize t e negative impact an resistance to a option, many organizations p ase in new
unctiona ity incrementa y an over time. enever possi e, even mo est so tware imp ementations are su -
ivi e into iscrete imp ementation units. nce a unit is in p ace an wor ing, t e next unit can e ro e out.
is mo u ar approac a ows or mu tip e sta e points t roug out t e imp ementation process t at e iver
the full value of the software in a timely manner.
page 16
-
7/23/2019 Techbrief Fm8 Migrtn Found
18/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
i e a er ro is an exceptiona too or an incrementa ro out strategy. it a mo u ar approac to
esign iscusse previous y, an in more etai e sew ere , so utions can natura y e intro uce mo u e
y mo u e. itiona y, t e a i ity o i e a er ro to interact an exc ange ata wit ot er so tware
app ications an so utions via , , , etc. a ows or t e eve opment o ess comp ex so utionsy interacting wit an everaging pre-existing systems. oug t is mig t at rst appear to e more wor , suc
a methodology provides an organization with the opportunity to focus at each stage on the functionality that is
most imme iatey necessary an t at wi pro uce t e greatest va ue.
not er a vantage to an incrementa approac especia y wit a too as new an power u as i e a er ro
is t at it o ers a earn-as-you-grow environment. aspects o t e process, rom requirements gat ering
to imp ementation, are oun to mature as eac su sequent p ase is success u y rea ize . e nee s o t e
environment wi a so e trans orme to some extent as eac aspect o t e so tware is intro uce . now e ge
garnered from earlier phases in the process will provide better intelligence for use in later phases, ultimately
pro ucing superior resu ts. reating processes t at a ow new tec nica an esign inte igence to o ac
into prior p ases wi assure t at ear y wor maintains its re evance an via i ity wit in t e greater so ution.
ertain y t e timing o t e ro out is a critica part o t e equation. t is not uncommon or an organization to
recognize t e nee or a so ution ate in a usiness cyc e or to wait unti t e ast minute to move orwar on
a critical project. Once the decision has been made, it is compelling to think that the solution is required as
soon as possi e. e speci cs o t e timing, owever, o not un amenta y a ect t e act t at organizationa
processes are est ro e out incrementa y an over time. e greater t e comp exity an num er o varia es,
inc u ing tec no ogies invo ve , re ate systems, an personne , t e greater t e nee or an incrementa strategy
ee ing out mu tip e sta e points a ong t e imp ementation pat provi es t e est c ance or success w en
ro ing out even mo est so tware so utions.
a ntenance vo ut on: everag ng t e nvestment
t as een sai t at so tware re nement is never rea y nis e , ut simpy a an one . i e it is true t at a
so ution can e engineere ar eyon a point o via e returns, t ere is anot er si e to t is story. o utions
are created to remove constraints. As each constraint is removed, new constraints are revealed. When new
constraints are signi cant enoug to matter, new so utions are require . is cyc e o constraint an so ution is
urt er in uence y t e ynamic nature o ot t e mar etp ace an t e organizationa environments serve
y so tware app ications. it ew exceptions, so tware so utions t at o not a apt to new constraints an
c anges in environment o not continue to pro uce va ue over time.
it t e time an resources require to pro uce e ective so tware so utions, it ma es sense to use a
design methodology and development environment that support the ongoing maintenance and evolution of
t e so tware system. gain, t e i e a er ro exi e, rea -time environment aci itates t e intro uction onew eatures an unctiona ity as we as su t e c anges an t e maintenance o existing co e. t is easy to
un erestimate t e pro uctivity en ancing power o a ing or moving a ata e on a ayout or c anging t e
e ta or er. it i e a er ro , re nements i e t ese are just a raction o w at is possi e w en it
page
-
7/23/2019 Techbrief Fm8 Migrtn Found
19/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
comes to en ancing existing unctiona ity an exp oring new possi i ities. ecause re nements an a terations
can e ma e very quic y, a wi e variety o i eas can e easi y teste or va ue an via i ity.
e new eatures in i e a er ro a ow t e eve oper to provi e access to some or a o t e esign eatureso t at super-users an su ject matter experts can experiment wit new i eas in wor ow, unctiona ity an
reporting. Because this access is very granular, end users can be given the ability to test their ideas themselves
wit out compromising t e a ance o t e so ution or t e ata e in it. n some cases, users an su ject
matter experts wi create new eatures an unctions on t eir own, in ot er cases t eir e orts wi pro uce
prototypes or t e eve oper to re ne. egar ess, eeping t e users invo ve in t e exp oration an esign
process can yie tremen ous va ue over t e i ecyc e o a so ution.
o utions t at o not a apt to t e c anging nee s o t eir environment quic y ose t eir va ue. ose t at can
adapt quickly and effectively to the needs of an organization and its market will continue to produce value over
time. i e gui e ines or a aptation an evo ution must e o owe in or er to maintain t e integrity o t e
so ution, provi ing super-users an su ject matter experts wit t e too s t ey nee to experiment an invent
can ramatica y increase t e va ue o a so ution. i e a er ro provi es a exi e, rea -time environment t ata ows eve opers to empower t e user w i e protecting t e core arc itecture an ata.
onc us on: ar y ng t e ropos t on
ue to t e transparency o muc o t e new power in i e a er ro , many users may continue to esign
so utions as t ey ave in prior versions. t ers wi go irect y into t e eve opment o arge-sca e, enterprise
so utions. n eit er case, an regar ess o t e outcome, t e rea va ue proposition o i e a er ro may e
misse .
ts true: i e a er ro mar s a new age or t e too an t e so utions it inspires. e power an exi i ity o
t is new environment, owever, comes wit a earning curve, increase eve s o creativity an insig t, an t e
requirement o greater i igence an rigor t roug out t e process. n ee , earning ow to eve op e egant an
e ective soutions in i e a er ro wi appen incrementa y an over time regar ess o t e way in w ic
it is initially approached. Rather than looking at this process as a hurdle or barrier that must be crossed in
or er to get to greener pastures, it can e seen as a journey t roug w ic ot un erstan ing an va ue are
receive . ocusing ony on t e en resu ts an ignoring or avoi ing t e steps a ong t e way wi iminis ot
t e experience an t e eeper vaue avai a e.
i e a er ro provi es an outstan ing environment or engaging t e process w i e simu taneous y creating
va ue or usinesses an organizations o a types an sizes. s t e new eatures an unctions are em race o
t eir tec nica va ue, it is important to em race t e entire va ue proposition. is inc u es setting an managing
appropriate expectations an exercising proper restraint an consi eration at eac stage o t e so utioncreat on process.
ina y, w at t e i e a er amiy o pro ucts represents is a signi cant eap orwar in t e maturity an
possi i ity o t e so tware so utions it supports. ow ere e se o we n a too so capa e o seam ess y
integrating the needs of the single-user desktop database and the enterprise-level solution. Being effective in
page 18
-
7/23/2019 Techbrief Fm8 Migrtn Found
20/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
t is new arena wi require t e eve opment o a commensurate eve o maturity in t e way ata ase so utions
an services are e ivere . ear y t is is a journey wort y o attention.
out t e aut or
ic ae ompson is t e irector o o tware a es an mp ementation at ew i ennium ommunications,
nc., a i e a er o utions iance artner. it more t an a eca es experience using i e a er ro, e as
e pe an its c ients ui so utions ranging rom sing e e ata ases to u -sca e systems.
ootnote1 e re ations ips grap is neit er a ow-c arting nor generation too , an s ou not e su stitute or
one. There are limitations to using the relationships graph for this purpose, which are inherent to its primary
unction. ee t e ocument on t e i e a er ro e ationa o e or a more etai e un erstan ing o t e
re ations ips grap .
page 19
-
7/23/2019 Techbrief Fm8 Migrtn Found
21/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
The FileMaker Pro 8 Relational Model
ummary
This document introduces the relational model of FileMaker Pro 8 and the rationale behind it.
re- e a er ro -- at es
- repeating e s su -recor s or simp e one-to-many re ations
- oo up e s a ow copying o ata ase on matc ing ey va ues
- no ability to display data directly from other files
e a er ro - -- e at ona
- repeating e s an oo ups sti supporte
- can e ne re ations ips rom one e to anot er
- can isp ay an re erence re ate recor s rom a irect y-re ate e
- must create interme iate ca cu ations to propagate ata rom more t an one re ation away
FileMaker Pro 8 - Relationships Graph
- repeating fields and lookups still supported
- can e ne re ations etween a ta es in a ata ase in a re ations ips grap
- can isp ay an re erence re ate recor s rom any ta e in t e re ations ips grap
- re ations ips grap can span mu tip e es; eac e as separate re ations ips grap
- re ationa operators can e re ative t eta joins ; mu tip e pre icates supporte
re- e a er ro -- at e o e
e ore i e a er ro , i e a er was esigne to e use as a at e ata ase wit on y very imite
re ationa capa i ities. at e is simpy a e or ta e consisting o a set o recor s or rows an a set o e s
or co umns . ac recor can contain a vaue or any num er o t e e s e ne on t e ta e. or examp e,
one mig t e ne an nvoices ta e w ere t e e s are t ings i e ustomer ame, ustomer ress, nvoice
Date, Invoice Total, etc. One record in the Invoices table exists for each invoice.
ese versions o i e a er ro a imitere ationa capa i ities or re ationa su stitutes:
repeating e s an oo ups. epeating e sa ow i e a er ro to store more t an one vaue
or eac e an t us create su -recor s oneac recor . or examp e, to create an nvoices
ta e, it is necessary or eac invoice recor tohold a set of items ordered on that invoice. To
accomp is t is, one cou create e s uantity,tem escription, an rice an t en e ne t esefields to have twenty or so repetitions each.
en t ese e s are ai on a orm si e- y-si ewit t eir repetitions running vertica y, it wou
then be possible for users to enter up to twentyitems on t e invoice an a ca cu ation cou ee ne to tota up t e items or t e invoice.
page 20
-
7/23/2019 Techbrief Fm8 Migrtn Found
22/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
oo ups a ow esigners to ma e
i e a er ro oo up a va ue or a erom t e same ta e or anot er ta e
ase on matc ing va ues. n t is nvoicesexample, this would make it possible fort e esigner to ave a separate arts
ta e an ave i e a er ro oo up t eprice and description of the item and copy
it over to t e appropriate e s in t envoices ta e w en t e user enters a partnum er in t e invoice.
i e repeating e s an oo ups ave
proven inva ua e in creating interestingata ase so utions in an ot erwise at e
mo e , a re ationa mo e can provi e a
great ea more unctiona ity.
FileMaker Pro 3-6 -- Relational Model
ne o t e more serious imitations wit t e at e mo e an oo ups is t at it is i cu t to s are common
ata. s a resu t, t ere is a great ea o ata up ication. e same ata is nee ess y store in many i erent
recor s. is ma es t e ata ase arger an s ower t an necessary an t is up icate ata is at ris to
ecoming out-o - ate an inconsistent.
In the Invoices example above, the customer information (name and address) had to be entered for each
invoice even i t e same customer in ormation was a rea y entere or a previous invoice. n a ition, t e
part escription an price a to e oo e up an copie over to t e nvoices ta e or eac item or ere .
ertainy t ere are times w en t is mig t e a vantageous -- or examp e, it is pro a y est t at t e part
prices are copie w en t e invoice is create so t at uture price c anges ont a ect o invoices or t at t e
customer name an a ress are oo e up so t at t e invoice is a re ia e istoric recor o t e transaction.
However, this is not always the desired behavior. What if you always want the most current data? To produce
a customer statement a ist o unpai invoices to mai to a customer, it is important to use t e customerscurrent name an a ress. t is possi e to re oo up t e ata perio ica y ut t is is time-consuming, oes not
guarantee t at t e ata is a ways current, an requires t at t e recor s e mo i e .
page 21
-
7/23/2019 Techbrief Fm8 Migrtn Found
23/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
i e a er ro - a resses t ese issues y
intro ucing t e a i ity to e ne re ations ipsetween es ta es . re ations ip escri es
ow recor s in one ta e are re ate to recor sin another table. In FileMaker, these relationshipsare ase on simp e sing e e matc es -- t e
va ue o one e in a given row is matc e againstthe values of another field across all rows of a
i erent ta e or t e same ta e in t e case o ase -re ations ip . n ot er wor s, or eac parentrecord, FileMaker finds the set of matching child
recor s w ere a given e as t e same va ue ast e parent recor . e set o matc ing recor s
cou e empty, cou e a sing e recor , or coue a sma or arge set o recor s.
n t e nvoices examp e, it wou e use u tota e a vantage o a re ationa mo e to create aseparate ta e or a t e customer ata. n t e
ustomers ta e, eac recor wou corresponto a different customer and be identified with aunique ustomer . n eac recor in t e nvoices
ta e, t e customer s current name an a ress canbe displayed by relationship. This Customer ID can
e use to e ne a re ations ip etween t e twota es so t at we can isp ay current ata rom t e
Customers table without having to copy it over tot e nvoices ta e.
urt er, we can o away wit t e use o repeating e s to o t e in ivi ua invoice items on eac invoice. e
can create a Line Items table to contain a record for each item by defining a relationship based on the invoice
num er etween t e nvoices ta e an t e ine tems ta e. en we isp ay a recor in t e nvoices ta e,
we can use t e i e a er ro re ationa capa i ity to isp ay t e set o ine tems recor s w ic ave t e same
invoice num er as t is invoice. y oing t is, we e iminate t e imitation o aving a xe num er o repetitions
or t e item ata an we can generate more comp ex reports an queries invo ving t e set o a ine items or
a invoices.
page 22
-
7/23/2019 Techbrief Fm8 Migrtn Found
24/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
The FileMaker Pro 3-6s relational model is more flexible and more powerful than its original flat file model.
owever, it sti as imitations. t is not easy to get a ig picture view o t e ata ase an a o t e re ations
etween t e ta es since t e esigner must e ne every ta es re ations to eac o its re ate ta es separatey
rom a o t e ot er ta es. is mo e ma es it i cu t to o queries invo ving ot er ta es in t e ata ase. t
requires extra wor or ata ase esigners w o want to view, wor wit , an per orm queries across a o t e
ta es in t e ata ase rat er t an on y t ose irect y accessi e rom eac ta e.
or examp e, it may e o interest to generate a ist o a customers w o ave purc ase a particu ar pro uct.
o ac ieve t is, it is necessary to o some air y comp ex scripting using mu tip e o to e ate ecor steps in
a series o su scripts, ui ing mu ti- eys in g o a e s wit uti ity re ations ips at eac interme iate ta e.
t is a so a imitation o t is mo e t at you cannot irecty access e s in re ate ta es t at are more t anone table away. It is often necessary to create calculated fields or looked-up fields in order to display data.
nterme iate e s are necessary or every e t at t e esigner wis es to access rom more t an one ta e away
.
page 23
-
7/23/2019 Techbrief Fm8 Migrtn Found
25/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
e view o t e ata ase is i erent or eac ta e in t e ata ase. ac ta e is on y aware o t ose ta es t at
it is irect y re ate to an eac ta e is aware o ta es t at are irect y re ate to it. or examp e, t e
ine tems ta e is not aware o t e re ation rom nvoices to ine tems. e re ations in t is mo e are one-way.
FileMaker Pro 8 -- Relationships Graph Relational Model
e i e a er pro uct ami y intro uces a more comp ete re ationa mo e to i e a er ro. is mo e is
ase on t e inter ace o a re ations ips grap w ere t e ta es an re ations etween t e ta es orm a visua
grap o no es an connections. is grap a ows t e esigner to see a t e ta es an a o t e re ations at
once i esire . or compex ata ases, t e esigner may c oose to rea up t e grap into more managea e pieces
epresentations o ta es in t e ata ase are s own in t e grap an re ations are e ne etween t e ta es
an s own as connections etween t e ta es. e connections are rawn etween t e matc e s t at e ne
t e re ation. y requiring t at every ta e occurrence in t e grap ave a unique name, it ecomes possi e to
escri e very comp ex re ations ips invoving many interme iate ta es wit very simp e qua i e names. s asimp e examp e, to re er to an isp ay t e re ate part escription or a particu ar ine item in t e invoice, it
would only be necessary to reference Parts::Part Description. If were asking for the data from the Invoices
ta e, t e ata ase engine is a e to etermine t e set o re ations ea ing rom nvoices t roug ine tems to
arts,per orm t e require join an return t e va ue o t e appropriate row. y simp y re erencing arts:: art
escription, we get t e va ue o t e e rom t e rst matc ing re ate recor . sing porta s we can access
t e entire set o reate recor s. is re ations ips grap mo e an t e e name qua i cation syntax ta e
name :: e name is compara e to ow many ot er ata ase systems an anguages inc u ing wor
with tables and fields in a database. By adopting this model and syntax, FileMaker has become more accessible
to eve opers accustome to ot er ata ase systems an tra itiona re ationa ata ases.
page 24
-
7/23/2019 Techbrief Fm8 Migrtn Found
26/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
ote t at t is mo e oes not ave t e imitation o t e previous mo e w ere it was not possi e to irect y
access e s in ta es t at are more t an one ta e away. ere ore, it is no onger necessary to create
interme iate ca cuate or oo up e s to copy t e ata rom one ta e to t e next. ac ta e now on y nee s
e s e ne or t e ata t at e ongs to t at ta e. urt ermore, t is mo e a ows muc more comp exqueries to be performed from any point in the graph involving any number of tables in the graph no matter how
far apart as long as they are somehow related.
a es on t e rap
ne constraint o t e re ations ips grap is t at it must not inc u e any cyc es. not er way to say t is is t at
there must only be one path between any two tables. If more than one path were available from one table to
anot er, t en it wou not e possi e to etermine t e esire pat y s imp y re erencing t e esire ta e.
an a itiona re ations ip is esire rom one ta e to anot er, it is necessary to a an a itiona ta e
occurrence to t e grap , ase on t e same ta e.
Each occurrence of the table in the graph must have a unique name. Names can be generated by appending
sequentia num ers i.e., nvoices , nvoices , etc. or t e eve oper can provi e unique names. ote in t is
examp e t at t ere are two occurrences o t e ontacts ta e, name ustomers an en ors , an a so
two occurrences o t e arts ta e, name arts an arts .
page 25
-
7/23/2019 Techbrief Fm8 Migrtn Found
27/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
ote t at t ere is not any requirement t at t e ta es in t e grap ave to e connecte to eac ot er. a es
can e present in t e grap t at is not connecte to any ot er ta e in t e grap . ere can a so e sets o
ta es in t e grap t at are connecte to eac ot er ut not to ot er ta es in t e grap .
Tables and Table Occurrences
e re er to ta es in t e grap as ta e occurrences an to t e un er ying ta es as ase ta es .
evert e ess, in common usage, w en re erring to ta e occurrences on t e grap we o ten re er to t em
simp y as ta es . t rst, t is can e con using, ecause t e concepts o t e ta e as we as t e ta e
occurrence are new. t is simi ar, owever, to t e common usage o t e wor e to re er to a e on a
layout. It isnt generally necessary to refer to a field occurrence, since it is implicit based on usage when one
is re erring to t e e itse versus re erring to t e particu ar occurrence o t e e on a ayout.
e at ons ps re ot recte
The relationships in the relationships graph are not directed. A relationship defined between any two tables
wor s in ot irections not in just one irection as in i e a er ro . - . . or examp e, using t e same
grap , one can s ow t e re ate customer ata on an nvoices ayout an s ow t e re ate invoices ata on a
ustomers ayout.
owever, many options e ne on t e re ation are irecte . en you e ne or e it a re ations ip etween
two tables, you have several additional criteria that can be specified including an optional sort order, whether to
a ow creation o re ate recor s, an w et er to e ete t e re ate recor s in one ta e i a recor is e ete
in t e ot er ta e. ese options an ot ers must e speci e or one irection or t e ot er or ot . or
examp e, you may wis to speci y t at i a recor is e ete in ustomers, t at a o t e re ate recor s in
nvoices are a so e ete . owever, you pro a y o not want to e ete t e re ate recor in ustomers w en
a recor in nvoices is e ete .
xterna a es
n important eature o t is ata mo e is t at t e ta es in t e re ations ips grap o not nee to exist in
t e same i e a er ro e as t e grap . ta e t at appears in t e grap may actua y exist in a i erent
i e a er e. is means t at ayouts an scripts can e create in t e same e as t e grap to wor wit t e
tables in the graph while the data is pulled from an entirely different FileMaker Pro 8 file.
u t p e a es, u t p e es, an u t p e rap s
e ore i e a er ro , eac e containe a s ing e ta e. ere ore a ata ase o mu tip e ta es was necessari y
made up of multiple files. However, any particular file could be used as part of multiple databases. For example, a
ip o e osta o e ta e mig t e s are an reerence y severa i erent a ta ases.
page 26
-
7/23/2019 Techbrief Fm8 Migrtn Found
28/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
e ata mo e provi es or t e e nition o many ta es in a sing e e. ere ore, an entire ata ase o many
ta es can e w o y containe in a singe e on is or can span many es, some o w ic ave mu tip e ta es
i e a er ro a ows t e user to create an use es wit various num ers o ta es. e cou ave on y
a sing e ta e an appear muc i e es rom previous versions o i e a er ro, or it cou com ine mu tip eta es into one e an sti access ta es in ot er es.
e important t ing to note ere is t at, just i e in previous versions o i e a er ro, eac e as its own
view of the relations of the database. This means that each file has its own relationships graph that may or may
not correspon to t e re ations ips grap s o ot er es in t e ata ase. or examp e, t e re ations ips grap
given ear ier o nvoices, ine tems, ustomers, an arts eing a re ate toget er mig t e t e re ations ips
grap o just t e nvoices e. e arts ta e mig t exist in a separate arts e an ave its own in epen ent
re ations ips grap invo ving a se re ation to s ow parts ma e up o su parts. e esign an organization o
t e ata ase is up to t e esigner.
The first reason that each file has its own relationships graph is to provide backward compatibility withata ases create in previous versions o i e a er ro. n t e re ationa mo e o i e a er ro - eac e
contains t e set o re ations etween its ta e an t e ta es in t e ot er es. ere was no requirement t at
a given ta e a to e ne t e same set o re ations to ot er es t at were e ne to it. is is a so true wit
t e re ations ips grap mo e . ot on y oes t is a i ity ma e conversion o ata ases to i e a er ro
possi e, it a so is very reasona e. ere is no reason or a e containing a ip o e ta e or mp oyee ist,
etc.) to be aware of and define reciprocal relations to every other table that has a relation to it.
e secon reason t at eac e as its own re ations ips grap is t at i e a er ro as a ways a owe
eac i e a er ro e to e opene an mo i e in epen ent y o a ot er i e a er ro es. i e a er
ro oes not require t at a es re erence or a es t at re erence a given e e present in or er to
use or mo i y t at e t oug it wi oo or re erence es w ic are missing, t e eve oper can cance
and proceed). FileMaker Pro 8 also does not require that one have design access to all files involved in theata ase in or er to ma e esign c anges to one o t e es. is is rea y important w en mo i ying a e t at
is accesse y many ot er ata ases. t wou e unreasona e to require a t e ot er es to e up ate to
accommo ate sc ema c anges. ere ore, eac i e a er ro e sti as its own set o re ations in t e orm
o t e re ations ips grap . e re ations ips grap in eac e can e mo i e in epen ent o w et er any
page 27
-
7/23/2019 Techbrief Fm8 Migrtn Found
29/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
ot er es re erence t is e.
t is wort noting again t at a re ations ips grap nee not e u y connecte . ere can exist in t e grap
groups o ta es t at are connecte to eac ot er ut not to ot er ta es in t e grap . ere ore, a singe e
can act as i it as mutip e reations ips grap s. ac isconnecte su -grap is, in a way, its own in epen ent grap .
So, to summarize, a database can be built on one or more files. Each file can contain zero or more data tables.
ac e as its own re ations ips grap t at can contain isconnecte grap s. cripts an ayouts e ne in t e
same e can a ta e a vantage o t at es re ations ips grap , as can ca cu ations in ta es t at are in t e same
e as t e grap .
eparate ew an ata es
re ations ips grap can inc u e externa ta es ta es in ot er es an its not necessary to ave any ta es
e ne in a e at a you can e ete t e initia e au t ta e . is means t at it is possi e to create a i e a er
ro e t at contains no ata ta es at a ut as a re ations ips grap t at re ates a num er o ta es e nein externa es. is e can sti ave a comp ete set o ayouts an scripts t at ma e use o t e ata ta es in
t e grap . e resu t is t at a t e ata ta es cou e in one e an a t e ayouts an scripts cou e in
another file.
is a ows a eve oper to easi y rep ace t e ayouts an scripts e wit out a ecting t e ata es. owever,
t ere is a imitation ere. e e e nitions are part o t e e nitions o t e ata ta es an are t us part
of the data file. This means that changes to the data table fields must still be made in the data table files
t emseves.
s ng t e e at ons ps rap
ne imp ication o t is re ations ips grap mo e is t at it is a ways necessary to provi e t e context rom
which references in the relationships graph should be evaluated. For example, each layout in a database file muste e ne to isp ay recor s rom a particu ar ta e or a particu ar occurrence o a ta e in t e grap . nce
t is starting point as een esta is e , it is t en possi e to re erence any e in any ta e in t e grap as ong
as it is re ate even very in irect y to t e starting point.
page 28
-
7/23/2019 Techbrief Fm8 Migrtn Found
30/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
is is true or a e re erences in t e ata ase regar ess o w et er t at e is on a ayout, in a script, via
a ca cu ation, part o an export or er, etc. ere must a ways e some way to esta is t e context a particu ar
ta e in t e grap rom w ic a re erences to ot er e s in t e grap are to e interprete .
or ayouts t is requirement is straig t orwar in t at part o t e e nition o t e ayout is t e ta e t at t elayout is displaying data from. (This is necessary anyway to support multiple tables per file.) Afterwards, any
reference on the layout to any field from any table in the graph is interpreted relative to that layouts defined
ta e. is e nition can e c ange a ter t e ayout is create as we since i e a er ro wi sti e a e to
interpret a t e e s on t e ayout rom t e new ta e as we . , at any time, a e is re erence w ic is not
re ate to t e ayouts ta e, t en an < a e issing> message is isp aye in p ace o t e e s ata, muc i e
t e messages in i e a er ro - to report t at a e is missing, a e is missing, or t e user oes not ave access.
For calculations, it is necessary to specify where in the relationships graph the calculations field references
s ou e eva uate rom. n t e case o cacu ations e ne as part o a e s e nition, t e ase ta e is
a rea y nown -- it is t e ta e t at t e e is e ne in. owever, i t e ta e appears in t e grap more t an
once, it is sti necessary to speci y w ic occurrence o t e ta e in t e grap s ou e use to evauate t e
ca cu ation.
A Complex Example
e o owing is a more comp ex examp e t at can e use to emonstrate some o t e power an some o
t e intricacies o using a re ations ips grap . is ata ase is inten e to manage c asses, stu ents, teac ers,
assignments, an gra es.
We can start with the basic tables: Classes and Students. Since each class will have many students enrolled in it
an eac stu ent wi e enro e in mu tip e c asses, we nee an interme iate ta e, nro ment, to provi e t e
pairings in t is many-to-many re ations ip.
ow, its wort noting t at someone w o oes not ave a ot o experience wit re ationa ata ase esign
cou stop ere wit t ese ta es an ave a per ecty reasona e so ution or trac ing enro ment o stu ents
in c asses. is person mig t a so create a itiona ta es or teac ers an assignments an not even try to
relate them all together in some meaningful fashion.
page 29
-
7/23/2019 Techbrief Fm8 Migrtn Found
31/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
e grap we ave so ar a ows us to create a ayout ase on t e asses ta e w ere we s ow t e set o
stu ents enro e or eac c ass. is wou e accomp is e y speci ying t e asses ta e w en creating
t e ayout. e ta e assignment cou e ater mo i e in t e ayout etup ia og. en, a porta wou e
create on t e ayout an t is porta wou e e ne to raw its recor s rom t e ta e tu ents. ote t atit is never necessary to speci y any o t e interme iate ta es. y speci ying a ta e in t e re ations ips grap ,
FileMaker Pro 8 can determine the set of relations between the starting table and the requested table to find
t e set o re ate recor s. n t is case, t e nro ment ta e is t e on y interme iate ta e in t e set o re ations
etween asses an tu ents. o comp ete t e creation o t is ayout, a set o e s rom asses i e t e c ass
name an a set o e s rom tu ents i e t e stu ent name wou e p ace on t e ayout as esire . n t is
same manner, we can create a ayout ase on t e tu ents ta e t at s ows t e set o c asses eac stu ent is ta ing
is examp e can e ta en urt er y a ing in a ta e or eac ers t at a so ene t rom a one-to-many
re ations ip. ac teac er can teac many c asses ut eac c ass as on y one teac er.
ow t is a ows us to mo i y our ayout ase on t e asses ta e to inc u e t e name o t e teac er
assigne to t is c ass y mere y p acing t e ame e rom t e eac ers ta e eac ers:: ame on t e ayout.
ince t e re ations ips grap speci es t e set o re ations etween asses w ic t e ayout is ase on anTeachers, FileMaker Pro 8 can perform the necessary operations to come up with the set of matching records.
eac ers:: ame is p ace irect y on t e ayout not in a porta , i e a er ro wi isp ay t e ata rom t e
rst matc ing re ate recor . e e eac ers:: ame cou a so e a e to t e tu ents ayout just as easi y
to ispay t e teac ers name or eac c ass t at t e stu ent is ta ing.
page 30
-
7/23/2019 Techbrief Fm8 Migrtn Found
32/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
ayout ase on tu ents isp aying porta to asses, inc u ing e rom eac ers
ow a a ta e o assignments an re ate t ese to t e asses ta e wit a one-to-many re ations ip.
ow we can create anot er ayout ase on t e tu ents ta e or mo i y t e existing one to s ow a t e
assignments or eac stu ent. ote t e comp exity o t is re ations ip etween tu ents an ssignments
ut t at it is not necessary to ea wit t is exp icit y once t e re ations ips grap is provi e . ust as in
t e previous examp es, we can create a porta o assignments in t e tu ents ayout an a e s rom
ssignments irect y. n t e previous i e a er ro re ationa mo e , we wou ave to create re ations in eac
tables file and create a lot of intermediate fields in each of the tables between Students and Assignments inor er to propagate t e ata a t e way over rom t e ssignments ta e. it a re ations ips grap , we can jus
re erence t e esire e irect y.
ontext or e s sp aye n a orta
owever, isp aying t e ass ames or eac o t e ssignments in t e same porta cannot e accomp is e
simp y y p acing t e ame e rom t e asses ta e in t e porta . ie vaues rom interme iate ta es
in t e grap are eva uate ase on t e ayouts ta e, not t e porta s ta e. t e c ass name is p ace in t e
porta , t en every row wi isp ay t e same vaue, t at is, t e va ue rom t e rst re ate c ass, w ic is not
w at is inten e .
page 31
-
7/23/2019 Techbrief Fm8 Migrtn Found
33/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
ayout ase on tu ents isp aying porta to ssignments, inc u ing e rom eac ers
ote t e incorrect va ue in a rows in t e ass ame an eac er ame co umns.
To display fields in a portal correctly, the field must be in the portals table or in a table eyondthe portals table
in the graph (beyond from the perspective of the layouts table). To display the class name that is related to
t e ssignment, it is necessary to create anot er ta e occurrence o t e asses ta e, an to re ate t at ta e
occurrence to t e ssignments ta e.
page 32
-
7/23/2019 Techbrief Fm8 Migrtn Found
34/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
ayout ase on tu ents isp aying porta to ssignments, inc u ing e rom eac ers
e o owing ru e is use to etermine w at recor an t us ta e to use as t e starting point or re erencing
e s in t e context o a porta :
If the first relationship in the path used to get from the portal records table to the fields table is the same as
t e one use to get to t e ayouts ta e, t e win ows current recor an t us t e ayouts ta e wi e use
as t e starting point or eva uating t at e s re erences. t erwise, t e porta rows recor an t us t e
porta s ta e wi e use to eva uate t at e s re erences.
not er way to say t is is t at t e pat to t e isp aye e must inc u e t e same u pat as t at to t e
portals table, or else only the first related value will be displayed.
ote t at t is issue oes not app y to ot er uses o t e grap , suc as isp aying in ivi ua reate e s not in
a porta , eva uating re ate e s in ca cu ations, or using re ate e s in a n request, since in t ose instances
t ere is on y one starting point an one en ing point one u pat t at is invo ve . t is an issue unique to
porta s ecause o t e a i ity to isp ay e s rom a ta e occurrence ot er t an t e one t at it represents.
ontext n t e rap
ow we want to trac eac stu ent s scores on eac o t e assignments. is is going to require anot er ta e
cores t at is going to i enti y ot t e assignment an t e stu ent y t eir respective s or eac score
va ue. is is w ere it gets a it more comp ex. we connect t e cores ta e to t e ssignments ta e ase
on the Assignment ID and we connect the Scores table to the Students table via the Student ID, were going tocreate a cyc e in t e grap .
cyc e cannot e a owe in a re ations ips grap since it wou mean t at t ere is more t an one pat
etween any two ta es in t e grap .
page 33
-
7/23/2019 Techbrief Fm8 Migrtn Found
35/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
or examp e, i t is grap were a owe it wou no onger e possi e to s ow t e set o stu ents enro e in
a c ass y mere y e ning a ayout to e ase on asses t e starting point an e ning a porta to e ase
on tu ents t e en point . ere wou e more t an one way to get rom t e starting point to t e en ing
point and, depending on the data and the relations between the tables, each path may result in a different set of
recor s.
ince t ere can e on y one pat etween any two ta es in t e grap , t e attempt to re ate one ta e to
anot er ta e more t an once must resu t in t e creation o anot er occurrence o t e ta e in t e grap .
page 34
-
7/23/2019 Techbrief Fm8 Migrtn Found
36/138
Upgrading to FileMaker 8: grat on oun at ons an et o o og es
n t is picture o t e grap , we ave ma e t e rea in t e cyc e at t e tu ents ta e so t at t ere are now
two occurrences of the Students table in the graph. There is still only one underlying Students table, but
t e tu ents ta e appears in t e grap more t an once an a ayout or ca cu ation can ma e use o eit er
occurrence y re erring to t at occurrence y name.
ere is no reason t at t e rea in t e cyc e cou not ave een ma e e sew ere in t e grap . t wou
e just as easy to ave t e cores ta e appear more t an once so t at one version was re ate to t e sing e
Students table occurrence and the other was related to the Assignments table. Other organiz