/// <summary> /// Builds the page. /// </summary> public override void BuildPage() { this.ConfigName = this.ViewReference.ContextValueForKey("ConfigName"); this.ConfigTabNr = Convert.ToInt32(this.ViewReference.ContextValueForKey("ConfigTabNr")); IConfigurationUnitStore configStore = ConfigurationUnitStore.DefaultStore; Form form = configStore.FormByName(this.ConfigName); this.formtab = null; MDashboardPage _page = (MDashboardPage)this.InstantiatePage(); if (this.ConfigTabNr < form.NumberOfTabs) { if (this.ConfigTabNr < 0) { this.ConfigTabNr = 0; } this.formtab = form.TabAtIndex(this.ConfigTabNr); } else { this.Logger.LogError($"Configured ConfigTabNr {this.ConfigTabNr} is larger than the number of available tabs {form.NumberOfTabs}"); // DDLogError("Configured ConfigTabNr (%ld) is larger than the number of available tabs (%lu)", (long)this.ConfigTabNr, (unsigned long)form.NumberOfTabs()); return; } _page.LabelText = !string.IsNullOrWhiteSpace(this.formtab.Label) ? this.formtab.Label : "*** FormTab Label Missing ***"; _page.Invalid = true; this.TopLevelElement = _page; string copyRecordIdentification = this.ViewReference.ContextValueForKey("RecordId"); string copyFieldGroupName = this.ViewReference.ContextValueForKey("CopySourceFieldGroupName"); this.copyFields = null; if (copyRecordIdentification.IsRecordIdentification() && !string.IsNullOrWhiteSpace(copyFieldGroupName)) { FieldControl fieldControl = configStore.FieldControlByNameFromGroup("List", copyFieldGroupName); if (fieldControl != null) { this.copyFields = new UPCopyFields(fieldControl); } } if (this.copyFields != null) { this.copyFields.CopyFieldValuesForRecordIdentification(copyRecordIdentification, false, this); } else { this.ContinueWithCopyFields(null); } }