Current filter:
                                You should refresh the page.
                                  • Hi, we are in the process of creating a mobile app for one of our softwares. From what i read here your mobile UI does not support offline capabilities which for us is the main requirement. We also saw this but we are not sure again about the offline features.
                                    So we are wondering what is your proposed solution for this scenario:
                                    There is a Middlte Tier Web application, working with WCF. We need a mobile app that is able to work offline and then when the user goes online the data are synced to the database.

                                • Scott Gross 03.20.2018

                                  How about wrapping XAF Mobile in a Xamarin App (instead of Cordova) and use XPO Core to cache the data?

                                • Dennis (DevExpress) 03.21.2018

                                  Thanks for your suggestion, Scott. This may do it, but this means rewriting the existing Mobile UI using a completely different tech.

                                • José Enrique 03.27.2018

                                  Consider no rewriting UI but providing bindings to ... call it XAF MVVM Framework with XPO cache capabilities or other kind of datasources (realm or couchbase).

                                • Carlos Perez 11 04.22.2018

                                  I vote for this solution. The current XAF mobile apps are unusable in most cases due to the lack of a offline mode. With a XPO local cache even preliminary validations could be made easily and a synchronization strategy doesn't seems too complicated.
                                  Check this post:
                                  https://xamarinhelp.com/mobile-database-bi-directional-synchronization-rest-api/

                                  This would be the most significant addition to XAF framework in a lot of time.

                                2 Solutions

                                Creation Date Importance Sort by

                                @Costas Gavardinas and optionally Alex:

                                >>
                                but taking into account the business logic as it is in the main application.
                                <<
                                Constructing new data records often needs calling business or validation logic from the server, which is unavailable in the offline scenario. Is it OK for you to skip this part of object construction and would it be sufficient for you to just collect plain data such as text, numbers, photos, etc.? If not, please clarify how you would prefer to handle invalid data when synchronizing it with the online database?

                                >>
                                F.e. user permissions should be taken into account or specific actions that create objects with certain values shuld be available.
                                <<
                                Do you fully understand that fulfilling this requirement completely means re-implementing or duplicating the functionality of our Security module written in C# for the full version of .NET Framework in JavaScript or a subset of .NET, e.g. .NET Core? This is a lot of work and I am not sure whether we will follow this path. I am also not sure if you realistically support all the features of the desktop/Web clients in the mobile app, especially in the offline scenario, if you create this app without XAF yourself. Having said that, I would kindly ask you to rethink your mobile application's functional requirements and list the features you and your end-users can practically skip in the offline scenario or approach in a different fashion, e.g. via validation during data synchronization.

                                As for data synchronization, it would be great to hear from you or your end-users on how they prefer this to be done. In the meantime, I am thinking of the following algorithm:

                                1. Originally, valid records get saved into the main db silently;
                                2. Rare invalid records from the local device cache will be shown to an end-user in a separate list form and he or she will run through their detail form using navigation buttons and correct validation errors until the save operation is complete and local data can be stored into the main db.
                                3. Once a user finishes correcting entered data records, they will disappear from the list and the whole synchronization will be completed.
                                4. A user must have the capability to temporarily cancel synchronization of certain records not to break the whole synchronization process. This will be technically possible only for independent data records. For instance, in the case when you have created a Contact record that has an aggregated Address sub-record, the main Contact cannot be saved independently if its Address data is invalid, because there is an aggregated association between them. There may be other rules as well.

                                In other words, this feature seems to be feasible in the simplest scenario with scalar values, but creating a universal solution for all scenarios with reference data and validations seems to be a difficult thing, which would still have limitations, and it is unclear whether it will be suitable for end-users.

                                If this would be of some help for you, here is a link to an application supporting offline scenarios and also a link for a solution for Xamarin (these links are received from another XAF community member).:
                                https://itunes.apple.com/app/mobilenav/id513026463
                                http://www.maiersoft.de/blog/caching-httprequests-in-xamarin-crossplatform-app-using-akavache/

                                • Eric Upton 08.07.2017

                                  Dennis,
                                  Mobile offline data features would bring some very good options to our application. Mostly for our sales team. There are many cases when they are traveling and don't have access to the network, but still need to enter sales tasks and activities. Here are a few basic features that would be useful:
                                  -download some objects to use offline (clients, opportunities)
                                  -edit existing/downloaded objects offline
                                  - create new objects offline

                                  I think the process you have outlined above for data sync would allow for most common scenarios. For now, it would be acceptable to me to simply have a mechanism to send the offline data back to a service that the developer can then manage the sync process to the live database. Just having the ability to store offline data locally when offline and publish to a server when back online would open a lot of possibilities for me.

                                • Dennis (DevExpress) 08.07.2017

                                  Thanks for describing your business requirements in detail, Eric! Our team will take your feedback into account for the future.

                                • DEEPAK CHAVAN 08.10.2017

                                  This describes the basic use case for offline. I am eagerly awaiting for offline capability. Please keep me posted here. This feature will definitely give an edge to solution.

                                Hello Costas,

                                Currently, we do not have a solution for this task. However, this is one of the directions in which we are going to work in the future. To help us create a roadmap, would you please describe your requirements in greater detail? What is the minimum amount of features that should be supported in offline mode in your application? Is it sufficient to show cached data in read-only mode, or your users need a fully-functional application with the ability to create new objects and save changes?

                                Show all comments
                                • Costas Gavardinas 1 01.10.2017

                                  Hi Anatol, our minimum requirements would be for our users to take a snpashot of the database when they are online, work with it offline and sync the changes to the database when they are back online.
                                  They should be able to create objects and make changes but taking into account the business logic as it is in the main application. F.e. user permissions should be taken into account or specific actions that create objects with certain values shuld be available.

                                  I understand that you do not have a current solution, but could you point  to a direction since we unfortunately cannot wait for your implementation. Is it possible using something like f.e. Xamarin to communicate with the XAF server service?

                                • Dennis (DevExpress) 01.10.2017

                                  Hello Costas,

                                  Thanks for describing your main requirements for the offline scenario in greater detail. Our team will take them into account, though I cannot promise any implementation date at this stage.

                                  >>
                                  but could you point  to a direction since we unfortunately cannot wait for your implementation. Is it possible using something like f.e. Xamarin to communicate with the XAF server service?
                                  <<
                                  As we mentioned above, we do not currently provide ready guidelines for accomplishing this task with our Mobile UI. In general, I suggest you look for solution instructions in public community resources like StackOverFlow.com.
                                  If you cannot wait, it seems that implementing a fully custom mobile UI (e.g., Xamarin)  probably based on our data service or without using our solution at all is the only way to go for you right now. You can learn more about our data service from the "Q:  Is there any internal backend API for accessing XAF data I can reuse with custom non-XAF clients, such as DataExplorer or Xamarin?​​​" and related points of the FAQ: New XAF HTML5/JavaScript mobile UI (CTP) article.
                                  Let us know in case of any further XAF-related questions or suggestions. Thanks.

                                • Alex Miller 01.11.2017

                                  @Dennis

                                  I know it's way too early for this, but please keep this in mind for the offline mode... VistaDB is currently testing its IOS and Android version!

                                • Evgeniy Meyke 07.30.2017

                                  Dennis, please keep us updated on this.

                                • Dennis (DevExpress) 07.31.2017

                                  @Evgeniy: Sure, if we have any news, we'll update this and related articles. This particular feature is not planned for any specific release and in the meantime, we would appreciate your thoughts on my proposed algorithm/flow or any other business requirements of how this should work according to your real clients.

                                • Christopher Matysek 08.19.2017

                                  @Anatol, the very basic requirement for offline mode is as you mentioned to show cached data in read-only mode. For my requirement, this is enough. So can this be somehow implemented in the current version?

                                • Anatol (DevExpress Support) 08.21.2017

                                  We did not provide any built-in caching functionality so far. An application can show cached lists in some scenarios, but we do not have a list of supported and unsupported scenarios nor we have implemented any of these scenarios intentionally. This is one of the directions we hope to improve in the future.

                                • Andrea Novelli 08.30.2017

                                  Hello Urian Anatol and Denis,
                                  By collecting your request, I then expose the requirements based on my experience and my current need.
                                  A Mobile Application that handles data streams (inserting and updating) often requires that:
                                  - Connected to a central monitoring system (in Web Desktop / Windows mode);
                                  - Share data with other apps. The same can (with defined logic and rules) modify part of the shared data;
                                  - Share and send the Geo Reference Coordinates (Latitude and Longitude);
                                  - must notify (with audible, luminous alerts) the presence of new important data to be handled;

                                  Therefore, the OFF-Line mode must be limited to simple and small scenarios because it needs data validation management (different UIs that work on data).

                                  Apps that in a ON-Line mode predispose a Buisness class to make changes to the data that they will have to do in a place not covered by Line-Data (such as landmarks) must:
                                  - Notify / Manage other applications that attempt to modify the same data;
                                  - Register on a simple local database (to just collect plain data such as text, numbers, photos, ..). Upon returning the status of ON-Line, it will have to synchronize the changes / insertions (even in child carriers) on the server (without alerting the user, automatically).

                                  This scenario, according to my parade, covers 70% of the needs.

                                • Dennis (DevExpress) 08.30.2017

                                  We appreciate your detailed response, Andrea!

                                • NITISH36 11.06.2017

                                  hi Dennis.

                                  1. Connected with win or web

                                      --Sales person goes in field for tacking orders and making new customers.
                                            please order required offline mode because Internet is not available in some area.

                                  2. Stand Alone Mobile App

                                     ---Some App like task management and scheduling for individual person
                                       

                                • Dennis (DevExpress) 11.06.2017

                                  @Jignesh: While we generally understand your scenario, your requirements for the offline mode are not 100% clear. Would you please also comment on the CRUD and other features that you can skip in the offline mode or at least replace with data validation during synchronization when a connectivity is established? I am clarifying this, because this mode enforces some limitations on the default online functionality that needs to be compromised or skipped when going offline (because there is no server anymore). Please refer to my answer above for more details.

                                • José Enrique 11.09.2017

                                  In my opinion, entities that were enabled to be used offline should be marked for that purpose and the framework could allow free offline CRUD operations but apply validation on server when syncing. If something is wrong the object could be stored somewhere waiting for human validation/inspection. Developer could use workflows to implement notifications or something.

                                  Even more, as developers could understand a light offline mode in which validations doesn't work (neither client or server side) and our responsability shoud be implementing backend validations and workflows. After all, using third tecnologies as Xamaring implies also this treatement. We can't reuse validations so most of them must be made at server side after sync.allowing or not write, update or delete operations with or without human supervision.

                                • Dennis (DevExpress) 11.09.2017

                                  Thanks for your feedback, Jose

                                • Paolo KALC 09.22.2018

                                  I think that the XAF Mobile App in offline database strategy should have the possibility to download part
                                  of database data. The user should be able to work on that data OFFLINE and then sync when  he wants it.
                                  At the moment I have an APP written using  Multi-Channel Application wizard and the SPA Framework connected via oData to XPO database
                                  which downloads part of data and  stores the data using PouchDB and customStore. The user works on theese local data and then when he has finished sends updated data to server. Works fine so far….
                                  The most important thing to me is that the APP should work even without internet connection.
                                  I am not happy that SPA framework is deprecated as it works very well and when you need to write a simple APP
                                  with knockout is very simple to use. The APP I have in production using this framework works very well.

                                • Marc Greiner (DevExpress MVP) 09.24.2018

                                  Hi Dennis,

                                  Our DevExtreme app gets stored locally with a manifest (html5), to be used offline.
                                  While in offline mode, the user can still issue time stamps.
                                  As soon as the connection is restored, the offline time stamps are automatically sent to the server.

                                  It is the most simple scenario:
                                  - No validation is necessary,
                                  - The user doesn't need to select any object in a reference dropdown.

                                  Would such an offline mode still be available in a XAF Mobile App with React?

                                  As a side note:
                                  Users accept that while offline, they have:
                                  - fewer navigation items,
                                  - fewer or no validation,
                                  - they may not have dropdowns to select related objects.

                                • Dennis (DevExpress) 09.24.2018

                                  @Marc Greiner, Paolo KALC: Thank you for sharing your offline requirements and implementation details. While we have not yet planned anything in this regard, we will take your information into account.

                                • Peter Majzik 12.03.2018

                                  Hi,
                                  On our side, working offline is a must requirement, however we can live with a restricted functionality.
                                  As a first step it would be enough, if user can get list of objects on the tablet being online (together with all of the referenced objects), then can modify existing records offline, saving changes in a local cache, and can synch changes as soon as online connection restored. So creating new records or deleting existing ones is not a requirement in the first place.

                                  Regards,
                                  Peter

                                • Paolo KALC 12.03.2018

                                  Just wanted to know if with your new  XAF  Web & Mobile development strategy based on ASP.NET Core and React, will it be possible to deploy apps on the phone or it will only be possible to work with browsers.
                                   

                                • Uriah (DevExpress Support) 12.03.2018

                                  Hi,

                                  @Peter, thank you for the feedback. We will take these requirements into account.

                                  @Paolo , I've created a separate ticket on your behalf (T696684: Will it be possible to deploy new XAF Web & Mobile apps on the phone). It has been placed in our processing queue and will be answered shortly.