Version 4.52 Changes

Notes on the new SeedCode Complete template for FileMaker 13
SeedCode Staff
SeedCode Staff
Posts: 691
Joined: Mon Feb 28, 2011 2:47 pm
PostPosted: Sun Aug 14, 2016 7:42 am
Hi!

This post describes the changes made between versions 4.50 and 4.52. This revision adds the ability to add phases at the project level and fixes some bugs.

4.52 also updates DayBack for SeedCode Complete to the latest version 9.81, which adds location and mapping support along with some other features and bug fixes.

Only SeedCodeComplete.fmp12 and SeedCodeCompleteDayBack.fmp12 have been modified.

To update from 4.50, please make the following changes in order. It's important to complete the steps in order to maintain FileMaker's dependencies. Please contact [email protected] to get a copy of 4.52 as copying and pasting elements from the current version to your existing copy is the easiest way to update.

If you have a copy of Complete older than 4.50, please visit the version history page for instructions on making the updates between your build and 4.50. The instructions on this page are only for going from 4.50 to 4.52. Thanks!

SeedCodeComplete.fmp12

1) Schema Changes

Please add one field to the base table ProjectGlobals, FilterProjects_EventPhaseFilterGlob. This should be a global text field.

Copying the field from version 4.52 and pasting into your existing copy is the easiest way to do this..

2) Custom Functions

Please copy/import the Custom Function SeedCode_NoWeekend from version 4.52 into your current version

3) New Scripts

Please copy/import the following scripts from version 4.52 into your current version. All these scripts are in the new Phases folder, so just copy/import the entire folder.

Select Phase
Edit Project Phase
Add Project Phase
Cancel Project Phase Edit
OK Project Phase Edit


4) Script Changes

If you have an existing copy, please contact us for a new build as the easiest way to make these updates will be by copying and pasting the script contents of the specified scripts into your build. If you've made changes to these scripts, then please see the specifics below. It's important to copy and paste the script contents not the scripts themselves. Deleting a script and creating or pasting a new one with the same name breaks the references from buttons and other scripts. By just pasting the contents, the script references themselves stay intact.

We used Inspector Pro 5 to display these script changes.
Remove the steps in Red
Add the steps in Green
Change the text in Orange

The following scripts have had their header section revised as the Function description was incorrect and confusing.

OK Contact Edit
OK Contact Note Edit
OK Item Edit
OK Company Note Edit
OK Settings Edit
OK Process Edit
OK Contact Association Edit
OK Project Edit
OK Project Note Edit
OK Project Contact Edit
OK Project Event Edit
OK Report Edit


3. # Function: Save Changes and Slide Back To Main Panel

Get Company IDs

27. #4.51 Need to refresh the panel, because if a contact search has been done, that's cached.
28. Refresh Object [ Object Name: "panel_CompanySelector" ]


Ok Contact Company Selector

21. Set Variable [ $sc_targetObjectName; Value:"panel_ContactSelector" ]
22. #4.51 end routine here
23. Perform Script [ “Call Go To Object [ ObjectName ]”; Parameter: $sc_targetObjectName ]
24. Exit Script [ ]

25. End If

Cancel Company Selector

22. #Navigate To Specified Panel
23. Set Variable [ $sc_targetObjectName; Value:"panel_EditMain" ]
24. Perform Script [ “Call Go To Object [ ObjectName ]”; Parameter: $sc_targetObjectName ]

Populate Related Contact Info from Primaries

70. Set Field [ ContactAddressesEdit::Country; Contact::AddressCountry ]
71. Set Field [ ContactAddressesEdit::Label; Contact::AddressLabel ]
72. Set Field [ ContactAddressesEdit::PrimaryBilling; 1 ]

Delete Note Attachment

31. Set Variable [ $$sc_mediaTitle; Value:Let ( [ v = GetAsText ( Selector::ContainerDisplayGlob ) ; vc = ValueCount ( v ) ] ; GetValue ( v ; vc ) ) ]
32. Refresh Object [ Object Name: "pop_OverNote" ]

Get Contact IDs

28. End If
29. Exit Script [ Result: False ]
29. Refresh Object [ Object Name: "panel_ContactSelector" ]

Ok Contact Selector Invoices

17. Perform Script [ “Set Invoice Contact Addresses” ]
18. Set Field [ Selector::SelectContactsKeyGlob; $$sc_selectedContactID ]
19. Perform Script [ “Set Invoice Contact Addresses” ]
20. #Clear Globals

Load Milestones Into Contact Events

79. Set Field [ EventsContactsEvents::DateStart; $sc_startDate ]
80. Set Field [ EventsContactsEvents::DateEnd; $sc_endDate ]

80. #account for no weekends
81. Set Field [ EventsContactsEvents::DateStart; If ( $sc_avoidWeekends ; SeedCode_NoWeekend ( $sc_startDate ) ; $sc_startDate ) ]
82. Set Field [ EventsContactsEvents::DateEnd; If ( $sc_avoidWeekends ; SeedCode_NoWeekend ( $sc_endDate ) ; $sc_endDate ) ]


Load Milestones Into Project Events

129. Set Field [ ProjectEventsEdit::DateStart; $sc_startDate ]
130. Set Field [ ProjectEventsEdit::DateEnd; $sc_endDate ]

130. #account for no weekends
131. Set Field [ ProjectEventsEdit::DateStart; If ( $sc_avoidWeekends ; SeedCode_NoWeekend ( $sc_startDate ) ; $sc_startDate ) ]
132. Set Field [ ProjectEventsEdit::DateEnd; If ( $sc_avoidWeekends ; SeedCode_NoWeekend ( $sc_endDate ) ; $sc_endDate ) ]


Get Staff Contact Ids

16. Set Field [ Rows::RefreshPortalGlob; 1 ]
17. #4.51 need to refresh the panel in FM14
18. Refresh Object [ Object Name: "panel_ItemSelector" ]


On Modify Estimate Line Qty

13. Set Field [ SelectedEstimateLinesEdit::Qty; Substitute ( InvoiceLines::Qty ; [ Char ( 13 ) ; "" ] ; [ Char ( 10 ) ; "" ] ) ]
13. Set Field [ SelectedEstimateLinesEdit::Qty; Substitute ( SelectedEstimateLinesEdit::Qty ; [ Char ( 13 ) ; "" ] ; [ Char ( 10 ) ; "" ] ) ]

Update Estimate Totals [ ExitFalse ]

13. Go to Field [ SelectedEstimateLinesEdit::id_Item ]
13. Go to Field [ SelectedEstimateLinesEdit::id_ItemCode ]

The following scripts all need the same change to the global variable

Confirm Delete Project Note
Confirm Delete Company Note Challenge
Confirm Delete Invoice Note
Confirm Delete Purchase Order Note
Confirm Delete Item Note

13. Set Variable [ $$sc_confirmNoteDelete; Value:"" ]

Refresh Color Of Event in Popover

10. Set Field [ CalendarInterface::Preview_SelectedColorFieldValue_Glob; SelectedProjects::Status ]

Open Project Event In Calendar

11. #If no start date or end date is before start date than error
12. If [ IsEmpty ( SelectedEvents::DateStart) ]
13. Show Custom Dialog [ Message: "There is no Start Date for this event."; Default Button: “OK”, Commit: “Yes” ]
14. Exit Script [ ]
15. End If
16. If [ ( SelectedEvents::DateEnd < SelectedEvents::DateStart ) and not IsEmpty ( SelectedEvents::DateEnd ) ]
17. Show Custom Dialog [ Message: "The End Date is before the Start Date. "; Default Button: “OK”, Commit: “Yes” ]
18. Exit Script [ ]
19. End If


Open Contact Event In Calendar

12. #If no start date or end date is before start date than error
13. If [ IsEmpty ( SelectedEvents::DateStart) ]
14. Show Custom Dialog [ Message: "There is no Start Date for this event."; Default Button: “OK”, Commit: “Yes” ]
15. Exit Script [ ]
16. End If
17. If [ ( SelectedEvents::DateEnd < SelectedEvents::DateStart ) and not IsEmpty ( SelectedEvents::DateEnd ) ]
18. Show Custom Dialog [ Message: "The End Date is before the Start Date. "; Default Button: “OK”, Commit: “Yes” ]
19. Exit Script [ ]
20. End If


That's it for changes to SeedCodeComplete.fmp12

SeedCodeCompleteDayBack.fmp12

Most of the changes for SeedCodeComplete Dayback involve taking it up to the current version 9.81. Please go here and follow the instructions to bring the Calendar up to date, starting with version 9.63.

Dayback 9.81 adds the ability to map to a location field, and we've added a tab to the Action-Event layout for the location and tab, you can add this tab and its contents to your current build.

Screen Shot 2016-08-14 at 9.53.43 AM.png
Screen Shot 2016-08-14 at 9.53.43 AM.png (121.77 KiB) Viewed 14699 times


Bug Fixes:

1) Schema Changes

CalendarColors should be related to WDInterface via cross Join and not Calendar Rows. This Only affects Web Direct.

2) Layout Changes

The New Event button on the Web Direct Layouts had a broken reference and should point to the script

Create event 13 { Column ; Row ; Resource }

3) Script Changes

Draw New Event Window (Name)

14. New Window [ Style: Floating Document; Name: Let ( [ $sc_WindowNames = WindowNames ( "" ) ; $sc_WindowName = Get ( ScriptParameter ) ; $sc_WindowCount = PatternCount ( $sc_WindowNames ; $sc_WindowName ) ] ; $sc_WindowName & If ( $sc_WindowCount ; " - " & $sc_WindowCount + 1 ) ); Height: 682; Width: 393; Top: Get ( WindowTop ) + ( ValueCount ( $sc_WindowNames ) * 20 ); Left: Get ( WindowLeft ) + ( ValueCount ( $sc_WindowNames ) * 112 ); Close: No; Minimize: No; Maximize: No; Zoom Control Area: No; Resize: No ]

Clear All Filters

16. #WebDirect Filters
17. Set Field [ WDInterface::FilterGlob_1; "" ]
18. Set Field [ WDInterface::FilterGlob_2; "" ]
19. Set Field [ WDInterface::FilterGlob_3; "" ]
20. Set Field [ WDInterface::FilterGlob_4; "" ]


Create event 13 { Column ; Row ; Resource }

26. #Clear any event browsing previous to this
27. Set Field [ Selector::SelectEventKeyGlob; "" ]

28.
29. #Create a new record

Select Complete Window

9. Select Window [ Name: $$sc_solutionWindowName; Current file ]

10. Adjust Window [ Hide ]

Create Web Direct Records

15. Go to Layout [ “Calendar Color Records” (WDInterface) ]

Event Find

65. Set Field [ Events::z_DontShowOnCalendar; "=" ]


That's it! 8)
Posts: 2
Joined: Tue Jun 16, 2009 2:35 pm
PostPosted: Thu Sep 22, 2016 6:56 am
Cancel Company Selector

This also seems to add lines 12-17, unless I missed that in a prior update.
Posts: 2
Joined: Tue Jun 16, 2009 2:35 pm
PostPosted: Thu Sep 22, 2016 7:12 am
In order to make the change to the Refresh Color of Event in Popover, the TO for CalendarInterface had to be pointed to the External Data Source of SeedCodeCompleteDayBack and the WDInterface table. This action will change the name of the TO to WDInterface.
SeedCode Staff
SeedCode Staff
Posts: 190
Joined: Tue Sep 22, 2015 2:27 pm
PostPosted: Thu Sep 22, 2016 10:18 am
Hi Lisette,

Thanks so much for posting these note here. You are absolutely correct on both counts. The "Cancel Company Selector" edit also adds lines 12-17, and the field mapping correction in the "Refresh Color of Event in Popover" script first requires pointing the CalendarInterface TO in the SeedCodeComplete to the WDInterface table in the SeedCodeCompleteDayBack file.

Keep us posted with any other feedback or questions.

Thanks again!

Return to SeedCode Complete 13

Who is online

Users browsing this forum: No registered users and 2 guests

(855) SEEDCODE
[email protected]
Follow us: