Exemplo n.º 1
0
        void ParseColumns(PDModel m, PDPackage package, PDTable table, XmlNode root)
        {
            foreach (XmlNode columnNode in root.ChildNodes)
            {
                PDColumn column = new PDColumn();
                column.Model   = m;
                column.Package = package;
                column.Table   = table;
                column.ID      = columnNode.Attributes["Id"].Value;

                foreach (XmlNode node in columnNode.ChildNodes)
                {
                    switch (node.Name)
                    {
                    case "a:Name":
                        column.Name = node.InnerText;
                        break;

                    case "a:Code":
                        column.Code = node.InnerText;
                        break;

                    case "a:Comment":
                        column.Comment = node.InnerText;
                        break;

                    case "a:DataType":
                        column.DataType = node.InnerText;
                        break;

                    case "a:Length":
                        column.Length = ConvertUtil.ToInt32(node.InnerText, 0);
                        break;

                    case "a:Precision":
                        column.Precision = ConvertUtil.ToInt32(node.InnerText, 0);
                        break;

                    case "a:Mandatory":
                        column.Mandatory = node.InnerText == "1" ? true : false;
                        break;

                    case "a:DefaultValue":
                        column.DefaultValue = node.InnerText;
                        break;

                    case "a:Identity":
                        column.Identity = node.InnerText == "1";
                        break;

                    default:
                        column.AddUnparsedNode(node);
                        break;
                    }
                }//end parse column

                table.AddColumn(column);
            }//end parse columns
        }
Exemplo n.º 2
0
        public static SOTable ToSOTable(PDTable table)
        {
            SOTable t = new SOTable();

            t.Name       = table.Code;
            t.Comment    = string.IsNullOrEmpty(table.Comment) ? table.Name : table.Comment;
            t.ColumnList = new List <SOColumn>();
            foreach (PDColumn item in table.ColumnList)
            {
                t.ColumnList.Add(ToSOColumn(item));
            }
            t.IndexList = new List <SOIndex>();

            return(t);
        }
        public static SOTable ToSOTable(PDTable table)
        {
            SOTable t = new SOTable();

            t.Name = table.Code;
            t.Comment = string.IsNullOrEmpty(table.Comment) ? table.Name : table.Comment;
            t.ColumnList = new List<SOColumn>();
            foreach (PDColumn item in table.ColumnList)
            {
                t.ColumnList.Add(ToSOColumn(item));
            }
            t.IndexList = new List<SOIndex>();

            return t;
        }
Exemplo n.º 4
0
        void ParseIndexes(PDModel m, PDPackage package, PDTable table, XmlNode root)
        {
            foreach (XmlNode indexNode in root.ChildNodes)
            {
                PDIndex index = new PDIndex();
                index.Model   = m;
                index.Package = package;
                index.Table   = table;
                index.ID      = indexNode.Attributes["Id"].Value;

                foreach (XmlNode node in indexNode.ChildNodes)
                {
                    switch (node.Name)
                    {
                    case "a:Name":
                        index.Name = node.InnerText;
                        break;

                    case "a:Code":
                        index.Code = node.InnerText;
                        break;

                    case "a:Comment":
                        index.Comment = node.InnerText;
                        break;

                    case "a:Unique":
                        index.Unique = node.InnerText == "1" ? true : false;
                        break;

                    case "c:IndexColumns":
                        index.ColumnIDList = ParseIndexColumnIDs(node.ChildNodes);
                        break;

                    default:
                        break;
                    }
                }//end parse index

                table.AddIndex(index);
            }//end parse indexes
        }
Exemplo n.º 5
0
        void ParseKeys(PDModel m, PDPackage package, PDTable table, XmlNode root)
        {
            foreach (XmlNode keyNode in root.ChildNodes)
            {
                PDKey key = new PDKey();
                key.Model   = m;
                key.Package = package;
                key.Table   = table;
                key.ID      = keyNode.Attributes["Id"].Value;

                foreach (XmlNode node in keyNode.ChildNodes)
                {
                    switch (node.Name)
                    {
                    case "a:Name":
                        key.Name = node.InnerText;
                        break;

                    case "a:Code":
                        key.Code = node.InnerText;
                        break;

                    case "a:Comment":
                        key.Comment = node.InnerText;
                        break;

                    case "c:Key.Columns":
                        key.ColumnIDList = ParseKeyColumnIDs(node.ChildNodes);
                        break;

                    default:
                        break;
                    }
                }//end parse key

                table.AddKey(key);
            }//end parse keys
        }
Exemplo n.º 6
0
 public PdmTableViewer(PDTable table)
 {
     InitializeComponent();
     _Table = table;
 }
Exemplo n.º 7
0
 public void AddTable(PDTable table) { _TableList.Add(table); }
Exemplo n.º 8
0
        void ParseIndexes(PDModel m, PDPackage package, PDTable table, XmlNode root)
        {
            foreach (XmlNode indexNode in root.ChildNodes)
            {
                PDIndex index = new PDIndex();
                index.Model = m;
                index.Package = package;
                index.Table = table;
                index.ID = indexNode.Attributes["Id"].Value;

                foreach (XmlNode node in indexNode.ChildNodes)
                {
                    switch (node.Name)
                    {
                        case "a:Name":
                            index.Name = node.InnerText;
                            break;
                        case "a:Code":
                            index.Code = node.InnerText;
                            break;
                        case "a:Comment":
                            index.Comment = node.InnerText;
                            break;
                        case "a:Unique":
                            index.Unique = node.InnerText == "1" ? true : false;
                            break;
                        case "c:IndexColumns":
                            index.ColumnIDList = ParseIndexColumnIDs(node.ChildNodes);
                            break;
                        default:
                            break;
                    }
                }//end parse index

                table.AddIndex(index);
            }//end parse indexes
        }
Exemplo n.º 9
0
        void ParseKeys(PDModel m, PDPackage package, PDTable table, XmlNode root)
        {
            foreach (XmlNode keyNode in root.ChildNodes)
            {
                PDKey key = new PDKey();
                key.Model = m;
                key.Package = package;
                key.Table = table;
                key.ID = keyNode.Attributes["Id"].Value;

                foreach (XmlNode node in keyNode.ChildNodes)
                {
                    switch (node.Name)
                    {
                        case "a:Name":
                            key.Name = node.InnerText;
                            break;
                        case "a:Code":
                            key.Code = node.InnerText;
                            break;
                        case "a:Comment":
                            key.Comment = node.InnerText;
                            break;
                        case "c:Key.Columns":
                            key.ColumnIDList = ParseKeyColumnIDs(node.ChildNodes);
                            break;
                        default:
                            break;
                    }
                }//end parse key

                table.AddKey(key);
            }//end parse keys
        }
Exemplo n.º 10
0
        void ParseColumns(PDModel m, PDPackage package,PDTable table,XmlNode root)
        {
            foreach (XmlNode columnNode in root.ChildNodes)
            {
                PDColumn column = new PDColumn();
                column.Model = m;
                column.Package = package;
                column.Table = table;
                column.ID = columnNode.Attributes["Id"].Value;

                foreach (XmlNode node in columnNode.ChildNodes)
                {
                    switch (node.Name)
                    {
                        case "a:Name":
                            column.Name = node.InnerText;
                            break;
                        case "a:Code":
                            column.Code = node.InnerText;
                            break;
                        case "a:Comment":
                            column.Comment = node.InnerText;
                            break;
                        case "a:DataType":
                            column.DataType = node.InnerText;
                            break;
                        case "a:Length":
                            column.Length = ConvertUtil.ToInt32(node.InnerText, 0);
                            break;
                        case "a:Precision":
                            column.Precision = ConvertUtil.ToInt32(node.InnerText, 0);
                            break;
                        case "a:Mandatory":
                            column.Mandatory = node.InnerText == "1" ? true : false;
                            break;
                        case "a:DefaultValue":
                            column.DefaultValue = node.InnerText;
                            break;
                        case "a:Identity":
                            column.Identity = node.InnerText == "1";
                            break;
                        default:
                            column.AddUnparsedNode(node);
                            break;
                    }
                }//end parse column

                table.AddColumn(column);
            }//end parse columns
        }
Exemplo n.º 11
0
        void ParseTables(PDModel m, PDPackage package, XmlNode root)
        {
            foreach (XmlNode tableNode in root.ChildNodes)
            {
                PDTable table = new PDTable();
                table.Model = m;
                table.Package = package;
                table.ID = tableNode.Attributes["Id"].Value;

                foreach (XmlNode node in tableNode.ChildNodes)
                {
                    switch (node.Name)
                    {
                        case "a:Name":
                            table.Name = node.InnerText;
                            break;
                        case "a:Code":
                            table.Code = node.InnerText;
                            break;
                        case "a:Comment":
                            table.Comment = node.InnerText;
                            break;
                        case "c:Owner":
                            table.UserID = node["o:User"].Attributes["Ref"].Value;
                            break;
                        case "c:PrimaryKey":
                            table.PrimaryKeyID = node["o:Key"].Attributes["Ref"].Value;
                            break;
                        case "c:ClusterObject":
                            table.ClusterObjectID = node.FirstChild.Attributes["Ref"].Value;
                            break;
                        case "c:Columns":
                            ParseColumns(m, package, table, node);
                            break;
                        case "c:Keys":
                            ParseKeys(m, package, table, node);
                            break;
                        case "c:Indexes":
                            ParseIndexes(m, package, table, node);
                            break;
                        default:
                            table.AddUnparsedNode(node);
                            break;
                    }
                }//end parse table

                if (package == null)
                {
                    m.AddTable(table);
                }
                else
                {
                    package.AddTable(table);
                }
            }//end parse tables
        }
Exemplo n.º 12
0
        void ParseTables(PDModel m, PDPackage package, XmlNode root)
        {
            foreach (XmlNode tableNode in root.ChildNodes)
            {
                PDTable table = new PDTable();
                table.Model   = m;
                table.Package = package;
                table.ID      = tableNode.Attributes["Id"].Value;

                foreach (XmlNode node in tableNode.ChildNodes)
                {
                    switch (node.Name)
                    {
                    case "a:Name":
                        table.Name = node.InnerText;
                        break;

                    case "a:Code":
                        table.Code = node.InnerText;
                        break;

                    case "a:Comment":
                        table.Comment = node.InnerText;
                        break;

                    case "c:Owner":
                        table.UserID = node["o:User"].Attributes["Ref"].Value;
                        break;

                    case "c:PrimaryKey":
                        table.PrimaryKeyID = node["o:Key"].Attributes["Ref"].Value;
                        break;

                    case "c:ClusterObject":
                        table.ClusterObjectID = node.FirstChild.Attributes["Ref"].Value;
                        break;

                    case "c:Columns":
                        ParseColumns(m, package, table, node);
                        break;

                    case "c:Keys":
                        ParseKeys(m, package, table, node);
                        break;

                    case "c:Indexes":
                        ParseIndexes(m, package, table, node);
                        break;

                    default:
                        table.AddUnparsedNode(node);
                        break;
                    }
                }//end parse table

                if (package == null)
                {
                    m.AddTable(table);
                }
                else
                {
                    package.AddTable(table);
                }
            }//end parse tables
        }