Пример #1
0
        void rbAttivaDisattivaAll_SelectedIndexChanged(object sender, EventArgs e)
        {
            DataGridItemCollection gridItems = this.grdRuoliTitolario.Items;

            if (this.rbAttivaDisattivaAll.Items[0].Selected)
            {
                for (int j = 0; j < this.grdRuoliTitolario.Items.Count; j++)
                {
                    ((CheckBox)this.grdRuoliTitolario.Items[j].Cells[5].Controls[1]).Checked = true;
                    ((CheckBox)this.grdRuoliTitolario.Items[j].Cells[6].Controls[1]).Checked = false;
                }
            }
            else
            {
                if (this.rbAttivaDisattivaAll.Items[1].Selected)
                {
                    for (int j = 0; j < this.grdRuoliTitolario.Items.Count; j++)
                    {
                        ((CheckBox)this.grdRuoliTitolario.Items[j].Cells[5].Controls[1]).Checked = false;
                        ((CheckBox)this.grdRuoliTitolario.Items[j].Cells[6].Controls[1]).Checked = true;
                    }
                }
                else
                {
                    for (int j = 0; j < this.grdRuoliTitolario.Items.Count; j++)
                    {
                        ((CheckBox)this.grdRuoliTitolario.Items[j].Cells[5].Controls[1]).Checked = false;
                        ((CheckBox)this.grdRuoliTitolario.Items[j].Cells[6].Controls[1]).Checked = false;
                    }
                }
            }
        }
Пример #2
0
        public void Copy()
        {
            DataGridItemCollection c;
            ArrayList list;

            DataGridItem[] copy;
            DataGridItem   item;

            list = new ArrayList();
            item = new DataGridItem(0, 0, ListItemType.Item);
            list.Add(item);
            item = new DataGridItem(1, 1, ListItemType.Header);
            list.Add(item);
            item = new DataGridItem(2, 2, ListItemType.Footer);
            list.Add(item);

            c = new DataGridItemCollection(list);

            copy = new DataGridItem[3];
            Assert.AreEqual(3, c.Count, "C1");
            c.CopyTo(copy, 0);
            Assert.AreEqual(3, copy.Length, "C2");

            copy = new DataGridItem[4];
            c.CopyTo(copy, 1);
            Assert.AreEqual(4, copy.Length, "C3");
        }
Пример #3
0
    protected void SalvarTodos()
    {
        DataGridItemCollection t = dgAulas.Items;
        Label              lblAulaId;
        Label              lblAula;
        Label              lblData;
        Label              lblHora;
        Label              lblCorDaData;
        TextBox            txtDescricao;
        Label              lblDescData;
        DropDownList       ddlAtividade;
        string             hora;
        string             aux;
        string             descricao;
        DateTime           data;
        Guid               idcategoria;
        Guid               idaula;
        CategoriaAtividade categoria;
        Aula               aula;

        Guid  idturma = (Guid)Session["TurmaId"];
        Turma turma   = turmaBo.GetTurmaById(idturma);

        for (int i = 0; i < t.Count; i++)
        {
            lblAulaId    = (Label)t[i].FindControl("lblAulaId");
            lblAula      = (Label)t[i].FindControl("lblAula");
            lblData      = (Label)t[i].FindControl("lblData");
            lblHora      = (Label)t[i].FindControl("lblHora");
            txtDescricao = (TextBox)t[i].FindControl("txtDescricao");
            ddlAtividade = (DropDownList)t[i].FindControl("ddlAtividade");
            lblCorDaData = (Label)t[i].FindControl("lblCorDaData");
            lblDescData  = (Label)t[i].FindControl("lblDescData");

            idaula    = new Guid(lblAulaId.Text);
            hora      = lblHora.Text;
            data      = Convert.ToDateTime(lblData.Text);
            aux       = txtDescricao.Text;
            descricao = aux.Substring(aux.IndexOf('\n') + 1);

            idcategoria = new Guid(ddlAtividade.SelectedValue);
            categoria   = categoriaBo.GetCategoriaAtividadeById(idcategoria);

            if (t[i].BackColor != Color.LightGray && lblCorDaData.Text.Equals("False"))
            {
                t[i].BackColor = categoria.Cor;
            }


            aula = Aula.GetAula(idaula, turma, hora, data, descricao, categoria);

            aulaBo.UpdateAula(aula);

            txtDescricao.Text = lblDescData.Text + "\n" + descricao;
        }

        lblResultado.Text = "Alteração realizada com sucesso!";
    }
Пример #4
0
        public void WrongType()
        {
            DataGridItemCollection c;
            ArrayList list;

            list = new ArrayList();
            list.Add("blah");
            list.Add("argl");

            c = new DataGridItemCollection(list);

            Assert.AreEqual("blah", c[0], "E1");
        }
Пример #5
0
        public void BadIndex()
        {
            DataGridItemCollection c;
            ArrayList list;

            list = new ArrayList();
            list.Add("blah");
            list.Add("argl");

            c = new DataGridItemCollection(list);

            Assert.AreEqual("blah", c[3], "E2");
        }
Пример #6
0
        /// <summary>
        /// Restituzione di un array di oggetti "OrgRuoloTitolario"
        /// contenente i soli ruoli modificati (inseriti o cancellati)
        /// </summary>
        /// <returns></returns>
        private SAAdminTool.DocsPaWR.OrgRuoloTitolario[] GetChangedRuoliTitolario()
        {
            Hashtable originalRuoliTitolario = this.GetOriginalRuoliTitolario();

            ArrayList changedRuoli = new ArrayList();

            DataGridItemCollection gridItems = this.grdRuoliTitolario.Items;

            SAAdminTool.DocsPaWR.OrgRuoloTitolario ruoloTitolario = null;
            string idRuoloTitolario = string.Empty;
            bool   isChecked        = false;

            foreach (DataGridItem gridItem in gridItems)
            {
                CheckBox checkBox =
                    gridItem.Cells[GRIDCOL_GRUPPOASSOCIATO].Controls[0].FindControl("chkRuoloAttivo") as CheckBox;

                if (checkBox != null)
                {
                    idRuoloTitolario = gridItem.Cells[GRIDCOL_ID_RUOLO].Text;
                    isChecked        = checkBox.Checked;

                    // Viene verificato se l'associazione del ruolo è stata modificata
                    if (originalRuoliTitolario.ContainsKey(idRuoloTitolario))
                    {
                        ruoloTitolario = (SAAdminTool.DocsPaWR.OrgRuoloTitolario)originalRuoliTitolario[idRuoloTitolario];

                        // Se il ruolo risulta modificato, viene inserito nell'hashtable
                        if (!ruoloTitolario.Associato.Equals(isChecked))
                        {
                            ruoloTitolario.Associato = isChecked;
                            changedRuoli.Add(ruoloTitolario);
                        }

                        ruoloTitolario = null;
                    }
                }
            }

            gridItems = null;

            SAAdminTool.DocsPaWR.OrgRuoloTitolario[] retValue = new SAAdminTool.DocsPaWR.OrgRuoloTitolario[changedRuoli.Count];
            changedRuoli.CopyTo(retValue);

            changedRuoli.Clear();
            changedRuoli = null;

            return(retValue);
        }
Пример #7
0
        /// <summary>
        /// Gestione selezione / deselezione di tutti i checkbox colonna associa
        /// </summary>
        /// <param name="value"></param>
        private void SelectAllCheck(bool value)
        {
            DataGridItemCollection gridItems = this.grdRuoliTitolario.Items;

            foreach (DataGridItem gridItem in gridItems)
            {
                CheckBox checkBox =
                    gridItem.Cells[GRIDCOL_GRUPPOASSOCIATO].Controls[0].FindControl("chkRuoloAttivo") as CheckBox;

                if (checkBox != null)
                {
                    checkBox.Checked = value;
                }
            }
        }
Пример #8
0
        private void verificaSelezione()
        {
            DataGridItemCollection gridItems = this.grdRuoliTitolario.Items;

            for (int j = 0; j < this.grdRuoliTitolario.Items.Count; j++)
            {
                if (((CheckBox)this.grdRuoliTitolario.Items[j].Cells[5].Controls[1]).Checked)
                {
                    if (((CheckBox)this.grdRuoliTitolario.Items[j].Cells[6].Controls[1]).Checked)
                    {
                        this.RegisterClientScript("alertMsg", "alert('Non è possibile Attivare e Disattivare contemporanemente la visibilità del titolario per un dato ruolo.');");
                        ((CheckBox)this.grdRuoliTitolario.Items[j].Cells[6].Controls[1]).Checked = false;
                    }
                }
            }
        }
Пример #9
0
        public void Defaults()
        {
            DataGridItemCollection c;
            ArrayList    list;
            DataGridItem item;

            list = new ArrayList();
            item = new DataGridItem(0, 0, ListItemType.Item);
            list.Add(item);
            c = new DataGridItemCollection(list);

            Assert.AreEqual(1, c.Count, "D1");
            Assert.AreEqual(item, c[0], "D2");

            // Copy or ref?
            item = new DataGridItem(1, 1, ListItemType.Header);
            list.Add(item);
            Assert.AreEqual(2, c.Count, "D3");
            Assert.AreEqual(ListItemType.Header, c[1].ItemType, "D4");
        }
Пример #10
0
        public void BadTypeCopy()
        {
            DataGridItemCollection c;
            ArrayList    list;
            Array        copy;
            DataGridItem item;

            list = new ArrayList();
            item = new DataGridItem(0, 0, ListItemType.Item);
            list.Add(item);
            item = new DataGridItem(1, 1, ListItemType.Header);
            list.Add(item);
            item = new DataGridItem(2, 2, ListItemType.Footer);
            list.Add(item);

            c = new DataGridItemCollection(list);

            copy = new Array[2];
            c.CopyTo(copy, 0);
        }
Пример #11
0
        /// <summary>
        /// Gestione selezione / deselezione di tutti i checkbox colonna associa
        /// </summary>
        /// <param name="value"></param>
        private void SelectAllCheck(bool value)
        {
            DataGridItemCollection gridItems = this.DataGrid1.Items;

            string[] IdProfiles = RicercaDocumentiControllatiSessionMng.GetListaIdProfile(this);
            if (IdProfiles != null)
            {
                ViewState["SelectDeselectAllChecked"] = value;

                // foreach (DataGridItem gridItem in gridItems)
                foreach (string infoD in IdProfiles)
                {
                    if (value)
                    {
                        if (!hash_checked.ContainsKey(infoD))
                        {
                            hash_checked.Add(infoD, infoD);
                        }
                    }
                    else
                    {
                        if (hash_checked.Contains(infoD))
                        {
                            hash_checked.Remove(infoD);
                        }
                    }
                }
                foreach (DataGridItem gridItem in gridItems)
                {
                    string   dataAnnull = ((Label)gridItem.Cells[5].Controls[1]).Text;
                    CheckBox checkBox   =
                        gridItem.Cells[0].Controls[0].FindControl("chkFascicola") as CheckBox;

                    //salto il settaggio del valore per i checkbox relativi a documenti annullati
                    if (checkBox != null && string.IsNullOrEmpty(dataAnnull))
                    {
                        checkBox.Checked = value;
                    }
                }
            }
        }
Пример #12
0
        public void OutOfBounds2()
        {
            DataGridItemCollection c;
            ArrayList list;

            DataGridItem[] copy;
            DataGridItem   item;

            list = new ArrayList();
            item = new DataGridItem(0, 0, ListItemType.Item);
            list.Add(item);
            item = new DataGridItem(1, 1, ListItemType.Header);
            list.Add(item);
            item = new DataGridItem(2, 2, ListItemType.Footer);
            list.Add(item);

            c = new DataGridItemCollection(list);

            copy = new DataGridItem[3];
            c.CopyTo(copy, 1);
        }
Пример #13
0
        protected void btnBatchDelete_Click(object sender, EventArgs e)
        {
            List <int>             ids   = new List <int>();
            DataGridItemCollection items = this.dgLinkList.Items;

            foreach (DataGridItem item in items)
            {
                CheckBox chkIsSelect = item.FindControl("chkIsSelect") as CheckBox;
                if (chkIsSelect != null && chkIsSelect.Checked)
                {
                    ids.Add(Convert.ToInt32(this.dgLinkList.DataKeys[item.ItemIndex]));
                }
            }

            foreach (int id in ids)
            {
                LinkFactory.Delete(id);
            }

            this.LoadListData();
        }
Пример #14
0
        private void InitTestGetRespondentsForQuestion(bool withException, ListItemType itemType)
        {
            InitCommon();
            var dataGridItemsList = new ArrayList();

            dataGridItemsList.Add(new DataGridItem(2, 2, ListItemType.Pager));
            dataGridItemsList.Add(new DataGridItem(1, 1, itemType));
            dataGridItemsList.Add(new DataGridItem(0, 0, itemType));
            var dataGridItems = new DataGridItemCollection(dataGridItemsList);

            ShimDataGrid.AllInstances.ItemsGet              = (grid) => dataGridItems;
            ShimBaseDataList.AllInstances.DataKeysGet       = (d) => new ShimDataKeyCollection();
            ShimDataKeyCollection.AllInstances.ItemGetInt32 = (col, id) =>
            {
                return(id == 0
                     ? QuestionId
                     : DefaultQuestionId);
            };
            ShimControl.AllInstances.FindControlString = (c, name) =>
            {
                if (name == "lblQuestionTotal")
                {
                    if (withException)
                    {
                        return(new TextBox());
                    }
                    else
                    {
                        return(new Label()
                        {
                            Text = QuestionTotalValue
                        });
                    }
                }
                return(null);
            };
        }
Пример #15
0
    // Salva o conteudo das linhas alteradas no BD
    private void AtualizaTodaGrade()
    {
        DataGridItemCollection t = dgAulas.Items;
        Label              lblAulaId;
        Label              lblAula;
        Label              lblData;
        Label              lblHora;
        Label              lblCorDaData;
        TextBox            txtDescricao;
        Label              lblDescData;
        DropDownList       ddlAtividade;
        CheckBox           cbChanged;
        ImageButton        butConfirm;
        string             hora;
        string             aux;
        string             descricao;
        DateTime           data;
        Guid               idcategoria;
        Guid               idaula;
        CategoriaAtividade categoria;
        Aula               aula;

        Guid  idturma = (Guid)Session["TurmaId"];
        Turma turma   = turmaBo.GetTurmaById(idturma);

        int totalLinhas = 0;

        for (int i = 0; i < t.Count; i++)
        {
            cbChanged  = (CheckBox)t[i].FindControl("cbChanged");
            butConfirm = (ImageButton)t[i].FindControl("butConfirm");
            // Se a linha não foi modificada, pula ela

            // NAO FUNCIONA!
            //if(butConfirm.ImageUrl == "~/_layouts/images/STARgray.gif")
            //	continue;

            if (!cbChanged.Checked)
            {
                continue;
            }
            cbChanged.Checked = false;

            // NAO FUNCIONA!
            //if (!butConfirm.Enabled)
            //	continue;

            butConfirm.Enabled  = false;
            butConfirm.ImageUrl = "~/_layouts/images/STARgray.gif";

            totalLinhas++;

            lblAulaId    = (Label)t[i].FindControl("lblAulaId");
            lblAula      = (Label)t[i].FindControl("lblAula");
            lblData      = (Label)t[i].FindControl("lblData");
            lblHora      = (Label)t[i].FindControl("lblHora");
            txtDescricao = (TextBox)t[i].FindControl("txtDescricao");
            ddlAtividade = (DropDownList)t[i].FindControl("ddlAtividade");
            lblCorDaData = (Label)t[i].FindControl("lblCorDaData");
            lblDescData  = (Label)t[i].FindControl("lblDescData");

            idaula    = new Guid(lblAulaId.Text);
            hora      = lblHora.Text;
            data      = Convert.ToDateTime(lblData.Text);
            aux       = txtDescricao.Text;
            descricao = aux.Substring(aux.IndexOf('\n') + 1);

            idcategoria = new Guid(ddlAtividade.SelectedValue);
            categoria   = categoriaBo.GetCategoriaAtividadeById(idcategoria);

            if (t[i].BackColor != Color.LightGray && lblCorDaData.Text.Equals("False"))
            {
                t[i].BackColor = categoria.Cor;
            }

            //FIXME: não deveria atualizar apenas descricao e categoria??
            aula = Aula.GetAula(idaula, turma, hora, data, descricao, categoria);

            aulaBo.UpdateAula(aula);

            txtDescricao.Text = lblDescData.Text + "\n" + descricao;
        }
        lblResultado.Text = "Alteração realizada com sucesso (" + totalLinhas.ToString() + " linhas)";

        // TODO: alterar nome do botão.
        btnSalvarTudo.Text    = "Salvo";
        btnSalvarTudo.Enabled = false;
        //Button salvar = (Button)sender;
        //salvar.Text = "Salvo";
        //salvar.Enabled = false;

        ScriptManager.RegisterClientScriptBlock(this, GetType(), "OnClick",
                                                @"releaseDirtyFlag();", true);
    }
Пример #16
0
        private string InitTestRepQuestionsItemCommand(string lblQuestiontypeValue)
        {
            InitCommon();
            var repItemsList = new ArrayList();

            repItemsList.Add(new RepeaterItem(0, ListItemType.Item));
            repItemsList.Add(new RepeaterItem(0, ListItemType.Item));
            var repItemCollection = new RepeaterItemCollection(repItemsList);
            var dataGridItemsList = new ArrayList();

            dataGridItemsList.Add(new DataGridItem(0, 0, ListItemType.Item));
            dataGridItemsList.Add(new DataGridItem(0, 0, ListItemType.Item));
            var dataGridItemsCollections = new DataGridItemCollection(dataGridItemsList);

            ShimDataGrid.AllInstances.ItemsGet                = (g) => dataGridItemsCollections;
            ShimTableRow.AllInstances.CellsGet                = (t) => new ShimTableCellCollection();
            ShimTableCellCollection.AllInstances.CountGet     = (t) => 6;
            ShimTableCellCollection.AllInstances.ItemGetInt32 = (t, id) => new TableCell();
            ShimRepeater.AllInstances.ItemsGet                = (r) => repItemCollection;
            ShimTableCell.AllInstances.TextGet                = (c) => "0";
            ShimSurveyReport.AllInstances.LoadQuestionGrid    = (p) => { };
            ShimSurveyReport.AllInstances.LoadRespondentGrid  = (p) => { };
            ShimControl.AllInstances.FindControlString        = (c, id) =>
            {
                switch (id)
                {
                case LblQIDId: return(new Label()
                    {
                        Text = "1"
                    });

                case LblOIDId: return(new Label()
                    {
                        Text = "1"
                    });

                case RepAnswersId: return(new Repeater());

                case DgGridResponseId: return(new DataGrid());

                case LblQuestiontypeId: return(new Label()
                    {
                        Text = lblQuestiontypeValue
                    });

                case LblQuestionIDId: return(new Label()
                    {
                        Text = "10"
                    });

                case PlCheckboxId: return(new PlaceHolder());

                case "checkbox_0_0_0":
                case "checkbox_1_1": return(new CheckBox()
                    {
                        Checked = true
                    });

                default: return(null);
                }
            };
            return(lblQuestiontypeValue == "grid"
                ? "0|0|0,0|0|0,0|0|0,0|0|0"
                : "1|1,1|1,1|1,1|1");
        }
Пример #17
0
        protected void btnSave_Click(object sender, EventArgs e)
        {
            string sReturn = "";
            string studID  = "";

            lblUnselectCheck.Text = "";
            int iCount = 0;

            if (hidRightsFlag.Value == "0")
            {
                DataGridItemCollection items = DG_University.Items;
                for (int i = 0; i < items.Count; i++)
                {
                    CheckBox cb = (CheckBox)items[i].FindControl("chkSelect");
                    if ((cb != null) && (cb.Checked == true))
                    {
                        studID += DG_University.DataKeys[i].ToString().Trim() + ",";
                        iCount  = iCount + 1;
                    }
                }
            }
            else
            {
                if (DG_College.Items.Count > 0)
                {
                    iCount = DG_College.Items.Count;
                }
            }

            sReturn = clsEligibilityRights.Bulk_Process_Eligibility_Data(hidUniID.Value, hidYear.Value, hidInstID.Value, hidCrMoLrnPtrnID.Value, hidCrPrID.Value, studID, hidCollege_Eligibility_Flag.Value, "1", "", sUser);
            if (sReturn == "Y")
            {
                string  SMSreturn  = "";
                string  SMSMessage = "";
                clsUser u          = (clsUser)Session["User"]; //Added By Saroj on 1st Nov 2007
                try
                {
                    SendSMS objSendSMS = new SendSMS();
                    DataSet ds         = clsEligibilityRights.FetchRegisteredStudentDetailsForSMS(hidUniID.Value, hidYear.Value, hidInstID.Value, hidCrMoLrnPtrnID.Value, hidCrPrID.Value, studID);
                    if (ds != null)
                    {
                        //if (ds.Tables.Count > 0)
                        //{
                        //    for (int i = 0; i < ds.Tables.Count; i++)
                        //    {
                        //        SMSMessage = "Congrats " + ds.Tables[i].Rows[0]["FirstName"].ToString() + ",U R elgble for " + ds.Tables[i].Rows[0]["CrAbbr"].ToString() + ",PRN:" + ds.Tables[i].Rows[0]["PRN"].ToString() + ",Collect eSuvidha LoginId,Password from college and visit " + UniversityPortal.clsGetSettings.SitePath.Replace("http://","");
                        //        objSendSMS.epMessage = SMSMessage;
                        //        SMSreturn = objSendSMS.SendPersonalizedSMS(ds.Tables[i].Rows[0]["MobileNumber"].ToString().Trim(), "ELG" + ds.Tables[i].Rows[0]["EligibilityFormNo"].ToString());
                        //    }
                        //}
                        if (ds.Tables[0].Rows.Count > 0)
                        {
                            for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                            {
                                //SMSMessage = "Congrats " + hidSMSFirstName.Value + ",You are eligible for " + hidSMSCrAbbr.Value + " of " + TripleDESEncryption.clsAppSettings.DecryptAppsettings().AppSettings["SMSPcode"].ToString().ToUpper() + ". Your PRN:" + PRN + ".";
                                SMSMessage           = "Congrats " + ds.Tables[0].Rows[i]["FirstName"].ToString() + ",You are eligible for " + ds.Tables[0].Rows[i]["CrAbbr"].ToString() + " of " + TripleDESEncryption.clsAppSettings.DecryptAppsettings().AppSettings["SMSPcode"].ToString().ToUpper() + ". Your PRN:" + ds.Tables[0].Rows[i]["PRN"].ToString();
                                objSendSMS.epMessage = SMSMessage;
                                objSendSMS.epUser    = u.User_ID; //Added By Saroj on 1st Nov 2007
                                SMSreturn            = objSendSMS.SendPersonalizedSMS(ds.Tables[0].Rows[i]["MobileNumber"].ToString().Trim(), "ELG" + ds.Tables[0].Rows[i]["EligibilityFormNo"].ToString());
                            }
                        }
                    }
                }
                catch (Exception ex)
                {
                    string sMsg      = ex.Message;
                    string strScript = "<script language=JavaScript>alert('" + sMsg + "');</Script>";
                    ClientScript.RegisterStartupScript(this.GetType(), "key1", strScript);
                }
                lblSave.Visible    = true;
                lblSave.CssClass   = "SaveNote";
                lblSave.Text       = "Eligibility processed for " + iCount + " students and PRN generated successfully.<br>To view list of eligible students and PRN generated click on \"View Eligible Students With PRN\" link.";
                lblUniCollPrn.Text = "";
                displayGrids();
            }
            else
            {
                lblSave.CssClass = "ErrorNote";
                lblSave.Text     = "System has encountered an error during Process.<br>Please try again later";
            }
        }
Пример #18
0
        private void btn_ok_Click(object sender, System.EventArgs e)
        {
            string idCorr   = string.Empty;
            string idCanale = string.Empty;
            bool   acceptCanaleTutti;

            DocsPaWR.Canale           canale = new DocsPAWA.DocsPaWR.Canale();
            DocsPaWR.DocsPaWebService ws     = new DocsPAWA.DocsPaWR.DocsPaWebService();
            schedaDoc = DocumentManager.getDocumentoInLavorazione(this);
            DocsPaWR.Corrispondente[] dest   = ((DocsPAWA.DocsPaWR.ProtocolloUscita)schedaDoc.protocollo).destinatari;
            DocsPaWR.Corrispondente[] destCc = ((DocsPAWA.DocsPaWR.ProtocolloUscita)schedaDoc.protocollo).destinatariConoscenza;

            if (dataGridMezzi != null)
            {
                Canale canaleTutti = null;
                if (!ddlTutti.SelectedValue.Equals("0"))
                {
                    canaleTutti = ws.getCanaleBySystemId(ddlTutti.SelectedValue);
                }
                DataGridItemCollection items = dataGridMezzi.Items;
                if (items != null)
                {
                    //itero sui singoli item della griglia
                    foreach (DataGridItem item in items)
                    {
                        string tipoDest           = string.Empty;
                        TableCellCollection cells = item.Cells;
                        foreach (TableCell cell in cells)
                        {
                            ControlCollection controls = cell.Controls;
                            foreach (Control control in controls)
                            {
                                if (control.GetType() == typeof(Label))
                                {
                                    idCorr = ((Label)control).Text;
                                    break;
                                }

                                if (control.GetType() == typeof(DropDownList))
                                {
                                    idCanale = ((DropDownList)control).SelectedValue;
                                    break;
                                }
                            }
                        }

                        if (dest != null && dest.Length > 0)
                        {
                            acceptCanaleTutti = false;
                            foreach (DocsPaWR.Corrispondente corr in dest)
                            {
                                // se è impostato il canale tutti ed il corrispondente corrente ha visibilità del mezzo di spedizione tutti allora lo imposto
                                if (corr.systemId.Equals(idCorr) && canaleTutti != null)
                                {
                                    System.Collections.Generic.List <Mezzi> listMezziVisCorr = GetMeansDeliveryFiltered(UserManager.getCorrispondenteBySystemID(this.Page, idCorr).canalePref, idCorr);
                                    foreach (Mezzi m in listMezziVisCorr)
                                    {
                                        if (m.Descrizione.Equals(canaleTutti.descrizione) && m.Valore.Equals(canaleTutti.systemId))
                                        {
                                            acceptCanaleTutti = true;
                                            corr.canalePref   = canaleTutti;
                                            tipoDest          = "d";
                                            break;
                                        }
                                    }
                                }

                                //l'utente a selezionata blank quindi reimposto il canale di default
                                if (!acceptCanaleTutti && corr.systemId.Equals(idCorr) && (idCanale.Equals("0")))
                                {
                                    if (corr.canalePref != null && corr.canalePref.systemId != null)
                                    {
                                        canale          = UserManager.getCorrispondenteBySystemID(this.Page, idCorr).canalePref;
                                        corr.canalePref = canale;
                                        tipoDest        = "d";
                                        break;
                                    }
                                }
                                //imposto il canale selezionato dall'utente
                                else if (!acceptCanaleTutti && corr.systemId.Equals(idCorr))
                                {
                                    canale          = ws.getCanaleBySystemId(idCanale);
                                    corr.canalePref = canale;
                                    tipoDest        = "d";
                                    break;
                                }
                            }
                        }
                        if (destCc != null && destCc.Length > 0 && (!tipoDest.Equals("d")))
                        {
                            acceptCanaleTutti = false;
                            foreach (DocsPaWR.Corrispondente corr in destCc)
                            {
                                // se è impostato il canale tutti ed il corrispondente corrente ha visibilità del mezzo di spedizione tutti allora lo imposto
                                if (corr.systemId.Equals(idCorr) && canaleTutti != null)
                                {
                                    System.Collections.Generic.List <Mezzi> listMezziVisCorr = GetMeansDeliveryFiltered(UserManager.getCorrispondenteBySystemID(this.Page, idCorr).canalePref, idCorr);
                                    foreach (Mezzi m in listMezziVisCorr)
                                    {
                                        if (m.Descrizione.Equals(canaleTutti.descrizione) && m.Valore.Equals(canaleTutti.systemId))
                                        {
                                            acceptCanaleTutti = true;
                                            corr.canalePref   = canaleTutti;
                                            tipoDest          = "d";
                                            break;
                                        }
                                    }
                                }

                                //l'utente a selezionata blank quindi reimposto il canale di default
                                if (!acceptCanaleTutti && corr.systemId.Equals(idCorr) && (idCanale.Equals("0")))
                                {
                                    if (corr.canalePref != null && corr.canalePref.systemId != null)
                                    {
                                        canale          = UserManager.getCorrispondenteBySystemID(this.Page, idCorr).canalePref;
                                        corr.canalePref = canale;
                                        break;
                                    }
                                }
                                //imposto il canale selezionato dall'utente
                                else if (!acceptCanaleTutti && corr.systemId.Equals(idCorr))
                                {
                                    canale          = ws.getCanaleBySystemId(idCanale);
                                    corr.canalePref = canale;
                                    break;
                                }
                            }
                        }
                    }
                }
            }

            //Salvo le informazioni aggiornate nella sessione
            ((DocsPAWA.DocsPaWR.ProtocolloUscita)schedaDoc.protocollo).destinatari           = dest;
            ((DocsPAWA.DocsPaWR.ProtocolloUscita)schedaDoc.protocollo).destinatariConoscenza = destCc;
            DocumentManager.setDocumentoInLavorazione(this, schedaDoc);
            DocumentManager.setDocumentoSelezionato(this, schedaDoc);

            //richiama la funzione javascript che aggiorna il form chiamante
            string funct = " window.open('../documento/docProtocollo.aspx?editMode=true','IframeTabs'); ";

            funct = funct + " window.close(); ";
            Response.Write("<script> " + funct + "</script>");
        }