Magento order fulfilment templates

I said Magento was week at backend, that might be wrong. Of course compared with any accounting or ERP software, Magento is lack of some facilities to control the work flow of order fulfilment. When I dive into Magento backend, I think it should be sufficient for most of business. Most of business do not need an extension to fulfil orders, only need to customise the templates involved.

Supprisingly, the templates are separated. I mean, Magento does not offer an overall template to generate different but related documents. For example, I must go through all the areas in the following table to change what to show up as order items detail.

  Frontend Backend
  Screen Print Email Screen Pdf
Order thead          
tbody          
tfoot          
totals          
Invoice thead          
tbody          
tfoot          
totals          
Credit Memo thead          
tbody          
tfoot          
totals          
Shipment thead          
tbody          
tfoot          
totals          

Separating those templates make the programming less hassle, and the template changer can understand them easily. However, if I am that template changer, I hate copy & paste. As a programmer, I do my best to avoid delivering a program which require people to copy & paste.

More importantly, if a template changer forgets to go through the above checklist to make a simple change in the order items detail, admin and customer get different view of the same order on screen, in email, or print-out when ordered, invoiced, credited, or shipped. I do not think this approach is acceptable. It is on my agenda to write an extension to make these documents under control.

Run opentaps as a service

为了让 Opentaps 在系统启动后自动启动,我在 /etc/rc.d/rc.local 里添了一行

/path/to/opentaps/startofbiz.sh

在 Opentaps 1.0.4 版之前用这个方法启动 Opentaps 没发现大的问题,但 1.0.4 版运行 startofbiz.sh 的当前目录必须为 opentaps 的目录,不能再用上述办法启用 Opentaps。再说上述办法并不是正统的以 service 运行 Opentaps,所以我又重新寻找一个能让 Opentaps 自启动的办法。其实也很简单:

  1. 适当编辑 rc.ofbiz 的参数 (rc.ofbiz 似乎是在 DOS 下写就的,我用了一次 dos2unix 才让它运行起来)
  2. cp /path/to/opentaps/rc.ofbiz /etc/init.d/ofbiz
  3. chmod 755 /etc/init.d/ofbiz
  4. chkconfig --add ofbiz
  5. chkconfig --level 235 ofbiz on
  6. service ofbiz start

How to evaluate stock value

我在思考一个财务上的问题:

Euro-bags 公司每月初做一次库存盘点。1月初库存盘点,其中产品无纺布袋100箱,当时的生产成本为 £21/箱。库存盘点后,公司陆续生产了三批同型号产品无纺布袋,每批的数量和生产成本分别是

  • 200箱,£22/箱
  • 300箱,£20/箱
  • 200箱,£23/箱

1月份,公司销售了550箱,理论上库存为250箱。但2月初,库存盘点显示无纺布袋260箱(理论库存与实际库存不一致的情况经常发生,否则也没必要作库存盘点)。

问:

  • 2月初库存报告中的无纺布袋价值是多少?
  • 建议采用什么模型确定库存商品的单价?是统一单价,还是区别单价?
  • 统一单价的话,应用先进先出呢还是后进先出?
  • 区别单价的话,损益的数量该如何定价?

Openbravo know what users want

我想把 erp5 安装在 vmware 里,没想到非常麻烦,碰到了一些问题,实在不知道是 erp5 的问题,还是 vmware 的问题,只好 google erp5 vmware 求助。

But I had a typo in query. I typed in erp vmware, and Openbravo came the first. 原来 Openbravo 针对 vmware, xen 等几个虚拟机分别打包,方便用户下载部署。我看了一下,似乎还没有第二家 erp 供应商为用户提供虚拟机环境的。虽然我今天找得不是 Openbravo,但它对用户的体贴还是要狠赞一个。

用Gmail做企业级的Contact Share Management

我用Gmail里的Google Contact作个人级的Contact Management,迄今感觉很好。

如果是企业级的Contact Management,其中一个关键性的要求是Contact Share。我们公司用Act!,Act!在我眼里一无是处,又贵又慢又不好用。升级版的Act!可能会好一些,但实在没必要做这个投资。老板的想法基本跟我保持一致,不过他主要是从省钱的角度考虑。

想在企业级的Contact Management软件投资方面省钱到底?关于轻量级的企业Contact Share Management,我有个不是很成熟的想法:利用架构在Google App上的Gmail来做。

我们来看看Gmail是否能达到Contact Share的要求:

首先是联系人信息共享,这个Google App已经考虑到了,只要在Manage this domain的User accounts里Enable contact sharing即可。

其次是联系人活动共享,也就是查询联系人的来信和去信,不管哪个同事是联系人的客户经理。Gmail有个独到之处——按Conversation归类email(还有chat,如果有的话)。这使得按联系人进行活动查询变得可能。至于同事之间的来信和去信共享的问题,可以通过设立一个公共邮箱,配合pop from other account (maximum 5) 和send mail as功能,各位同事仍可个性化的收发邮件,但只要大家遵守一定的规则,共享邮件也不是问题。当然,活动不仅是邮件往来。Hacking Gmail一书里讲到可以用Gmail来make note, record to-do, etc. I think those workarounds can basically cover activities.

但,Gmail无法设置在个别同事之间Share Contact,留给我的升级余地很小。同事间的共享活动应该遵守一套什么规则才能保证信息共享?我还没静下心来想。如何跟ERP集成?我也没底。所以以上命题只是我不成熟的想法。

开源ERP软件的比较

如何选择适合自己的ERP软件?这个问题困扰我好久。老板一直承认ERP很重要,但就是没有预算做一个ERP project。这倒也好,我有了很充足的一段时间到处试用各种ERP软件,迄今已经颇有心得。这里说说十个开源ERP软件,因为ERP软件的选择已经够多了,不开源的ERP软件我基本不考虑。

  1. 首先要说说compiere和adempiere。我也不能免俗,因为现在一说到ERP,闭源世界里的大哥大是SAP,开源世界里的大哥大似乎就是compiere。我水平有限,一年多以前我就想装一个compiere来试用,但就是装不成功,我就觉得compiere太复杂,后来一直没敢再碰。最近看到一个排名,列了25个最受欢迎的开源软件(不限于ERP),adempiere作为一个ERP软件,排名第三,不容易啊。adempiere是在compiere基础上开发的,这又引起了我的兴趣。于是下载来,费了点周折,花了两天时间,总算装成功了。我一开始没完整阅读安装说明,其实安装并不难。用了一小时adempiere,实在没有兴趣再用下去。因为
    1. adempiere的业务逻辑实在太复杂,我理解不了。比如我想新建一个产品,把它入库或者上架销售,怎么也找不到这个流程。
    2. adempiere的网店功能几乎空白,只有一个店壳。
    3. adempiere没有contact management,甚至连个contact都没有,我只找到client,或是business partner,或是staff。
  2. 接下来要说OpenTaps。它也列在25项开源软件之一,排名23。OpenTaps是目前我最看得上的ERP软件,喜欢上的理由也很简单。因为
    1. 下载1.0.0-preview7下来有349M,功能肯定很齐全,不用我再东找西找找插件了。不过我觉得有点奇怪,一年多前我下载的0.9.2版只有60M,差距如此之大。
    2. OpenTaps是在ofBiz基础上开发的,ofBiz是Apache Foundation的一个project。Apache是让我心旷神怡的open source product,爱屋及乌就到了OpenTaps。
    3. OpenTaps支持而且推荐使用MySQL。
    4. OpenTaps的安装过程也令人惊喜。我在安装adempiere时设置http port: 880, https port 8443,但半途碰到了一些困难,一时解决不了,就转而去装OpenTaps。OpenTaps的安装超简单,一解压就行,还没怎么设置,结果http://localhost:880和https://localhost:8443上竟然没出现adempiere而出现了OpenTaps。
    5. OpenTaps有我想要的contact management。
    6. OpenTaps很注重网店功能,自带的demo shop功能很完整。
  3. postbooks/openMFG/xTuple ERP。名称上就让我很困扰,哪个是哪个啊?唉,不管那么多,下了试用先。安装倒很省心,只是postbooks的contact management无法列示contact recent activities。这个功能是我必需的,所以postbooks还没热身就被我卸了。
  4. openbravo。开源ERP软件琳琅满目,本来openbravo没引起我注意,但后来我搜索MVC+ERP,各种结果都指向openbravo,看在MVC的份上,我试着安装openbravo,发现openbravo安装时的问题特别多,最后还卡在那里,实在折腾不了。我怀疑是数据库环节出现问题,但openbravo只支持oracle和postgres,我知之甚少,只能放弃。
  5. SugarCRM。其实SugarCRM有很多ERP的功能,自称为CRM有点委屈自己。SugarCRM曾评为linux平台下的十大杰作之一,功能和稳定性是有目共睹的,SugarCRM也能在Windows下运行。但SugarCRM只想做个CRM增强版,我不能指望它涵盖ERP的全部功能。
  6. Hipergate。安装也是困难重重,装好以后仍无法登录Demo,换句话说,Hipergate还没真正露脸给我。
  7. WebERP。跟SugarCRM的自谦正好相反,WebERP只能作accounting软件,自称ERP让人觉得有点上当的感觉。因为功能单一,安装和使用也很简单,如果只是寻求accounting功能,WebERP不妨做个候选。
  8. Tiny ERP。如名字所述,太tiny了。
  9. CK-ERP。要求装在Linux下,我没试过,不过看了简介,CK-ERP只是多个开源软件的连接件,没有核心,这跟ERP逻辑背道而驰啊。CK-ERP想整合的都是各个领域有众多用户的开源软件,CK-ERP是否好用完全取决于整合程度。但我对之没有信心,因为CK-ERP开发团队没有给我这个信心。
  10. erp5。也要装下Linux下,没用过。714M的安装文件啊,让人想入非非。

每个开源ERP软件都说要让SME用得起ERP。看看SME的定义,500名雇员以下的都是SME(SME的定义很多,按人数来定比较简单)。1-500雇员的企业实施ERP区别很大,Tiny ERP不太适用于3人以上的企业,OpenTaps完全适用于1-500人的企业,50人以下的企业不太玩得转compiere/adempiere,openbravo,Hipergate。500人以上的大企业要玩ERP,因为大企业有足够的财力做二次开发,OpenTaps相比compiere/adempiere,openbravo,Hipergate没有特别的优势,当然我也拒绝承认OpenTaps在大企业竞争不过compiere/adempiere,openbravo,Hipergate。

我承认上述结论有偏颇,因为我完全站在我的需求评价这些开源ERP:我们公司正从Act/Sage Line 50转型中,老板又是目光短浅,总是想零二次开发。然而,请您别指望这个问题有个大众化的结论,因为ERP不能以机械化大生产模式实施,每个公司都是个例,我只能站在我自己的角度说问题。