using System; using System.Text; using System.Data; using System.Configuration; using System.Collections; 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.Threading; using System.Collections.Generic; public partial class VerificheCampione : System.Web.UI.Page { protected string rete = ""; protected string codicePB = ""; protected string cognomeCliente = ""; protected string nomeCliente = ""; protected string codiceFiscale = ""; protected string idProfilo = ""; protected string dataSottoscrizioneDA = ""; protected string dataSottoscrizioneA = ""; protected string RFA = ""; protected string VAR = ""; private const string ASCENDING = " ASC"; private const string DESCENDING = " DESC"; protected void Page_Load(object sender, EventArgs e) { #region Autorizzazione Utente utenteAut; string userName = User.Identity.Name; if (WebConfigParameter.getParameter("Ambiente").ToUpper() == "ESTERNO") { string codiceApplicazione = WebConfigParameter.getParameter("CodiceApplicazione"); utenteAut = Utente.GetAutorizzazioniAccessoGestioneControlli(userName, codiceApplicazione); } else { int pos = userName.IndexOf("\\") + 1; string codiceUtenteWindows = userName.Substring(pos, userName.Length - pos).ToUpper(); utenteAut = new Utente(); utenteAut.UserId = codiceUtenteWindows; utenteAut.Nome = "Utente di Prova"; utenteAut.Cognome = "US-RP-SO-SI"; utenteAut.UtenteAutorizzatoApplicazione = true; utenteAut.ProfiloUtenteLoggato = ProfiloUtenteLoggato.RP; } if (utenteAut.ProfiloUtenteLoggato == ProfiloUtenteLoggato.SO || utenteAut.ProfiloUtenteLoggato == ProfiloUtenteLoggato.RP) dg.Columns[dg.Columns.Count - 1].Visible = true; else dg.Columns[dg.Columns.Count - 1].Visible = false; #endregion #region Gestione Provenienza da if (!IsPostBack) { string tiporeport = ""; string verificati = ""; string esito = ""; //string prov = ""; if (Request.QueryString["tiporeport"] != null) { tiporeport = Request.QueryString["tiporeport"].ToString(); if (tiporeport == "D") CBDiagnosi.Checked = true; else if (tiporeport == "M") CBMonitoraggio.Checked = true; } if (Request.QueryString["verificati"] != null) { verificati = Request.QueryString["verificati"].ToString(); if (verificati == "1") CheckBoxVerificato.Checked = true; else if (verificati == "0") CheckBoxNonVerificato.Checked = true; } if (Request.QueryString["esito"] != null) { esito = Request.QueryString["esito"].ToString(); if (esito == "OK") CheckBoxOK.Checked = true; else if (esito == "KO") CheckBoxKO.Checked = true; } if (Request.QueryString["prov"] != null) { FillDataGrid(); } } #endregion } protected void Ricerca_Click(object sender, EventArgs e) { FillDataGrid(); } private void FillDataGrid() { DataTable dtDg = GetData(); if (dtDg.Rows.Count > 0) { //dg.PageIndex = 0; dg.DataSource = dtDg; dg.DataBind(); dg.Visible = true; //dg.SelectedIndex = -1; } else { // creo item per il datagrid DataRow dr = dtDg.NewRow(); dr["IdReport"] = 1; dr["Rete"] = ""; dr["Cod_Agente"] = ""; dr["NOMINATIVOCLIENTE"] = ""; dr["TipoReport"] = ""; dr["UserModify"] = ""; dr["VERIFICA"] = false; dr["Esito"] = "-"; //dr["Cod_Fiscale "] = ""; dr["pdfC6"] = 1; dtDg.Columns["Cod_Fiscale"].AllowDBNull = true; dtDg.Rows.Add(dr); dg.DataSource = dtDg; dg.DataBind(); int TotalColumns = dg.Rows[0].Cells.Count; dg.Rows[0].Cells.Clear(); dg.Rows[0].Cells.Add(new TableCell()); dg.Rows[0].Cells[0].ColumnSpan = TotalColumns; dg.Rows[0].Cells[0].Text = "Nessun Record Trovato"; } } private DataTable GetData() { List parametri = new List(); #region Parametri ProcessoVerificaCls.loadValueParameter("Rete", DropDownListRete.SelectedValue, DbType.String, ref parametri); ProcessoVerificaCls.loadValueParameter("CodicePB", txtCodicePB.Text, DbType.String, ref parametri); ProcessoVerificaCls.loadValueParameter("NomeCliente", txtNomeCliente.Text, DbType.String, ref parametri); ProcessoVerificaCls.loadValueParameter("CognomeCliente", txtCognomeCliente.Text, DbType.String, ref parametri); ProcessoVerificaCls.loadValueParameter("CodiceFiscale", txtCodiceFiscale.Text, DbType.String, ref parametri); ProcessoVerificaCls.loadValueParameter("DataSottDA", txtDataSottDA.Text, DbType.DateTime, ref parametri); ProcessoVerificaCls.loadValueParameter("DataSottA", txtDataSottA.Text,DbType.DateTime, ref parametri); ProcessoVerificaCls.loadValueParameter("RFADA", txtRFADA.Text,DbType.Currency, ref parametri); string profilo = ""; if (CBPrudente.Checked) profilo += "1|"; if (CBModerato.Checked) profilo += "2|"; if (CBEquilibrato.Checked) profilo += "3|"; if (CBDinamico.Checked) profilo += "4|"; if (CBAggressivo.Checked) profilo += "5|"; ProcessoVerificaCls.loadValueParameter("Profilo", profilo, DbType.String, ref parametri); ProcessoVerificaCls.loadValueParameter("RFAA", txtRFAA.Text, DbType.Currency, ref parametri); ProcessoVerificaCls.loadValueParameter("VaRA", txtVaRA.Text, DbType.Currency, ref parametri); ProcessoVerificaCls.loadValueParameter("VaRDA", txtVaRDA.Text, DbType.Currency, ref parametri); ProcessoVerificaCls.loadValueParameter("Diagnosi", CBDiagnosi.Checked, DbType.Int16, ref parametri); ProcessoVerificaCls.loadValueParameter("Monitoraggio", CBMonitoraggio.Checked, DbType.Int16, ref parametri); ProcessoVerificaCls.loadValueParameter("Verificato", CheckBoxVerificato.Checked, DbType.Int16, ref parametri); ProcessoVerificaCls.loadValueParameter("NonVerificato", CheckBoxNonVerificato.Checked,DbType.Int16, ref parametri); ProcessoVerificaCls.loadValueParameter("OK", CheckBoxOK.Checked, DbType.Int16, ref parametri); ProcessoVerificaCls.loadValueParameter("KO", CheckBoxKO.Checked, DbType.Int16, ref parametri); #endregion DataTable dtDgData = DataAccess.ExecuteDataTableStoredProcedure(DBProvider.SqlServerStampeC6, "C6MartPeriodico.GC_VerificheCampioneSelect", parametri); return dtDgData; } private DataTable GetDataXmlFake() { StringBuilder xml = new StringBuilder(); xml.Append(""); xml.Append(""); xml.Append(""); xml.Append(""); xml.Append(""); xml.Append(""); xml.Append(""); xml.Append(""); xml.Append(""); xml.Append(""); xml.Append(""); xml.Append(""); xml.Append(""); xml.Append(""); xml.Append(""); xml.Append(""); xml.Append(""); xml.Append(""); xml.Append(""); xml.Append(""); xml.Append(""); xml.Append(""); xml.Append(""); xml.Append(""); xml.Append(""); xml.Append("Fideuram"); xml.Append("000011"); xml.Append("Rossi Mario "); xml.Append("Diagnosi"); xml.Append("SOP001"); xml.Append("True"); xml.Append("OK"); xml.Append("-"); xml.Append("
"); xml.Append(""); xml.Append("Fideuram"); xml.Append("000012"); xml.Append("Verdi Giovanni "); xml.Append("Monitoraggio"); xml.Append("SOP002"); xml.Append("False"); xml.Append("-"); xml.Append("-"); xml.Append("
"); xml.Append(""); xml.Append("San Paolo Invest"); xml.Append("000013"); xml.Append("Bianchi Luca "); xml.Append("Diagnosi"); xml.Append("SOP003"); xml.Append("True"); xml.Append("KO"); xml.Append("-"); xml.Append("
"); xml.Append(""); xml.Append("Fideuram"); xml.Append("000014"); xml.Append("Gialli Mario "); xml.Append("Diagnosi"); xml.Append("SOP005"); xml.Append("True"); xml.Append("OK"); xml.Append("-"); xml.Append("
"); xml.Append(""); xml.Append("Fideuram"); xml.Append("000016"); xml.Append("Rossi Mario "); xml.Append("Monitoraggio"); xml.Append("SOP006"); xml.Append("False"); xml.Append("-"); xml.Append("-"); xml.Append("
"); xml.Append("
"); System.IO.StringReader xmlSR = new System.IO.StringReader(xml.ToString()); ////// DataSet ds = new DataSet(); ds.ReadXml(xmlSR, XmlReadMode.ReadSchema); return ds.Tables["Table"]; } protected void dg_PageIndexChanging(object sender, GridViewPageEventArgs e) { dg.PageIndex = e.NewPageIndex; dg.DataSource = GetData(); dg.DataBind(); } protected void dg_RowUpdating(object sender, GridViewUpdateEventArgs e) { string rete = ((Label)dg.Rows[e.RowIndex].FindControl("lblRete")) == null ? "" : ((Label)dg.Rows[e.RowIndex].FindControl("lblRete")).Text; string codpb = ((Label)dg.Rows[e.RowIndex].FindControl("lblCodPB")) == null ? "" : ((Label)dg.Rows[e.RowIndex].FindControl("lblCodPB")).Text; string codfis = ((Label)dg.Rows[e.RowIndex].FindControl("lblCodiceFiscale")) == null ? "" : ((Label)dg.Rows[e.RowIndex].FindControl("lblCodiceFiscale")).Text; //string usermodify = ((Label)dg.Rows[e.RowIndex].FindControl("lblUserModify")) == null ? "" : ((Label)dg.Rows[e.RowIndex].FindControl("lblUserModify")).Text; string userName = User.Identity.Name; int pos = userName.IndexOf("\\") + 1; string usermodify = userName.Substring(pos, userName.Length - pos); string tiporeport = ((Label)dg.Rows[e.RowIndex].FindControl("lblTipoReport")) == null ? "" : ((Label)dg.Rows[e.RowIndex].FindControl("lblTipoReport")).Text; bool cbverificato = ((CheckBox)dg.Rows[e.RowIndex].FindControl("CheckBoxVerificaGrid")) == null ? false : ((CheckBox)dg.Rows[e.RowIndex].FindControl("CheckBoxVerificaGrid")).Checked; DropDownList ddlesito = (DropDownList)dg.Rows[e.RowIndex].FindControl("DLEsito"); string esito = ddlesito == null ? "" : ddlesito.SelectedValue; ProcessoVerificaCls.Update(dg.DataKeys[e.RowIndex].Values[0].ToString(), rete, codpb, codfis, usermodify, tiporeport, cbverificato, esito); dg.EditIndex = -1; FillDataGrid(); } protected void dg_RowEditing(object sender, GridViewEditEventArgs e) { dg.EditIndex = e.NewEditIndex; FillDataGrid(); } protected void dg_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e) { dg.EditIndex = -1; FillDataGrid(); } protected void dg_Sorting(object sender, GridViewSortEventArgs e) { string sortExpression = e.SortExpression; ViewState["SortExpression"] = sortExpression; if (GridViewSortDirection == SortDirection.Ascending) { GridViewSortDirection = SortDirection.Descending; SortGridView(sortExpression, DESCENDING); } else { GridViewSortDirection = SortDirection.Ascending; SortGridView(sortExpression, ASCENDING); } } private SortDirection GridViewSortDirection { get { if (ViewState["sortDirection"] == null) ViewState["sortDirection"] = SortDirection.Ascending; return (SortDirection)ViewState["sortDirection"]; } set { ViewState["sortDirection"] = value; } } private void SortGridView(string sortExpression, string direction) { // You can cache the DataTable for improving performance DataTable dt = GetData(); DataView dv = new DataView(dt); dv.Sort = sortExpression + direction; dg.DataSource = dv; dg.DataBind(); } }