以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]会计科目自动定义问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=64112) |
|
-- 作者:blsu33 -- 发布时间:2015/2/5 10:41:00 -- [求助]会计科目自动定义问题 老师, 1、科目类别档案已经定义好了 1 资产 2负债 3所有者权益 ... 2、在会计科目档案中有一列“科目类别”需要自动判定 1开头的为资产 2开头为负债 会计科目档案的datacol changing代码怎么写呢? Dim rts As new List(of String) rts = DataTables("科目类别").GetValues("编码名称","","编码规则 ") If e.DataCol.Name = "科目类别" Then Dim dc As DataCol dc("科目类别") = SubString(dc("编码规则"),1,1) if........ End If 还是 Dim lbbm As String = DataTables("科目类别").GetComboListString("编码规则") If e.DataCol.Name = "科目类别" Then Dim dr As DataRow dr("科目类别") = SubString(DataTables("会计科目").dr("编码规则"),1,1) If ....... End If |
|
-- 作者:Bin -- 发布时间:2015/2/5 10:49:00 -- 没看懂 1开头自动为 科目类别赋值 资产? |
|
-- 作者:blsu33 -- 发布时间:2015/2/5 11:03:00 -- 举例 存在两个表
1、会计科目档案里 1002 代表银行存款科目 表中还有一列 科目类别 需要自动根据 1001 的第一位1 去另外一个档案 “科目类别” 中去找 1 代表什么 在科目类别档案中 事先定义了 1 资产 2负债 .... |
|
-- 作者:有点甜 -- 发布时间:2015/2/5 11:41:00 -- 直接取当前行的编号列的第一位,然后去查类别档案表,得到值后赋值进去即可啊。 [此贴子已经被作者于2015-2-5 11:42:20编辑过]
|
|
-- 作者:有点甜 -- 发布时间:2015/2/5 11:43:00 -- http://www.foxtable.com/help/topics/0396.htm
|
|
-- 作者:blsu33 -- 发布时间:2015/2/5 16:03:00 -- 老师, 麻烦您给改改啊,完全迷糊了 Select Case e.DataCol.Name Case "科目类别" Dim dc As DataTables("会计科目").DataCols Dim dr As DataTables("会计科目").DataRows dc("科目类别")=SubString(dc("编码规则"),1,1) dr = DataTables("科目类别").Find("编码规则= \'" & SubString(dr3("编码规则"),1,1) & "\'") If dr Is Nothing Then MessageBox.Show("不存在相应类别,请添加类别!") e.Cancel = True Else End If End Select |
|
-- 作者:有点甜 -- 发布时间:2015/2/5 16:08:00 -- Select Case e.DataCol.Name Case "科目类别" Dim dr As DataRow = DataTables("科目类别").Find("编码规则= \'" & e.DataRow("编码规则").SubString(0,1) & "\'") If dr Is Nothing Then MessageBox.Show("不存在相应类别,请添加类别!") e.Cancel = True Else End If End Select |
|
-- 作者:blsu33 -- 发布时间:2015/2/5 16:17:00 -- Select Case e.DataCol.Name Case "科目类别" Dim dr As DataRow = DataTables("科目类别").Find("编码规则= \'" & e.DataRow("编码规则").SubString(0,1) & "\'") If dr Is Nothing Then MessageBox.Show("不存在相应类别,请添加类别!") e.Cancel = True Else e.DataRow("编码规则")=dr("编码名称") 有点甜老师,这块是否对呢,未出现提示和错误。 End If End Select
[此贴子已经被作者于2015-2-5 16:20:13编辑过]
|
|
-- 作者:有点甜 -- 发布时间:2015/2/5 16:44:00 -- e.DataRow("科目类别") = dr("编码名称") |
|
-- 作者:blsu33 -- 发布时间:2015/2/5 16:59:00 --
[此贴子已经被作者于2015-2-6 11:45:28编辑过]
|