Esempio n. 1
0
        /// /////////////////////////////////////////////////////////
        public void CommitParametresHotelPolling()
        {
            List <CSnmpHotelPollingSetup> lstParametres = ParametresHotelPollingList;

            CContexteDonnee.ChangeRowSansDetectionModification(Row.Row, c_champCacheParametresHotelPolling, DBNull.Value);
            CDonneeBinaireInRow data = DataParametresHotelPolling;

            if (lstParametres == null)
            {
                data.Donnees = null;
            }
            else
            {
                MemoryStream stream = new MemoryStream();
                try
                {
                    BinaryWriter           writer = new BinaryWriter(stream);
                    CSerializerSaveBinaire ser    = new CSerializerSaveBinaire(writer);
                    CResultAErreur         result = ser.TraiteListe <CSnmpHotelPollingSetup>(lstParametres);
                    data.Donnees = stream.GetBuffer();
                    writer.Close();
                }
                catch
                {
                    data.Donnees = null;
                }
                stream.Close();
            }
            DataParametresHotelPolling = data;
        }
Esempio n. 2
0
        /// /////////////////////////////////////////////////////////
        public void CommitFinders()
        {
            List <CAgentFinderFromKey> lstFinders = AgentFinderList;

            CContexteDonnee.ChangeRowSansDetectionModification(Row.Row, c_champCacheAgentFinders, DBNull.Value);
            CDonneeBinaireInRow data = DataAgentFinders;

            if (lstFinders == null)
            {
                data.Donnees = null;
            }
            else
            {
                MemoryStream stream = new MemoryStream();
                try
                {
                    BinaryWriter           writer = new BinaryWriter(stream);
                    CSerializerSaveBinaire ser    = new CSerializerSaveBinaire(writer);
                    CResultAErreur         result = ser.TraiteListe <CAgentFinderFromKey>(lstFinders);
                    data.Donnees = stream.GetBuffer();
                    writer.Close();
                }
                catch
                {
                    data.Donnees = null;
                }
                stream.Close();
            }
            DataAgentFinders = data;
        }
Esempio n. 3
0
        /// <summary>
        /// mutualise la récupération des formules
        /// </summary>
        /// <param name="strChampCache"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        private C2iExpression GetFormule(string strChampCache, CDonneeBinaireInRow data)
        {
            C2iExpression formule = null;

            if (Row[strChampCache] != DBNull.Value)
            {
                return((C2iExpression)Row[strChampCache]);
            }
            if (data != null && data.Donnees != null)
            {
                Stream stream = new MemoryStream(data.Donnees);
                try
                {
                    BinaryReader           reader = new BinaryReader(stream);
                    CSerializerReadBinaire ser    = new CSerializerReadBinaire(reader);
                    CResultAErreur         result = ser.TraiteObject <C2iExpression>(ref formule);
                    if (!result)
                    {
                        formule = null;
                    }
                    else
                    {
                        CContexteDonnee.ChangeRowSansDetectionModification(Row.Row, strChampCache, formule);
                    }
                    reader.Close();
                    stream.Close();
                }
                catch
                {
                }
            }
            return(formule);
        }
Esempio n. 4
0
 /// <summary>
 /// Mutualise l'affectation des formules
 /// </summary>
 /// <param name="strChampCache"></param>
 /// <param name="data"></param>
 /// <param name="formule"></param>
 private void SetFormule(string strChampCache, ref CDonneeBinaireInRow data, C2iExpression formule)
 {
     CContexteDonnee.ChangeRowSansDetectionModification(Row.Row, strChampCache, DBNull.Value);
     if (formule == null)
     {
         data.Donnees = null;
     }
     else
     {
         MemoryStream stream = new MemoryStream();
         try
         {
             BinaryWriter           writer = new BinaryWriter(stream);
             CSerializerSaveBinaire ser    = new CSerializerSaveBinaire(writer);
             CResultAErreur         result = ser.TraiteObject <C2iExpression>(ref formule);
             data.Donnees = stream.GetBuffer();
             writer.Close();
         }
         catch
         {
             data.Donnees = null;
         }
         stream.Close();
     }
 }
Esempio n. 5
0
        public void CommitListPlages()
        {
            List <CPlageIP> listePlages = PlagesIP;

            CContexteDonnee.ChangeRowSansDetectionModification(Row.Row, c_champCacheListePlages, DBNull.Value);
            CDonneeBinaireInRow data = DataListePlagesIp;

            if (listePlages == null)
            {
                data.Donnees      = null;
                DataListePlagesIp = data;
            }
            else
            {
                MemoryStream stream = new MemoryStream();
                try
                {
                    BinaryWriter           writer     = new BinaryWriter(stream);
                    CSerializerSaveBinaire serializer = new CSerializerSaveBinaire(writer);
                    CResultAErreur         result     = serializer.TraiteListe <CPlageIP>(listePlages);
                    writer.Close();
                    if (result)
                    {
                        data.Donnees = stream.GetBuffer();
                    }
                }
                catch
                {
                    data.Donnees = null;
                }
                finally
                {
                    stream.Close();
                }
                DataListePlagesIp = data;
            }
        }
        //---------------------------------------------
        private void ShowProprietes(CObjetDonneeAIdNumerique objet)
        {
            if (objet == null)
            {
                m_grilleProprietes.DataSource = null;
                return;
            }

            DataTable table = new DataTable();

            m_strColChamp            = I.T("Field|120");
            m_strColValeurHistorique = I.T("History|121");
            m_strColValeurCourante   = I.T("Current|122");


            DataColumn col = new DataColumn(m_strColChecked, typeof(bool));

            col.Caption = "";
            table.Columns.Add(col);

            table.Columns.Add(m_strColChamp);
            if (m_version.TypeVersion.Code != CTypeVersion.TypeVersion.Previsionnelle)
            {
                table.Columns.Add(m_strColValeurHistorique);
            }
            table.Columns.Add(m_strColValeurCourante);
            if (m_version.TypeVersion.Code == CTypeVersion.TypeVersion.Previsionnelle)
            {
                m_strColValeurHistorique = I.T("Version|123");
                table.Columns.Add(m_strColValeurHistorique);
            }
            table.Columns.Add(m_strColObjetHistorique, typeof(IChampPourVersion));

            CValeursHistorique valeurs = GetValeursHistorique(objet);

            m_valeursAffichees = valeurs;
            m_objetAffiche     = objet;
            CStructureTable structure = CStructureTable.GetStructure(objet.GetType());

            foreach (CInfoChampTable champ in structure.Champs)
            {
                if (champ.Propriete != "")
                {
                    DataRow row = table.NewRow();
                    row[m_strColChecked]         = false;
                    row[m_strColChamp]           = champ.NomConvivial;
                    row[m_strColObjetHistorique] = DBNull.Value;

                    if (champ.TypeDonnee == typeof(CDonneeBinaireInRow))
                    {
                        CDonneeBinaireInRow donnee = new CDonneeBinaireInRow(objet.ContexteDonnee.IdSession, objet.Row.Row, champ.NomChamp);
                        row[m_strColValeurCourante] = donnee.Donnees;
                    }
                    else
                    {
                        row[m_strColValeurCourante] = objet.Row[champ.NomChamp];
                    }

                    CChampPourVersionInDb champVersion = new CChampPourVersionInDb(champ.NomChamp, champ.NomConvivial);
                    if (valeurs.ContainsKey(champVersion))
                    {
                        row[m_strColObjetHistorique] = champVersion;
                        object val = valeurs[champVersion];
                        if (val == null)
                        {
                            row[m_strColValeurHistorique] = DBNull.Value;
                        }
                        else
                        {
                            row[m_strColValeurHistorique] = val.ToString();
                        }
                    }
                    else
                    {
                        row[m_strColValeurHistorique] = objet.Row[champ.NomChamp];
                    }
                    table.Rows.Add(row);
                }
            }

            //Champs custom
            if (objet is IElementAChamps)
            {
                Dictionary <CChampCustom, bool> lstChamps = new Dictionary <CChampCustom, bool>();
                foreach (IDefinisseurChampCustom definisseur in ((IElementAChamps)objet).DefinisseursDeChamps)
                {
                    foreach (CChampCustom champ in definisseur.TousLesChampsAssocies)
                    {
                        if (champ.TypeDonneeChamp.TypeDonnee != TypeDonnee.tObjetDonneeAIdNumeriqueAuto)
                        {
                            lstChamps[champ] = true;
                        }
                    }
                }
                foreach (CChampCustom champCustom in lstChamps.Keys)
                {
                    DataRow row = table.NewRow();
                    row[m_strColChecked]         = false;
                    row[m_strColChamp]           = champCustom.LibelleConvivial;
                    row[m_strColObjetHistorique] = DBNull.Value;
                    row[m_strColValeurCourante]  = ((IElementAChamps)objet).GetValeurChamp(champCustom.Id);
                    CChampCustomPourVersion chVersion = new CChampCustomPourVersion(champCustom);
                    if (valeurs.ContainsKey(chVersion))
                    {
                        row[m_strColObjetHistorique] = chVersion;
                        object val = valeurs[chVersion];
                        if (val == null)
                        {
                            row[m_strColValeurHistorique] = DBNull.Value;
                        }
                        else
                        {
                            row[m_strColValeurHistorique] = val.ToString();
                        }
                    }
                    else
                    {
                        row[m_strColValeurHistorique] = row[m_strColValeurCourante];
                    }
                    table.Rows.Add(row);
                }
            }
            table.DefaultView.Sort              = m_strColChamp;
            m_grilleProprietes.DataSource       = table;
            m_grilleProprietes.ReadOnly         = false;
            m_grilleProprietes.Columns[0].Width = 32;
            foreach (DataGridViewColumn colTmp in m_grilleProprietes.Columns)
            {
                colTmp.ReadOnly = true;
            }
            m_grilleProprietes.Columns[0].ReadOnly = false;
            if (!m_bCanRestore)
            {
                m_grilleProprietes.Columns[0].Visible = false;
            }
            m_grilleProprietes.Columns[m_grilleProprietes.Columns.Count - 1].Visible = false;
        }