private string ParseConstraint(DataConstraint constraint)
        {
            if (constraint == null)
            {
                throw new ArgumentNullException(nameof(constraint));
            }

            var result = string.Empty;

            switch (constraint.Type)
            {
            case DataConstraintType.Group:
                result = ParseGroup(constraint as DataConstraintGroup);
                break;

            case DataConstraintType.Expression:
                result = ParseExpression(constraint as DataConstraintExpression);
                break;

            default:
                throw new InvalidOperationException($"Unsupported type of {constraint.Type}");
            }

            return(result);
        }
        public string Parse(DataConstraint constraint)
        {
            if (constraint == null)
            {
                return(null);
            }

            return(this.ParseConstraint(constraint));
        }
Ejemplo n.º 3
0
        protected virtual DataConstraint ReadConstraint(IDataReader rdr)
        {
            DataConstraint t     = new DataConstraint();
            int            field = 0;

            t.ConstraintName = rdr.GetAsString(field++);
            t.TableSchema    = rdr.GetAsString(field++);
            t.TableName      = rdr.GetAsString(field++);
            t.ColumnName     = rdr.GetAsString(field++);
            return(t);
        }
 protected virtual DataConstraint ReadConstraint(IDataReader rdr)
 {
     var constraint = new DataConstraint();
     int field = 0;
     constraint.TableSchema = rdr.GetAsString(field++);
     constraint.ConstraintName = rdr.GetAsString(field++);
     constraint.TableName = rdr.GetAsString(field++);
     constraint.ColumnName = rdr.GetAsString(field++);
     constraint.ConstraintType = rdr.GetAsString(field++);
     constraint.ReverseConstraintName = rdr.GetAsString(field++);
     return constraint;
 }
Ejemplo n.º 5
0
    public Boolean isValidDataConstraint(DataConstraint constraints)
    {
        CustomTuple stDataSet = constraints.constraintStandards.standards;

        if (!constraintStandards.isPassStandard(stDataSet))
        {
            return(false);
        }
        else
        {
            return(true);
        }
    }
 protected virtual DataConstraint ReadConstraint(IDataReader rdr)
 {
     DataConstraint constraint = new DataConstraint();
     int field = 0;
     constraint.ConstraintName = rdr.GetAsString(field++);
     constraint.TableSchema = rdr.GetAsString(field++);
     constraint.TableName = rdr.GetAsString(field++).Trim();
     constraint.ColumnName = rdr.GetAsString(field++).Trim();
     constraint.ReferencedTableSchema = rdr.GetAsString(field++);
     constraint.ReferencedTableName = rdr.GetAsString(field++).Trim();
     constraint.ReferencedColumnName = rdr.GetAsString(field++).Trim();
     return constraint;
 }
Ejemplo n.º 7
0
        protected virtual DataConstraint ReadConstraint(IDataReader rdr)
        {
            var constraint = new DataConstraint();
            int field      = 0;

            constraint.TableSchema           = rdr.GetAsString(field++);
            constraint.ConstraintName        = rdr.GetAsString(field++);
            constraint.TableName             = rdr.GetAsString(field++);
            constraint.ColumnName            = rdr.GetAsString(field++);
            constraint.ConstraintType        = rdr.GetAsString(field++);
            constraint.ReverseConstraintName = rdr.GetAsString(field++);
            return(constraint);
        }
Ejemplo n.º 8
0
        protected override void LoadConstraints(Database schema, SchemaName schemaName, IDbConnection conn, NameFormat nameFormat, Names names)
        {
            var constraints = ReadConstraints(conn, schemaName.DbName);

            foreach (DataConstraint constraint in constraints)
            {
                //find my table:
                string constraintFullDbName    = GetFullDbName(constraint.TableName, constraint.TableSchema);
                DbLinq.Schema.Dbml.Table table = schema.Tables.FirstOrDefault(t => constraintFullDbName == t.Name);
                if (table == null)
                {
                    WriteErrorLine("ERROR L100: Table '" + constraint.TableName + "' not found for column " + constraint.ColumnName);
                    continue;
                }

                //if (table.Name.StartsWith("E"))
                //    Logger.Write("---Dbg");

                if (constraint.ConstraintType == "P")
                {
                    //A) add primary key
                    DbLinq.Schema.Dbml.Column pkColumn = table.Type.Columns.Where(c => c.Name == constraint.ColumnName).First();
                    pkColumn.IsPrimaryKey = true;
                }
                else if (constraint.ConstraintType == "R")
                {
                    //if not PRIMARY, it's a foreign key. (constraint_type=="R")
                    //both parent and child table get an [Association]
                    DataConstraint referencedConstraint = constraints.FirstOrDefault(c => c.ConstraintName == constraint.ReverseConstraintName);
                    if (constraint.ReverseConstraintName == null || referencedConstraint == null)
                    {
                        WriteErrorLine("ERROR L127: given R_contraint_name='" + constraint.ReverseConstraintName + "', unable to find parent constraint");
                        continue;
                    }

                    LoadForeignKey(schema, table, constraint.ColumnName, constraint.TableName, constraint.TableSchema,
                                   referencedConstraint.ColumnName, referencedConstraint.TableName,
                                   referencedConstraint.TableSchema,
                                   constraint.ConstraintName, nameFormat, names);
                }
                // custom type, this is a trigger
                else if (constraint.ConstraintType == "T" && constraint.ColumnName != null)
                {
                    var column = table.Type.Columns.Where(c => c.Name == constraint.ColumnName).First();
                    column.Expression    = constraint.Expression;
                    column.IsDbGenerated = true;
                }
            }

            //GuessSequencePopulatedFields(schema);
        }
Ejemplo n.º 9
0
        protected virtual DataConstraint ReadConstraint(IDataReader rdr)
        {
            DataConstraint constraint = new DataConstraint();
            int            field      = 0;

            constraint.ConstraintName        = rdr.GetAsString(field++);
            constraint.TableSchema           = rdr.GetAsString(field++);
            constraint.TableName             = rdr.GetAsString(field++).Trim();
            constraint.ColumnName            = rdr.GetAsString(field++).Trim();
            constraint.ReferencedTableSchema = rdr.GetAsString(field++);
            constraint.ReferencedTableName   = rdr.GetAsString(field++).Trim();
            constraint.ReferencedColumnName  = rdr.GetAsString(field++).Trim();
            return(constraint);
        }
Ejemplo n.º 10
0
        public static ShortMeasTask[] GetShortMeasTasks(DataConstraint constraint)
        {
            var otherArgs = new CommonOperationArguments()
            {
                UserId = MD.Employee.GetCurrentUserId()
            };

            var result = Execute(contract => contract.GetShortMeasTasks(constraint, otherArgs));

            if (result == null)
            {
                return(new ShortMeasTask[] { });
            }
            return(result);
        }
Ejemplo n.º 11
0
        MeasurementResults[] ISdrnsController.GetMeasResults(DataConstraint constraint, CommonOperationArguments otherArgs)
        {
            var result =
                Operation <SdrnsControllerAppService.GetMeasResultsAppOperation, MeasurementResults[]>()
                .Invoke(
                    new GetMeasResultsAppOperationOptions
            {
                Constraint = constraint,
                OtherArgs  = otherArgs
            },
                    this.OperationContext
                    );

            return(result);
        }
Ejemplo n.º 12
0
        CommonOperationDataResult <int> ISdrnsController.DeleteMeasResults(DataConstraint constraint, CommonOperationArguments otherArgs)
        {
            var result =
                Operation <SdrnsControllerAppService.DeleteMeasResultsAppOperation, CommonOperationDataResult <int> >()
                .Invoke(
                    new DeleteMeasResultsAppOperationOptions
            {
                Constraint = constraint,
                OtherArgs  = otherArgs
            },
                    this.OperationContext
                    );

            return(result);
        }
Ejemplo n.º 13
0
        protected virtual DataConstraint ReadConstraint(IDataReader rdr)
        {
            DataConstraint t    = new DataConstraint();
            const int      K_ID = 0;
            //const int K_SEQ = 1;
            const int K_TABLE = 1;
            const int K_FROM  = 3;
            const int K_TO    = 4;

            t.TableSchema = "main";
            //t.ReferencedTableSchema = "main";
            t.ConstraintName = rdr.GetAsString(0);
            t.TableName      = rdr.GetString(1);
            t.ColumnName     = rdr.GetAsString(2);

            //t.ReferencedTableName = UnquoteSqlName(rdr.GetAsString(K_TABLE));
            //t.ReferencedColumnName = rdr.GetAsString(K_TO);
            return(t);
        }
        protected virtual DataConstraint ReadConstraint(IDataReader rdr, string table)
        {
            DataConstraint t    = new DataConstraint();
            const int      K_ID = 0;
            //const int K_SEQ = 1;
            const int K_TABLE = 2;
            const int K_FROM  = 3;
            const int K_TO    = 4;

            t.TableSchema           = "main";
            t.ReferencedTableSchema = "main";

            t.ConstraintName = "fk_" + table + "_" + rdr.GetAsNumeric <int>(K_ID).ToString();
            t.TableName      = table;
            t.ColumnName     = rdr.GetAsString(K_FROM);

            t.ReferencedTableName  = UnquoteSqlName(rdr.GetAsString(K_TABLE));
            t.ReferencedColumnName = rdr.GetAsString(K_TO);
            return(t);
        }
Ejemplo n.º 15
0
        protected virtual DataConstraint ReadConstraint(IDataReader rdr, string table)
        {
            DataConstraint t = new DataConstraint();
            const int K_ID = 0;
            //const int K_SEQ = 1;
            const int K_TABLE = 2;
            const int K_FROM = 3;
            const int K_TO = 4;

            t.TableSchema = "main";
            t.ReferencedTableSchema = "main";

            t.ConstraintName = "fk_" + table + "_" + rdr.GetAsNumeric<int>(K_ID).ToString();
            t.TableName = table;
            t.ColumnName = rdr.GetAsString(K_FROM);

            t.ReferencedTableName = UnquoteSqlName(rdr.GetAsString(K_TABLE));
            t.ReferencedColumnName = rdr.GetAsString(K_TO);
            return t;

        }
Ejemplo n.º 16
0
 protected virtual DataConstraint ReadTrigger(IDataReader rdr)
 {
     var constraint = new DataConstraint();
     int field = 0;
     constraint.ConstraintName = rdr.GetAsString(field++);
     constraint.TableSchema = rdr.GetAsString(field++);
     constraint.TableName = rdr.GetAsString(field++);
     constraint.ConstraintType = "T";
     string body = rdr.GetAsString(field++);
     //BEGIN
     //   IF (:new."EmployeeID" IS NULL) THEN
     //        SELECT Employees_seq.NEXTVAL INTO :new."EmployeeID" FROM DUAL;
     //   END IF;
     //END;
     string expression, column;
     if (MatchTrigger(TriggerMatch1, body, out expression, out column))
     {
         constraint.ColumnNames.Add(column.Trim('"'));
         constraint.Expression = expression;
     }
     return constraint;
 }
Ejemplo n.º 17
0
        protected virtual DataConstraint ReadTrigger(IDataReader rdr)
        {
            var constraint = new DataConstraint();
            int field      = 0;

            constraint.ConstraintName = rdr.GetAsString(field++);
            constraint.TableSchema    = rdr.GetAsString(field++);
            constraint.TableName      = rdr.GetAsString(field++);
            constraint.ConstraintType = "T";
            string body = rdr.GetAsString(field++);
            //BEGIN
            //   IF (:new."EmployeeID" IS NULL) THEN
            //        SELECT Employees_seq.NEXTVAL INTO :new."EmployeeID" FROM DUAL;
            //   END IF;
            //END;
            string expression, column;

            if (MatchTrigger(TriggerMatch1, body, out expression, out column))
            {
                constraint.ColumnNames.Add(column.Trim('"'));
                constraint.Expression = expression;
            }
            return(constraint);
        }
Ejemplo n.º 18
0
 protected virtual DataConstraint ReadConstraint(IDataReader rdr)
 {
     DataConstraint t = new DataConstraint();
     int field = 0;
     t.ConstraintName = rdr.GetAsString(field++);
     t.TableSchema = rdr.GetAsString(field++);
     t.TableName = rdr.GetAsString(field++);
     t.ColumnName = rdr.GetAsString(field++);
     return t;
 }