ERP系统】的更多相关文章

权限模块是ERP系统的核心模块之一,完善的权限控制机制给系统增色不少.总结我接触过的权限模块,以享读者. 1 权限的简明定义 ERP权限管理用一句简单的话来说就是:谁 能否 做 那些 事. 文句 含义 说明 谁 部门+岗位职责 也可以不与部门岗位绑定,省略角色定义. 能否 能(True) 否(False) 用0或1,true/false表示能否执行 做 增加/删除/修改/查询/统计/打印/过帐 权限对象 哪些 通用的/本人的/本组别的/本部门的/本公司的/其他的/多帐套的 范围:行政部的办公文具…
单据编码是ERP系统中必备的功能,用于生成各种单据的流水号,常常借助于日期时间等字符来生成一个唯一的单据号码.从软件的角度来说,就是为生成数据表的主键值(参考编号),从用户的角度来说,就是给业务单据制定编码规范.之后做到见名知意,比如销售订单号是SO201508190001,采购订单号码是PO201508190001. 1 基础单据编码 Document serialization basic 单据编码主表,用于存放单据及其编码规则. CREATE TABLE [dbo].[DocumentSe…
ERP系统的单据具备标准的功能,这里的单据可翻译为Bill,Document,Entry,具备相似的工具条操作界面.通过设计可复用的基类,子类只需要继承基类窗体即可完成单据功能的程序设计.先看标准的销售合同单据界面: 本篇通过销售合同单据功能,依次讲解编程要点,供参考. 1 新增 Insert 窗体有二种状态,一种是编辑状态,别一种是数据浏览状态,区别在于编辑状态的窗体数据被修改(dirty),在窗体关闭时需要保存数据.点击工具条的新增(Insert)按钮,窗体进入编辑状态.新增状态需要对窗体所…
异常处理模块是大型系统必备的一个组件,精心设计的异常处理模块可提高系统的健壮性.下面从我理解的角度,谈谈异常处理的方方面面.我的设计仅仅限定于Windows Forms,供参考. 1 定义异常类型 .NET 框架定义很多异常类型,ERP系统中根据实际的需要,我们再增加一些自定义的异常类型. 数据库访问异常:LLBL Gen Pro已经定义几种常见的异常类型,常见的异常类型及其作用简介. ORMConcurrencyException     并发异常,更新实体时实体已经被删除,删除时有约束无法删…
根据近几年的制造业软件开发经验,以我开发人员的理解角度,简要说明功能(Feature)是如何设计与实现的,供参考. 因架构的不同,技术实现上会有所差异,我的经验仅限定于Windows Form程序. 总体功能 1  系统支持多用户. 创建一个单实例(Singleton)的会话管理器SessionManager,用.NET Remoting部署在服务器端时,用DataTable保存登入的用户会话(Session:Login Id,User Id,Name,Login Time).客户端登入时,会先…
数据审计,英语表达是Audit,是追踪数据变化的过程,记录数据变化前后的值,供参考分析.通过设置,ERP可以追踪一个表的所有字段的变化,也可以只记录指定的字段的值变化.欧美企业每年都有独立的审计部门,从总经理到下层部门员工,逐个审查过去发生的经济业务的帐面数据与实际是否一致.ERP中的审计功能,通常会记录下一个表字段的值的变化.ERP系统通过LLBL Gen Pro ORM框架做数据访问层,先了解ORM提供的数据审计功能. 审计功能的两个重要部分:记录的变化以及导致变化的动作,持久化变化的数据.…
成熟的ERP系统的界面应该都是从模板中拷贝出来的,各类功能的界面有规律可遵循.软件界面设计模式化或是艺术性的创作,我认可前者,模式化的界面客户容易举一反三,降低学习门槛.除了一些小部分的功能界面设计特殊一些,ERP绝大部分的功能的界面都相似.以我接触和设计的ERP系统,总结常见的界面设计模式,供读者参考. 模式1 单据 Entry 常用于各种单据的输入界面,也可用于主文件/主档(客户,供应商,部门等)界面,参考下面的图片. 我在图中作了标识,A区是工具条按钮,所有的界面共享工具条按钮,接着是数据…
Windows Forms程序实现界面与逻辑分离的关键是数据绑定技术(Data Binding),这与微软推出的ASP.NET MVC的原理相同,分离业务代码与界面层,提高系统的可维护性. 数据绑定 Data Binding 数据绑定技术的主要内容:数据源(Data Source),控件(Control),绑定方式(Binding).通过绑定控件,将数据源中的属性绑定到界面控件中,并可以实现双向的数据绑定.当界面控件中的值发生改变时,可以通过数据绑定控件,更新控件绑定的对象,当通过代码直接改变对…
C/S架构的应用程序,将一些复杂的计算逻辑由客户端转移到服务器端可以改善性能,同时也为了其它方面的控制..NET Remoting在局域网内调用的性能相当不错.ERP系统中基于.NET Remoting和WCF构建一个应用程序服务器(Application Server). 分布式应用设计目标: 1  客户端的连接,服务器要能控制.服务器根据授权许可文件的内容,控制客户端并发数. 2  服务器崩溃,客户端要得到通知,挂起当前数据输入操作,当服务器可用时,客户端可自动重新连接 . 3  支持数据加…
大型系统具备一个通用的附件管理功能,对于单据中无法清晰表达的字段,用一个附件图片或附件文档表示是最好的方法了.比如物料清单附加一张CAD图纸,销售订单评审功能中附加客户的各种表格,通用附件功能对系统起到画龙点睛的作用.一图解千言,先来看一下界面设计模式,看起来和一般的数据输入功能相同. 首先是设计附件表,它的定义参考下面的代码. CREATE TABLE [dbo].[Attachment] ( [Index] [int] NOT NULL, [MasterTable] [nvarchar] (…
Infragistics 是.NET平台优秀的控件供应商,囊括了WinForms,ASP.NET,Silverlight,WPF,Windows Phone等所有关于微软.NET技术的界面控件.借助于这些功能复杂的控件,为ERP的界面提供了灵活的操作能力. 本篇不谈控件开发,只详细说明ERP系统如何使用Infragistics WinForms,而不用.NET 自带的控件. 1  文本编辑控件提示必须输入值 如果一个文本编辑控件必须输入值,有许多实现方法可以借鉴.看金蝶ERP的实现,在文本标签控…
企业管理软件包含一些公共的组件,这些基础的组件在每个新项目立项阶段就必须考虑.核心的稳定不变功能,方便系统开发与维护,也为系统二次开发提供了诸多便利.比如通用权限管理系统,通用附件管理,通用查询等组件,若是在项目开发前就准备好了这些组件,为项目如期交付提供了保证. 查询设计器 Query Designer  支持选择一个或多个数据库表,通过左右连接的方式构建查询结果,支持直接手写SQL语句设计查询,支持调用存储过程查询,支持用代码设计查询. 报表设计器 Report Designer 支持配置的…
为保证ERP系统的信息流准确快速的传递,需要给系统设计一个消息盒子机制.当系统中发生业务操作后,需要提醒下一个环节的操作人员,以保证ERP信息流快速准确传递.比如生产任务单(工作单,加工单,制单)过帐完成后,需要通知仓库准备材料供车间领料生产.消息盒子的界面大致如下所示: 消息盒子包含业务通知(Messages)和工作流审批(Workflow).业务通知比如采购人员下达采购订单PO后,需要通知仓库人员准备收货.工作流审批是以审批为基础的单据流程控制. 在实现消息盒子过程中,遇到一个客户需要将消息…
查找 Lookup 窗体是一个容器,也可以把TextBox,Button也看成是一个容器,可以往容器里面添加按钮. 参考下面的实现代码,给TextBox增加查找按钮. var btn = new Button(); btn.Size = new Size(25, txtOutputPath.ClientSize.Height + 2); btn.Location = new Point(txtOutputPath.ClientSize.Width - btn.Width, -1); btn.Cu…
1 缓存 Cache 系统中大量的用到缓存设计模式,对系统登入之后不变的数据进行缓存,不从数据库中直接读取.耗费一些内存,相比从SQL Server中再次读取数据要划算得多.缓存的基本设计模式参考下面代码: private static ConcurrentDictionary<string, LookupDialogEntity> _cachedLookupDialogEntities = new ConcurrentDictionary<string, LookupDialogEnt…
我对大型系统的理解,从数量上面来讲,源代码超过百万行以上,系统有超过300个以上的功能,从质量上来讲系统应该具备良好的可扩展性和可维护性,系统中的功能紧密关联.除去业务上的复杂性,如何设计这样的一个协作良好的系统,搭建开发人员基础平台,一直是我研究的方向. SouceCounter(版本3.3.91.79)对源代码的统计信息如下: 下面来详细解析一下这个系统的设计架构,纯.NET技术架构方案,C/S WinForms系统. 系统分为Framework和Application两个部分,前者是框架(…
为什么我认为SAP是世界上最好用最牛逼的ERP系统,没有之一?玩过QAD.Tiptop.用友等产品,深深觉得SAP是贵的有道理! 一套好的ERP系统,不仅能够最大程度承接适配企业的管理和业务流程,在技术上面也能够做到快速部署和挑战.而对用户而言,好用且逻辑性强,体验好.便利可掌控才是能够抓住用户的需求点.很可惜的是,纵观世界上这么多的ERP系统,真正能够为用户考虑而且有自己的核心竞争力的并不多. 我认为一套好的ERP系统,不仅仅是一套软件,更是一个管理思想.选型ERP,要从以下几方面考虑: 一.…
一.前言 AgileEAS.NET SOA 中间件平台是一款基于基于敏捷并行开发思想和Microsoft .Net构件(组件)开发技术而构建的一个快速开发应用平台.用于帮助中小型软件企业建立一条适合市场快速变化的开发团队,以达到节省开发成本.缩短开发时间,快速适应市场变化的目的. AgileEAS.NET SOA中间件平台提供了敏捷快速开发软件工程的最佳实践,通过提供大量的基础支撑功能如IOC.ORM.SOA.分布式体系及敏捷并发开发方法所支撑的插件开发体系,以及提供了大量的实体.数据模型设计生…
  随着ERP系统的深入发展,越来越多的企业开始实施ERP,ERP实施是借用一种新的管理模式来改造原企业旧的管理模式,是先进的.行之有效的管理思想和方法.ERP软件在实际的推广应用中,其应用深度和广度都不到位,多数企业的效果不显著,没有引起企业决策者的震动和人们的广泛关注.   1.实施ERP是企业管理全方位的变革 企业领导层应该首先是受教育者,其次才是现代管理理论的贯彻者和实施者,规范企业管理及其有关环节,使之成为领导者.管理层及员工自觉的行动,使现代管理意识扎根于企业中,成为企业文化的一部分…
反射Reflection,MFC时代叫RTTI(Runtime Type Identification) 运行时类型识别,提供一种动态创建对象的能力. 这里不谈反射的概念和基本用法,仅仅就我遇到的ERP系统中,有哪些地方用到了反射,是如何用的. 1  操作对象的属性或方法  Get/Set property and invoke method 通过反射调用,代码中很容易形成抽象化的公共代码,比如,系统中很多地方,直接用反射对对象赋值,参考: ReflectionHelper.SetPropert…
数据库设计规范是个技术含量相对低的话题,只需要对标准和规范的坚持即可做到.当系统越来越庞大,严格控制数据库的设计人员,并且有一份规范书供执行参考.在程序框架中,也有一份强制性的约定,当不遵守规范时报错误. 以下20个条款是我从一个超过1000个数据库表的大型ERP系统中提炼出来的设计约定,供参考. 1  所有的表的第一个字段是记录编号Recnum,用于数据维护 [Recnum] [decimal] (8, 0) NOT NULL IDENTITY(1, 1)   在进行数据维护的时候,我们可以直…
1 第一次实施会议 当签订合同之后,软件公司与客户约定好会议时间,双方召开第一次实施会议,确定实施的小组人员名单,项目实施周期,培训计划表,实施主计划,系统预备主文件数据准备,软件公司技术支持联系方式. 2 项目实施主计划 系统安装和测试:业务调研,需求匹配分析,讨论.并确定主档数据编码方案(物料编码.BOM等资料),初步实施方案 系统培训:产品培训,方案实现,整理及导入主档数据,试运行-整体衔接训练,制作ERP作业指导书 原系统并行运行:权限分配,主档数据录入,与原系统并运行,截止数据准备 系…
上海SAP代理商 电子行业ERP系统 SAP金牌代理商达策上海达策为电子行业企业提供了多样的ERP信息化管理系统.基于多营运中心的管理架构体系,构造了以供应链.生产管理.财务一体化为核心,协同HR.BI.OA等无缝集成的一体化管理体系.上海达策ERP管理系统使电子行业企业的经营.管理等各个层次.各个环节和各个方面的企业内外信息资源充分整合,实现信息资源的高度共享并挖掘其潜力,大大缩短了原始信息从传递到决策过程中的反馈时间,管理层与基层以及各职能部门之间的沟通变得更加快捷与直接,大大提高了经营和管…
上海SAP代理商 服装行业ERP系统 达策SAP金牌代理商上海达策公司的前身是上海InfoPower技术有限公司,该公司在中国ERP软件的销售和服务长达20年.在2005年4月上海达策正式成立,致成立以来达策一直专注于SAP ERP软件(Business One)销售和服务的软件咨询业务.经过了七年的艰苦创业和精心耕耘使上海达策成为国内SAP成长型企业解决方案的领头羊.为了更好的服务于客户,上海达策从2005年发展至今,达策分别在华南.华北.华东等地建立了60多家分支机构,成为了SAP公司中在亚…
记一次会议,我提出插件化的想法,有支持也有反对,其中"系统架构师"表示插件化后的项目没什么意义,今天来讨论项目是否需要插件化的一些观点. 项目背景 公司内部"ERP"系统,其职责以远远超出ERP,更像公司内部信息管理系统,以下简称公司ERP或公司ERP系统.公司ERP系统是C/S架构,除了用户控件之外系统内部实现没有分层,以文件夹的形式维护着一个个业务模块的功能. 这个系统除了包含了ERP系统的基本功能外,还需要维护公司内部电商网站的数据(网站后台的一些功能被搬到C…
PDA手持终端在ERP系统仓库管理出入库盘点环节的应用 传统库存管理的数据录入过程,常采用PC机录入数据,或在电脑上结合条码枪扫描条码进行管理(非实时),造成管理上的不便.因而,采用无线(WIFI)手持终端机(PDA)进行物料与成品的实时条码化仓库管理,可以极大地提升仓库管理水平.减少工作量. 下面以某皮革制品企业为例,说明ERP系统结合手持终端,在仓库管理各个环节的应用. 行业特点:由于原材料为真皮原皮,每张原皮料均为不规则的形状,企业要求对每件产品进行全程的跟踪管理,包括原皮的采购入库.皮料…
  前  景   目前公路工程由于点多.线长.面广.周期久.投资大等原因,管理很难到位,施工过程中存在着大量问题: 规章制度欠缺或不健全,即便是有好的规章制度,在施工过程中也往往形同虚设,不能与现场施工管理相结合. 未能形成系统的经验数据与信息标准,项目管理考核标准模糊,人为因素较大. 项目管理水平参差不齐,管理不能科学化,一个项目的赢亏往往取决于个人经验,不能体现企业总体管理水平. 缺乏良好的数据信息沟通方式,各干系人沟通不足,合作性差,各部门相互独立,基本没有全员管理的意识,信息不能共享,管…
opentaps Open Source ERP + CRM 基于 Apache OFBiz (The Open For Business Project ) 构建, 是一款设计良好, 逐渐流行起来的 CRM 系统.该项目难得之处是提供很多中文的文档. 主要特性:1.提供一个全面的套件,让您可以360度掌握你的业务情况.从客户到订单到库存再到财务. opentaps是一套完整的软件运行在一个拥有700多个表的统一数据模型之上. 2.支持大部分主流关系型数据包括MySQL. PostgreSQL.…
B2C 电商网站需要怎样的 ERP 系统 主要由如下一些系统组成:1.进销存系统,你的产品的采供销当然最好是由系统来实现:2.BI系统,BI包括所有的流量.订单.商品.库存.发货等所有数据节点,亦包含全站的各种积分.优惠券.会员体系等分支系统:3.仓储以及配送发货体系,里面涵盖的数据节点非常非常多,比如说库存(库存里面也分可销售库存.冻结库存.RMA库存等多个状态).配送体系的节点也很多比如说分拣.打包.称重.打印.发货,发货之后需跟物流公司对接知道到达的配送节点:4.客服系统以及CRM系统,客…
解析大型.NET ERP系统架构设计 Framework+ Application 设计模式 我对大型系统的理解,从数量上面来讲,源代码超过百万行以上,系统有超过300个以上的功能,从质量上来讲系统应该具备良好的可扩展性和可维护性,系统中的功能紧密关联.除去业务上的复杂性,如何设计这样的一个协作良好的系统,搭建开发人员基础平台,一直是我研究的方向. SouceCounter(版本3.3.91.79)对源代码的统计信息如下: 下面来详细解析一下这个系统的设计架构,纯.NET技术架构方案,C/S W…