280 likes | 292 Vues
Explore the efficient Sage X3 mobile and tablet client framework for modern development, ensuring data consistency, property rules, and added methods. Incorporate personalized features for enhanced user experience.
E N D
Mobile and tablet clientin Sage X3 U9 Dominique Bopp 26 January 2016
Server technology Standard CRUD methods Persistent Class definition • Based on V7+ development style • Business logic and data consistency is managed by classes having: • Properties with rules (default values,fields controls…) • methods and operations (read, create,update, ship, post…) • The persistence is managed in database tables • Once this is defined, it can be used: • In any user interface • As a service (REST mode) • This is the new way to develop Sage X3 code for the future Property rules Data consistency Additional methods & operations DATABASE TABLES
Server technology Standard CRUD methods Persistent Class definition • Based on V7+ development style • Business logic and data consistency is managed by classes having: • Properties with rules (default values,fields controls…) • methods and operations (read, create,update, ship, post…) • The persistence is managed in database tables • The UI is described by representations that handles: • Additional fields if needed for UI purposes • Dedicated additional rules • The device used (mobile, desktop) Property rules Data consistency Additional methods & operations DATABASE TABLES Representation (UI description) Mobile UI dedicated rules and methods UI rules
Server technology • Administration entities to use a mobile solution • The “mobile gadget” is necessary to make a class / representation available on mobile: • It includes the same information than a menu item(link types, additional parameters) • But some link types are not possiblefor mobile gadgets(classic pages,visual processes…)
Server technology • Administration entities to use a mobile solution • A “mobile dashboard” groups one or several gadgets • A mobile application refersto a home dashboard (andoptional additional representations)
Client technology Architecture Client definition Personalization features Ergonomics and offline mode
Let’s summarize the architecture • Business logic is common to all clients: all the rules are defined on the server • Layout (that can be personalized) and publication rules only differ between devices • Client: HTML 5 browser • Wrapper added for a tighter device integration • Application and data can be stored in cache on the device Relational DB Entity definition with all the consistency rules Scripts for controls, default values, operations Database structure SERVER LAYER Document DB Default desktop layout (representation)with personalization capabilities Default mobile layout (representation) with personalization capabilities Publication metadata(menu items, dashboards) Publication metadata(gadgets, dashboards) HTLM 5 browser CLIENT LAYER HTLM 5 browser Shell wrapping browserOS integration HTML 5 cache
Client definition The client is an HTML browser • Any recent HTML5 / CSS3 browser • On PC, Apple, Linux workstations • On mobile phones (Android, IOS, Windows) • On tablets and mini-tablets (Android, IPad, Surface phones) Responsive design technology is used: • Blocks, sections tiles adapt to the device dimensions • The buttons and menus are different on mobiles and tablets Dedicated application for Surface tablets in order to allow: • Pen input and Cortana integration (voice and handwriting recognition) • Inking / camera integration • Live tile integration
Personalization features on the dashboard The mobile user connects on a dashboard • Available mobile application can be downloaded at any moment on every connected mobile
Personalization features on the dashboard • An icon is present if the application has been updated and must be downloaded again : the download is proposed if you select the application to launch it
Personalization features on a vignette or a page (list) • A Design page link allows to change the layout and the columns displayed
Personalization features on a vignette or a page(list) • On every section, various configuration parameters are available
Personalization features on a vignette or a page (details) • Sections can be organized in rows and columns, can be collapsible… • Widgets are available for presentation, for example gauges
Personalization features on a statistics or reports • You can change the layout of your graphs at every level of detail • You can as well change the columns to be displayed • You can change the colors associated to series
Let’s use a mobile application by starting with lists.. • Lists can be sorted, filtered • The sort and filter result can be defined as a favorite • The favorites can be renamed
Let’s use a mobile application by starting with lists • A multiple selection mode is available to trigger grouped actions… • Like downloading the cache with selected items and linked information
Draft management (Future evolution) • Let’s imagine that an error occurs during data input… • Let’s imagine you have to stop before finishing the entry. • You can now save it as a draft and come later
Draft management (Future evolution) • When the connection is lost, an orange bar appears and selection are done only with data stored in cache • When no cache data is available for selection, the system warns you but you can still enter data • The only option to save the data in offline mode is to save it as a draft
Draft management (Future evolution) • When the connection is lost, an orange bar appears and selection are done only with data stored in cache • When no cache data is available for selection, the system warns you but you can still enter data • The only option to save the data in offline mode is to save it as a draft
Draft management (Future evolution) • From the right menu, you can display the number of pending drafts • You can list them and see the status (error during input, offline entry)You can work to correct drafts or discard a draft… • In online mode, you can select the drafts in the list and synchronize them globally
Surface bound features Live tiles Voice recognition Pictures and pen interaction Ergonomics and offline mode
Surface tablet bound features • You can create a live tile from a page • Even if you are not connected, you can have live tiles that gives you information refreshed every 15 minutes (the number of expenses here) • You can call your application by using your voice: • “X3, show my expenses”
Surface tablet bound features • You can personalize the page to have a “pen” button on every field • Data can be entered with the finger or with the pen
Surface tablet bound features • You can take a picture to be included in a document and set-up its scale • You can annotate or circle information on a picture • And finally save the result
Surface tablet bound features • You can define a signature field and sign a document • The signature can then be included in the document • You can even add a time stamp in background of the signature to prevent tempering