存档

‘Python’ 分类的存档

odoo:开源 ERP/CRM 入门与实践

2017年9月12日 没有评论

本文是Allen在GitChat技术分享的主题文章

看了这张图,或许你对odoo有了一些兴趣。

enter image description here

这次Chat就是和大家一起交流开源ERP/CRM系统:odoo

对以下读者有帮助:研发、产品、项目、市场、服务、运营、管理等。

一、背景趋势

  1. 社交网络、电商O2O;
  2. 每家企业都将是电子商务企业、精益企业;
  3. 每家企业都需要有套软件管理人、财、物,管理信息量,物流和资金流。

二、odoo是什么

  1. odoo不仅仅是开源ERP/CRM;
  2. 还是一套伴随企业成长可扩展的商业运营支撑系统;
  3. 一个巨大的应用生态系统,有近12500个Apps可供选用。

三、为什么是odoo

  1. 相比商业和其它开源ERP/CRM系统odoo有哪些优势;
  2. 对个人来说:学习成长、开发实践、职业规划;
  3. 对企业来讲:流程梳理、数据沉淀、商业运营。

四、odoo应用

  1. 企业网站、电子商务系统、进销存系统、客户关系系统;
  2. 人力资源系统、项目管理系统、生产制造系统、财务会计系统;
  3. 还有很多的应用系统和广泛的行业应用。

五、odoo开发

  1. 构建新Apps,满足企业个性需求;
  2. 继承、扩展、贡献已有应用,不重复发明轮子;
  3. 开发免费或商业Apps供下载或销售。

六、odoo实施

  1. 官方实施方法论;
  2. 其它服务商的实施方法;
  3. 与客户共同推进的最佳实践。

七、odoo成功案例

  1. 优站精选;
  2. 优选Apps;
  3. 案例分析。

八、odoo文档集和资源

  1. 优选幻灯片、手册、开发、培训文档集;
  2. odoo服务商链接;
  3. odoo开发者链接。

一、背景

当前是大数据、人工智能、云计算的时代,学好 ABC(AI,Big Data,Cloud Computing)走遍天下。

可是,目前大多企业的现状是这样:只有简单的办公软件,缺少一套支撑企业日常运营的业务系统,企业所有的信息都散落在公司的各个员工电脑和和手机里,公司和个人很依赖微信、微博等社交工具。有的公司虽然安装了OA、CRM等系统,但大多业务流程还是分离的,数据没有统一存储和管理。

大多数人每天都会接触到社交网络、社交电商,所以业务支撑系统若能整合这些平台会带来极大的方便和好处。

odoo除了自己提供了完善的电子商务解决方案外,也可集成主流电商解决方案:Magento、PrestaShop、WooCommerce等。

有一些开源项目实验了odoo与微信、微信支付、支付宝的整合。如:

https://github.com/JoneXiong/oejia_wx

enter image description here

enter image description here

enter image description here

在企业的发展过程中,需要信息化的支持和不断完善。企业若没有业务数据沉淀,没有业务流程梳理和优化,企业会很难做好做大。精益企业更需要数字化、流程化、智能化的支撑。每个企业都需要有套信息化运营支撑系统去实施各项业务和流程优化。

通过实施和部署信息化运营支撑系统,帮助企业把人、财、物管理起来,把企业资金流、信息流、物流跑通。别小看这个,国内知名企业华为去年才把上述流程跑通。有篇微信文章《再见了 咨询》提到华为的信息化折腾了20多年,到了2016年才实现“流程基本贯通、账实终于相符”(参见华为轮值CEO徐直军2017新年献词),这其实也就是刚刚做到ERP最核心的内容,财务业务一体化。我想,华为的业务基础,管理水平和员工素质应该是国内领先的,其他企业的信息化应该怎么做,自己想想。所以,我们应该尽早尽快引入企业信息化和ERP运营系统,odoo为我们提供了这种可能。

二、odoo是什么

odoo是一套现代、开源ERP/CRM系统,也是Next Generation MRP Software。

odoo是企业一体化管理软件,一套电商ERP和企业运营支撑系统,odoo伴随企业成长而不断发展。

odoo通过Apps和Connector扩展和集成数以万计的应用和服务,odoo目前有超过12500个Apps可选用。

enter image description here

三、为什么是odoo

再回头看看最开始的那幅图。

我们从以下几个方面进行比较:

  • odoo制造与其它厂商的比较:MRP Comparison White Paper: Microsoft Dynamics AX, Netsuite, Odoo & SAP Business One。
  • odoo CMS与其它开源CMS比较:Open Source CMS A performance comparision
  • odoo与其它开源ERP/CRM比较:iDempiere、Apache OFBiz、Opentaps、Openbravo,odoo模块化、易扩展、巨大的应用市场。其中,最重要的一点是:传统ERP以会计为核心,odoo以客户为中心。

enter image description here

enter image description here

图片取自:

https://www.odoo.com/zh_CN/slides/slide/keynote-odoo-strategy-2015-200

介绍了odoo了一些优势和优点外,我们来看看odoo给个人和企业能带来些什么?

对个人:

首先,可以通过odoo搭建个人主页,有论坛、有博客。

个人在学习和工作中通过引入odoo,学习odoo所涉及的企业运营管理所需要的方方面面的知识,而这些知识对你的工作和职业发展是很有帮助的。

举一个自己的例子:我当时为了学习生产制造ERP系统,花了3000RMB买了一套PowerBuild开发的生产制造系统(含源码)。这套系统非常不错,在东莞和深圳等地有100多家用户。不知这位小哥怎么弄到的,不停的在卖,然后用挣到的钱移民加拿大了,估计现在这哥们在那边快活着,这是10多年前的事。现在,大家要学习使用就不用到处找和花钱购买了,odoo就是个现成的生产制造ERP系统,它可作为你学习、开发、实践的业务支撑系统。我前些年为了学习财务相关知识,也跑到数码城买了一套有加密狗的用友财务系统,现在大家都不需要这样做了,直接安装一个odoo会计模块就可以了。

odoo的文档很好,中、英文都有,大家可无障碍的学习财务、采购、销售、库存、人力资源、成本、零售(POS)等业务知识。

个人觉得这些业务知识对于个人发展是很有帮助的,我们很多时候是不太清楚自己擅长什么,自己今后的路如何走,所以多接触些企业运作的业务知识对自己是会有帮助的。这其中,不少朋友今后都会选择创业,大家有时也会有种错觉,觉得我做好产品和技术就可以了,对如何经营和运作一家公司并不清楚,我以前也是这样认为。其实不是,尤其在中国这个特殊的大环境下,光有些技术和产品是远远不够的。

在这个持续学习的过程中,你可以不断的审视自己,自己在一家企业经营运作过程中,什么角色和职位更适合自己,你需要尝试和调整。

总之,创业不仅仅只有产品和技术,要用全局的视野去看(或者说要有个更高的格局,我们大多数人都不怕吃苦,但往往有时选择比努力更重要)。

对企业:

企业首先可通过odoo拥有一个漂亮的企业网站。

再说说企业要发展好、活下来,需要有很强的商业运营能力,我见过一些企业,其实没有什么技术,但商业运营能力很强,企业活得很好。他们能把一个不怎么样的业务系统不停使用和不断优化,最后打造成公司的赚钱机器,公司对外宣称是个技术公司,实质是个销售型企业,有大量的销售人员和客服。

自己10年前带领团队开发了多个生产制造、电能量管理ERP,那时没有太成熟的开源ERP。我们都是自己从头开发,幸好当时公司有快速开发框架让这些项目能顺利落地。那时若有现在的odoo,我们一定会基于它来做定制开发,大多数企业也都可以这样做,基于odoo定制企业运营支撑系统。

大多企业对流程梳理和数据沉淀都不重视,或者说根本没有。我有个朋友,他有1000多个客户,10几人的公司团队,我问他客户资料都在哪,他说不太清楚,10多年来这些资料散落在不同的电脑设备和各个word文档excel表格里,现在都找不全所有客户资料。虽然现在在使用销售自动化App,但早以错过了很多老客户再次消费的机会和提升用户满意度。

现在你可以使用odoo将你的日常业务数据和信息收集、整理、输入存档到系统里,随着企业规模扩大,人员的增加和业务熟悉,团队不断完善系统,企业内部推行、做好员工培训,帮助大家都用上用好这套系统,系统用得越久、适应的越好,价值也就越大。

我们也都知道实施ERP/CRM是个需要全员一同推动的事情,从最初的喜欢上odoo,到在公司和企业落地,有时需要漫长过程。刚开始,不用一下子就上很多应用,一个个上,一点点来,给自己和企业增强信心,保持连续性,而不是热情几天。

另外,企业ERP和运营支撑系统,是需要不断调整、优化、扩展的,传统和商业ERP,在这点上很困难。而odoo开源、模块化设计,开发维护系统和Apps变得更容易,

四、odoo应用

官方odoo分为社区版和企业版,odoo社区版可以满足你日常大多数业务需求,有些高级点的功能需要时可购买企业版。

先了解下odoo适用于哪些公司和行业:

enter image description here

图片来自:

https://xpansa.com/odoo/odoo-community-vs-odoo-enterprise/

接着看看odoo社区版所提供的应用Apps:

enter image description here

安装odoo,你可以立刻拥有这些应用,接下来我们介绍odoo的一些主要应用:

odoo CMS

  • 企业信息、产品、服务的发布和展示;
  • 为客户和合作伙伴建立的互动社区;
  • 即时的客户响应;
  • 官方博客的发布和维护,不需另外搭建。

enter image description here

odoo CRM

  • 获得精准的预测;
  • 通过出色工具,以更少时间,完成更多工作;
  • 实时概览,对比您的每月目标,准确了解您的表现。根据您安排的下一行动,组织您的工作;
  • 与您的客户保持联系。

销售漏斗有很多形式,列举几个:

enter image description here

enter image description here

enter image description here

(以上图片从bing图片搜索获得,配合内容介绍)

odoo以看板的方式展示销量漏斗模型

enter image description here

我们推荐你使用看板实现销售漏斗:

  • 线索收集(0%)
  • 目标识别(20%)
  • 赢得支持者(40%)
  • 覆盖决策者(70%)
  • 商务谈判(90%)
  • 付款阶段(100%)

odoo eCommerce

  • 企业拥有一个现代化开源网上商店;
  • 网店美观大气、简单易用;
  • 产品自动推荐,提高订单收益;
  • 库存和销售可通过自动库存调整和报告进行维护;
  • 此外,你也可通过Connector连接其它的主流电子商务解决方案:Magento、PrestaShop、WooCommerce.

enter image description here

电子商务应用的一些细节和难点:

odoo eCommerce是个多渠道的电商解决方案,支持零售业(拥有友好的POS系统)。

odoo POS

odoo比较亮点的地方,就是与其它ERP相比,odoo提供了一套商店、餐厅的POS应用和POSBox硬件跨平台解决方案,帮助你高效运营商店、酒吧和餐厅,零售型企业可迅速部署起来。

enter image description here

odoo PM

  • 组织:简单的拖放视图可帮助您在适当的阶段轻松将任务分组;
  • 时间安排:轻松检查团队的计划并重新计划,以便保持在您的截止日期内;
  • 计划:追踪截止日期和项目进展,清晰了解概况;
  • 分析:轻松概览您的工作量和各项任务的状态。

enter image description here

odoo Accounting

  • 与银行同步:自动同步银行对账单与银行数据,或导入文档。
  • 开具发票:以销售订单、交货单或以时间和材料为基础,自动创建并发送专业发票并接收在线付款。
  • 管理账单和开支:控制供应商发票并对您未来需要支付的账单进行清晰预测。
  • 对账:通过我们的智能对账工具,节约时间并自动进行 95% 的对账。
  • 报表:损益表、资产负债表、现金流量表。
  • 分析销售额:通过动态和自定义统计面板直接访问关键信息。按产品、客户、销售人员等定义并分析发票。
  • 状态:利用状态概览帮助追踪发票草稿、已付和未付的发票。 通过从银行账户导入银行结单并对账,自动记录所有交易。
  • 开支:管理每个团队的开支和员工的日常开支。

enter image description here

在这个环节,我们介绍两个主要内容:会计恒等式、复式记账

会计恒等式是财务报表结构的基础,也是会计体系运行的定律。复式记账是会计的精髓,会计恒等式和复式记账的结合,形成了现代的会计体系。

资产、负债、所有者权益、收入、费用、利润六大会计要素,满足两个会计等式:

  • 资产 = 负债 + 所有者权益
  • 收入 – 费用 = 利润

复式记账就是一笔业务必须在两个地方同时记录。如:一家商店某日商品销售收入2万元,如何记录:

  • 借:库存现金 20000
  • 贷:商品销售收入 20000

有借必有贷,借贷必相等。借方为去向(去到什么资产项目),贷方为来源(这钱是怎么来的)。

  • 资产类的、成本类、费用类的会计科目在核算时,增加计借方,减少计贷方。
  • 负债类、所有者权益类、收入类的会计科目在核算时,增加计贷方,减少计借方。

财务会计处理,大体上需要经历证、账、表三个环节。

(以上会计内容来自:零基础学会计(财务知识轻松学)Kindle版)

odoo HR

  • 集中管理企业所有的HR工作和信息;
  • 招聘、分配、工时表、出勤、评价、休假、费用信息一目了然;
  • 追踪员工工作时数并按项目、客户或任务进行排序。轻松访问统计数据,记录并分析工时表并检查每位员工的出勤情况;
  • 费用审批和报销,精简开支管理;
  • 员工评估流程的自动化;
  • 发布职位信息,创建筛选问卷,自动与求职者记录关联,简化招聘流程;
  • 通过社交网络互动改善员工之间的沟通,通过奖励激励员工。

enter image description here

odoo ERP/MRP

  • 库存降低;
  • 物料成本降低;
  • 人工成本减少;
  • 客户服务和销售改善;
  • 会计控制改善。

通过实施odoo MRP,打造企业精益生产,帮助企业逐步走向精益企业之路。

enter image description here

enter image description here

一些细节和难点:

  • 采购询价(RFQ),采购招标(PT)还是采购订单(PO)?
  • 选择正确的补货策略:最小库存规则、按单补货。

最小库存规则:用于确保你已经有了制造和响应消费需求的最小库存量。当某产品的库存水平到达最小量时,系统自动生成一个采购订单,该订单的数量能满足最小库存量。

按单补货:触发与产品相关的销售订单的采购单,系统不会检查现有库存。这就意味着无论现有产品的数量是多少,都会生成一个采购订单草稿。

此外,在OCA上,有这样一些解决方案

五、odoo开发

对于odoo开发,有几个核心点要了解和掌握:

开发企业自身的Apps,满足个性需求,你也可以将其卖钱或开源出去。

围绕odoo的一些开发服务:

  • 平台开发:基于odoo源代码持续构建一个自己的平台
  • 平台部署:持续集成、持续交付
  • 个性化功能开发:odoo应用开发
  • 移动应用开发: iOS、Android App开发
  • 数据分析:数据分析门户
  • 主题开发:网站前端和后端样式
  • API集成:统一的API管理和治理
  • 电子商务集成:集成主流电子商务平台
  • 整合第三方用户认证:支持QQ、微信、支付宝等社交账号登录
  • 整合第三方支付:集成微信支付、支付宝

Odoo Community Association(OCA)给出了一个很好的参与odoo社区贡献的方法和指南,Odoo Apps市场上也有很多OCA提交的应用

通过Odoo Connector集成第三方应用和服务:如:Magento Prestashop, Salesforce, JIRA …

我们接下来会开发Odoo Mobile(iOS,Android)应用和微信小程序。

在这里,我们先给出一个非常简单的例子(自己先感受下):creaetwebpagedemo

  • 下载解压到addons目录下
  • 开启开发者模式
  • 在应用中找到createwebpagedemo模块,点击安装
  • 浏览器访问:http://localhost:8069/example

接下来,就是持续开发Module和Hack Odoo。

六、odoo实施

比如下面这个实施步骤:帮助企业逐步建立起内容管理、客户服务、进销存、电子商务、ERP的技术储备和运营能力:

  • CMS
  • Intranet/Comunity
  • 进销存
  • E-Commerce(包含3)
  • ERP

enter image description here

每个核心App都有相应的实施步骤:

odoo官方提供的实施方案:

enter image description here

比如开始实施你的CMS(网站):

enter image description here

财务会计实施指南, 具体步骤有:

  • 完善你的公司设置
  • 输入你的银行账户
  • 选择你的科目表
  • 确认常用税率
  • 设置外币
  • 导入你的客户
  • 导入你的供应商
  • 导入你的产品
  • 导入你的未清账款交易
  • 导入你的起始余额
  • 为会计定义用户

还有其它Apps的实施向导。

odoo有社区版和企业版之分,相应的在实施方法和流程上会有些差异。

enter image description here

https://xpansa.com/odoo/odoo-community-vs-odoo-enterprise/

除了odoo外,我们也简单了解一下SAP和Oracle的实施方法论。

enter image description here

enter image description here

Oracle JDE实施方法论。

enter image description here

大家可看出,ERP实施方法大体都差不多,所以掌握实施的核心方法和要点就很关键。

enter image description here

  • 迪威特科技

enter image description here

  • 广州尚鹏

enter image description here

  • 上海寰享实施方案:SaaS服务方案包含一个或多个Odoo标准模块或应用,能一周上线使用。服务包括:设置、数据导入、培训、上线和支持。

enter image description here

综上:

  • 大家可使用odoo供应商的SaaS服务(目前国内的odoo供应商都比较小,SaaS服务质量能否保证需要重点评估);
  • 搭建自己的SaaS平台(需要有技术和保障团队);
  • 供应商提供咨询顾问和企业组成开发实施团队,共同推动项目发展。

最佳实践:适合企业自身的才是最好的,我们可以参考官方和同行做法,最大可能的避免犯错和提高实施成功率。

七、odoo成功案例

优站精选

ps: 很多网店使用odoo构建,所以你可放心基于odoo构建你的电子商务平台。

优选Apps

下载这些Apps,安装体验下。

案例分析

八、odoo文档集和资源

参考资料

国内外odoo开发商/服务商

开发者链接:

文章内容有点多,谢谢你耐心看完。

Instagram: 2年10亿美元背后的技术架构

2015年7月3日 没有评论

转自:Archfan

参考:Instagram的技术探索

Instagram是一款免费照片分享移动应用,目前支持IOS和Android。在1年多的时间里,Instagram发展到140万个用户,1.5亿张图片(几个TB),仅有3个工程师,以10亿美元的天价被Facebook收购。不得不说,Instagram是业界的一个神话。今天我们就来看看到底是什么样的技术架构支撑着这个10亿美元的公司。

Instagram团队之前发表过一篇文章:What Powers Instagram:Hundreds of Instances,Dozens of Technologies。这篇文章中提到的技术架构堪称经典,很适合初创项目的快速启动。

这个小团队使用了很多不同的技术和策略,保证他们能轻松的应付快速增长带来的压力。他们混合使用SQL、NoSQL,一堆开源项目,和云服务;云服务他们选择了Amazon,他们认为Amazon要比他们自己部署IDC更有优势;用异步队列来串联组件;系统架构在众多的对外API和内部Services之上;数据存储在内存和云端;大部分代码是动态语言;等等等等。非常时髦的一个架构,基于这个架构之上他们得以快速前进,并且保持精简。

那篇文章非常值得一读,有兴趣的同学可以直接看原文。这里我列出一些要点:

  • 架构原则:1.保持简单;2.不重复造轮子;3.尽量使用成熟稳定的技术
  • 3个工程师
  • 大量使用Amazon服务,工程师不用耗费时间自己维护服务器
  • 100+个EC2实例用于各种用途
  • Ubuntu Linux 11.04(“Natty Narwhal”),他们认为这个版本更加稳定
  • Amazon的ELB(Elastic Load Balancer)路由请求,ELB后面起了3个Nginx实例
  • ELB上关闭了SSL,因为它降低了CPU的使用率
  • DNS使用Amazon的Route53
  • 25+个Django应用服务运行在High-CPU Extra-Large类型的机器上
  • CPU使用比内存使用更加容易达到边界值,所以使用High-CPU Extra-Large的实例来平衡内存和CPU
  • Gunicorn是他们的WSGI服务器。Apache更难配置,更耗CPU
  • Fabric被用来在所有机器上并行执行命令。部署花费更少的时间。
  • PostgreSQL(存储用户,照片元数据,标签等)运行在12个Quadruple Extra-Large Memory实例上
  • 12个PostgreSQL副本运行在不同的节点上
  • PostgreSQL的Master-Replica使用流复制模式,利用EBS的快照来频繁备份
  • EBS部署在软件RAID上,使用mdadm以获取适当的IO
  • 将所有工作中的数据集存储在内存中,因为EBS每秒磁盘寻道次数有限
  • Vmtouch(轻量级的文件系统缓存诊断工具)被用来管理内存数据,尤其是当故障转移时目标机器没有足够空余的内存
  • 用XFS做文件系统,保证数据快照时RAID阵列上数据的一致性
  • Pgbouncer用作PostgreSQL的连接池
  • 有几个TB的照片存在Amazon S3上
  • 用Amazon CloudFront做CDN
  • Redis用来支撑feed,活动消息,session系统和其它服务
  • Redis运行在几台Quadruple Extra-Large Memory实例上,偶尔也会做下切分
  • Redis也是Master-Replica,副本持久化到磁盘上,并由EBS通过快照备份(这么搞是因为他们发现直接在Master上做dump相当吃力)
  • Geo-Search使用Solr,Solr提供的JSON接口也很简单易用
  • 6个memcached实例做缓存,因为Amazon Elastic Cache服务并不便宜,mmc客户端使用pylibmc和libmemcached
  • Gearman用做:向Twitter,Facebook等平台异步分享照片;新照片发布的通知;feed的反送
  • 200个Python进程处理Gearman的任务队列
  • Pyapns处理超过10亿条Apple的push通知,异常稳定
  • Munin用做监控和系统度量工具,用Python-Munin写了很多图表插件,如每分钟注册人数,每秒钟图片发表数等等
  • Pingdom做内部服务的监控
  • PagerDuty用来处理通知和事件
  • Sentry用来做Python的错误报告

以上就是Instagram的博文里面提到的技术要点,怎么样,准备好构建下一个10亿美元的应用了么?

Scaling Django Web Apps

2009年8月17日 1 条评论

Django Web Apps 开发者注意了: 伸缩性是大家一定要持续关注的核心问题.

分类: Python 标签: , ,

Launchpad.net 公开源代码

2009年7月27日 没有评论

launchpad.net 是一个代码主机托管和软件协作平台,  目前已开放整个平台源代码, 基于AGPLv3许可协议发布.

launchpad.net 基于 Python, Zope, PostgreSQL 构建, 运行在Ubuntu上.

其中, 核心部分使用了 Zope 的 zope.interface 用于Interfaces , zope.component 用于 Adapters 和 Utilities, Storm 用于对象-数据库的ORM.

更多技术细节请访问此PDF文件.

相关链接:

安装 BitNami Trac Stack

2008年3月23日 没有评论

通过安装BitNami Trac Stack快速体验Trac, 通常安装Trac会比较麻烦, 而BitNami Trac Stack提供了一站式的安装服务. 我曾在 CentOS 5上试着安装Trac, 但因过程的麻烦而放弃.而今天我用BitNami Trac Stack,不到几分钟就安装好了Trac.其图形化的安装过程让人也倍感亲切.当然同时也提供命令行的安装方式.

BitNami Trac Stack包含以下软件包:
– Trac 0.10.4
– Apache 2.0.63
– SQLite 3.5.1
– Python 2.5.1
– Subversion 1.4.6

基本操作有:
./ctlscript.sh (start|stop|restart)
./ctlscript.sh (start|stop|restart) subversion
./ctlscript.sh (start|stop|restart) apache

导入新项目, 如: svn import mercurial-0.9.5 file:///opt/trac-0.10.4-4/repository -m “imital mercurial”

这时可通过 http://localhost/trac/Project/browser 浏览导入的项目

分类: Developers, Python, Web Server 标签:

豆瓣推出API

2008年1月10日 1 条评论

豆瓣正推出测试中的API, 豆瓣API是豆瓣为第三方开发人员提供的编程接口。利用豆瓣API, 你可以在你的网站或程序中使用豆瓣的数据和功能。 目前的豆瓣API支持的功能包括:

  • 搜索并查看书籍、电影、音乐信息
  • 搜索并查看用户信息
  • 查看用户收藏
  • 查看评论

豆瓣 API 遵循 AtomGData 规范, 了解这两个规范有助于你更好地使用豆瓣 API 。

Douban Python 客户端: http://code.google.com/p/douban-python/

看来, 打造网站的平台服务能力推出API是必由之路。

分类: Ajax,RIA, Python 标签: