设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 15157|回复: 11
打印 上一主题 下一主题

国内唯一真正全代码开源ERP:永思ERP2.0 完整源码

[复制链接]
跳转到指定楼层
1#
发表于 2016-12-20 09:15:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    这是国内唯一一套真正全代码开源的ERP软件,是的,唯一!全套!源代码开放!含权限,打印模块! 可自定义字段!  其他全是伪开源,或是阉割版!
重要的是:采用VB.net开发,非常适合咱们这些早期使用VBA的爱好者。

软件在开发思路和实现功能上,紧贴实际需求。功能和界面已经达到同时代 X友,X蝶的绝大多数实用功能,但体积仅为其1%不到。牛!
总之!这是最好(没有之一)的学习教材!!!  

    补充:4年前,软件作者不再更新,并且关闭了网站。开源,也许就没有饭吃,程序大牛的悲哀(我记得他当想提供SaaS模式盈利)!
网上也有源代码下载,多数会报4-500个错误(引用问题等),在此,我把本人整理好(可以直接运行)的源代码分享给大家,希望初学者能得到一些帮助,少走弯路(比如网上的 增、删、改、查 例子多是基于单表,如何更新 主从表?永思ERP 有)。
    末了,对 永思ERP 源码作者表示感谢!直到现在,我都不知道他姓甚名谁!只能再次说声:谢谢!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏2 分享分享 分享淘帖 订阅订阅
推荐
 楼主| 发表于 2016-12-22 11:38:51 | 只看该作者
源码录入界面 CommomOrder 没有参照 现存量 功能,自己写了一个:
1、在CommonOrder  顶端 添加 Button:btnGetSto ,设置快捷键 F4.
2、给Dg1 添加 KeyDown 事件,

3、给 CommomOrder 添加事件,源码如下:

'========参照现存量
        Private Sub btnGetSto_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGetSto.Click
            If TS.State = Control.MyToolStrip.ToolStripState.None Then
                myMsg("请新增或修改单据")
                Exit Sub
            End If
            If CheckData() = False Then
                Exit Sub
            End If
            '==========传递参数=
            PasPar()
            Dim mdls As Model.Order.CommonOrder.OrdersInfoCollection
            If Me.pnl.Controls.Contains(Me.txtCusName) Then
                mdls = GetSto.GetSto.GetSto_WithCusCode(Me.VouchType, Me.txtCusName.Value, Me.cWh, Me.cInv, Me.cBatch,
                                                        Me.cFr1, Me.cFr2, Me.cFr3, Me.cFr4, Me.cFr5, Me.cFr6, Me.cFr7, Me.cFr8)
            ElseIf Me.pnl.Controls.Contains(Me.txtVenName) Then
                mdls = GetSto.GetSto.GetSto_WithVenCode(Me.VouchType, Me.txtCusName.Value, Me.cWh, Me.cInv, Me.cBatch,
                                                        Me.cFr1, Me.cFr2, Me.cFr3, Me.cFr4, Me.cFr5, Me.cFr6, Me.cFr7, Me.cFr8)
            Else
                mdls = GetSto.GetSto.GetSto(Me.VouchType)
            End If
            If mdls.Count <> 0 Then
                Dim mdlsTemp As Model.Order.CommonOrder.OrdersInfoCollection = dg1.DataSource
                mdlsTemp = Helper.DeleteEmptyRow(mdlsTemp)
                mdlsTemp.Merge(mdls)
                Helper.AddOrComputeTotalRow(mdlsTemp)
                dg1.DataSource = mdlsTemp
            End If
        End Sub

        '' 注意,dg1 进入按F4有效,进入单元格级别(编辑某个单元格时) 按F4,无效,单元格没有定义 F4 的事件。
        Private Sub dg1_KeyDown(sender As Object, e As KeyEventArgs) Handles dg1.KeyDown
            If e.KeyCode = Keys.F4 Then
                If TS.State = Control.MyToolStrip.ToolStripState.None Then
                    myMsg("请新增或修改单据")
                    Exit Sub
                End If
                If CheckData() = False Then
                    Exit Sub
                End If
                '==========传递参数=
                PasPar()
                '===========接受getSto的返回mdl
                Dim mdls As Model.Order.CommonOrder.OrdersInfoCollection
                If Me.pnl.Controls.Contains(Me.txtCusName) Then
                    mdls = GetSto.GetSto.GetSto_WithCusCode(Me.VouchType, Me.txtCusName.Value, Me.cWh, Me.cInv, Me.cBatch,
                                                            Me.cFr1, Me.cFr2, Me.cFr3, Me.cFr4, Me.cFr5, Me.cFr6, Me.cFr7, Me.cFr8)
                ElseIf Me.pnl.Controls.Contains(Me.txtVenName) Then
                    mdls = GetSto.GetSto.GetSto_WithVenCode(Me.VouchType, Me.txtCusName.Value, Me.cWh, Me.cInv, Me.cBatch,
                                                            Me.cFr1, Me.cFr2, Me.cFr3, Me.cFr4, Me.cFr5, Me.cFr6, Me.cFr7, Me.cFr8)
                Else
                    mdls = GetSto.GetSto.GetSto(Me.VouchType)
                End If
                If mdls.Count <> 0 Then
                    Dim mdlsTemp As Model.Order.CommonOrder.OrdersInfoCollection = dg1.DataSource
                    mdlsTemp = Helper.DeleteEmptyRow(mdlsTemp)
                    mdlsTemp.Merge(mdls)
                    Helper.AddOrComputeTotalRow(mdlsTemp)
                    dg1.DataSource = mdlsTemp
                End If
            End If
        End Sub

        Private Sub PasPar()
            Dim dr As DataGridViewRow = dg1.CurrentRow
            Try
                cWh = dr.Cells(colWhName.HeaderText).Value.ToString
            Catch
                cWh = ""
            End Try
            Try
                cInv = dr.Cells(colInvName.HeaderText).Value.ToString
            Catch
                cInv = ""
            End Try
            Try
                cBatch = dr.Cells(colBatch.HeaderText).Value.ToString
            Catch
                cBatch = ""
            End Try

            Try
                cFr1 = dr.Cells(colInvFree1.HeaderText).Value.ToString
            Catch
                cFr1 = ""
            End Try
            Try
                cFr2 = dr.Cells(colInvFree2.HeaderText).Value.ToString
            Catch
                cFr2 = ""
            End Try
            Try
                cFr3 = dr.Cells(colInvFree3.HeaderText).Value.ToString
            Catch
                cFr3 = ""
            End Try
            Try
                cFr4 = dr.Cells(colInvFree4.HeaderText).Value.ToString
            Catch
                cFr4 = ""
            End Try
            Try
                cFr5 = dr.Cells(colInvFree5.HeaderText).Value.ToString
            Catch
                cFr5 = ""
            End Try
            Try
                cFr6 = dr.Cells(colInvFree6.HeaderText).Value.ToString
            Catch
                cFr6 = ""
            End Try
            Try
                cFr7 = dr.Cells(colInvFree7.HeaderText).Value.ToString
            Catch
                cFr7 = ""
            End Try
            Try
                cFr8 = dr.Cells(colInvFree8.HeaderText).Value.ToString
            Catch
                cFr8 = ""
            End Try
        End Sub

4、库存参照的源码在附件中,请自行添加到程序OrderView中;

注、源程序只有两个自由项,这段代码中有 8个 自由项,那是我二开时加的,请把多余的6个去掉。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 0 反对 1

使用道具 举报

2#
 楼主| 发表于 2016-12-20 09:17:09 | 只看该作者
压缩包内的包含数据库:STwo 请自行附加。
3#
发表于 2016-12-20 13:39:56 | 只看该作者
向源作者致敬!有时间也学习一下.Net
4#
发表于 2016-12-21 13:54:43 | 只看该作者
谢谢分享
开源,也许就没有饭吃,程序大牛的悲哀

我个人认为,这不止和开源有关。原因挺多
6#
发表于 2016-12-25 14:20:58 | 只看该作者
以前听说过。现在开始学习VB才觉得真可惜
7#
发表于 2016-12-29 15:11:50 | 只看该作者
很好的东西,新人可以学习到很多技巧
8#
发表于 2017-2-16 16:44:45 | 只看该作者
安装了永思erp,启动让选择链接数据库,哪位大师说说数据库怎么建啊?
9#
发表于 2018-3-4 08:01:23 | 只看该作者
本帖最后由 尉蓝 于 2018-3-4 08:04 编辑

这个软件的使用说明有吗?网上下载了一个,老是提示数据库连接失败。  软件登录的用户名还有密码分别是什么?数据库没有密码吗?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
10#
发表于 2018-7-14 10:13:38 | 只看该作者
这个软件的使用说明有吗?网上下载了一个,老是提示数据库连接失败。  软件登录的用户名还有密码分别是什么?数据库没有密码吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-25 07:21 , Processed in 0.098720 second(s), 36 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表