Peter Breen is editor-in-chief of the Path to Purchase Institute, where he has managed content since its inception in 2003. Before helping to launch the Institute, he spent four years as editor and managing editor of PROMO Magazine and its ancillary products. His experience covering the consumer goods industry also includes four years as an editor at Simba Information, where he managed publications on book publishing, computer advertising, and internet marketing. He is a graduate of the State University of New York at Buffalo, where he earned a B.A. in English and Linguistics and a special minor in Japanese Studies.
\r\n","title":"Editor-in-Chief","picture":{"id":66,"url":"https://assets1.consumergoods.com/s3fs-public/styles/portrait_gallery_item/s3/2023-08/PBreenSmaller.jpg?h=f2c8faad&itok=oUskF3-C","alt":"Breen","width":374,"height":356},"phone":null,"contactForm":false},"url":"/7-eleven-builds-supply-chain-muscle-jda","topics":[{"name":"Supply Chain","url":"/supply-chain"},{"name":"Logistics","url":"/logistics"},{"name":"Cloud Architecture","url":"/cloud-architecture"},{"name":"Retail Execution","url":"/retail-execution-0"}],"summary":"A range of cloud-based solutions are designed to better manage inventory and streamline supply chain processes.","teaserImage":{"url":"https://assets1.consumergoods.com/styles/secondary_articles_short/s3/2018-05/7Eleven-Champaign-IL012_0_0.jpg?itok=VRo6l77G","alt":"","id":7776,"height":415,"width":800}},{"title":"Readers' Choice Survey 2018: Retail Execution","id":17201,"bundle":"article","summary":"The CGT community’s preferred providers of solutions for executing and monitoring in-store activity to identify tasks and improve efficiency and performance. ","showSummary":null,"url":"/readers-choice-survey-2018-retail-execution","date":"2018-02-01T00:00:00","author":{"email":"pbreen@ensembleiq.com","uname":"pbreen","firstName":"Peter","lastName":"Breen","bio":"Peter Breen is editor-in-chief of the Path to Purchase Institute, where he has managed content since its inception in 2003. Before helping to launch the Institute, he spent four years as editor and managing editor of PROMO Magazine and its ancillary products. His experience covering the consumer goods industry also includes four years as an editor at Simba Information, where he managed publications on book publishing, computer advertising, and internet marketing. He is a graduate of the State University of New York at Buffalo, where he earned a B.A. in English and Linguistics and a special minor in Japanese Studies.
\r\n","title":"Editor-in-Chief","picture":{"id":66,"url":"https://assets1.consumergoods.com/s3fs-public/styles/portrait_gallery_item/s3/2023-08/PBreenSmaller.jpg?h=f2c8faad&itok=oUskF3-C","alt":"Breen","width":374,"height":356},"phone":null,"contactForm":false},"digitalEdition":null,"sponsored":false,"taggedPro":null,"teaserImage":{"id":11521,"url":"https://assets1.consumergoods.com/styles/secondary_articles_short/s3/2018-02/RC_0218_Teaser_11.jpg?itok=0fkfkXlb","width":500,"height":400,"alt":""},"topics":[{"name":"Readers' Choice","url":"/readers-choice"},{"name":"Retail Execution","url":"/retail-execution-0"},{"name":"Sales & Marketing","url":"/sales-and-marketing"}],"attachedFiles":[]}]},"title":"Retail Execution","contentParagraphs":null,"sections":null}; const country = "US"; const language = null; const SITE_LANGUAGE = "en"; const siteName = "Consumer Goods Technology"; const userRoles = ["anonymous"]; const userUid = 0; const indexName = "CG"; const title = "Retail Execution | Consumer Goods Technology"; window.dataLayer = window.dataLayer || []; const data = {}; data.entityTaxonomy = {}; const contentTypes = [ "article", "blog", "bulletin", "embed_page", "landing_page", "event", "image", "page", "product", "whitepaper", "video", "tags", "author_profile", "buyers_guide_listing" ]; if ( routeInfo && "bundle" in routeInfo && contentTypes.includes(routeInfo["bundle"]) ) { data.entityBundle = routeInfo.bundle; data.entityTitle = title || `${routeInfo.title} | ${siteName}`; data.entityId = routeInfo.id; data.entityName = routeInfo.author?.uname; data.entityCreated = routeInfo.created; data.sponsored = routeInfo.sponsored; data.sponsor = routeInfo.sponsoringCompany; data.entityType = "node"; data.entityLangcode = SITE_LANGUAGE; data.siteName = siteName; data.drupalLanguage = language; data.drupalCountry = country; data.userRoles = userRoles; data.userUid = userUid; data.entityTaxonomyKeys = {}; data.entityTaxonomyHierarchies = {}; data.parentNaicsCode = {}; data.isPro = false; data.algoliaIndexName = indexName; // Add taxonomy data const taxonomies = { businessTopic: "business_topic", contentType: "content_type", company: "company", marketSegment: "market_segment", }; const getHierarchy = (term, terms = []) => { terms.push({ id: term.id, name: term.name }); if (term.parentTerm != null) { getHierarchy(term.parentTerm, terms); } return terms; }; const getTerms = (term, useApiId = false) => { return { id: useApiId ? term.apiId : term.id, name: term.name }; }; const getKeys = (term) => { return { id: term.id, name: term.apiId }; }; Object.entries(taxonomies).forEach(([key, item]) => { terms = routeInfo[key]; if (terms && terms.length > 0) { data["entityTaxonomy"][item] = terms.map((term) => getTerms(term, key === "company") ); if (key !== "company") { data["entityTaxonomyKeys"][item] = terms.map(getKeys); termGroups = []; terms.forEach((term, termInd) => { termGroups[termInd] = getHierarchy(term); }); data["entityTaxonomyHierarchies"][item] = termGroups; } } }); data["entityTaxonomy"]["tags"] = routeInfo["topics"] || []; // Primary Topic is either the business topic or the top tag. if (routeInfo["businessTopic"]?.length > 0) { data["entityPrimaryTopic"] = routeInfo["businessTopic"][0]["name"]; } else { if (routeInfo["topics"]?.length > 0) { data["entityPrimaryTopic"] = routeInfo["topics"][0]["name"]; } } // Primary and secondary entityNaicsCodes come from the MarketSegment if (routeInfo.marketSegment?.length > 0) { data.entityNaicsCode = {}; data["entityNaicsCode"]["id"] = routeInfo["marketSegment"][0]["id"]; data["entityNaicsCode"]["name"] = routeInfo["marketSegment"][0]["naicsCode"]; if (routeInfo["marketSegment"][0]["parentTerm"] != null) { data["parentNaicsCode"]["id"] = routeInfo["marketSegment"][0]["parentTerm"]["id"]; data["parentNaicsCode"]["name"] = routeInfo["marketSegment"][0]["parentTerm"]["naicsCode"]; } } else { data.entityNaicsCode = []; } if (routeInfo.taggedPro) { data.isPro = routeInfo.taggedPro; } window.dataLayer.push(data); } else if (routeInfo && "vid" in routeInfo) { data.entityBundle = "tags"; data.entityTitle = routeInfo.name; data.entityId = routeInfo.id; data.entityName = routeInfo.author?.uname; data.entityCreated = routeInfo.created; data.entityType = "taxonomy_term"; data.entityLangcode = SITE_LANGUAGE; data.siteName = siteName; data.sponsored = routeInfo.sponsored; data.sponsor = routeInfo.sponsoringCompany; data.drupalLanguage = language; data.drupalCountry = country; data.userRoles = userRoles; data.userUid = userUid; data.algoliaIndexName = indexName; data["entityTaxonomy"]["tags"] = { id: routeInfo["id"], name: routeInfo["name"], }; window.dataLayer.push(data); } })();