For us, it is an AND. We use ABM for the more complex tasks that happens in an office: overviews, charts, reports, data manipulation, pivot tables, planning etc... because it can use the full power of B4J. BANano was written to make lightweight PWAs for quick data input. Both communicate with each other. e.g. the projects, clients, tasks etc are done in the main office, this data is then passed on via a REST API to the PWAs where the people of the workfloor can perform the task. When they have finished they send back the results, which are then processed and presented (screen, reports, ...) in ABM.
You have to ask yourself the big questions. What is 'needed' on the workfloor? Do they really need be able to make a PDF or is it much more convenient to do this on the server side? Do they really need to be able to see a yearly overview of what they have done? Most of the time, you have only very limited screen estate you can use on a e.g. phone and you can present data much better on a full office screen. Depending on the answers we acquire, we pick if it has to be done in ABM or in BANano.
Main Office (ABM):
PWA on the workfloor (BANano):
Alwaysbusy