/// <summary> /// Eliminar el registro de Acuerdo y de sus items (documentos_sec) /// </summary> /// <param name="pNroSolicitud"></param> /// <param name="pIdDocumento"></param> /// <returns></returns> public long Eliminar(long pNroSolicitud, int pIdDocumento) { long intResultado = -1; //--recuperar nombre antes de eliminar string sArchivoOrigen; DocumentoSECNegocio objDocSECNegocio = new DocumentoSECNegocio(); sArchivoOrigen = objDocSECNegocio.ObtenerNombreArchivoIngreso(pNroSolicitud, pIdDocumento); objDocSECNegocio = null; //---elimina de BD AcuerdoDatos objAcuerdoDatos = new AcuerdoDatos(); intResultado = objAcuerdoDatos.Eliminar(pNroSolicitud, pIdDocumento); objAcuerdoDatos = null; if (intResultado > 0) { //--elimina archivo DocumentoSECNegocio objDocSEC = new DocumentoSECNegocio(); objDocSEC.DeleteDocumento(sArchivoOrigen); objDocSEC = null; } //--solo prueba //throw new Exception (" detino: "+strArchivoDestino+" -- origen: "+ strArchivoOrigen); return(intResultado); }
/// <summary> /// Elimina varios items, acuerdos y documentos SEC, a través de la Capa de Datos /// </summary> /// <param name="pDocumentos">Documentos SEC a eliminar</param> public void EliminarVarios(ArrayList pDocumentos, out long numEliminados, out long numNoEliminados, string pRutaRepositorio) { long iEliminados = 0; long noEliminados = 0; long UltCOD_SEC_Eliminado = -1; long UltID_DOCUMENTO_Eliminado = -1; //-- foreach (DocumentoSEC ItemDoc in pDocumentos) { //string tipoCreacion = ""; DocumentoSECNegocio objDocSECNeg = new DocumentoSECNegocio(); try { if (ItemDoc.TIPO_CREACION == ConfigurationSettings.AppSettings["TCREACION_INGRESO"].ToString()) { iEliminados = iEliminados + Eliminar(ItemDoc.COD_SEC, ItemDoc.ID_DOCUMENTO) - 1; /*Para no computar el del registro de Acuerdo, solo los Docuemntos SEC*/ //-- UltCOD_SEC_Eliminado = ItemDoc.COD_SEC; UltID_DOCUMENTO_Eliminado = ItemDoc.ID_DOCUMENTO; } else { if ((UltCOD_SEC_Eliminado != ItemDoc.COD_SEC) && (UltID_DOCUMENTO_Eliminado != ItemDoc.ID_DOCUMENTO)) { if (ItemDoc.TIPO_CREACION == ConfigurationSettings.AppSettings["TCREACION_DIGITALIZADO"].ToString()) { objDocSECNeg.Eliminar(ItemDoc.ID_DOCUMENTO_SEC); iEliminados = iEliminados + 1; } } else { //--ya fue eliminado a traves del item de Tipo de Creacion 'I', el cual ubica el acuerdo } } } catch //(Exception ex) { noEliminados += 1; //throw; } finally { objDocSECNeg = null; } } /*foreach*/ numEliminados = iEliminados; numNoEliminados = noEliminados; }
/// <summary> /// Elimina un registro de Documento SEC en base a su Identificador único /// </summary> /// <param name="pIdDocumentoSEC">Identificador único de Documento SEC</param> /// <returns></returns> public long Eliminar(long pIdDocumentoSEC) { long iResultado = -1; //error string sArchivoOrigen; DocumentoSECNegocio objDocSECNegocio = new DocumentoSECNegocio(); sArchivoOrigen = objDocSECNegocio.ObtenerNombreArchivo(pIdDocumentoSEC); objDocSECNegocio = null; //--elimina registro de la BD DocumentoSECDatos objDocumentoSECDatos = new DocumentoSECDatos(); iResultado = objDocumentoSECDatos.Eliminar(pIdDocumentoSEC); objDocumentoSECDatos = null; //--Recupera y estructura nombre de archivo a eliminar, luego elimina if (iResultado > 0) { DeleteDocumento(sArchivoOrigen); } return(iResultado); }