예제 #1
0
        public Outcome base64ToPdfA(MainDocument mainDoc, out MainDocument mainDocOut)
        {
            string strMessage = "";

            mainDocOut = new MainDocument();
            Outcome esito = new Outcome();

            esito.iCode          = 1;
            esito.sTransactionId = LogId;
            try
            {
                if (mainDoc.Validate(out strMessage))
                {
                    Logger.WriteOnLog(LogId, "Oggetto da convertire: " + mainDoc.ToXml(), 3);
                    Convert2PdfManager oConvert2PdfManager = new Convert2PdfManager();
                    oConvert2PdfManager.ConvertMainDoc(mainDoc, Logger, sWorkingFolder, LogId, out mainDocOut);
                }
                else
                {
                    Logger.WriteOnLog(LogId, "Oggetto NON Convertito: " + mainDoc.ToXml(), 3);
                    esito.iCode = 0;
                }
            }
            catch (Exception e)
            {
                esito.iCode = 0;
                strMessage  = e.Message;
                Logger.WriteOnLog(LogId, e.Source + " -> " + e.StackTrace + " -> " + e.Message, 3);
            }
            finally
            {
                Logger.WriteOnLog(LogId, "Fine elaborazione", 3);
                esito.sDescription = strMessage;
                if (esito.iCode == 1)
                {
                    Logger.WriteOnLog(LogId, esito.iCode + " - " + strMessage, 3);
                    Logger.RenameFileLog(LogId, "OK_" + LogId);
                }
                else
                {
                    Logger.WriteOnLog(LogId, esito.iCode + " - " + strMessage, 3);
                    Logger.RenameFileLog(LogId, "KO_" + LogId);
                }
            }
            return(esito);
        }