using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Collections; using PDFGenerator.BusinessLayer.DataSection; using PDFGenerator.BusinessLayer; using System.Collections.Generic; namespace PDFGenerator.BusinessLayer.DataSection { class DSS144DistibuzionePerScadenze: IDataSection { private static NLog.Logger logger = NLog.LogManager.GetCurrentClassLogger(); public DSS144DistibuzionePerScadenze() { } #region IDataSection Members public DataSectionResult getDataSection(List tabelleSessione, string querySql, DataThread dataThread) { try { /*** TEST - Verifica Tempistica 09/11/2023 - Pino ****/ /*** Inserimento log per verifica tempistica della sezione ***/ //DateTimeOffset dateOffsetValueIni = DateTimeOffset.Parse(DateTime.Now.ToString("hh:mm:ss.ffff")); /*************************************************************/ FormatNum num = new FormatNum(); DataSectionResult dsr = new DataSectionResult(); DataTable dt = SectionManager.GetDataSection(tabelleSessione, querySql, dataThread); DataSetS144 ds144 = new DataSetS144(); decimal Totale = 0; decimal TotPerc = 100; for (int r = 0; r < dt.Rows.Count; r++) { DataRow dr = ds144.Scadenza.NewRow(); dr["Scadenza"] = dt.Rows[r]["Scadenza"].ToString(); dr["Controvalore"] = num.ConvertNum(dt.Rows[r]["Controvalore"]); Totale += decimal.Parse(dr["Controvalore"].ToString()); dr["Percentage"] = Decimal.Round(Convert.ToDecimal(dt.Rows[r]["Percentage"]), 2, MidpointRounding.AwayFromZero); TotPerc -= decimal.Parse(dr["Percentage"].ToString()); dr["Red"] = dt.Rows[r]["Red"]; dr["Green"] = dt.Rows[r]["Green"]; dr["Blue"] = dt.Rows[r]["Blue"]; ds144.Scadenza.Rows.Add(dr); } if (ds144.Scadenza.Rows.Count > 0) ds144.Scadenza.Rows[dt.Rows.Count - 1]["Percentage"] = decimal.Parse(ds144.Scadenza.Rows[dt.Rows.Count - 1]["Percentage"].ToString()) + TotPerc; DataRow drtot = ds144.Totale.NewRow(); //Fc 17/12/2013 // modifica secondo richiesta di F.Scirocco drtot["Descrizione"] = "Totale"; drtot["Controvalore"] = num.ConvertNum(Totale); drtot["Percentage"] = num.ConvertNum(100); ds144.Totale.Rows.Add(drtot); dsr.DatiSezione = ds144; dsr.Esito = ds144.Scadenza.Rows.Count; /*** TEST - Verifica Tempistica 09/11/2023 - Pino ****/ /*** Inserimento log per verifica tempistica della sezione ***/ //DateTimeOffset dateOffsetValueFin = DateTimeOffset.Parse(DateTime.Now.ToString("hh:mm:ss.ffff")); //var tDiff = string.Concat("Tempo di Esecuzione: {0} ", (dateOffsetValueFin - dateOffsetValueIni).ToString()); //logger.Trace("DSS144DistibuzionePerScadenze " + tDiff); /*************************************************************/ return dsr; } catch (Exception ex) { logger.Error(ex); throw ex; } } #endregion } }