public static NamedSetInfo CreateNamedSetInfo(NamedSet set) { if (set == null) return null; NamedSetInfo info = new NamedSetInfo(); info.Caption = set.Caption; info.Description = set.Description; info.Name = set.Name; info.DisplayFolder = set.DisplayFolder; info.Expression = set.Expression; // Информация о предках if (set.ParentCube != null) { info.ParentCubeId = set.ParentCube.Name; info.CustomProperties.Add(new PropertyInfo(InfoBase.CUBE_CAPTION, set.ParentCube.Caption)); } // Свойства foreach (Property prop in set.Properties) { PropertyInfo pi = new PropertyInfo(prop.Name, prop.Value); info.Properties.Add(pi); } return info; }
public string ToQuery(CompilerOptions opts) { var alias = $"{opts.Alias}I"; var valueNum = new Column("ValueNumber"); var valueDate = new Column("ValueDate"); var sourceMod = new Column("SourceModifier"); var importId = new Column("ImportMetadataId"); var rowId = new Column("Id"); var personId = new ExpressedColumn(opts.FieldPersonId, new Expression($"{alias}.PersonId")); var encId = new ExpressedColumn(opts.FieldEncounterId, new Expression("CONVERT(NVARCHAR(10),NULL)")); var where = new List <IEvaluatable>(); where.Add(importId == MetadataId.ToString()); where.Add(new RawEval($"{alias}.{rowId} LIKE '{UniversalId.BaseSegment}%'")); if (UniversalId.Value.HasValue) { where.Add(valueNum == (int)UniversalId.Value); } if (UniversalId.UseModifier) { where.Add(sourceMod == UniversalId.Modifier); } var query = new NamedSet { Select = new ISelectable[] { personId, encId, valueNum, valueDate }, From = $"{opts.AppDb}.app.Import", Alias = alias, Where = where }; return(query.ToString()); }
public static NamedSetInfo CreateNamedSetInfo(NamedSet set) { if (set == null) { return(null); } NamedSetInfo info = new NamedSetInfo(); info.Caption = set.Caption; info.Description = set.Description; info.Name = set.Name; info.DisplayFolder = set.DisplayFolder; info.Expression = set.Expression; // Информация о предках if (set.ParentCube != null) { info.ParentCubeId = set.ParentCube.Name; info.CustomProperties.Add(new PropertyInfo(InfoBase.CUBE_CAPTION, set.ParentCube.Caption)); } // Свойства foreach (Property prop in set.Properties) { PropertyInfo pi = new PropertyInfo(prop.Name, prop.Value); info.Properties.Add(pi); } return(info); }
public ImportMappingQuery(MappingQuery mapping, IEnumerable <string> ids) { var wrapper = $"WITH wrapper ({personId}, {mrn}) AS ({mapping.SqlStatement})"; var select = new NamedSet { Select = new[] { new Column(personId), new Column(mrn) }, From = "wrapper", Where = new[] { new Column(mrn) == ids } }; return($"{wrapper} {select}"); }
public bool AddSet(string name, params TSetType[] insert) { if (sets.ContainsKey(name)) { return(false); } var namedSet = new NamedSet(name); sets.Add(name, namedSet); foreach (TSetType i in insert) { namedSet.Set.Add(i); } return(true); }
static string GetMappingQuery(MappingQuery mapping, IEnumerable <string> ids) { var personId = new Column(Cols.PersonId); var mrn = new Column(Cols.Mrn); var wrapper = "wrapper"; var cte = $"WITH {wrapper} ({personId}, {mrn}) AS ({mapping.SqlStatement})"; var select = new NamedSet { Select = new[] { personId, mrn }, From = wrapper, Where = new[] { mrn == ids } }; return($"{cte} {select}"); }
public int[] FindNodeSet(string _name) { NamedSet nameSet = System.Array.Find(nodesSet, x => x.name == _name); return(nameSet != null ? nameSet.indices : null); }
protected bool Equals(NamedSet other) { return(string.Equals(Name, other.Name) && Equals(Set, other.Set)); }