/// <summary> /// Genera código de parámetros de llamado a un método. /// </summary> /// <param name="CodeGeneratorCommon.MethodActionType">información sobre el método a generar.</param> /// <param name="pTable">tabla.</param> /// <returns>Código que representa los parámetros para ejecutar el método.</returns> /// <author>Marcelo Oviedo</author> static string GenMethodParameters(CodeGeneratorCommon.MethodActionType pMethodActionType, TableViewBase pTable) { String wBuilder = string.Empty; switch (pMethodActionType) { case CodeGeneratorCommon.MethodActionType.Insert: case CodeGeneratorCommon.MethodActionType.Update: case CodeGeneratorCommon.MethodActionType.GetByParam: case CodeGeneratorCommon.MethodActionType.SearchByParam: wBuilder = string.Concat(pTable.Name, " p", pTable.Name); break; case CodeGeneratorCommon.MethodActionType.Delete: Column pPK = FwkGenerator.GetPrimaryKey(pTable); if (pPK != null) { FwkGenerator.GetCSharpType(pPK); wBuilder = String.Concat(FwkGenerator.GetCSharpType(pPK), " p", pPK.Name); } else { wBuilder = String.Concat("int pId"); } break; } return(wBuilder); }
private static string GenMethodReturn(TableViewBase pTable, CodeGeneratorCommon.MethodActionType t) { StringBuilder wBuilderReturn = null; switch (t) { case CodeGeneratorCommon.MethodActionType.Insert: { Column pPK = FwkGenerator.GetPrimaryKey(pTable); if (pPK != null) { wBuilderReturn = new StringBuilder(FwkGenerator.TemplateDocument.GetTemplate("InsertReturn").Content); wBuilderReturn.Replace(CodeGeneratorCommon.CommonConstants.CONST_ENTITY_PROPERTY_NAME, pPK.Name); wBuilderReturn.Replace(CodeGeneratorCommon.CommonConstants.CONST_TYPENAME, FwkGenerator.GetCSharpType(pPK)); return(wBuilderReturn.ToString()); } else { return(" wDataBase.ExecuteNonQuery(wCmd);"); } } case CodeGeneratorCommon.MethodActionType.Update: return(" wDataBase.ExecuteNonQuery(wCmd);"); case CodeGeneratorCommon.MethodActionType.SearchByParam: wBuilderReturn = new StringBuilder(FwkGenerator.TemplateDocument.GetTemplate("SearchReturn").Content); return(wBuilderReturn.ToString()); case CodeGeneratorCommon.MethodActionType.Delete: return(" wDataBase.ExecuteNonQuery(wCmd);"); } return(string.Empty); }
/// <summary> /// Obtiene el seteo de parametro que se envia a un store procedure para Aplication Block, /// en forma de batch.- /// /// </summary> /// <param name="pTableName">Nombre de tabla</param> /// <param name="pColumnName">Nombre de columna</param> /// <param name="pType">Tipo de SQL Server</param> /// <param name="pLastField">indica si es el ultimo parametro</param> ///<example> /// <code> /// /// BatchCommandText.Append("@[Property_Name] = "); /// if (w[NamePattern].[Property_Name] != null) /// { /// BatchCommandText.Append(w[NamePattern].[Property_Name] == true ? "1":"0"); /// } /// else { BatchCommandText.Append("NULL"); } /// BatchCommandText.Append( ","); /// /// </code> /// </example> /// <returns>string</returns> static string Get_Property_Batch(Column c, bool pLastField) { System.Text.StringBuilder str = new System.Text.StringBuilder(); switch (c.DataType.ToString().ToUpper()) { case "BIT": str.Append(FwkGenerator.TemplateDocument.GetTemplate("SPParameterBatchBit").Content); break; case "REAL": case "NUMERIC": case "BIGINT": case "SMALLINT": case "INT": case "TINYINT": str.Append(FwkGenerator.TemplateDocument.GetTemplate("SPParameterBatchInteger").Content); break; case "MONEY": case "SMALLMONEY": case "DECIMAL": case "FLOAT": str.Append(FwkGenerator.TemplateDocument.GetTemplate("SPParameterBatchDecimal").Content); break; case "SMALLDATETIME": case "DATETIME": str.Append(FwkGenerator.TemplateDocument.GetTemplate("SPParameterBatchDateTime").Content); break; case "TEXT": case "NTEXT": case "CHAR": case "NCHAR": case "VARCHAR": case "NVARCHAR": str.Append(FwkGenerator.TemplateDocument.GetTemplate("SPParameterBatchString").Content); break; ///TODO:Ver paso de binarios por batch case "IMAGE": case "VARBINARY": case "BINARY": str.Append(FwkGenerator.TemplateDocument.GetTemplate("SPParameterBatchString").Content); break; } if (!c.Nullable) { str.Replace("[Batch_NULL_Question]", String.Empty); } else { if (FwkGenerator.GetCSharpType(c).Contains("string")) { str.Replace("[Batch_NULL_Question_string]", FwkGenerator.TemplateDocument.GetTemplate("Batch_NULL_Question").Content); } else { str.Replace("[Batch_NULL_Question]", FwkGenerator.TemplateDocument.GetTemplate("Batch_NULL_Question").Content); } } str.Replace(CodeGeneratorCommon.CommonConstants.CONST_ENTITY_PROPERTY_NAME, c.Name); if (pLastField) { str.Replace("wBatchCommandText.Append( \",\");", "wBatchCommandText.Append( \";\");"); } return(str.ToString()); }