GoZync4

Integration

GoZync4.Integration History

Hide minor edits - Show changes to output

August 21, 2014, at 01:40 AM by 50.132.85.96 -
Added lines 80-85:

'''Closing files afters sync: important'''

While you were testing GoZync was leaving your hosted files open after each sync. That's convenient but your mobile users will only like that if they're syncing in areas of very high network availability: you'll likely want to close the files after each sync instead.

Open the "Finish Sync" script in GoZyncMobile and change the "1=0" you see towards the end of the script to "1=1" to make sure the files are closed after sync: then add the name of your hosted file in the "Close File" step so it's closed as well.
July 01, 2013, at 02:26 AM by 166.147.88.23 -
Changed lines 49-50 from:
->You may not have related tables they're not supported in the free version, for instance, or you may have a flat file. But visit the second tab to see if GoZync sees any related tables you need to configure. [[Integration2Of4 | Step 2]].
to:
-> Next you'll create the layouts which tell GoZync which of your fields to sync. [[Integration2Of4 | Step 2]].
Changed lines 57-58 from:
-> Connect your table occurrences to GoZync: [[Integration4Of4 | Step 4]].
to:
-> Connect your table occurrences to GoZync: [[Integration4Of4 | Step 4]]. (Or course, you may not have related tables they're not supported in the free version, for instance, or you may have a flat file.)
July 01, 2013, at 02:11 AM by 166.147.88.23 -
Changed lines 43-44 from:
!! Step 1 of 4: Starting the Integration: Wiring up the Relationships in GoZyncMobile.
to:
!! Step 1 of 4: Wiring up the Relationships in GoZyncMobile.
July 01, 2013, at 01:29 AM by 166.147.88.40 -
Changed lines 45-46 from:
-> You may be syncing lots of tables, and lots of different kinds of records, but you'll configure them one at a time. Choose the first table you'd like to work with and let's get started selecting the layout to sync and teaching GoZync about it here: [[Integration1Of4 | Step 1]].
to:
-> You may be syncing lots of tables, and lots of different kinds of records, but you'll configure them one at a time. Choose the first table you'd like to work with and let's get started linking it to GoZync here: [[Integration1Of4 | Step 1]].
July 01, 2013, at 01:26 AM by 166.147.88.40 -
Changed lines 43-44 from:
-> !! Step 1 of 4: Starting the Integration: Wiring up the Relationships in GoZyncMobile.
to:
!! Step 1 of 4: Starting the Integration: Wiring up the Relationships in GoZyncMobile.
July 01, 2013, at 01:25 AM by 166.147.88.40 -
Changed lines 43-44 from:
!! 1 of 4: Starting the Integration: Wiring up the Relationships in GoZyncMobile.
to:
-> !! Step 1 of 4: Starting the Integration: Wiring up the Relationships in GoZyncMobile.
Changed lines 47-48 from:
!! 2 of 4: Adding a "Sync Layout" for Each Table Occurrence
to:
!! Step 2 of 4: Adding a "Sync Layout" for Each Table Occurrence
Changed lines 51-52 from:
!! 3 of 4: Pasting in the Required Fields and Scripts
to:
!! Step 3 of 4: Pasting in the Required Fields and Scripts
Changed lines 55-56 from:
!! 4 of 4: Teaching GoZync About your Relationships
to:
!! Step 4 of 4: Teaching GoZync About your Relationships
July 01, 2013, at 01:24 AM by 166.147.88.40 -
Changed lines 43-59 from:

!! 1 of 4: Starting the Integration: the Main Layout to Sync

->
You may be syncing lots of tables, and lots of different kinds of records, but you'll configure them one at a time. Choose the first table you'd like to work with and let's get started selecting the layout to sync and teaching GoZync about it [[Integration1Of4 | here]].

!! 2 of 4: Related Tables

->You may not have related tables they're
not supported in the free version, for instance, or you may have a flat file. But visit the second tab to see if GoZync sees any related tables you need to configure. [[Integration2Of4 | Tab 2]].

!! 3 of 4: Pasting in Fields and Scripts

-> You'll have to add a couple of things
to your files: [[Integration3Of4 | Tab 3 of 4]].

!! 4 of 4: Wiring up the relationship graph in the
GoZync files

-> Connect
your table occurrences to GoZync: [[Integration4Of4 | Tab 4]].
to:
!! 1 of 4: Starting the Integration: Wiring up the Relationships in GoZyncMobile.

->
You may be syncing lots of tables, and lots of different kinds of records, but you'll configure them one at a time. Choose the first table you'd like to work with and let's get started selecting the layout to sync and teaching GoZync about it here: [[Integration1Of4 | Step 1]].

!! 2 of 4: Adding a "Sync Layout" for Each Table Occurrence

->You may
not have related tables they're not supported in the free version, for instance, or you may have a flat file. But visit the second tab to see if GoZync sees any related tables you need to configure. [[Integration2Of4 | Step 2]].

!! 3 of 4: Pasting in the Required Fields and Scripts

-> You'll have
to add a couple of things to your files: [[Integration3Of4 | Step 3 of 4]].

!! 4 of 4: Teaching
GoZync About your Relationships

-> Connect your table occurrences to GoZync: [[Integration4Of4 | Step
4]].
Changed lines 79-80 from:
Copy the "GoZync" scripts from our example file and past them into your mobile file. Copy the "gz" table and [[required tables | add that table]] to your file as well. Details here: [[adding scripts to your file]]. Then copy and paste the sync buttons from our example files to yours. Modify the script parameter as needed. Learn more about these scripts and the parameters they accept here: [[Zync It]].
to:
Copy and paste the sync buttons from our example files to yours. Modify the script parameter as needed. Learn more about these scripts and the parameters they accept here: [[Zync It]].
July 01, 2013, at 01:20 AM by 166.147.88.40 -
Changed lines 66-69 from:
-> '''Field mapping.''' If your host and mobile tables have different field names, you'll want to select the layout again from the dashboard, proceed to the integration, and click on the Field Mapping tab (the 5th of 4 tabs). =)

->
Look here for more details on setting up [[Custom Field Mapping]].
to:
-> '''Field mapping.''' If your host and mobile tables have different field names, you'll want to edit the [[custom field mapping]] script in GoZyncMobile. Look here for more details on setting up [[Custom Field Mapping]].
Changed lines 70-71 from:
-> '''Zync options.''' Before you run a Zync, set up the [[Zync Options]] for the layout you just integrated.
to:
-> '''Zync options.''' Before you run a Zync, set up the [[Zync Options]] for the layout you just integrated. 
July 01, 2013, at 01:18 AM by 166.147.88.40 -
Changed lines 82-83 from:
Copy and paste the sync buttons from our example files to yours. Modify the script parameter as needed. Learn more about these scripts and the parameters they accept here: [[Zync It]].
to:
Copy the "GoZync" scripts from our example file and past them into your mobile file. Copy the "gz" table and [[required tables | add that table]] to your file as well. Details here: [[adding scripts to your file]]. Then copy and paste the sync buttons from our example files to yours. Modify the script parameter as needed. Learn more about these scripts and the parameters they accept here: [[Zync It]].
Changed lines 86-87 from:
Once you're done with your mobile file or done for now learn about how GoZync can help with [[distributing mobile files]].
to:
Once you're done with your mobile file or done for now learn about how GoZync can help with [[distributing mobile files]]. 
July 01, 2013, at 01:15 AM by 166.147.88.40 -
Deleted lines 30-31:
-> None of the fields in tables you zync can have "strange" characters in the field names. In particular #, , ~ and ! in field, table, or file names will break GoZync, so change those before you get started.
April 03, 2013, at 02:50 AM by 98.245.113.231 -
Changed lines 19-20 from:
-> '''''' And GoZyncHosted and GoZyncLicense need to be in the same folder as each other. this is how GoZync ships, with files beside each other in their "Local" and "Hosts" folders.
to:
-> '''''' And GoZyncHosted and GoZyncLicense need to be in the same folder as each other. this is how GoZync ships, with files beside each other in their "Local" and "Host" folders.
January 07, 2013, at 09:19 PM by 50.132.84.245 -
Changed lines 31-32 from:
-> None of the fields in tables you zync can have "strange" characters in the field names. In particular #, , ~ and ! in field names will break GoZync, so change those before you get started.
to:
-> None of the fields in tables you zync can have "strange" characters in the field names. In particular #, , ~ and ! in field, table, or file names will break GoZync, so change those before you get started.
Changed lines 3-4 from:
Before you add GoZync to your solution, we strongly recommend you play with our sample files and do at least one real "zync" of data before you get to work. If at all possible, do this on your iPad/iPhone and FileMaker Server/Host so you can see how this will work when you're done. This will also ensure you can ''see'' your server / host from your mobile device: something you'll want to know before you needlessly tear into some scripts wondering what's wrong.
to:
Before you add GoZync to your solution, we strongly recommend you play with our sample files and do at least one real "Zync" of data before you get to work. If at all possible, do this on your iPad/iPhone and FileMaker Server/Host so you can see how this will work when you're done. This will also ensure you can ''see'' your server / host from your mobile device: something you'll want to know before you needlessly tear into some scripts wondering what's wrong.
December 10, 2012, at 03:06 AM by cm - editing and clarifying
Changed lines 3-4 from:
Before you add GoZync to your solution we strongly recommend you play with our sample files and do at least one real "zync" of data before you get to work. If at all possible, do this on your iPad/iPhone and FileMaker Server/Host so you can see how this will work when you're done. This will also ensure you can ''see'' your server / host from your mobile device: something you'll want to know before you needlessly tear into some scripts wondering what's wrong.
to:
Before you add GoZync to your solution, we strongly recommend you play with our sample files and do at least one real "zync" of data before you get to work. If at all possible, do this on your iPad/iPhone and FileMaker Server/Host so you can see how this will work when you're done. This will also ensure you can ''see'' your server / host from your mobile device: something you'll want to know before you needlessly tear into some scripts wondering what's wrong.
Changed lines 11-14 from:
While you'll eventually put your hosted files on your host or server--and the local files on your iPad, iPhone, or laptop--you can do the integration either all on your server, all on your desktop or with some files served and some local.

There are only a couple things that have to be true about your setup:
to:
While you'll eventually put your hosted files on your host or server and the local files on your iPad, iPhone, or laptop you can do the integration either all on your server, all on your desktop, or with some files served and some local.

There are only a few things that have to be true about your setup:
Changed lines 23-24 from:
To get started with the integration, place the files where you want to work with them and open them all: you'll need the three GoZync files open and have both your hosted and mobile file open.
to:
To get started with the integration, place the files where you want to work with them and open them all. You'll need the three GoZync files open and have both your hosted and mobile file open.
Changed lines 33-36 from:
-> FileMaker can't tell the difference between a layout folder and a layout. So if you want to sync a layout of yours called "Contacts" and it's in a layout folder called "Contacts" things will break: change your folder name to something like "Contacts Folder" before you get started.

-> And while FileMaker will let you have more than one layout with the same name, GoZync won't, so rename any duplicate layout names you have that may be zynced.
to:
-> FileMaker can't tell the difference between a layout folder and a layout. So if you want to sync a layout of yours called "Contacts" and it's in a layout folder called "Contacts," things will break. Please change your folder name to something like "Contacts Folder" before you get started.

-> And while FileMaker will let you have more than one layout with the same name, GoZync won't, so rename any duplicate layout names you have that may be Zynced.
Changed lines 43-45 from:
-> Seriously. If you're doing all this on the server, download one of your server's backups and verify that you can open it without issue. If you're working locally, save a compacted copy of all the files you'll be working with, zip them, and tuck that under your pillow.

to:
-> This is not a drill. If you're doing all this on the server, download one of your server's backups and verify that you can open it without issue. If you're working locally, save a compacted copy of all the files you'll be working with, zip them, and tuck that under your pillow.

Changed lines 48-49 from:
-> You may be syncing lots of tables, and lots of different kinds of records, but you'll configure them one at a time. Pick the first table you'd like to work with and let's get started selecting the layout to sync and teaching GoZync about it [[Integration1Of4 | here]].
to:
-> You may be syncing lots of tables, and lots of different kinds of records, but you'll configure them one at a time. Choose the first table you'd like to work with and let's get started selecting the layout to sync and teaching GoZync about it [[Integration1Of4 | here]].
Changed lines 52-53 from:
->You ay not have related tables--they're not supported in the free version, for instance, or you may have a flat file, but visit the second tab to see if GoZync sees any related tables you need to configure. [[Integration2Of4 | Tab 2]].
to:
->You may not have related tables they're not supported in the free version, for instance, or you may have a flat file. But visit the second tab to see if GoZync sees any related tables you need to configure. [[Integration2Of4 | Tab 2]].
Changed lines 84-85 from:
Copy and paste the sync buttons from our example files to yours. Modifying the script parameter as needed. Learn more about these scripts and the parameters they accept here: [[Zync It]].
to:
Copy and paste the sync buttons from our example files to yours. Modify the script parameter as needed. Learn more about these scripts and the parameters they accept here: [[Zync It]].
Changed lines 88-89 from:
Once you're done with your mobile file--or done for now--learn about how GoZync can help with [[distributing mobile files]].
to:
Once you're done with your mobile file or done for now  learn about how GoZync can help with [[distributing mobile files]].
Changed line 92 from:
If your mobile file has related records (like an invoice has line items) then you need to make an extra change to your file to ensure that if only a line item is modified, gozync still sees the parent record as modified and thus ready to sync. More here: [[triggering syncs]]
to:
If your mobile file has related records (like an invoice has line items), then you need to make an extra change to your file to ensure that if only a line item is modified, GoZync still sees the parent record as modified and thus ready to Zync. More here: [[triggering syncs]]
November 27, 2012, at 07:36 PM by 50.132.84.245 -
Changed lines 31-32 from:
-> None of the fields in tables you zync can have "strange" characters in the field names. In particular #, and ! in field names will break GoZync, so change those before you get started.
to:
-> None of the fields in tables you zync can have "strange" characters in the field names. In particular #, , ~ and ! in field names will break GoZync, so change those before you get started.
November 11, 2012, at 07:12 PM by 50.132.84.245 -
Changed lines 62-63 from:
! Wrapping Up
to:
! Wrapping Up[[#WrappingUp]]
November 11, 2012, at 03:49 PM by 50.132.84.245 -
November 11, 2012, at 03:48 PM by 50.132.84.245 -
Changed lines 15-20 from:
-> '''''' Your mobile file has to be "next to" (in the same folder as GoZyncMobile).

-> '''''' Your hosted file needs to be "next to" (in the same folder as GoZyncHosted).

-> '''''' And GoZyncHosted and GoZyncLicense need to be in the same folder as each other.
to:
-> '''''' Your mobile file has to be "next to" (in the same folder as) GoZyncMobile.

-> '''''' Your hosted file needs to be "next to" (in the same folder as) GoZyncHosted.

-> '''''' And GoZyncHosted and GoZyncLicense need to be in the same folder as each other. this is how GoZync ships, with files beside each other in their "Local" and "Hosts" folders.
Changed lines 29-32 from:
As part of this integration you'll be pointing GoZync at some layouts in your solution, and creating some new layouts in the GoZync files. Here are a couple things to keep in mind, and possibly to change before you begin the integration:

-> None of the fields in tables you zync can have "strange" characters in the field names. In particular # and ! in field names will break GoZync so change those before you get started.
to:
As part of this integration you'll be pointing GoZync at some layouts in your solution, and creating some new layouts in the GoZync files. Here are a couple things to keep in mind, and possibly to change before you go any further:

-> None of the fields in tables you zync can have "strange" characters in the field names. In particular #, and ! in field names will break GoZync, so change those before you get started.
Changed lines 48-49 from:
-> Select the layout to sync and teach GoZync about it [[Integration1Of4 | here]].
to:
-> You may be syncing lots of tables, and lots of different kinds of records, but you'll configure them one at a time. Pick the first table you'd like to work with and let's get started selecting the layout to sync and teaching GoZync about it [[Integration1Of4 | here]].
August 08, 2012, at 03:34 PM by 50.132.84.245 -
Added lines 27-36:
!! Field and Layout Names.

As part of this integration you'll be pointing GoZync at some layouts in your solution, and creating some new layouts in the GoZync files. Here are a couple things to keep in mind, and possibly to change before you begin the integration:

-> None of the fields in tables you zync can have "strange" characters in the field names. In particular # and ! in field names will break GoZync so change those before you get started.

-> FileMaker can't tell the difference between a layout folder and a layout. So if you want to sync a layout of yours called "Contacts" and it's in a layout folder called "Contacts" things will break: change your folder name to something like "Contacts Folder" before you get started.

-> And while FileMaker will let you have more than one layout with the same name, GoZync won't, so rename any duplicate layout names you have that may be zynced.

July 13, 2012, at 03:43 PM by 50.132.84.245 -
July 13, 2012, at 03:43 PM by 50.132.84.245 -
Changed lines 7-8 from:
Step by step instructions for uploading and playing with the sample files can be found here [[Getting Started]] and here [[Hosting the Demo]].
to:
Step by step instructions for uploading and playing with the sample files can be found here [[Getting Started]].
July 13, 2012, at 03:42 PM by 50.132.84.245 -
Changed lines 78-82 from:
Once you're done with your mobile file--or done for now--learn about how GoZync can help with [[distributing mobile files]].
to:
Once you're done with your mobile file--or done for now--learn about how GoZync can help with [[distributing mobile files]].

'''Triggering Syncs from Related Records in your mobile file.'''

If your mobile file has related records (like an invoice has line items) then you need to make an extra change to your file to ensure that if only a line item is modified, gozync still sees the parent record as modified and thus ready to sync. More here: [[triggering syncs]]
July 13, 2012, at 04:59 AM by 50.132.84.245 -
July 10, 2012, at 02:59 PM by 50.132.84.245 -
Changed lines 36-39 from:
!! 1 of 4: Main Layout

-> Describe your file and layout
[[Integration1Of4 | here]].
to:
!! 1 of 4: Starting the Integration: the Main Layout to Sync

-> Select the layout to sync and teach GoZync about it
[[Integration1Of4 | here]].
July 10, 2012, at 02:30 PM by 50.132.84.245 -
Changed lines 35-46 from:
'''2. Add a layout record to GoZync Hosted.'''

-> Open GoZyncHosted (which we'll start calling GZH) and navigate to the dashboard. Click "Add a new layout". You'll arrive at the integration tab with the file, layout, and table occurrence all saying unknown.

%center% http://www.seedcode.com/rootimages/stikipad/gozync/unknown.png

-> Over the next few screens you'll tell GoZync which file and layouts to sync.

'''3. Fill out the 4 integration tabs.'''

-> Click "Proceed to integration" to get started.

to:
July 08, 2012, at 02:45 PM by 50.132.84.245 -
Changed lines 85-86 from:
Copy and paste the sync buttons from our example files to yours. Modifying the script parameter as needed.
to:
Copy and paste the sync buttons from our example files to yours. Modifying the script parameter as needed. Learn more about these scripts and the parameters they accept here: [[Zync It]].
July 07, 2012, at 10:00 PM by 50.132.84.245 -
Changed lines 81-82 from:
!! Adding an Interface
to:
!! Now that the sync is working..
Changed lines 87-90 from:
!! Uploading your file for distribution.

'''Getting the files to your users
.'''
to:
'''Getting the files to your users: uploading your file for distribution.'''
July 07, 2012, at 09:59 PM by 50.132.84.245 -
Changed lines 81-84 from:
!! UI

!! Workflow

to:
!! Adding an Interface

'''Add the zync buttons from our example file to your mobile file.'''

Copy and paste the sync buttons from our example files to yours. Modifying the script parameter as needed.

Added lines 88-91:

'''Getting the files to your users.'''

Once you're done with your mobile file--or done for now--learn about how GoZync can help with [[distributing mobile files]].
July 07, 2012, at 09:38 PM by 50.132.84.245 -
Changed lines 15-19 from:
-> Your mobile file has to be "next to" (in the same folder as GoZyncMobile).
-> Your hosted file needs to be "next to" (in the same folder as GoZyncHosted).
-> And GoZyncHosted and GoZyncLicense need to be in the same folder as each other.
-> You can [[ExternalDataSources#renaming | rename]] some of the files if you need to.
to:
-> '''''' Your mobile file has to be "next to" (in the same folder as GoZyncMobile).

-> '''''' Your hosted file needs to be "next to" (in the same folder as GoZyncHosted).

-> '''''' And GoZyncHosted and GoZyncLicense need to be in the same folder as each other.

-> '''''' You can [[ExternalDataSources#renaming | rename]] some of the files if you need to.
July 07, 2012, at 09:34 PM by 50.132.84.245 -
Changed lines 62-68 from:
Other tables

Field Mapping

Zync Options

Testing your first zync
to:
!! You've finished integrating one layout, what's next?

Just a few more things to check out before you can test your sync....

-> '''Field mapping.''' If your host and mobile tables have different field names, you'll want to select the layout again from the dashboard, proceed to the integration, and click on the Field Mapping tab (the 5th of 4 tabs). =)

-> Look here for more details on setting up [[Custom Field Mapping]].

-> '''Other tables.''' You may have other layouts and table occurrences you want to sync. You can set those up now, but it might be nice to see a sync run before you dive back into these integration instructions for a new table.

-> '''Zync options.''' Before you run a Zync, set up the [[Zync Options]] for the layout you just integrated.

-> '''Testing your first zync.''' That's it... time to play. [[FirstZync | Here's how]].

! Going Further

!! UI

!! Workflow

!! Uploading your file for distribution.
July 07, 2012, at 09:18 PM by 50.132.84.245 -
Changed lines 60-68 from:
to:
! Wrapping Up

Other tables

Field Mapping

Zync Options

Testing your first zync
July 07, 2012, at 09:18 PM by 50.132.84.245 -
Added lines 59-60:

July 07, 2012, at 05:38 PM by 50.132.84.245 -
Changed lines 44-45 from:
!! -> 1 of 4: Main Layout
to:
!! 1 of 4: Main Layout
July 07, 2012, at 05:38 PM by 50.132.84.245 -
Changed lines 44-45 from:
-> !! 1 of 4: Main Layout
to:
!! -> 1 of 4: Main Layout
July 07, 2012, at 05:38 PM by 50.132.84.245 -
Changed lines 38-41 from:
Over the next few screens you'll tell GoZync which file and layouts to sync. Click "Proceed to integration" to get started.

!!
1 of 4: Main Layout
to:
-> Over the next few screens you'll tell GoZync which file and layouts to sync.

'''3. Fill out the 4
integration tabs.'''

-> Click "Proceed to integration" to get started.

->
!! 1 of 4: Main Layout
July 07, 2012, at 05:37 PM by 50.132.84.245 -
Changed lines 18-19 from:
-> You can [[renaming files | rename]] some of the files if you need to.
to:
-> You can [[ExternalDataSources#renaming | rename]] some of the files if you need to.
Changed lines 22-23 from:
If you don't have a mobile file yet, take a minute to make a copy of your hosted file and rename it to something like "MyFileMobile"; that will be your new mobile file. You can refine it later, removing scripts tables and layouts that your mobile users don't need.
to:
If you don't have a mobile file yet, take a minute to make a copy of your hosted file and rename it to something like "MyFileMobile"; that will be your new mobile file. You can refine it later, removing scripts, tables, and layouts that your mobile users don't need.
Changed lines 30-31 from:
-> Seriously. If you're doing all this on the server, download one of your server's backups and verify that you can open it without issue. If you're working locally, save a compacted copy of all the files you'll be working with.
to:
-> Seriously. If you're doing all this on the server, download one of your server's backups and verify that you can open it without issue. If you're working locally, save a compacted copy of all the files you'll be working with, zip them, and tuck that under your pillow.
Changed lines 46-54 from:
->You ay not have related tables--they're not supported in the free version, for instance, or you may have a flat file, but visit the second tab to see if GoZync sees any related tables you need to configure. [[Integration2Of4 | Tab 2]].
to:
->You ay not have related tables--they're not supported in the free version, for instance, or you may have a flat file, but visit the second tab to see if GoZync sees any related tables you need to configure. [[Integration2Of4 | Tab 2]].

!! 3 of 4: Pasting in Fields and Scripts

-> You'll have to add a couple of things to your files: [[Integration3Of4 | Tab 3 of 4]].

!! 4 of 4: Wiring up the relationship graph in the GoZync files

-> Connect your table occurrences to GoZync: [[Integration4Of4 | Tab 4
]].
July 07, 2012, at 05:32 PM by 50.132.84.245 -
July 07, 2012, at 05:32 PM by 50.132.84.245 -
Changed lines 3-4 from:
Before you add GoZync to your solution we strongly recommend you play with our sample files and see a real "zync" of data before you get to work. If at all possible do this on your iPad and FileMaker Server / Host so you can see how this will work when you're done. This will also ensure you can ''see'' your server / host from your iPad. Something you'll want to know before you needlessly tear into some scripts.
to:
Before you add GoZync to your solution we strongly recommend you play with our sample files and do at least one real "zync" of data before you get to work. If at all possible, do this on your iPad/iPhone and FileMaker Server/Host so you can see how this will work when you're done. This will also ensure you can ''see'' your server / host from your mobile device: something you'll want to know before you needlessly tear into some scripts wondering what's wrong. 

(Not that we've ever done that.) =)

Changed lines 18-19 from:
to:
-> You can [[renaming files | rename]] some of the files if you need to.
July 05, 2012, at 09:49 PM by 50.132.84.245 -
Changed lines 41-43 from:
!! 2 of 4: Layout Information

-> Describe your file and layout [[Integration1Of4 | here]].
to:
!! 2 of 4: Related Tables

->You ay not have related tables--they're not supported in the free version, for instance, or you may have a flat file, but visit the second tab to see if GoZync sees any related tables you need to configure. [[Integration2Of4 | Tab 2]].
July 05, 2012, at 09:41 PM by 50.132.84.245 -
Changed lines 37-39 from:
!! 1 of 4: Layout Information

'''1. Back Up Your Files
.'''
to:
!! 1 of 4: Main Layout

-> Describe your file and layout [[Integration1Of4 | here]]
.

!! 2 of 4: Layout Information

-> Describe your file and layout [[Integration1Of4 | here]].
July 05, 2012, at 09:40 PM by 50.132.84.245 -
Changed lines 33-34 from:
http://www.seedcode.com/rootimages/stikipad/gozync/unknown.png
to:
%center% http://www.seedcode.com/rootimages/stikipad/gozync/unknown.png
Changed lines 37-325 from:
'''2. File References.'''

-> Add a file reference for your solution to GoZyncConnector.

-> if you're working locally, make sure your solution and GoZyncConnector are in the same place relative to each other as they'll be on the server. (Once you're ''all'' done you can delete references for the sample Invoice file that ships with GoZync if you won't be using it: elect to remove its occurrences from the graph as well.)

-> From FileMaker's menus, select File / Manage / External Data Sources... and click "New" to create a reference for your served file.

'''3. Edit the Relationship Graph.'''

-> In the Relationships tab of Manage Database, find "GoZync" in the section "Packing and UnPacking...". Create one table occurrence here for each table you'll be working with in GoZyn: this includes tables you're pulling down to your mobile file, and tables for which you're getting data from mobile. Preface the table occurrence name of each with "GoZync" as we did with the name "GoZyncInvoices"

-> Next make a relationship between each of these table occurrences and GoZync, connecting "PrimaryIDGLOB" in GoZync with the primary key field in each of your tables. If your tables don't have a primary key field, make one. =)

->Make sure the right hand side of this relationship (your table's side) has "Allow creation of records in this table.." turned ON as shown below:

%newwin center% %width=350px%  [[http://www.seedcode.com/rootimages/stikipad/gozync/invoicesrelationship.png | http://www.seedcode.com/rootimages/stikipad/gozync/invoicesrelationship.png]]

-> Repeat this with each table you want to add or edit records for in you file, prefacing each table occurrence with "GoZync".

-> Revisit each relationship and, in each case, make sure the right hand side of the relationship uses the primary key for that table (it's unique ID). When you're done, this section of the graph should look something like this (using our Invoices sample file as an example):

%center newwin% %width=400px% [[http://www.seedcode.com/rootimages/stikipad/gozync/connectorgraph.jpg |  http://www.seedcode.com/rootimages/stikipad/gozync/connectorgraph.jpg]]

'''4. Edit Scripts. Field Mapping'''

-> Find the "Field Mapping..." folder inside the script folders named "GoZync Connections... / Parsing Data Into Host / Table Mapping" and edit the first script, named "Set InvoiceLines Fields".

-> Edit each SetField statement in this script to that it is setting the correct field in your invoices lines table, following the comments in this script for guidance. You can also look  [[field mapping | here]] for more tips on field mapping.

-> If you've left our mobile file alone, you'll already have one SetField step for each field coming from our mobile file. But if you've added field to our mobile file, or if you're using your own, you'll want to refer to the '''"dictionary"''' of the fields available to be mapped. Learn how to generate a [[data dictionary]] to help you out here:  [[FieldMapping | Field Mapping Tips]].

-> Be sure to edit the Perform Script step in the section "Cleaning Up...", replacing the field used at the end of the script parameter, with your invoice lines ID field (or the primary key / unique id of the table you're working in).

-> If you're using your own Mobile file, these scripts may not have anything do do with invoices any more. That is fine: rename the scripts so the make sense for you, deleting the scripts you don't need, and duplicating the ones here to create one "Set XXXX Fields" script for each table you receive from your mobile file.

'''5. Edit Scripts. Field Mapping Contd.'''

-> Continue editing each of the field mapping scripts, deleting those you don't need and creating new ones for additional tables you may have.

-> When you get to the script "Set Invoice Fields" you'll see a new section in this script for [[splitting records]]: we do this when we have a record (like the invoice in our sample Mobile file) that really has two records in it: our invoice contains information that properly belongs in the customer's record. So you'll see that we leave the invoice "Set Invoice Fields" script to go make the customer's record and then return.

-> If your hosted file contains a separate customer (or contacts) table, you may want to do what we're doing as well and create/edit a customer record from the invoice. If not, you can create additional Set Field steps to add the customer information to the invoice itself: feel free to copy the SetField steps and Log Error script steps from the scrip "Set Customer Fields" as these are already mapped to the fields coming from your mobile file.

-> Again, continue editing each of the field mapping scripts, deleting those you don't need and creating new ones for additional tables you may have. Refer here for [[FieldMapping | Field Mapping Tips]].

'''6. Edit Scripts Part 2: Table Mapping.'''

-> Note that if you didn't create or delete any "Set XXXX Fields" scripts in steps 4 and 5 above you can leave this section alone: this is where we tell GoZync which of your "Set XXXX Fields" scripts to run. But if you simply edited the 4 scripts that come with GoZync, our "Table Map" script already knows about them.

-> The last script you have to edit is inside the folder "Table Mapping". Edit the script "Table Map" adding a "branch" for each table that has one of the "Set XXXX Fields" script steps you were just editing.

--> ''A "branch" is an IF or Else IF statement that forks this script into calling the correct Set Field script for the kind of data being worked with.''

-> Follow the instructions within this "Table Branches" script's comments for details on how to change it.

'''7. Getting data down to Mobile: Layouts.'''

-> Here is where we'll tell GoZync which fields from your hosted file should be packaged into [[the document]] we sent to your mobile files. (If your mobile is only making records and doesn't need anything from the host, you can skip this section.)

-> This packaging is done on a "Products Field Mapping" layout in the layout folder "Outbox" (get it? records on their way out), though you can now rename that to something more relevant, like "Contacts".

-> There are two things you need to change on this layout: the tabs, and the fields.

--> '''Tabs.'''

--> GoZyncConnector comes with a single tab for the products table. A single tab is all you need if you're sending flat records to mobile. But if you need to send something related (like a contact and their phone numbers) you need one tab for each table in the entity: in this example the "entity" is a contact and it has two tables: contacts and phones. Read section '''4''' in the Mobile File half of this article for more on tabs.

--> '''Fields.'''

--> Now double click on the fields on each tab and point these to the fields you'd like included in this document when we sent it to your hosted files. Here are a few tips:

--> The first field (in tab order) on each tab should be the primary key of the table. The first 4 fields show up in the InBox of GoZyncConnector and should be used to identify the record (things like the contact's name, for example). Aside from that, field order doesn't matter.

--> If you include related data on one of your tabs, you'll want to include that in a portal as we do in our example mobile file's Invoice Field Mapping layout. on the Invoice Lines tab.

--> GoZync doesn't use the field labels so do what you'd like with those.

--> When you're done, enter browse mode and click "Validate & Export..." to create a [[data dictionary]] for this layout. This document contains customized instructions based on the fields and portals you've added to your layout: you'll refer to this when you'e editing scripts in your mobile to teach mobile how to unpack your document into new or modified records.

'''8. Getting data down to Mobile: Scripts.'''

-> There are two scripts to edit in GoZyncConnector to get your data down to your mobile file. Begin by editing the script "Package Up Products." You'll have one of these scripts for each entity you wish to send to your mobile file. Rename and edit "Package Up Products," following the script comments for guidance, then duplicate this for each entity you're sending to mobile.

-> Next edit the script "Get Records From Host ( RecordType )" following the comments in that script for instructions on how to create a "branch" in the script for each record type you're processing.

'''9. Test It.'''

-> If you already have a document in the InBox of GoZyncConnector you can now send it to your hosted file. (If the document has already been processed, select it anyway and hold down the shift key when you click "Process Selected Items".) If you don't have anything in your InBox, head over to your mobile file, create a new record, and upload it. Remember, you can do this in Pro so you don't have to use FMGo to test your field mappings.

-> Take a look at the record you've created in your file and see if the data ended up in the right place. Often you'll want to make some changes to where the data is being set, so edit your "Set XXXX Fields" scripts, re-processing your test records until the data is ending up where you like.

-> That's it.

! In the Local / Mobile File

!! Background

Many people will modify our example files in order to get started with GoZync though some folks will want to add Zync to mobile files they already have. This section talks about how to do that: if you're just modifying one of our example files, you won't need to add the GoZync tables and scripts, etc but can jump right in at step 8 where we teach the file how to translate the records your created in your mobile file into (the [[TheDocument | documents]]) we'll send to your served solution.

Note that in our demo, you can't teach GoZync about your own solution, but you can test the demo on your own server and your iPads. More here: [[Hosting the Demo]]

!! The Work

'''1. Back Up Your Files.'''

-> Seriously. And you'll probably want to pull everything off the server and do this work locally as importing scripts from local files into hosted files is a good way to mess up your database.

-> You'll also be copying things from our Mobile example file, so make sure you have a nice clean copy of that file. Now place the file you're working with (what will become your new mobile file) in the Local folder of GoZync on your desktop, beside Mobile.fp7.

'''2. Add a Custom Function.'''

-> Our mobile example file contains one custom function you'll want to add to your mobile file. Select Manage / Custom Functions from FileMaker's File menu and copy the function "zyncVariable". Select the same menus in your mobile file and past the function in: you don't have to modify it at all.

-> Note that moving custom functions requires FileMaker Advanced. If you don't have a copy of Advanced you'll have trouble with a number of steps that follow as well. Please %newwin% [[http://www.seedcode.com/cp-app/contact/1 | get in touch]] and we'll get you a quote for moving all of this into your mobile file.

'''3. Import Tables.'''

-> Copy the tables "GoZync" and "Interface" from our mobile file and paste them into yours. If you already have a table named "Interface" please rename yours before pasting ours in. If you already have a table named GoZync, well then you must be Todd Geist ;-)

-> When you pasted in those tables a blank layout was created for each one. Visit each of these and import the data from the same table in our sample mobile file. (Or do all this in one step by importing these two table from our sample mobile file into yours.)

'''3.1 Relationship Graph.'''

-> Create a Table Occurrence for each local table you want to send up to your hosted file, prefacing each table occurrence with "GoZync" similar to the example mobile file e.g. GoZyncInvoices, GoZyncInvoiceLines, etc. Wire these together only as much as the natural relationships between them warrants. For example, we connect GoZyncInvoices to GoZyncInvoice lines in our example file. Where the actual relationships in the lower half of the graph are a little more complicated. This "GoZync" graph should be nice and simple.

-> Make sure '''all''' these relationships between your tables have Allow Creation of Related Records turned "on" for the child side of the relationship: in our example this is on the GoZyncInvoiceLines side and the GoZyncInvoicePhotos side. (We don't use this to create records, but we need this on so we can "walk" into these portals and grab their field names.)

-> Create a relationship between your recently created GoZync table in your mobile file and each new table occurrence. The left hand side of your relationship should be GoZync::PrimaryIDGLOB and the right hand side YourNewTableOccurrence::PrimaryID as shown in the highlighted table occurrences here:

%center% http://www.seedcode.com/screenshots/gozync/graph1.png

-> Ensure Allow Creation of Records in this table via this relationship is checked on the right hand side of the relationship (the your table's side).

-> Note that if you were modifying our mobile file, you'd double click on the Table Occurrences in the section "Packing and UnPacking" which are related to GoZync. For example,double click on "GoZyncInvoice" and now click where it says "data source" and select the any other table in your mobile file which you'd like to Zync, pasting the prefix "GoZync" back in there in front of your table name before you click OK. Next double click on the line between GoZyncInvoice and GoZync, make sure the right hand side of this relationship (the GoZyncInvoice side) uses the primary key (probably the invoice ID) from your table.

%newwin center% %width=350px%  [[http://www.seedcode.com/rootimages/stikipad/gozync/invoicesrelationship.png | http://www.seedcode.com/rootimages/stikipad/gozync/invoicesrelationship.png]]

-> Repeat this for each table you want to send to (or get from) your hosted file, prefacing each table occurrence with "GoZync".

-> Revisit each relationship and, in each case, make sure the right hand side of the relationship uses the primary key for that table (it's unique ID).

'''3.2 One More Relationship.'''

-> Add one more Table Occurrence to your graph; from the file GoZyncConnector.fp7, add an instance of Inbox named "GoZyncInbox". To do this you'll make a new External Data source for
GoZyncConnector: from FileMaker's File menus select Manage / External Data Sources... 

-> While you're at it, make a reference GoZync.fp7 as well. Name that reference "GoZync" and name the other "GoZyncConnector". Use these names even if you plan to rename these files later.

-> Now return to the relationship graph create a relationship between GoZyncInbox and GoZync in your mobile file where GoZync::NewDocumentID in the new mobile file and GoZyncInbox::InboxID.

-> This relationship must have Allow Creation of Records turned on for the GoZyncInbox side of the relationship.

'''4. Layouts Part 1: blank layouts.'''

-> Return to the two layouts created above. Leave the one named Interface alone, and head over to the one named GoZync. Name this layout "New File Prep", delete everything on it, and then duplicate it; name this newly created one "GoZync Packing-UnPacking" (make sure you get the name exactly right). Now duplicate this one and name the new one "Transition".

-> Duplicate the transition layout and name it "Progress".

-> Now create one new blank layout called "Invoice Field Mapping" and base it on the table occurrence for the main entity you're sending up to your hosted solution. This is the occurrence created in 3.1 and it's name begins GoZync. For example, if you were sending contacts up, you'd base this layout on your GoZyncContacts table occurrence created in 3.1 above. You can have many of these field mapping layouts, but focus on one entity for now to get this working. Then you can come back here and add additional field mapping layouts.

-> We'll change the name of that layout on step 7 below. And don't put anything on these layouts yet: we'll come back to that in step 7 as well.

-> Back up your mobile file now that you've gotten all this done, and feel free to back it up frequently, never deleting a previous backup, as you move through the steps below.

'''5. Fields'''

-> Copy two fields form the Invoices table of our mobile sample file...

--> zync_Uploaded
--> zync_UploadTimestamp

...and paste them into the main table you'll be sending to your hosted files. In this article's example, this table is called "Contacts".

'''6. Scripts Part 1'''

-> From the FileMaker menu in our mobile file select "Scripts" and then "Manage Scripts"; you'll see three top level script folder:

--> Scripts Specific to the Local File...
--> GoZync Core
--> GoZync Connections -- Edit these scripts as necessary --

-> Copy the last two folders and paste them into your mobile file. In GoZync Core / House Keeping you'll se a script called SetUp. Depending on how your mobile / local file is set up, this script may or may not apply to you. This script manages the resizing of layouts and checks for the records our example file needs for its virtual list. If you think these scripts would make sense in your solution, also add the following scripts to your file from the folder "Scripts Specific to the Local File"...

--> Simulate Rotate to Horizontal
--> Simulate Rotate to Vertical
--> Recreate Portal Row Records

-> ... and then repair the script "Setup" by pointing it to these scripts as it does in our example file.

-> If you don't need these things in your mobile file, just delete the Perform Script <missing> lines from the "Setup" script in your file. If your file has a start up script, be sure to add a step to call this script "Setup" from yours; if you don't have a start up script, make "Setup" your startup script.

-> Now edit the script "Where Is My Home Layout" changing the first line to what you consider to be the main layout of your solution.

'''7. Layouts Part 2: layout contents.'''

-> Now that your scripts are in place, you can paste in the contents of the 5 layouts you created in step 4 above. Visit each layout in turn, copying all the layout content from the same layout in our mobile file and adding it to yours. You can delete things like the Home and Back buttons in some of these headers unless you have your own navigation scripts you'd like to hook them to.

-> When you get to the layout "Transition", be sure to give it a fill color in the body as we've done in our file.

-> The most important layout, of course is "Invoice Field Mapping" there is where you'll be doing the rest of the work to hook this up. Probably want to make another backup copy of the file now.

'''8. Field Mapping.'''

-> Here is where we'll tell GoZync which fields from your mobile file should be packaged into [[the document]] we sent to your hosted files. This is done on the "Invoice Field Mapping" layout, though you can now rename that to something more relevant, like "Contact Field Mapping" in this example.

-> There are two things you need to change on this layout: the tabs, and the fields.

--> '''Tabs.'''

--> Our sample mobile file comes with three tabs, one for each related table we need to include in our document. Add or remove tabs to represent the tables related to your primary entity (contacts in this example). So if you have a related table of notes, you may create a tab for notes. Delete any tabs you don't need: you'll have at least one (contacts in this example).

--> Now revisit each tab and give it an object name like "Tab1". If you haven't created object names before, you do this in the Inspector:

%center% http://www.seedcode.com/screenshots/gozync/objectname.png

--> Note that these tabs can be the ''only'' named objects on the layout.

--> '''Fields.'''

--> Now double click on the (currently blank) fields on each tab and point these to the fields you'd like included in this document when we sent it to your hosted files. Here are a few tips:

--> The first field (in tab order) on each tab should be the primary key of the table. The first 4 fields show up in the InBox of GoZyncConnector and should be used to identify the record (things like the contact's name, for example). Aside from that, field order doesn't matter.

--> If you include related data on one of your tabs, you'll want to include that in a portal as we do in our example file on the Invoice Lines tab.

--> GoZync doesn't use the field labels so do what you'd like with those.

--> When you're done, enter browse mode and click "Validate & Export..." to create a [[data dictionary]] for this layout. This document contains customized instructions based on the fields and portals you've added to your layout: you'll refer to this when you'e working in GoZyncConnector as you edit the scripts teach Connector how to unpack your document.

'''9. Scripts Part 2:  Pull from Host'''

-> ''If you're not pulling data down from your host you can skip this section.''

-> '''Field Mapping.'''

-> Inside the script folder Pull from Host, you'll find a folder called Field Mapping inside a folder named Table Mapping. We'll work with the Field Mapping scripts first. Here you'll find one "Set XXX Fields..." script for each table (not each entity) for which you pull data down from the host. This script moves the data from the host into the correct fields. Edit this script following the comments inside the script and using your [[data dictionary]] for reference. You can also find help here: [[field mapping]].

-> In our sample file we only pull down items for sale so you'll see a single script "Set Item Fields ( $data ). Duplicate and modify this if you're pulling data down for additional tables.

-> '''Table Map.'''

-> Find the script called "Table Map" and add "branches" as described in the script's comments. These branches call one of the field mapping scripts (the "Set XXX Fields.." scripts) you worked on above.

-> '''Pull... Scripts'''.

-> Inside the Pull from Host folder you'll see two scripts beginning "Pull..." the second one looks like this in our sample file "Pull from 'Products' into Local 'Items'". This is the script you'll edit first and you'll duplicate this script to create one for each entity (not each table) you're pulling down from server. In our example file we're only pulling Items down, so you'll see only the one script. Edit this script, following the comments as you go.

-> Now move on to the script "Pull Records From Host". Find the comment "Begin Editing" and add one Perform Script step for each of the "Pull..." scripts you worked on above. You may want to create duplicates of this script so you can pull different data sets down at differrent times, sometimes getting all your entities down, other times getting down just others, but you can come back and do that later.

'''10. Scripts Part 3:  Push to Host'''

-> Almost done. Now we can edit the scripts which actually move our data up to the server. These scripts are in the GoZyncConnections folder of scripts, in the Push to Host folder. Inside that Push... folder you'll have one folder for each entity you're sending up. In our sample file we only send up Invoices, so you'll see a folder called "Invoices".

-> You'll modify the contents of this "Invoices" folder and then duplicate it for each additional entity in your mobile file. (If you're only sending up invoices from our mobile file, read through this but you may not need to modify anything.)

-> Each entity (Invoices in our example) requires three scripts and you'll make small changes to each of these three scripts by following the comments in each of the following scripts (when you duplicate the Invoices folder, replace "invoices" in the script names below with your own entity name):

--> Upload All Invoices To Server
--> Upload One Invoice To Server
--> Prep One Invoice for the Server

-> In the two "Upload..." scripts you'll edit a few lines at the beginning of each script AND a Perform Script line toward the end. The "Prep..." script has a single line you need to edit.

'''12. Scripts Part 4: Misc Configurations'''

-> Open the script folder "Edit Some Configurations Here" and edit each of the scripts within it (and those inside any subfolders), following the comments in the scripts for instructions. These are simpler than the scripts you've edited so far, but are still important.

'''13. Cleaning Up and Testing'''

-> At this point you're pretty much done and just need to tidy up a few things before you can move on to testing this and then teaching GoZyncConnector how to unpack your document into records in your hosted file.

--> '''File References.'''

--> You'll need to change the file references to the '''hosted''' versions of you GoZync files. The External Data Sources you created in 3.2 above were likely to instances of GoZync and GoZyncConnector on you local machine: you'll need to teach your mobile file how to find the hosted versions of these files.

-->From FileMaker's menus, select File / Manage / External Data Sources... and you'll see two file references, one for GoZyncConnectpor and one for GoZync. Edit both of these and you'll add a second line: the first line contains a reference to the local version of the GoZync files in your "Host" folder. Edit the second line of each file reference should point to the hosted versions of these files on your server. You can see an example of this in the External Data Sources of our mobile example file. You'll be replacing "yourserver.com" with the name or IP address of your FileMaker Server or host.

--> Remember to edit ''both'' the External Data Sources in Mobile: the ones for Connector and for GoZync.

--> '''Upload Button.'''

--> You'll need some way to run the scripts which will upload your data to the server, so create an upload button on one of your layouts and tell it to run the script "Upload One Record to Server". There is a also a script called "Upload Found Set To Server" if you're feeling ambitious.

--> You'll also want to edit these two scripts as they contain references to the word "invoice" and to the "sent" field you added to your table. Point the If statements in each script at ''your'' sent field (the one in contacts in this example).

--> That's it. You're ready for testing. Enter browse mode, make some records and then click your new upload button. You'll see a record for each document you sent in the InBox of GoZyncConnector. Eventually you'll want to read some of our [[MobileFileNotes | additional notes]] about refining the behavior of your mobile file.

to:
!! 1 of 4: Layout Information

'''1. Back Up Your Files.'''
July 05, 2012, at 09:39 PM by 50.132.84.245 -
Changed lines 21-22 from:
!! Getting to Work
to:
! Getting to Work

!! Backup your files and get started

Added lines 29-36:
'''2. Add a layout record to GoZync Hosted.'''

-> Open GoZyncHosted (which we'll start calling GZH) and navigate to the dashboard. Click "Add a new layout". You'll arrive at the integration tab with the file, layout, and table occurrence all saying unknown.

http://www.seedcode.com/rootimages/stikipad/gozync/unknown.png

Over the next few screens you'll tell GoZync which file and layouts to sync. Click "Proceed to integration" to get started.

Deleted lines 38-42:
-> Add a


'''2. File References.'''

July 05, 2012, at 09:30 PM by 50.132.84.245 -
July 05, 2012, at 09:30 PM by 50.132.84.245 -
Deleted lines 26-27:
-> We also strongly recommend you do this work on local files (off the server) as you'll be modifying scripts and table occurrences. Take your files down, work on them, and then load them back to your server: at least for anything that involved importing or pasting scripts, and modifying the graph. Layout work and script edits are safer to do live.
Changed lines 29-33 from:
to:
-> Add a


'''2. File References.'''

July 05, 2012, at 09:27 PM by 50.132.84.245 -
Changed lines 5-30 from:
Step by step instructions for uploading and playing with the sample files can be found here [[Getting Started]].

!! How this page is organized

In order to add GoZync to
your solution you'll be working in both the local (the mobile) file, and in the [[TheFiles | served files]] that are part of GoZync. The work done on both sides of this (the served side and the local side) is very similar and involves teaching GoZync how to translate the information passed in as a [[TheDocument | document]] into the tables and fields of your files.

The first part of this page describes the work to be done in the hosted file (GoZyncConnector) and the second half gets into the changes to be made to your local / mobile file (Mobile.fp7 or your own file).

!! Which to do first: local files or served files?

You'll need to do
the file that "packages" the data before you do the file that unpacks it. So if you're working on getting data from your local file, you'll get the local file straightened out first before moving to the served files (GoZyncConnector is the only served file you'll be editing).

In this documentation we assume you're leaving our mobile file alone and connecting it
to your served invoicing file. So we'll work with GoZyncConnector first. If plan on making a lot of changes to our mobile file--or plan to use your own-- jump to the "In the Local File/Mobile File" section first before working in GoZyncConnector.

Note that in our demo, you can't teach GoZync about your own solution, but you can test the demo on your own server and your iPads. More here: [[Hosting the Demo]]

! In GoZyncConnector

!! Background

GoZyncConnector is the [[TheFiles | served file]] your mobile/remote file will be communicating with. As part of adding GoZync to your solution you'll be teaching GoZyncConnector how to talk to the served file(s) of your solution: you'll teach it how to translate the records (the [[TheDocument | documents]]) sent to it from you mobile file into new or edited records in your served solution.

GoZyncConnector ships already connected to a simple served solution of our own called "Invoices". The instructions below show how to replace this connection with a connection to your own file.

!! The
Work
to:
Step by step instructions for uploading and playing with the sample files can be found here [[Getting Started]] and here [[Hosting the Demo]].

!! Organizing your files.

While you'll eventually put
your hosted files on your host or server--and the local files on your iPad, iPhone, or laptop--you can do the integration either all on your server, all on your desktop or with some files served and some local.

There are only a couple things that have to be true about your setup:

-> Your mobile file has to be "next to" (in
the same folder as GoZyncMobile).
-> Your hosted file needs to be "next to" (in the same folder as GoZyncHosted).
-> And GoZyncHosted and GoZyncLicense need to be in the same folder as each other.

To get started with the integration, place the files where you want to work with them and open them all: you'll need
the three GoZync files open and have both your hosted and mobile file open.

If you don
't have a mobile file yet, take a minute to make a copy of your hosted file and rename it to something like "MyFileMobile"; that will be your new mobile file. You can refine it later, removing scripts tables and layouts that your mobile users don't need.

!! Getting
to Work
February 17, 2012, at 06:03 PM by 187.173.216.229 -
Changed lines 228-229 from:
-> If you don't need these things in your mobile file, just delete the Perform Script <missing> lines from the "Setup" script in your file.
to:
-> If you don't need these things in your mobile file, just delete the Perform Script <missing> lines from the "Setup" script in your file. If your file has a start up script, be sure to add a step to call this script "Setup" from yours; if you don't have a start up script, make "Setup" your startup script.

-> Now edit the script "Where Is My Home Layout" changing the first line to what you consider to be the main layout of your solution.

February 17, 2012, at 06:00 PM by 187.173.216.229 -
Added line 216:
--> Scripts Specific to the Local File...
Changed lines 219-222 from:
--> Scripts Specific to the Local File...

-> Copy the first two folders and paste them into your mobile file.

to:

-> Copy the last two folders and paste them into your mobile file. In GoZync Core / House Keeping you'll se a script called SetUp. Depending on how your mobile / local file is set up, this script may or may not apply to you. This script manages the resizing of layouts and checks for the records our example file needs for its virtual list. If you think these scripts would make sense in your solution, also add the following scripts to your file from the folder "Scripts Specific to the Local File"...

--> Simulate Rotate to Horizontal
--> Simulate Rotate to Vertical
--> Recreate Portal Row Records

-> ... and then repair the script "Setup" by pointing it to these scripts as it does in our example file.

-> If you don't need these things in your mobile file, just delete the Perform Script <missing> lines from the "Setup" script in your file.

February 17, 2012, at 05:55 PM by 187.173.216.229 -
Added lines 7-8:
!! How this page is organized
Added lines 11-12:
The first part of this page describes the work to be done in the hosted file (GoZyncConnector) and the second half gets into the changes to be made to your local / mobile file (Mobile.fp7 or your own file).
Changed lines 290-291 from:
-> Open the script folder "Edit Some Configurations Here" and edit each of the scripts within it, following the comments in the scripts for instructions. These are simpler than the scripts you've edited so far, but are still important.
to:
-> Open the script folder "Edit Some Configurations Here" and edit each of the scripts within it (and those inside any subfolders), following the comments in the scripts for instructions. These are simpler than the scripts you've edited so far, but are still important.
Changed lines 288-289 from:
'''11. Cleaning Up and Testing'''
to:
'''12. Scripts Part 4: Misc Configurations'''

-> Open the script folder "Edit Some Configurations Here" and edit each of the scripts within it, following the comments in the scripts for instructions. These are simpler than the scripts you've edited so far, but are still important.

'''13
. Cleaning Up and Testing'''
Added lines 3-6:
Before you add GoZync to your solution we strongly recommend you play with our sample files and see a real "zync" of data before you get to work. If at all possible do this on your iPad and FileMaker Server / Host so you can see how this will work when you're done. This will also ensure you can ''see'' your server / host from your iPad. Something you'll want to know before you needlessly tear into some scripts.

Step by step instructions for uploading and playing with the sample files can be found here [[Getting Started]].

Changed lines 114-115 from:
-> Next edit the script "Get Records From Host ( RecordType )"
to:
-> Next edit the script "Get Records From Host ( RecordType )" following the comments in that script for instructions on how to create a "branch" in the script for each record type you're processing.
Added lines 112-115:
-> There are two scripts to edit in GoZyncConnector to get your data down to your mobile file. Begin by editing the script "Package Up Products." You'll have one of these scripts for each entity you wish to send to your mobile file. Rename and edit "Package Up Products," following the script comments for guidance, then duplicate this for each entity you're sending to mobile.

-> Next edit the script "Get Records From Host ( RecordType )"

Changed lines 88-91 from:
-> Need to do field mapping layouts in Connector's Outbox.

'''8. Test It.'''

to:
-> Here is where we'll tell GoZync which fields from your hosted file should be packaged into [[the document]] we sent to your mobile files. (If your mobile is only making records and doesn't need anything from the host, you can skip this section.)

-> This packaging is done on a "Products Field Mapping" layout in the layout folder "Outbox" (get it? records on their way out), though you can now rename that to something more relevant, like "Contacts".

-> There are two things you need to change on this layout: the tabs, and the fields.

--> '''Tabs.'''

--> GoZyncConnector comes with a single tab for the products table. A single tab is all you need if you're sending flat records to mobile. But if you need to send something related (like a contact and their phone numbers) you need one tab for each table in the entity: in this example the "entity" is a contact and it has two tables: contacts and phones. Read section '''4''' in the Mobile File half of this article for more on tabs.

--> '''Fields.'''

--> Now double click on the fields on each tab and point these to the fields you'd like included in this document when we sent it to your hosted files. Here are a few tips:

--> The first field (in tab order) on each tab should be the primary key of the table. The first 4 fields show up in the InBox of GoZyncConnector and should be used to identify the record (things like the contact's name, for example). Aside from that, field order doesn't matter.

--> If you include related data on one of your tabs, you'll want to include that in a portal as we do in our example mobile file's Invoice Field Mapping layout. on the Invoice Lines tab.

--> GoZync doesn't use the field labels so do what you'd like with those.

--> When you're done, enter browse mode and click "Validate & Export..." to create a [[data dictionary]] for this layout. This document contains customized instructions based on the fields and portals you've added to your layout: you'll refer to this when you'e editing scripts in your mobile to teach mobile how to unpack your document into new or modified records.

'''8. Getting data down to Mobile: Scripts.'''

'''9. Test It.'''

Changed lines 86-87 from:
'''7. Layouts.'''
to:
'''7. Getting data down to Mobile: Layouts.'''
Changed lines 76-81 from:
'''6. Edit Scripts. Table Configuration.'''

-> Note that is you didn't create or delete any "Set XXXX Fields" scripts in steps 4 and 5 above you can leave this section along: this is where we tell GoZync which of your "Set XXXX Fields" scripts to run. But if you simply edited the 4 scripts that come with GoZync, our "Table Branches" script already knows about them.

-> The last script you have to edit is inside the folder "Table Configuration". Edit the script "Table Branches" adding a "branch" for each table that has one of the "Set XXXX Fields" script steps you were just editing.
to:
'''6. Edit Scripts Part 2: Table Mapping.'''

-> Note that if you didn't create or delete any "Set XXXX Fields" scripts in steps 4 and 5 above you can leave this section alone: this is where we tell GoZync which of your "Set XXXX Fields" scripts to run. But if you simply edited the 4 scripts that come with GoZync, our "Table Map" script already knows about them.

-> The last script you have to edit is inside the folder "Table Mapping". Edit the script "Table Map" adding a "branch" for each table that has one of the "Set XXXX Fields" script steps you were just editing.
Changed lines 58-61 from:
-> Edit each SetField statement in this script to that it is setting the correct field in your invoices lines table: you want to find the field that most closely matches the contents of the variable in the SetField step.

-> If you've left our mobile file alone, you'll already have one SetField step for each field coming from our mobile file. But if you've added field to our mobile file, or if you're using your own,
you'll need a '''"dictionary"''' of the fields available to be mapped. Learn how to generate a dictionary to help you out here:  [[FieldMapping | Field Mapping Tips]].
to:
-> Edit each SetField statement in this script to that it is setting the correct field in your invoices lines table, following the comments in this script for guidance. You can also look  [[field mapping | here]] for more tips on field mapping.

-> If you've left our mobile file alone, you'll already have one SetField step for each field coming from our mobile file. But if you've added field to our mobile file, or if
you're using your own, you'll want to refer to the '''"dictionary"''' of the fields available to be mapped. Learn how to generate a [[data dictionary]] to help you out here:  [[FieldMapping | Field Mapping Tips]].
Changed lines 64-65 from:
-> For help with field mapping, read mode here: [[FieldMapping | Field Mapping Tips]].
to:
-> If you're using your own Mobile file, these scripts may not have anything do do with invoices any more. That is fine: rename the scripts so the make sense for you, deleting the scripts you don't need, and duplicating the ones here to create one "Set XXXX Fields" script for each table you receive from your mobile file.
Changed lines 56-57 from:
-> Find the "Field Mapping..." folder inside the folder named "GoZync Connections..." and edit the first script, named "Set InvoiceLines Fields".
to:
-> Find the "Field Mapping..." folder inside the script folders named "GoZync Connections... / Parsing Data Into Host / Table Mapping" and edit the first script, named "Set InvoiceLines Fields".
Changed lines 86-87 from:
'''7. Test It.'''
to:
'''7. Layouts.'''

-> Need to do field mapping layouts in Connector's Outbox.

'''8
. Test It.'''
Changed lines 52-53 from:
%center newwin% %width=400px" [[http://www.seedcode.com/rootimages/stikipad/gozync/connectorgraph.jpg |  http://www.seedcode.com/rootimages/stikipad/gozync/connectorgraph.jpg]]
to:
%center newwin% %width=400px% [[http://www.seedcode.com/rootimages/stikipad/gozync/connectorgraph.jpg |  http://www.seedcode.com/rootimages/stikipad/gozync/connectorgraph.jpg]]
Changed lines 50-51 from:
-> Revisit each relationship and, in each case, make sure the right hand side of the relationship uses the primary key for that table (it's unique ID).
to:
-> Revisit each relationship and, in each case, make sure the right hand side of the relationship uses the primary key for that table (it's unique ID). When you're done, this section of the graph should look something like this (using our Invoices sample file as an example):

%center newwin% %width=400px" [[http://www.seedcode.com/rootimages/stikipad/gozync/connectorgraph.jpg |  http://www.seedcode.com/rootimages/stikipad/gozync/connectorgraph.jpg]]

Changed lines 34-35 from:
-> if you're working locally, make sure your solution and GoZyncConnector are in the same place relative to each other as they'll be on the server. (Once you're done you can delete references for the sample Invoice file that ships with GoZync if you won't be using it. Leave the reference for GoZync.fp7 there.)
to:
-> if you're working locally, make sure your solution and GoZyncConnector are in the same place relative to each other as they'll be on the server. (Once you're ''all'' done you can delete references for the sample Invoice file that ships with GoZync if you won't be using it: elect to remove its occurrences from the graph as well.)
Changed lines 40-41 from:
-> Double clicking on the Table Occurrences in the section "Packing and UnPacking..." which are related to GoZync. For example,double click on "GoZyncInvoice" and copy the name (GoZyncInvoice) to your clipboard, now click where it says "data source" and select the invoices table in your file, pasting the name "GoZyncInvoice" back in there before you click OK. Next double click on the line between GoZyncInvoice and GoZync, make sure the right hand side of this relationship (the GoZyncInvoice side) uses the primary key (probably the invoice ID) from your table.
to:
-> In the Relationships tab of Manage Database, find "GoZync" in the section "Packing and UnPacking...". Create one table occurrence here for each table you'll be working with in GoZyn: this includes tables you're pulling down to your mobile file, and tables for which you're getting data from mobile. Preface the table occurrence name of each with "GoZync" as we did with the name "GoZyncInvoices"

-> Next make a relationship between each of these table occurrences and GoZync, connecting "PrimaryIDGLOB" in GoZync with
the primary key field in each of your tables. If your tables don't have a primary key field, make one. =)

->Make sure the right hand side of this relationship (your table's side) has "Allow creation of records in this table.." turned ON as shown below:

Changed lines 34-35 from:
-> if you're working locally, make sure your solution and GoZyncConnector are in the same place relative to each other as they'll be on the server. (Once you're done you can delete references for the sample Invoice file that ships with GoZync if you won't be using it.)
to:
-> if you're working locally, make sure your solution and GoZyncConnector are in the same place relative to each other as they'll be on the server. (Once you're done you can delete references for the sample Invoice file that ships with GoZync if you won't be using it. Leave the reference for GoZync.fp7 there.)
Changed lines 40-41 from:
-> Double clicking on the Table Occurrences in the section "Packing and UnPacking" which are related to GoZync. For example,double click on "GoZyncInvoice" and copy the name (GoZyncInvoice) to your clipboard, now click where it says "data source" and select the invoices table in your file, pasting the name "GoZyncInvoice" back in there before you click OK. Next double click on the line between GoZyncInvoice and GoZync, make sure the right hand side of this relationship (the GoZyncInvoice side) uses the primary key (probably the invoice ID) from your table.
to:
-> Double clicking on the Table Occurrences in the section "Packing and UnPacking..." which are related to GoZync. For example,double click on "GoZyncInvoice" and copy the name (GoZyncInvoice) to your clipboard, now click where it says "data source" and select the invoices table in your file, pasting the name "GoZyncInvoice" back in there before you click OK. Next double click on the line between GoZyncInvoice and GoZync, make sure the right hand side of this relationship (the GoZyncInvoice side) uses the primary key (probably the invoice ID) from your table.
Changed lines 230-231 from:
-> adfqg
to:
-> Inside the Pull from Host folder you'll see two scripts beginning "Pull..." the second one looks like this in our sample file "Pull from 'Products' into Local 'Items'". This is the script you'll edit first and you'll duplicate this script to create one for each entity (not each table) you're pulling down from server. In our example file we're only pulling Items down, so you'll see only the one script. Edit this script, following the comments as you go.

-> Now move on to the script "Pull Records From Host". Find the comment "Begin Editing" and add one Perform Script step for each of the "Pull..." scripts you worked on above. You may want to create duplicates of this script so you can pull different data sets down at differrent times, sometimes getting all your entities down, other times getting down just others, but you can come back and do that later.

Changed lines 224-225 from:
-> Table Map.
to:
-> '''Table Map.'''
Added lines 228-231:
-> '''Pull... Scripts'''.

-> adfqg

Changed lines 234-235 from:
-> Now we can edit the scripts which actually move our data up to the server. These scripts are in the GoZyncConnections folder of scripts, in the Push to Host folder. Inside that Push... folder you'll have one folder for each entity you're sending up. In our sample file we only send up Invoices, so you'll see a folder called "Invoices".
to:
-> Almost done. Now we can edit the scripts which actually move our data up to the server. These scripts are in the GoZyncConnections folder of scripts, in the Push to Host folder. Inside that Push... folder you'll have one folder for each entity you're sending up. In our sample file we only send up Invoices, so you'll see a folder called "Invoices".
Changed lines 226-227 from:
-> Find the script called "Table Map" and add "branches" as described in the script's comments.
to:
-> Find the script called "Table Map" and add "branches" as described in the script's comments. These branches call one of the field mapping scripts (the "Set XXX Fields.." scripts) you worked on above.
Changed lines 216-217 from:
-> Now xxxxxxxxxxxx
to:
-> ''If you're not pulling data down from your host you can skip this section.''

-> '''Field Mapping.'''

-> Inside the script folder Pull from Host, you'll find a folder called Field Mapping inside a folder named Table Mapping. We'll work with the Field Mapping scripts first. Here you'll find one "Set XXX Fields..." script for each table (not each entity) for which you pull data down from the host. This script moves the data from the host into the correct fields. Edit this script following the comments inside the script and using your [[data dictionary]] for reference. You can also find help here: [[field mapping]].

-> In our sample file we only pull down items for sale so you'll see a single script "Set Item Fields ( $data ). Duplicate and modify this if you're pulling data down for additional tables.

-> Table Map.

-> Find the script called "Table Map" and add "branches" as described in the script's comments.

Changed lines 224-225 from:
-> Each entity (Invoices in our example) requires three scripts and you'll make small changes to each of these three scripts by following the comments in each of the following scripts (when you duplicate the Invoices folder, replace "invoices" in the script names below with your own entity name).
to:
-> Each entity (Invoices in our example) requires three scripts and you'll make small changes to each of these three scripts by following the comments in each of the following scripts (when you duplicate the Invoices folder, replace "invoices" in the script names below with your own entity name):

--> Upload All Invoices To Server
--> Upload One Invoice To Server
--> Prep One Invoice for the Server

-> In the two "Upload..." scripts you'll edit a few lines at the beginning of each script AND a Perform Script line toward the end. The "Prep..." script has a single line you need to edit
.
Changed lines 214-215 from:
'''9. Scripts Part 3:  Pull from Host'''
to:
'''9. Scripts Part 2:  Pull from Host'''
Changed lines 220-221 from:
-> Now we can edit the scripts which actually move our data up to the server. These scripts are in the GoZyncConnections folder of scripts, in the
to:
-> Now we can edit the scripts which actually move our data up to the server. These scripts are in the GoZyncConnections folder of scripts, in the Push to Host folder. Inside that Push... folder you'll have one folder for each entity you're sending up. In our sample file we only send up Invoices, so you'll see a folder called "Invoices".

-> You'll modify the contents of this "Invoices" folder and then duplicate it for each additional entity in your mobile file. (If you're only sending up invoices from our mobile file, read through this but you may not need to modify anything.)

-> Each entity (Invoices in our example) requires three scripts and you'll make small changes to each of these three scripts by following the comments in each of the following scripts (when you duplicate the Invoices folder, replace "invoices" in the script names below with your own entity name).

Changed lines 214-215 from:
'''9. Cleaning Up and Testing'''
to:
'''9. Scripts Part 3:  Pull from Host'''

-> Now xxxxxxxxxxxx

'''10. Scripts Part 3:  Push to Host'''

-> Now we can edit the scripts which actually move our data up to the server. These scripts are in the GoZyncConnections folder of scripts, in the

'''11
. Cleaning Up and Testing'''
Changed lines 138-139 from:
-> Add one more Table Occurrence to your graph; from the file GoZyncConnector, add an instance of Inbox named "GoZyncInbox". Now create a relationship between GoZyncInbox and GoZync in your mobile file where GoZync::NewDocumentID in the new mobile file and GoZyncInbox::InboxID.
to:
-> Add one more Table Occurrence to your graph; from the file GoZyncConnector.fp7, add an instance of Inbox named "GoZyncInbox". To do this you'll make a new External Data source for
GoZyncConnector: from FileMaker's File menus select Manage / External Data Sources... 

-> While you're at it, make a reference GoZync.fp7 as well. Name that reference "GoZync" and name the other "GoZyncConnector". Use these names even if you plan to rename these files later.

-> Now return to the relationship graph
create a relationship between GoZyncInbox and GoZync in your mobile file where GoZync::NewDocumentID in the new mobile file and GoZyncInbox::InboxID.
Changed lines 220-221 from:
--> If you're modifying our mobile file, you'll need to change the file references to the hosted GoZync files. From FileMaker's menus, select File / Manage / External Data Sources... and you'll see two file references, one for GoZyncConnectpor and one for GoZync. Edit both of these and you'll see each is two lines long: the first line contains a reference to the local version of the GoZync files in your "Host" folder. Edit the second line of each file reference to point to the hosted versions of these files on your server, replacing "yourserver.com" with the name or IP address of your FileMaker Server or host.
to:
--> You'll need to change the file references to the '''hosted''' versions of you GoZync files. The External Data Sources you created in 3.2 above were likely to instances of GoZync and GoZyncConnector on you local machine: you'll need to teach your mobile file how to find the hosted versions of these files.

-->From FileMaker's menus, select File / Manage / External Data Sources... and you'll see two file references, one for GoZyncConnectpor and one for GoZync. Edit both of these and you'll add a second line: the first line contains a reference to the local version of the GoZync files in your "Host" folder. Edit the second line of each file reference should point to the hosted versions of these files on your server. You can see an example of this in the External Data Sources of our mobile example file. You'll be
replacing "yourserver.com" with the name or IP address of your FileMaker Server or host.
Changed lines 163-164 from:
'''6. Scripts'''
to:
'''6. Scripts Part 1'''
Changed lines 215-216 from:
--> From FileMaker's menus, select File / Manage / External Data Sources... and you'll see two file references, one for GoZyncConnectpor and one for GoZync. Edit both of these and you'll see each is two lines long: the first line contains a reference to the local version of the GoZync files in your "Host" folder. Edit the second line of each file reference to point to the hosted versions of these files on your server, replacing "yourserver.com" with the name or IP address of your FileMaker Server or host.
to:
--> If you're modifying our mobile file, you'll need to change the file references to the hosted GoZync files. From FileMaker's menus, select File / Manage / External Data Sources... and you'll see two file references, one for GoZyncConnectpor and one for GoZync. Edit both of these and you'll see each is two lines long: the first line contains a reference to the local version of the GoZync files in your "Host" folder. Edit the second line of each file reference to point to the hosted versions of these files on your server, replacing "yourserver.com" with the name or IP address of your FileMaker Server or host.
Changed lines 207-208 from:
--> When you're done, enter browse mode and click "Validate & Export..." to create a [[data dictionary]] for this layout. This is the document you'll use in GoZyncConnector when you edit the scripts teach it how to unpack your document.
to:
--> When you're done, enter browse mode and click "Validate & Export..." to create a [[data dictionary]] for this layout. This document contains customized instructions based on the fields and portals you've added to your layout: you'll refer to this when you'e working in GoZyncConnector as you edit the scripts teach Connector how to unpack your document.
Changed lines 195-196 from:
--> Note that these tabs can be the ''only'' named objects on the layout. And these object names should be unique among the files you're processing in GoZyncConnector. So if you have one mobile file sending the object names "invoices" and "customers", you'll want to use something besides "customer" in your second mobile file (we're using "contacts" in this example).
to:
--> Note that these tabs can be the ''only'' named objects on the layout.
Changed lines 193-198 from:


--> Object names can be anything you'd like
.

%center% http:
//www.seedcode.com/rootimages/stikipad/gozync/tabobjectname.jpg
to:
%center% http://www.seedcode.com/screenshots/gozync/objectname.png
Changed lines 191-194 from:
--> Now revisit each tab and give it an object name: this is the name we'll use to refer to this "table" when we unpack the document in GoZyncConnector. (As described in step 6 in the Connector instructions at the top of this page.)

--> In our example, the "tables" we're dealing with are Contacts and Notes, so those should be your tab's object names. Note that object names are different from the tab's display name. In the screen shot below, "Some Name" is the display name, but "Contacts" is the object name we care about:

to:
--> Now revisit each tab and give it an object name like "Tab1". If you haven't created object names before, you do this in the Inspector:



--> Object names can be anything you'd like
.
Changed lines 120-121 from:
-> Make sure '''all''' these relationships between your tables have Allow Creation of Related Records turned "on" for the child side of the relationship: in our example this is on the GoZyncInvoiceLines side and the GoZyncInvoicePhotos side.
to:
-> Make sure '''all''' these relationships between your tables have Allow Creation of Related Records turned "on" for the child side of the relationship: in our example this is on the GoZyncInvoiceLines side and the GoZyncInvoicePhotos side. (We don't use this to create records, but we need this on so we can "walk" into these portals and grab their field names.)
Added lines 120-121:
-> Make sure '''all''' these relationships between your tables have Allow Creation of Related Records turned "on" for the child side of the relationship: in our example this is on the GoZyncInvoiceLines side and the GoZyncInvoicePhotos side.
Changed lines 146-147 from:
-> Now create one new blank layout called "Invoice Field Mapping" and base it on the primary table occurrence whose data you'd like to send to your hosted files. For example, if you were sending contacts up, you'd base this layout on your contacts table occurrence.
to:
-> Now create one new blank layout called "Invoice Field Mapping" and base it on the table occurrence for the main entity you're sending up to your hosted solution. This is the occurrence created in 3.1 and it's name begins GoZync. For example, if you were sending contacts up, you'd base this layout on your GoZyncContacts table occurrence created in 3.1 above. You can have many of these field mapping layouts, but focus on one entity for now to get this working. Then you can come back here and add additional field mapping layouts.
Changed lines 138-139 from:
-> This relationship must have Allow Creation of Records Checked.
to:
-> This relationship must have Allow Creation of Records turned on for the GoZyncInbox side of the relationship.
Changed lines 124-125 from:
-> Ensure Allow Creation of Records in this table via this relationship is checked.
to:
-> Ensure Allow Creation of Records in this table via this relationship is checked on the right hand side of the relationship (the your table's side).
Changed lines 118-121 from:
-> Create a Table Occurrence for each local table you want to send to your hosted file, prefacing each table occurrence with "GoZync" similar to the example mobile file e.g. GoZyncInvoices.

-> Create a relationship between your recently created GoZync table in your mobile file and each new table occurrence. The left hand side of your relationship should be GoZync::PrimaryIDGLOB and the right hand side YourNewTableOccurrence
::PrimaryID
to:
-> Create a Table Occurrence for each local table you want to send up to your hosted file, prefacing each table occurrence with "GoZync" similar to the example mobile file e.g. GoZyncInvoices, GoZyncInvoiceLines, etc. Wire these together only as much as the natural relationships between them warrants. For example, we connect GoZyncInvoices to GoZyncInvoice lines in our example file. Where the actual relationships in the lower half of the graph are a little more complicated. This "GoZync" graph should be nice and simple.

-> Create a relationship between your recently created GoZync table in your mobile file and each new table occurrence. The left hand side of your relationship should be GoZync
::PrimaryIDGLOB and the right hand side YourNewTableOccurrence::PrimaryID as shown in the highlighted table occurrences here:

%center% http://www.seedcode.com/screenshots/gozync/graph1.png

Changed lines 118-119 from:
-> Double clicking on the Table Occurrences in the section "Packing and UnPacking" which are related to GoZync. For example,double click on "GoZyncInvoice" and copy the name (GoZyncInvoice) to your clipboard, now click where it says "data source" and select the invoices table in your mobile file, pasting the name "GoZyncInvoice" back in there before you click OK. Next double click on the line between GoZyncInvoice and GoZync, make sure the right hand side of this relationship (the GoZyncInvoice side) uses the primary key (probably the invoice ID) from your table.
to:
-> Create a Table Occurrence for each local table you want to send to your hosted file, prefacing each table occurrence with "GoZync" similar to the example mobile file e.g. GoZyncInvoices.

-> Create a relationship between your recently created GoZync table in your mobile file and each new table occurrence. The left hand side of your relationship should be GoZync::PrimaryIDGLOB and the right hand side YourNewTableOccurrence::PrimaryID

-> Ensure Allow Creation of Records in this table via this relationship is checked.

-> Note that if you were modifying our mobile file, you'd double click on the Table Occurrences in the section "Packing and UnPacking" which are related to GoZync. For example,double click on "GoZyncInvoice" and now click where it says "data source" and select the any other table in your mobile file which you'd like to Zync, pasting the prefix "GoZync" back in there in front of your table name
before you click OK. Next double click on the line between GoZyncInvoice and GoZync, make sure the right hand side of this relationship (the GoZyncInvoice side) uses the primary key (probably the invoice ID) from your table.
Changed lines 126-127 from:
'''3.1 One More Reationship.'''
to:
'''3.2 One More Relationship.'''
Added lines 126-131:
'''3.1 One More Reationship.'''

-> Add one more Table Occurrence to your graph; from the file GoZyncConnector, add an instance of Inbox named "GoZyncInbox". Now create a relationship between GoZyncInbox and GoZync in your mobile file where GoZync::NewDocumentID in the new mobile file and GoZyncInbox::InboxID.

-> This relationship must have Allow Creation of Records Checked.

Added lines 130-131:
-> Duplicate the transition layout and name it "Progress".
Changed lines 159-160 from:
-> Now that your scripts are in place, you can paste in the contents of the 4 layouts you created in step 4 above. Visit each layout in turn, copying all the layout content from the same layout in our mobile file and adding it to yours. You can delete things like the Home and Back buttons in some of these headers unless you have your own navigation scripts you'd like to hook them to.
to:
-> Now that your scripts are in place, you can paste in the contents of the 5 layouts you created in step 4 above. Visit each layout in turn, copying all the layout content from the same layout in our mobile file and adding it to yours. You can delete things like the Home and Back buttons in some of these headers unless you have your own navigation scripts you'd like to hook them to.
July 09, 2011, at 08:10 PM by 76.22.74.86 -
Added line 37:
Changed lines 118-119 from:
> > Coming soon.
to:
-> Double clicking on the Table Occurrences in the section "Packing and UnPacking" which are related to GoZync. For example,double click on "GoZyncInvoice" and copy the name (GoZyncInvoice) to your clipboard, now click where it says "data source" and select the invoices table in your mobile file, pasting the name "GoZyncInvoice" back in there before you click OK. Next double click on the line between GoZyncInvoice and GoZync, make sure the right hand side of this relationship (the GoZyncInvoice side) uses the primary key (probably the invoice ID) from your table.

%newwin center% %width=350px%  [[http://www.seedcode.com/rootimages/stikipad/gozync/invoicesrelationship.png | http://www.seedcode.com/rootimages/stikipad/gozync/invoicesrelationship.png]]

-> Repeat this for each table you want to send to (or get from) your hosted file, prefacing each table occurrence with "GoZync".

-> Revisit each relationship and, in each case, make sure the right hand side of the relationship uses the primary key for that table (it's unique ID)
.
June 30, 2011, at 12:32 AM by 76.22.74.86 -
Changed lines 192-193 from:
--> From FileMaker's menus, select File / Manage / External Data Sources... and you'll see two file references, one for GoZyncConnectpor and one for GoZync. Edit both of these and you'll see each is two lines long: the first line contains a reference to the local version of the GoZync files in your "Host" folder. Edit the second line of each file reference to point to the hosted versions of these files on your server.
to:
--> From FileMaker's menus, select File / Manage / External Data Sources... and you'll see two file references, one for GoZyncConnectpor and one for GoZync. Edit both of these and you'll see each is two lines long: the first line contains a reference to the local version of the GoZync files in your "Host" folder. Edit the second line of each file reference to point to the hosted versions of these files on your server, replacing "yourserver.com" with the name or IP address of your FileMaker Server or host.

--> Remember to edit ''both'' the External Data Sources in Mobile: the ones for Connector and for GoZync
.
June 30, 2011, at 12:23 AM by 76.22.74.86 -
Added lines 93-94:
Note that in our demo, you can't teach GoZync about your own solution, but you can test the demo on your own server and your iPads. More here: [[Hosting the Demo]]
June 29, 2011, at 04:43 PM by 76.22.74.86 -
Added lines 11-12:
Note that in our demo, you can't teach GoZync about your own solution, but you can test the demo on your own server and your iPads. More here: [[Hosting the Demo]]
Added line 31:
Deleted line 36:
June 28, 2011, at 03:49 AM by 76.22.74.86 -
Added lines 25-26:
-> We also strongly recommend you do this work on local files (off the server) as you'll be modifying scripts and table occurrences. Take your files down, work on them, and then load them back to your server: at least for anything that involved importing or pasting scripts, and modifying the graph. Layout work and script edits are safer to do live.
June 02, 2011, at 10:07 PM by 184.78.159.107 -
Changed lines 194-196 from:
--> That's it. You're ready for testing. Enter browse mode, make some records and then click your new upload button. You'll see a record for each document you sent in the InBox of GoZyncConnector. Eventually you'll want to read some of our [[MobileFileNotes | additional notes]] about refining the behvior of your mobile file.

to:
--> That's it. You're ready for testing. Enter browse mode, make some records and then click your new upload button. You'll see a record for each document you sent in the InBox of GoZyncConnector. Eventually you'll want to read some of our [[MobileFileNotes | additional notes]] about refining the behavior of your mobile file.

June 02, 2011, at 10:06 PM by 184.78.159.107 -
Changed lines 190-192 from:
--> You'll need some way to run the scripts which will upload your data to the server, so create an upload button on one of your layouts and tell it to run the script
"Upload One Record to Server". There is a also a script called "Upload Found Set To Server" if you're feeling ambitious.
to:
--> You'll need some way to run the scripts which will upload your data to the server, so create an upload button on one of your layouts and tell it to run the script "Upload One Record to Server". There is a also a script called "Upload Found Set To Server" if you're feeling ambitious.
Changed lines 194-196 from:
-> That's it. You're ready for testing. Enter browse mode, make some records and then click your new upload button. You'll see a record for each document you sent in the InBox of GoZyncConnector.

to:
--> That's it. You're ready for testing. Enter browse mode, make some records and then click your new upload button. You'll see a record for each document you sent in the InBox of GoZyncConnector. Eventually you'll want to read some of our [[MobileFileNotes | additional notes]] about refining the behvior of your mobile file.

June 02, 2011, at 06:35 PM by 76.22.74.86 -
Changed lines 3-4 from:
In order to add GoZync to your solution you'll be working in both the local (the mobile) file, and in the [[TheFiles | served files]] that are part of GoZync. The work done on both sides of this (the served side and the local side) is very similar and involved teaching GoZync how to translate the information passed in as a [[TheDocument | document]] into the tables and fields of your files.
to:
In order to add GoZync to your solution you'll be working in both the local (the mobile) file, and in the [[TheFiles | served files]] that are part of GoZync. The work done on both sides of this (the served side and the local side) is very similar and involves teaching GoZync how to translate the information passed in as a [[TheDocument | document]] into the tables and fields of your files.
Changed lines 9-10 from:
In this documentation we assume you're leaving our mobile file alone and connecting it to your served invoicing file. So we work with GoZyncConnector first. If plan on making a lot of changes to our mobile file--or plan to use your own-- jump to the "In the Local File/Mobile File" section first before working in GoZyncConnector.
to:
In this documentation we assume you're leaving our mobile file alone and connecting it to your served invoicing file. So we'll work with GoZyncConnector first. If plan on making a lot of changes to our mobile file--or plan to use your own-- jump to the "In the Local File/Mobile File" section first before working in GoZyncConnector.
May 23, 2011, at 07:51 PM by 76.22.74.86 -
Changed lines 87-88 from:
Many people will modify our example files in order to get started with GoZync though some folks will want to add Zync to mobile files they already have. This section talks about how to do that: if you're just modifying one of our example files, you won't need to add the GoZync tables and scripts, etc but can jump right in at step '''XX''' where we teach the file how to translate the records your created in your mobile file into (the [[TheDocument | documents]]) we'll send to your served solution.
to:
Many people will modify our example files in order to get started with GoZync though some folks will want to add Zync to mobile files they already have. This section talks about how to do that: if you're just modifying one of our example files, you won't need to add the GoZync tables and scripts, etc but can jump right in at step 8 where we teach the file how to translate the records your created in your mobile file into (the [[TheDocument | documents]]) we'll send to your served solution.
May 23, 2011, at 04:32 PM by 76.22.74.86 -
Added lines 109-112:
'''3.1 Relationship Graph.'''

> > Coming soon.

May 23, 2011, at 04:28 PM by 76.22.74.86 -
Added lines 189-190:
--> You'll also want to edit these two scripts as they contain references to the word "invoice" and to the "sent" field you added to your table. Point the If statements in each script at ''your'' sent field (the one in contacts in this example).
May 23, 2011, at 04:24 PM by 76.22.74.86 -
Changed lines 182-183 from:
--> From FileMaker's menus, select File / Manage / External Data Sources... and you'll see two file references, one for GoZyncConnectpor and one for GoZync. Edit both of these and you'll see each is two lines long: the first line contains a reference to the local version of the GoZync files in your "Hosted" folder. Edit the second line of each file reference to point to the hosted versions of these files on your server.
to:
--> From FileMaker's menus, select File / Manage / External Data Sources... and you'll see two file references, one for GoZyncConnectpor and one for GoZync. Edit both of these and you'll see each is two lines long: the first line contains a reference to the local version of the GoZync files in your "Host" folder. Edit the second line of each file reference to point to the hosted versions of these files on your server.
May 23, 2011, at 04:21 PM by 76.22.74.86 -
Changed lines 95-96 from:
-> You'll also be copying things from our Mobile example file, so make sure you have a nice clean copy of that file.
to:
-> You'll also be copying things from our Mobile example file, so make sure you have a nice clean copy of that file. Now place the file you're working with (what will become your new mobile file) in the Local folder of GoZync on your desktop, beside Mobile.fp7.
Changed lines 162-163 from:
--> Note that these tabs can be the ''only'' named objects on the layout.
to:
--> Note that these tabs can be the ''only'' named objects on the layout. And these object names should be unique among the files you're processing in GoZyncConnector. So if you have one mobile file sending the object names "invoices" and "customers", you'll want to use something besides "customer" in your second mobile file (we're using "contacts" in this example).
Changed lines 178-191 from:
-> At this point you're pretty much done and just need to tidy up a few things before you can move on to testing this and then teaching GoZyncConnector how to unpack your document into records in your hosted file.
to:
-> At this point you're pretty much done and just need to tidy up a few things before you can move on to testing this and then teaching GoZyncConnector how to unpack your document into records in your hosted file.

--> '''File References.'''

--> From FileMaker's menus, select File / Manage / External Data Sources... and you'll see two file references, one for GoZyncConnectpor and one for GoZync. Edit both of these and you'll see each is two lines long: the first line contains a reference to the local version of the GoZync files in your "Hosted" folder. Edit the second line of each file reference to point to the hosted versions of these files on your server.

--> '''Upload Button.'''

--> You'll need some way to run the scripts which will upload your data to the server, so create an upload button on one of your layouts and tell it to run the script
"Upload One Record to Server". There is a also a script called "Upload Found Set To Server" if you're feeling ambitious.

-> That's it. You're ready for testing. Enter browse mode, make some records and then click your new upload button. You'll see a record for each document you sent in the InBox of GoZyncConnector.

May 23, 2011, at 04:12 PM by 76.22.74.86 -
Changed lines 174-178 from:
to:
--> When you're done, enter browse mode and click "Validate & Export..." to create a [[data dictionary]] for this layout. This is the document you'll use in GoZyncConnector when you edit the scripts teach it how to unpack your document.

'''9. Cleaning Up and Testing'''

-> At this point you're pretty much done and just need to tidy up a few things before you can move on to testing this and then teaching GoZyncConnector how to unpack your document into records in your hosted file.
May 23, 2011, at 04:08 PM by 76.22.74.86 -
Added lines 162-163:
--> Note that these tabs can be the ''only'' named objects on the layout.
Changed lines 168-169 from:
--> The first field (in tab order) on each tab should be the primary key of the table. The first 4 fields show up in the InBox of GoZyncConnector and should be used to identify the record (things like the contact's name, for example).
to:
--> The first field (in tab order) on each tab should be the primary key of the table. The first 4 fields show up in the InBox of GoZyncConnector and should be used to identify the record (things like the contact's name, for example). Aside from that, field order doesn't matter.
Changed lines 172-173 from:

to:
--> GoZync doesn't use the field labels so do what you'd like with those.

May 23, 2011, at 04:07 PM by 76.22.74.86 -
Changed lines 162-171 from:
to:
--> '''Fields.'''

--> Now double click on the (currently blank) fields on each tab and point these to the fields you'd like included in this document when we sent it to your hosted files. Here are a few tips:

--> The first field (in tab order) on each tab should be the primary key of the table. The first 4 fields show up in the InBox of GoZyncConnector and should be used to identify the record (things like the contact's name, for example).

--> If you include related data on one of your tabs, you'll want to include that in a portal as we do in our example file on the Invoice Lines tab.


May 23, 2011, at 04:03 PM by 76.22.74.86 -
Changed lines 160-162 from:


to:
%center% http://www.seedcode.com/rootimages/stikipad/gozync/tabobjectname.jpg

May 23, 2011, at 04:00 PM by 76.22.74.86 -
Changed lines 119-120 from:
'''6. Fields'''
to:
'''5. Fields'''
Changed lines 138-139 from:
'''6. Layouts Part 2: layout contents.'''
to:
'''7. Layouts Part 2: layout contents.'''
Changed lines 144-145 from:
-> The most important layout, of course is "Invoice Field Mapping" there is where you'll be doing the rest of the work to hook this up.
to:
-> The most important layout, of course is "Invoice Field Mapping" there is where you'll be doing the rest of the work to hook this up. Probably want to make another backup copy of the file now.

'''8. Field Mapping.'''

-> Here is where we'll tell GoZync which fields from your mobile file should be packaged into [[the document]] we sent to your hosted files. This is done on the "Invoice Field Mapping" layout, though you can now rename that to something more relevant, like "Contact Field Mapping" in this example.

-> There are two things you need to change on this layout: the tabs, and the fields.

--> '''Tabs.'''

--> Our sample mobile file comes with three tabs, one for each related table we need to include in our document. Add or remove tabs to represent the tables related to your primary entity (contacts in this example). So if you have a related table of notes, you may create a tab for notes. Delete any tabs you don't need: you'll have at least one (contacts in this example).

--> Now revisit each tab and give it an object name: this is the name we'll use to refer to this "table" when we unpack the document in GoZyncConnector. (As described in step 6 in the Connector instructions at the top of this page.)

--> In our example, the "tables" we're dealing with are Contacts and Notes, so those should be your tab's object names. Note that object names are different from the tab's display name. In the screen shot below, "Some Name" is the display name, but "Contacts" is the object name we care about:



May 23, 2011, at 03:49 PM by 76.22.74.86 -
Added lines 95-96:
-> You'll also be copying things from our Mobile example file, so make sure you have a nice clean copy of that file.
Changed lines 144-145 from:
-> The most important layout, of course is "Invoice Field Mapping" there is where you'll be doing the rest of the work to hook this up.
to:
-> The most important layout, of course is "Invoice Field Mapping" there is where you'll be doing the rest of the work to hook this up.
May 23, 2011, at 03:42 PM by 76.22.74.86 -
Changed lines 140-142 from:
-> When you get to the layout "Transition", be sure to give it a fill color in the body as we've done in our file.
to:
-> When you get to the layout "Transition", be sure to give it a fill color in the body as we've done in our file.

-> The most important layout, of course is "Invoice Field Mapping" there is where you'll be doing the rest of the work to hook this up
.
May 23, 2011, at 03:40 PM by 76.22.74.86 -
Added lines 139-140:

-> When you get to the layout "Transition", be sure to give it a fill color in the body as we've done in our file.
May 23, 2011, at 03:38 PM by 76.22.74.86 -
Changed line 138 from:
-> Now that your scripts are in place, you can paste in the contents of the 4 layouts you created in step 4 above. Visit each layout in turn, copying all the layout content from the same layout in our mobile file and adding it to yours.
to:
-> Now that your scripts are in place, you can paste in the contents of the 4 layouts you created in step 4 above. Visit each layout in turn, copying all the layout content from the same layout in our mobile file and adding it to yours. You can delete things like the Home and Back buttons in some of these headers unless you have your own navigation scripts you'd like to hook them to.
May 23, 2011, at 03:37 PM by 76.22.74.86 -
Changed line 138 from:
-> Now that your scripts are in place, you can paste in the contents of the 4 layouts you created in step 4 above.
to:
-> Now that your scripts are in place, you can paste in the contents of the 4 layouts you created in step 4 above. Visit each layout in turn, copying all the layout content from the same layout in our mobile file and adding it to yours.
May 23, 2011, at 03:09 PM by 76.22.74.86 -
Added lines 105-106:
-> When you pasted in those tables a blank layout was created for each one. Visit each of these and import the data from the same table in our sample mobile file. (Or do all this in one step by importing these two table from our sample mobile file into yours.)
Changed lines 109-110 from:
-> When you pasted in those tables a blank layout was created for each one. Leave the one named Interface alone, and head over to the one named GoZync. Name this layout "New File Prep", delete everything on it, and then duplicate it; name this newly created one "GoZync Packing-UnPacking" (make sure you get the name exactly right). Now duplicate this one and name the new one "Transition".
to:
-> Return to the two layouts created above. Leave the one named Interface alone, and head over to the one named GoZync. Name this layout "New File Prep", delete everything on it, and then duplicate it; name this newly created one "GoZync Packing-UnPacking" (make sure you get the name exactly right). Now duplicate this one and name the new one "Transition".
May 22, 2011, at 10:21 PM by 76.22.74.86 -
Changed line 136 from:
-> When you pasted in those tables a blank layout was created for each one. Leave the one nam
to:
-> Now that your scripts are in place, you can paste in the contents of the 4 layouts you created in step 4 above.
May 22, 2011, at 10:21 PM by 76.22.74.86 -
May 22, 2011, at 10:20 PM by 76.22.74.86 -
Changed lines 111-112 from:
-> We'll change the name of that layout on step 6 below. And don't put anything on these layouts yet: we'll come back to that in step 6 as well.
to:
-> We'll change the name of that layout on step 7 below. And don't put anything on these layouts yet: we'll come back to that in step 7 as well.
Changed lines 115-116 from:
'''5. Scripts'''
to:
'''6. Fields'''

-> Copy two fields form the Invoices table of our mobile sample file...

--> zync_Uploaded
--> zync_UploadTimestamp

...and paste them into the main table you'll be sending to your hosted files. In this article's example, this table is called "Contacts".

'''6
. Scripts'''
Changed lines 132-133 from:
-> Copy the first two folders and paste them into your mobile file. All these scripts should come over requiring no modification.
to:
-> Copy the first two folders and paste them into your mobile file.
May 22, 2011, at 10:16 PM by 76.22.74.86 -
Changed lines 107-110 from:
-> When you pasted in those tables a blank layout was created for each one. Leave the one named Interface alone, and head over to the one named GoZync. Name this layout New File Prep and then duplicate it; name this newly created one "GoZync Packing-UnPacking" (make sure you get the name exactly right). Now duplicate this one and name the new one "Transition".

-> Now create one new layout called "Invoice Field Mapping" and base it on the primary table occurrence whose data you'd like to send to your hosted files. For example, if you were sending contacts up, you'd base this layout on your contacts table occurrence.
to:
-> When you pasted in those tables a blank layout was created for each one. Leave the one named Interface alone, and head over to the one named GoZync. Name this layout "New File Prep", delete everything on it, and then duplicate it; name this newly created one "GoZync Packing-UnPacking" (make sure you get the name exactly right). Now duplicate this one and name the new one "Transition".

-> Now create one new blank layout called "Invoice Field Mapping" and base it on the primary table occurrence whose data you'd like to send to your hosted files. For example, if you were sending contacts up, you'd base this layout on your contacts table occurrence.
Changed lines 123-124 from:
-> Copy the first two folders and paste them into your mobile file.
to:
-> Copy the first two folders and paste them into your mobile file. All these scripts should come over requiring no modification.
May 22, 2011, at 10:13 PM by 76.22.74.86 -
Added lines 117-126:
-> From the FileMaker menu in our mobile file select "Scripts" and then "Manage Scripts"; you'll see three top level script folder:

--> GoZync Core
--> GoZync Connections -- Edit these scripts as necessary --
--> Scripts Specific to the Local File...

-> Copy the first two folders and paste them into your mobile file.

'''6. Layouts Part 2: layout contents.'''

Deleted lines 127-130:

'''6. Layouts Part 2: layout contents.'''

-> When you pasted in those tables a blank layout was created for each one. Leave the one nam
May 22, 2011, at 10:05 PM by 76.22.74.86 -
Changed lines 101-102 from:
'''2. Import Tables.'''
to:
'''3. Import Tables.'''
Added lines 105-121:
'''4. Layouts Part 1: blank layouts.'''

-> When you pasted in those tables a blank layout was created for each one. Leave the one named Interface alone, and head over to the one named GoZync. Name this layout New File Prep and then duplicate it; name this newly created one "GoZync Packing-UnPacking" (make sure you get the name exactly right). Now duplicate this one and name the new one "Transition".

-> Now create one new layout called "Invoice Field Mapping" and base it on the primary table occurrence whose data you'd like to send to your hosted files. For example, if you were sending contacts up, you'd base this layout on your contacts table occurrence.

-> We'll change the name of that layout on step 6 below. And don't put anything on these layouts yet: we'll come back to that in step 6 as well.

-> Back up your mobile file now that you've gotten all this done, and feel free to back it up frequently, never deleting a previous backup, as you move through the steps below.

'''5. Scripts'''

-> When you pasted in those tables a blank layout was created for each one. Leave the one nam

'''6. Layouts Part 2: layout contents.'''

-> When you pasted in those tables a blank layout was created for each one. Leave the one nam
May 22, 2011, at 09:55 PM by 76.22.74.86 -
Changed lines 99-100 from:
-> Note that moving custom functions requires FileMaker Advanced. If you don't have a copy of Advanced please email your mobile file to support at seedcode.com and we'll be happy to add this function for you.
to:
-> Note that moving custom functions requires FileMaker Advanced. If you don't have a copy of Advanced you'll have trouble with a number of steps that follow as well. Please %newwin% [[http://www.seedcode.com/cp-app/contact/1 | get in touch]] and we'll get you a quote for moving all of this into your mobile file.
Changed lines 103-104 from:
-> Our mobile example file contains one custom function you'll want to add to your mobile file. Sele
to:
-> Copy the tables "GoZync" and "Interface" from our mobile file and paste them into yours. If you already have a table named "Interface" please rename yours before pasting ours in. If you already have a table named GoZync, well then you must be Todd Geist ;-)
May 22, 2011, at 09:51 PM by 76.22.74.86 -
Changed lines 79-81 from:
-> Take a look at te

to:
-> Take a look at the record you've created in your file and see if the data ended up in the right place. Often you'll want to make some changes to where the data is being set, so edit your "Set XXXX Fields" scripts, re-processing your test records until the data is ending up where you like.

-> That's it.

Changed lines 85-103 from:
to:
!! Background

Many people will modify our example files in order to get started with GoZync though some folks will want to add Zync to mobile files they already have. This section talks about how to do that: if you're just modifying one of our example files, you won't need to add the GoZync tables and scripts, etc but can jump right in at step '''XX''' where we teach the file how to translate the records your created in your mobile file into (the [[TheDocument | documents]]) we'll send to your served solution.

!! The Work

'''1. Back Up Your Files.'''

-> Seriously. And you'll probably want to pull everything off the server and do this work locally as importing scripts from local files into hosted files is a good way to mess up your database.

'''2. Add a Custom Function.'''

-> Our mobile example file contains one custom function you'll want to add to your mobile file. Select Manage / Custom Functions from FileMaker's File menu and copy the function "zyncVariable". Select the same menus in your mobile file and past the function in: you don't have to modify it at all.

-> Note that moving custom functions requires FileMaker Advanced. If you don't have a copy of Advanced please email your mobile file to support at seedcode.com and we'll be happy to add this function for you.

'''2. Import Tables.'''

-> Our mobile example file contains one custom function you'll want to add to your mobile file. Sele
May 22, 2011, at 04:29 PM by 76.22.74.86 -
Changed lines 77-79 from:
-> If you already have a document in the InBox of GoZyncConnector you can now send it to your hosted file. (If the document has already been processed, select it anyway and hold down the shift key when you click "Process Selected Items".)

to:
-> If you already have a document in the InBox of GoZyncConnector you can now send it to your hosted file. (If the document has already been processed, select it anyway and hold down the shift key when you click "Process Selected Items".) If you don't have anything in your InBox, head over to your mobile file, create a new record, and upload it. Remember, you can do this in Pro so you don't have to use FMGo to test your field mappings.

-> Take a look at te


May 22, 2011, at 04:28 PM by 76.22.74.86 -
Changed lines 65-66 from:
'''6. Edit Scripts. Table Configuration.''
to:
'''6. Edit Scripts. Table Configuration.'''
Changed lines 75-76 from:
'''7. Test It.''
to:
'''7. Test It.'''
May 22, 2011, at 04:18 PM by 76.22.74.86 -
Changed lines 75-79 from:
to:
'''7. Test It.''

-> If you already have a document in the InBox of GoZyncConnector you can now send it to your hosted file. (If the document has already been processed, select it anyway and hold down the shift key when you click "Process Selected Items".)

May 22, 2011, at 04:12 PM by 76.22.74.86 -
Changed lines 73-75 from:
->

to:
-> Follow the instructions within this "Table Branches" script's comments for details on how to change it.

May 22, 2011, at 04:12 PM by 76.22.74.86 -
Changed lines 43-44 from:
'''4. Edit Scripts. Part 1'''
to:
'''4. Edit Scripts. Field Mapping'''
Changed lines 55-56 from:
'''5. Edit Scripts. Part 2'''
to:
'''5. Edit Scripts. Field Mapping Contd.'''
Changed lines 65-75 from:
to:
'''6. Edit Scripts. Table Configuration.''

-> Note that is you didn't create or delete any "Set XXXX Fields" scripts in steps 4 and 5 above you can leave this section along: this is where we tell GoZync which of your "Set XXXX Fields" scripts to run. But if you simply edited the 4 scripts that come with GoZync, our "Table Branches" script already knows about them.

-> The last script you have to edit is inside the folder "Table Configuration". Edit the script "Table Branches" adding a "branch" for each table that has one of the "Set XXXX Fields" script steps you were just editing.

--> ''A "branch" is an IF or Else IF statement that forks this script into calling the correct Set Field script for the kind of data being worked with.''

->

May 22, 2011, at 03:52 PM by 76.22.74.86 -
Changed lines 59-62 from:
-> When you get to the script "Set Invoice Fields" you'll see a new section in this script for "splitting records"


to:
-> When you get to the script "Set Invoice Fields" you'll see a new section in this script for [[splitting records]]: we do this when we have a record (like the invoice in our sample Mobile file) that really has two records in it: our invoice contains information that properly belongs in the customer's record. So you'll see that we leave the invoice "Set Invoice Fields" script to go make the customer's record and then return.

-> If your hosted file contains a separate customer (or contacts) table, you may want to do what we're doing as well and create/edit a customer record from the invoice. If not, you can create additional Set Field steps to add the customer information to the invoice itself: feel free to copy the SetField steps and Log Error script steps from the scrip "Set Customer Fields" as these are already mapped to the fields coming from your mobile file.

-> Again, continue editing each of the field mapping scripts, deleting those you don't need and creating new ones for additional tables you may have. Refer here for [[FieldMapping | Field Mapping Tips]].


May 22, 2011, at 03:44 PM by 76.22.74.86 -
Changed lines 43-48 from:
'''4. Edit Scripts.'''

-> Find the "Field Mapping..." folder inside the folder named "GoZync Connections..." and edit the first script, named "Set Invoice Fields".

-> Edit each SetField statement in this script to that it is setting the correct field in your invoices table: you want to find the field that most closely matches the contents of the variable in the SetField step.
to:
'''4. Edit Scripts. Part 1'''

-> Find the "Field Mapping..." folder inside the folder named "GoZync Connections..." and edit the first script, named "Set InvoiceLines Fields".

-> Edit each SetField statement in this script to that it is setting the correct field in your invoices lines table: you want to find the field that most closely matches the contents of the variable in the SetField step.
Changed lines 51-54 from:
-> Be sure to edit the last Perform Script step, replacing the field used at the end of the script parameter, with your invoice ID field (or the primary key / unique id of the table you're working in).

-> Do this with each of the field mapping scripts, deleting those you don't need and creating new ones for additional tables you may have
.
to:
-> Be sure to edit the Perform Script step in the section "Cleaning Up...", replacing the field used at the end of the script parameter, with your invoice lines ID field (or the primary key / unique id of the table you're working in).
Changed lines 55-56 from:
'''5.'''
to:
'''5. Edit Scripts. Part 2'''

-> Continue editing each of the field mapping scripts, deleting those you don't need and creating new ones for additional tables you may have.

-> When you get to the script "Set Invoice Fields" you'll see a new section in this script for "splitting records"


May 22, 2011, at 03:31 PM by 76.22.74.86 -
Changed lines 45-46 from:
-> Find the "Field Mapping..." folder inside the folder named "Talking to Your Files" and edit the first script, named "Set Invoice Header Fields". (Here "header" means the invoice itself as opposed to the invoice line items.) Edit each SetField statement in this script to that it is setting the correct field in your invoices table: you want to find the field that most closely matches the contents of the variable in the SetField step.
to:
-> Find the "Field Mapping..." folder inside the folder named "GoZync Connections..." and edit the first script, named "Set Invoice Fields".

->
Edit each SetField statement in this script to that it is setting the correct field in your invoices table: you want to find the field that most closely matches the contents of the variable in the SetField step.
May 16, 2011, at 07:33 PM by 166.205.141.213 -
Changed lines 47-48 from:
-> If you've left our mobile file alone, you'll already have one SetField step for each field coming from our mobile file. But if you've added field to our mobile file, or if you're using your own, you'll need a "dictionary" of the fields available to be mapped. Learn how to generate a dictionary to help you out here:  [[FieldMapping | Field Mapping Tips]].
to:
-> If you've left our mobile file alone, you'll already have one SetField step for each field coming from our mobile file. But if you've added field to our mobile file, or if you're using your own, you'll need a '''"dictionary"''' of the fields available to be mapped. Learn how to generate a dictionary to help you out here:  [[FieldMapping | Field Mapping Tips]].
May 16, 2011, at 07:33 PM by 166.205.141.213 -
Changed lines 47-48 from:
> > where did these variables come from, you might ask...
to:
-> If you've left our mobile file alone, you'll already have one SetField step for each field coming from our mobile file. But if you've added field to our mobile file, or if you're using your own, you'll need a "dictionary" of the fields available to be mapped. Learn how to generate a dictionary to help you out here:  [[FieldMapping | Field Mapping Tips]].
Changed lines 51-52 from:
-> Do this with each of the field mapping scripts, deleting those you don't need and creating new ones or additional tables you may have.
to:
-> Do this with each of the field mapping scripts, deleting those you don't need and creating new ones for additional tables you may have.
May 16, 2011, at 07:30 PM by 166.205.141.213 -
Changed lines 9-10 from:
In this documentation we assume you're leaving our mobile file alone and connecting it to your served invoicing file. So we work with GoZyncConnector first. If plan on making a lot of changes to our mobile file--or plan to use your own-- jump to the "In the Local File.." section first before working in GoZyncConnector.
to:
In this documentation we assume you're leaving our mobile file alone and connecting it to your served invoicing file. So we work with GoZyncConnector first. If plan on making a lot of changes to our mobile file--or plan to use your own-- jump to the "In the Local File/Mobile File" section first before working in GoZyncConnector.
May 16, 2011, at 07:29 PM by 166.205.141.213 -
Added lines 5-10:
!! Which to do first: local files or served files?

You'll need to do the file that "packages" the data before you do the file that unpacks it. So if you're working on getting data from your local file, you'll get the local file straightened out first before moving to the served files (GoZyncConnector is the only served file you'll be editing).

In this documentation we assume you're leaving our mobile file alone and connecting it to your served invoicing file. So we work with GoZyncConnector first. If plan on making a lot of changes to our mobile file--or plan to use your own-- jump to the "In the Local File.." section first before working in GoZyncConnector.

May 16, 2011, at 07:25 PM by 166.205.141.213 -
Changed lines 39-40 from:
-> Find the "Field Mapping..." folder inside the folder named "Talking to Your Files" and edit the first one (named Set Invoice Header Fields). Edit each SetField statement to that it is setting the correct field in your invoices table: you want to find the field that most closely matches the contents of the variable in the SetField step.
to:
-> Find the "Field Mapping..." folder inside the folder named "Talking to Your Files" and edit the first script, named "Set Invoice Header Fields". (Here "header" means the invoice itself as opposed to the invoice line items.) Edit each SetField statement in this script to that it is setting the correct field in your invoices table: you want to find the field that most closely matches the contents of the variable in the SetField step.
May 16, 2011, at 07:23 PM by 166.205.141.213 -
Changed lines 33-34 from:
-> Repeat this with each table you want to add or edit records for in you file, prefacing each table occurrence with "GoZync". In each case the right hand side of the relationship should use the primary key for that table (it's unique ID).
to:
-> Repeat this with each table you want to add or edit records for in you file, prefacing each table occurrence with "GoZync".

-> Revisit
each relationship and, in each case, make sure the right hand side of the relationship uses the primary key for that table (it's unique ID).
May 16, 2011, at 07:18 PM by 166.205.141.213 -
Changed lines 31-32 from:
%newwin center% %width=200px%  [[http://www.seedcode.com/rootimages/stikipad/gozync/invoicesrelationship.png | http://www.seedcode.com/rootimages/stikipad/gozync/invoicesrelationship.png]]
to:
%newwin center% %width=350px%  [[http://www.seedcode.com/rootimages/stikipad/gozync/invoicesrelationship.png | http://www.seedcode.com/rootimages/stikipad/gozync/invoicesrelationship.png]]
May 16, 2011, at 07:17 PM by 166.205.141.213 -
Changed lines 31-35 from:
%newwin center width=150px% [[http://www.seedcode.com/rootimages/stikipad/gozync/invoicesrelationship.png | http://www.seedcode.com/rootimages/stikipad/gozync/invoicesrelationship.png]]


> > screenshot

to:
%newwin center% %width=200px%  [[http://www.seedcode.com/rootimages/stikipad/gozync/invoicesrelationship.png | http://www.seedcode.com/rootimages/stikipad/gozync/invoicesrelationship.png]]
May 16, 2011, at 07:16 PM by 166.205.141.213 -
Changed lines 31-33 from:
%newwin center% [[http://www.seedcode.com/rootimages/stikipad/gozync/invoicesrelationship.png | http://www.seedcode.com/rootimages/stikipad/gozync/invoicesrelationship.png]]]

to:
%newwin center width=150px% [[http://www.seedcode.com/rootimages/stikipad/gozync/invoicesrelationship.png | http://www.seedcode.com/rootimages/stikipad/gozync/invoicesrelationship.png]]

May 16, 2011, at 07:15 PM by 166.205.141.213 -
Changed lines 31-32 from:

to:
%newwin center% [[http://www.seedcode.com/rootimages/stikipad/gozync/invoicesrelationship.png | http://www.seedcode.com/rootimages/stikipad/gozync/invoicesrelationship.png]]]

May 16, 2011, at 07:13 PM by 166.205.141.213 -
Changed lines 29-32 from:
-> Double clicking on the Table Occurrences in the section "Packing and UnPacking" which are related to GoZync. For example,double click on "GoZyncInvoice" and copy the name (GoZyncInvoice) to your clipboard, now select the invoices table in your file, pasting the name "GoZyncInvoice" back in there before you click OK. Next double click on the line between GoZyncInvoice and GoZync, make sure the right hand side of this relationship (the GoZyncInvoice side) uses the primary key (probably the invoice ID) from your table.


to:
-> Double clicking on the Table Occurrences in the section "Packing and UnPacking" which are related to GoZync. For example,double click on "GoZyncInvoice" and copy the name (GoZyncInvoice) to your clipboard, now click where it says "data source" and select the invoices table in your file, pasting the name "GoZyncInvoice" back in there before you click OK. Next double click on the line between GoZyncInvoice and GoZync, make sure the right hand side of this relationship (the GoZyncInvoice side) uses the primary key (probably the invoice ID) from your table.


May 16, 2011, at 07:11 PM by 166.205.141.213 -
Changed lines 21-22 from:
-> Add a file reference for your solution to GoZyncConnector.
to:
-> Add a file reference for your solution to GoZyncConnector. 
Added lines 25-26:
-> From FileMaker's menus, select File / Manage / External Data Sources... and click "New" to create a reference for your served file.
Added lines 31-32:

May 16, 2011, at 06:55 PM by 166.205.141.213 -
Added lines 15-18:
'''1. Back Up Your Files.'''

-> Seriously. If you're doing all this on the server, download one of your server's backups and verify that you can open it without issue. If you're working locally, save a compacted copy of all the files you'll be working with.

Changed lines 21-22 from:
-> Add a file reference for your solution (make sure your solution and GoZyncConnector are in the same place relative to each other as they'll be on the server). You can delete references for the sample Invoice file that ships with GoZync if you won't be using it.
to:
-> Add a file reference for your solution to GoZyncConnector.

-> if you're working locally, make sure your solution and GoZyncConnector are in
the same place relative to each other as they'll be on the server. (Once you're done you can delete references for the sample Invoice file that ships with GoZync if you won't be using it.)
May 16, 2011, at 06:50 PM by 166.205.141.213 -
Added lines 3-4:
In order to add GoZync to your solution you'll be working in both the local (the mobile) file, and in the [[TheFiles | served files]] that are part of GoZync. The work done on both sides of this (the served side and the local side) is very similar and involved teaching GoZync how to translate the information passed in as a [[TheDocument | document]] into the tables and fields of your files.
Changed lines 9-10 from:
GoZyncConnector is the [[TheFiles | served file]] your mobile file will be communicating with. As part of adding GoZync to your solution you'll be teaching GoZyncConnector how to talk to the served file(s) of your solution: you'll teach it how to translate the records (the [[TheDocument | documents]]) sent to it from you mobile file into new or edited records in your served solution.
to:
GoZyncConnector is the [[TheFiles | served file]] your mobile/remote file will be communicating with. As part of adding GoZync to your solution you'll be teaching GoZyncConnector how to talk to the served file(s) of your solution: you'll teach it how to translate the records (the [[TheDocument | documents]]) sent to it from you mobile file into new or edited records in your served solution.
May 16, 2011, at 06:34 PM by 166.205.141.213 -
Changed lines 9-11 from:


to:
GoZyncConnector ships already connected to a simple served solution of our own called "Invoices". The instructions below show how to replace this connection with a connection to your own file.
May 16, 2011, at 06:32 PM by 166.205.141.213 -
May 16, 2011, at 06:32 PM by 166.205.141.213 -
May 16, 2011, at 06:32 PM by 166.205.141.213 -
Changed lines 5-6 from:
'''1. File References.'''
to:
!! Background

GoZyncConnector is the [[TheFiles | served file]] your mobile file will be communicating with. As part of adding GoZync to your solution you'll be teaching GoZyncConnector how to talk to the served file(s) of your solution: you'll teach it how to translate the records (the [[TheDocument | documents]]) sent to it from you mobile file into new or edited records in your served solution.




!! The Work

'''2
. File References.'''
Changed lines 18-19 from:
'''2. Edit the Relationship Graph.'''
to:
'''3. Edit the Relationship Graph.'''
Changed lines 26-27 from:
'''3. Edit Scripts.'''
to:
'''4. Edit Scripts.'''
Changed lines 38-39 from:
'''4.'''
to:
'''5.'''
May 16, 2011, at 06:28 PM by 166.205.141.213 -
Changed lines 1-2 from:
!! In GoZyncConnector
to:
!! Overview

! In GoZyncConnector
Added lines 30-33:

! In the Local / Mobile File

April 14, 2011, at 02:37 PM by 76.22.74.86 -
Changed lines 3-10 from:
1. File References.

Add a file reference for your solution (make sure your solution and GoZyncConnector are in the same place relative to each other as they'll be on the server). You can delete references for the sample Invoice file that ships with GoZync if you won't be using it.

2. Edit the Relationship Graph.

Double clicking on the Table Occurrences in the section "Packing and UnPacking" which are related to GoZync. For example,double click on "GoZyncInvoice" and copy the name (GoZyncInvoice) to your clipboard, now select the invoices table in your file, pasting the name "GoZyncInvoice" back in there before you click OK. Next double click on the line between GoZyncInvoice and GoZync, make sure the right hand side of this relationship (the GoZyncInvoice side) uses the primary key (probably the invoice ID) from your table.
to:
'''1. File References.'''

->
Add a file reference for your solution (make sure your solution and GoZyncConnector are in the same place relative to each other as they'll be on the server). You can delete references for the sample Invoice file that ships with GoZync if you won't be using it.

'''2. Edit the Relationship Graph.'''

->
Double clicking on the Table Occurrences in the section "Packing and UnPacking" which are related to GoZync. For example,double click on "GoZyncInvoice" and copy the name (GoZyncInvoice) to your clipboard, now select the invoices table in your file, pasting the name "GoZyncInvoice" back in there before you click OK. Next double click on the line between GoZyncInvoice and GoZync, make sure the right hand side of this relationship (the GoZyncInvoice side) uses the primary key (probably the invoice ID) from your table.
Changed lines 13-18 from:
Repeat this with each table you want to add or edit records for in you file, prefacing each table occurrence with "GoZync". In each case the right hand side of the relationship should use the primary key for that table (it's unique ID).

3. Edit Scripts.

Find the "Field Mapping..." folder inside the folder named "Talking to Your Files" and edit the first one (named Set Invoice Header Fields). Edit each SetField statement to that it is setting the correct field in your invoices table: you want to find the field that most closely matches the contents of the variable in the SetField step.
to:
-> Repeat this with each table you want to add or edit records for in you file, prefacing each table occurrence with "GoZync". In each case the right hand side of the relationship should use the primary key for that table (it's unique ID).

'''3. Edit Scripts.'''

->
Find the "Field Mapping..." folder inside the folder named "Talking to Your Files" and edit the first one (named Set Invoice Header Fields). Edit each SetField statement to that it is setting the correct field in your invoices table: you want to find the field that most closely matches the contents of the variable in the SetField step.
Changed lines 21-25 from:
Be sure to edit the last Perform Script step, replacing the field used at the end of the script parameter, with your invoice ID field (or the primary key / unique id of the table you're working in).

Do this with each of the field mapping scripts, deleting those you don't need and creating new ones or additional tables you may have.

4.
to:
-> Be sure to edit the last Perform Script step, replacing the field used at the end of the script parameter, with your invoice ID field (or the primary key / unique id of the table you're working in).

-> Do this with each of the field mapping scripts, deleting those you don't need and creating new ones or additional tables you may have.

-> For help with field mapping, read mode here: [[FieldMapping | Field Mapping Tips]].

'''4.'''
April 14, 2011, at 02:39 AM by 76.22.74.86 -
Added lines 21-22:
Be sure to edit the last Perform Script step, replacing the field used at the end of the script parameter, with your invoice ID field (or the primary key / unique id of the table you're working in).
April 14, 2011, at 02:37 AM by 76.22.74.86 -
Changed lines 21-22 from:

to:
Do this with each of the field mapping scripts, deleting those you don't need and creating new ones or additional tables you may have.

4.
April 14, 2011, at 02:28 AM by 76.22.74.86 -
Changed lines 15-22 from:
3. Edit Scripts.
to:
3. Edit Scripts.

Find the "Field Mapping..." folder inside the folder named "Talking to Your Files" and edit the first one (named Set Invoice Header Fields). Edit each SetField statement to that it is setting the correct field in your invoices table: you want to find the field that most closely matches the contents of the variable in the SetField step.

> > where did these variables come from, you might ask...


April 14, 2011, at 02:22 AM by 76.22.74.86 -
Changed lines 3-6 from:
1. Add a file reference for your solution (make sure your solution and GoZyncConnector are in the same place relative to each other as they'll be on the server).

2. Edit the Relationship Graph, double
clicking on the Table Occurrences in the section "Packing and UnPacking" which are related to GoZync. For example,double click on "GoZyncInvoice" and copy the name (GoZyncInvoice) to your clipboard, now select the invoices table in your file, pasting the name "GoZyncInvoice" back in there before you click OK. Next double click on the line between GoZyncInvoice and GoZync, make sure the right hand side of this relationship (the GoZyncInvoice side) uses the primary key (probably the invoice ID) from your table.
to:
1. File References.

Add
a file reference for your solution (make sure your solution and GoZyncConnector are in the same place relative to each other as they'll be on the server). You can delete references for the sample Invoice file that ships with GoZync if you won't be using it.

2. Edit the Relationship Graph.

Double
clicking on the Table Occurrences in the section "Packing and UnPacking" which are related to GoZync. For example,double click on "GoZyncInvoice" and copy the name (GoZyncInvoice) to your clipboard, now select the invoices table in your file, pasting the name "GoZyncInvoice" back in there before you click OK. Next double click on the line between GoZyncInvoice and GoZync, make sure the right hand side of this relationship (the GoZyncInvoice side) uses the primary key (probably the invoice ID) from your table.
Changed line 15 from:
3.
to:
3. Edit Scripts.
April 14, 2011, at 02:21 AM by 76.22.74.86 -
Changed lines 9-10 from:
Repeat this with each table you want to add or edit records for in you file, prefacing each table occurrence with "GoZync"
to:
Repeat this with each table you want to add or edit records for in you file, prefacing each table occurrence with "GoZync". In each case the right hand side of the relationship should use the primary key for that table (it's unique ID).
April 14, 2011, at 02:20 AM by 76.22.74.86 -
Added lines 5-11:
2. Edit the Relationship Graph, double clicking on the Table Occurrences in the section "Packing and UnPacking" which are related to GoZync. For example,double click on "GoZyncInvoice" and copy the name (GoZyncInvoice) to your clipboard, now select the invoices table in your file, pasting the name "GoZyncInvoice" back in there before you click OK. Next double click on the line between GoZyncInvoice and GoZync, make sure the right hand side of this relationship (the GoZyncInvoice side) uses the primary key (probably the invoice ID) from your table.

> > screenshot

Repeat this with each table you want to add or edit records for in you file, prefacing each table occurrence with "GoZync"

3.
April 14, 2011, at 02:15 AM by 76.22.74.86 -
April 14, 2011, at 02:15 AM by 76.22.74.86 -
Added lines 1-4:
!! In GoZyncConnector

1. Add a file reference for your solution (make sure your solution and GoZyncConnector are in the same place relative to each other as they'll be on the server).

(855) SEEDCODE
support@seedcode.com
Follow us: