Plugin: Android Scan Write

From iDempiere en
Jump to navigation Jump to search
  • Sponsor: SYSNOVA, Bangladesh, thanks to Zeeshan Hasan.
  • Creator: Red1 (talk) -
  • Current Version: 1.1
  • License: GPLv2 - Free as in Freedom not Free Lunch (There is no warranty for production use and you need to pay a consultant to provide it.)
  • Source-Code: GitHub


  • A minimal Android Mobile project connecting to iDempiere besides the highly complex SFAndroid/SpinSuite that its creators have no intention to work with the also equally complex iDempiere ERP project.
  • A completely originally done project managed by me so that I can answer, maintain and improve it without reference to an alien project that no one can properly address.
  • Thus the project source-code easily understood and modifiable with no debugging hassle.
  • With well described instructions in technical forum to guide developers and users.

Source-Code Highlights

  • Using Android Studio SDK version 25 usable backward minimal 15.
  • Only two simple short main classes to read and maintain
  • Integration to download ZXing Barcode scanner that is set to read up to QR code.
  • Reference how I solve simple developer issues:
    • Connecting to Postgres database directly
    • Handling basic activity and views
    • AsyncTask handling of UI thread


  • SQL writing made to be open and dynamic for any table-field to be updated directly.
  • QR-code printout format: UPDATE [Table] SET [Set]=[Set2] WHERE [Where]=[Where2]
  • Optimal response popup of success/fails
  • Handle multiple scans before Update DB
  • Immediate Kanban board reflection for high user experience.


  • Part of new in-progress WMS3 project sponsored by SYSNOVA.


  • Performance for using direct jdbc connection instead of Web Services
    • It is not an issue for low controlled offloading updates. iDempiere server also need not be up for 24X7 shopfloor operations.
  • Security
    • Can be controlled by many other means as this is Open Source for implementor to harden it. Code is only two main classes, very short for fast understanding.
  • Logging
    • Is automatic by use of pg_log at Postgresql level.

If you want to provide additional comments, please use the Discussion page.