public override string GetEndCode() { var agregarHacerLogin = false; //creo los archivos de datos foreach (var df in DataFiles.Values) { //creo la variable para el archivo var fileVar = new Variable(df.Name, "CHARACTER*128", VariablesScopes.File); var fileTempVar = new Variable("v_" + df.Name, "CHARACTER*2024", VariablesScopes.Local); AddVariable(fileVar); AddVariable(fileTempVar); //creo las variables para las columnas var columnVariables = new List <Variable>(); foreach (var dfc in df.Columns.Values) { var varDFC = new Variable(dfc.Name, "CHARACTER*128", VariablesScopes.Local); columnVariables.Add(varDFC); AddVariable(varDFC); } string accesData; if (df.Columns.Count == 1) { accesData = string.Format("\nACQUIRE LOCAL MUTEX \"{0}\"\n" + "\tNEXT {1}\n" + "\tSET {2} = {1}\n" + "RELEASE MUTEX \"{0}\"\n", Name, fileVar.Name, fileTempVar.Name); } else { accesData = string.Format("\nACQUIRE LOCAL MUTEX \"{0}\"\n" + "\tNEXT {1}\n" + "\tSET {2} = {1}\n" + "RELEASE MUTEX \"{0}\"\n\n", Name, fileVar.Name, fileTempVar.Name); accesData += "Set F_Separador = \""+ DataFile.Separator + "\"\n"; accesData += "Set F_Entrada = " + fileTempVar.Name + "\n"; accesData += "call ParseString \n"; var index = 0; foreach (var varCol in columnVariables) { accesData += "Set " + varCol.Name + " = Resultado[" + index + "]\n"; index++; } accesData += "\n"; //!set F_Separador = ";" //!set F_Entrada = idCentro //!call ParseString //!set idCentro = Resultado[0] //!set idSEjec = Resultado[1] //!set idAlmacen = Resultado[2] //!set idMaterial = Resultado[3] } if (fileVar.Name.Contains("Login")) { var loginDataIf = string.Format("next hacerlogin\n" + "if (hacerlogin = 1) then\n"); var loginDataEndIf = string.Format("\nendif\n"); Code.AppendText(loginDataIf); Code.AppendText(accesData); Code.AppendText(loginDataEndIf); agregarHacerLogin = true; } else { Code.AppendText(accesData); } df.Write(OpenSTARep.DataPath); } Sections.Add(new EndTimer(Name.Replace(".htp", ""))); if (agregarHacerLogin) { return (string.Format("Exit \n\n" + "ERR_LABEL: \n" + "\t reset hacerlogin \n" + "\t If (MESSAGE <> \"\") Then \n" + "\t\t Report MESSAGE \n" + "\t Endif \n\n" + "Exit \n" + "Include \"{0}\"", Repository.FUNCTIONS)); } return (string.Format("Exit \n\n" + "ERR_LABEL: \n" + "\t If (MESSAGE <> \"\") Then \n" + "\t\t Report MESSAGE \n" + "\t Endif \n\n" + "Exit \n" + "Include \"{0}\"", Repository.FUNCTIONS)); }