Example #1
0
        public static void AddOrUpdate(TabControlTable tabControlTable)
        {
            var controlTable = ListTabControlTables.FirstOrDefault(c => c.Table == tabControlTable.Table);

            if (controlTable != null)
            {
                ListTabControlTables.Remove(controlTable);
            }
            ListTabControlTables.Add(tabControlTable);
        }
Example #2
0
        private void AddModel(string tableName)
        {
            foreach (TabPage tab in tabControl1.TabPages)
            {
                if (tab.Name == tableName)
                {
                    return;
                }
            }

            var friendlyName = Services.FriendlyName(tableName);
            var last         = friendlyName[friendlyName.Length - 1];

            if (last.Equals('V') && CheckBoxIsView.Checked)
            {
                friendlyName = friendlyName.Remove(friendlyName.Length - 1);
            }

            friendlyName = friendlyName.Contains("Dlb") ? friendlyName.Replace("Dlb", "") : friendlyName;
            var nameOfFile = string.Concat(friendlyName, ".cs");

            var columnsName = CheckBoxIsView.Checked ? DbUtil.ColumunsViews(tableName) : DbUtil.ColumnsTable(tableName);

            TabControlTable controlTable = new TabControlTable()
            {
                Table         = tableName,
                FriendlyTable = friendlyName,
                TypeName      = checkBoxTypeName.Checked,
                Length        = checkBoxLength.Checked,
                PrimaryKey    = checkBoxPrimaryKey.Checked,
                Required      = checkBoxRequired.Checked,
                IsView        = CheckBoxIsView.Checked,
                NameSpace     = textBoxNamespace.Text,
                NameOfFile    = nameOfFile,
                Schema        = textBoxUserId.Text.ToUpper(),
                Columns       = columnsName
            };

            new TabService().AddPageTab(controlTable, tabControl1, this);
        }
Example #3
0
        internal void AddPageTab(TabControlTable controlTable, TabControl tabControl, Form1 form)
        {
            var tabPage = new TabPage(controlTable.NameOfFile)
            {
                ImageIndex = (int)IconIndex.File,
                Tag        = controlTable,
                Name       = controlTable.Table
            };
            Detail detail = new Detail();

            //Get layout
            var splitForm = detail.Controls.Cast <SplitContainer>().FirstOrDefault();

            //Create control panel1
            var panel1   = new Panel();
            var textArea = new TextAreaController(panel1, form);

            panel1      = textArea.CreateNew();
            panel1.Dock = DockStyle.Fill;
            splitForm.Panel1.Controls.Add(panel1);

            //Add columns in ListBox at Panel2
            var listbox = splitForm.Panel2.Controls.Cast <ListBox>().FirstOrDefault();

            controlTable.Columns.ForEach(c => listbox.Items.Add(c));

            listbox.Click     += new EventHandler(form.ColumnsItem_Click);
            listbox.KeyPress  += new KeyPressEventHandler(form.ColumnsItem_KeyPress);
            listbox.MouseDown += new MouseEventHandler(form.Listbox_MouseDown);


            //Set text in
            textArea.SetText(Services.GenerateRtbText(Services.MakeView(controlTable)));

            tabPage.Controls.Add(splitForm);
            tabControl.TabPages.Add(tabPage);
            tabControl.SelectedTab = tabPage;
        }
Example #4
0
 public static void Remove(TabControlTable tabControlTable)
 {
     ListTabControlTables.Remove(tabControlTable);
 }
Example #5
0
        public static string MakeView(TabControlTable tabControlTable)
        {
            var sb     = new StringBuilder();
            var source = Properties.Resources.BaseModel;

            foreach (TableView item in tabControlTable.Columns)
            {
                var key          = "Key";
                var order        = $"Order = {item.Position}";
                var stringLength = $"StringLength({item.DataLength})";
                var typeName     = $"TypeName = \"{item.DateType}\"";
                var required     = "Required";
                var columnName   = $"Column(\"{item.ColumnName}\", {typeName} {(item.Position > 0 ? ", " + order : string.Empty) })";

                if (item.Position > 0 && tabControlTable.PrimaryKey)
                {
                    sb.AppendLine($"[{key}]");
                }

                if (tabControlTable.Required && item.Nullable == DataType.Nullable && item.DateType == DataType.Varchar2)
                {
                    sb.AppendLine($"[{required}]");
                }

                if (tabControlTable.Length && item.DateType != DataType.Date)
                {
                    sb.AppendLine($"[{stringLength}]");
                }
                sb.AppendLine($"[{columnName}]");

                string property;

                switch (item.DateType)
                {
                case DataType.Date:
                    property = "DateTime? ";
                    break;

                case DataType.Number:

                    if (item.DataScale > 0)
                    {
                        property = "decimal";
                    }
                    else if (item.DataLength >= 19)
                    {
                        property = "long";
                    }
                    else
                    {
                        property = "int";
                    }
                    if (!item.Nullable.Equals(DataType.Nullable))
                    {
                        property = string.Concat(property, "?");
                    }
                    break;

                default:
                    property = "string";
                    break;
                }
                sb.AppendLine($"public {property} {item.ColumnNameFriendly} {{ get; set; }}");
                sb.AppendLine(string.Empty);
            }
            return(source.Replace("_NAMESPACE", tabControlTable.NameSpace)
                   .Replace("_TABLENAME", tabControlTable.Table)
                   .Replace("_SCHEMA", tabControlTable.Schema)
                   .Replace("_MODELNAME", tabControlTable.FriendlyTable)
                   .Replace("_COLUMNS", sb.ToString()));
        }