odoouser唯一用户身份与系统版本标识架构体系

odoo经过十多年发展应用版本众多,一直想要用saas架构做个统一的多域名多数据库多公司多用户的管理中心app,在客户端进行各种版本之间的差异兼容适配,服务端就保持纯原生不用安装任何第三方模块即可标准协议直接连接透明使用。

odooapp用户管理中间件模块第一版已经完成交互体验,首次使用需要先选择web服务器协议http或https,其次则是输入域名或IP,如使用非标准的80或443默认端口号还需要再手工更改一下,最后正式进入添加新用户流程。

用户登录验证初始化会获取odoo相关的版本标识以及数据库列表,如在多数据库环境下还需要额外进行选择指定,单数据库则默认选择,最后输入正确的用户名与密码或api密钥即可通过对应的服务端验证,最终正式进入odoo世界的各种体系场景挖掘探索。

odoo列表视图冻结窗格锁定行列与快速筛选

odoo现代版本都是基于B/S架构,H5浏览器做前端虽然很强大,但是天然欠缺一些传统基于C/S客户端原生控件的基础能力,比如Excel常用的Freeze Panes与Data Filter功能,其铁粉用户的呼声就非常高。

完全开源的社区版odoo,就如同开发商标配的开放式简装房,通过万能的二次开发与交互设计,可以满足我们随心所欲的各种改善型需求。

odoocron定时任务发送报表与服务器动作域

原生ir.cron模型只支持执行python代码的code模式,且定时单位没有常见的秒与工作日类型,也无法支持更加个性化的星期过滤,总结起来就是纯实施有些吃力。

odoo基于webkit无所不能的qweb低代码报表渲染引擎,只有想不到没有画不出,欠缺的是基于各种时间应用的无代码配套设施,比如每周一三五电子邮件发送report,每周二四六则通过微信、钉钉、飞书来推送图文消息。

标准base.automation自动化动作也很强大,完全可以根据各种规则来触发domain域动作,但就是静默定时能力不足,这种与cron强强联合互补的二开桥接模式因该算是基于odoo巨人肩膀上的最佳集成方式了。

odoowms布料仓库多单位分阶段实时库存报表

odoo纺织面料可分为针织与梭织两种,常用米、码、公斤作为主要计量单位与辅助计量单位应用于开发、采购、仓存、生产、销售等场景。

odoo产品模板虽然可以设置销售与采购两种计量单位,但必须是同一种类别。原生比较难做到采购按公斤,销售按米,生产按码,仓库则可实时看到所有多单位库存量。

odoo标准在手库存则无法同时看到同一个产品变体的采购数量、生产数量、待送数量、送途数量、收货数量、返途数量、出库数量、当前数量、预留数量、可用数量、预警数量等综合信息。

odoo开放灵活的架构,很容易可以针对不同的特殊行业需求来扩展原生实施的痛点,不轻易二开也不惧怕二开应该是这十多年来的一种最佳实践了。

odoo桌面系统python客户端gui触摸屏应用实践

odoo原生的web框架虽然很主流通用,但一些特殊的需求还是要用传统c/s客户端来完成最佳,比如在工控机、工位平板、触摸屏立式一体机上专门针对SOP量身定制超高效率的批量作业系统。

python技术栈开发桌面端的最大优势是与odoo服务端同个语言体系,可共享相关生态与基础库,大量代码可以直接复用,xmlrpc远程调用方式也非常成熟,只是GUI图形用户界面工具包方面的选择有些取舍。

PyQt是很强大的,但是由于多年采用GPLv3协议而不好过度商用,权衡利弊最终根据实际场景定夺,如需要轻量级部署或者兼容老操作系统就使用原生的Tkinter,现代设备则大胆的选用最新版本的PySide来构建丰富多彩的odoo终端应用。

odoowms调拨单pda扫码渲染表单视图作业实践

odoo原生库存管理stock模块是社区版的核心应用之一,而支持条码扫码和手机端处理的stock_barcode模块又是企业版的收费功能,qweb实现虽然很灵活轻量,但始终只是h5页面程序能力有限,哪怕加上官方app套壳搭桥加持,其使用体验与原生移动端应用相比还是存在不少差距。

odooapp五大能力之一的扫码tab标签,就是定位做barcode.nomenclature条码命名规则模型的原生最佳实现,依托odoo社区版就已具备的强大后台基础设施接口,加上多年来积累的前端视图处理经验,完全可以达到平替企业版在小屏幕手持设备上的各类经典应用。

pda激光扫码硬件模块已是标配,随着rfid技术与成本越来越成熟,这种高度依赖不同厂商sdk的系统集成很难被官方企业版的闭源app一体化,而odoowmsapp天生就是半原生android应用,所有层级源码都是自主可控,非常适合用来定制各种特殊化的前沿场景专用app。

odooshop社区版电子商务模块原生移动端应用

odoo强大的后端erp供应链管理,不是一般开源shop商城系统可以超越的,与其最终都要各种connector合二为一强强联合,不如直接把社区版原生website_sale模块逻辑发挥到极致后再根据实际需要升级企业版或进行补漏式二开增强。

而完成这一目标的前提就是要先拉齐odoo移动端的能力,既完全不用安装任何第三方模块与接口的情况下,先实现各种原生客户端小程序app作为基准前端配套产品。这样就可以首先满足大部分小规模场景的原生逻辑开箱即用,又可以作为半成品起点来增量扩展,基于其标准进行前后端一体的业务功能全栈开发。

odoo电商的伟大复兴之路还很漫长,今年的目标就是将demo数据库默认开启的功能与数据进行全面版本适配,即odoo端不开发也不安装其他模块,全部用原生现成协议接口进行通讯对接,以达到h5、app、tv、小程序四位一体的全端应用基础设施。

odooapp通用套壳h5多平台半原生混合应用

本方案还兼容非odoo领域的广大web移动端实时应用,配图为本wordpress博客,可扫底部小程序码体验。

所谓半原生,即顶部标题导航栏和底部标签控制栏均固定为原生逻辑绘制,中间可变换区域才是由webview组件渲染的html页面,如果配合运用得当,可以低成本快速实现存量b/s系统的更新换代。

平台纯原生的tabbar,虽最多只能支持五个标签,但每个tab都可以同时分别打开完全独立的路由页面内容链接,切换体验非常顺滑流畅。各标签项的icon图标、badge徽章、文字、红点提醒、点击交互反馈与二级操作菜单都可以由后台自定义设置全端热更新。

odooapp正式开始进军erp、wms、mes、hrm等主流web领域

通用app产品诞生已经有三年了,依托开源odoo巨人的肩膀,前两年都在website架构无代码全网通领域深耕,去年以来则是在portal框架客户和供应商门户协同方向发展,而本月将正式开始迈入欧度主流的erp内部管理阶段。

强大odoo的web路由模式里,可以用低代码快速生成模块、视图、动作、菜单、权限等基础元素和相关的业务逻辑与报表模板,如果我们在原生app层面可以直接用jsonrpc协议对接这些基础设施接口来渲染出各种手机平台操作系统ui交互的话,那完全可以横空出世一套全新的移动端开发体系。