The controls which pull data from other entities like Social Pane and inline subgrids, are yet to be initialized. Social pane and Inline subgrids initialization This means that user can interact with all the controls present in that Tab. Once controls in the first Tab are initialized, we call this state as Active Tab ready state. Controls get delay initialized on the first Tab and then initialization proceeds to the next Tab. Typically CRM form attributes are split into multiple Tabs. On the other hand, if the control is initialized only when the user clicks an attribute, the single control initialization cost is too small to be noticed by the user.Īnother aspect of control initialization is the phased approach taken to initialize controls belonging to various Tabs on the CRM forms. This will result in form being ready for user interaction quite late. If we were to fully initialize all the controls upfront, all the initialization adds up significantly. For that, it doesn’t make sense to pay upfront cost of fully initializing all these controls. For example, assume there are 50 attributes (each attribute maps to a control) on the updated form, the user is probably going to interact with only a couple of those fields in most of the scenario. The motto here is to avoid paying penalty for executing code which might not be needed in the end. This means that when user actually clicks on the relevant area on the browser, the remaining initialization code gets to run. At this point of time, the controls are in a delayed initialized state. Post above steps, the controls are ready to be interacted with but not yet fully initialized. Execute the downloaded javascript code in right sequence.These Javascripts are cached on the browser after first download First of all we need to download additional JavaScript libraries which have necessary logic for all the controls present on the form.To transition these controls into a state which allows them to be modified, a lot of things happen on the client side. During this time, the controls representing the data are in a read-only state. Transitioning the form to edit readyĭuring previous stage, even though end user can see the data on the browser, the data can’t be modified for a small fraction of time. This is called ViewReady or ReadReady state. At this point, we can see all the data belonging to the entity instance requested by the user. Output of template binding is complete HTML. This step involves doing the template binding of entity layout and entity data. The entity instance data retrieved during previous step provides data for the template. The first thing global.ashx JS library does is to retrieve layout and entity metadata from the browser cache. As soon as html content gets loaded into browser memory (including the Javascripts referred in html), the javascript library global.ashx gets the control. The CRM server responds back with HTML response containing entity instance data, configuration values and script/css tags for Javascript libraries and css references. The form load bootup process starts with HTTP GET request issued to main.aspx URL. The following diagram depicts how these stages are sequenced:
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |