public void AddRelatedField(Field field) { if (!RelatedFields.Contains(field)) { RelatedFields.Add(field); } }
private void Init(ActivityConfig.ACSeriesRow acsr) { this.SuspendLayout(); //flowLayoutPanel1.Controls.Clear(); if (myRF != null) { myRF.Dispose(); } myRF = null; MyACE = new ACEngine(FM); MyACE.myAcSeries = acsr; MyACE.myActivityCode = acsr.ActivityCodeRow; MyACE.DoRelFields(); MyACE.DoStep(ACEngine.Step.RelatedFields0, true); MyACE.DoStep(ACEngine.Step.RelatedFields1, true); MyACE.DoStep(ACEngine.Step.RelatedFields2, true); MyACE.DoStep(ACEngine.Step.RelatedFields3, true); MyACE.DoStep(ACEngine.Step.RelatedFields4, true); MyACE.DoStep(ACEngine.Step.RelatedFields5, true); MyACE.DoStep(ACEngine.Step.RelatedFields6, true); BuildForm(acsr); if (first) { foreach (DataView dv in MyACE.relTables.Values) { DataTable dt = dv.Table; dt.ColumnChanged += new DataColumnChangeEventHandler(dt_ColumnChanged); atLogic.ObjectBE obe = FM.GetBEFromTable(dt); obe.OnUpdate += new atLogic.UpdateEventHandler(ucSSTCase_OnUpdate); } first = false; } this.ResumeLayout(); }
public void UpdateIndependentFieldsList(IFieldDependenciesRepository repository, FormGeneratorContext context) { var allDependFields = repository.GetAllDependFields(); var allIndependedFields = context.Field.AsNoTracking() .ToList() .Where(f => { return((!allDependFields.Contains(f)) && (f.Name != SuperiorFieldName) && (!RelatedFields.Contains(f))); }); AllIndependentFieldsName = JsonConvert.SerializeObject(allIndependedFields.Select(f => f.Name).ToList()); }
public string Valid(FormGeneratorContext _context) { if (DependencyType == "FieldDuplication" && !int.TryParse(ActivationValue, out _)) { return("Maksymalna wartość musi być liczbą! Popraw błędy"); } if (RelatedFields.FirstOrDefault(f => f.Name == SuperiorFieldName) != null) { return("Pole nadrzędne nie może być polem podrzędnym w jednej relacji!"); } if (_context.Field.AsNoTracking().FirstOrDefault(f => f.Name == this.CurrentFieldName) == null && this.DependencyType == "FieldVisibly") { return("Wpisane pole zależne nie istnieje w systemie!"); } if (_context.Field.AsNoTracking().FirstOrDefault(f => f.Name == this.SuperiorFieldName) == null) { return("Wpisane pole nadrzędne nie istnieje"); } if (this.RelatedFields?.Count != 0 && this.DependencyType == "FieldDuplication") { return("Niezany błąd. Spróbuj jeszcze raz"); } //nie można edytować zależności ilościowej string test = FieldFieldDependencyType.FieldDuplication.ToString(); var dependencyExist = _context.Dependencies .AsNoTracking() .FirstOrDefault(dep => (dep.DependencyType.ToString() == this.DependencyType) && (dep.ThisField.Name == this.CurrentFieldName)); if (dependencyExist != null) { return("Zależność ilościowa już została zdefiniowana na tym polu."); } if (_context.Field.FirstOrDefault(f => f.Name == this.SuperiorFieldName).Type != "number" && this.DependencyType == "FieldDuplication") { return("Tylko pole typu 'number' może być polem nadrzędnym w relacji ilościowej"); } return(null); }
public void BuildForm(ActivityConfig.ACSeriesRow acsr) { if (myRF == null) { myRF = new RelatedFields(MyACE, this, secReadOnly, false); } myRF.BeginLayout(); DoBlock(acsr, MyACE.HasRel0, 0); DoBlock(acsr, MyACE.HasRel1, 1); DoBlock(acsr, MyACE.HasRel2, 2); DoBlock(acsr, MyACE.HasRel3, 3); DoBlock(acsr, MyACE.HasRel4, 4); DoBlock(acsr, MyACE.HasRel5, 5); DoBlock(acsr, MyACE.HasRel6, 6); DoBlock(acsr, MyACE.HasRel7, 7); DoBlock(acsr, MyACE.HasRel8, 8); DoBlock(acsr, MyACE.HasRel9, 9); myRF.FinishLayout(); }