示例#1
0
        protected override void ApplyArguments(DAE.Runtime.DataParams paramsValue)
        {
            if
            (
                (Modifier == DAE.Language.Modifier.Out || Modifier == DAE.Language.Modifier.Var) &&
                (Source != null) &&
                (Source.DataView != null) &&
                Source.DataView.Active &&
                !Source.DataView.IsReadOnly
            )
            {
                string[]            paramNames;
                DAE.Schema.Column[] columns;

                GetParams(out paramNames, out columns);

                for (int i = 0; i < columns.Length; i++)
                {
                    DAE.Runtime.DataParam param = paramsValue[paramNames[i]];
                    if (((param.Modifier == DAE.Language.Modifier.Out) || (param.Modifier == DAE.Language.Modifier.Var)) && !Source.IsEmpty)
                    {
                        DAE.Schema.Column column = columns[i];
                        DataField         field  = Source.DataView.Fields[column.Name];
                        field.AsNative = param.Value;
                    }
                }
            }
        }
示例#2
0
        protected override void CollectDataSetParamGroup(List <DataSetParamGroup> groups)
        {
            if ((Source != null) && (Source.DataView != null))
            {
                var paramGroup = new DataSetParamGroup();
                paramGroup.Source = Source.DataSource;

                string[]            paramNames;
                DAE.Schema.Column[] columns;

                GetParams(out paramNames, out columns);

                for (int i = 0; i < columns.Length; i++)
                {
                    DAE.Schema.Column column = columns[i];
                    DataSetParam      param  = new DataSetParam();
                    param.Name       = paramNames[i];
                    param.Modifier   = Modifier;
                    param.DataType   = column.DataType;
                    param.ColumnName = column.Name;
                    paramGroup.Params.Add(param);
                }

                groups.Add(paramGroup);
            }
        }
示例#3
0
        protected override void CollectArguments(ref DAE.Runtime.DataParams paramsValue)
        {
            if ((Source != null) && (Source.DataView != null) && Source.DataView.Active)
            {
                string[]            paramNames;
                DAE.Schema.Column[] columns;

                GetParams(out paramNames, out columns);

                for (int i = 0; i < columns.Length; i++)
                {
                    // Create the collection when we find the first item to add to it
                    if (paramsValue == null)
                    {
                        paramsValue = new DAE.Runtime.DataParams();
                    }

                    DAE.Schema.Column column = columns[i];
                    DataField         field  = Source.DataView.Fields[column.Name];

                    paramsValue.Add
                    (
                        new DAE.Runtime.DataParam
                        (
                            paramNames[i],
                            column.DataType,
                            Modifier,
                            Source.IsEmpty ? null : (field.HasValue() ? field.AsNative : null)
                        )
                    );
                }
            }
        }
示例#4
0
 public void GetParams(out string[] LParamNames, out DAE.Schema.Column[] LColumns)
 {
     if (Columns != String.Empty)
     {
         string paramName;
         string columnName;
         LParamNames = Columns.Split(new char[] { ';', ',', '\n', '\r' });
         LColumns    = new DAE.Schema.Column[LParamNames.Length];
         for (int i = 0; i < LParamNames.Length; i++)
         {
             paramName = LParamNames[i];
             int pos = paramName.IndexOf('=');
             if (pos >= 0)
             {
                 columnName = paramName.Substring(pos + 1).Trim();
                 paramName  = paramName.Substring(0, pos).Trim();
             }
             else
             {
                 paramName  = paramName.Trim();
                 columnName = paramName;
             }
             LColumns[i]    = Source.DataView.TableType.Columns[columnName];
             LParamNames[i] = paramName;
         }
     }
     else
     {
         LColumns = new DAE.Schema.Column[Source.DataView.TableType.Columns.Count];
         Source.DataView.TableType.Columns.CopyTo(LColumns, 0);
         LParamNames = new string[LColumns.Length];
         for (int i = 0; i < LColumns.Length; i++)
         {
             LParamNames[i] = LColumns[i].Name;
         }
     }
 }