Esempio n. 1
0
        //检查数据源设置是否正确
        private bool checkDataSourceSetting(List <string> addItems, MB.WinPrintReport.Model.PrintTempleteContentInfo printTemplete)
        {
            if (addItems.Contains(printTemplete.DataSource))
            {
                throw new MB.Util.APPException(string.Format("打印模板 {0} 的 数据源设置有重复,请检查", printTemplete.DataSource), MB.Util.APPMessageType.DisplayToUser);
            }
            else if (string.IsNullOrEmpty(printTemplete.Name))
            {
                throw new MB.Util.APPException(string.Format("打印模板ID {0} 的 名称不能为空,请检查", printTemplete.GID), MB.Util.APPMessageType.DisplayToUser);
            }
            else
            {
                addItems.Add(printTemplete.DataSource);
            }

            if (printTemplete.Childs != null && printTemplete.Childs.Count > 0)
            {
                foreach (var child in printTemplete.Childs)
                {
                    bool b = checkDataSourceSetting(addItems, child);
                    if (!b)
                    {
                        return(false);
                    }
                }
            }
            return(true);
        }
Esempio n. 2
0
        //创建新的节点。
        private void   createNewNode(TreeNode currentNode)
        {
            MB.WinPrintReport.Model.PrintTempleteContentInfo newInfo = createNewPrintTemplete();

            TreeNode newNode = createTreeNode(newInfo, currentNode.Nodes);

            (currentNode.Tag as PrintTempleteContentInfo).Childs.Add(newInfo);

            trvReport.SelectedNode = newNode;
        }
Esempio n. 3
0
        /// <summary>
        /// 子报表相关处理。
        /// </summary>
        /// <param name="printTemplete"></param>
        /// <param name="dsData"></param>
        public SubReportCommand(MB.WinPrintReport.Model.PrintTempleteContentInfo printTemplete, DataSet dsData)
        {
            _PrintTemplete  = printTemplete;
            _DataSource     = dsData;
            _SubReportNames = new List <string>();

            if (_PrintTemplete.Childs != null)
            {
                foreach (MB.WinPrintReport.Model.PrintTempleteContentInfo child in _PrintTemplete.Childs)
                {
                    _SubReportNames.Add(child.Name);
                }
            }
        }
Esempio n. 4
0
        /// <summary>
        /// 报表模板设计。
        /// </summary>
        /// <param name="reportDataHelper"></param>
        /// <param name="moduleID"></param>
        /// <param name="templeteID"></param>
        public FrmEditPrintTemplete(MB.WinPrintReport.IFace.IReportData reportDataHelper, System.Guid templeteID)
        {
            InitializeComponent();

            _ModuleID             = reportDataHelper.ModuleID;
            _ReportDataHelper     = reportDataHelper;
            _ReportTempleteHelper = new ReportTemplete(reportDataHelper);

            _PrintTemplete = reportDataHelper.GetPrintTemplete(templeteID);
            if (_PrintTemplete == null)
            {
                _PrintTemplete            = createNewPrintTemplete();
                _PrintTemplete.GID        = templeteID;
                _PrintTemplete.DataSource = (reportDataHelper.DataSource as DataSet).Tables[0].TableName;
            }

            _BindingSource            = new MB.WinBase.Binding.BindingSourceEx();
            _BindingSource.DataSource = _PrintTemplete;
        }
Esempio n. 5
0
        //创建树型结点
        private TreeNode  createTreeNode(MB.WinPrintReport.Model.PrintTempleteContentInfo printTemplete, TreeNodeCollection childNodes)
        {
            System.Windows.Forms.TreeNode node = new TreeNode();
            node.Text = printTemplete.Name;
            node.Tag  = printTemplete;
            childNodes.Add(node);
            node.ImageIndex         = 2;
            node.SelectedImageIndex = 1;
            if (printTemplete.Childs == null || printTemplete.Childs.Count == 0)
            {
                return(node);
            }

            foreach (var child in printTemplete.Childs)
            {
                createTreeNode(child, node.Nodes);
            }
            return(node);
        }