/// <summary> /// Creazione dei metadati di una nuova versione di un documento in etdocs /// </summary> /// <param name="fileRequest"> /// Rappresenta i metadati relativi all'ultima versione del documento /// </param> /// <param name="fileContent"> /// Rappresenta il contenuto inviato per il checkin /// </param> /// <param name="fileExtension"> /// Estensione del file /// </param> /// <returns></returns> /// <summary> /// Creazione dei metadati di una nuova versione di un documento in etdocs /// </summary> /// <param name="fileRequest"> /// Rappresenta i metadati relativi all'ultima versione del documento /// </param> /// <param name="fileContent"> /// Rappresenta il contenuto inviato per il checkin /// </param> /// <param name="fileExtension"> /// Estensione del file /// </param> /// <returns></returns> protected virtual bool AddCheckInVersion(InfoUtente infoUtente, CheckOutStatus checkOutStatus, string checkInComments, FileRequest fileRequest, byte[] fileContent) { bool retValue = false; DocsPaDocumentale_ETDOCS.Documentale.DocumentManager documentManager = new DocsPaDocumentale_ETDOCS.Documentale.DocumentManager(infoUtente); DocsPaDB.Query_DocsPAWS.CheckInOut checkInOutDb = new DocsPaDB.Query_DocsPAWS.CheckInOut(); if (checkInOutDb.IsAcquired(fileRequest)) { // Se l'ultima versione del documento risulta acquisita già, // viene creata una nuova versione // Se per l'ultima versione del documento è stato acquisito un file, // viene creata nuova versione per il documento fileRequest = new FileRequest(); fileRequest.docNumber = checkOutStatus.DocumentNumber; fileRequest.descrizione = checkInComments; } else { // Se l'ultima versione del documento non risulta ancora acquisita, // il file viene inserito in quest'ultima // Se per l'ultima versione del documento non è stato acquisito un file, il file viene acquisito per l'ultima versione fileRequest.descrizione = checkInComments; retValue = true; } if (fileContent.Length > 0) { // Il file risulta acquisito // Inserimento nuova versione in etdocs con flag "cha_da_inviare = 0" retValue = documentManager.AddVersion(fileRequest, false); string fileExtension = System.IO.Path.GetExtension(checkOutStatus.DocumentLocation).Replace(".", string.Empty); fileRequest.fileName = string.Format("{0}.{1}", fileRequest.versionId, fileExtension); fileRequest.fileSize = fileContent.Length.ToString(); fileRequest.subVersion = "A"; // Impostazione del file come inserito in etdocs String nomeOriginale = System.IO.Path.GetFileName(checkOutStatus.DocumentLocation); this.SetFileAsInserted(fileRequest, fileContent, nomeOriginale); } else { // Il file non risulta acquisito // Inserimento nuova versione in etdocs con flag "cha_da_inviare = 1" // in quanto nessun content è stato inviato per la versione retValue = documentManager.AddVersion(fileRequest, true); } return(retValue); }
/// <summary> /// Creazione dei metadati di una nuova versione di un documento in etdocs /// </summary> /// <param name="fileRequest"></param> /// <param name="fileContent"></param> /// <param name="fileExtension"></param> /// <returns></returns> protected virtual bool AddCheckInVersion(InfoUtente infoUtente, CheckOutStatus checkOutStatus, string checkInComments, ref FileRequest fileRequest, byte[] fileContent, bool fileIsAcquired) { bool retValue = false; DocsPaDocumentale_ETDOCS.Documentale.DocumentManager documentManager = new DocsPaDocumentale_ETDOCS.Documentale.DocumentManager(infoUtente); //DocsPaDB.Query_DocsPAWS.CheckInOut checkInOutDb = new DocsPaDB.Query_DocsPAWS.CheckInOut(); //if (checkInOutDb.IsAcquired(fileRequest)) if (fileIsAcquired) { // Se per l'ultima versione del documento è stato acquisito un file, // viene creata nuova versione per il documento fileRequest = new FileRequest(); fileRequest.docNumber = checkOutStatus.DocumentNumber; fileRequest.descrizione = checkInComments; } else { // Se per l'ultima versione del documento non è stato acquisito un file, il file viene acquisito per l'ultima versione fileRequest.descrizione = checkInComments; retValue = true; } // Inserimento nuova versione in etdocs retValue = documentManager.AddVersion(fileRequest, false); System.IO.FileInfo fileInfo = new System.IO.FileInfo(checkOutStatus.DocumentLocation); //in OCS il nome del file coincide con il docNumber non con il versionId fileRequest.fileName = fileRequest.docNumber + fileInfo.Extension; fileRequest.fileSize = fileContent.Length.ToString(); // Impostazione del file come inserito in etdocs this.SetFileAsInserted(fileRequest, fileContent); return(retValue); }