{"id":9220,"date":"2015-09-14T05:40:33","date_gmt":"2015-09-14T12:40:33","guid":{"rendered":"http:\/\/www.seedcode.com\/?p=9220"},"modified":"2015-09-14T05:40:33","modified_gmt":"2015-09-14T12:40:33","slug":"adding-a-new-module-in-seedcode-complete-part-4","status":"publish","type":"post","link":"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/","title":{"rendered":"Adding a New Module to SeedCode Complete, Part 4"},"content":{"rendered":"<h3>Part 4: Building the\u00a0detail slide panel, and adding a main layout<\/h3>\n<p><em>This is the last article in this series. Part <a href=\"http:\/\/www.seedcode.com\/adding-a-new-module-in-seedcode-complete-part-1-2\/\" rel=\"noreferrer\">one<\/a> describes how to add the new buttons to the home page in <a href=\"http:\/\/www.seedcode.com\/complete-filemaker-template\/\" rel=\"noreferrer\">SeedCode Complete<\/a>\u00a0while keeping the nice hover behaviors in place. Part <a href=\"http:\/\/www.seedcode.com\/adding-a-new-module-in-seedcode-complete-part-2\/\" rel=\"noreferrer\">two<\/a> shows how to create the new slide panels in the sidebar. In part <a href=\"http:\/\/www.seedcode.com\/adding-a-new-module-in-seedcode-complete-part-3\" rel=\"noreferrer\">three<\/a>\u00a0we create the new table, as well as some scripts to support the search tool in the sidebar. This final post describes the rest of the process, which mainly involves some more scripts, some TOs on the graph, and creating and remapping the new layouts. Step-by-step instructions follow, or check out the video below for a walk-through.<\/em><\/p>\n<ol>\n<li>Duplicate the \u201cItemGlobals\u201d table in the SeedCodeComplete file and rename the new table \u201cSuppliesGlobals\u201d. Rename and modify fields in the new table, changing the word \u201cItems\u201d to \u201cSupplies\u201d as necessary. IMPORTANT: You must manually create one record in this new table (just go to the new \u201cSuppliesGlobals\u201d layout and hit the New Record button).<\/li>\n<li>In the \u201cNotes\u201d table in the SeedCodeModel file, duplicate the id_Item field and rename the new one \u201cid_Supply\u201d<\/li>\n<li>On the relationships graph in the SeedCodeComplete file, duplicate the Items, ItemGlobals, InventoryNotes, ItemGlobalsNotes_Descending and ItemGlobalsNotes_Ascending TOs and move them to the bottom of the graph. Rename and remap the new TOs to the corresponding \u201cSupplies\u201d and \u201cSuppliesGlobals\u201d tables, and connect \u201cSupplies\u201d to \u201cConnector\u201d in the same fashion as the other base-table TOs. See last week\u2019s <a href=\"http:\/\/www.seedcode.com\/relationship-graph-seedcode-complete\/\" rel=\"noreferrer\">post<\/a> for an overview of how the SeedCode Complete graph is set up.<\/li>\n<li>Duplicate the \u201cSeedCode_Inventory_View\u201d custom menu in the SeedCodeComplete file and rename the new one \u201cSeedCode_Supplies_View\u201d. Remap the \u201cPreview Mode\u201d, \u201cView as Form\u201d and \u201cView as List\u201d menu items therein to the corresponding \u201cSupplies\u201d versions of those scripts. Then duplicate the \u201cInventory\u201d custom menu set and rename the new one \u201cSupplies\u201d, and replace \u201cSeedCode_Inventory_View\u201d with \u201cSeedCode_Supplies_View\u201d.<\/li>\n<li>Duplicate the \u201cInventory\u201d scripts folder and rename the new one \u201cSupplies\u201d. Rename all of the scripts contained therein by changing the word \u201cinventory\u201d or \u201citem\u201d to \u201csupplies\u201d. Also edit these scripts to remap any field references to the corresponding \u201csupplies\u201d version, and rename all variables accordingly as well.<\/li>\n<li>Duplicate the \u201cGo To Inventory [ ItemID ]\u201d script (in the Navigation folder) and rename the new one \u201cGo To Supplies [ SupplyID ]\u201d<\/li>\n<li>Duplicate the \u201cCancel Item Edit Menu\u201d script (in the \u201cCancel Edit Scripts\u201c folder) and rename the new one \u201cCancel Supply Edit Menu\u201d<\/li>\n<li>Duplicate the \u201cReturn Item Note IDs ( ItemID ; Criteria )\u201d script (in the \u201cFiltered Portals\u201d folder in the SeedcodeControl file) and rename the new one \u201cReturn Supply Note IDs ( SupplyID ; Criteria )\u201d<\/li>\n<li>In the \u201cLoad Globals At Start Up\u201d script, add \u201cSet Field\u201d steps for the new \u201cSupplies\u201d versions of all of the global fields.<\/li>\n<li>Add a step to the \u201cRefresh Connector\u201d script to include the \u201cRefreshPortalGlob\u201d field in the Supplies table. You\u2019ll need to run this sub script in a few different places to fix a bug when using FileMaker 14. More details <a href=\"http:\/\/www.seedcode.com\/pmwiki\/index.php?n=SeedCodeComplete3.FM14\" rel=\"noreferrer\">here<\/a>.<\/li>\n<li>Duplicate the \u201cInventory\u201d and \u201cInventory List\u201d layouts and rename the new ones \u201cSupplies\u201d and \u201cSupplies List\u201d. Select \u201cSupplies\u201d as the menu set for both of these new layouts. Remap all layout-based script triggers to the corresponding \u201cSupplies\u201d versions of those scripts. Remap all buttons, fields, merge fields, field repetitions, conditional formatting and \u201chide object when\u201d rules appropriately.<\/li>\n<li>Duplicate and rearrange the buttons in the vertical sidebar as necessary so the new Supplies layout shows a blue \u201cactive\u201d button with the paperclip icon on it, and the \u201cItems\u201d button goes to the original Inventory layout. Add a new button on the other module\u2019s main layouts that goes to the new Supplies layout.<\/li>\n<\/ol>\n<p>[ba-youtubeflex videoid=&#8221;PaQygQf0XXA&#8221;]<\/p>\n<p>That\u2019s it! You now have a functioning new SeedCode Complete module to work with, which can serve virtually any purpose that suits your needs. Please leave a comment if you tackle this process, and <a href=\"http:\/\/www.seedcode.com\/contact\/\" rel=\"noreferrer\">let us know<\/a> if you\u2019d rather have us do it for you.<\/p>\n<p>Cheers!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Part 4: Building the\u00a0detail slide panel, and adding a main layout This is the last article in this series. Part one describes how to add the new buttons to the home page in SeedCode Complete\u00a0while keeping the nice hover behaviors in place. Part two shows how to create the new slide panels in the sidebar. In part three\u00a0we create the new table, as well as some scripts to support the search tool in the sidebar. This final post describes the rest of the process, which mainly involves some more scripts, some TOs on the graph, and creating and remapping the new layouts. Step-by-step instructions follow, or check out the video below for a walk-through. Duplicate the \u201cItemGlobals\u201d table in the SeedCodeComplete file and rename the new table \u201cSuppliesGlobals\u201d. Rename and modify fields in the new table, changing the word \u201cItems\u201d to \u201cSupplies\u201d as necessary. IMPORTANT: You must manually create one record in this new table (just go to the new \u201cSuppliesGlobals\u201d layout and hit the New Record button). In the \u201cNotes\u201d table in the SeedCodeModel file, duplicate the id_Item field and rename the new one \u201cid_Supply\u201d On the relationships graph in the SeedCodeComplete file, duplicate the Items, ItemGlobals, InventoryNotes, ItemGlobalsNotes_Descending and ItemGlobalsNotes_Ascending TOs and move them to the bottom of the graph. Rename and remap the new TOs to the corresponding \u201cSupplies\u201d and \u201cSuppliesGlobals\u201d tables, and connect \u201cSupplies\u201d to \u201cConnector\u201d in the same fashion as the other base-table TOs. See last week\u2019s post for an overview of how the SeedCode Complete graph is set up. Duplicate the \u201cSeedCode_Inventory_View\u201d custom menu in the SeedCodeComplete file and rename the new one \u201cSeedCode_Supplies_View\u201d. Remap the \u201cPreview Mode\u201d, \u201cView as Form\u201d and \u201cView as List\u201d menu items therein to the corresponding \u201cSupplies\u201d versions of those scripts. Then duplicate the \u201cInventory\u201d custom menu set and rename the new one \u201cSupplies\u201d, and replace \u201cSeedCode_Inventory_View\u201d with \u201cSeedCode_Supplies_View\u201d. Duplicate the \u201cInventory\u201d scripts folder and rename the new one \u201cSupplies\u201d. Rename all of the scripts contained therein by changing the word \u201cinventory\u201d or \u201citem\u201d to \u201csupplies\u201d. Also edit these scripts to remap any field references to the corresponding \u201csupplies\u201d version, and rename all variables accordingly as well. Duplicate the \u201cGo To Inventory [ ItemID ]\u201d script (in the Navigation folder) and rename the new one \u201cGo To Supplies [ SupplyID ]\u201d Duplicate the \u201cCancel Item Edit Menu\u201d script (in the \u201cCancel Edit Scripts\u201c folder) and rename the new one \u201cCancel Supply Edit Menu\u201d Duplicate the \u201cReturn Item Note IDs ( ItemID ; Criteria )\u201d script (in the \u201cFiltered Portals\u201d folder in the SeedcodeControl file) and rename the new one \u201cReturn Supply Note IDs ( SupplyID ; Criteria )\u201d In the \u201cLoad Globals At Start Up\u201d script, add \u201cSet Field\u201d steps for the new \u201cSupplies\u201d versions of all of the global fields. Add a step to the \u201cRefresh Connector\u201d script to include the \u201cRefreshPortalGlob\u201d field in the Supplies table. You\u2019ll need to run this sub script in a few different places to fix a bug when using FileMaker 14. More details here. Duplicate the \u201cInventory\u201d and \u201cInventory List\u201d layouts and rename the new ones \u201cSupplies\u201d and \u201cSupplies List\u201d. Select \u201cSupplies\u201d as the menu set for both of these new layouts. Remap all layout-based script triggers to the corresponding \u201cSupplies\u201d versions of those scripts. Remap all buttons, fields, merge fields, field repetitions, conditional formatting and \u201chide object when\u201d rules appropriately. Duplicate and rearrange the buttons in the vertical sidebar as necessary so the new Supplies layout shows a blue \u201cactive\u201d button with the paperclip icon on it, and the \u201cItems\u201d button goes to the original Inventory layout. Add a new button on the other module\u2019s main layouts that goes to the new Supplies layout. [ba-youtubeflex videoid=&#8221;PaQygQf0XXA&#8221;] That\u2019s it! You now have a functioning new SeedCode Complete module to work with, which can serve virtually any purpose that suits your needs. Please leave a comment if you tackle this process, and let us know if you\u2019d rather have us do it for you. Cheers!<\/p>\n","protected":false},"author":2,"featured_media":9228,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[30],"class_list":["post-9220","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized","tag-seedcode-complete"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Adding a New Module to SeedCode Complete, Part 4 - SeedCode<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Adding a New Module to SeedCode Complete, Part 4 - SeedCode\" \/>\n<meta property=\"og:description\" content=\"Part 4: Building the\u00a0detail slide panel, and adding a main layout This is the last article in this series. Part one describes how to add the new buttons to the home page in SeedCode Complete\u00a0while keeping the nice hover behaviors in place. Part two shows how to create the new slide panels in the sidebar. In part three\u00a0we create the new table, as well as some scripts to support the search tool in the sidebar. This final post describes the rest of the process, which mainly involves some more scripts, some TOs on the graph, and creating and remapping the new layouts. Step-by-step instructions follow, or check out the video below for a walk-through. Duplicate the \u201cItemGlobals\u201d table in the SeedCodeComplete file and rename the new table \u201cSuppliesGlobals\u201d. Rename and modify fields in the new table, changing the word \u201cItems\u201d to \u201cSupplies\u201d as necessary. IMPORTANT: You must manually create one record in this new table (just go to the new \u201cSuppliesGlobals\u201d layout and hit the New Record button). In the \u201cNotes\u201d table in the SeedCodeModel file, duplicate the id_Item field and rename the new one \u201cid_Supply\u201d On the relationships graph in the SeedCodeComplete file, duplicate the Items, ItemGlobals, InventoryNotes, ItemGlobalsNotes_Descending and ItemGlobalsNotes_Ascending TOs and move them to the bottom of the graph. Rename and remap the new TOs to the corresponding \u201cSupplies\u201d and \u201cSuppliesGlobals\u201d tables, and connect \u201cSupplies\u201d to \u201cConnector\u201d in the same fashion as the other base-table TOs. See last week\u2019s post for an overview of how the SeedCode Complete graph is set up. Duplicate the \u201cSeedCode_Inventory_View\u201d custom menu in the SeedCodeComplete file and rename the new one \u201cSeedCode_Supplies_View\u201d. Remap the \u201cPreview Mode\u201d, \u201cView as Form\u201d and \u201cView as List\u201d menu items therein to the corresponding \u201cSupplies\u201d versions of those scripts. Then duplicate the \u201cInventory\u201d custom menu set and rename the new one \u201cSupplies\u201d, and replace \u201cSeedCode_Inventory_View\u201d with \u201cSeedCode_Supplies_View\u201d. Duplicate the \u201cInventory\u201d scripts folder and rename the new one \u201cSupplies\u201d. Rename all of the scripts contained therein by changing the word \u201cinventory\u201d or \u201citem\u201d to \u201csupplies\u201d. Also edit these scripts to remap any field references to the corresponding \u201csupplies\u201d version, and rename all variables accordingly as well. Duplicate the \u201cGo To Inventory [ ItemID ]\u201d script (in the Navigation folder) and rename the new one \u201cGo To Supplies [ SupplyID ]\u201d Duplicate the \u201cCancel Item Edit Menu\u201d script (in the \u201cCancel Edit Scripts\u201c folder) and rename the new one \u201cCancel Supply Edit Menu\u201d Duplicate the \u201cReturn Item Note IDs ( ItemID ; Criteria )\u201d script (in the \u201cFiltered Portals\u201d folder in the SeedcodeControl file) and rename the new one \u201cReturn Supply Note IDs ( SupplyID ; Criteria )\u201d In the \u201cLoad Globals At Start Up\u201d script, add \u201cSet Field\u201d steps for the new \u201cSupplies\u201d versions of all of the global fields. Add a step to the \u201cRefresh Connector\u201d script to include the \u201cRefreshPortalGlob\u201d field in the Supplies table. You\u2019ll need to run this sub script in a few different places to fix a bug when using FileMaker 14. More details here. Duplicate the \u201cInventory\u201d and \u201cInventory List\u201d layouts and rename the new ones \u201cSupplies\u201d and \u201cSupplies List\u201d. Select \u201cSupplies\u201d as the menu set for both of these new layouts. Remap all layout-based script triggers to the corresponding \u201cSupplies\u201d versions of those scripts. Remap all buttons, fields, merge fields, field repetitions, conditional formatting and \u201chide object when\u201d rules appropriately. Duplicate and rearrange the buttons in the vertical sidebar as necessary so the new Supplies layout shows a blue \u201cactive\u201d button with the paperclip icon on it, and the \u201cItems\u201d button goes to the original Inventory layout. Add a new button on the other module\u2019s main layouts that goes to the new Supplies layout. [ba-youtubeflex videoid=&#8221;PaQygQf0XXA&#8221;] That\u2019s it! You now have a functioning new SeedCode Complete module to work with, which can serve virtually any purpose that suits your needs. Please leave a comment if you tackle this process, and let us know if you\u2019d rather have us do it for you. Cheers!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/\" \/>\n<meta property=\"og:site_name\" content=\"SeedCode\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/seedcoder\" \/>\n<meta property=\"article:published_time\" content=\"2015-09-14T12:40:33+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/seedcode.com\/wp-content\/uploads\/2015\/09\/paperclip4.png\" \/>\n\t<meta property=\"og:image:width\" content=\"109\" \/>\n\t<meta property=\"og:image:height\" content=\"110\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"jeffalmquist\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@dayback\" \/>\n<meta name=\"twitter:site\" content=\"@dayback\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"jeffalmquist\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/\"},\"author\":{\"name\":\"jeffalmquist\",\"@id\":\"https:\/\/seedcode.com\/#\/schema\/person\/e038c04c4091d558cd79fa44d0199ff6\"},\"headline\":\"Adding a New Module to SeedCode Complete, Part 4\",\"datePublished\":\"2015-09-14T12:40:33+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/\"},\"wordCount\":680,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/seedcode.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/seedcode.com\/wp-content\/uploads\/2015\/09\/paperclip4.png\",\"keywords\":[\"SeedCode Complete\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/\",\"url\":\"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/\",\"name\":\"Adding a New Module to SeedCode Complete, Part 4 - SeedCode\",\"isPartOf\":{\"@id\":\"https:\/\/seedcode.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/seedcode.com\/wp-content\/uploads\/2015\/09\/paperclip4.png\",\"datePublished\":\"2015-09-14T12:40:33+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/#primaryimage\",\"url\":\"https:\/\/seedcode.com\/wp-content\/uploads\/2015\/09\/paperclip4.png\",\"contentUrl\":\"https:\/\/seedcode.com\/wp-content\/uploads\/2015\/09\/paperclip4.png\",\"width\":109,\"height\":110},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/seedcode.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Adding a New Module to SeedCode Complete, Part 4\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/seedcode.com\/#website\",\"url\":\"https:\/\/seedcode.com\/\",\"name\":\"SeedCode\",\"description\":\"Build the Software You&#039;ve Always Wanted\",\"publisher\":{\"@id\":\"https:\/\/seedcode.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/seedcode.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/seedcode.com\/#organization\",\"name\":\"SeedCode\",\"url\":\"https:\/\/seedcode.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/seedcode.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/seedcode.com\/wp-content\/uploads\/2022\/12\/SeedCodeLogo.png\",\"contentUrl\":\"https:\/\/seedcode.com\/wp-content\/uploads\/2022\/12\/SeedCodeLogo.png\",\"width\":595,\"height\":189,\"caption\":\"SeedCode\"},\"image\":{\"@id\":\"https:\/\/seedcode.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/seedcoder\",\"https:\/\/x.com\/dayback\",\"https:\/\/www.linkedin.com\/company\/seedcode\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/seedcode.com\/#\/schema\/person\/e038c04c4091d558cd79fa44d0199ff6\",\"name\":\"jeffalmquist\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/seedcode.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/?s=96&d=mm&r=g\",\"caption\":\"jeffalmquist\"},\"url\":\"https:\/\/seedcode.com\/author\/jeffalmquist\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Adding a New Module to SeedCode Complete, Part 4 - SeedCode","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/","og_locale":"en_US","og_type":"article","og_title":"Adding a New Module to SeedCode Complete, Part 4 - SeedCode","og_description":"Part 4: Building the\u00a0detail slide panel, and adding a main layout This is the last article in this series. Part one describes how to add the new buttons to the home page in SeedCode Complete\u00a0while keeping the nice hover behaviors in place. Part two shows how to create the new slide panels in the sidebar. In part three\u00a0we create the new table, as well as some scripts to support the search tool in the sidebar. This final post describes the rest of the process, which mainly involves some more scripts, some TOs on the graph, and creating and remapping the new layouts. Step-by-step instructions follow, or check out the video below for a walk-through. Duplicate the \u201cItemGlobals\u201d table in the SeedCodeComplete file and rename the new table \u201cSuppliesGlobals\u201d. Rename and modify fields in the new table, changing the word \u201cItems\u201d to \u201cSupplies\u201d as necessary. IMPORTANT: You must manually create one record in this new table (just go to the new \u201cSuppliesGlobals\u201d layout and hit the New Record button). In the \u201cNotes\u201d table in the SeedCodeModel file, duplicate the id_Item field and rename the new one \u201cid_Supply\u201d On the relationships graph in the SeedCodeComplete file, duplicate the Items, ItemGlobals, InventoryNotes, ItemGlobalsNotes_Descending and ItemGlobalsNotes_Ascending TOs and move them to the bottom of the graph. Rename and remap the new TOs to the corresponding \u201cSupplies\u201d and \u201cSuppliesGlobals\u201d tables, and connect \u201cSupplies\u201d to \u201cConnector\u201d in the same fashion as the other base-table TOs. See last week\u2019s post for an overview of how the SeedCode Complete graph is set up. Duplicate the \u201cSeedCode_Inventory_View\u201d custom menu in the SeedCodeComplete file and rename the new one \u201cSeedCode_Supplies_View\u201d. Remap the \u201cPreview Mode\u201d, \u201cView as Form\u201d and \u201cView as List\u201d menu items therein to the corresponding \u201cSupplies\u201d versions of those scripts. Then duplicate the \u201cInventory\u201d custom menu set and rename the new one \u201cSupplies\u201d, and replace \u201cSeedCode_Inventory_View\u201d with \u201cSeedCode_Supplies_View\u201d. Duplicate the \u201cInventory\u201d scripts folder and rename the new one \u201cSupplies\u201d. Rename all of the scripts contained therein by changing the word \u201cinventory\u201d or \u201citem\u201d to \u201csupplies\u201d. Also edit these scripts to remap any field references to the corresponding \u201csupplies\u201d version, and rename all variables accordingly as well. Duplicate the \u201cGo To Inventory [ ItemID ]\u201d script (in the Navigation folder) and rename the new one \u201cGo To Supplies [ SupplyID ]\u201d Duplicate the \u201cCancel Item Edit Menu\u201d script (in the \u201cCancel Edit Scripts\u201c folder) and rename the new one \u201cCancel Supply Edit Menu\u201d Duplicate the \u201cReturn Item Note IDs ( ItemID ; Criteria )\u201d script (in the \u201cFiltered Portals\u201d folder in the SeedcodeControl file) and rename the new one \u201cReturn Supply Note IDs ( SupplyID ; Criteria )\u201d In the \u201cLoad Globals At Start Up\u201d script, add \u201cSet Field\u201d steps for the new \u201cSupplies\u201d versions of all of the global fields. Add a step to the \u201cRefresh Connector\u201d script to include the \u201cRefreshPortalGlob\u201d field in the Supplies table. You\u2019ll need to run this sub script in a few different places to fix a bug when using FileMaker 14. More details here. Duplicate the \u201cInventory\u201d and \u201cInventory List\u201d layouts and rename the new ones \u201cSupplies\u201d and \u201cSupplies List\u201d. Select \u201cSupplies\u201d as the menu set for both of these new layouts. Remap all layout-based script triggers to the corresponding \u201cSupplies\u201d versions of those scripts. Remap all buttons, fields, merge fields, field repetitions, conditional formatting and \u201chide object when\u201d rules appropriately. Duplicate and rearrange the buttons in the vertical sidebar as necessary so the new Supplies layout shows a blue \u201cactive\u201d button with the paperclip icon on it, and the \u201cItems\u201d button goes to the original Inventory layout. Add a new button on the other module\u2019s main layouts that goes to the new Supplies layout. [ba-youtubeflex videoid=&#8221;PaQygQf0XXA&#8221;] That\u2019s it! You now have a functioning new SeedCode Complete module to work with, which can serve virtually any purpose that suits your needs. Please leave a comment if you tackle this process, and let us know if you\u2019d rather have us do it for you. Cheers!","og_url":"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/","og_site_name":"SeedCode","article_publisher":"https:\/\/www.facebook.com\/seedcoder","article_published_time":"2015-09-14T12:40:33+00:00","og_image":[{"width":109,"height":110,"url":"https:\/\/seedcode.com\/wp-content\/uploads\/2015\/09\/paperclip4.png","type":"image\/png"}],"author":"jeffalmquist","twitter_card":"summary_large_image","twitter_creator":"@dayback","twitter_site":"@dayback","twitter_misc":{"Written by":"jeffalmquist","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/#article","isPartOf":{"@id":"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/"},"author":{"name":"jeffalmquist","@id":"https:\/\/seedcode.com\/#\/schema\/person\/e038c04c4091d558cd79fa44d0199ff6"},"headline":"Adding a New Module to SeedCode Complete, Part 4","datePublished":"2015-09-14T12:40:33+00:00","mainEntityOfPage":{"@id":"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/"},"wordCount":680,"commentCount":0,"publisher":{"@id":"https:\/\/seedcode.com\/#organization"},"image":{"@id":"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/#primaryimage"},"thumbnailUrl":"https:\/\/seedcode.com\/wp-content\/uploads\/2015\/09\/paperclip4.png","keywords":["SeedCode Complete"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/","url":"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/","name":"Adding a New Module to SeedCode Complete, Part 4 - SeedCode","isPartOf":{"@id":"https:\/\/seedcode.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/#primaryimage"},"image":{"@id":"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/#primaryimage"},"thumbnailUrl":"https:\/\/seedcode.com\/wp-content\/uploads\/2015\/09\/paperclip4.png","datePublished":"2015-09-14T12:40:33+00:00","breadcrumb":{"@id":"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/#primaryimage","url":"https:\/\/seedcode.com\/wp-content\/uploads\/2015\/09\/paperclip4.png","contentUrl":"https:\/\/seedcode.com\/wp-content\/uploads\/2015\/09\/paperclip4.png","width":109,"height":110},{"@type":"BreadcrumbList","@id":"https:\/\/seedcode.com\/adding-a-new-module-in-seedcode-complete-part-4\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/seedcode.com\/"},{"@type":"ListItem","position":2,"name":"Adding a New Module to SeedCode Complete, Part 4"}]},{"@type":"WebSite","@id":"https:\/\/seedcode.com\/#website","url":"https:\/\/seedcode.com\/","name":"SeedCode","description":"Build the Software You&#039;ve Always Wanted","publisher":{"@id":"https:\/\/seedcode.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/seedcode.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/seedcode.com\/#organization","name":"SeedCode","url":"https:\/\/seedcode.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/seedcode.com\/#\/schema\/logo\/image\/","url":"https:\/\/seedcode.com\/wp-content\/uploads\/2022\/12\/SeedCodeLogo.png","contentUrl":"https:\/\/seedcode.com\/wp-content\/uploads\/2022\/12\/SeedCodeLogo.png","width":595,"height":189,"caption":"SeedCode"},"image":{"@id":"https:\/\/seedcode.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/seedcoder","https:\/\/x.com\/dayback","https:\/\/www.linkedin.com\/company\/seedcode\/"]},{"@type":"Person","@id":"https:\/\/seedcode.com\/#\/schema\/person\/e038c04c4091d558cd79fa44d0199ff6","name":"jeffalmquist","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/seedcode.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/?s=96&d=mm&r=g","caption":"jeffalmquist"},"url":"https:\/\/seedcode.com\/author\/jeffalmquist\/"}]}},"_links":{"self":[{"href":"https:\/\/seedcode.com\/wp-json\/wp\/v2\/posts\/9220","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/seedcode.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/seedcode.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/seedcode.com\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/seedcode.com\/wp-json\/wp\/v2\/comments?post=9220"}],"version-history":[{"count":0,"href":"https:\/\/seedcode.com\/wp-json\/wp\/v2\/posts\/9220\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/seedcode.com\/wp-json\/wp\/v2\/media\/9228"}],"wp:attachment":[{"href":"https:\/\/seedcode.com\/wp-json\/wp\/v2\/media?parent=9220"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/seedcode.com\/wp-json\/wp\/v2\/categories?post=9220"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/seedcode.com\/wp-json\/wp\/v2\/tags?post=9220"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}