Lloyds School of Motoring provides lorry training in our privately owned fleet of vehicles across all categories.
Duration 3 Days 18 CPD hours This course is intended for This is an introductory level React development course for web developers. Overview Our engaging instructors and mentors are highly experienced practitioners who bring years of current 'on-the-job' experience into every classroom. Working in a hands-on learning environment, guided by our expert team, attendees will learn about and explore: A basic and advanced understanding of React components An advanced, in-depth knowledge of how React works A complete understanding of using Redux How to build, validate, and populate interactive forms How to use inline styles for perfect looking components How to test React components How to build and use components How to get control of your build process Introduction to React | React Basics is a three-day hands-on course designed to get students quickly up and running with Core React skills. Geared for more experienced web developers new to React, this course provides students with the core knowledge and hands-on skills they require to build reliable, powerful React apps.Throughought the course students will explore React fundamentals with a progressive, example-driven approach. You?ll create your first apps, learn how to write components, start handling user interaction, and manage rich forms. We end the first part by exploring the inner workings of Create React App (Facebook?s tool for running React apps), and building a multi-page app that uses client-side routing.Every project in this course was built using Create React App. Create React App is based on Webpack, a tool which helps process and bundle our various JavaScript, CSS, HTML, and image files. We explore Create React App in-depth in the module ?Using Webpack with Create React App.?Students will build Single Page Applications (SPA), create robust routing with error handling, and both class and functional reusable components.The lab project will also include the use of form validation.NOTE: This is a foundational course that explores how to build your first React application. Students who want a deeper dive, withmore intermediate level topics such as Redux, REST, Unit Testing and more might consider the TT4195 Mastering React five-daysuperset of this class as an alternative. ES6 Primer Prefer const and let over var Arrow functions Modules Object.assign() Template literals The spread operator and Rest parameters Enhanced object literals Default arguments Destructuring assignments Your First React Web Application Setting up your development environment JavaScript ES6 /ES7 What?s a component? Building The App Making The App data-driven Your app?s first interaction JSX and the Virtual DOM React Uses a Virtual DOM Why Not Modify the Actual DOM? What is a Virtual DOM? Virtual DOM Pieces ReactElement JSX
Duration 5 Days 30 CPD hours This course is intended for This introductory-level, fast-paced course is for skilled web developers new to React who have prior experienced working HTML5, CSS3 and JavaScript. Overview Our engaging instructors and mentors are highly experienced practitioners who bring years of current 'on-the-job' experience into every classroom. Working in a hands-on learning environment, guided by our expert team, attendees will learn about and explore: A basic and advanced understanding of React components An advanced, in-depth knowledge of how React works A complete understanding of using Redux How to build, validate, and populate interactive forms How to use inline styles for perfect looking components How to test React components How to build and use components How to get control of your build process A deep understanding of data-driven modeling with props and state How to use client-side routing for pages in your apps How to debug a React application Mastering React is a comprehensive hands-on course that aims to be the single most useful resource on getting up to speed quickly with React. Geared for more experienced web developers new to React, this course provides students with the core knowledge and hands-on skills they require to build reliable, powerful React apps. After the first few modules, you?ll have a solid understanding of React?s fundamentals and will be able to build a wide array of rich, interactive web apps with the framework. The first module is an introduction to the new functionality in ECMAScript 6 (JavaScript). Client-side routing between pages, managing complex state, and heavy API interaction at scale are also covered. This course consists of two parts. In the first part of the course students will explore all the fundamentals with a progressive, example-driven approach. You?ll create your first apps, learn how to write components, start handling user interaction, and manage rich forms. We end the first part by exploring the inner workings of Create React App (Facebook?s tool for running React apps), writing automated unit tests, and building a multi-page app that uses client-side routing. The latter part of the course moves into more advanced concepts that you?ll see used in large, production applications. These concepts explore strategies for data architecture, transport, and management: Redux is a state management paradigm based on the Flux architecture. Redux provides a structure for large state trees and allows you to decouple user interaction in your app from state changes. GraphQL is a powerful, typed, REST API alternative where the client describes the data it needs. Hooks is the powerful, new way to maintain state and properties with functional components and the future of React according to Facebook. ES6 Primer (Optional) Prefer const and let over var Arrow functions Modules Object.assign() Template literals The spread operator and Rest parameters Enhanced object literals Default arguments Destructuring assignments Your first React Web Application Setting up your development environment JavaScript ES6 /ES7 Getting started What?s a component? Our first component Building the App Making the App data-driven Your app?s first interaction Updating state and immutability Refactoring with the Babel plugin transform-class-properties JSX and the Virtual DOM React Uses a Virtual DOM Why Not Modify the Actual DOM? What is a Virtual DOM? Virtual DOM Pieces ReactElement JSX JSX Creates Elements JSX Attribute Expressions JSX Conditional Child Expressions JSX Boolean Attributes JSX Comments JSX Spread Syntax JSX Gotchas JSX Summary Components A time-logging app Getting started Breaking the app into components The steps for building React apps from scratch Updating timers Deleting timers Adding timing functionality Add start and stop functionality Methodology review Advanced Component Configuration with props, state, and children ReactComponent props are the parameters PropTypes Default props with getDefaultProps() context state Stateless Components Talking to Children Components with props.children Forms Forms 101 Text Input Remote Data Async Persistence Redux Form Modules Unit Testing & Jest Writing tests without a framework What is Jest? Using Jest Testing strategies for React applications Testing a basic React component with Enzyme Writing tests for the food lookup app Writing FoodSearch.test.js Routing What?s in a URL? React Router?s core components Building the components of react-router Dynamic routing with React Router Supporting authenticated routes Intro to Flux and Redux Why Flux? Flux is a Design Pattern Flux implementations Redux & Redux?s key ideas Building a counter The core of Redux The beginnings of a chat app Building the reducer() Subscribing to the store Connecting Redux to React Intermediate Redux Using createStore() from the redux library Representing messages as objects in state Introducing threads Adding the ThreadTabs component Supporting threads in the reducer Adding the action OPEN_THREAD Breaking up the reducer function Adding messagesReducer() Defining the initial state in the reducers Using combineReducers() from redux React Hooks Motivation behind Hooks How Hooks Map to Component Classes Using Hooks Requires react 'next' useState() Hook Example useEffect() Hook Example useContext() Hook Example Using Custom Hooks Using Webpack with Create React App JavaScript modules Create React App Exploring Create React App Webpack basics Making modifications Hot reloading; Auto-reloading Creating a production build Ejecting Using Create React App with an API server When to use Webpack/Create React App Using GraphQL Your First GraphQL Query GraphQL Benefits GraphQL vs. REST GraphQL vs. SQL Relay and GraphQL Frameworks Chapter Preview Consuming GraphQL Exploring With GraphiQL GraphQL Syntax 101 . Complex Types Exploring a Graph Graph Nodes ; Viewer Graph Connections and Edges Mutations Subscriptions GraphQL With JavaScript GraphQL With React
Duration 5 Days 30 CPD hours This course is intended for In order to be successful in this course you should have incoming hands-on experience with another programming language. This course is not for non-developers or new developers. Possible roles that may attend this course include: Software Developers: Professionals who have been working with other programming languages and want to expand their skillset by learning Java and its object-oriented features. Web Developers: Those who work on web applications and want to enhance their back-end development capabilities with Java. Mobile App Developers: Developers who wish to enter the world of Android app development, where Java is a widely used language for creating mobile applications. Overview This 'skills-centric' course is about 50% hands-on lab and 50% lecture, designed to train attendees in core OO coding and Java development skills, coupling the most current, effective techniques with the soundest industry practices. Our engaging instructors and mentors are highly experienced practitioners who bring years of current 'on-the-job' experience into every classroom. Working in a hands-on learning environment, guided by our expert team, attendees will learn to: Understand what OO programming is and what the advantages of OO are in today's world Work with objects, classes, and OO implementations Understand the basic concepts of OO such as encapsulation, inheritance, polymorphism, and abstraction Understand not only the fundamentals of the Java language, but also its importance, uses, strengths and weaknesses Understand the basics of the Java language and how?it relates to OO programming and the Object Model Learn to use Java exception handling Understand and use classes, inheritance and polymorphism Understand and use collections, generics, autoboxing, and enumerations Become familiar with the concept of functional programming using Lambda Expressions Process large amounts of data using the Stream API introduced in Java 8 Discover the new Date/Time API Use the JDBC API for database access Work with annotations Take advantage of the Java tooling that is available with the programming environment being used in the class Java 8 Features: Lambda Expressions, Method and Constructor references, The Streams API, Collectors, The Optional class Geared for experienced developers, Basic Java Programming for Developers New to OO, this hands-on, workshop-style course will provide you with an immersive learning experience that will expand your skillset and open doors to new opportunities within the ever-growing technology landscape. Mastering Java and its powerful capabilities will provide you with the competitive edge you need to stand out in today's fast-paced development world. Working in a hands-on learning environment led by our expert coach, you?ll thoroughly explore the foundations of the Java platform, essential programming concepts, and advanced topics, ensuring you acquire a strong understanding of the language and its ecosystem. The object-oriented programming principles taught in this course promote code reusability and maintainability, enabling you to streamline development processes and reduce long-term costs. As you progress through the course, you will also gain familiarity with using an IDE, enhancing your development workflow and collaboration with other Java developers, enabling you to integrate seamlessly into new projects and teams. You?ll also gain practical experience in applying the concepts and techniques learned, solidifying your newly acquired skills and facilitating their direct application in real-world scenarios. You?ll exit this course empowered to create robust, scalable, and efficient Java-based applications that drive innovation and growth for your organization The Java Platform The Java Platform Lifecycle of a Java Program Responsibilities of JVM Documentation and Code Reuse Using the JDK Explain the JDK?s file structure Use the command line compiler to compile a Java class Use the command line Java interpreter to run a Java application class The IntelliJ Paradigm Introduce the IntelliJ IDE The Basics of the IntelliJ interface IntelliJ Projects and Modules Creating and running Java applications Writing a Simple Class Write a Java class that does not explicitly extend another class Define instance variables for a Java class Create object instances Primitives vs Object References Implement a main method to create an instance of the defined class Adding Methods to the Class Write a class with accessor methods to read and write instance variables Write a constructor to initialize an instance with data Write a constructor that calls other constructors of the class to benefit from code reuse Use the this keyword to distinguish local variables from instance variables Object-Oriented Programming Real-World Objects Classes and Objects Object Behavior Methods and Messages Inheritance, Abstraction, and Polymorphism Encapsulation Inheritance Method Overriding Polymorphism Essential Java Programming Essential Java Programming Language Statements Arithmetic operators Operators to increment and decrement numbers Comparison operators Logical operators Return type of comparison and logical operators Use for loops Switch Expressions Switch Expressions and yield Using Strings and Text Blocks Create an instance of the String class Test if two strings are equal Get the length of a string Parse a string for its token components Perform a case-insensitive equality test Build up a string using StringBuffer Contrast String, StringBuffer,and StringBuilder Compact Strings Text Blocks Specializing in a Subclass Constructing a class that extends another class Implementing equals and toString Writing constructors that pass initialization data to parent constructor Using instanceof to verify type of an object reference Pattern matching for instanceof Overriding subclass methods Safely casting references to a more refined type Fields and Variables Discuss Block Scoping Rules Distinguish between instance variables and method variables within a method Explain the difference between the terms field and variable List the default values for instance variables Final and Static fields and methods Local Variable type inference Using Arrays Declaring an array reference Allocating an array Initializing the entries in an array Writing methods with a variable number of arguments Records Data Objects in Java Introduce records as carrier of immutable data Defining records Java Packages and Visibility Use the package keyword to define a class within a specific package Discuss levels of accessibility/visibility Using the import keyword to declare references to classes in a specific package Using the standard type naming conventions Visibility in the Java Modular System Correctly executing a Java application class The Java modular system Defining Modules Inheritance and Polymorphism Write a subclass with a method that overrides a method in the superclass Group objects by their common supertype Utilize polymorphism Cast a supertype reference to a valid subtype reference Use the final keyword on methods and classes to prevent overriding Interfaces and Abstract Classes Define supertype contracts using abstract classes Implement concrete classes based on abstract classes Define supertype contracts using interfaces Implement concrete classes based on interfaces Explain advantage of interfaces over abstract classes Explain advantage of abstract classes over interfaces Static, default and private methods in interfaces Sealed classes Introduce Sealed classes The sealed and permits modifiers Sealed Interfaces Exception Handling Introduction to Exception Handling Introduce the Exception architecture Defining a try/catch blocks Checked vs Unchecked exceptions Exceptions Defining your own application exceptions Automatic closure of resources Suppressed exceptions Handling multiple exceptions in one catch Helpful Nullpointers Enhanced try-with-resources Java Developer's Toolbox Developing applications Introduce the wrapper classes Explain Autoboxing and Unboxing Converting String representations of primitive numbers into their primitive types Defining Enumerations Using static imports Deprecating methods Advanced Java Programming Introduction to Generics Generics and Subtyping Bounded Wildcards Generic Methods Legacy Calls To Generics When Generics Should Be Used Lambda Expressions and Functional Interface Understanding the concept of functional programming Writing lambda expressions Understanding functional interfaces Collections Provide an overview of the Collection API Review the different collection implementations (Set, List and Queue) Explore how generics are used with collections Examine iterators for working with collections Using Collections Collection Sorting Comparators Using the Right Collection Lambda expressions in Collections Bonus Topics: Time Permitting Streams Understanding the problem with collections in Java Thinking of program solutions in a declarative way Use the Stream API to process collections of data Understand the difference between intermediate and terminal stream operations Filtering elements from a Stream Finding element(s) within a Stream Collecting the elements from a Stream into a List takeWhile and dropWhile intermediate operations Collectors Using different ways to collect the items from a Stream Grouping elements within a stream Gathering statistics about numeric property of elements in a stream
Duration 4 Days 24 CPD hours This course is intended for If you want to advance from being a front-end developer to a full-stack developer and learn how Node.js can be used for hosting full-stack applications, this course is for you. Knowledge of JavaScript's basic syntax and experience with popular front-end libraries such as jQuery is required. You should also have used JavaScript with HTML and CSS, but not necessarily Node.js. Overview By the end of this course, you'll have the skills you need to tackle any real-world JavaScript development problem using a modern JavaScript approach, both for client and server sides.After completing this course, you will be able to: Apply the core concepts of functional programming Build a Node.js project that uses the Express.js library to host an API Create unit tests for a Node.js project to validate it Use the Cheerio library with Node.js to create a basic web scraper Develop a React interface to build processing flows Use callbacks as a basic way to bring control back This is your one-stop solution to mastering modern JavaScript. This course covers the latest features of JavaScript and advanced concepts, such as modularity, testing, and asynchronous programming. By the end of the course, you?ll know how to create a full-stack JavaScript application using NodeJS and how to use JavaScript in functional programming. JavaScript, HTML, and the DOM HTML and the DOM Developer Tools Node.js and npm What is Node.js? Node Version Manager (nvm) Node Package Manager (npm) Node.js APIs and Web Scraping Globals FileSystem APIs HTTP APIs What is Scraping? RESTful APIs with Node.js What is an API? What is REST? Useful Defaults and Easy Inputs Middleware The Contents of a JWT MongoDB Modular JavaScript ES6 Modules Object-Oriented Programming (OOP) npm Package? Code Quality Clear Naming Unit Tests Integration Tests End-to-End Testing Puppeteer Advanced JavaScript Language Features Supported in ES5, ES6, ES7, ES8, and ES9 OOP in JavaScript Sorting Maps and Sets Math, Date, and String Symbols, Iterators, Generators, and Proxies Asynchronous Programming Callback Hell Async and Await Event-Driven Programming and Built-In Modules Eventing Node.js Built-In Modules Handling Large Files in Node.js Functional Programming with JavaScript Functions ? First-Class Citizens Pure Functions Higher-Order Functions Function Composition Immutability and Side Effects Introduction to GraphQL Language Schemas and Queries
Duration 5 Days 30 CPD hours This course is intended for This course is designed for students who want to learn the R programming language, particularly students who want to leverage R for data analysis and data science tasks in their organization. The course is also designed for students with an interest in applying statistics to real-world problems. A typical student in this course should have several years of experience with computing technology, along with a proficiency in at least one other programming language. Overview In this course, you will use R to perform common data science tasks.You will: Set up an R development environment and execute simple code. Perform operations on atomic data types in R, including characters, numbers, and logicals. Perform operations on data structures in R, including vectors, lists, and data frames. Write conditional statements and loops. Structure code for reuse with functions and packages. Manage data by loading and saving datasets, manipulating data frames, and more. Analyze data through exploratory analysis, statistical analysis, and more. Create and format data visualizations using base R and ggplot2. Create simple statistical models from data. In our data-driven world, organizations need the right tools to extract valuable insights from that data. The R programming language is one of the tools at the forefront of data science. Its robust set of packages and statistical functions makes it a powerful choice for analyzing data, manipulating data, performing statistical tests on data, and creating predictive models from data. Likewise, R is notable for its strong data visualization tools, enabling you to create high-quality graphs and plots that are incredibly customizable. This course will teach you the fundamentals of programming in R to get you started. It will also teach you how to use R to perform common data science tasks and achieve data-driven results for the business. Lesson 1: Setting Up R and Executing Simple Code Topic A: Set Up the R Development Environment Topic B: Write R Statements Lesson 2: Processing Atomic Data Types Topic A: Process Characters Topic B: Process Numbers Topic C: Process Logicals Lesson 3: Processing Data Structures Topic A: Process Vectors Topic B: Process Factors Topic C: Process Data Frames Topic D: Subset Data Structures Lesson 4: Writing Conditional Statements and Loops Topic A: Write Conditional Statements Topic B: Write Loops Lesson 5: Structuring Code for Reuse Topic A: Define and Call Functions Topic B: Apply Loop Functions Topic C: Manage R Packages Lesson 6: Managing Data in R Topic A: Load Data Topic B: Save Data Topic C: Manipulate Data Frames Using Base R Topic D: Manipulate Data Frames Using dplyr Topic E: Handle Dates and Times Lesson 7: Analyzing Data in R Topic A: Examine Data Topic B: Explore the Underlying Distribution of Data Topic C: Identify Missing Values Lesson 8: Visualizing Data in R Topic A: Plot Data Using Base R Functions Topic B: Plot Data Using ggplot2 Topic C: Format Plots in ggplot2 Topic D: Create Combination Plots Lesson 9: Modeling Data in R Topic A: Create Statistical Models in R Topic B: Create Machine Learning Models in R
Duration 5 Days 30 CPD hours This course is intended for This course is intended for both novice and experienced programmers. Some experience in C++, C# or Java is helpful. Overview After completing this course, you will be able to: Write and test JavaScript code in modern browsers. Understand and work with the browser's Document Object Model (DOM). Work DOM objects and write code to respond to events. Add jQuery to their projects and use jQuery to manipulate the DOM and to make Ajax calls. Understand Ajax and Web Services, including HTTP Verbs and asynchronous Ajax calls. Work with XML and JSON data formats. Understand and use RESTful Web Services including ODATA queries. Work with Anonymous Functions, Self-Invoking Functions and Closures. Understand the role of the Window and Navigator objects. Describe and understand variables, 'variable hoisting', and JavaScript objects. This course is an in depth hands-on study of JavaScript. The course includes detailed hands-on labs and Q&A labs. The labs include multiple projects that update an existing web site. This course is similar to the retired Course 20480: Programming in HTML5 with JavaScript and CSS3. Module 1: Basic Scripting JavaScript Basics JavaScript or ECMAScript? Which Version of JavaScript am I Using? Shims, Shivs, and Polyfills Writing and Testing JavaScript Editors and the F12 Tools Key Parts of a Script Module 2: The Document Object Model The DOM Accessing Objects from the DOM Responding to Events Adding Elements to the DOM Module 3: Introduction to jQuery jQuery Downloading the jQuery Library jQuery Versions Linking to the Library Selecting Elements using jQuery Working with the Data Returned by jQuery Setting CSS Properties Running a Function Against the jQuery Return Set Module 4: Ajax and Web Services Web Services HTTP Verbs Data Formats ? XML and JSON Ajax RESTful Web Services OData OData Queries OData Updates Module 5: Diving in Deeper Is JavaScript Compiled? Data Types and Objects Extending Data Types Variables, Scopes and Hoisting Functions The ?this? Keyword Errors Recursion
Duration 3 Days 18 CPD hours This course is intended for This is an introductory level course, designed for web developers that need to upgrade core skills leveraging modern scripting and web development languages and standards. This course provides an excellent foundation for continued learning to gain in-demand skills in in-demand skills and technologies such as Angular, React, NodeJS, JQuery and more. This course can also be tuned for non-developers. Please inquire for details. Overview This 'skills-focused' course is approximately 50% hands-on, combining expert lecture, real-world demonstrations and group discussions with machine-based practical labs and exercises. Our instructors are highly experienced practitioners who bring years of current 'on-the-job' experience into every classroom. Working within in a hands-on learning environment guided by our expert team, attendees will explore: HTML5: How to effectively meet requirements using the full range of HTML5 semantic and structural elements To work with technologies such as web storage, application caching, and cross-domain messaging to improve performance and the user experience CSS: What features CSS3 supports and how they can be effectively used with HTML5 and other technologies To adapt to varying degrees of browser support for HTML5 and CSS3 JavaScript: What JavaScript is, how it relates to other programming languages, and how to script your web pages with it To traverse and manipulate the DOM and handle events in ways that work in all browsers To work with closures and prototypes and other exotic features of JavaScript Debugging What is needed to effectively debug these web technologies How to use both browser-based and proxy-based debuggers and tools Introduction to HTML5, CSS3 & JavaScript is geared for developers who need to understand the latest web technologies and responsive design practices central to targeting the entire spectrum of user platforms and browsers. This jumpstart style course provides a balanced mixture of theory and practical labs designed to take students through HTML5, CSS3 and JavaScript. Students who attend this course will leave this course armed with the new skills to begin to design, implement, and deploy robust, flexible, and safe web applications HTML Refresher HTML Review Introduction to HTML5 Introduction to CSS CSS Basics CSS3 Overview CSS3 Advanced Selectors CSS3 Visual Effects Introduction to JavaScript JavaScript Basics Debugging Tools JavaScript Functions JavaScript Arrays, Math and Date JavaScript Event Handling and the DOM Object-Oriented JavaScript
Duration 1 Days 6 CPD hours This course is intended for This course is intended for solution architects, developers, business analysts, system administrators, or anyone who works as a solution builder within their company. Overview Build and deploy a solution Create properties and document classes Create roles and in-baskets Create a case type and tasks Create a workflow Use preconditions and sets Automate case packaging Add case stages Apply solution design principles In this course you will create basic case management solutions with IBM Case Manager Builder and Process Designer. Using an iterative solution development process, you will create, deploy, test, and revise your solutions, adding complexity and functionality to your solutions as you gain skills. You will create properties and document classes, configure roles and in-baskets, and define case stages. You will work with case types, tasks, and workflows. This course includes some guidelines on solution design principles. After completing this course, you can build on these skills by taking more advanced or specialized courses in security, user-interface customization, and solution deployment. Build and Deploy a Solution Build a solution Deploy a solution Test a solution Manage roles Redeploy a solution Create Properties and Document Classes Create case properties Create task properties Create a business object Create document classes Create Roles and In-Baskets Create roles Create in-baskets Create Tasks Create a to-do task Create a container task Add the to-do list widget to the Case Details pag Create a Step Map Open a task in Step Designer Create a step map Add a workgroup to a step map Add an attachment to a step map Use Preconditions and Sets Organize tasks with preconditions Organize tasks with inclusive sets Organize tasks with exclusive sets Automate Case Packaging Open a task in Process Designer Add a component step to a task Use a component step to package a case Add Case Stages Add case stages to a solution Use a system step to perform a case stage operation Use a case stage as a task precondition Solution Design Principles Describe solution design principles
Duration 5 Days 30 CPD hours This course is intended for This class is ideal for experienced Salesforce Administrators, business analysts, and implementation specialists looking to gain a greater technical understanding of Salesforce CPQ Administration. It's also designed for experienced administrators, solution architects, implementation consultants, and developers looking to understand the full capabilities of Salesforce CPQ in order to formulate solutions for their business. This class is also a great foundation builder for anyone looking to earn the Salesforce CPQ Specialist credential. Overview When you complete this course, you'll be able to: Set Up Products, Bundles, and Product Rules Build Price Rules to Automatically Populate Field Values While Quoting or Configuring a Bundle Set Up Appropriate System Discounts and Pricing Methods Configure Dynamic Output Document Generation Manage Subscription Products (Including the Processes for Renewing and/or Amending Them) Formulate Sound Solutions to Common CPQ Business Requirements Make Significant Progress in Preparing for the Salesforce Certified CPQ Specialist Exam Discover how to configure an end-to-end Salesforce CPQ solution with out-of-the-box functionality. In this 5-day class, our CPQ experts will give you an in-depth look at Salesforce CPQ and its applications. You?ll learn how to set up and manage products, configure discount and pricing methods, create and manage subscriptions, and formulate solutions to meet common CPQ business requirements so you can successfully implement a Salesforce CPQ solution for your company. Course Introduction Review Course Objectives Set Learner Expectations Review Housekeeping Rules Explore Additional Course Resources Review Exam Quick Facts Introduction to CPQ Understand the Business Case for CPQ Watch an End-to-End Solution Demo Build a Quote Object Model Foundations Get Familiar with Products, Price Books, and Price Book Entries Review Product Fields Integral to Basic Salesforce CPQ Functionality Product Selection Modify Out-of-the-Box Button Behavior for Product Selection Review Guided Selling Bundle Configuration Define and Build Product Bundles Enforce Business Logic with Product Features Option Selection Guidelines Enforce Business Logic with Option Constraints Product Rules Define Product Rules Enforce Business Logic with Product Rules (Including Validation Rules, Alert Rules, Selection Rules, and Dynamic Bundles) Build Product Rules Using Supporting Objects (Including Error Conditions, Product Actions, Summary Variables, Configuration Rules, and Configuration Attributes) Pricing Methods Discover Pricing Waterfall Default Flows Review List Pricing, Cost Plus Markup, and Block Pricing Use Contracted Pricing for Negotiated Prices Subscription Pricing Configure Subscription and Proration Pricing Methods Understand How Subscription Pricing Methods Affect List and Regular Price Discounting Compare Discounting Strategies Build a Discount Schedule Price Rules Set Values for Quote and Quote Line Fields Declaratively Review CPQ Advanced Quote Calculator Calculation Events and Conditions Understand Price Action Sources (Including Static Values, Summary Variables, Formulas, and Lookup Tables) Create Lookup Queries to Outsource Evaluation to a Lookup Object Advanced Approvals Compare and Contrast the Advanced Approval Package Versus Native Approvals Define Approvers, Approval Chains, Approval Variables, and Approval Rules to Meet Specific Business Requirements Quote Templates Generate Dynamic Output Documents Create Conditional Template Content Localization and Multicurrency Make Accommodations for Localization Define Localization and How It Works in CPQ Orders Review Business Purposes of an Order Define the Data Model for Orders Define Data Requirements to Generate Orders Contracts, Renewals, and Amendments Generate New Contracts to Manage Active Subscriptions Related to an Account Review Amendment and Renewal Processes Review Renewal Pricing Methods Capstone Class Project: Troubleshoot Common Scenarios in Salesforce CPQ Design a Solution