1
yhj
2024-07-24 5e5d945e91568b973faa27d8ab0bcef99fc4a6c5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
#region
 
using System;
using System.Data;
using CSFrameworkV5.Business;
using CSFrameworkV5.Common;
using CSFrameworkV5.Core;
using CSFrameworkV5.Library;
using CSFrameworkV5.Library.CommonClass;
 
#endregion
 
namespace CSFrameworkV5.SystemModule
{
    /// <summary>
    ///     BusinessTables的资料管理窗体,由代码生成器(Code Generator)自动生成
    /// </summary>
    public partial class frmBusinessTables : frmBaseDataDictionary
    {
        private bllBusinessTables _BLLInstance;
 
        public frmBusinessTables()
        {
            InitializeComponent();
        }
 
        protected override void
            ButtonStateChanged(UpdateType currentState) //按钮状态改变时触发的事件
        {
            base.ButtonStateChanged(currentState);
 
            //自动生成流水号,不允许修改
            txtRowID.Enabled = false;
            txtRowID.Properties.ReadOnly = true; //禁止修改
        }
 
        public override void DoAdd(IButtonInfo sender)
        {
            base.DoAdd(sender);
 
            if (_UpdateType == UpdateType.Add)
            {
                var SN = CommonData.GetDataSN("XX", true); //如:XX00000001
                var DN = CommonData.GetDocNo("XX"); //如:XX202000000002
 
                //给界面的组件赋值
                SetEditorBindingValue(txtRowID, SN, true);
 
                //或者给数据源对于的字段赋值,都可以!
                //_BLLInstance.DataBinderRow["RowID"] = SN;
 
                //SetEditorBindingValue(txtRowID, DN, true);
                //SetEditorBindingValue(txtRowID, "*自动生成*", true);
            }
        }
 
        /// <summary>
        ///     绑定修改页面中所有输入框的数据源
        /// </summary>
        /// <param name="summary">数据源</param>
        protected override void DoBindingSummaryEditor(DataTable summary)
        {
            DoBindingEditorPanel(pcDetailEditor, summary);
            //在此可绑定其它自定义的输入框,参考frmCustomer的DoBindingSummaryEditor方法
        }
 
        public override void DoSave(IButtonInfo sender)
        {
            //重写方法,使用保存的扩展方法
            base.DoSaveEx(sender);
        }
 
        private void frmBusinessTables_Load(object sender, EventArgs e)
        {
            InitializeForm(); //自定义初始化操作
        }
 
        protected override void InitializeForm()
        {
            _SummaryView =
                new DevGridView(
                    gvSummary); //实例化数据主视图,此接口可支持不同的主视图,比如Grid,TreeList.
            //_ActiveEditor = txtRowID;//进入修改状态,显示第一个焦点的输入框,可以不设置
            //_KeyEditor = txtRowID;//主键字段输入框,可以不设置
            _DetailGroupControl = pcDetailEditor; //修改页面所有输入框的容器
            _BLL = new bllBusinessTables(); //实例化基类业务逻辑层
            _BLLInstance = _BLL as bllBusinessTables; //本窗体的业务层对象引用
            base.InitializeForm();
 
            #region 以下代码全自动生成,请调整排版和顺序
 
            #endregion
        }
 
        //检查主表数据完整性
        protected override bool ValidatingData()
        {
            if (ConvertEx.ToString(txtDocCode.EditValue).Trim() == string.Empty)
            {
                Msg.Warning("单据表头不能为空!");
                txtDocCode.Focus();
                return false;
            }
 
            if (ConvertEx.ToString(txtFormName.EditValue).Trim() ==
                string.Empty)
            {
                Msg.Warning("单据名称不能为空!");
                txtFormName.Focus();
                return false;
            }
 
            return true;
        }
 
        #region 自动生成的事件或方法的主体部份
 
        #endregion
    }
}