Пример #1
0
        public void SearchType()
        {
            string rt  = StaticVariablesClass.ConvertRawTypeToRawName(DomainObject.FieldType);
            int    inx = cbTypes.FindStringExact(rt);

            cbTypes.SelectedIndex = inx;
            gbLength.Enabled      = StaticVariablesClass.HasRawLength(cbTypes.Text.Trim());
        }
Пример #2
0
 void DomainDataToEdit(DomainClass Domain)
 {
     txtLength.Text          = Domain.Length.ToString();
     txtScale.Text           = Domain.Scale.ToString();
     txtPrecisionLength.Text = Domain.Precision.ToString();
     cbDOMAIN.Text           = Domain.Name;
     cbTypes.Text            = StaticVariablesClass.ConvertRawTypeToRawName(Domain.FieldType);
     cbCharSet.Text          = (Domain.CharSet == null) ? "NONE" : Domain.CharSet;
     cbCollate.Text          = (Domain.Collate == null) ? "NONE" : Domain.Collate;
 }
Пример #3
0
 public void ObjectToEdit(TableFieldClass FieldObject)
 {
     txtFieldName.Text       = FieldObject.Name;
     fctDescription.Text     = FieldObject.Description;
     cbPrimaryKey.Checked    = FieldObject.IsPrimary;
     txtDefault.Text         = FieldObject.Domain.DefaultValue;
     cbNotNull.Checked       = FieldObject.Domain.NotNull;
     txtLength.Text          = FieldObject.Domain.Length.ToString();
     txtScale.Text           = FieldObject.Domain.Scale.ToString();
     txtPrecisionLength.Text = FieldObject.Domain.Precision.ToString();
     txtPK.Text          = string.IsNullOrEmpty(FieldObject.PK_ConstraintName) ? TableObject.primary_constraint?.Name : FieldObject.PK_ConstraintName;
     cbDOMAIN.Text       = FieldObject.Domain.Name;
     cbFieldTypes.Text   = StaticVariablesClass.ConvertRawTypeToRawName(FieldObject.Domain.FieldType);
     fctDescription.Text = FieldObject.Description;
     cbCharSet.Text      = (FieldObject.Domain.CharSet == null) ? "NONE" : FieldObject.Domain.CharSet;
     cbCollate.Text      = (FieldObject.Domain.Collate == null) ? "NONE" : FieldObject.Domain.Collate;
     txtPosition.Text    = FieldObject.Position.ToString();
 }
Пример #4
0
        public static string CreateTabelDLL(TableClass tableObject, eCreateMode cmode)
        {
            //
            //    CREATE TABLE TACT_TANT(
            //    ID TABLE_ID NOT NULL /* TABLE_ID = VARCHAR(64) NOT NULL */,
            //    BEZ VAR10 /* VAR10 = VARCHAR(10) */,
            //    TANTWORT_ID REF_ID /* REF_ID = VARCHAR(64) */,
            //    TACTION_ID REF_ID /* REF_ID = VARCHAR(64) */,
            //    GUELTIG      "SMALLINT" DEFAULT 1 NOT NULL /* "SMALLINT" = SMALLINT */,
            //    STATUS       "SMALLINT" DEFAULT 0 NOT NULL /* "SMALLINT" = SMALLINT */,
            //    TUSERID REF_ID /* REF_ID = VARCHAR(64) */,
            //    STAMP        "TIMESTAMP" DEFAULT CURRENT_TIMESTAMP /* "TIMESTAMP" = TIMESTAMP */
            //    );

            var sb = new StringBuilder();

            if (cmode == eCreateMode.recreate)
            {
                sb.AppendLine($@"RECREATE TABLE {tableObject.Name}");
            }
            else
            {
                sb.AppendLine($@"CREATE TABLE {tableObject.Name}");
            }

            sb.AppendLine("(");
            int fc = 0;

            foreach (TableFieldClass tfc in tableObject.Fields.Values)
            {
                fc++;
                bool systemdomain = false;
                if (tfc.Domain.Name.IndexOf("$") >= 0)
                {
                    systemdomain = true;
                }

                if (systemdomain)
                {
                    string FType = (tfc.Domain.Length > 0) ? $@"{StaticVariablesClass.ConvertRawTypeToRawName(tfc.Domain.FieldType)}({tfc.Domain.Length})" : $@"{StaticVariablesClass.ConvertRawTypeToRawName(tfc.Domain.FieldType)}";
                    sb.Append($@"    {tfc.Name} {FType} ");
                }
                else
                {
                    sb.Append($@"    {tfc.Name} {tfc.Domain.Name}  ");
                }

                if ((systemdomain) || ((tfc.Domain.FieldType != "VARYING") && ((!tableObject.IsPrimary(tfc.Name)) /*tfc.IS_PRIMARY*/)))
                {
                    if (tfc.Domain.FieldType == "VARYING")
                    {
                        if ((tfc.Domain.CharSet != "NONE") && (tfc.Domain.Collate.Length > 0))
                        {
                            sb.Append($@" CHARACTER SET {tfc.Domain.CharSet}");
                        }
                        //Not NULL
                        if (tfc.Domain.NotNull)
                        {
                            sb.Append(" NOT NULL");
                        }
                        if ((tfc.Domain.Collate != "NONE") && (tfc.Domain.Collate.Length > 0))
                        {
                            sb.Append($@" COLLATE {tfc.Domain.CharSet}");
                        }
                    }

                    if (tableObject.IsPrimary(tfc.Name))
                    {
                        sb.Append(" PRIMARY KEY");
                    }
                }

                if (fc < tableObject.Fields.Count)
                {
                    sb.Append(",");
                }

                //

                if (systemdomain)
                {
                    sb.Append($@" /* intern:[{tfc.Domain.FieldType}]   domain:{tfc.Domain.Name} */");
                }
                else
                {
                    sb.Append($@" /* raw:{tfc.Domain.RawType} intern:[{tfc.Domain.FieldType}] */");
                }

                if ((!systemdomain) && ((tfc.Domain.FieldType == "VARYING") || ((tableObject.IsPrimary(tfc.Name)))))
                {
                    sb.Append(" /*");
                    if (tfc.Domain.FieldType == "VARYING")
                    {
                        if ((tfc.Domain.CharSet != "NONE") && (tfc.Domain.Collate.Length > 0))
                        {
                            sb.Append($@" CHARACTER SET {tfc.Domain.CharSet}");
                        }
                        if (tfc.Domain.NotNull)
                        {
                            sb.Append(" NOT NULL");
                        }
                        if ((tfc.Domain.Collate != "NONE") && (tfc.Domain.Collate.Length > 0))
                        {
                            sb.Append($@" COLLATE {tfc.Domain.CharSet}");
                        }
                    }
                    sb.Append(" */");
                }
                sb.Append(Environment.NewLine);
            }
            sb.AppendLine("");
            sb.AppendLine(");");
            return(sb.ToString());
        }