GoMaps

Pro Maps Integration

GoMaps.ProMapsIntegration History

Hide minor edits - Show changes to output

January 22, 2016, at 02:44 AM by 192.88.134.15 -
Changed lines 147-148 from:
--> '''Some layout objects to check...'''
to:
-> '''Some layout objects to check...'''
Changed line 163 from:
--> '''Some script steps to check...'''
to:
-> '''Some script steps to check...'''
January 22, 2016, at 02:44 AM by 192.88.134.15 -
Added lines 147-148:
--> '''Some layout objects to check...'''
Added lines 163-164:
--> '''Some script steps to check...'''
Changed lines 166-167 from:
-->Perform Find step
to:
--> Check the Perform Find step
Changed line 182 from:
-> A couple of tips on field mapping:
to:
-> '''A couple of tips on field mapping the popover setup...'''
January 22, 2016, at 02:02 AM by 192.88.134.15 -
Changed line 123 from:
--> Trigger: OnLayoutExit (in Browse Mode and Find Mode)
to:
--> Trigger: OnLayoutExit (in Browse Mode Mode)
Changed line 129 from:
--> Trigger: OnRecordLoad (in Browse and Find Mode)
to:
--> Trigger: OnRecordLoad (in Browse Mode)
January 22, 2016, at 02:00 AM by 192.88.134.15 -
Changed line 122 from:
--> Layout: Property_Detail (1 trigger)
to:
--> Layout: Property Details (1 trigger)
Changed line 128 from:
--> Layout: Properties_Map (1 trigger)
to:
--> Layout: Properties Map (1 trigger)
January 22, 2016, at 01:55 AM by 192.88.134.15 -
Changed line 91 from:
-> Here is how to create that first layout: Create the layout "Home" and then visit Layout Setup and uncheck the box beside "Show field frames when record is active". Base the layout on the Classic theme. Also uncheck the box to enable QuickFind. Keep duplicating and renaming layouts making sure to switch "Show records from" to match the associated table in ProMaps.
to:
-> Here is how to create that first layout: Create the layout "Home" and then visit Layout Setup and uncheck the box beside "Show field frames when record is active". Base the layout on the theme "Classic Refined: Cool". Also uncheck the box to enable QuickFind. Keep duplicating and renaming layouts making sure to switch "Show records from" to match the associated table in ProMaps.
January 22, 2016, at 01:51 AM by 192.88.134.15 -
Added lines 58-63:

-> '''3.3''' If you're using our media table, you're all set. But if you're using your own, ProMaps has a routine to export thumbnails of your container fields for use in the map. It will export any media that has a thumbnail image so you can use that to control which images get exported.

-> In order for all that to work you'll need to add the gm_Thumbnail field to your media table AND rename your id, foreign key (the field that links your photo to the property, if any) and container field to match those in media. Again, you can rename these fields back when you're done.

-> Once those are rented, add the z_...fields from ProMaps' media table to your media file.
January 21, 2016, at 09:25 PM by 192.88.134.15 -
Changed lines 39-40 from:
-> '''3.2''' The required fields are all prefixed with "gm" but you may want to just add all of the fields in the ProMaps "Properties" table for the most seamless integration. Once the fields are added you can rename them to whatever you would like.
to:
-> '''3.1''' The required fields are all prefixed with "gm" but you may want to just add all of the fields in the ProMaps "Properties" table for the most seamless integration. Once the fields are added you can rename them to whatever you would like.
Changed lines 43-44 from:
-> If you are using FileMaker Pro you will need to create these fields in your solution. You can copy and paste the field names themselves and the calculation contents if it is a calculation field.
to:
-> If you aren't using Advanced and just have FileMaker Pro you will need to create these fields in your solution. You can copy and paste the field names themselves and the calculation contents if it is a calculation field.
Changed line 47 from:
-> '''3.1''' You will want an address, city, state, postal code in your solution. So it is preferred that you create all of the fields that are in the ProMaps "Properties" table in your solution. This will create the most seamless experience once initially integrated. Once things are working properly then fields can be renamed or deleted. At the very least "Status", "Type", and the address fields will make things work out of the box so make sure to add those.
to:
-> '''3.2''' You will want an address, city, state, postal code in your solution. So it is preferred that you create all of the fields that are in the ProMaps "Properties" table in your solution. This will create the most seamless experience once initially integrated. Once things are working properly then fields can be renamed or deleted. At the very least "Status", "Type", and the address fields will make things work out of the box so make sure to add those.
Changed line 37 from:
-> Add new fields to your events table from SeedCode ProMaps' "Properties" table:
to:
-> Add new fields to '''your''' properties table from SeedCode ProMaps' "Properties" table:
April 07, 2015, at 01:07 PM by 142.4.217.188 -
Added lines 6-7:

(:include NeedHelp:)
February 13, 2015, at 06:30 AM by 142.4.217.188 -
Deleted lines 168-170:

/*-->'''Map Search Mode''' script
-->Set Variable $$sc_searchDataPackage*/
February 13, 2015, at 06:30 AM by 142.4.217.188 -
Deleted lines 145-147:
-->'''Properties List''' layout: “Show these Properties On Map” button
-->Script parameter for “Show List on Map” script

Changed lines 170-173 from:
-->'''Map Search Mode''' script
-->Set Variable $$sc_searchDataPackage

-> A couple tips on field mapping:
to:
/*-->'''Map Search Mode''' script
-->Set Variable $$sc_searchDataPackage*/

-> A couple of tips on field mapping:
February 11, 2015, at 02:25 AM by 142.4.217.188 -
Changed line 164 from:
-->Fields in Set Variable step calcs ($sc_propertyType, $sc_propertyStatus, -->$$sc_mapDataPackage)
to:
-->Fields in Set Variable step calcs ($sc_propertyType, $sc_propertyStatus, $$sc_mapDataPackage)
February 11, 2015, at 02:22 AM by 142.4.217.188 -
Changed lines 139-163 from:
“Properties Detail” layout
Remap off
-screen gm_Geolocation field
Remap all local on-screen fields

“Properties List” layout: gm_MarkerImage field as button
Script parameter for “Show Property on Map (propertyID)” script

“Properties List” layout: “Show these Properties On Map” button
Script parameter for “Show List on Map” script

“Popover Setup” layout
Remap all local off
-screen “Utility Fields”
Remap all local on-screen fields

“ProMaps Properties Utility” layout
gm_Geolocation field (off
-screen)

“ViewPropertyRecord (propertyID)” script
Perform Find step

“Address OnSave” script
Set Variable value
(Address, City, State fields)
Set Field gm_GeoLocation

-->“Filters And Headers” script
to:
-->'''Properties Detail''' layout
-->
Remap off-screen gm_Geolocation field
-->Remap all local on-screen fields

-->'''Properties List''' layout: gm_MarkerImage field as button
-->Script parameter for “Show Property on Map (propertyID)” script

-->'''Properties List''' layout: “Show these Properties On Map” button
-->Script parameter for “Show List on Map” script

-->'''Popover Setup''' layout
-->
Remap all local off-screen “Utility Fields”
-->Remap all local on-screen fields

-->'''ProMaps Properties Utility''' layout
-->gm_Geolocation field
(off-screen)

-->'''ViewPropertyRecord (propertyID)''' script
-->Perform Find step

-->'''Address OnSave''' script
-->Set Variable value (Address, City, State fields)
-->Set Field gm_GeoLocation

-->'''Filters And Headers'''
script
Changed line 166 from:
-->“Check Property Integrity” script
to:
-->'''Check Property Integrity''' script
Changed line 170 from:
-->“GeoCodeAddress For ProMaps” script
to:
-->'''GeoCodeAddress For ProMaps''' script
Changed line 173 from:
-->“Map Search Mode” script
to:
-->'''Map Search Mode''' script
February 11, 2015, at 02:20 AM by 142.4.217.188 -
Changed lines 163-174 from:
“Filters And Headers” script
Fields in Set Variable step calcs ($sc_propertyType, $sc_propertyStatus, $$sc_mapDataPackage)

“Check Property Integrity” script
3 Perform Find steps
Replace Field Contents

“GeoCodeAddress For ProMaps” script
Perform Script parameters

“Map Search Mode” script
Set Variable $$sc_searchDataPackage
to:
-->“Filters And Headers” script
-->Fields in Set Variable step calcs ($sc_propertyType, $sc_propertyStatus, -->$$sc_mapDataPackage)

-->“Check Property Integrity” script
-->3 Perform Find steps
-->Replace Field Contents

-->“GeoCodeAddress For ProMaps” script
-->Perform Script parameters

-->“Map Search Mode” script
-->Set Variable $$sc_searchDataPackage
February 11, 2015, at 01:49 AM by 142.4.217.188 -
Added lines 136-174:

-> '''11.3 If you are using your own Properties table,''' look at each of the elements listed below and fix any broken field references therein. Be sure to also uncomment any calculations as necessary. If you are unsure which fields should be used, refer to a stock copy of the ProMaps file.

“Properties Detail” layout
Remap off-screen gm_Geolocation field
Remap all local on-screen fields

“Properties List” layout: gm_MarkerImage field as button
Script parameter for “Show Property on Map (propertyID)” script

“Properties List” layout: “Show these Properties On Map” button
Script parameter for “Show List on Map” script

“Popover Setup” layout
Remap all local off-screen “Utility Fields”
Remap all local on-screen fields

“ProMaps Properties Utility” layout
gm_Geolocation field (off-screen)

“ViewPropertyRecord (propertyID)” script
Perform Find step

“Address OnSave” script
Set Variable value (Address, City, State fields)
Set Field gm_GeoLocation

“Filters And Headers” script
Fields in Set Variable step calcs ($sc_propertyType, $sc_propertyStatus, $$sc_mapDataPackage)

“Check Property Integrity” script
3 Perform Find steps
Replace Field Contents

“GeoCodeAddress For ProMaps” script
Perform Script parameters

“Map Search Mode” script
Set Variable $$sc_searchDataPackage
February 13, 2014, at 11:26 PM by 50.132.84.245 -
Changed line 133 from:
-> '''11.1 General Setup.''' Navigate to the layout "ProMaps Setup" and click on the button "Compile Map Data And Settings" to load all of the default settings. Here you can edit the default image (remove the default image if you aren't going to use images). You can also edit or add new map marker icons. We have provided a few different colors to get you started.
to:
-> '''11.1 General Setup.''' Navigate to the layout "ProMaps Setup" and make sure there are zero records (delete the one you created if there is one. Click on the button "Compile Map Data And Settings" to load all of the default settings. Here you can edit the default image (remove the default image if you aren't going to use images). You can also edit or add new map marker icons. We have provided a few different colors to get you started.
February 13, 2014, at 11:17 PM by 50.132.84.245 -
Changed lines 133-135 from:
-> '''11.1 General Setup.''' Navigate to the layout "ProMaps Setup - Click on the button "Compile Map Data And Settings" to load all of the default settings. Here you can edit the default image (remove the default image if you aren't going to use images). You can also edit or add new map marker icons. We have provided a few different colors to get you started.

-> '''11.2 Popovers (Map your data).''' Click the "Popover" button in the navigation in the upper right. This is where you will map which fields will show up in map popovers. If you have used the same field names as we do in ProMaps things should already be mapped correctly but you may want to make some modifications depending on what you want to display. You can read up on editing the popover here [[ProMapsPopovers | here]].
to:
-> '''11.1 General Setup.''' Navigate to the layout "ProMaps Setup" and click on the button "Compile Map Data And Settings" to load all of the default settings. Here you can edit the default image (remove the default image if you aren't going to use images). You can also edit or add new map marker icons. We have provided a few different colors to get you started.

-> '''11.2 Popovers (Map your data).''' Click the "Popover" button in the upper right. This is where you will map which fields will show up in map popovers. If you have used the same field names as we do in ProMaps things should already be mapped correctly but you may want to make some modifications depending on what you want to display. You can read up on editing the popover here [[ProMapsPopovers | here]].
February 13, 2014, at 09:20 PM by 50.132.84.245 -
Changed line 127 from:
->To lookup geo codes in your layout It works best to set the geo code lookup to trigger based on the OnObjectSave script trigger. You can set any field to trigger the geo code lookup by assigning the OnObjectSave trigger to run the script called "GeoCodeAddress (address, tempObjectName, resultFieldName)". The recommended fields to set this trigger on are the "Address", "City", and "State" fields. You can see the best method for passing in the appropriate script parameter on those fields in the "ProMaps" file. The "gm_GeoLocation" field does need to be on the layout for the lookup to work but you can put that field off the layout boundary so it isn't visible.
to:
->To lookup geo codes in your layout It works best to set the geo code lookup to trigger based on the OnObjectSave script trigger. You can set any field to trigger the geo code lookup by assigning the OnObjectSave trigger to run the script called "GeoCodeAddress For ProMaps". The recommended fields to set this trigger on are the "Address", "City", and "State" fields. The "gm_GeoLocation" field ''does'' need to be on the layout for the lookup to work but you can put that field off the layout boundary so it isn't visible.
February 13, 2014, at 09:14 PM by 50.132.84.245 -
Changed line 112 from:
-> Assign script triggers. Since layout level script triggers don't come over when you copy and paste layout elements, you'll have to recreate these. Fortunately there are only a few.
to:
-> Since layout level script triggers don't come over when you copy and paste layout elements, you'll have to recreate these. Fortunately there are only a few.
February 13, 2014, at 09:13 PM by 50.132.84.245 -
Deleted lines 109-112:
--> Now you may already have layouts you want to use for your properties. If so, you will probably want to set up that layout to automatically lookup geo codes when an address is entered:

-->To lookup geo codes in your layout It works best to set the geo code lookup to trigger based on the OnObjectSave script trigger. You can set any field to trigger the geo code lookup by assigning the OnObjectSave trigger to run the script called "GeoCodeAddress (address, tempObjectName, resultFieldName)". The recommended fields to set this trigger on are the "Address", "City", and "State" fields. You can see the best method for passing in the appropriate script parameter on those fields in the "ProMaps" file. The "gm_GeoLocation" field does need to be on the layout for the lookup to work but you can put that field off the layout boundary so it isn't visible.

Added lines 124-127:

-> Now you may already have layouts you want to use for your properties. If so, you will probably want to set up that layout to automatically lookup geo codes when an address is entered:

->To lookup geo codes in your layout It works best to set the geo code lookup to trigger based on the OnObjectSave script trigger. You can set any field to trigger the geo code lookup by assigning the OnObjectSave trigger to run the script called "GeoCodeAddress (address, tempObjectName, resultFieldName)". The recommended fields to set this trigger on are the "Address", "City", and "State" fields. You can see the best method for passing in the appropriate script parameter on those fields in the "ProMaps" file. The "gm_GeoLocation" field does need to be on the layout for the lookup to work but you can put that field off the layout boundary so it isn't visible.
February 13, 2014, at 07:50 PM by 50.132.84.245 -
Added lines 99-100:

-> You may want to backup your work again at this point.
February 13, 2014, at 07:48 PM by 50.132.84.245 -
Added line 49:
--> _id (the primary key / unique ID for your table)
Added lines 97-98:

-> Look in the import log after importing these scripts and you should see that they all came in with zero errors. If you do see errors, then either the field names or table names you entered above don't match those in ProMaps. Delete the imported scripts, correct the field or table names, and add the scripts again until you get zero errors.
February 13, 2014, at 07:42 PM by 50.132.84.245 -
Changed lines 35-38 from:
-> '''3.1''' Add new fields to your events table from SeedCode ProMaps' "Properties" table:

-> The required fields are all prefixed with "gm" but you may want to just add all of the fields in the ProMaps "Properties" table for the most seamless integration. Once the fields are added you can rename them to whatever you would like.
to:
-> Add new fields to your events table from SeedCode ProMaps' "Properties" table:

-> '''3.2''' The required fields are all prefixed with "gm" but you may want to just add all of the fields in the ProMaps "Properties" table for the most seamless integration. Once the fields are added you can rename them to whatever you would like.
Changed lines 45-47 from:
-> '''3.2''' Fields that don't begin with a "gm" are not required but you will probably want them in your solution too. For example, you will probably want an address, city, state, postal code in your solution. So it is preferred that you create all of the fields that are in the ProMaps "Properties" table in your solution. This will create the most seamless experience once initially integrated. Once things are working properly then fields can be renamed or deleted. At the very least "Status", "Type", and the address fields will make things work out of the box so make sure to add those.

->The
address fields we use when generating Geo Location Codes are:
to:
-> '''3.1''' You will want an address, city, state, postal code in your solution. So it is preferred that you create all of the fields that are in the ProMaps "Properties" table in your solution. This will create the most seamless experience once initially integrated. Once things are working properly then fields can be renamed or deleted. At the very least "Status", "Type", and the address fields will make things work out of the box so make sure to add those.

->If you have address fields already you'll want to rename yours to
the names we use when generating Geo Codes: you can change your field names back after the integration is complete. The address fields we use when generating Geo Location Codes are:
February 13, 2014, at 07:34 PM by 50.132.84.245 -
Changed lines 90-93 from:
--> Now you may already have layouts you want to use for your properties. If so, you will probably want to set up that layout to automatically lookup geo codes when an address is entered:

-->To lookup geo codes in your layout It works best to set the geo code lookup to trigger based on the OnObjectSave script trigger. You can set any field to trigger the geo code lookup by assigning the OnObjectSave trigger to run the script called "GeoCodeAddress (address, tempObjectName, resultFieldName)". The recommended fields to set this trigger on are the "Address", "City", and "State" fields. You can see the best method for passing in the appropriate script parameter on those fields in the "ProMaps" file. The "gm_GeoLocation" field does need to be on the layout for the lookup to work but you can put that field off the layout boundary so it isn't visible.

to:
Added lines 104-107:

--> Now you may already have layouts you want to use for your properties. If so, you will probably want to set up that layout to automatically lookup geo codes when an address is entered:

-->To lookup geo codes in your layout It works best to set the geo code lookup to trigger based on the OnObjectSave script trigger. You can set any field to trigger the geo code lookup by assigning the OnObjectSave trigger to run the script called "GeoCodeAddress (address, tempObjectName, resultFieldName)". The recommended fields to set this trigger on are the "Address", "City", and "State" fields. You can see the best method for passing in the appropriate script parameter on those fields in the "ProMaps" file. The "gm_GeoLocation" field does need to be on the layout for the lookup to work but you can put that field off the layout boundary so it isn't visible.
February 13, 2014, at 07:34 PM by 50.132.84.245 -
February 13, 2014, at 07:25 PM by 50.132.84.245 -
Changed lines 80-83 from:
-> ''Note: it is important that you don't already have any layouts (or layout folders) with the same name as any of the layouts below. If you do, please rename your layouts or folders before continuing.''

-> Here is how to create that first layout: Create the layout and then visit Layout Setup and uncheck the box beside "Show field frames when record is active". Base the layout on the Classic theme. Also uncheck the box to enable QuickFind. Keep duplicating and renaming layouts making sure to switch "Show records from" to match the associated table shown in the list below.
to:
-> ''Note: it is important that you don't already have any layouts (or layout folders) with the same name as any of the ProMaps layouts. If you do, please rename your layouts or folders before continuing.''

-> Here is how to create that first layout: Create the layout "Home" and then visit Layout Setup and uncheck the box beside "Show field frames when record is active". Base the layout on the Classic theme. Also uncheck the box to enable QuickFind. Keep duplicating and renaming layouts making sure to switch "Show records from" to match the associated table in ProMaps.
Changed line 88 from:
-> Finally, you may delete the default layouts created when you imported tables in step 3 if you would like. This is note necessary but if you want to keep your layouts to a minimum they are not required.
to:
-> Finally, you may delete the default layouts created when you imported tables in step 2 if you would like. This is note necessary but if you want to keep your layouts to a minimum they are not required.
February 13, 2014, at 07:20 PM by 50.132.84.245 -
Changed line 64 from:
-> Select File / Manage / Database and navigate to the Relationships tab where you can see the "relationship graph" for your file. If your properties table is not called "Properties" you will need to rename your TO. Locate your existing properties table occurrence (the table that has the records you want to see on the map) and name it "Properties" (make sure there are no spaces in the table occurrence name). You can change this name later. If you are using the ProMaps properties table it should already be named "Properties" and you won't need to change anything.
to:
-> Select File / Manage / Database and navigate to the Relationships tab where you can see the "relationship graph" for your file. If your properties table is not called "Properties" you will need to rename your TO for the rest of the integration--you can rename it back later. Locate your existing properties table occurrence (the table that has the records you want to see on the map) and name it "Properties" (make sure there are no spaces in the table occurrence name). You can change this name later. If you are using the ProMaps properties table it should already be named "Properties" and you won't need to change anything.
February 13, 2014, at 07:09 PM by 50.132.84.245 -
Added lines 59-60:

-> This is one of the few things FileMaker Advanced does ''not'' make easier: you'll need to recreate these by hand, so take your time.
February 13, 2014, at 06:58 PM by 50.132.84.245 -
Changed lines 21-26 from:
-> If you want to use the "Properties" table in ProMaps as your properties table, instead of a table you already have, you can skip to step 3 and start importing the tables.

'''2. Fields.'''

-> '''2.1''' Add new fields to your events table from SeedCode ProMaps' "Properties" table:
to:
-> If you want to use the "Properties" table in ProMaps as your properties table, instead of a table you already have, you can skip step 3 below.

'''2. Tables.'''

-> Import these three tables into your file from SeedCode ProMaps: MapSettings, MapMarkerIcons and Areas. If you don't already have a properties table you can import ours as well: if you do, you'll want to import our Media table along with it.

-> If you're using FileMaker Advanced, you can just copy and paste the tables. If you don't have Advanced, from your file select File / Import Records... / File and then select the ProMaps file. Select the first of the tables to import and for the target, select "New Table". FileMaker will create the new table and calcs for you but you'll have to come back and uncomment some of the calcs that couldn't find the items needed: come back after you've imported all three tables this way and remove the leading /* and trailing */ from your calcs.

-> If you don't have Advanced, and that sounds like too much, we'd be happy to complete this step for you, just send us your file.

-> If you don't plan on using images in the map popovers or want to use existing images you don't need to import the "Media" table.

'''3. Fields.'''

-> '''3
.1''' Add new fields to your events table from SeedCode ProMaps' "Properties" table:
Changed lines 39-40 from:
->If you are using FileMaker Pro Advanced you can copy the fields from ProMaps and paste them into the Properties table in your solution. If you are using FileMaker Pro you will need to create these fields in your solution. You can copy and paste the field names themselves and the calculation contents if it is a calculation field.
to:
->If you are using FileMaker Pro Advanced you can copy the fields from ProMaps and paste them into the Properties table in your solution. None of the fields require modification at this point; you'll come back later to edit the field "gm_MarkerName".

->
If you are using FileMaker Pro you will need to create these fields in your solution. You can copy and paste the field names themselves and the calculation contents if it is a calculation field.
Changed lines 45-46 from:
-> '''2.2''' Fields that don't begin with a "gm" are not required but you will probably want them in your solution too. For example, you will probably want an address, city, state, postal code in your solution. So it is preferred that you create all of the fields that are in the ProMaps "Properties" table in your solution. This will create the most seamless experience once initially integrated. Once things are working properly then fields can be renamed or deleted. At the very least "Status", "Type", and the address fields will make things work out of the box so make sure to add those.
to:
-> '''3.2''' Fields that don't begin with a "gm" are not required but you will probably want them in your solution too. For example, you will probably want an address, city, state, postal code in your solution. So it is preferred that you create all of the fields that are in the ProMaps "Properties" table in your solution. This will create the most seamless experience once initially integrated. Once things are working properly then fields can be renamed or deleted. At the very least "Status", "Type", and the address fields will make things work out of the box so make sure to add those.
Deleted lines 54-63:

'''3. Tables.'''

-> Import all tables into your file from SeedCode ProMaps: MapSettings, Properties (only import if using our table), Media (only import if using our table), MapMarkerIcons and Areas.

-> If you're using FileMaker Advanced, you can just copy and paste the tables. If you don't have Advanced, from your file select File / Import Records... / File and then select the ProMaps file. Select the first of the tables to import and for the target, select "New Table". FileMaker will create the new table and calcs for you but you'll have to come back and uncomment some of the calcs that couldn't find the items needed: come back after you've imported all three tables this way and remove the leading /* and trailing */ from your calcs.

-> If you don't have Advanced, and that sounds like too much, we'd be happy to complete this step for you, just send us your file.

-> If you don't plan on using images in the map popovers or want to use existing images you don't need to import the "Media" table.
May 14, 2013, at 12:03 AM by 98.203.211.206 -
Changed lines 139-140 from:
'''Next Steps / Going Further''' 
to:
'''Next Steps / Going Further'''
May 14, 2013, at 12:03 AM by 98.203.211.206 -
Added lines 131-132:
--> Make sure that the utility fields to the right of the visible area on the Popover layout are mapped. Check that the _id field is mapped to your property ID field.
Added lines 139-141:
'''Next Steps / Going Further'''
->The map in ProMaps is context independent. This means you can Paste the map and filter fields onto any layout and it will work without modification. So feel free to add the map anywhere you need it regardless of the table.

May 13, 2013, at 11:59 PM by 98.203.211.206 -
Added lines 35-43:
->The address fields we use when generating Geo Location Codes are:

--> Address
--> City
--> State
--> PostalCode

->Please make sure to rename your existing fields to match or add these to your table if you aren't using the ProMaps properties table.

May 13, 2013, at 08:52 PM by 98.203.211.206 -
May 13, 2013, at 08:52 PM by 98.203.211.206 -
Changed lines 114-115 from:
-> '''11.1 General Setup.''' Navigate to the layout "ProMaps Setup - Here you can edit the default image (remove the default image if you aren't going to use images). You can also edit or add new map marker icons. We have provided a few different colors to get you started.
to:
-> '''11.1 General Setup.''' Navigate to the layout "ProMaps Setup - Click on the button "Compile Map Data And Settings" to load all of the default settings. Here you can edit the default image (remove the default image if you aren't going to use images). You can also edit or add new map marker icons. We have provided a few different colors to get you started.
May 13, 2013, at 08:22 PM by 98.203.211.206 -
May 13, 2013, at 08:22 PM by 98.203.211.206 -
Changed lines 77-80 from:
-> Now you may already have layouts you want to use for your properties. If so, you will probably want to set up that layout to automatically lookup geo codes when an address is entered:

->To lookup geo codes in your layout It works best to set the geo code lookup to trigger based on the OnObjectSave script trigger. You can set any field to trigger the geo code lookup by assigning the OnObjectSave trigger to run the script called "GeoCodeAddress (address, tempObjectName, resultFieldName)". The recommended fields to set this trigger on are the "Address", "City", and "State" fields. You can see the best method for passing in the appropriate script parameter on those fields in the "ProMaps" file. The "gm_GeoLocation" field does need to be on the layout for the lookup to work but you can put that field off the layout boundary so it isn't visible.
to:
--> Now you may already have layouts you want to use for your properties. If so, you will probably want to set up that layout to automatically lookup geo codes when an address is entered:

-->To lookup geo codes in your layout It works best to set the geo code lookup to trigger based on the OnObjectSave script trigger. You can set any field to trigger the geo code lookup by assigning the OnObjectSave trigger to run the script called "GeoCodeAddress (address, tempObjectName, resultFieldName)". The recommended fields to set this trigger on are the "Address", "City", and "State" fields. You can see the best method for passing in the appropriate script parameter on those fields in the "ProMaps" file. The "gm_GeoLocation" field does need to be on the layout for the lookup to work but you can put that field off the layout boundary so it isn't visible.
May 13, 2013, at 08:00 PM by 98.203.211.206 -
Deleted lines 92-93:
%center%  http://www.seedcode.com/rootimages/stikipad/pro12/layoutwidth.png
May 13, 2013, at 07:56 PM by 98.203.211.206 -
Deleted lines 42-43:
%center%  http://www.seedcode.com/rootimages/stikipad/pro12/graph1.png
Changed lines 59-60 from:
%center%  http://www.seedcode.com/rootimages/stikipad/pro12/graph2.png
to:
%center%  http://www.seedcode.com/rootimages/stikipad/promaps/graph.png
May 13, 2013, at 07:30 PM by 98.203.211.206 -
Changed lines 120-121 from:
-> '''11.2 Popovers (Map your data).''' Click the "Popover" button in the navigation in the upper right. This is where you will map which fields will show up in map popovers. If you have used the same field names as we do in ProMaps things should already be mapped correctly but you may want to make some modifications depending on what you want to display. interesting to create a [[MultiLineEvents | multi-line event]] display.
to:
-> '''11.2 Popovers (Map your data).''' Click the "Popover" button in the navigation in the upper right. This is where you will map which fields will show up in map popovers. If you have used the same field names as we do in ProMaps things should already be mapped correctly but you may want to make some modifications depending on what you want to display. You can read up on editing the popover here [[ProMapsPopovers | here]].
Changed lines 124-146 from:
--> Events with just a single date should have a start date: if your event has just an end date the calendar will fail. The same goes for times: if there is only one time, make it the start time.

--> Don't use calcs for things like the dates, times, or resources
. The calendar wants to edit these values when you drag items around, and it can't edit calcs. Use auto-enter calculations instead if you must.

'''12. Clean Up.'''

-> Rename your Sample Events table occurrence to something that makes more sense for you
. And add the script "Upon Opening" to your file's opening script, removing the go to layout stuff if you'd like. If you're using multiple windows or renaming windows in your own upon opening script, you may want to run our Upon Opening routine the first time your users open the calendar in a new window rather than at the beginning. 

'''13. Run a Script.'''

-> That's it. Run the script "Initialize ProMaps" script and you should now be able to use the map.

Enjoy!

!! Next Steps

Now that you've gotten up and running, you'll likely want to return to a few places and do a more thorough job of mapping the calendar to your events. Here are the places we like to revisit:

-> Event Details. You may have left some fields unmapped here. You'll probably also want to double check the arrows / buttons which jump from an event to its related contact or project. Learn more about these here: [[jump to my contact]].

-> Event List. You may have unmapped fields here as well. Also be sure to enter layout mode and double check the summary parts on the [[Event List]].

-> To-Do Details and List. If you're using the To-Do list, you likely skipped mapping some fields on its detail and list layouts as well.
to:
--> The fields are managed based on their object names. Please don't add new fields to the layout, make sure to edit existing fields to keep their appropriate object name.

--> Try to avoid using complex calculations or summary fields as this will slow down the map.

'''12. Run a Script
.'''

-> That's it. Run the script "Compile Map Data And Settings" to compile all of your settings and generate any missing geo location codes
. You should now be able to use the map.

Enjoy!
May 13, 2013, at 06:39 PM by 98.203.211.206 -
Changed lines 79-80 from:
-> Now you may already have layouts you want to use for your properties. If so, take a moment to read about that here: using [[your own Event layouts]].
to:
-> Now you may already have layouts you want to use for your properties. If so, you will probably want to set up that layout to automatically lookup geo codes when an address is entered:

->To lookup geo codes in your layout It works best to set the geo code lookup to trigger based on the OnObjectSave script trigger. You can set any field to trigger the geo code lookup by assigning the OnObjectSave trigger to run the script called "GeoCodeAddress (address, tempObjectName, resultFieldName)". The recommended fields to set this trigger on are the "Address", "City", and "State" fields. You can see the best method for passing in the appropriate script parameter on those fields in the "ProMaps" file. The "gm_GeoLocation" field does need to be on the layout for the lookup to work but you can put that field off the layout boundary so it isn't visible
.
Changed lines 118-121 from:
-> '''11.1 General Setup.''' Navigate to the layout "ProMaps Setup - On Startup..." and "Load Source Settings at Startup --- Describe Your Sources Here ---" and follow the comments throughout the script, changing settings and field mappings as necessary.

-> '''11.2 Map your data.''' Go
to the layout "Source No 1" (in the Developer layout folder) and follow the directions on the layout to map the fields there to the fields in your SampleEvents table. Map the "Summary" to a simple field for now like your event's title, just to get you up and running, then return here and try mapping the summary to something more interesting to create a [[MultiLineEvents | multi-line event]] display.
to:
-> '''11.1 General Setup.''' Navigate to the layout "ProMaps Setup - Here you can edit the default image (remove the default image if you aren't going to use images). You can also edit or add new map marker icons. We have provided a few different colors to get you started.

-> '''11.2 Popovers
(Map your data).''' Click the "Popover" button in the navigation in the upper right. This is where you will map which fields will show up in map popovers. If you have used the same field names as we do in ProMaps things should already be mapped correctly but you may want to make some modifications depending on what you want to display. interesting to create a [[MultiLineEvents | multi-line event]] display.
May 13, 2013, at 06:05 PM by 98.203.211.206 -
Changed lines 59-60 from:
-> '''6.1 Relationships Part 1.''' Staying on the Relationships tab, link "CalendarRows" to "CalendarInterface" to "CalendarColors" as shown below. Double check that the table occurrence names match what we have in the sample file, and make sure the open end of the ≥ operator is pointing toward "CalendarInterface":
to:
->Staying on the Relationships tab, link "MapSettings" to "MapMarkerIcons" and to "Areas" as shown below. Double check that the table occurrence names match what we have in the ProMaps file, and make sure they are both cartesian joins ("X").
Changed lines 63-76 from:
-> At this point, if you want to show event colors in list view as we do in the Event List or Event Detail layouts, copy our field "z_sc_ColorCalc" from SampleEvents and add it to your events table. Remove the /* and */ from the beginning and end of the calc and replace our use of the field "status" with the equivalent field in your events table: this is the field we used to color code events in the calendar.

-> '''6.5. Relationships Part 2.''' ''If you intend to remove the Gantt chart you can skip this section.''

-> If you'll be using the Gantt Chart you'll want to connect a few more things in the graph. First, create a relationship from CalendarRows to SampleEvents like this, where "id" is the primary key (the unique ID) in your events table. :

%center width="500%  http://www.seedcode.com/rootimages/stikipad/pro12/graph3.png

-> Then attach SampleEvents to your Contacts, Projects, and possibly your Phases table occurrences, as shown here:

%center% http://www.seedcode.com/rootimages/stikipad/pro12/graph4.png

-> It probably make sense to create new instances of these to attach to SampleEvents, but you don't have to. You'll likely want to rename your table occurrences to "Sample..." for now so that items pasted in later will line up. (Big time saver) If you don't have a Phases table, don't worry: phases are completely optional
.
to:
-> At this point, if you want to use property images make sure and create a relationship between the "Properties" table and the "Media" table. The preferred method is to relate the "ID" field in the properties table to the "PropertyID" field in the media table.
Changed lines 67-86 from:
-> Create a few blank layouts in your file. (We'll paste in content for these layouts in a subsequent step.) You'll create one layout in your file for each layout in SeedCode Calendar (even though only some layouts are visible to users in the layouts menu, all these layouts are required, except for "Demo Expired"). This is most easily done by creating the first layout listed below, deleting the header and footer part, and duplicating it to create the others.

-> ''Note: it is important that you don't already have any layouts (or layout folders) with the same name as any of the layouts below. If you do, please rename your layouts or folders before
continuing. (And yes, FMP's design functions can't tell the difference between a layout and a folder, so a folder named "Calendar" will cause problems also.)''

-> Here is how to create that first layout: Create the layout and then visit Layout Setup and
uncheck the box beside "Show field frames when record is active". Base the layout on the Classic theme. Also uncheck the box to enable QuickFind. (If you want to search the calendar using QuickFind you can leave this enabled on the EventList layout, or use %newwin% [[http://www.seedcode.com/cp-app/ste_cat/fmsearchresults | fmSearchResults]] to extend QuickFind. Do this after you've followed these instructions and are up and running.) Keep duplicating and renaming layouts making sure to switch "Show records from" to match the associated table shown in the list below.

-> Again
, you don't need to add the sample contact, project, and phase layouts unless you don't have any of your own. But you '''do''' need to create the layouts in the Developer and Additional Skins folders.

-> You may want to create the separator layouts we have as well (these are based on CalendarInterface) but that is just cosmetic. Make sure each layout is based on the table occurrence shown below.

-> Once you're done, go through and make sure these layouts have exactly the same names as the ones in SeedCode Calendar, and that the headers and footers are deleted from each.

-> Finally, delete the default layouts created when you imported tables in step 3.

-> Now you may already have layouts you want to use for your Event List and Event Details. If so, take a moment to read about that here: using [[your own Event layouts]].

-> If you're using the [[To-Do List]] add the To-Do Details and To-Do List layouts as well.

%center% http://www.seedcode.com/rootimages/stikipad/pro12/layoutlist.png

to:
-> Create a few blank layouts in your file. (We'll paste in content for these layouts in a subsequent step.) You'll create one layout in your file for each layout in ProMaps (even though only some layouts are visible to users in the layouts menu, all these layouts are required. This is most easily done by creating the first layout listed below, deleting the header and footer part, and duplicating it to create the others.

-> ''Note: it is important that you don't already have any layouts (or layout folders) with the same name as any of the layouts below. If you do, please rename your layouts or folders before
continuing.''

-> Here is how to create that first layout: Create the layout and then visit Layout Setup and uncheck the box beside "Show field frames when record is active". Base the layout on the Classic theme. Also
uncheck the box to enable QuickFind. Keep duplicating and renaming layouts making sure to switch "Show records from" to match the associated table shown in the list below.

-> You may want to create the layout folders and match the integration we have in the ProMaps file. This is not necessary but will keep things organized nicely in your file.

-> Once you're done, go through and make sure these
layouts have exactly the same names as the ones in ProMaps, and that the headers and footers are deleted from each.

-> Finally
, you may delete the default layouts created when you imported tables in step 3 if you would like. This is note necessary but if you want to keep your layouts to a minimum they are not required.

-> Now you may already have layouts you want to use for your properties. If so, take a moment to read about that here: using [[your own Event layouts]].
Changed lines 83-86 from:
-> Import the scripts from SeedCode Calendar. When importing, just click the check box beside the folder "SeedCode Calendar" and all the scripts within that folder will import. There will be a number of errors reports when you import: this is normal. In "Setup" below we'll remap some of the fields and settings in these scripts to values in your file.

-> However, if any scripts are reported as being "renamed" because of a conflict, quickly scan the imported scripts for names ending "2" and correct them. For example, the calendar has a script called "Upon Opening
". If you already have one with that name ours will get imported as "Upon Opening 2". To fix this '''rename yours''' to something like "Upon Opening Main" and then rename ours to "Upon Opening". Our scripts must have the same names as they do in the SeedCode Calendar file for the following step to work.
to:
-> Import the scripts from ProMaps. When importing, just click the check box beside the folder "ProMaps" and all the scripts within that folder will import.

-> If any scripts are reported as being "renamed" because of a conflict, quickly scan the imported scripts for names ending "2" and correct them. For example, ProMaps has a script called "Load Map Settings"
. If you already have one with that name ours will get imported as "Load Map Settings 2". To fix this '''rename yours''' to something like "Load Map Settings Main" and then rename ours to "Load Map Settings". Our scripts must have the same names as they do in the ProMaps file for the following step to work.
Changed lines 89-90 from:
-> Now copy the layout contents from each layout in SeedCode Calendar and paste them into the layout of the same name in your file. Do every layout, including Calendar Rows and Calendar Color Records. You'll be warned that you'll be increasing the height of each layout; that's OK.
to:
-> Now copy the layout contents from each layout in ProMaps and paste them into the layout of the same name in your file. Do every layout. You'll be warned that you'll be increasing the height of each layout; that's OK.
Changed lines 95-98 from:
-> When you get to Event Details feel free to edit this layout as you see fit, adding your own fields and buttons. Just be sure to keep the following 3 objects: the "repeat" button, the "show repts..." button below it, and the large "close..." button at the bottom of the screen. You can come back and edit this layout later, for now, just get the Summary, Date, and Time fields lined up with the relevant fields in your events table.

-> Just as you needed to click on fields on Event Details and point them at the proper fields in your table, you'll need to do the same to the Event List layout, and the on the To-Do Details and To-Do list, if you're using those, Again, you can map the basic date, time, and summary fields now so you know the calendar is working. We have a note at the end of these instructions reminding you to come back here and finish cleaning these layouts up
.
to:
-> When you get to Property_Detail feel free to edit this layout as you see fit, adding your own fields and buttons. Just be sure to keep the "gm_Location" field (it should be off the visible area of the layout) and the address fields. The address fields have script triggers set on them to look up the geo location code when modified.
Changed lines 101-105 from:
--> Layout: Calendar Home & Docs (1 trigger)
--> Trigger: OnRecordLoad (in Browse Mode)
--> Script: "Load Home Layout"

--> Layout: Calendar (1 trigger)
to:
--> Layout: Property_Detail (1 trigger)
--> Trigger: OnLayoutExit (in Browse Mode and Find Mode)
--> Script: "Property On Layout Exit"

-->This script trigger refreshes the map data so any changes or new records added will show up on the map for that user. You may want to modify this script trigger so it only runs on record commit, or maybe not at all if you want your users to get in the habit of clicking the "Refresh Map" button instead.

--> Layout: Properties_Map
(1 trigger)
Changed lines 109-125 from:
--> Script: "Load Calendar Layout"
--> (Do this on "Calendar - no Side Menu" also, along with the "Calendar iPad" and "Calendar iPad - no Side Menu" layouts.)

--> Layout: Event Details (1 trigger)
--> Trigger: OnRecordLoad (in Browse Mode)
--> Script: "On Event Record Load"

--> Layout: To-Do Details (1 trigger)
--> Trigger: OnRecordLoad (in Browse Mode)
--> Script: "On Event Record Load"

--> Layout: Repeat Options (1 trigger)
--> Trigger: OnRecordLoad (in Browse Mode)
--> Script: "Set initial repeat variables"

--> Return to the Calendar Home layout when you're done and enter Browse Mode
.
to:
--> Script: "Map On Record Load"
--> This script trigger should be on any layout you add the map to.
Changed lines 114-117 from:
-> Here is where you start making the calendar your own, editing the scripts that control the calendars behavior and default settings. Read through these scripts slowly: you won't need to change every setting in them, but you'll change many and it's good to take your time so you remember what settings are available to you.

-> '''11.1 Configure the calendar.''' Edit the scripts "Load Calendar Settings
- On Startup..." and "Load Source Settings at Startup --- Describe Your Sources Here ---" and follow the comments throughout the script, changing settings and field mappings as necessary.
to:
-> Here is where you start making the map your own, editing settings for what displays on the map and popovers.

-> '''11.1 General Setup.''' Navigate to the layout "ProMaps Setup
- On Startup..." and "Load Source Settings at Startup --- Describe Your Sources Here ---" and follow the comments throughout the script, changing settings and field mappings as necessary.
Changed lines 132-133 from:
-> That's it. Run the script "Upon Opening" script and you should see your events in the day view.
to:
-> That's it. Run the script "Initialize ProMaps" script and you should now be able to use the map.
May 13, 2013, at 04:45 PM by 98.203.211.206 -
Changed lines 21-22 from:
-> If you want to use the "Properties" table in ProMaps as your properties table, instead of a table you already have, you can skip step 2 and move on to the "Tables" section.
to:
-> If you want to use the "Properties" table in ProMaps as your properties table, instead of a table you already have, you can skip to step 3 and start importing the tables.
Changed lines 29-32 from:
If you are using FileMaker Pro Advanced you can copy the fields from ProMaps and paste them into the Properties table in your solution. If you are using FileMaker Pro you will need to create these fields in your solution. You can copy and paste the field names themselves and the calculation contents if it is a calculation field.

Make sure to set the field types appropriately. Most "gm" fields are calculation fields so set them appropriately in your file. Pay attention to the returned data type as some are "text" and some are "number".
to:
->If you are using FileMaker Pro Advanced you can copy the fields from ProMaps and paste them into the Properties table in your solution. If you are using FileMaker Pro you will need to create these fields in your solution. You can copy and paste the field names themselves and the calculation contents if it is a calculation field.

->Make sure to set the field types appropriately. Most "gm" fields are calculation fields so set them appropriately in your file. Pay attention to the returned data type as some are "text" and some are "number".
Changed lines 37-40 from:
-> Import three tables into your file from SeedCode Calendar: CalendarInterface, CalendarRows, and CalendarColors. (If you're using data separation, add these tables to your interface file.)

-> If you're using FileMaker Advanced,
you can just copy and paste the three tables. If you don't have Advanced, from your file select File / Import Records... / File and then select the SeedCodeCalendar file. Select the first of the three tables to import and for the target, select "New Table". FileMaker will create the new table and calcs for you but you'll have to come back and uncomment some of the calcs that couldn't find the items needed: come back after you've imported all three tables this way and remove the leading /* and trailing */ from your calcs.
to:
-> Import all tables into your file from SeedCode ProMaps: MapSettings, Properties (only import if using our table), Media (only import if using our table), MapMarkerIcons and Areas.

-> If
you're using FileMaker Advanced, you can just copy and paste the tables. If you don't have Advanced, from your file select File / Import Records... / File and then select the ProMaps file. Select the first of the tables to import and for the target, select "New Table". FileMaker will create the new table and calcs for you but you'll have to come back and uncomment some of the calcs that couldn't find the items needed: come back after you've imported all three tables this way and remove the leading /* and trailing */ from your calcs.
Changed lines 45-48 from:
-> If you'd like to use the calendar's [[To-Do List]] and don't have your own To-Do table already, you can import our ToDoList table into your own file at this time as well. Leave it named "ToDoList" and that will keep things easier in the following steps.

->''You'll see we also have placeholder tables for contacts, projects, and phases. You presumably already have tables in your file representing these entities, and you'll line these up later. If you don't have a contacts or projects table, and wish you did, you may want to pause this integration and take a look at %newwin% [[http://www.seedcode.com/complete | SeedCode Complete]], which already has our calendar linked to a rich contacts and project management system.''

to:
-> If you don't plan on using images in the map popovers or want to use existing images you don't need to import the "Media" table.
Changed lines 49-52 from:
-> Open SeedCode Calendar and recreate the seven value lists from our calendar in your file. Feel free to use your list of statuses and resources, but rename them to the value list names we're using in SeedCode Calendar: you can name them back later. The other values lists need to stay as they are, though you can feel free to change the time formats in "Calendar Times" to suit your tastes. You might want to do that later though, once you have this up and running.

-> Here, and in what follows, you don't need to import anything to do with SampleContacts or SampleProjects as you'll likely already have these things in your file. That is, you likely have a method of selecting contacts and projects and will want to use your existing method on the Event Details layout. (However, even if you do have an existing method, creating Contacts and Projects values lists now will let the Event Detail layout find those value lists when you paste the layout into you file. We also use this Projects value list on the calendar's filters: another good reason to create them now.)

to:
-> Open ProMaps and recreate the nine value lists from our file in your file. Feel free to use your list of statuses and types, but rename them to the value list names we're using in ProMaps: you can name them back later. The other values lists need to stay as they are.
Changed lines 53-56 from:
-> Select File / Manage / Database and navigate to the Relationships tab where you can see the "relationship graph" for your file. Click the little green plus button in the lower left to create a new occurrence of your events table (the table that has the records you want to see on the calendar) and name it "SampleEvents" (make sure there are no spaces in the table occurrence name). You can change this name later.

->
If you have a separate table of contacts you can create a new table occurrence of that as well and name it "SampleContacts" (again, with no quotes or spaces in the name). Link this to the SampleEvents table occurrence you just created using the same field matching you use elsewhere: this is likely from the SampleEvent's contact ID to the unique ID of the contact in SampleContacts. Do the same with projects, if you have projects, creating a new instance of Projects named "SampleProjects" and link it to SampleEvent's project ID. You can rename these table occurrences once you're up and running--just remember you'll need to edit one of the calendar's configuration scripts [[Renaming Tables | after you rename]].
to:
-> Select File / Manage / Database and navigate to the Relationships tab where you can see the "relationship graph" for your file. If your properties table is not called "Properties" you will need to rename your TO. Locate your existing properties table occurrence (the table that has the records you want to see on the map) and name it "Properties" (make sure there are no spaces in the table occurrence name). You can change this name later. If you are using the ProMaps properties table it should already be named "Properties" and you won't need to change anything.

-> If you plan on using images in your map Popovers you will need
to make sure your media table (the table that contains your property images) is named "Media". If your images are stored in the "Properties" table that will work too but our example layouts are set up to work with a dedicated media table as are our instructions. We recommend storing your media in a separate table for the sake of speed and a better data model.
May 13, 2013, at 04:09 PM by 98.203.211.206 -
Changed lines 21-22 from:
-> If you want to use the "Properties" table in ProMaps as your properties table, instead of a table you already have, just import it into your file in step 2 below and skip step 5.
to:
-> If you want to use the "Properties" table in ProMaps as your properties table, instead of a table you already have, you can skip step 2 and move on to the "Tables" section.
Changed lines 25-54 from:
-> '''2.1''' Add two new fields to your events table from SeedCode Calendar's "SampleEvents" table:

--> zscTimestampStartCalcNum
--> zscTimestampEndCalcNum

-> Edit the definitions for these calcs, removing any leading / trailing comment tags if you pasted
the fields in using FileMaker Advanced (that is, remove the /* and */ from the beginning and end of the calc). Then replace the DateStart, TimeStart, etc. fields referenced in these calculations with the relevant fields from your events table. Make sure both calcs return the form "number" and that both are indexed.

-> It may be that
you don't have an end date field in your solution. You may also lack the time fields mentioned in the next steps (start and end times). The simplest thing is to add these fields to your events table: that makes the integration simpler and lets you take advantage of multi-day events should the scope of your events change. (Note that if you want to enforce that events never have times or never span more than 1 day you can use auto-enter calcs in these newly created fields to force them to be blank.)

-> If you create new fields, make sure the date fields are of the type "date" and
the time fields are "time".

-> '''2
.2''' Next, add the following Auto-Enter Calculated Value option to the TimeStart field in your events table (you can copy this here or from the definition in SampleEvents):

--> Case ( \\
Self = Time ( 24 ; 0 ; 0 ) ; Time ( 24 ; 0 ; 1 ) ; \\
Self = Time ( 0 ; 0 ; 0 ) ; Time ( 0 ; 0 ; 1 ) ; \\
Self > Time ( 24 ; 0 ; 0 ) ; Self - Time ( 24 ; 0 ; 0 ) + 1 ; \\
Self )

-> Make sure you '''uncheck''' the "Do not replace existing value" checkbox
. This Auto-Enter option is needed if you want events to be able to start at midnight.

-> '''2.3''' Now add the same Auto-Enter Calculated Value option to the TimeEnd field in your events table. Again, make sure you '''uncheck''' the "Do not replace existing value" checkbox. This Auto-Enter option is needed if you want events to be able to end at midnight.

-> '''2.4''' If you plan to use the calendar's gantt charts. repeating events, or email notifications add a few more fields from our SampleEvents to yours:

--> z_LinkedWithinProject
--> z_MilestoneSort
--> z_Notified
--> z_Repeating_id

to:
-> '''2.1''' Add new fields to your events table from SeedCode ProMaps' "Properties" table:

-> The required fields are all prefixed with "gm" but you may want to just add all of the fields in the ProMaps "Properties" table for the most seamless integration. Once the fields are added you can rename them to whatever you would like.

If you are using FileMaker Pro Advanced you can copy the fields from ProMaps and paste them into
the Properties table in your solution. If you are using FileMaker Pro you will need to create these fields in your solution. You can copy and paste the field names themselves and the calculation contents if it is a calculation field.

Make sure
to set the field types appropriately. Most "gm" fields are calculation fields so set them appropriately in your file. Pay attention to the returned data type as some are "text" and some are "number".

-> '''2.2''' Fields
that don't begin with a "gm" are not required but you will probably want them in your solution too. For example, you will probably want an address, city, state, postal code in your solution. So it is preferred that you create all of the fields that are in the ProMaps "Properties" table in your solution. This will create the most seamless experience once initially integrated. Once things are working properly then fields can be renamed or deleted. At the very least "Status", "Type", and the address fields will make things work out of the box so make sure to add those.
May 11, 2013, at 11:35 PM by 98.203.211.206 -
Changed lines 3-12 from:
Most folks will paste SeedCode Calendar into their file and use an events table ''they already have'' for the events they want to see in the calendar.

If you don't need to have the calendar "in" your file, you can still link the two files, pointing the calendar at your events table instead of the "SampleEvents" table it comes with. Linking in this way is much faster but means you'll have two files instead of one. (The chief disadvantage of this is that you have to have the same accounts and passwords in each file, unless you set the calendar file to auto-open with its own low access password for everyone.)

If this sounds like it might be for you, follow our instructions for the [[Quick Integration]].

The remainder of these instructions assume you already have a table whose records you want to see in the calendar. If you don't, you can just paste our "SampleEvents" table into your file and skip step 2 below.

You may also have more than one table (or more than one date field in a table) that you want to see in the calendar. Don't worry about that for now: get one table/field up and running and then you can come back and configure [[MultipleSources | additional event sources]]
.
to:
Most folks will paste ProMaps into their file and use a properties table ''they already have'' for the properties they want to see in the map.

The remainder of these instructions assume you already have a table whose records you want to see in the map. If you don't, you can just paste our "Properties" table into your file and skip step 2 below.
Changed lines 9-14 from:
The most common mistake folks make integrating the calendar (or moving any FMP code from file to file) is performing steps in the order. FileMaker is very sensitive to the order in which new code is pasted into a file--create layouts before you paste in a script looking for that layout and all will be well; past the script in before the layout expected in that script has been created and you'll have some busted code that is particularly hard to unravel.

So, even if you're an experienced developer, follow the steps here carefully and in order--at least for your first calendar integration. =)

!! Step-by-Step Instructions: Pasting SeedCode Calendar
into your File.
to:
FileMaker is very sensitive to the order in which new code is pasted into a file--create layouts before you paste in a script looking for that layout and all will be well; paste the script in before the layout expected in that script has been created and you'll have some busted code that is particularly hard to unravel.

So, even if you're an experienced developer, follow the steps here carefully
and in order--at least for your first ProMaps integration. =)

!! Step-by-Step Instructions: Pasting SeedCode ProMaps
into your File.
Changed lines 21-22 from:
-> If you want to use the "SampleEvents" table in SeedCode Calendar as your events table, instead of a table you already have, just import it into your file in step 2 below and skip step 5.
to:
-> If you want to use the "Properties" table in ProMaps as your properties table, instead of a table you already have, just import it into your file in step 2 below and skip step 5.
May 11, 2013, at 11:23 PM by 98.203.211.206 -
Added lines 1-206:
!! Integration Options.

Most folks will paste SeedCode Calendar into their file and use an events table ''they already have'' for the events they want to see in the calendar.

If you don't need to have the calendar "in" your file, you can still link the two files, pointing the calendar at your events table instead of the "SampleEvents" table it comes with. Linking in this way is much faster but means you'll have two files instead of one. (The chief disadvantage of this is that you have to have the same accounts and passwords in each file, unless you set the calendar file to auto-open with its own low access password for everyone.)

If this sounds like it might be for you, follow our instructions for the [[Quick Integration]].

The remainder of these instructions assume you already have a table whose records you want to see in the calendar. If you don't, you can just paste our "SampleEvents" table into your file and skip step 2 below.

You may also have more than one table (or more than one date field in a table) that you want to see in the calendar. Don't worry about that for now: get one table/field up and running and then you can come back and configure [[MultipleSources | additional event sources]].

!! Keys to Success

The most common mistake folks make integrating the calendar (or moving any FMP code from file to file) is performing steps in the order. FileMaker is very sensitive to the order in which new code is pasted into a file--create layouts before you paste in a script looking for that layout and all will be well; past the script in before the layout expected in that script has been created and you'll have some busted code that is particularly hard to unravel.

So, even if you're an experienced developer, follow the steps here carefully and in order--at least for your first calendar integration. =)

!! Step-by-Step Instructions: Pasting SeedCode Calendar into your File.

'''1. Backup your file.'''

-> Really.

-> And this is '''important''': review a [[YourFile | couple of things]] you may want to change in your file before you get started.

-> If you want to use the "SampleEvents" table in SeedCode Calendar as your events table, instead of a table you already have, just import it into your file in step 2 below and skip step 5.

'''2. Fields.'''

-> '''2.1''' Add two new fields to your events table from SeedCode Calendar's "SampleEvents" table:

--> zscTimestampStartCalcNum
--> zscTimestampEndCalcNum

-> Edit the definitions for these calcs, removing any leading / trailing comment tags if you pasted the fields in using FileMaker Advanced (that is, remove the /* and */ from the beginning and end of the calc). Then replace the DateStart, TimeStart, etc. fields referenced in these calculations with the relevant fields from your events table. Make sure both calcs return the form "number" and that both are indexed.

-> It may be that you don't have an end date field in your solution. You may also lack the time fields mentioned in the next steps (start and end times). The simplest thing is to add these fields to your events table: that makes the integration simpler and lets you take advantage of multi-day events should the scope of your events change. (Note that if you want to enforce that events never have times or never span more than 1 day you can use auto-enter calcs in these newly created fields to force them to be blank.)

-> If you create new fields, make sure the date fields are of the type "date" and the time fields are "time".

-> '''2.2''' Next, add the following Auto-Enter Calculated Value option to the TimeStart field in your events table (you can copy this here or from the definition in SampleEvents):

--> Case ( \\
Self = Time ( 24 ; 0 ; 0 ) ; Time ( 24 ; 0 ; 1 ) ; \\
Self = Time ( 0 ; 0 ; 0 ) ; Time ( 0 ; 0 ; 1 ) ; \\
Self > Time ( 24 ; 0 ; 0 ) ; Self - Time ( 24 ; 0 ; 0 ) + 1 ; \\
Self )

-> Make sure you '''uncheck''' the "Do not replace existing value" checkbox. This Auto-Enter option is needed if you want events to be able to start at midnight.

-> '''2.3''' Now add the same Auto-Enter Calculated Value option to the TimeEnd field in your events table. Again, make sure you '''uncheck''' the "Do not replace existing value" checkbox. This Auto-Enter option is needed if you want events to be able to end at midnight.

-> '''2.4''' If you plan to use the calendar's gantt charts. repeating events, or email notifications add a few more fields from our SampleEvents to yours:

--> z_LinkedWithinProject
--> z_MilestoneSort
--> z_Notified
--> z_Repeating_id

'''3. Tables.'''

-> Import three tables into your file from SeedCode Calendar: CalendarInterface, CalendarRows, and CalendarColors. (If you're using data separation, add these tables to your interface file.)

-> If you're using FileMaker Advanced, you can just copy and paste the three tables. If you don't have Advanced, from your file select File / Import Records... / File and then select the SeedCodeCalendar file. Select the first of the three tables to import and for the target, select "New Table". FileMaker will create the new table and calcs for you but you'll have to come back and uncomment some of the calcs that couldn't find the items needed: come back after you've imported all three tables this way and remove the leading /* and trailing */ from your calcs.

-> If you don't have Advanced, and that sounds like too much, we'd be happy to complete this step for you, just send us your file.

%center%  http://www.seedcode.com/rootimages/stikipad/pro12/graph1.png

-> If you'd like to use the calendar's [[To-Do List]] and don't have your own To-Do table already, you can import our ToDoList table into your own file at this time as well. Leave it named "ToDoList" and that will keep things easier in the following steps.

->''You'll see we also have placeholder tables for contacts, projects, and phases. You presumably already have tables in your file representing these entities, and you'll line these up later. If you don't have a contacts or projects table, and wish you did, you may want to pause this integration and take a look at %newwin% [[http://www.seedcode.com/complete | SeedCode Complete]], which already has our calendar linked to a rich contacts and project management system.''

'''4. Value Lists.'''

-> Open SeedCode Calendar and recreate the seven value lists from our calendar in your file. Feel free to use your list of statuses and resources, but rename them to the value list names we're using in SeedCode Calendar: you can name them back later. The other values lists need to stay as they are, though you can feel free to change the time formats in "Calendar Times" to suit your tastes. You might want to do that later though, once you have this up and running.

-> Here, and in what follows, you don't need to import anything to do with SampleContacts or SampleProjects as you'll likely already have these things in your file. That is, you likely have a method of selecting contacts and projects and will want to use your existing method on the Event Details layout. (However, even if you do have an existing method, creating Contacts and Projects values lists now will let the Event Detail layout find those value lists when you paste the layout into you file. We also use this Projects value list on the calendar's filters: another good reason to create them now.)

'''5. Table Occurrences.'''

-> Select File / Manage / Database and navigate to the Relationships tab where you can see the "relationship graph" for your file. Click the little green plus button in the lower left to create a new occurrence of your events table (the table that has the records you want to see on the calendar) and name it "SampleEvents" (make sure there are no spaces in the table occurrence name). You can change this name later.

-> If you have a separate table of contacts you can create a new table occurrence of that as well and name it "SampleContacts" (again, with no quotes or spaces in the name). Link this to the SampleEvents table occurrence you just created using the same field matching you use elsewhere: this is likely from the SampleEvent's contact ID to the unique ID of the contact in SampleContacts. Do the same with projects, if you have projects, creating a new instance of Projects named "SampleProjects" and link it to SampleEvent's project ID. You can rename these table occurrences once you're up and running--just remember you'll need to edit one of the calendar's configuration scripts [[Renaming Tables | after you rename]].

'''6. Relationships'''

-> '''6.1 Relationships Part 1.''' Staying on the Relationships tab, link "CalendarRows" to "CalendarInterface" to "CalendarColors" as shown below. Double check that the table occurrence names match what we have in the sample file, and make sure the open end of the ≥ operator is pointing toward "CalendarInterface":

%center%  http://www.seedcode.com/rootimages/stikipad/pro12/graph2.png

-> At this point, if you want to show event colors in list view as we do in the Event List or Event Detail layouts, copy our field "z_sc_ColorCalc" from SampleEvents and add it to your events table. Remove the /* and */ from the beginning and end of the calc and replace our use of the field "status" with the equivalent field in your events table: this is the field we used to color code events in the calendar.

-> '''6.5. Relationships Part 2.''' ''If you intend to remove the Gantt chart you can skip this section.''

-> If you'll be using the Gantt Chart you'll want to connect a few more things in the graph. First, create a relationship from CalendarRows to SampleEvents like this, where "id" is the primary key (the unique ID) in your events table. :

%center width="500%  http://www.seedcode.com/rootimages/stikipad/pro12/graph3.png

-> Then attach SampleEvents to your Contacts, Projects, and possibly your Phases table occurrences, as shown here:

%center% http://www.seedcode.com/rootimages/stikipad/pro12/graph4.png

-> It probably make sense to create new instances of these to attach to SampleEvents, but you don't have to. You'll likely want to rename your table occurrences to "Sample..." for now so that items pasted in later will line up. (Big time saver) If you don't have a Phases table, don't worry: phases are completely optional.

'''7. Layouts Part 1.'''

-> Create a few blank layouts in your file. (We'll paste in content for these layouts in a subsequent step.) You'll create one layout in your file for each layout in SeedCode Calendar (even though only some layouts are visible to users in the layouts menu, all these layouts are required, except for "Demo Expired"). This is most easily done by creating the first layout listed below, deleting the header and footer part, and duplicating it to create the others.

-> ''Note: it is important that you don't already have any layouts (or layout folders) with the same name as any of the layouts below. If you do, please rename your layouts or folders before continuing. (And yes, FMP's design functions can't tell the difference between a layout and a folder, so a folder named "Calendar" will cause problems also.)''

-> Here is how to create that first layout: Create the layout and then visit Layout Setup and uncheck the box beside "Show field frames when record is active". Base the layout on the Classic theme. Also uncheck the box to enable QuickFind. (If you want to search the calendar using QuickFind you can leave this enabled on the EventList layout, or use %newwin% [[http://www.seedcode.com/cp-app/ste_cat/fmsearchresults | fmSearchResults]] to extend QuickFind. Do this after you've followed these instructions and are up and running.) Keep duplicating and renaming layouts making sure to switch "Show records from" to match the associated table shown in the list below.

-> Again, you don't need to add the sample contact, project, and phase layouts unless you don't have any of your own. But you '''do''' need to create the layouts in the Developer and Additional Skins folders.

-> You may want to create the separator layouts we have as well (these are based on CalendarInterface) but that is just cosmetic. Make sure each layout is based on the table occurrence shown below.

-> Once you're done, go through and make sure these layouts have exactly the same names as the ones in SeedCode Calendar, and that the headers and footers are deleted from each.

-> Finally, delete the default layouts created when you imported tables in step 3.

-> Now you may already have layouts you want to use for your Event List and Event Details. If so, take a moment to read about that here: using [[your own Event layouts]].

-> If you're using the [[To-Do List]] add the To-Do Details and To-Do List layouts as well.

%center% http://www.seedcode.com/rootimages/stikipad/pro12/layoutlist.png

'''8. Scripts.'''

-> Import the scripts from SeedCode Calendar. When importing, just click the check box beside the folder "SeedCode Calendar" and all the scripts within that folder will import. There will be a number of errors reports when you import: this is normal. In "Setup" below we'll remap some of the fields and settings in these scripts to values in your file.

-> However, if any scripts are reported as being "renamed" because of a conflict, quickly scan the imported scripts for names ending "2" and correct them. For example, the calendar has a script called "Upon Opening". If you already have one with that name ours will get imported as "Upon Opening 2". To fix this '''rename yours''' to something like "Upon Opening Main" and then rename ours to "Upon Opening". Our scripts must have the same names as they do in the SeedCode Calendar file for the following step to work.

'''9. Layouts Part 2.'''

-> Now copy the layout contents from each layout in SeedCode Calendar and paste them into the layout of the same name in your file. Do every layout, including Calendar Rows and Calendar Color Records. You'll be warned that you'll be increasing the height of each layout; that's OK.

-> While the layout heights in FileMaker 12 take care of themselves automatically, the layout widths do not. You'll need to manually move the right edge of the layout out to the same place it is on the layouts in our file (for most layouts this is flush with the rightmost object edge).

%center%  http://www.seedcode.com/rootimages/stikipad/pro12/layoutwidth.png

-> When you get to Event Details feel free to edit this layout as you see fit, adding your own fields and buttons. Just be sure to keep the following 3 objects: the "repeat" button, the "show repts..." button below it, and the large "close..." button at the bottom of the screen. You can come back and edit this layout later, for now, just get the Summary, Date, and Time fields lined up with the relevant fields in your events table.

-> Just as you needed to click on fields on Event Details and point them at the proper fields in your table, you'll need to do the same to the Event List layout, and the on the To-Do Details and To-Do list, if you're using those, Again, you can map the basic date, time, and summary fields now so you know the calendar is working. We have a note at the end of these instructions reminding you to come back here and finish cleaning these layouts up.

'''10. Layout Script Triggers.'''

-> Assign script triggers. Since layout level script triggers don't come over when you copy and paste layout elements, you'll have to recreate these. Fortunately there are only a few.

--> Layout: Calendar Home & Docs (1 trigger)
--> Trigger: OnRecordLoad (in Browse Mode)
--> Script: "Load Home Layout"

--> Layout: Calendar (1 trigger)
--> Trigger: OnRecordLoad (in Browse and Find Mode)
--> Script: "Load Calendar Layout"
--> (Do this on "Calendar - no Side Menu" also, along with the "Calendar iPad" and "Calendar iPad - no Side Menu" layouts.)

--> Layout: Event Details (1 trigger)
--> Trigger: OnRecordLoad (in Browse Mode)
--> Script: "On Event Record Load"

--> Layout: To-Do Details (1 trigger)
--> Trigger: OnRecordLoad (in Browse Mode)
--> Script: "On Event Record Load"

--> Layout: Repeat Options (1 trigger)
--> Trigger: OnRecordLoad (in Browse Mode)
--> Script: "Set initial repeat variables"

--> Return to the Calendar Home layout when you're done and enter Browse Mode.

'''11. Setup.'''

-> Here is where you start making the calendar your own, editing the scripts that control the calendars behavior and default settings. Read through these scripts slowly: you won't need to change every setting in them, but you'll change many and it's good to take your time so you remember what settings are available to you.

-> '''11.1 Configure the calendar.''' Edit the scripts "Load Calendar Settings - On Startup..." and "Load Source Settings at Startup --- Describe Your Sources Here ---" and follow the comments throughout the script, changing settings and field mappings as necessary.

-> '''11.2 Map your data.''' Go to the layout "Source No 1" (in the Developer layout folder) and follow the directions on the layout to map the fields there to the fields in your SampleEvents table. Map the "Summary" to a simple field for now like your event's title, just to get you up and running, then return here and try mapping the summary to something more interesting to create a [[MultiLineEvents | multi-line event]] display.

-> A couple tips on field mapping:

--> Events with just a single date should have a start date: if your event has just an end date the calendar will fail. The same goes for times: if there is only one time, make it the start time.

--> Don't use calcs for things like the dates, times, or resources. The calendar wants to edit these values when you drag items around, and it can't edit calcs. Use auto-enter calculations instead if you must.

'''12. Clean Up.'''

-> Rename your Sample Events table occurrence to something that makes more sense for you. And add the script "Upon Opening" to your file's opening script, removing the go to layout stuff if you'd like. If you're using multiple windows or renaming windows in your own upon opening script, you may want to run our Upon Opening routine the first time your users open the calendar in a new window rather than at the beginning. 

'''13. Run a Script.'''

-> That's it. Run the script "Upon Opening" script and you should see your events in the day view.

Enjoy!

!! Next Steps

Now that you've gotten up and running, you'll likely want to return to a few places and do a more thorough job of mapping the calendar to your events. Here are the places we like to revisit:

-> Event Details. You may have left some fields unmapped here. You'll probably also want to double check the arrows / buttons which jump from an event to its related contact or project. Learn more about these here: [[jump to my contact]].

-> Event List. You may have unmapped fields here as well. Also be sure to enter layout mode and double check the summary parts on the [[Event List]].

-> To-Do Details and List. If you're using the To-Do list, you likely skipped mapping some fields on its detail and list layouts as well.
(855) SEEDCODE
[email protected]
Follow us: