/// <summary> /// Reperimento dell'eventuale messaggio di errore proveniente dal checkout /// </summary> /// <param name="resultInfo"></param> /// <returns></returns> private string GetErrorMessage(NttDataWA.DocsPaWR.ValidationResultInfo resultInfo) { string message = string.Empty; // Restituzione dei messaggi di validazione foreach (NttDataWA.DocsPaWR.BrokenRule brokenRule in resultInfo.BrokenRules) { if (message != string.Empty) { message += Environment.NewLine; } message += brokenRule.Description; } return(message); }
/// <summary> /// CheckIn del documento corrente MTEXT /// </summary> private void CheckInMTextDocument(String file) { // Salvataggio del docNumber del documento in CheckOut CheckOutStatus ckSt = CheckOutAppletContext.Current.Status; if (UIManager.DocumentManager.getSelectedAttachId() != null) { ckSt = UIManager.DocumentManager.GetCheckOutDocumentStatus(UIManager.DocumentManager.GetSelectedAttachment().docNumber); } String docNumber = ckSt.DocumentNumber; // Estrai porzione del path di interesse per M/TEXT file = file.Substring(8); // Accedi a MTEXT per prelevare il PDF MTextModelProvider mtext = models.ModelProviderFactory <MTextModelProvider> .GetInstance(); // Preleva contenuto PDF Byte[] content = mtext.ExportDocument(file, "application/pdf"); // Fai sembrare il file M/TEXT un file FDF ckSt.DocumentLocation = "mtext.pdf"; // Effettua il checkin del documento NttDataWA.DocsPaWR.ValidationResultInfo result = CheckInOutServices.CheckInDocument(content); // Salva l'FQN del file M/TEXT NttDataWA.DocsPaWR.DocsPaWebService ws = new NttDataWA.DocsPaWR.DocsPaWebService(); ws.SetMTextFullQualifiedName(new NttDataWA.DocsPaWR.MTextDocumentInfo() { DocumentDocNumber = docNumber, FullQualifiedName = file }); if (!result.Value) { // Scrittura dei messaggi di errore nel checkin Response.Write(this.GetErrorMessage(result)); } }
/// <summary> /// CheckIn del documento corrente /// </summary> private void CheckInDocument(bool isApplet = false, bool isSocket = false) { byte[] content = null; if (isApplet) { content = System.Convert.FromBase64String(Request.Params["strFile"]); } else if (isSocket) { string JSONfile = Request["strFile"]; //Stream stream=Request.InputStream; JSONfile = JSONfile.Replace(' ', '+'); JSONfile = JSONfile.Trim(); NttDataWA.Utils.FileJSON file = JsonConvert.DeserializeObject <NttDataWA.Utils.FileJSON>(JSONfile); content = System.Convert.FromBase64String(file.content); } else { content = Request.BinaryRead(Request.ContentLength); } NttDataWA.DocsPaWR.ValidationResultInfo result = CheckInOutServices.CheckInDocument(content); if (!result.Value) { // Scrittura dei messaggi di errore nel checkin Response.Write(this.GetErrorMessage(result)); } else { System.Web.HttpContext.Current.Session["isCheckinOrOut"] = result.Value; CheckOutAppletContext.Current = null; } }