示例#1
0
        //Recupera la lista di fascicoli procedimentali chiusi appartenenti al nodo selezionato, in deposito
        private void caricaDataTablesFascicoli(int numPage, out int nRec, out int numTotPage)
        {
            nRec       = 0;
            numTotPage = 0;
            try
            {
                dataTableProt = new ArrayList();
                DocsPaWR.Fascicolo[] listaFasc = null;

                //Posso ricercare i fascicoli procedimentali chiusi per:
                //codice fascicolo: C
                //tutti: T
                //mesi di conservazione: M
                string tipoRic = Request.QueryString["tipoR"];
                if (tipoRic == "C")
                {
                    DocsPAWA.DocsPaWR.Fascicolo fascicolo;
                    fascicolo = FascicoliManager.getFascicoloSelezionato(this);
                    if (fascicolo != null)
                    {
                        listaFasc = FascicoliManager.getListaFascicoliInDeposito(this, fascicolo, numPage, out numTotPage, out nRec, "C");
                    }
                    FascicoliManager.removeFascicoloSelezionato();
                    Session.Add("totRec", nRec);
                }
                if (tipoRic == "T")
                {
                    listaFasc = FascicoliManager.getListaFascicoliInDeposito(this, null, numPage, out numTotPage, out nRec, tipoRic);
                    Session.Add("totRec", nRec);
                }
                if (tipoRic == "R")
                {
                    listaFasc     = FascicoliManager.getListaFascicoliInGriglia(this);
                    dataTableProt = FascicoliManager.getDataTableDocDaArchiv(this);
                    nRec          = Convert.ToInt32(Session["totRec"]);
                }

                this.TotalRecordCount         = nRec;
                this.dg_Fasc.VirtualItemCount = this.TotalRecordCount;
                if (listaFasc != null && tipoRic != "R")
                {
                    if (listaFasc.Length > 0)
                    {
                        for (int i = 0; i < listaFasc.Length; i++)
                        {
                            DocsPaWR.Fascicolo fasc = listaFasc[i];
                            //if (fasc.inScarto == "0")
                            //{
                            //calcolo mesi: oggi - chiusura = mesi dalla chiusura
                            int      numMesi  = 0;
                            DateTime today    = DateTime.Today;
                            DateTime chiusura = Convert.ToDateTime(fasc.chiusura);

                            if (today.Year == chiusura.Year)
                            {
                                numMesi = today.Month - chiusura.Month;
                            }
                            if (today.Year > chiusura.Year)
                            {
                                int intervallo = today.Year - chiusura.Year;
                                numMesi = today.Month - chiusura.Month + (12 * intervallo);
                            }

                            string numMesiChiusura = numMesi.ToString();

                            dataTableProt.Add(new Cols(fasc.stato, fasc.tipo, fasc.codiceGerarchia, fasc.codice, fasc.descrizione, fasc.chiusura, fasc.numMesiConservazione, numMesiChiusura, fasc.inScarto, i));
                            //}
                        }
                    }
                }

                FascicoliManager.setListaFascicoliInGriglia(this, listaFasc);
                //impostazione datatable in sessione
                FascicoliManager.setDataTableDocDaArchiv(this, dataTableProt);
            }
            catch (Exception es)
            {
                ErrorManager.redirect(this, es);
            }
        }