private void GenerateCrud() { IList <TableColumnSpec> columns = ProgrammabilityHelper.GetTableColumnsSpecification(_cp, _initialTableName); bool canGenerate = false; string prefix = String.Empty; string group = String.Empty; string tableNameAbb = String.Empty; string operation = String.Empty; string type = String.Empty; _script = String.Empty; foreach (DataRow row in _tbl.Rows) { canGenerate = (bool)row["Generate"]; if (!canGenerate) { continue; } prefix = (string)row["Prefix"]; group = (string)row["Group"]; tableNameAbb = (string)row["TableName"]; operation = (string)row["Operation"]; type = (string)row["Type"]; if (type == "list") { _script += ProgrammabilityHelper.GenerateCrudProc_List(columns, _cp.CurrentUsername, prefix, group, tableNameAbb, operation, _initialFullTableName); } else if (type == "get") { _script += ProgrammabilityHelper.GenerateCrudProc_Get(columns, _cp.CurrentUsername, prefix, group, tableNameAbb, operation, _initialFullTableName); } else if (type == "insert") { _script += ProgrammabilityHelper.GenerateCrudProc_Insert(columns, _cp.CurrentUsername, prefix, group, tableNameAbb, operation, _initialFullTableName); } else if (type == "update") { _script += ProgrammabilityHelper.GenerateCrudProc_Update(columns, _cp.CurrentUsername, prefix, group, tableNameAbb, operation, _initialFullTableName); } else if (type == "delete") { _script += ProgrammabilityHelper.GenerateCrudProc_Delete(columns, _cp.CurrentUsername, prefix, group, tableNameAbb, operation, _initialFullTableName); } } DialogResult = DialogResult.OK; }
public void OpenSelectedObjects( ) { string error = String.Empty; IList <frmDataViewer> viewers = new List <frmDataViewer>(); foreach (TreeNode node in tv.SelectedNodes) { ObjectGroupingItemData data = ObjectGroupingItemDataFactory.GetNodeData(node); if (data == null) { continue; } ObjectInfo objInfo = ProgrammabilityHelper.GetObjectInfo(_connParams, String.Empty, data.Name); if (objInfo == null) { error += " - " + data.Name + "\r\n"; continue; } if (!DBConstants.DoesObjectTypeHoldsData(data.Type ?? -1)) { continue; } string caption = data.Name + "{" + cmbDatabases.Text + " on " + cmbServers.Text + "}"; string script = " select * from [" + data.Name + "]"; bool isReadOnly = (data.Type == DBObjectType.View) ? true : false; frmDataViewer viewer = DataViewerFactory.CreateDataViewer(_connParams, cmbDatabases.Text, data.Name, caption, script, isReadOnly, false); viewers.Add(viewer); } foreach (frmDataViewer viewer in viewers) { viewer.LoadData(true); DataViewerFactory.ShowDataViewer(viewer); } if (!String.IsNullOrEmpty(error)) { MessageService.ShowError("Objects listed below do not exist in the database!\r\n" + error); } }
public void ModifySelectedObjects( ) { string error = String.Empty; IList <frmScriptEditor> editors = new List <frmScriptEditor>(); foreach (TreeNode node in tv.SelectedNodes) { ObjectGroupingItemData data = ObjectGroupingItemDataFactory.GetNodeData(node); if (data == null) { continue; } ObjectInfo objInfo = ProgrammabilityHelper.GetObjectInfo(_connParams, String.Empty, data.Name); if (objInfo == null) { error += " - " + data.Name + "\r\n"; continue; } if (!DBConstants.DoesObjectTypeHasScript(data.Type ?? -1)) { continue; } string script = ScriptingHelper.GetAlterScript(_connParams, _connParams.Database, objInfo.ObjectID, objInfo.ObjectType); frmScriptEditor editor = ScriptEditorFactory.Create(objInfo.ObjectName, script, objInfo.ObjectID, objInfo.ObjectType, _connParams, cmbDatabases.Text); editors.Add(editor); } foreach (frmScriptEditor editor in editors) { ScriptEditorFactory.ShowScriptEditor(editor); } if (!String.IsNullOrEmpty(error)) { MessageService.ShowError("Objects listed below do not exist in the database!\r\n" + error); } }
private void ModifySelectedObjectInScriptWindow() { TreeNode node = tv.SelectedNode; if (node == null) { return; } NodeData data = NodeDataFactory.GetNodeData(node.Tag); if (data == null) { MessageBox.Show("Node data not assigned", "Application Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } frmScriptEditor editor = new frmScriptEditor(); editor.Text = data.Name; editor.TabText = editor.Text; if (DockPanel.DocumentStyle == DocumentStyles.SystemMdi) { editor.MdiParent = this; editor.Show(); } else { editor.Show(DockPanel); } ProgrammabilityHelper.SqlConn = _connections[data.ConnParams.Name]; string script = ProgrammabilityHelper.GetObjectCreateScript(data.ID); script = ProgrammabilityHelper.ReplaceCreateWithAlter(data.Type, script); editor.InitializeScriptEditor(script, data.Type, data.ConnParams, data.DBName); }
private IList <DataSet> ExecuteScript(BackgroundWorker bw, string queryText) { int totalLineCnt = 0; int currentLineCnt = 0; _grids.Clear(); IList <DataSet> dataSets = new List <DataSet>(); if (workerThread.CancellationPending) { return(dataSets); } _conn.InfoMessage += new SqlInfoMessageEventHandler(HandleSqlInfo); try { IList <string> batches = ProgrammabilityHelper.SplitBatches(queryText); while (batches.Count > 0) { try { DataSet toFill = new DataSet(); dataSets.Add(toFill); string batch = batches[0]; currentLineCnt = LineCount(batch); totalLineCnt += currentLineCnt; if (String.IsNullOrEmpty(batch)) { batches.RemoveAt(0); continue; } batches.RemoveAt(0); _cmd = new SqlCommand(batch, _conn); _cmd.CommandTimeout = 30; SqlDataAdapter adapter = new SqlDataAdapter(); adapter.SelectCommand = _cmd; int recordsAffected = adapter.Fill(toFill); if (batches.Count == 0) { _sqlMessages.Add(SqlMessage.CreateInfoMessage("Command(s) completed sucesfully")); _sqlMessages.Add(SqlMessage.CreateMessage("")); } if (toFill.Tables.Count == 0) { _sqlMessages.Add(SqlMessage.CreateInfoMessage("( " + recordsAffected.ToString() + " row(s) affected ) ")); } } catch (SqlException sqlEx) { int lineNo = totalLineCnt - currentLineCnt + sqlEx.LineNumber; _sqlMessages.Add(SqlMessage.CreateErrorMessage(sqlEx.Message, lineNo, sqlEx.Number, sqlEx.State)); } catch (Exception ex) { _sqlMessages.Add(SqlMessage.CreateErrorMessage("Exception of type \"" + ex.GetType().ToString() + "\": " + ex.Message, -1, -1, -1)); } } } finally { _conn.InfoMessage -= new SqlInfoMessageEventHandler(HandleSqlInfo); } return(dataSets); }