Mobile App Academy: Native vs Web Screens
morning everyone we're going to go ahead and get started we've got a lot to cover today and we're super excited to bring it to you welcome back everyone good afternoon good evening we want to welcome you back to mobile app academy where we show you how to build and configure mobile apps on the now platform my name is charlie steiner as always a product marketer here at servicenow and today we'll be discussing building native screens versus web screens on mobile so if you're just joining us for the first time love to give you a big welcome this is a live building series that focuses on managing and building out mobile apps in real time our product experts are here providing guidance and in the chat to answer you at any of your questions we'll be giving best practices answering your questions throughout and really here to help you so do get in touch we host these mobile app academy sessions every two weeks here on zoom at 10 a.m pacific and our recordings are posted to youtube thursday morning specific time so be on the lookout for those if you want to uh rewind anything we discuss we'd love to hear your thoughts on this session and how we can improve going forward so whether that's here in the chat or on our mobile apps and platforms community page let us know i would love to hear your feedback on any future topic discussions uh or on this topic if you liked it what you didn't like so do get in touch as well with all that being said love to introduce our senior product manager on the mobile team david haw to get things started off david thanks for the intro charlie good morning everyone and welcome back to our mobile app academy my name is david hawk and i'm an outbound product manager here at servicenow i also have fujo with me who is a solution architect also on the mobile team and we want to give a warm welcome to everyone joining us live here today so jumping straight into the topic for today uh we will be covering when to build native versus web on the service down mobile apps or in other words how do i migrate some of my now platforms existing workflows to the native mobile apps you know i might have some pre-existing forms or record producers with some client scripting how do i go and build those on my servicenow asian client or even my now mobile client although some of these use cases may not be supported natively on our mobile platform today uh you know we want to explore one of those available workarounds that i have uh to get those on mobile as a web view until the mobile platform is able to support these use cases natively in upcoming releases okay and uh for today's session this will be on a paris instance uh we will be building our flows today on the servicenow agent client using the out of the blocks field service uh mobile plugin and you know regardless of the instance build that you are on majority of the configurations today will pretty much be similar across other releases um and before we get started i just want to share some resources if you are new to mobile we recommend that you first check out some of our self-annulment resources such as our mobile migration uh my more mobile guide books i'm sorry and white papers um that you can find on our mobile community site and essentially each one of these walks you through uh you know mobile implementation best practices migration best practices as well as mobile ux ux best practices so that you can learn and improve the overall design of your mobile apps and if you're looking for more hands-on training we also have the now learning site which will teach you the necessary mobile developer fundamentals around how to getting how to get started with mobile studio um and of course we also have mobile app academy where which you can access all the past recordings as charlie said on our mobile community site okay with all that said let's go ahead and get started so here's a quick slide on some of the unique native features that are on the mobile platform today and the idea here is you know with all the resources and investment that we're pouring in from servicenow uh into the new mobile apps and platform the goal here is to make the customers end users more productive and happy the better the user experience that we can build for agents and employees the more likely they'll want to use it on a daily basis because it's actually helping make their lives easier and some of the mobile mobile micro moments we enable for them on mobile is making them more productive uh but once we actually have um a customer who's ready to implement our mobile solution there's a few things that i'll encounter whether it's on the servicenow agent client or the now mobile client and the first thing i want to mention is although these two clients are built on the same mobile platform their implementation experiences are completely different as of paris first because they represent two different personas agent for the fulfiller and then now for the general employee but also from the developers perspective it's completely different developing experience depending on which client you're trying to implement let's start with a servicenow agent client for example so with agent typically customers will start with an out of the box experience whether it's itsm mobile or a field service mobile in fact majority of our customers typically use or start with an out of the box app and then they make very minor modifications to it um for any missing requirement requirements that they might need in the workflow they'll then have to use mobile studio or the platform ui to fill in the gaps and some of the most common modifications that they take on these other bosch workflows on agent include uh things like adding removing or updating fields on their list applets um updating or creating new actions or even applying ui policies or ui styling that they might already have from the platform and they need to migrate that over to mobile and there's also the scenario that if you're a mobile classic customer in the past there's a few common use cases they'll run into you as well such as you know i might have some dashboards that i had for mobile classic how do i migrate this over onto the new mobile apps um or how do my fulfillers pull up their qr barcode scanner and also things like how do i configure related lists navigations or even carry parameters so that i can see additional information on those records so with each of those use cases i've actually hyperlinked each one um that we've possibly covered in the past mobile lab academy or it might be a link to product documentation but the idea here is that these are reference slides for you to go ahead and kind of look into those if these are scenarios that affect you um and you know the more common you see that we hear from all you we'll typically try to cover uh cover them in future academies um so again this is a great reference line for common use cases and getting started with servicenow asian or now mobile and we'll post this deck along with the live recording on our mobile community site in the next couple days uh and again this doesn't cover every single use case we're typically trying to cover common use cases that our team have run into so far and we want to share these learnings back to our mobile app academies but if there are other major use cases or issues we would love to hear them from the non-mobile side it's a similar process right you're leveraging the out-of-the-box workflows for catalog services and so forth and then you're trying to make uh some modifications to those pre-existing workflows and you know configuring custom use cases to meet your organization's requirements and creating that self-service experience for your general employees and i've also hyperlinked those common use cases which you can come back to later okay um there's a lot going on in the next couple slides i'm not planning on going through each one but again these are great reference slides um that you can go through on your own time phu and i have documented many of the common use cases that we get from customer conversations around mobile invitations and you know what we've realized is many of these use cases that customers might perceive as blockers they might not actually be blockers at all it might just be that they're not as familiar with our mobile solution yet for example um you know sometimes we'll hear native charts don't support all the charts that i have on on the now platform and you know this might restrict a customer from deploying the mobile apps without having those reports but you know if you're familiar with our native reporting capabilities as a paris you would know that today we support single score cards time series reports latest score pa widgets bar and donut charts those are all supported natively and again native is the ideal solution um because it results in the greatest end user experience but you don't necessarily have to go down that path right um if a customer has a pre-existing dashboard with a bunch of reports that we don't support natively today then you can go down the web path which you can configure a url applet or a smart button that just redirects them to that dashboard on service portal again maybe it's not the most ideal experience because web reports they don't have the greatest viewing experience on mobile but if this is a workaround that the customer is okay with having for now then this is certainly something that they can do on any one of our mobile apps and again we would love to hear any gaps that we have um today and you can kind of share those requirements to us through the idea portal on mobile community so if there's a specific native chart that we haven't yet support that's kind of where you can share feedback with us so that our internal teams can have further discussions on it um and then prioritize for future roadmapping okay um and then again these are the workarounds and common issues for now mobile feel free to check these out on your own time as well when we post this on mobile community but um let's actually uh move on to the core topic for today when to build native versus web uh or in other words uh when do i know when to use the native components versus just redirecting users to the web screen on their service portal or the platform and these are a few common reasons why customers might want to choose or go down the web path there's really no right or wrong answer here but ideally the customer should only go down the web route if they have to otherwise they should be building native because um it's the best experience for their end users and um some of the most common use cases where native is not supported is any time customers have record producers that might have client scripts or there's a web form that contains an element that we don't support natively today such as variables we'll actually cover both of these workarounds in today's live building session uh but just to call out a few other scenarios uh why customers might go down the web path um [Music] the other reason is you know sometimes they're just looking for the fastest path to deployment um although the workflows might not be the greatest experiences on mobile it does require the least amount of effort in implementing for example um you know they might not have the largest team or they have limited resources and they're just looking for the quickest and easiest way to roll out mobile sometimes they'll understand that you know this is their first pilot v1 and they'll have the intention of coming back to improve their their flows later and you know embedding it with more native components but right now they might just want to roll out something something that works and that's might be a reason for them to go down one path another common reason is you know they might have built a very custom record producer with lots of client scripting with all their custom css formatting and it could be that that web app just looks so much better um since a lot of that functionality might not be supported natively quite yet in paris and it might just be easier to create a url applet to redirect to that web form so those are a few common reasons why customers might go down to web path but the key idea here is you know we want to make sure our customers who have the intention of building the most optimal mobile experience for the end users that they are taking advantage of the native capabilities where they should be and so we want to share uh all these resources and common use cases to make sure that you're aware of those common work rounds in your own expectations okay um with all of that said let's now focus in on a couple of these common use cases and workarounds we're going to cover one of the most common issues that we care about all the time and that's how do i migrate my pre-existing record users to mobile which uh requires client scripting or i have pre-existing clients uh record producers and it's on the platform and i don't want to do additional work um how can i market those those over to mobile and again these are just two of the most common use cases there's a lot more um that you can explore referencing the slides from earlier but when you're tackling any one of these scenarios from mobile these are three things to always consider in your implementation first you're gonna need to define your persona whether it's for the fulfiller or for your general employee because this will help you determine whether you'll be taking advantage of any of our out-of-the-box experiences um and which client these out-of-the-box experiences will be rolling out to and to which of those users and roles the second step is really to define your use case so if you have pre-existing record producers on platform what are those use cases and does it make sense for end users to do it on mobile or not to display at all because it just makes more sense for them to complete that flow on their laptops or computers so that's something to consider and the third one is now that you determine these use cases are important for mobile how do you want to visualize that data um you need to understand what our native capabilities are as a paris and what our limitations are as well and you know if you have reports that can be visualized natively on a list applet such as a group list or a map then you know use mobile studio or mobile platform you want to configure those natively but if there's a use case that isn't supported natively um then the workaround is to use that url applet or smart button to redirect your users to the web form um and so now i'm going to actually pass it over to foo who's going to walk us through what we're about to build for today so food the floor is all yours thank you david thank you charlie i want to show you what um there are two limitations right now uh with uh our mobile is what david just said is client scripting is not supported and um things like variable sets especially multi-variable sets are not supported so before we dive into implementation on the workaround i want to show you what a client script and a variable set is so here's a typical portal page and i want to show you an example of uh client scripting uh form a form with a client script and uh i'm gonna use one that's out of the box so one of them if we search for um [Music] so here's a typical one so you go here and there's a form and there are two radial buttons and you notice that when your department it kind of filters down like the departments and when you select on group this label changes the group and this drop down changes as well and so what this client script is doing is that it's detecting an unchanged event and this is and it's basically populating this uh this drop down right so that's that's one example and the other example is uh if you type in corporate bulk order this one has a much more um complicated use case so here you notice this is form and you notice that there's a thing right here that says add when you click on it a moto appears and this moto you can select multiple different device types to order and then it adds it to a list and then you can order another one i want to order a samsung different configuration and just keep on doing multiple data sets so this is what you call a multi-variable sets the thing is is that when you if you have this in your web form and you want to actually pass over this kind of functionality into a native solution native cannot do it because our native functions are are very limited on what we can do unlike a web where web you can basically it's it's free form right you can do almost anything you want so that shouldn't stop you from uh not going to our native application so i'm going to show you a workaround for this and so here is my native uh here's my native application and we're gonna do is the two uh forms that we we saw i'm gonna create a an icon here of our shortcut and we're going to create a a list applet and within the list applet we're going to transition and pass the sys id of the form into a web applet okay so i'll go slow and i'll show you um what i'm trying to do and if can i share one quick slide real fast before you use the building let me show this uh one last screen real fast just to set up this scenario so i think uh what we're about to dive in uh into is uh we need to first you know define the persona uh we're going to start with the servicenow agent client and i think food is going to be building inside of the out of the box field service mobile app is that correct yes perfect um and uh you know the out of the box field service mobile app is an out of the box experience that you can install on your instance right it's available in the store um and it's gonna come with these pre-loaded apple launchers uh and applets and we're simply gonna make a modification to it and you know i think the use case that we're adding to it is there might be a record producer that lives on your platform such as adding uh corporate devices so that it enables your fulfiller technicians to be able to add uh i guess give out corporate devices to new employees at a building right and so we're gonna set up that um uh applet for you so that the technician's then able to access it from that out of the box mobile app um and then we already described how we're gonna build it so i'll go ahead and give it back to you phil so you dive into it awesome thank you thank you for that um okay so i'm gonna share my screen again okay let's see where is my mind okay here it goes okay um so i want to give you guys a little bit of uh like how does this look uh in the tables uh out of the box stuff if we go to uh catalog uh script client um this is where uh your catalogs uh where they contains the client scripts if i search for the one we just i demoed service [Music] request it's not here catalog item oh let's search for the name of it oh i can just check any ones so basically you notice how these these are basically record producers and they have some type like an on change and so this is what i want to show you for example let's select this one and maybe i can see the script and so you can see that there's client scripting involved right and so if your customer has pre-existing or very complicated client scripts um we can't we can't port this over to a native solution so we're going to create a native list to display this and then we can create a function that will point to that that web form and so the first thing we're going to do is we're going to go to studio and we're going to create that native solution first which is the apples the list outlet so i'm going to pick the the right scope okay so i'm going to create a typical um an applet so i'm going to say let's see my forms let's pick something [Music] and this makes this different color okay the next thing i want to do is we're going to select the we're going to create a data item but for this data item uh we're going to we're going to um select the two forms that we're interested in in the um for the out of the box stuff so let's call it my forms and this uh the record producers actually live in a table called uh sc category cats item [Music] category okay and the next i'm going to do is we want to identify those two forms that i talked about the first one was the service catalog request and the other one was the corporate mobile device bulk order that's the one with the multi-variable set so let's search for um [Music] the catalog item and we're going to do first one is service request this one and we also want to do uh or the bulk one so the corporate bulk order okay so we're just basically fetching those two elements in our data item and we're going to there it is all right so next i'm going to do is we're going to change the pattern here and we don't need this step we just want a simple one line and we're just going to show the catalog name okay so our applet is done we don't really care about the form screen so the next thing i'm going to do is i'm going to add it so here in my aop i'm going to add it under my shortcuts so go to alp and then by alp you mean apple launcher so applet launcher page so we're going to go to the my work and here we see my shortcut and this is what we have here and we're going to add the applet we just created okay so the setup is is pretty basic and i'm going to oops i want to refresh this and there's a form and when i click on it you notice how we got the two [Music] the two record producers but when i click on one of these guys there's it goes to form we don't really want that so we wanted to actually transition into our our web form so um to order to do that typically you would think a most common mistake is that we're seeing is you create a url applet so url applet is basically almost it's like a web form and in the url applet we can pass so let's do this [Music] i want to show you what i'm talking about so in the url applet um you basically have to provide a a url and [Music] this url would contain the link to your form so if i click on here you notice how there's a structure here says sp id uh this stuff so in your url output you would typically add this in your url output however there's one problem with url applets typically you would do a navigation function and within your navigation function you would want to pass a record like this sys id over to your navig your url applet um and then it would it would it would redirect you to this this page however you cannot do that with a url output um when you so i want you guys to do this at home um try creating a url applet and then you'll see that when you create a navigation function it's not going to recognize the url output because navigation functions only work for promoter screens you can only pass parameters to a privatized applet not a url applet so you can't you can't really pass this um however if you hard code this then it would work so i'll just make that clear you guys you cannot pass this very this this id using a url outlet um so i'm gonna show you a trick uh workaround uh uh by not using a url output and the trick is to use a thing called a smart button okay so um we go down to functions so in functions there are three three types so i was talking about this navigation function uh you cannot use this because we want to pass something dynamic to a url output the trick is is to use a smart button okay so let's create a smart button and call it my form call it nav to my form and because this is going to be a url there are different types and we're going to use a url here it's pretty simple make sure your context is record and i'll talk about it why because actually i'll tell you right now because this right here is a record and we want to pass the sys id of corporate mobile device to a url and same with this we want to dynamically pass these records so in order to do that you got to make sure that the context is record the table itself is a table that we've um that we fetch from the navigation um from the date item so that is uh double check it is sc [Music] temporary the field that we want to pass is the catalog item so this is the sys id of these record producers okay oh and then i have to just put in the label here so let's call it um open by okay so now we have a smart uh a smart button now here's another trick we wanna whenever you create a function we need to associate this function uh to a in your applet so let's go to your applet and it's um it's my applet typically a function when you go to your applet you go to your function it's either for a list it's either a top menu function which lives somewhere up here we don't want that right we want to be able to click on one of these and then transition so it has to be on this item however when you go to here and swipe you can technically add it here actually you can't add it to the swipe function because we don't want it to swipe we just want to click on it and go to um uh go to the the web uh applet so um this is not also possible as well right so the one the the way to do this is you have to put it on an item view okay and in mobile studio uh here's a limitation uh you cannot add it to the item view here and the only way to do that is you have to go to uh platform ui and add it there okay um uh i want to go to let's go through just to clarify um uh the list item again real fast can you uh show your mobile device real fast yep um so typically you know this we're in like this is a list screen right this is gonna show this list screen shows as two records so typically if we were to open up one of these records it would take us to the form screen the additional details but i think what you're trying to do is you don't want to take them to the forum with additional details you just want them to be able to tap on this item and it will take you to the url is that correct correct right so right now it's going to a form which we don't want we want them to go to uh the web form not the native form and so we're gonna we're gonna apply um the smart button so remember the smart button so we created the smart button nav to my form and it's going to a url right some url we haven't defined it yet and we're just going to pass the sys id of this catalog item we will need to attach this to this element here and mobile studio there's a limitation on that so the only way to do that right now is to go to platform ui and so um we want to get down to this level and this is what you call a master item okay so if i go to sis master item uh instead of going to the straight to the master item which might be a little confusing how about we go through the applet itself and just start clicking through each table that way we know where we're at no sure okay so let's go to oh let's go to the um apple launcher and let's go over the top okay so let's go to the top so apple launcher so this is right here so this is the apple launcher and it's called my my work so in your app launcher at the um at the high end we're gonna go down to my work and then we know it's the field service scope right because we're building inside of the out of the box field service mobile app i think one of them is for itsm if you look to the oh this one oh no i think this one yep okay so we're gonna go to the aop and we're gonna go down to the body and as you as you can see this is a section here my shortcuts which is right here we're gonna drill down to the section and we should see four applets right here so i'm going to unlock this and i want to go to my form and we're going to go down to the list screen so we're basically drilling down down to the master item so if you're not very familiar with how this works david does have we do have a video and some documentation on how this hierarchy works um so once we get onto the list screen we're gonna go down to the item stream segment and i'm gonna keep on drilling down to the my forms items uh stream and then here's the the master item okay so this master item is basically this right here this it's like um i guess it's like a an object program it's like it's like a parent class and it has this uh element here and when we created the smart button we want to assign it to this master item in order to do that is we have a thing called function instance belongs to master item okay so i'm going to create a new function instance so function instance means that you're going to apply that function onto some form of like in this in this element so let's create a function instance and so the function instance will just call it nav to my form and we're going to call it the function that we've this is the function of our mass of our smart button so it was i think we call it nav to my form um the label we can call it anything we want because it's not going to show up anyways that to my form and here's the important thing so this is a location so function instance basically tells the app where to put your function at so there are a few there's top uh here's the two swipes that you can see in studio so this is the top menu function this is the swipes and then there's field we don't have to do the field because the field is actually on the form we are in the list so we want to do the list item [Music] okay so this is this is a very important distinction this location is actually very important it tells you where you want to put the function so when i hit submit so now it goes now we have a function instance on now we apply the smart button here but now we want to do is we want to pass um let me see let's go to mobile studio mobile pairs four or two oh sorry good catch okay so now we want to pass this url a uri and you notice how in studio uh here's studio here's my smart button i don't have a way to add the url like it just doesn't know where or or how typically in studio this url is actually getting it um from this field but this field is not a url it is actually a sys id okay we are basically taking the sys id and we're going to the backend tables and we're going to add the url there so this is another important distinction so when i go into the function instance and i go to the function and i open the function this is the smart button function this function is exactly the same function in my studio notice that mobile studio doesn't have all the fields that i need but when i go to the ui platform this is the exact same function it's a url type it's a smart button notice how i have more options here for example take source value from field and so forth when i uncheck this you notice how i now can add a link url in studio i do not have the option because in studio this smart button up is applying to the field itself there's a limitation on studio it's applying to the field and it's assuming that the field is a url okay so this is the this is the trick right go to platform navigate down to the master item go to your function and you can see this option here you get more option now the next thing i want to do is now we can define our url link so i'm going to uncheck this and now we want this but we don't want to hard code that right this has to be dynamic and this is why i said that in studio this category item is a sys id of this record producer which is this so how do we pass this variable over to our url so let's take the base url which is sp let's get that or paste it here so the next trick is how are are we going to pass the the sys id over okay so um it's typically like like this with some variable like x whatever okay but how do you know what variable are we looking at so let's go to um [Music] let's go to [Music] i want to show you something else as well to do that we have to go to the table definition and i'm going to show you how to actually get the the actual variable so let's go to [Music] so the table we're looking at is sc underscore cat underscore items that's sc underscore cap underscore i know okay now i'm going to search for let's say for example um [Music] oh no i want to do table i think oh uh i think it's called bulk oh i gotta go to the table table definition and it's sc cat's item [Music] okay so this basically i was referencing this category item and when you click on it um the the table name is actually called scat item this is what you need for the variable that we're going to reference so copy that and we're going to put put it in here like so okay so yeah make sure you have to have these two brackets yeah to distinguish it it's a variable and the next thing you need to do is find out what is the actual variable name of this table so as i mentioned uh go down to the table definition to the dictionary and then find the column name this is what it actually needs and that is it so i'm going to save that okay so let's see if it works so click on the form i'm going to click on the corporate notice how it's transitioning to corporate mobile device and it's going to exactly the website and if i go to the next i go back and i go to the service catalog requests noise is also going to the service catalog request and it's passing the correct sys id and when i click on group notice how this label changes and also the amount of list changes as well and i click back to department my department changes as well right and then when i go to um the corporate mobile device and let's look at look at the multi-variable sets so when i click on it a moda appears and i'm able to add i'm also able to keep on adding additional as well and then submit so step one is basically this right um is now you're able to go create a native list and then transition it over to your web form which is your basically a record producer form um the one thing that you notice is that when i move my finger it's not really optimized for the web experience right um you click on add and it's kind of out of place and i can kind of like pinch and so forth so this this web form was designed this work producer is actually designed for a desktop version for um for mobile there's another one uh exact same thing but we it's called um mesp so when i click on changes to mesp which is more suited for mobile experience because it has a different css and hit save and i go back and let's refresh this click on my forms and i click on the corporate um [Music] mobile device book order notice it's a little bit different now uh when i move my finger around uh i can't um it's always staying in place when i hit add remember there was a modal in the past when i hit add now the whole section is a form and when i uh change the device type it's just transitions to a different form and it transitions back and when i hit add it adds like there and so this is a this is a more optimized version of your record producers for mobile so make sure you have this as mesp uh if you're gonna if you're gonna migrate over your out-of-the-box stuff but if you do have legacy forms make sure you the css is optimized for mobile experience so any questions on on this um before i kind of do a recap uh we did get a question from joelle in the chat and i think uh he asked a question that that uh concerns a lot of uh developers who kind of build stuff on a mobile platform and it's you know how much of this going back to the mobile platform ui will be done in quebec or another future release of servicenow or just a fundamental limitation of studio so i guess this question is really addressing now why do i have to figure out when to build stuff in studio versus buildable stuff on mobile platform uh or on the platform ui side so we're actually addressing a lot of that in our upcoming roadmap um and we're taking a few first steps in quebec but it's we're not quite there yet in quebec but uh if you stay tuned on our rome roadmap webinar we'll be hosting that in the next couple weeks uh continue checking uh for our updates but we're gonna host a roam roadmap and we're gonna share exactly what's gonna be changing about the developer experience um but in the meantime until we get into quebec and rome we actually released a more implementation guidebook as well as a mobile migration guidebook and as well as the mobile hierarchy deck and the mobile hierarchy uh youtube video you know going through all those four things you'll understand you know when to navigate between the platform ui as well as the mobile studio um and we talked about all the action locations that that foo was talking about you know what is a list item versus a top menu and we address uh you know some of the most common back-end tables such as master items what does that do what is uh uh an item view and so much more so definitely check out all those resources that you can find on mobile community and i'll send those links in the chat as well um and looks like we got another question around uh when developing to both platform ui and studio what's best practices for promoting code for mobile now not exactly sure what that question means um who do you think should we unmute and get clarification um let me take a crack at this well when developing both platform ui studios so um promoting code for yeah listen mute okay uh application scope update sets interesting okay i was thinking about like uh scripted action items uh versus uh script includes but you're talking about application scope and update sets okay i just unmuted you um faisal faizal sorry i don't know how to pronounce your name but feel free to meet yourself and ask this directly uh oh yeah yes can you hear me okay yep we can hear you yep yeah so um obviously when you've uh you've got an application scope you're doing stuff in the mobile studio but then when you go into the platform ui and you're actually doing it in the at the box scopes um you having to create updates it so you know it's it's hard to you know combine all that code and push it through between different environments and um because you're jumping between lots of different application scopes it gets quite messy i'm just wondering what the the best best practices because i found it very messy to to move stuff yeah so um when you type in my company uh this is where your mobile app actually with the scope of it so you type in my company you go to development and you notice that we've created this thing uh i forgot which one we call it david like the scope that we used we're using uh the field service mobile app out of the box field service oh it's field service okay so when you create your own customs uh are you are you going to use the outlet box stuff or do you have your own clothes yeah i'm referring to um uh modifying out of the box in the um mobile now or now now mobile sorry the uh the customer experience right okay and then and then you have your updates that did you create an update set uh when you make changes well i believe that's the only way i can do it because it's not available in mobile studio so yeah you have to do it in your mobile ui because it's not available in studio correct yeah that's the best way to do it is to use platform ui to do it unfortunately it's not just a mobile platform [Music] um of poor experience when kind of uh updating it's kind of cross service now it's a definitely an issue across the platform today uh but as we said that's kind of the the the way to do it through through the platforming website right unfortunately but you know it's good that we are raising those issues and our internal teams are aware of it so i'm hoping that that's something they'll address in uh future web maps wonderful thank you cool food you want to go and wrap up um and kind of summarize yeah so i think i think the main takeaway for you guys is that um there are some things that mobile studio can and cannot do right uh i just showed you one way right uh if if you've if you read through our documentation about smart buttons smart buttons really typically applies on the field okay and this is why in here's mobile studio i have a smart button url i can't define the url it assumes a url is on the field there's a way to over is there's a way around this right and so the takeaway is go to go to platform ui you get a lot more options okay again this this this um this this smart button function uh you can't apply it into an applet on your function instance um in mobile studio the only way to do it is you have to go to platform ui down to the master item and then put your function instance there okay so it's going to be a combination of these these two worlds that you guys um if you want to do a lot more advanced stuff uh it's highly recommended that you understand how mobile ui works uh platform ui works and how our hierarchy works um once you understand that you have a much deeper understanding and you can push the envelope on how you're gonna build these things right so i think that's the main takeaway uh hopefully i you know this stuff uh you know you guys find this helpful um again you know understanding how parameters are passed understanding what the limitations are understanding how to use platform ui versus mobile studio mobile studio i use mobile studio just to set up the basic foundation and then i use platform ui to get down to the stuff that studio can do so hopefully that's that's helpful for you guys that's a great wrap up thank you and uh to better understand what you know mobile studio can do versus what you need to configure a mobile platform i did share a uh essentials training link on our mobile community site and i'll give you a direct link into our information guidebook which addresses you know where to build those things um and that pretty much wraps up our mobile app academy for today um thank you everyone for for joining us for today if you have any further questions feel free to keep asking us on the mobile community site uh where our general teams are always kind of going through that and um next in the next session we'll be covering uh what's new for now mobile in paris so stay tuned for the latest updates uh there but besides that thank you all for joining us in today's session and we hope to see you in the next session
https://www.youtube.com/watch?v=vyuVkz1RM3Q