Beispiel #1
0
    protected string Grabar(string strDenominacion)
    {
        string sResul = "", sNombreArchivo = "";
        long?  idContentServer = null;

        #region Conexión
        try
        {
            oConn = Conexion.Abrir();
            tr    = Conexion.AbrirTransaccion(oConn);
        }
        catch (Exception ex)
        {
            sResul = "Error@#@" + Errores.mostrarError("Error al abrir la conexión", ex);
            return(sResul);
        }
        #endregion
        try
        {
            #region Obtengo el contenido del archivo y lo guardo en ATENEA
            sNombreArchivo = Path.GetFileName(Session["NOMBRE_ARCHIVO"].ToString());
            if (Session["ARCHIVO"] != null)
            {
                if (this.hdnContentServer.Value != "")
                {//Cuando hemos cargado la página ya teníamos un Id de documento en ATENEA
                    idContentServer = long.Parse(this.hdnContentServer.Value);
                    if (sNombreArchivo == this.hdnNomArchivo.Value)
                    {//Si el nombre del nuevo archivo es el mismo que el inicial
                        IB.Conserva.ConservaHelper.ActualizarContenidoDocumento((long)idContentServer, (byte[])Session["ARCHIVO"]);
                    }
                    else
                    {//El archivo a cargar es dierente
                        IB.Conserva.ConservaHelper.ActualizarDocumento((long)idContentServer, (byte[])Session["ARCHIVO"], sNombreArchivo);
                    }
                }
                else
                {
                    idContentServer = IB.Conserva.ConservaHelper.SubirDocumento(sNombreArchivo, (byte[])Session["ARCHIVO"]);
                }
            }
            #endregion
            if (hdnAccion.Text == "I")
            {
                //DOCUIDFICEPI.Insert(null, int.Parse(hdnID.Text), strDenominacion, sNombreArchivo,
                //                    (byte[])Session["ARCHIVO"], int.Parse(Session["IDFICEPI_ENTRADA"].ToString()), idContentServer);
                DOCUIDFICEPI.Insert(null, int.Parse(hdnID.Text), strDenominacion, sNombreArchivo,
                                    int.Parse(Session["IDFICEPI_ENTRADA"].ToString()), idContentServer);
            }
            else
            {
                if (Session["ARCHIVO"] != null)
                {
                    //DOCUIDFICEPI.Update(null, int.Parse(hdnID.Text), strDenominacion, sNombreArchivo,
                    //                    (byte[])Session["ARCHIVO"], int.Parse(Session["IDFICEPI_ENTRADA"].ToString()), idContentServer);
                    DOCUIDFICEPI.Update(null, int.Parse(hdnID.Text), strDenominacion, sNombreArchivo,
                                        int.Parse(Session["IDFICEPI_ENTRADA"].ToString()), idContentServer);
                }
            }

            Conexion.CommitTransaccion(tr);

            sResul = "OK@#@" + ID.ToString();
        }
        catch (Exception ex)
        {
            Conexion.CerrarTransaccion(tr);
            sResul = "Error@#@" + Errores.mostrarError("Error al grabar los datos del documento", ex);
        }
        finally
        {
            Conexion.Cerrar(oConn);
        }
        return(sResul);
    }