/*
   * (non-Javadoc)
   *
   * @see
   * common.bi.GestionUnidadDocumentalBI#modificarSignaturaUDoc(java.lang.
   * String, java.lang.String)
   */
  public void modificarSignaturaUDoc(UnidadDocumentalVO unidadDocumentalVO, String nuevaSignatura) {
    // IElementoCuadroClasificacion elementoUDoc =
    // _elementoCuadroClasificacionDBEntity.getElementoCuadroClasificacion(idUDoc);
    // ElementoCuadroClasificacionVO elementoPadreUDoc =
    // elementoUDoc.getParentElement();
    // NivelCFVO nivelPadre =
    // _nivelDBEntity.getNivelCF(elementoPadreUDoc.getIdNivel());
    //
    // String nuevoCodigoReferencia =
    // _elementoCuadroClasificacionDBEntity.composeCodigoReferencia(nivelPadre,
    // elementoPadreUDoc
    // .getFinalCodRefPadre(), elementoPadreUDoc.getCodigo(),
    // elementoPadreUDoc
    // .getCodRefFondo(), nuevaSignatura);
    String antiguoCodigoReferencia = unidadDocumentalVO.getCodReferencia();
    String antiguaSignatura = unidadDocumentalVO.getCodigo();
    String codigoSinSignatura =
        antiguoCodigoReferencia.substring(
            0, antiguoCodigoReferencia.length() - antiguaSignatura.length());
    StringBuffer nuevoCodigo = new StringBuffer(codigoSinSignatura).append(nuevaSignatura);

    Map colsToUPdate = new HashMap();
    colsToUPdate.put(ElementoCuadroClasificacionDBEntityImpl.CODIGO_FIELD, nuevaSignatura);
    colsToUPdate.put(ElementoCuadroClasificacionDBEntityImpl.CODIGO_REFERENCIA_FIELD, nuevoCodigo);

    _elementoCuadroClasificacionDBEntity.updateFieldsECF(unidadDocumentalVO.getId(), colsToUPdate);
  }
  /**
   * Desinstala una unidad documental de la ubicación que ocupa en el depósito físico
   *
   * @param idUdoc Identificador de unidad documental
   */
  public void desinstalarUnidadDocumental(String idUdoc) {
    // Auditoria
    LoggingEvent logEvent = getLogginEvent(ArchivoActions.FONDOS_MODULE_BAJA_UDOCENUI);
    DataLoggingEvent logData = logEvent.getDataLoggingEvent(ArchivoObjects.OBJECT_UDOC, idUdoc);
    UnidadDocumentalVO udoc = getUnidadDocumental(idUdoc);
    Locale locale = getServiceClient().getLocale();

    logData.addDetalle(locale, ArchivoDetails.SELECCION_COD_UDOC, udoc.getCodigo());
    logData.addDetalle(locale, ArchivoDetails.SELECCION_COD_UDOC, udoc.getNumExp());

    checkPermission(FondosSecurityManager.BAJAUDOC_ENUI_ACTION);
    iniciarTransaccion();
    _udocDepositoDBEntity.deleteUdoc(idUdoc);
    commit();
  }