예제 #1
0
    protected string ObtenerTareas(int iCodHito)
    {
        //Relacion de tareas asignadas al hito
        string        sResul = "", sCodTarea;
        StringBuilder sb = new StringBuilder();

        try
        {
            sb.Append("<table id='tblTareas' class='texto MANO' style='WIDTH: 800px;'>");
            //............................ idTarea........... Desc Tarea
            sb.Append("<colgroup><col style='width:40px' /><col style='width:760px' /></colgroup>");
            sb.Append("<tbody>");
            SqlDataReader dr = HITOE_PLANT_TAREA.SelectByt369_idhito(null, iCodHito);

            int i = 0;
            while (dr.Read())
            {
                sCodTarea = dr["codTarea"].ToString();

                sb.Append("<tr style='height:16px' id='" + sCodTarea + "' est='N' onclick='mm(event)'>");
                sb.Append("<td>" + sCodTarea + "</td>");
                sb.Append("<td><div class='NBR W750'>" + dr["desTarea"].ToString() + "</div></td></tr>");
                i++;
            }
            dr.Close();
            dr.Dispose();
            sb.Append("</tbody>");
            sb.Append("</table>");
            strTablaTareas = sb.ToString();
            sResul         = "OK@#@" + strTablaTareas;
        }
        catch (Exception ex)
        {
            sResul = "Error@#@" + Errores.mostrarError("Error al obtener la relación de tareas.", ex);
        }

        return(sResul);
    }
예제 #2
0
    protected string Grabar(string strDatosHito, string sTareas)
    {
        string sResul = "", sDesHito, sDesHitoLong, sAlerta, sTipoLinea, sCad, sCodTarea;

        string[] aDatosHito;
        int      iCodHito;
        short    iOrden;
        bool     bAlerta = false;

        try
        {
            oConn = Conexion.Abrir();
            tr    = Conexion.AbrirTransaccion(oConn);
        }
        catch (Exception ex)
        {
            sResul = "Error@#@" + Errores.mostrarError("Error al abrir la conexión", ex);
            return(sResul);
        }
        try
        {
            aDatosHito   = Regex.Split(strDatosHito, "##");
            iCodHito     = int.Parse(aDatosHito[0]);
            sDesHito     = Utilidades.unescape(aDatosHito[1]);
            sDesHitoLong = Utilidades.unescape(aDatosHito[2]);
            sAlerta      = aDatosHito[3];
            if (sAlerta == "1")
            {
                bAlerta = true;
            }
            iOrden = short.Parse(aDatosHito[4]);
            HITOE_PLANT.Update(tr, iCodHito, sDesHito, sDesHitoLong, bAlerta, iOrden);

            //Grabamos las tareas asociadas al hito
            if (sTareas != "")
            {
                string[] aTareas = Regex.Split(sTareas, @"##");

                for (int i = 0; i < aTareas.Length - 1; i++)
                {
                    sCad       = aTareas[i];
                    sTipoLinea = sCad.Substring(0, 1);
                    sCodTarea  = sCad.Substring(1);
                    if (sTipoLinea == "D")
                    {//Borrar hito-tarea
                        HITOE_PLANT_TAREA.Delete(tr, iCodHito, int.Parse(sCodTarea));
                    }
                    else
                    {
                        if (sTipoLinea == "I")
                        {//Insertar hito-tarea
                            HITOE_PLANT_TAREA.Insert(tr, iCodHito, int.Parse(sCodTarea));
                        }
                    }
                }
            }
            Conexion.CommitTransaccion(tr);
            sResul = "OK@#@" + iCodHito.ToString() + "@#@";
        }
        catch (Exception ex)
        {
            Conexion.CerrarTransaccion(tr);
            sResul = "Error@#@" + Errores.mostrarError("Error al grabar los datos del hito", ex);
        }
        finally
        {
            Conexion.Cerrar(oConn);
        }
        return(sResul);
    }