private CustomNode GenerateServerNode() { int count = 0; int totalCount = GetTotalCount(); CustomNode serverNode = new CustomNode(NodeType.Server, null, ConfigHandler.ServerName, NodeImage.ServerDatabase, 0); NodeDataGenerator.GenerateDatabaseNode(serverNode, _databaseOperation.GetDatabaseName(), 0); if (_objectsSelectorForm.IncludeObjectType(NodeType.Tables) || ((_fileFormat == "sql" || _fileFormat == "xls") && (_objectsSelectorForm.tableColumnsCheckBox.Checked || _objectsSelectorForm.tableKeysCheckBox.Checked || _objectsSelectorForm.tableConstraintsCheckBox.Checked || _objectsSelectorForm.tableTriggersCheckBox.Checked || _objectsSelectorForm.tableIndexesCheckBox.Checked))) { CustomNode tablesNode = (CustomNode)serverNode.Nodes[0].Nodes["Tables"]; NodeDataGenerator.GenerateTablesNode(tablesNode, _databaseOperation); if (_objectsSelectorForm.IncludeObjectType(NodeType.TableColumns)) { ExportTableColumns(tablesNode, ++count, totalCount); } if (_objectsSelectorForm.IncludeObjectType(NodeType.TableKeys)) { ExportTableKeys(tablesNode, ++count, totalCount); } if (_objectsSelectorForm.IncludeObjectType(NodeType.TableConstraints)) { ExportTableConstraints(tablesNode, ++count, totalCount); } if (_objectsSelectorForm.IncludeObjectType(NodeType.TableTriggers)) { ExportTableTriggers(tablesNode, ++count, totalCount); } if (_objectsSelectorForm.IncludeObjectType(NodeType.TableIndexes)) { ExportTableIndexes(tablesNode, ++count, totalCount); } } if (_objectsSelectorForm.IncludeObjectType(NodeType.Views) || ((_fileFormat == "sql" || _fileFormat == "xls") && (_objectsSelectorForm.viewColumnsCheckBox.Checked || _objectsSelectorForm.viewTriggersCheckBox.Checked || _objectsSelectorForm.viewIndexesCheckBox.Checked))) { CustomNode viewsNode = (CustomNode)serverNode.Nodes[0].Nodes["Views"]; NodeDataGenerator.GenerateViewsNode(viewsNode, _databaseOperation); if (_objectsSelectorForm.IncludeObjectType(NodeType.ViewColumns)) { ExportViewColumns(viewsNode, ++count, totalCount); } if (_objectsSelectorForm.IncludeObjectType(NodeType.ViewTriggers)) { ExportViewTriggers(viewsNode, ++count, totalCount); } if (_objectsSelectorForm.IncludeObjectType(NodeType.ViewIndexes)) { ExportViewIndexes(viewsNode, ++count, totalCount); } } if (_objectsSelectorForm.IncludeObjectType(NodeType.StoredProcedures) || ((_fileFormat == "sql" || _fileFormat == "xls") && (_objectsSelectorForm.storedProcedureParametersCheckBox.Checked))) { CustomNode proceduresNode = (CustomNode)serverNode.Nodes[0].Nodes["Programmability"].Nodes["Stored Procedures"]; NodeDataGenerator.GenerateProceduresNode(proceduresNode, _databaseOperation); if (_objectsSelectorForm.IncludeObjectType(NodeType.StoredProcedureParameters)) { ExportStoredProcedureParameters(proceduresNode, ++count, totalCount); } } if (_objectsSelectorForm.IncludeObjectType(NodeType.TableValuedFunctions) || ((_fileFormat == "sql" || _fileFormat == "xls") && (_objectsSelectorForm.tableValuedFunctionParametersCheckBox.Checked))) { CustomNode tableValuedFunctionsNode = (CustomNode)serverNode.Nodes[0].Nodes["Programmability"].Nodes["Functions"].Nodes["Table-valued Functions"]; NodeDataGenerator.GenerateTableValuedFunctionsNode(tableValuedFunctionsNode, _databaseOperation); if (_objectsSelectorForm.IncludeObjectType(NodeType.TableValuedFunctionParameters)) { ExportTableValuedFunctionParameters(tableValuedFunctionsNode, ++count, totalCount); } } if (_objectsSelectorForm.IncludeObjectType(NodeType.ScalarValuedFunctions) || ((_fileFormat == "sql" || _fileFormat == "xls") && (_objectsSelectorForm.scalarValuedFunctionParametersCheckBox.Checked))) { CustomNode scalarValuedFunctionsNode = (CustomNode)serverNode.Nodes[0].Nodes["Programmability"].Nodes["Functions"].Nodes["Scalar-valued Functions"]; NodeDataGenerator.GenerateScalarValuedFunctionsNode(scalarValuedFunctionsNode, _databaseOperation); if (_objectsSelectorForm.IncludeObjectType(NodeType.ScalarValuedFunctionParameters)) { ExportScalarValuedFunctionParameters(scalarValuedFunctionsNode, ++count, totalCount); } } return(serverNode); }
private void GenerateChildNodes(CustomNode node) { switch (node.Type) { case NodeType.Server: NodeDataGenerator.GenerateDatabasesNode(node, _databaseOperation); break; case NodeType.Tables: NodeDataGenerator.GenerateTablesNode(node, _databaseOperation); break; case NodeType.Views: NodeDataGenerator.GenerateViewsNode(node, _databaseOperation); break; case NodeType.StoredProcedures: NodeDataGenerator.GenerateProceduresNode(node, _databaseOperation); break; case NodeType.TableValuedFunctions: NodeDataGenerator.GenerateTableValuedFunctionsNode(node, _databaseOperation); break; case NodeType.ScalarValuedFunctions: NodeDataGenerator.GenerateScalarValuedFunctionsNode(node, _databaseOperation); break; case NodeType.TableColumns: NodeDataGenerator.GenerateTableColumnsNode(node, node.ParentNode.Text, _databaseOperation); break; case NodeType.ViewColumns: NodeDataGenerator.GenerateViewColumnsNode(node, node.ParentNode.Text, _databaseOperation); break; case NodeType.TableKeys: NodeDataGenerator.GenerateTableKeysNode(node, node.ParentNode.Text, _databaseOperation); break; case NodeType.TableConstraints: NodeDataGenerator.GenerateTableConstraintsNode(node, node.ParentNode.Text, _databaseOperation); break; case NodeType.TableTriggers: NodeDataGenerator.GenerateTableTriggersNode(node, node.ParentNode.Text, _databaseOperation); break; case NodeType.TableIndexes: NodeDataGenerator.GenerateTableIndexesNode(node, node.ParentNode.Text, _databaseOperation); break; case NodeType.ViewTriggers: NodeDataGenerator.GenerateViewTriggersNode(node, node.ParentNode.Text, _databaseOperation); break; case NodeType.ViewIndexes: NodeDataGenerator.GenerateViewIndexesNode(node, node.ParentNode.Text, _databaseOperation); break; case NodeType.TableValuedFunctionParameters: NodeDataGenerator.GenerateTableValuedFunctionParametersNode(node, node.ParentNode.Text, _databaseOperation); break; case NodeType.ScalarValuedFunctionParameters: NodeDataGenerator.GenerateScalarValuedFunctionParametersNode(node, node.ParentNode.Text, _databaseOperation); break; case NodeType.StoredProcedureParameters: NodeDataGenerator.GenerateStoredProcedureParametersNode(node, node.ParentNode.Text, _databaseOperation); break; } }