 Hello everyone, I'm Sanjay Gupta. I welcome you on Sanjay Gupta Tech School. So today we are having day 85 of this bootcamp. And like today also we are going to discuss about deployment and in this session you will be learning about how we can use deployment, how we can use workbench method for deployment. Along with that you will learn how we can do deployment with the help of VS code, right? So I have Abhishek with me live on this platform. So welcome Abhishek on this session. So Abhishek will be delivering like all the demonstrations to you how you can deploy through workbench and how you can deploy through Visual Studio Code. And I hope you have gone through a previous video which was part one, where like we discussed all the methods through which we can do deployment. So moving forward, so I just want to share can we go to next slide Abhishek? So this is a telegram group which you can join and hear all the folks who are enthusiastic for our Salesforce ecosystem. They are learning Salesforce helping each other. So if you also want to become part of this community so you can join this telegram group, right? And please go to next slide. So this is our bootcamp timeline for future. So like this week we are having deployment related session and lots of folks are asking me about QA related sessions. So those will be starting from next week and once QA sessions will be completed so we'll be having mock interview sessions. And along with that like as yesterday I announced like we'll be having one more bootcamp. So Omni Studio Bootcamp will be starting soon. So I will be sharing more updates on that like on all social media platforms soon, okay? So do follow Sanjay Gupta Tech School on YouTube, LinkedIn, Instagram, Telegram. So if you go to next slide so you can see all those social media handle names are available in front of you. And if you want to have the session tracker where all the previous and current or future session details you want to find. So those links are available in the description of this video. And like if you want to give a review, right? So if you want to give a review about the bootcamp and whatever session we are conducting so in the next slide you will see like on this YouTube channel in the comment section in the chat or maybe on LinkedIn you can share your reviews, right? So moving to next slide now I hand over a platform to Abhishek. So Abhishek please go ahead and maybe you can introduce yourself because lots of new folks will be there and then you can start with the session. Over to you. Yeah, thank you Sanjay. Thank you Sanjay for giving me this opportunity. So hi everyone. I hope you all are doing well. So myself Abhishek and I am a Salesforce and Velocity developer and I have overall five plus years of experience in Salesforce community. And I have, I am a five X Salesforce certified and I have, I have, I have a Umi Studio Developer Certification then I have CPQ Service Cloud PD1 and Administrator Certification and I'm also a double star ranger on Tralid. So that's all about me. So Sanjay we'll move forward and we'll start. Yeah, you can start the session. So in yesterday's session we discussed all about what is deployment when we are working in Salesforce community or Salesforce platform, right? So I'll just brief again about what is deployment. So whenever, whenever you are working on a project, right? So you will be purchasing a production, production license from Salesforce but you will never develop or build your functionalities in your production environment. You will always develop your functionalities in your sandboxes which is a copy of your production environment, right? So let's say I am a developer and I want to create a Apex class. So I'll be creating that Apex class in the sandbox which is created from production or production environment. Then after all my build and development whenever I have completed I will be deploying those changes and those changes can be a custom field, can be Apex class, custom object and the Lucie components and anything like that. Then I will be deploying all those components from sandbox environment to the production environment or it can be deployment from one sandbox environment to another sandbox environment. So we discussed a lot of methodologies for deployments and so those methodologies was like and one of the methodologies for deployment is workbench. So we will be seeing a demo how we can actually deploy with the help of workbench. So I'll just show you how we can do that. So basically first of all you will be having your Salesforce org logged in in your browser. Sorry to interrupt Abhishek. So maybe like if you can show that slide we have a diagram in the slide in the fourth tab. So if you go to the next slide so we have a diagram so it will help them to understand. Sure, sure. Thank you, Sanjay. So as we have discussed, we will be having our source environment which can be a sandbox or it can be another production environment and then we will retrieve all our components from our source environment and with the help of workbench we will be deploying it to the target environment and again this can be another sandbox or production environment, right? So workbench is a tool for which you don't have to install anything. This workbench tool can be run on your browser and it can be connected with your Salesforce org for retrieval and deployment, right? So now we'll see the demo, how actually we can do it. First of all you can simply just search on Google let's say workbench Salesforce, right? And this is the URL on which you can go workbench.developerforce.com and you can just simply click on this environment, this link, and then you have to select whether your environment is production environment or sandbox environment. Abhishek, sorry to interrupt again. Just zoom in, it is like text, yeah. Now it is visible. Thank you. So let's say you want to retrieve one of your Apex class from your production environment or sandbox environment and you want to deploy this Apex class from one environment to another environment, right? So first we'll be connecting with the environment from where we want to retrieve our components. So in my case, I have a production org and we can select the latest API version and then just click I agree to the terms and condition and click on the login with Salesforce. As soon as you will be clicking on that one, you will get logged in, automatically logged in into the workbench. So right now I was already logged in into the workbench so it didn't ask me to enter my user ID and password. So I will show you how actually it will look like I'll click the button log out again and I'll log in again. So I'll go here, production login with Salesforce, right? So as you can see in the URL, it took my Salesforce credential automatically because in the same browser, I have logged in my Salesforce org as well, right? So this is what you can do. Now, for demoing purpose, what I have done is in my Salesforce org, I have created an EPIX class which is called as deployment demo. And I have added a method in that EPIX class and I have added a system.devoc which is saying, welcome to the Sanjay Gupta Tech School. Now, what we will be doing it, we will be retrieving this EPIX class with the help of workbench, right? And that EPIX class will get downloaded to my local system where I can make some changes and then we will be deploying it to the same org, right? So we will be not making any changes in the developer console directly, but we will retrieve it first and we will make some changes in the EPIX class and then we will deploy it with the help of workbench. So in our case, source org and the target org is same for us, but in usual scenario, what we do is we retrieve our components from the workbench from one environment and then we will be logging in workbench for the target org and then we will deploy to that. So in today's session, we will be for our target org and the source org will be the same org, right? So if when you are logged in to the workbench, you just go to this migration tab, right? And you click the retrieve button. Then it will say upload an unpackage manifest, which is nothing but a package package.xml that we discussed yesterday. I'm gonna explain it today again, right? And maybe Abhishek, like we can show like how they can search package.xml on Google because if they are not having any template ready. So... Yeah, definitely true. Sam, yeah, package.xml sample. Yeah. This is a Salesforce article that you, I mean, this is a developer guide, right? So here you can see a package.xml, where we have the member is custom object, the component is custom object and the member is account. Yeah, so guys, sorry Abhishek. So guys, basically this article is very important because here you can see whatever component or whatever metadata you want to deploy. So you just need to put name and member API name. So for standard and custom object, name should be custom object and member will be the API of that particular object. And if you scroll down Abhishek, so I think we have custom object, yeah. So if you want to retrieve all custom object, so we need to use asterisk. And if we scroll down, so different, different metadata items you have to retrieve differently, right? So they are shown here separately, but there may be one question, like can we combine all these in one package.xml? So that is possible, right? So like you need to copy types, like line number three to line number six, and that you can place in one package.xml. So line number two and line number seven, eight, these will be common for all. And types, tag, opening and closing part will be copied and it will be pasted into one package.xml. So with one package.xml, you can retrieve different, different metadata items, right? So this you can use as a sample. And Abhishek, if you go back, so we have one sample file as well. In this tab only, if you click on back, top left arrow, not here. In the sample package, yeah. Just go above top to the browser. Top left to the browser. Above, above, above, yeah, this arrow, right side, yeah. So here if you see sample package.xml files, so I think with this, they will be able to find some samples. Just click on the second link, yeah. So here I think straightforward, yeah. So this is the example, guys. If you, yeah, Abhishek, if you scroll down, so here we have like for custom site, network, site.com profile. So four different type of metadata items are available here, right? So this way, if you want to have different metadata items, so in one package.xml, you can have those types together. Yeah. Okay, yeah. So you can continue Abhishek now. Okay. Thank you. So I have already created a package.xml for retrieving this Apex class. So if I show you that package.xml, right? So, yeah. So if you see this, the component name we have as Apex class and member we have the Apex class name that we have created, right? So now what we're gonna do is we're gonna upload this package.xml to our workbench, workbench tool, and we will be seeing how, we will be seeing how those components are getting retrieved, right? So I'm gonna go back to workbench, I'm gonna click on retrieve, then I have to select this, click this icon, and on the documents, I have that package.xml ready. I'll click on upload, and we can simply just click next. And as soon as you click next, you just have to click again, retrieve button, and your package.xml will get downloaded. You just need to click this download zip file, right? So my package.xml have been downloaded. Now if I go to downloads, and if I see this unpackaged folder, and in this unpackaged folder, we have two things. First is my package.xml. So it will contain what metadata that you have retrieved from workbench. And in the other folder, I have down, sorry. In the other folder is for classes, because I have retrieved the apex class. If I would have select object, custom object, then object folder would be there. And when I click on this classes, as you can see, I have this deployment demo.cls, and deployment demo.cls.met.xml. So whenever you create a apex class in your Salesforce org, right, two files gets created. One is .cls, one is .meta.xml. So meta.xml will contain all your configuration settings, like this apex classes status is active, API version is 58, and this .cls will contain your actual code. So if I click on this open with and go to visual studio, so as you can see, I have this apex class downloaded with me, and which is having the method that we have created from the developer console. Now, what we're gonna do is, so this is the first phase that we have completed for retrieving a package from your source environment. Now what we're gonna do is, let's say I want to deploy this apex class to the target environment. So right now, as we have discussed, in our today's session, the source and target environment is saved. So what we're gonna do is, we're gonna make manual changes from here. So let's say I'm gonna add a one more system.debug, which can be, we can say, Omni Studio Bootcamp is on the way. So yeah, we'll be having an overview session for Omni Studio next week. So lots of folks are asking, like as yesterday I shared information, we'll be starting Omni Studio. So guys, Abhishek will be delivering all the content along with me related to Omni Studio. So we'll be having one overview session next week, and then we'll be starting all the sessions, and we'll be doing all the demonstrations. You will be having some exercises as well. Yeah. Yeah. So as we have seen, I have added one more system debug into this Apex class, and I have saved it. Now if I go again, so what we're gonna do is for now, if I want to deploy this package to my target org, I have to create a zip file for it, right? So what I'm gonna do is, I'm gonna create a zip file from this one. So let me select this one. This is my unmanaged package open, and it will create a zip file for me. Correct? Now I'll go back to the workbench, and this time I'm gonna select deploy, not the retriever. So as we have discussed, my target org is the same for today's session. So I'm gonna click on deploy, and you just need to select that zip file. So I'm gonna go again and select my zip file, which is in this one, comphrase.zip. You can name it anything. Click upload. And what you can do is, if you want to run local test, so let's say there is some error in your target org, right? Then in that case, if you want to roll back all your changes that you can, then you can select the run local test. Otherwise if you don't want to do that, you can select no test run. And I'm gonna go with no test run for now. And I'm gonna click next. One thing, it was related to test class, right? Yeah, exactly. Okay. So whenever, as soon as you select your zip file, you'll click next, this will give you a warning. This deployment will make permanent changes in your organization and cannot be rolled back. Because I have selected no test run for my deployment. And when I click on deploy, it will start my deployment to the target org. See, the result says success too. That means my Apex class should have been updated in my actual Salesforce org. So if I refresh this one, right? If I refresh my developer console, so as you can see, there is one more system debug has been added. And I have not made this change manually. We have done this with the help of, with the deployment methodologies. So guys, just to summarize this, what we did, we had an org, right? Then we created some component. So in this demo, Abhishek created one Apex file. Then we used to, then we have to retrieve that with the help of workbench, right? And whatever we have retrieved. And in that retrieval data, if we do some changes, and you want to deploy it to same org or another org. So right now, what Abhishek did, he retrieved from one org. And in the same org, he deployed the changes back, right? So that's why he changed manually with the help of Visual Studio Code. In real time, what may happen, like you have two different orgs. So in one org, you have already done the changes you retrieved. And the retrieved package you created a zip and then you just deployed it to a different org, right? Right, Abhishek? Yeah, exactly. Yeah, so in that case, in your local system, you don't need to do any changes. So right now, we just demonstrated it through one org, but the process is same. The only changes in your local system, you don't need to do any changes if you are using two different orgs for deployment purpose, right? And another change can be when you are... So when you are deploying your changes from workbench, so you have to connect with your target or with the workbench. Right now, I haven't done that because my source and target is same. Yeah, so if source and target is same, then like for retrieve and deploy, same org can be used. But if you have source and the target, like two different orgs, if you have... So for retrieve, you need to connect one. And once it is retrieved, I think for deploy, we need to log out and we need to log in with target org, right? Correct, yes. Yeah, so process is simple and you can practice it both the ways. So try to deploy in the same org, like Abhishek demonstrated to you. And what you can do, you can create one more dev org and you can try retrieving from one org and deploy to another org. And in this process, like if you see any doubt, so in the telegram group, like you can ask questions. So I know lots of people will be demoing it. And if you have any doubt, you can ask in the telegram group. So someone who already have completed this, so they may help you. Yep, so I think this method is completely demoed, right? Yeah, we can move on to the next method. Yeah, so with this approach, if you have any kind of doubt, so I can see lots of people are asking questions. So if you have doubt, you can ask in the chat. And like Abhishek will be completing the second method first and then we'll take all your questions. Yeah, so let's jump on to the next method, which is, which is deployment with the help of VS Code, right? So the basic funda will be the same. From VS Code, you will be having your package.xml, but right this time, you need to install VS Code in your system. And in the VS Code, you need to install one extension, which is called SFDX. So with the help of that SFDX, we will be creating our package.xml, which will retrieve our data. And then we'll be making changes and deploying it with the help of VS Code SFDX extension. Yeah, so Abhishek, I think few folks are having doubt. In previous method, we also used Visual Studio Code, right? But guys, in previous method, we used VS Code as a text editor, right? So if you want to do some modifications in your file, so we just open those files with the help of Visual Studio Code, right? So that deployment was purely dependent on workbench, right? If you have any other text editor like Notepad++, so you can open your package.xml or downloaded Apex file in Notepad++ as well. So previous method was based on workbench and this method, which Abhishek will be demoing now, it is purely based on Visual Studio Code, right? Yeah. Yeah, let's go to the next slide. Then we have the same methodologies or functionalities with some functionality with the VS Code as well. We will be having a source environment from where we'll be retrieving our metadata. Then with the help of VS Code, we will be deploying it to the target environment. Let's jump on to the practical part. I'll move to my VS Code on just a second. Yeah, I'm gonna close this and I'm gonna close this one as well, right? First of all, you need to install your, you need to install VS Code in your system. Then after the installation, you can just simply click on this icon extensions. And from the extensions, you can search for this, search for this, sorry, VS Code extension, which is called as Salesforce CLI, Salesforce CLI integration. So with the help of this extension, you can deploy, you can retrieve and deploy your changes with the help of VS Code, right? So after VS Code installation, you, we have to connect our VS Code with our Salesforce org. So how we can do that? First of all, we will be creating a, we will be creating a project with manifest, right? So, from there, so as soon as you install, as soon as you install your, that VS Code extension, you can just simply click type control shift P and from control shift P, you can search for SFDX colon. So create project with manifest. Maybe like if it is not needed, I can see your org is already connected. So like if you want to skip this part, you can because this I already covered in the LWC sessions. So like guys already know how we can install Visual Studio Code and how we can connect org with VS Code. So maybe we can directly proceed further with the deployment steps. Okay, thank you. So as soon as you have connected your org with the VS Code, right? Then what you need to do is you will, you can just simply click on this explorer icon and this, so this workspace will be created by default, right? And in the manifest folder, you will be having one file called as practice.xml, which will be auto-created by that extension. So what you can do is you can simply click on this practice.xml, right? And you can, the same methodology that we use for workbench, you can add your components in your practice.xml. A little bit if you can zoom in, so it would be better. Yeah, sure, yeah, yeah. Right, so right now as you can see in my classes folder, right? So if I go to my workspace, you can see the course have main default and in the classes, I don't have any class, right? But as soon as I have created my package.xml and right click and what I can do is retrieve source in manifest from org. So this is that extension functionality. When you click on this one, your Ipx class will get downloaded. So as you can see in my classes folder, this deployment demo Ipx class came automatically and if I click on this Ipx class, I have my system.debug, only studio boot camp is on the way, right? And if you want to see one more example, what we can do is we can simply add one more system.debug and we can say, let's say good morning and save it. So right now I have made changes in the org but in my local VS code, the changes are not there, right? So what I can do is I can go back to my package.xml, I can again click right click and click on this retrieve source and that change will get downloaded to my local machine. I click on this one. So see this system.debug has been downloaded automatically. So as we saw the same methodology for workbench, we created one package.xml, we clicked on that retrieve and uploaded that package.xml, right? And after that, we have downloaded it and we have made some manual changes and then we have deployed it to our target org. So this VS code functionality works in the same way, it's just that you don't need to go to workbench. You have to install this VS code and install the extension. So now what we're gonna do is, so in the case of VS code, when you will be having your source org and the target org, right? So you will be having two VS code windows opened in your machine. One VS code window will be connected with your source org and one window will be connected with your target org, VS code window, right? And so from your source org, you will be downloading your, you will be downloading your Apex file and once you have downloaded it, you can go to your folder. So for example, for me, the folder is this deployment, then for, then default, then this. So this is my folder, right? And so what you can do is, you can just copy your Apex class from your folder and paste it in your target org folder. And as soon as you have copied and pasted your target, your Apex class from source folder to your target folder, what you can do is, again, you can go to your Apex, you can go to your package.xml in your source, in your target org workspace of VS code and simply you can click on right click and you can just click this button, deploy source and manifest to org. So right now, again, we have same org for target and source. So what I'm gonna do is, I'm gonna make a simple change in this one and I'm gonna remove this system debug now. It's not required right now and I'm gonna go to this package.xml, I'll right click and then click on this deploy source to manifest. So right now, now I'm doing the deployment part. First we completed the retrieval part, now I'm doing the deployment part and so as you can see, deploying to source, source to org successfully then and now if I go back to my developer console and if I refresh this, right? So this says to goodmorningsystem.debug will be removed. Yeah, so yeah, I think it is completed right? Yeah, that one is also completed. Okay, so guys Abhishek demonstrated both, both the methods for same org. In Visual Studio Code method, if you have two different orgs, so you need to connect those two different orgs with two different instances of Visual Studio Code, right? So that is important and in one instance, you will be retrieving and in another instance, you will be deploying and the folder which is connected with the one instance from there you can copy Apex classes and whatever you want to deploy and those copied Apex classes, you need to paste into the like target or VS code, like VS code is connected with the target org. So whatever folder is there in the local machine for that particular VS code instance too. So there you just need to paste that copied Apex class or whatever metadata you are just deploying, so that is additional step that you need to do, like copy Apex or whatever metadata item you want to deploy from source folder to target folder and rest of the steps will be same, right? So I think with this way, you can practice both the methods and if you see any doubt, any challenges, so you can just ask your queries in the telegram group. So I will try to reply on those and now I'm going to share a question answer with you so that we can pick those. So if you have any kind of question, you can ask. So I'm just sharing that screen. Okay, so be sure to stop the screen share. So yeah, I'm going to share my screen. So I hope now you guys are able to see Q&A part. Okay, zoom in is not working. Let me fix one more time. Maybe let me refresh. No, zoom in is not working. So, okay, so Abhishek, we need to answer these questions if you are able to see my screen. So there is one question. So Akula is asking what is the difference between deploy and retrieve? Okay, so basically whenever you are making, whenever you are building any functionality or business cases in your sandbox, right? So let's say for one business case, you have created one object, custom object and you have created one Apex class. So for deploying your custom object and Apex class from your sandbox to another sandbox or it can be a production or, first you have to retrieve it. So for retrieving or fetching your components from your sandbox, that can be called as a retrieval part. And when you are deploying those changes to your target org, then that can be called as deployment to the target org. Okay, so we have one more question. Why we have to create zip file one more time? Already Walkbench gave us a zip file. Why can't we upload the same zip file to target org? So maybe I think we did some modification. That's why we created new zip file, right? Okay, so basically in our today's session, we had the target and the source environment as same. So just for making some changes in the Apex class so that we can see the changes, we just unzipped it, made the changes in the Apex class and again zipped it and deployed with our help of Walkbench. Okay, yeah, so, Subashini, if you have two different docs, then what you need to do, you just need to retrieve and that same retrieved zip file, you can deploy to the target. You don't need to create another zip. So like we used one org, same org, that's why for doing some changes, we unzipped, did some changes and then zipped again and deployed. Yeah, so Subashini, your second question for this answer will be yes. But yes for like if you have two different orgs. So Rajiv, I think I already made this clear. So Walkbench demo was not with VS Code. VS Code Abhishek used for editing purpose. So maybe you can say he used VS Code as a text editor, not as a deployment tool. So Akula is asking if we deploy our changes from one org to another org, same time and we'll get some errors in that time where we need to find that errors like pipelines. So I think for Workbench, it will give the error file that we can download and see, right? Yeah, it will give you the error file as well as when let's say any error occurred, right? So on that only the status will be unsuccessful and there will be one more column you can see which will show you the message, why that deployment failed. All right, so next is, is that possible to use same tool for both admin and development deployment? So answer will be yes. So Abhishek demoed how we can deploy Apics class, but like if you search for practice.examl, so I'm going to show you this package.examl for admin related stuff as well so that you can have an idea. So here you can see like this site.com, this custom site, network, site.com profile, all these are like standard thing, sorry, admin related thing. So you just need to search like what name you need to write to deploy a particular item, right? If I go back, so in this first link, you will find those things. So here you can see for different, different metadata items. So let's say you want to deploy assignment rules, auto response rules and escalation rules which are part of admin. So just click on this link and here you can see, this is the package.examl. So if you want to deploy assignment rule, whose name is case lead, so this way like you just need to copy this part and you can paste it in your package.examl, okay? So in one package.examl, you can have any number of metadata items. So this part you can copy and paste. So this way you can see, different, different metadata items are written. So this is one, this is second, and this is third one. So we have sharing criteria rule, sharing owner rule, sharing territory rule. And if we see anywhere asterisk, so it means all the members for that particular metadata item, right? So this way like you can search these package.examl codes and accordingly you can have it. Okay, so, so Yogita, for this you just need to watch the recording. Like if you go back, so you can see how Abhishek pulled the Apex class in Visual Studio Code. So I think it is different question when you are using bamboo deployment. Abhishek, do you have any insight about this? Not as such Sanjay. Okay, yeah, so Venkatesh, we are not sure about this, so maybe we'll search about this and we'll get back to you tomorrow. Yeah, so this is interesting question Subashini is asking, why we have to manually copy the class files if we have huge number of files to deploy, it becomes difficult. But I think this is the restriction here, right? With Visual Studio Code. Yeah, I mean, for example, let's say if you want to, like if you want to deploy 10 Apex files, right? So if either way you are doing it with the workbench or VS code, you have to create your package.examl. Okay, so, Mangesh is asking, are we covering ant migration tool? So I think tomorrow. Yeah. Yeah, so Mangesh will be covering it tomorrow. Till then, I would request everybody, those who are live or watching the recording, please do practice for both the deployment methods, workbench and Visual Studio Code, and try to do practice with two different orgs, right? Because in real time, you will be having that kind of scenario, like from one org to another org, you will be deploying. So you can have two developer orgs and one you can have a source and another you can have as target. And let me know in the telegram group, if you have any doubt, or if you do it successfully, so you can also record a video and share that in the telegram group so that others can see. So Shubhashini is asking, can you please show two different instances of Visual Studio Code? So I think with Control plus N, we can create one more instance, right? Yeah, exactly, for VS Code. Yeah, so Shubhashini, if you open Visual Studio Code, and if you press Control plus N, then you will be able to open it. So here you can see, I have this Visual Studio Code. If I press Control plus, it is opening new file. Command shift N. I mean, if you go to File, then if you click new window. Yeah, if you press Control shift N, so it will open a new instance of this Visual Studio Code. So here you can see in my screen, I have two Visual Studio Code. So this was already opened, and this I opened again. So if I show you, so this is one, and this is another. So what you can do, this newly opened, you can connect with different org that will be considered as target. And, yep, so, coming to next question. So Akhla is asking how to create a branch in VS Code and how to connect it with our org. Please show us. So Akhla for that, like how to connect org with Visual Studio Code. So you can find a video. So just open study salesforce.com and in developer section, go to Lightning Web Component, and here you will find one video. This second one, set up Visual Studio Code for Salesforce to build Lightning Web Component. So this will tell you how you can install Visual Studio Code and connect your org with Visual Studio Code. So, Vamshi Krishna is asking, without VS Code, we cannot deploy LWC component, I think, right? So, I mean, if you want to, I mean, like if you want to retrieve and deploy from one environment to other environment, you can do it with the help of VAMPANGE. But if you want to develop something, or if you want to write some code into the LWC component, you have to use VS Code. Okay, next, Ashutosh is asking, can't we use XML file while deploying like we use in retrieving? I think we are using. But- So Ashutosh, that's what we are doing. I mean, when we use the VS Code, the same package.xml file we use for retrieval and deploying. Right. So is there any limitation in terms of data limit? I don't think so. For this question, we are deploying the metadata, so I don't think so there will be any data limit. Right. So Shubhashini asking one more question. Could you please use different docs for target and source for demo classes? So maybe we can do it tomorrow with and? Yeah, we can try that. Yeah. And Shubhashini for today's methods like Walkbench and this Visual Studio Code, you try it and if you still face some problems or maybe like we can quickly demo that as well tomorrow. So let me know in telegram or maybe you can DM as well. So accordingly, we will proceed. One more question. How to decide version if we are having multiple types of XML file? So I think we have one XML file, right? Yeah. I mean, in your package.xml, there is a tag which is called version. There you can decide which version you want to use. Right. So Shubhashini is asking one more question in target, organ, source, or if we have same object, same custom object, then will it be conflicting or overwritten? It will be overwritten. It will be overwritten. If you are updating something, then overwritten if there is no update, no change will be there. Okay. So we have covered all your questions. If you have more questions, you can quickly ask. Otherwise, we are ending the session and I can see Raju is eagerly waiting for Omni Studio session. So I can see Abhishek, you are in demand. So yeah. So guys, from next week, like in next week, we'll be having one overview session on Omni Studio. We'll walk you through what topics we'll be covering. So Abhishek will be taking the command and he will be primary instructor and maybe I will support wherever there is some need. And I will make sure proper slide decks will be there, proper demonstrations will be there and proper assignments will be there because it is a tool where we need to do everything practically, right? So we'll try to share everything with you. There's one more question. Shrisha is asking how to validate the data if error occurs while deploying. What type of errors generally occurs while deploying? So I think- So one example can be, let's say if you have a custom object in your source org and you have created a APIX trigger on that custom object, right? And now you are just trying to deploy only the APIX class but not the custom object. Then you will get the error which we'll say cannot find the object in the target org. Okay. So Manakshi is asking, are we covering Copado? So not now, for Copado, like I need to search someone who is already having that license. So we are not having that right now. If we'll be having someone, so I will surely have that person live with you. Thank you Akhil for kind words. Ashutosh is asking, is there a possibility where version of type can be different in XML? No. I mean the source and target org version should be the same. Faizan is saying I missed his question. Okay. Document.getElementByday is not working in JS for LWC, I use this.applet. Yeah, so maybe Faizan, you can ask this question in Telegram group and someone from that group will be connecting with you so that person can see what exact problem you are facing. So maybe you can share the screenshots of the error and people are helping each other, so just try to take help from there. Vibha is asking how to deploy a managed package. So managed package, we don't deploy, we create it and then we install it. And Naveen is asking how to deploy custom metadata, so it's the same way we deployed Apex, we deploy a custom metadata. So you just need to search for that package.xml code for custom metadata. Rajeev is asking, can we deploy object profiles, et cetera using Visual Studio code? Yes. Yes, we can. Yeah, okay. So Sumukh, you can reach out to me separately on Telegram or LinkedIn, I will guide you. Okay guys, so I think we covered everything. So I take your leave and thank you so much Abhishek for sharing your knowledge. Like it is very much required for the community and I think with these deployment sessions, lots of folks will be understanding what deployment is and they will be having real-time knowledge like how we can do deployments in from one up to another. So thank you for that. And I'm happy like people are excited for Omni Studio Bootcamp. So soon we'll be starting. Okay, thank you. Thank you.