Updates to MyGeneration Templates
This commit is contained in:
@@ -221,7 +221,7 @@ public class GeneratedTemplate : DotNetScriptTemplate
|
||||
_exportPath = input["outputPath"].ToString();
|
||||
_dbName = input["chooseDatabase"].ToString();
|
||||
IDatabase db = MyMeta.Databases[_dbName];
|
||||
SaveProcs(db);
|
||||
SaveProcsSorted(db);
|
||||
//SaveTables(db);
|
||||
}
|
||||
private bool IncludeVolian(string sName)
|
||||
@@ -264,6 +264,47 @@ IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[<%=sName%>]') AN
|
||||
DROP <%=sType%> [<%=sName%>];
|
||||
GO
|
||||
|
||||
<%
|
||||
output.write(ip.ProcedureText.TrimEnd("\r\n".ToCharArray()).Replace(" \r\n","\r\n"));
|
||||
%>
|
||||
GO
|
||||
-- Display the status of Proc creation
|
||||
IF (@@Error = 0) PRINT '<%=sIsType%> Creation: <%=sName%> Succeeded'
|
||||
ELSE PRINT '<%=sIsType%> Creation: <%=sName%> Error on Creation'
|
||||
GO
|
||||
<%
|
||||
SaveFile(ip.Name);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
private void SaveProcsSorted(IDatabase db)
|
||||
{
|
||||
SortedList sortedList = new SortedList();
|
||||
foreach(IProcedure ip in db.Procedures)
|
||||
{
|
||||
sortedList.Add(ip.Name,ip);
|
||||
}
|
||||
foreach(IProcedure ip in sortedList.Values)
|
||||
{
|
||||
if(ip.Schema != "sys"){
|
||||
bool isProc = IsProcedure(ip);
|
||||
string sType = isProc ? "PROCEDURE" : "FUNCTION";
|
||||
string sIsType = isProc ? "Procedure" : (IsTableFunction(ip) ? "TableFunction" : "ScalarFunction");
|
||||
string sName = ip.Name;
|
||||
if((bool)input["chkDrop"]){
|
||||
if(sName.StartsWith("sp_")==false && sName.StartsWith("fn_")==false && IncludeVolian(sName))
|
||||
output.writeln("DROP " + sType + " [" + sName + "]");
|
||||
} else {
|
||||
if(sName.StartsWith("sp_")==false && sName.StartsWith("fn_")==false && IncludeVolian(sName))
|
||||
{
|
||||
%>
|
||||
/****** Object: StoredProcedure [<%=sName%>] ******/
|
||||
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[<%=sName%>]') AND OBJECTPROPERTY(id,N'Is<%=sIsType%>') = 1)
|
||||
DROP <%=sType%> [<%=sName%>];
|
||||
GO
|
||||
|
||||
<%
|
||||
output.write(ip.ProcedureText.TrimEnd("\r\n".ToCharArray()).Replace(" \r\n","\r\n"));
|
||||
%>
|
||||
@@ -281,7 +322,7 @@ GO
|
||||
}
|
||||
private bool IsProcedure(IProcedure ip)
|
||||
{
|
||||
return ip.ProcedureText.Contains("CREATE PROCEDURE");
|
||||
return ip.ProcedureText.ToUpper().Contains("CREATE PROCEDURE");
|
||||
}
|
||||
private bool IsTableFunction(IProcedure ip)
|
||||
{
|
||||
|
Reference in New Issue
Block a user