//---------------------------------------------------------------------------------------------------- private void Open_Sub() { if (this.IsNew) { this.Model = new ForeignKey(); this.Model.ConnectionId = this.ViewModel.ConnectionId; this.Model.ConstraintName = ""; if (this.RelationshipSide == RelationshipSides.Inbound) { this.Model.RelationshipSide = ForeignKey.E_RelationshipSides.ForeignKeySide; } else { this.Model.RelationshipSide = ForeignKey.E_RelationshipSides.PrimaryKeySide; } this.Model.Columns = new ForeignKeyColumn[0]; for (int i = 0; i < 3; i++) { this.Model.Columns[i] = new ForeignKeyColumn(); } } this.ColumnsSelectors = new ForeignKeysEdit_ColumnsSelector[0]; this.ViewModel.TableStructure_TempOtherTable = null; jF2(".Table_ColumnsSelectors").html(""); for (int i = 0; i < this.Model.Columns.Length; i++) { this.Insert_ColumnsSelector(this.Model.Columns[i]); } if (!this.IsNew) { this.Insert_ColumnsSelector(new ForeignKeyColumn()); } string thisTable = ""; if (this.ViewModel != null && this.ViewModel.TableStructure != null) { thisTable = this.ViewModel.TableStructure.Schema + "." + this.ViewModel.TableStructure.TableName; } switch (this.RelationshipSide) { case RelationshipSides.Inbound: this.Populate_TablesSelect(jF(".Select_Table_ForeignKey")); jF(".Select_Table_ForeignKey").show(); if (!this.IsNew) { jF(".Select_Table_ForeignKey").val(this.ViewModel.GetTableId(this.Model.ForeignKey_Schema, this.Model.ForeignKey_TableName).As <string>()); this.Select_Table_ForeignKey_Change(); } jF(".Div_Table_PrimaryKey").show().html(thisTable); break; case RelationshipSides.Outbound: jF(".Div_Table_ForeignKey").show().html(thisTable); this.Populate_TablesSelect(jF(".Select_Table_PrimaryKey")); jF(".Select_Table_PrimaryKey").show(); if (!this.IsNew) { jF(".Select_Table_PrimaryKey").val(this.ViewModel.GetTableId(this.Model.PrimaryKey_Schema, this.Model.PrimaryKey_TableName).As <string>()); this.Select_Table_PrimaryKey_Change(); } break; } switch (this.Model.DeleteRule) { case ForeignKey.E_CascadeOptions.NoAction: jF(".DeleteRuleRadio1").attr("checked", true); break; case ForeignKey.E_CascadeOptions.Cascade: jF(".DeleteRuleRadio2").attr("checked", true); break; case ForeignKey.E_CascadeOptions.SetDefault: jF(".DeleteRuleRadio3").attr("checked", true); break; case ForeignKey.E_CascadeOptions.SetNull: jF(".DeleteRuleRadio4").attr("checked", true); break; } switch (this.Model.UpdateRule) { case ForeignKey.E_CascadeOptions.NoAction: jF(".UpdateRuleRadio1").attr("checked", true); break; case ForeignKey.E_CascadeOptions.Cascade: jF(".UpdateRuleRadio2").attr("checked", true); break; case ForeignKey.E_CascadeOptions.SetDefault: jF(".UpdateRuleRadio3").attr("checked", true); break; case ForeignKey.E_CascadeOptions.SetNull: jF(".UpdateRuleRadio4").attr("checked", true); break; } }
//------------------------------------------------------------------------------------- Constructor -- /// <summary>Instantiate:No</summary> public ForeignKeysEdit(bool isNew, RelationshipSides relationshipSide, TableDesign_ViewModel viewModel) { this.IsNew = isNew; this.RelationshipSide = relationshipSide; this.ViewModel = viewModel; }