[{"data":1,"prerenderedAt":305},["ShallowReactive",2],{"navigation":3,"page-\u002Fcreating-datasets\u002Fbuild-with-dataset-builder":130,"\u002Fcreating-datasets\u002Fbuild-with-dataset-builder-surround":299,"comments-\u002Fcreating-datasets\u002Fbuild-with-dataset-builder":304},[4],{"title":5,"path":6,"stem":7,"children":8,"page":129},"En","\u002Fen","en",[9,53,87],{"title":10,"path":11,"stem":12,"children":13,"icon":52},"CRM Analytics Foundations","\u002Fen\u002Ffoundations","en\u002F1.foundations\u002F1.index",[14,16,20,24,28,32,36,40,44,48],{"title":15,"path":11,"stem":12},"Welcome & Dev Org",{"title":17,"path":18,"stem":19},"Graded Quiz","\u002Fen\u002Ffoundations\u002Fquiz","en\u002F1.foundations\u002F10.quiz",{"title":21,"path":22,"stem":23},"What Is CRM Analytics?","\u002Fen\u002Ffoundations\u002Fwhat-is-crm-analytics","en\u002F1.foundations\u002F2.what-is-crm-analytics",{"title":25,"path":26,"stem":27},"Architecture","\u002Fen\u002Ffoundations\u002Farchitecture-and-data-flow","en\u002F1.foundations\u002F3.architecture-and-data-flow",{"title":29,"path":30,"stem":31},"The Data Layer","\u002Fen\u002Ffoundations\u002Fthe-data-layer","en\u002F1.foundations\u002F4.the-data-layer",{"title":33,"path":34,"stem":35},"The Design Layer","\u002Fen\u002Ffoundations\u002Fthe-design-layer","en\u002F1.foundations\u002F5.the-design-layer",{"title":37,"path":38,"stem":39},"The Intelligence Layer","\u002Fen\u002Ffoundations\u002Fthe-intelligence-layer","en\u002F1.foundations\u002F6.the-intelligence-layer",{"title":41,"path":42,"stem":43},"Hands-On Tour","\u002Fen\u002Ffoundations\u002Fhands-on-tour","en\u002F1.foundations\u002F7.hands-on-tour",{"title":45,"path":46,"stem":47},"Six Adoption Steps","\u002Fen\u002Ffoundations\u002Fsix-steps-and-interview-prep","en\u002F1.foundations\u002F8.six-steps-and-interview-prep",{"title":49,"path":50,"stem":51},"Interview Questions","\u002Fen\u002Ffoundations\u002Finterview-questions","en\u002F1.foundations\u002F9.interview-questions","i-lucide-compass",{"title":54,"path":55,"stem":56,"children":57,"icon":86},"Setup & User Provisioning","\u002Fen\u002Fsetup","en\u002F2.setup\u002F1.index",[58,60,64,68,72,76,80,83],{"title":59,"path":55,"stem":56},"Provisioning Users",{"title":61,"path":62,"stem":63},"Licenses & Permissions","\u002Fen\u002Fsetup\u002Flicenses-and-permission-sets","en\u002F2.setup\u002F2.licenses-and-permission-sets",{"title":65,"path":66,"stem":67},"Integration User","\u002Fen\u002Fsetup\u002Fthe-integration-user","en\u002F2.setup\u002F3.the-integration-user",{"title":69,"path":70,"stem":71},"Security User","\u002Fen\u002Fsetup\u002Fthe-security-user","en\u002F2.setup\u002F4.the-security-user",{"title":73,"path":74,"stem":75},"Analytics Settings","\u002Fen\u002Fsetup\u002Fanalytics-settings","en\u002F2.setup\u002F5.analytics-settings",{"title":77,"path":78,"stem":79},"Hands-On Access","\u002Fen\u002Fsetup\u002Fhands-on-assigning-access","en\u002F2.setup\u002F6.hands-on-assigning-access",{"title":17,"path":81,"stem":82},"\u002Fen\u002Fsetup\u002Fquiz","en\u002F2.setup\u002F7.quiz",{"title":49,"path":84,"stem":85},"\u002Fen\u002Fsetup\u002Finterview-questions","en\u002F2.setup\u002F8.interview-questions","i-lucide-settings-2",{"title":88,"path":89,"stem":90,"children":91,"icon":128},"Creating Datasets","\u002Fen\u002Fcreating-datasets","en\u002F3.creating-datasets\u002F1.index",[92,94,97,101,105,109,113,117,121,125],{"title":93,"path":89,"stem":90},"What Is a Dataset?",{"title":17,"path":95,"stem":96},"\u002Fen\u002Fcreating-datasets\u002Fquiz","en\u002F3.creating-datasets\u002F10.quiz",{"title":98,"path":99,"stem":100},"The Data Landscape","\u002Fen\u002Fcreating-datasets\u002Fthe-data-landscape","en\u002F3.creating-datasets\u002F2.the-data-landscape",{"title":102,"path":103,"stem":104},"Upload a CSV","\u002Fen\u002Fcreating-datasets\u002Fload-data-from-csv","en\u002F3.creating-datasets\u002F3.load-data-from-csv",{"title":106,"path":107,"stem":108},"Grain, Lookups & Joins","\u002Fen\u002Fcreating-datasets\u002Fgrain-lookups-and-joins","en\u002F3.creating-datasets\u002F4.grain-lookups-and-joins",{"title":110,"path":111,"stem":112},"Dataset Builder","\u002Fen\u002Fcreating-datasets\u002Fbuild-with-dataset-builder","en\u002F3.creating-datasets\u002F5.build-with-dataset-builder",{"title":114,"path":115,"stem":116},"Run the Dataflow","\u002Fen\u002Fcreating-datasets\u002Frun-and-troubleshoot-the-dataflow","en\u002F3.creating-datasets\u002F6.run-and-troubleshoot-the-dataflow",{"title":118,"path":119,"stem":120},"Build with a Recipe","\u002Fen\u002Fcreating-datasets\u002Fbuild-the-same-dataset-with-a-recipe","en\u002F3.creating-datasets\u002F7.build-the-same-dataset-with-a-recipe",{"title":122,"path":123,"stem":124},"Combine Datasets","\u002Fen\u002Fcreating-datasets\u002Fcombine-datasets","en\u002F3.creating-datasets\u002F8.combine-datasets",{"title":49,"path":126,"stem":127},"\u002Fen\u002Fcreating-datasets\u002Finterview-questions","en\u002F3.creating-datasets\u002F9.interview-questions","i-lucide-database",false,{"id":131,"title":132,"access":133,"body":134,"description":288,"extension":289,"interview":290,"links":290,"meta":291,"navigation":292,"passScore":290,"path":111,"quiz":290,"seo":293,"stem":112,"video":294,"__hash__":298},"docs\u002Fen\u002F3.creating-datasets\u002F5.build-with-dataset-builder.md","Build a Baseline Dataset with Dataset Builder","members",{"type":135,"value":136,"toc":280},"minimark",[137,141,158,169,180,185,192,203,207,222,226,233,252,256,259,264,273],[138,139,132],"h1",{"id":140},"build-a-baseline-dataset-with-dataset-builder",[142,143,144,145,148,149,153,154,157],"p",{},"Now we build a real Salesforce dataset. ",[146,147,110],"strong",{}," is the original guided tool: it walks the object relationships ",[150,151,152],"em",{},"for you",", figures out the join keys automatically, and writes its instructions into a ",[146,155,156],{},"dataflow",". It's the friendliest way to stand up a baseline dataset, which is exactly why I still hand it to people learning the platform.",[142,159,160,161,164,165,168],{},"Remember the plan from the grain lesson: this dataset is ",[146,162,163],{},"about opportunities",", so we start with Opportunity and look ",[150,166,167],{},"up"," to Account and User.",[170,171,173],"tip",{"icon":172},"i-lucide-plug",[142,174,175,176,179],{},"Dataset Builder reads from the ",[146,177,178],{},"Connect\u002FSync layer",", not from Salesforce directly. So unlike a CSV upload, the sync has to be in place first. If an object isn't synced, you won't be able to select it.",[181,182,184],"h2",{"id":183},"kick-it-off","Kick it off",[142,186,187,188,191],{},"From Analytics Studio: ",[146,189,190],{},"Create → Dataset → Salesforce Data",". This is the middle option — you're not uploading a CSV, and you're not building on top of an existing dataset (that path leads to recipes).",[142,193,194,195,198,199,202],{},"You'll be asked which dataflow to use. Every org ships with a ",[146,196,197],{},"default Salesforce dataflow",", and you can add to it or create your own. In production you'll typically have a small number of named, scheduled dataflows and you'll know exactly what each one populates. For now, use the default. Click ",[146,200,201],{},"Next"," and Dataset Builder opens in the Data Manager tab.",[181,204,206],{"id":205},"start-from-the-lowest-object","Start from the lowest object",[142,208,209,210,213,214,217,218,221],{},"Dataset Builder now shows every object it can reach. Our three are ",[146,211,212],{},"Opportunity",", ",[146,215,216],{},"Account",", and ",[146,219,220],{},"User",".",[223,224],"lesson-steps",{":items":225},"[{\"title\":\"Select Opportunity first\",\"description\":\"This is the core object and the grain. Starting here is what lets you reach up to Account and User. Start with Account instead and you'd be stuck — it has nowhere to look up to.\"},{\"title\":\"Add Account via Relationships\",\"description\":\"Hover the Opportunity node, click the plus, open Relationships, and choose Account. It's a lookup — it attaches account fields to each opportunity.\"},{\"title\":\"Add User (the owner)\",\"description\":\"From Opportunity's relationships, add the User table to bring in the opportunity's owner. Now you have three connected nodes.\"}]",[142,227,228,229,232],{},"The grain holds: ",[146,230,231],{},"every row is one unique opportunity",", enriched with the account it belongs to and the user who owns it. No opportunity is counted twice.",[170,234,236],{"icon":235},"i-lucide-wand-2",[142,237,238,239,242,243,247,248,251],{},"Notice what you ",[150,240,241],{},"didn't"," have to do: you never told it that Opportunity's ",[244,245,246],"code",{},"AccountId"," equals Account's ",[244,249,250],{},"Id",". Dataset Builder read the relationships straight from the Salesforce schema and wired the keys for you. That automatic key detection is the whole reason it's beginner-friendly.",[181,253,255],{"id":254},"pick-your-fields","Pick your fields",[142,257,258],{},"With the relationships in place, add the fields you need from each object. In the walkthrough that's roughly:",[260,261],"lesson-cards",{":columns":262,":items":263},"3","[{\"title\":\"From Opportunity\",\"icon\":\"i-lucide-target\",\"description\":\"Amount, Close Date, Created Date, Name, Stage, Won, Type — the core measures and dimensions, plus the two IDs it carries automatically.\"},{\"title\":\"From Account\",\"icon\":\"i-lucide-building-2\",\"description\":\"Account Name, Type, Industry, and Billing State (or zip) — the firmographics you'll slice opportunities by.\"},{\"title\":\"From User\",\"icon\":\"i-lucide-user\",\"description\":\"The owner's Full Name and photo — so dashboards can attribute and personalize.\"}]",[170,265,267],{"icon":266},"i-lucide-triangle-alert",[142,268,269,272],{},[146,270,271],{},"Once you click Next, you can't come back to this screen."," Forget a field and you'll have to edit the dataflow's digest node instead (more on that next lesson). So before you move on, double-check every field you need is selected. Measure twice, click Next once.",[142,274,275,276,279],{},"When your fields are set, choose an app (the private app is fine while you learn) and click ",[146,277,278],{},"Create Dataset",". Dataset Builder pushes all of that into the dataflow and kicks it off. In the next lesson we'll watch it run — and handle the errors that new training orgs love to throw the first time.",{"title":281,"searchDepth":282,"depth":283,"links":284},"",1,2,[285,286,287],{"id":183,"depth":283,"text":184},{"id":205,"depth":283,"text":206},{"id":254,"depth":283,"text":255},"Use Dataset Builder to create an opportunities dataset from Salesforce data. Start from the lowest-grain object, walk relationships up to Account and User, pick fields, and let it write the dataflow for you.","md",null,{},{"title":110},{"title":132,"description":288},{"id":295,"start":296,"end":297},"-0mp2mUjyVI",938,1291,"wTET8nJB5BntXibMKCzVs2ZiZE9U2rqagrxBfoe-7ZM",[300,302],{"title":106,"path":107,"stem":108,"description":301,"children":-1},"The one concept that makes or breaks a CRM Analytics dataset: grain. Understand grain, why you start from your lowest-level object, and how lookups and joins pull related data onto each row without multiplying it.",{"title":114,"path":115,"stem":116,"description":303,"children":-1},"Execute the default dataflow to build your dataset, monitor it in Data Manager, and fix the most common first-run error — objects that haven't been synced yet — by running Connect manually.",[],1783475169510]