Example #1
0
    //public void VisualizzaWwwPDF(System.Web.UI.Page AspxPage, string sNomeFile)
    //{
    //    AspxPage.Response.Clear();
    //    AspxPage.Response.ContentType = "application/octet-stream";
    //    AspxPage.Response.AppendHeader("Content-Disposition", "attachment; filename=" + sNomeFile + "\"");
    //    rpt.formatter.Create(rpt, AspxPage.Response.OutputStream);
    //    AspxPage.Response.End();
    //}


    public bool StampaDocumento(string sWhereDati, string CodiceStampa)
    {
        //Creo l'istanza del Report per scrivere
        cReport objcRpt = new cReport(rpt, rptPage);
        try
        {
            #region ricerco informazioni stampa
            //Recupero informazioni di Stampa
            string sqlWhere = "SELECT * FROM Stampa WHERE Codice='" + CodiceStampa + "'";
            SqlCommand cmdStampa = new SqlCommand(sqlWhere, _sqlCn);

            SqlDataAdapter adapStampa = new SqlDataAdapter(cmdStampa);
            DataTable dtStampa = new DataTable();
            adapStampa.Fill(dtStampa);

            //Recupero informazioni delle stampe righe
            sqlWhere = "SELECT * FROM StampaRighe WHERE Codice='" + CodiceStampa + "'";
            SqlCommand cmdStampaRighe = new SqlCommand(sqlWhere, _sqlCn);

            SqlDataAdapter adapStampaRighe = new SqlDataAdapter(cmdStampaRighe);
            DataTable dtStampaRighe = new DataTable();
            adapStampaRighe.Fill(dtStampaRighe);
            #endregion

            #region Stampa Documento



            foreach (DataRow dtRow in dtStampaRighe.Rows)
            {
                int iTipo = (int)dtRow["Tipo"];
                double dStartX = (double)dtRow["StartX"];
                double dStartY = (double)dtRow["StartY"];
                double dEndX = (double)dtRow["EndX"];
                double dEndY = (double)dtRow["EndY"];
                double dLenghtY = (double)dtRow["Altezza"];
                double dLenghtX = (double)dtRow["Lunghezza"];
                double dSize = (double)dtRow["FontSize"];
                string sValore = dtRow["Valore"].ToString();
                Color BackColor = Color.FromName(dtRow["BackColor"].ToString());
                bool bBold = (bool)dtRow["FontBold"];

                switch (iTipo)
                {
                    case 1: //Disegno LINEA
                        objcRpt.AddLineaMM(dStartX, dStartY, dLenghtX, dLenghtY, dSize, BackColor);
                        break;
                    case 2: //Disegno Quadrato
                        objcRpt.AddRectMM(dStartX, dStartY, dLenghtX, dLenghtY, dSize, BackColor);
                        break;
                    case 3: //Scrivo Testo
                        objcRpt.AddTextMM(dStartX, dStartY, sValore, dSize, BackColor, bBold);
                        break;
                    case 4: //Diegno Immagine
                        objcRpt.AddImmageMM(sValore, dStartX, dStartY, dLenghtX, dLenghtY);
                        break;
                }


            }
            double sizeDesc = 2;
            Color colorDati = Color.Green;
            string s = "Automotive Service SRL test di stampa OK:" + DateTime.Now.ToLongDateString();
            objcRpt.AddText(40, 10, s, sizeDesc, colorDati, false);
            #endregion
        }
        catch (Exception exc)
        {
            double sizeDesc = 2;
            Color colorDati = Color.Red;
            string s = "Errore durante la fase di stampa:\n" + exc.Message;
            objcRpt.AddText(40, 10, s, sizeDesc, colorDati, false);
        }
        return false;
    }
Example #2
0
        public void StampaModAssTecWithKM(string date, string sRespRic, bool bUrge, string sIDCli, bool bTipoAssTec
            , bool bTipoTaratur, bool bTipoConsulenza
            , bool bSedeCliente, bool bSedeRivenditore, bool bSedeLAboratorio, string sDescRichiesta
            , bool bcaricoCentroAss, bool bCaricoCliente, bool bcaricoRivenditore, bool bCaricoAltro, string sAltro
            , bool bClienteAccordoData, string dataAccordoAss, bool bClienteDeveEssereRichiamato, bool bClienteConoscePrezzi
            , bool bClienteGiaPresoAccordi, bool bClienteCiSonoTrattative, bool bClienteEInsolvente, bool bClienteHaInCorsoAzioni
            , string sResponsabileAzienda, string sKM, string sManOraria, bool bSconto, bool bAbbVisPer, bool bAbbComp, bool bOrariAM, bool bOrariPM, System.Web.UI.Page ActPage)
        {
            //Creo l'istanza del Report per scrivere
            cReport objcRpt = new cReport(rpt, rptPage);

            //imposto il margine 
            mPOSdX = mMarginTop;
            mPOSdY = mMarginLeft;

            double SizeTxt = 2.6;
            double SizeTxtInfo = 2.4;
            double SizePen = 0.5;
            //modificato da monica 4/5/05
            //preparazione Layout
            objcRpt.AddTextMM(15, 15, "Mod. PG05-7/3.00/01.03.2005", 2, Color.Black, true);
            objcRpt.AddTextMM(181, 15, "Pag. 1 di 1", 2, Color.Black, true);
            objcRpt.AddTextMM(44, 22, "MODULO CONFERMA ASSISTENZA TECNICA E/O TARATURA", 3, Color.Black, true);
            objcRpt.AddRectMM(15, 27, 180, -255, SizePen, Color.Black);
            objcRpt.AddLineaMM(102, 27, 0, -42, SizePen, Color.Black);
            objcRpt.AddLineaMM(15, 69, 180, 0, SizePen, Color.Black);

            //modificato da monica 4/5/05
            //Rivenditore
            try
            {
                string sPath = System.Configuration.ConfigurationManager.AppSettings["PathImages"].ToString() + "Logo.jpg";
                objcRpt.AddImmageMM(sPath, 20, 45, 15, 15);
            }
            catch (Exception exc)
            {
                Utility.AllertMessage(ActPage, exc.Message, "reportPdf");
            }
            objcRpt.AddTextMM(42, 35, "GRION FABRIZIO", SizeTxt, Color.Black, true);
            objcRpt.AddTextMM(42, 39, "CENTRO ASSISTENZA TECNICA", SizeTxt, Color.Black, false);
            objcRpt.AddTextMM(42, 43, "TARATURA E CONTROLLO", SizeTxt, Color.Black, false);
            objcRpt.AddTextMM(44, 53, "Viale Grado, 12", SizeTxt, Color.Black, false);
            objcRpt.AddTextMM(44, 57, "33050 PAVIA DI UDINE(UD", SizeTxt, Color.Black, false);
            objcRpt.AddTextMM(44, 61, "Tel. 0432 655292", SizeTxt, Color.Black, false);
            objcRpt.AddTextMM(44, 65, "Fax  0432 655292", SizeTxt, Color.Black, false);

            //modificato da monica 4/5/05
            //Header
            objcRpt.AddTextMM(104, 34, "Data:", SizeTxt, Color.Black, false);
            objcRpt.AddTextMM(134, 34, date, SizeTxt, Color.Black, false);
            objcRpt.AddTextMM(104, 48, "Responsabile della richiesta:", SizeTxt, Color.Black, false);
            objcRpt.AddTextMM(160, 47, sRespRic, SizeTxt, Color.Black, true);
            objcRpt.AddLineaMM(154, 48, 38, 0, SizePen, Color.Black);

            objcRpt.AddCheckBoxMM("URGENTE", bUrge, SizeTxt, Color.Black, false, 111, 62, 25);
            objcRpt.AddCheckBoxMM("NON URGENTE", !bUrge, SizeTxt, Color.Black, false, 151, 62, 30);

            //Dati Cliente
            objcRpt.AddTextMM(20, 78, "Cliente:", SizeTxt, Color.Black, false);
            objcRpt.AddLineaMM(38, 78, 150, 0, SizePen, Color.Black);

            objcRpt.AddTextMM(20, 86, "Indirizzo:", SizeTxt, Color.Black, false);
            objcRpt.AddLineaMM(38, 86, 150, 0, SizePen, Color.Black);
            objcRpt.AddLineaMM(38, 94, 110, 0, SizePen, Color.Black);
            //(Km. _________)
            objcRpt.AddTextMM(155, 94, "(Km ", SizeTxt, Color.Black, false);
            objcRpt.AddTextMM(164, 93.5, sKM, SizeTxt, Color.Black, true);
            objcRpt.AddLineaMM(164, 94, 22, 0, SizePen, Color.Black);
            objcRpt.AddTextMM(187, 94, ")", SizeTxt, Color.Black, false);

            objcRpt.AddTextMM(20, 102, "Telefono:", SizeTxt, Color.Black, false);
            objcRpt.AddLineaMM(38, 102, 50, 0, SizePen, Color.Black);

            objcRpt.AddTextMM(120, 102, "Fax:", SizeTxt, Color.Black, false);
            objcRpt.AddLineaMM(130, 102, 50, 0, SizePen, Color.Black);

            WriteIntestazioneClienteMMForModAss(sIDCli, objcRpt, 38, 77, 0, false);

            //modificato da monica 4/5/05
            //persona di riferimnto
            objcRpt.AddTextMM(20, 109, "Persona di riferimento in azienda:", SizeTxt, Color.Black, false);
            objcRpt.AddTextMM(80, 109, sResponsabileAzienda, SizeTxt, Color.Black, false);
            objcRpt.AddLineaMM(77, 109, 110, 0, SizePen, Color.Black);

            //modificato da monica 4/5/05
            //Tipo di richiesta
            objcRpt.AddTextMM(20, 117, "Tipo di richiesta:", SizeTxt, Color.Black, false);
            objcRpt.AddCheckBoxMM("Assistenza tecnica", bTipoAssTec, SizeTxt, Color.Black, false, 55, 117, 35);
            objcRpt.AddCheckBoxMM("Taratura", bTipoTaratur, SizeTxt, Color.Black, false, 104, 117, 19);
            objcRpt.AddCheckBoxMM("Consulenza/Dimostrazione", bTipoConsulenza, SizeTxt, Color.Black, false, 136, 117, 47);

            //monificato da monica 4/5/05
            //Da eseguire presso
            objcRpt.AddTextMM(20, 125, "Da eseguire presso:", SizeTxt, Color.Black, false);
            objcRpt.AddCheckBoxMM("Sede del cliente", bSedeCliente, SizeTxt, Color.Black, false, 55, 125, 35);
            objcRpt.AddCheckBoxMM("Sede del rivenditore", bSedeRivenditore, SizeTxt, Color.Black, false, 104, 125, 38);
            objcRpt.AddCheckBoxMM("Laboratorio", bSedeLAboratorio, SizeTxt, Color.Black, false, 156, 125, 27);

            //monificato da monica 4/5/05
            //Descrizione richiesta
            objcRpt.AddTextMM(20, 133, "Descrizione richiesta ( per tarature allegare alla presente elenco dispositivi da controllare):", SizeTxt, Color.Black, false);

            double dSpace = 138;
            int CharLenght = 100;
            for (int i = 0; i < 6; i++)
            {

                if (sDescRichiesta.Length > CharLenght)
                {
                    objcRpt.AddTextMM(22, dSpace, ReturnStringDesc(ref sDescRichiesta, CharLenght), SizeTxt, Color.Black, false);
                }
                else
                {
                    objcRpt.AddTextMM(22, dSpace, sDescRichiesta, SizeTxt, Color.Black, false);
                    i = 100;
                }
                dSpace += 6;
            }

            objcRpt.AddLineaMM(20, 139, 170, 0, SizePen, Color.Black);
            objcRpt.AddLineaMM(20, 145, 170, 0, SizePen, Color.Black);
            objcRpt.AddLineaMM(20, 151, 170, 0, SizePen, Color.Black);
            objcRpt.AddLineaMM(20, 157, 170, 0, SizePen, Color.Black);
            objcRpt.AddLineaMM(20, 163, 170, 0, SizePen, Color.Black);
            objcRpt.AddLineaMM(20, 169, 170, 0, SizePen, Color.Black);

            //monificato da monica 4/5/05
            //Intervento a carico di
            objcRpt.AddTextMM(20, 183, "Intervento a carico di:", SizeTxt, Color.Black, true);
            objcRpt.AddCheckBoxMM("Centro assistenza (in garanzia)", bcaricoCentroAss, SizeTxt, Color.Black, false, 61, 183, 57);
            objcRpt.AddCheckBoxMM("Cliente", bCaricoCliente, SizeTxt, Color.Black, false, 134, 183, 15);
            objcRpt.AddCheckBoxMM("Rivenditore", bcaricoRivenditore, SizeTxt, Color.Black, false, 61, 191, 23);
            objcRpt.AddCheckBoxMM("Altro", bCaricoAltro, SizeTxt, Color.Black, false, 105, 191, 13);
            objcRpt.AddLineaMM(124, 191, 40, 0, SizePen, Color.Black);
            objcRpt.AddTextMM(124, 191, sAltro, SizeTxt, Color.Black, false);

            //monificato da monica 4/5/05
            //Dati Aggiuntivi richiesta 

            objcRpt.AddTextMM(61, 199, "Cliente in Abbonamento:", SizeTxt, Color.Black, false);
            objcRpt.AddCheckBoxMM("Completo", bAbbVisPer, SizeTxt, Color.Black, false, 106, 199, 20);
            objcRpt.AddCheckBoxMM("Verifiche periodiche", bAbbComp, SizeTxt, Color.Black, false, 138, 199, 36);

            objcRpt.AddTextMM(20, 209, "Data di intervento prevista:", SizeTxt, Color.Black, true);
            if (bClienteAccordoData)
                objcRpt.AddTextMM(75, 209, dataAccordoAss, SizeTxt, Color.Black, true);
            else
                objcRpt.AddTextMM(75, 209, "( __/__/____ )", SizeTxt, Color.Black, true);
            objcRpt.AddTextMM(20, 213, "(salvo imprevisti e/o ritardi dovuti a forze di causa maggiore)", SizeTxtInfo, Color.Black, false);
            //modificato da monica 4/5/05	
            //Orario approssimativo
            objcRpt.AddCheckBoxMM("Mattina", bOrariAM, SizeTxt, Color.Black, false, 140, 209, 20);
            objcRpt.AddCheckBoxMM("Pomeriggio", bOrariPM, SizeTxt, Color.Black, false, 140, 214, 20);

            objcRpt.AddTextMM(20, 225, "Tariffe applicate:", SizeTxt, Color.Black, true);
            objcRpt.AddTextMM(64, 225, "Manodopera oraria (frazionabile in 1/2 ora)", SizeTxt, Color.Black, true);
            if (sManOraria == "NP")
                sManOraria = "45,00";
            objcRpt.AddTextMM(140, 225, "€  " + sManOraria + " + IVA", SizeTxt, Color.Black, true);
            objcRpt.AddTextMM(64, 232, "Contributo spese di trasferimento", SizeTxt, Color.Black, true);
            objcRpt.AddTextMM(140, 232, "€  20 + 0,50 Km + IVA *", SizeTxt, Color.Black, true);

            objcRpt.AddTextMM(64, 240, "*", SizeTxtInfo, Color.Black, false);
            objcRpt.AddTextMM(68, 240, "Fino ad un massimo di € 180,00 + IVA", SizeTxtInfo, Color.Black, false);
            objcRpt.AddTextMM(68, 244, "La distanza chilometrica e calcolata con l'ausilio di mappe stradali informatiche", SizeTxtInfo, Color.Black, false);
            objcRpt.AddTextMM(68, 248, "L'applicazione della tariffa non è subbordinata all'esito della riparazione", SizeTxtInfo, Color.Black, false);
            objcRpt.AddTextMM(68, 252, "Il contributo spese di trasferimento è applicato anche per gli interventi in garanzia", SizeTxtInfo, Color.Black, false);

            //Aggiunto da monica 4/5/05
            //Note
            objcRpt.AddTextMM(20, 265, "Note:", SizeTxtInfo, Color.Black, false);
            objcRpt.AddLineaMM(38, 265, 150, 0, SizePen, Color.Black);
            objcRpt.AddLineaMM(38, 270, 150, 0, SizePen, Color.Black);
            objcRpt.AddLineaMM(38, 275, 150, 0, SizePen, Color.Black);
        }
Example #3
0
    public bool StampaDocumentoFile(string NomeFileStampa, string sqlWhere)
    {
        string sPathReport = ConfigurationManager.AppSettings["PathReport"].ToString();
        NomeFileStampa = sPathReport + NomeFileStampa;
        //Creo l'istanza del Report per scrivere
        cReport objcRpt = new cReport(rpt, rptPage);

        #region Recupero Dati dal DB
        SqlCommand cmdStampa = new SqlCommand(sqlWhere, _sqlCn);

        SqlDataAdapter adapStampa = new SqlDataAdapter(cmdStampa);
        DataTable dtStampa = new DataTable();
        adapStampa.Fill(dtStampa);
        DataRow drStampa = dtStampa.Rows[0];
        #endregion

        StreamReader sr = new StreamReader(File.OpenRead(NomeFileStampa));
        try
        {
            double dErrStartX = 50;
            double dErrStartY = 20;
            double dErrSize = 2;

            string sLinea;
            while ((sLinea = sr.ReadLine()) != null)
            {
                try
                    {
                string[] arLinea = sLinea.Split("\t".ToCharArray());

                double dStartX = 0;
                double dStartY = 0;
                double dLenghtX = 0;
                double dLenghtY = 0;
                double dSize = 0;
                string sValore = "";
                Color BackColor = Color.Black;
                bool bBold = false;
                bool bValue = false;
                int iCharMax = 0;
                double dNextRow = 0;
                

                if (arLinea[0] == "Linea")
                {
                    try
                    {
                        dStartX = double.Parse(arLinea[1]);
                        dStartY = double.Parse(arLinea[2]);
                        dLenghtX = double.Parse(arLinea[3]);
                        dLenghtY = double.Parse(arLinea[4]);
                        dSize = double.Parse(arLinea[5]);
                        BackColor = Color.FromName(arLinea[6]);
                        objcRpt.AddLineaMM(dStartX, dStartY, dLenghtX, dLenghtY, dSize, BackColor);
                    }
                    catch (Exception exc)
                    {

                        objcRpt.AddTextMM(dErrStartX, dErrStartY, sLinea + " - " + exc.Message, dErrSize, Color.Red, true);
                        dErrStartY += 10;
                    }
                }
                if (arLinea[0] == "Quad")
                {
                    try
                    {
                        dStartX = double.Parse(arLinea[1]);
                        dStartY = double.Parse(arLinea[2]);
                        dLenghtX = double.Parse(arLinea[3]);
                        dLenghtY = double.Parse(arLinea[4]);
                        dSize = double.Parse(arLinea[5]);
                        BackColor = Color.FromName(arLinea[6]);
                        objcRpt.AddRectMM(dStartX, dStartY, dLenghtX, dLenghtY, dSize, BackColor);
                    }
                    catch (Exception exc)
                    {

                        objcRpt.AddTextMM(dErrStartX, dErrStartY, sLinea + " - " + exc.Message, dErrSize, Color.Red, true);
                        dErrStartY += 10;
                    }
                }
                if (arLinea[0] == "Testo")
                {
                    try
                    {
                        dStartX = double.Parse(arLinea[1]);
                        dStartY = double.Parse(arLinea[2]);
                        dSize = double.Parse(arLinea[3]);
                        sValore = arLinea[4];
                        sValore = sValore.Replace(" ", " ");
                        BackColor = Color.FromName(arLinea[5]);
                        bBold = bool.Parse(arLinea[6]);
                        objcRpt.AddTextMM(dStartX, dStartY, sValore, dSize, BackColor, bBold);

                    }
                    catch (Exception exc)
                    {

                        objcRpt.AddTextMM(dErrStartX, dErrStartY, sLinea + " - " + exc.Message, dErrSize, Color.Red, true);
                        dErrStartY += 10;
                    }
                }

                if (arLinea[0] == "DataNow")
                {
                    try
                    {
                        dStartX = double.Parse(arLinea[1]);
                        dStartY = double.Parse(arLinea[2]);
                        dSize = double.Parse(arLinea[3]);
                        sValore = DateTime.Now.ToShortDateString();
                        BackColor = Color.FromName(arLinea[4]);
                        bBold = bool.Parse(arLinea[5]);
                        objcRpt.AddTextMM(dStartX, dStartY, sValore, dSize, BackColor, bBold);
                    }
                    catch (Exception exc)
                    {

                        objcRpt.AddTextMM(dErrStartX, dErrStartY, sLinea + " - " + exc.Message, dErrSize, Color.Red, true);
                        dErrStartY += 10;
                    }
                }
                if (arLinea[0] == "Dato" || arLinea[0] == "DatoDate")
                {
                    try
                    {
                        dStartX = double.Parse(arLinea[1]);
                        dStartY = double.Parse(arLinea[2]);
                        dSize = double.Parse(arLinea[3]);
                        sValore = drStampa[arLinea[4]].ToString();
                        if (arLinea[0] == "DatoDate")
                        {
                            DateTime dt = DateTime.MinValue;
                            DateTime.TryParse(drStampa[arLinea[4]].ToString(),out dt);
                            sValore = dt.ToShortDateString();
                        }
                        BackColor = Color.FromName(arLinea[5]);
                        bBold = bool.Parse(arLinea[6]);
                        objcRpt.AddTextMM(dStartX, dStartY, sValore, dSize, BackColor, bBold);
                    }
                    catch (Exception exc)
                    {

                        objcRpt.AddTextMM(dErrStartX, dErrStartY, sLinea + " - " + exc.Message, dErrSize, Color.Red, true);
                        dErrStartY += 10;
                    }
                }
                if (arLinea[0] == "DatoNumber")
                {
                    try
                    {
                        dStartX = double.Parse(arLinea[1]);
                        dStartY = double.Parse(arLinea[2]);
                        dSize = double.Parse(arLinea[3]);
                        sValore = drStampa[arLinea[4]].ToString();
                        int iNumber = 2;
                        string sFormat = "0.00";
                        try
                        {
                            iNumber = int.Parse(arLinea[7]);
                            if (iNumber==0)
                                sFormat = "0";
                            if (iNumber == 1)
                                sFormat = "0.0";
                            if (iNumber == 2)
                                sFormat = "0.00";
                            if (iNumber == 3)
                                sFormat = "0.000";
                        }
                        catch { }

                        bool bWithEuro = false;
                        try
                        {
                            bWithEuro = bool.Parse(arLinea[8]);
                            if (bWithEuro == true)
                                sFormat = "€ " + sFormat; 
                        }
                        catch{}

                        float f = 0;
                        float.TryParse(sValore, out f);
                        sValore = f.ToString(sFormat);

                        BackColor = Color.FromName(arLinea[5]);
                        bBold = bool.Parse(arLinea[6]);
                        objcRpt.AddTextMM(dStartX, dStartY, sValore, dSize, BackColor, bBold);
                    }
                    catch (Exception exc)
                    {

                        objcRpt.AddTextMM(dErrStartX, dErrStartY, sLinea + " - " + exc.Message, dErrSize, Color.Red, true);
                        dErrStartY += 10;
                    }
                }
                if (arLinea[0] == "DatoBox")
                {
                    try
                    {
                        dStartX = double.Parse(arLinea[1]);
                        dStartY = double.Parse(arLinea[2]);
                        dSize = double.Parse(arLinea[3]);
                        sValore = drStampa[arLinea[4]].ToString();
                        BackColor = Color.FromName(arLinea[5]);
                        bBold = bool.Parse(arLinea[6]);
                        iCharMax = int.Parse(arLinea[7]);
                        dNextRow = double.Parse(arLinea[8]);

                        while (sValore.Length > 0)
                        {
                            if (iCharMax > sValore.Length)
                                iCharMax = sValore.Length;
                            string sRiga = sValore.Substring(0, iCharMax);
                            sValore = sValore.Remove(0, iCharMax);
                            objcRpt.AddTextMM(dStartX, dStartY, sRiga, dSize, BackColor, bBold);
                            dStartY += dNextRow;
                        }
                    }
                    catch (Exception exc)
                    {

                        objcRpt.AddTextMM(dErrStartX, dErrStartY, sLinea + " - " + exc.Message, dErrSize, Color.Red, true);
                        dErrStartY += 10;
                    }
                }

                if (arLinea[0] == "Img")
                {
                    try
                    {
                        dStartX = double.Parse(arLinea[1]);
                        dStartY = double.Parse(arLinea[2]);
                        dLenghtX = double.Parse(arLinea[3]);
                        dLenghtY = double.Parse(arLinea[4]);
                        sValore = arLinea[5];
                        //Se il valore dell'immagine è NoSignature.jpg allora non la inserisco


                        objcRpt.AddImmageMM(sValore, dStartX, dStartY, dLenghtX, dLenghtY);
                    }
                    catch (Exception exc)
                    {

                        objcRpt.AddTextMM(dErrStartX, dErrStartY, sLinea + " - " + exc.Message, dErrSize, Color.Red, true);
                        dErrStartY += 10;
                    }
                }
                if (arLinea[0] == "ImgDataSignature")
                {
                    try
                    {
                        dStartX = double.Parse(arLinea[1]);
                        dStartY = double.Parse(arLinea[2]);
                        dLenghtX = double.Parse(arLinea[3]);
                        dLenghtY = double.Parse(arLinea[4]);
                        sValore = drStampa[arLinea[5]].ToString().Replace("~/DocWeb/", "");
                        //Se l'immagine è di nessuna uimmagine allora non faccio visualizzare nulla.
                        if ("NoSignature.jpg" == sValore)
                        {
                            sValore = "";
                        }
                        else
                        {

                            sValore = ConfigurationManager.AppSettings["PathDocs"].ToString() + sValore;
                            objcRpt.AddImmageMM(sValore, dStartX, dStartY, dLenghtX, dLenghtY);
                        }
                    }
                    catch (Exception exc)
                    {

                        objcRpt.AddTextMM(dErrStartX, dErrStartY, sLinea + " - " + exc.Message, dErrSize, Color.Red, true);
                        dErrStartY += 10;
                    }
                }


                if (arLinea[0] == "CheckBox")
                {
                    try
                    {
                        dStartX = double.Parse(arLinea[1]);
                        dStartY = double.Parse(arLinea[2]);
                        dLenghtY = double.Parse(arLinea[3]);
                        dSize = double.Parse(arLinea[4]);
                        sValore = arLinea[5];
                        bValue = bool.Parse(arLinea[6]);
                        bBold = bool.Parse(arLinea[7]);
                        BackColor = Color.FromName(arLinea[8]);
                        objcRpt.AddCheckBoxMM(sValore, bValue, dSize, BackColor, bBold, dStartX, dStartY, dLenghtY);
                    }
                    catch (Exception exc)
                    {

                        objcRpt.AddTextMM(dErrStartX, dErrStartY, sLinea + " - " + exc.Message, dErrSize, Color.Red, true);
                        dErrStartY += 10;
                    }
                }
                if (arLinea[0] == "CheckBoxData")
                {
                    try
                    {
                        dStartX = double.Parse(arLinea[1]);
                        dStartY = double.Parse(arLinea[2]);
                        dLenghtY = double.Parse(arLinea[3]);
                        dSize = double.Parse(arLinea[4]);
                        sValore = arLinea[5];
                        bValue = (bool)drStampa[arLinea[6]];
                        bBold = bool.Parse(arLinea[7]);
                        BackColor = Color.FromName(arLinea[8]);
                        objcRpt.AddCheckBoxMM(sValore, bValue, dSize, BackColor, bBold, dStartX, dStartY, dLenghtY);
                    }
                    catch (Exception exc)
                    {

                        objcRpt.AddTextMM(dErrStartX, dErrStartY, sLinea + " - " + exc.Message, dErrSize, Color.Red, true);
                        dErrStartY += 10;
                    }
                }
                    }
                catch (Exception exc)
                {

                    objcRpt.AddTextMM(dErrStartX, dErrStartY, sLinea + " - " + exc.Message, dErrSize, Color.Red, true);
                    dErrStartY += 10;
                }
            }


            //If Stampa Pianificazione
            if (Path.GetFileName(NomeFileStampa) == "ModuloRichiestaAssistenza.report")
            {
                StampaScadenzeClientePerPianificazione((int)drStampa["IDCli"]);
            }
            //If Stampa Rapportino
            if (Path.GetFileName(NomeFileStampa) == "ModuloRapportoTecnico.report")
            {
                StampaRigheRapportino((int)drStampa["IDRapportino"]);
            }
        }
        catch { }
        finally
        {
            sr.Close();
        }
        return true;
    }