/// //////////////////////////////////////////////////////////////
        protected override sc2i.common.CResultAErreur MyExecute(CContexteExecutionAction contexte)
        {
            CResultAErreur result = CResultAErreur.True;
            IDeclencheurActionSurServeur declencheur = (IDeclencheurActionSurServeur)C2iFactory.GetNewObjetForSession("CDeclencheurActionSurServeur", typeof(IDeclencheurActionSurServeur), contexte.IdSession);

            if (declencheur == null)
            {
                result.EmpileErreur(I.T("Release action allocation server fail|187"));
                return(result);
            }

            CContexteEvaluationExpression contexteEval = new CContexteEvaluationExpression(Process);

            contexteEval.AttacheObjet(typeof(CContexteDonnee), contexte.ContexteDonnee);

            Hashtable valeursParametres = new Hashtable();

            foreach (DictionaryEntry entry in m_tableValeursParametres)
            {
                string        strProp    = (string)entry.Key;
                C2iExpression expression = (C2iExpression)entry.Value;

                //Cherche la propriété
                result = expression.Eval(contexteEval);
                if (!result)
                {
                    result.EmpileErreur(I.T("Error during @1 value evaluation|188", entry.Key.ToString()));
                    return(result);
                }
                valeursParametres[entry.Key] = result.Data;
            }

            return(declencheur.ExecuteAction(m_strCodeActionServeur, valeursParametres));
        }
        //-------------------------------------------------------------------------------------------
        public CResultAErreurType <CSessionImport> DoImportSurServeur(
            int nIdSession,
            DataTable tableSource,
            COptionExecutionSmartImport options,
            IIndicateurProgression indicateur)
        {
            ISmartImporterAgent st = C2iFactory.GetNewObjetForSession("CSmartImporterAgent", typeof(ISmartImporterAgent), nIdSession) as ISmartImporterAgent;
            CResultAErreurType <CSessionImport> result = st.DoSmartImport(tableSource, this, options, indicateur);

            return(result);
        }
Example #3
0
        /// <summary>
        /// Le data du result contient un datatable avec la structure du résultat
        /// </summary>
        /// <param name="nIdSession"></param>
        /// <returns></returns>
        public CResultAErreur GetStructureResultat(int nIdSession)
        {
            I2iRequeteServeur objetServeur = (I2iRequeteServeur)C2iFactory.GetNewObjetForSession("C2iRequeteServeur", typeof(I2iRequeteServeur), nIdSession);
            IElementAVariablesDynamiquesAvecContexteDonnee elementAVariable = this;

            if (m_elementAVariablesExterne != null)
            {
                elementAVariable = m_elementAVariablesExterne;
            }
            return(objetServeur.ExecuteRequete(this, elementAVariable, true));
        }
Example #4
0
        /// <summary>
        /// Le data du result contient un datatable avec le résulat de la requête
        /// </summary>
        /// <param name="nIdSession"></param>
        /// <returns></returns>
        public CResultAErreur ExecuteRequete(int nIdSession)
        {
            I2iRequeteAvanceeServeur objetServeur = (I2iRequeteAvanceeServeur)C2iFactory.GetNewObjetForSession("C2iRequeteAvanceeServeur", typeof(I2iRequeteAvanceeServeur), nIdSession);
            CResultAErreur           result       = objetServeur.ExecuteRequete(this);

            if (!result)
            {
                return(result);
            }
            result.Data = ((CDataTableFastSerialize)result.Data).DataTableObject;
            return(result);
        }
Example #5
0
        public static bool RefreshFromSNMP(object obj)
        {
            CEquipementLogique eqpt = obj as CEquipementLogique;

            if (eqpt == null)
            {
                return(false);
            }
            CSpvEquip eqptSpv = CSpvEquip.GetObjetSpvFromObjetTimos(eqpt);

            if (eqptSpv == null)
            {
                return(false);
            }
            string strIP         = eqptSpv.AdresseIP;
            string strCommunaute = eqptSpv.CommunauteSnmp;

            CChampCustom[] lstChamps           = eqpt.TousLesChamps;
            string         strOldContexteModif = eqpt.ContexteDonnee.IdModificationContextuelle;;

            eqpt.ContexteDonnee.IdModificationContextuelle = CSpvChampCustomSNMP.c_contexteModificationRefreshFromSNMP;
            IRequeteSNMPServeur requeteurServeur = C2iFactory.GetNewObjetForSession("CRequeteSNMPServeur", typeof(IRequeteSNMPServeur), eqpt.ContexteDonnee.IdSession) as IRequeteSNMPServeur;

            foreach (CChampCustom champ in lstChamps)
            {
                CSpvChampCustomSNMP champSNMP = CSpvChampCustomSNMP.GetObjetSpvFromObjetTimos(champ);
                if (champSNMP != null && champSNMP.OID != null && champSNMP.OID.Length > 0 &&
                    champSNMP.FormuleIndex != null)
                {
                    CContexteEvaluationExpression ctxFormule = new CContexteEvaluationExpression(eqpt);
                    CResultAErreur result = champSNMP.FormuleIndex.Eval(ctxFormule);
                    if (result)
                    {
                        try
                        {
                            int             nIndex  = Convert.ToInt32(result.Data);
                            string          strOid  = champSNMP.OID + "." + nIndex.ToString();
                            CRequeteSnmpOID requete = new CRequeteSnmpOID(strIP, strCommunaute, strOid);
                            result = requeteurServeur.GetValue(requete);
                            if (result)
                            {
                                eqpt.SetValeurChamp(champ, result.Data);
                            }
                        }
                        catch {}
                    }
                }
            }
            eqpt.ContexteDonnee.IdModificationContextuelle = strOldContexteModif;
            return(true);
        }
Example #6
0
        //----------------------------------------------------------------------------------
        public CResultAErreur Export(int nIdSession,
                                     IEnumerable list,
                                     ref DataSet ds,
                                     IElementAVariablesDynamiquesAvecContexteDonnee elementAVariablesPourFiltre,
                                     IIndicateurProgression indicateur)
        {
            if (list is CListeObjetsDonnees && m_bTraitementSurServeur)
            {
                CResultAErreur    result           = CResultAErreur.True;
                CStringSerializer serializer       = new CStringSerializer(ModeSerialisation.Ecriture);
                I2iSerializable   listeToSerialize = (I2iSerializable)list;
                result = serializer.TraiteObject(ref listeToSerialize);
                if (!result)
                {
                    return(result);
                }
                I2iExporteurSurServeur exporteur = ( I2iExporteurSurServeur )C2iFactory.GetNewObjetForSession("C2iExporteurSurServeur", typeof(I2iExporteurSurServeur), nIdSession);

                try
                {
                    result = exporteur.ExportData(serializer.String, this, elementAVariablesPourFiltre, indicateur);
                    if (result)
                    {
                        ds = (DataSet)result.Data;
                    }
                }
                catch (Exception e)
                {
                    result.EmpileErreur(new CErreurException(e));
                    result.EmpileErreur(I.T("Error during the export on the server|101"));
                }
                return(result);
            }
            if (IsStructureComplexe)
            {
                return(ExportComplexe(nIdSession, list, ref ds, elementAVariablesPourFiltre, indicateur));
            }
            else
            {
                return(ExportSimple(nIdSession, list, ref ds, indicateur));
            }
        }
Example #7
0
        /// //////////////////////////////////////////
        public override CResultAErreur MyEval(CContexteEvaluationExpression ctx, object[] valeursParametres)
        {
            CResultAErreur result = CResultAErreur.True;

            try
            {
                ISynchroMediation synchro = C2iFactory.GetNewObjetForSession("CSynchroMediation", typeof(ISynchroMediation), 0) as ISynchroMediation;
                result = synchro.DoSynchro();
                if (result)
                {
                    result.Data = true;
                }
                else
                {
                    result.Data = false;
                }
            }
            catch (Exception e)
            {
                result.EmpileErreur(new CErreurException(e));
            }
            return(result);
        }
Example #8
0
        public CResultAErreur SetValueSNMP(CContexteDonnee contexte, object valeur)
        {
            CResultAErreur      result           = CResultAErreur.True;
            IRequeteSNMPServeur requeteurServeur = C2iFactory.GetNewObjetForSession("CRequeteSNMPServeur", typeof(IRequeteSNMPServeur), contexte.IdSession) as IRequeteSNMPServeur;

            if (requeteurServeur == null)
            {
                result.EmpileErreur(I.T("Can not instanciate SNMP Query server|20001"));
                return(result);
            }
            result = GetRequeteSNMPOID(contexte);
            if (!result)
            {
                return(result);
            }
            CRequeteSnmpOID requeteOID = result.Data as CRequeteSnmpOID;

            if (requeteOID == null)
            {
                result.EmpileErreur(I.T("Error while creating OID SNMP QUERY|20005"));
                return(result);
            }
            return(requeteurServeur.SetValue(requeteOID, valeur));
        }
Example #9
0
        public CResultAErreur GetDonnees(IElementAVariablesDynamiquesAvecContexteDonnee elementAVariables, CListeObjetsDonnees listeDonnees, IIndicateurProgression indicateur)
        {
            I2iRequeteServeur objetServeur = (I2iRequeteServeur)C2iFactory.GetNewObjetForSession("C2iRequeteServeur", typeof(I2iRequeteServeur), elementAVariables.IdSession);

            return(objetServeur.ExecuteRequete(this, elementAVariables, false));
        }
Example #10
0
 private void FillPageNotifications()
 {
     IGestionnaireNotification gestionnaire = (IGestionnaireNotification)C2iFactory.GetNewObjetForSession("CGestionnaireNotification", typeof(IGestionnaireNotification), CSessionClient.GetSessionUnique().IdSession);
     //m_labelNbRecepteursNotification.Text = gestionnaire.GetNbRecepteurs().ToString();
 }
 public static List <CInfoLicenceUserProfil> GetProfilsPossibles(int nIdSession)
 {
     if (m_profils == null)
     {
         IGestionnaireProfilLicence gestionnaire = (IGestionnaireProfilLicence)C2iFactory.GetNewObjetForSession("CGestionnaireProfilLicence", typeof(IGestionnaireProfilLicence), nIdSession);
         m_profils = gestionnaire.GetProfilsPossibles();
     }
     return(new List <CInfoLicenceUserProfil>(m_profils));
 }
Example #12
0
        public static void SendMails(List <CEvenementAlarm> lstEvents, CContexteDonnee ctxDonnee)
        {
            /*
             * foreach (CEvenementAlarm eventAl in lstEvents)
             * {
             *  if (eventAl.CategorieMessageAlarme == ECategorieMessageAlarme.AlarmStartStop)
             *  {
             *      if (eventAl.EventAlarmStartStop.AlarmInfo.SeverityCode == (int)EGraviteAlarmeAvecMasquage.EndAlarm)
             *          continue;
             *
             *      CListeObjetsDonnees lstConsult = new CListeObjetsDonnees(ctxDonnee, typeof(CConsultationAlarmesEnCoursInDb));
             *      lstConsult.Filtre = new CFiltreDataAvance(CConsultationAlarmesEnCoursInDb.c_nomTable,
             *           CConsultationAlarmesEnCoursInDb.c_champActiverEMail + " = 1 and Has( Emails." +
             *           CParamlArmEC_EMail.c_champParamAlarmECId + " )", null);
             *
             *      foreach (CConsultationAlarmesEnCoursInDb consult in lstConsult)
             *      {
             *          int id = consult.Id;//test
             *          if (consult.Parametres.FormuleFiltre != null)
             *          {
             *              CContexteEvaluationExpression contexte = new CContexteEvaluationExpression(eventAl.EventAlarmStartStop.AlarmInfo);
             *              if (!consult.Parametres.FormuleFiltre.Eval(contexte))
             *                  continue;
             *          }
             *
             *          List<string> lstColumnNames = new List<string>();
             *          ArrayList arrayData = new ArrayList();
             *          StringBuilder stblMessage = new StringBuilder();
             *          string [] arrayDest;
             *          string stSubject;
             *          string stSender;
             *          string st;
             *          int i = 0;
             *
             *          lstColumnNames = consult.Parametres.GetColumnNames();
             *          arrayData = consult.Parametres.GetDataToDisplay(eventAl.EventAlarmStartStop.AlarmInfo);
             *
             *          foreach(string stColumnName in lstColumnNames)
             *          {
             *              st = stColumnName + " : " + arrayData[i];
             *              stblMessage.AppendLine(st);
             *              i++;
             *          }
             *
             *          stSubject = I.T("Alarm @1|60000", eventAl.EventAlarmStartStop.AlarmInfo.AlarmeGeree.Name);
             *
             *          arrayDest = new string[consult.Emails.Count];
             *          i=0;
             *          foreach(CParamlArmEC_EMail paramlArmEC_EMail in consult.Emails)
             *          {
             *              arrayDest[i] = paramlArmEC_EMail.Email;
             *              i++;
             *          }
             *
             *          IDatabaseRegistre registre = (IDatabaseRegistre)C2iFactory.GetNew2iObjetServeur(typeof(IDatabaseRegistre), ctxDonnee.IdSession);
             *                          stSender =  (string)registre.GetValeurString("SENDER_ADDRESS","");
             *
             *          int[] docsArray = new int[0];
             *          CMailSC2I mail = new CMailSC2I(stSender, stSubject, stblMessage.ToString(),
             *              arrayDest, docsArray);
             *
             *          IExpediteurMail expediteur = (IExpediteurMail)C2iFactory.GetNewObjetForSession("CExpediteurMail", typeof(IExpediteurMail), ctxDonnee.IdSession);
             *          CResultAErreur result = expediteur.SendMail(mail);
             *      }
             *  }
             * }
             * }*/
            foreach (CEvenementAlarm eventAlarme in lstEvents)
            {
                if (eventAlarme.GetType() == typeof(CEvenementAlarmStartStop))
                {
                    CEvenementAlarmStartStop eventAl = (CEvenementAlarmStartStop)eventAlarme;
                    if (eventAl.Gravite == EGraviteAlarmeAvecMasquage.EndAlarm)
                    {
                        continue;
                    }

                    CInfoAlarmeAffichee infoAlarmeAffichee = new CInfoAlarmeAffichee(eventAl);

                    CListeObjetsDonnees lstConsult = new CListeObjetsDonnees(ctxDonnee, typeof(CConsultationAlarmesEnCoursInDb));
                    lstConsult.Filtre = new CFiltreDataAvance(CConsultationAlarmesEnCoursInDb.c_nomTable,
                                                              CConsultationAlarmesEnCoursInDb.c_champActiverEMail + " = 1 and Has( Emails." +
                                                              CParamlArmEC_EMail.c_champParamAlarmECId + " )", null);

                    foreach (CConsultationAlarmesEnCoursInDb consult in lstConsult)
                    {
                        int id = consult.Id;//test
                        if (consult.Parametres.FormuleFiltre != null)
                        {
                            CContexteEvaluationExpression contexte = new CContexteEvaluationExpression(infoAlarmeAffichee);
                            if (!consult.Parametres.FormuleFiltre.Eval(contexte))
                            {
                                continue;
                            }
                        }

                        List <string> lstColumnNames = new List <string>();
                        ArrayList     arrayData      = new ArrayList();
                        StringBuilder stblMessage    = new StringBuilder();
                        string[]      arrayDest;
                        string        stSubject;
                        string        stSender;
                        string        st;
                        int           i = 0;

                        lstColumnNames = consult.Parametres.GetColumnNames();
                        arrayData      = consult.Parametres.GetDataToDisplay(infoAlarmeAffichee);

                        foreach (string stColumnName in lstColumnNames)
                        {
                            st = stColumnName + " : " + arrayData[i];
                            stblMessage.AppendLine(st);
                            i++;
                        }

                        stSubject = I.T("Alarm @1|60000", eventAl.NomAlarmeGeree);

                        arrayDest = new string[consult.Emails.Count];
                        i         = 0;
                        foreach (CParamlArmEC_EMail paramlArmEC_EMail in consult.Emails)
                        {
                            arrayDest[i] = paramlArmEC_EMail.Email;
                            i++;
                        }

                        IDatabaseRegistre registre = (IDatabaseRegistre)C2iFactory.GetNew2iObjetServeur(typeof(IDatabaseRegistre), ctxDonnee.IdSession);
                        stSender = (string)registre.GetValeurString("SENDER_ADDRESS", m_strExpMailParDefaut);

                        int[]     docsArray = new int[0];
                        CMailSC2I mail      = new CMailSC2I(stSender, stSubject, stblMessage.ToString(),
                                                            arrayDest, null, null, docsArray);

                        IExpediteurMail expediteur = (IExpediteurMail)C2iFactory.GetNewObjetForSession("CExpediteurMail", typeof(IExpediteurMail), ctxDonnee.IdSession);
                        CResultAErreur  result     = expediteur.SendMail(mail);
                    }
                }
            }
        }
        /// ////////////////////////////////////////////////////////
        protected override CResultAErreur MyExecute(CContexteExecutionAction contexte)
        {
            CResultAErreur result = CResultAErreur.True;

            //Evalue l'élément cible
            object obj = Process.GetValeurChamp(IdVariableElement);

            if (obj != null)
            {
                if (!(obj is CObjetDonneeAIdNumerique))
                {
                    result.EmpileErreur(I.T("The element for which to start the actions isn't correct|163"));
                    return(result);
                }
                CObjetDonneeAIdNumerique        objet       = (CObjetDonneeAIdNumerique)obj;
                IDeclencheurEvenementsStatiques declencheur = (IDeclencheurEvenementsStatiques)C2iFactory.GetNewObjetForSession("CDeclencheurEvenementsStatiques", typeof(IDeclencheurEvenementsStatiques), objet.ContexteDonnee.IdSession);
                if (declencheur != null)
                {
                    result = declencheur.DeclencheEvenementStatiques(objet.GetType(), objet.DbKey);
                }
                if (!result)
                {
                    return(result);
                }
            }
            return(result);
        }
Example #14
0
        //---------------------------------------------------------------
        public CResultAErreur Send(int nIdSession)
        {
            ISMSSender sender = (ISMSSender)C2iFactory.GetNewObjetForSession("CSMSSender", typeof(ISMSSender), nIdSession);

            return(sender.SendMessage(this));
        }
Example #15
0
        /// /////////////////////////////////////////////////////////
        protected override CResultAErreur MyExecute(CContexteExecutionAction contexte)
        {
            CResultAErreur result = CResultAErreur.True;

            string    strExpediteur       = "";
            string    strSujet            = "";
            string    strMessage          = "";
            ArrayList lstDestinataires    = new ArrayList();
            ArrayList lstDestinatairesCC  = new ArrayList();
            ArrayList lstDestinatairesBCC = new ArrayList();
            ArrayList lstIdsDocs          = new ArrayList();
            CContexteEvaluationExpression contexteEval = new CContexteEvaluationExpression(contexte.Branche.Process);

            if (m_formuleAdresseExpediteur == null)
            {
                result.EmpileErreur(I.T("Incorrect Sender adress formula|389"));
                return(result);
            }
            result = m_formuleAdresseExpediteur.Eval(contexteEval);
            if (!result)
            {
                result.EmpileErreur(I.T("Error during evaluation of the recipient address|399"));
                return(result);
            }
            strExpediteur = GetMail(result.Data);

            if (m_formuleSujet == null)
            {
                result.EmpileErreur(I.T("Incorrect subject formula|391"));
                return(result);
            }
            result = m_formuleSujet.Eval(contexteEval);
            if (!result)
            {
                result.EmpileErreur(I.T("Error during mail subject evaluation|400"));
                return(result);
            }
            strSujet = result.Data.ToString();

            if (m_formuleMessage == null)
            {
                result.EmpileErreur(I.T("The message formula is false|393"));
                return(result);
            }
            result = m_formuleMessage.Eval(contexteEval);
            if (!result)
            {
                result.EmpileErreur(I.T("Error during  mail content evaluation|401"));
                return(result);
            }
            strMessage = result.Data.ToString();

            // Traite les destinataires To
            foreach (C2iExpression exp in m_listeFormulesMailsDestinatairesTo)
            {
                if (exp != null)
                {
                    result = exp.Eval(contexteEval);
                    if (!result)
                    {
                        result.EmpileErreur(I.T("Error while evaluating one of the recipients|402"));
                        return(result);
                    }
                    object res = result.Data;
                    if (res is string)
                    {
                        res = ((string)res).Split(new char[] { ';', ',' });
                    }

                    if (res is IList)
                    {
                        foreach (object obj in ((IList)res))
                        {
                            string strMail = GetMail(obj);
                            if (strMail.Trim() != "")
                            {
                                lstDestinataires.Add(strMail);
                            }
                        }
                    }
                    else if (res.ToString().Trim() != "")
                    {
                        string strMail = GetMail(res);
                        if (strMail.Trim() != "")
                        {
                            lstDestinataires.Add(strMail);
                        }
                    }
                }
            }

            // Traite les destinataires CC
            foreach (C2iExpression exp in m_listeFormulesMailsDestinatairesCC)
            {
                if (exp != null)
                {
                    result = exp.Eval(contexteEval);
                    if (!result)
                    {
                        result.EmpileErreur(I.T("Error while evaluating one of the recipients|402"));
                        return(result);
                    }
                    object res = result.Data;
                    if (res is string)
                    {
                        res = ((string)res).Split(new char[] { ';', ',' });
                    }

                    if (res is IList)
                    {
                        foreach (object obj in ((IList)res))
                        {
                            string strMail = GetMail(obj);
                            if (strMail.Trim() != "")
                            {
                                lstDestinatairesCC.Add(strMail);
                            }
                        }
                    }
                    else if (res.ToString().Trim() != "")
                    {
                        string strMail = GetMail(res);
                        if (strMail.Trim() != "")
                        {
                            lstDestinatairesCC.Add(strMail);
                        }
                    }
                }
            }

            // Traite les destinataires BCC
            foreach (C2iExpression exp in m_listeFormulesMailsDestinatairesBCC)
            {
                if (exp != null)
                {
                    result = exp.Eval(contexteEval);
                    if (!result)
                    {
                        result.EmpileErreur(I.T("Error while evaluating one of the recipients|402"));
                        return(result);
                    }
                    object res = result.Data;
                    if (res is string)
                    {
                        res = ((string)res).Split(new char[] { ';', ',' });
                    }

                    if (res is IList)
                    {
                        foreach (object obj in ((IList)res))
                        {
                            string strMail = GetMail(obj);
                            if (strMail.Trim() != "")
                            {
                                lstDestinatairesBCC.Add(strMail);
                            }
                        }
                    }
                    else if (res.ToString().Trim() != "")
                    {
                        string strMail = GetMail(res);
                        if (strMail.Trim() != "")
                        {
                            lstDestinatairesBCC.Add(strMail);
                        }
                    }
                }
            }

            // Traite les pièces jointes
            foreach (C2iExpression exp in m_listeFormulesPiecesJointes)
            {
                if (exp != null)
                {
                    result = exp.Eval(contexteEval);
                    if (!result)
                    {
                        result.EmpileErreur(I.T("Error while evaluating one of the recipients|402"));
                        return(result);
                    }
                    if (result.Data is IEnumerable)
                    {
                        foreach (object obj in ((IList)result.Data))
                        {
                            if (obj is CDocumentGED)
                            {
                                lstIdsDocs.Add(((CDocumentGED)obj).Id);
                            }
                        }
                    }
                    else if (result.Data is CDocumentGED)
                    {
                        lstIdsDocs.Add(((CDocumentGED)result.Data).Id);
                    }
                }
            }

            // Genere le Mail
            string[]  destArray    = (string[])lstDestinataires.ToArray(typeof(string));
            string[]  destCCArray  = (string[])lstDestinatairesCC.ToArray(typeof(string));
            string[]  destBCCArray = (string[])lstDestinatairesBCC.ToArray(typeof(string));
            int[]     docsArray    = (int[])lstIdsDocs.ToArray(typeof(int));
            CMailSC2I mail         = new CMailSC2I(
                strExpediteur,
                strSujet,
                strMessage,
                destArray,
                destCCArray,
                destBCCArray,
                docsArray,
                IsFormatHTML,
                UseDocLabelAsFileName,
                SMTPserver,
                SMTPort,
                SMTPUser,
                SMTPPassword);

            // Envoi le mail
            IExpediteurMail expediteur = (IExpediteurMail)C2iFactory.GetNewObjetForSession("CExpediteurMail", typeof(IExpediteurMail), contexte.IdSession);

            result = expediteur.SendMail(mail);

            return(result);
        }
Example #16
0
        public static CResultAErreur ExecuteScalar(int nIdSession, string strStatement)
        {
            IExecuteurRequeteServeurSpv executeur = C2iFactory.GetNewObjetForSession("CExecuteurRequeteServeurSpv", typeof(IExecuteurRequeteServeurSpv), nIdSession) as IExecuteurRequeteServeurSpv;

            return(executeur.ExecuteScalar(strStatement));
        }
Example #17
0
 //-----------------------------------------
 private static IUtilSynchronisation GetUtilSurServeur(int nIdSession)
 {
     return((IUtilSynchronisation)C2iFactory.GetNewObjetForSession("CUtilSynchronisationServeur", typeof(IUtilSynchronisation), nIdSession));
 }
Example #18
0
        public static CResultAErreur UpdateEOs(IElementAEO elt)
        {
            IUtilElementAEOServeur util = (IUtilElementAEOServeur)C2iFactory.GetNewObjetForSession("CUtilElementAEOServeur", typeof(IUtilElementAEOServeur), elt.ContexteDonnee.IdSession);

            return(util.UpdateEOs(new CReferenceObjetDonnee((CObjetDonnee)elt)));
        }
Example #19
0
        /// <summary>
        /// Le data du result contient un datatable avec le résulat de la requête
        /// </summary>
        /// <param name="nIdSession"></param>
        /// <returns></returns>
        public CResultAErreur ExecuteRequete(int nIdSession)
        {
            I2iRequeteServeur objetServeur = (I2iRequeteServeur)C2iFactory.GetNewObjetForSession("C2iRequeteServeur", typeof(I2iRequeteServeur), nIdSession);

            return(objetServeur.ExecuteRequete(this, this, false));
        }
Example #20
0
        //-------------------------------------------------------------------
        public CDonneeDroitForUser GetDonneeDroit(string strCode)
        {
            IDonneeDroitForUserServer gestionnaireServeur = (IDonneeDroitForUserServer)C2iFactory.GetNewObjetForSession("CDonneeDroitForUserServer", typeof(IDonneeDroitForUserServer), ContexteDonnee.IdSession);

            if (gestionnaireServeur != null)
            {
                return(gestionnaireServeur.GetDonneeDroit(Id, strCode));
            }
            return(null);
        }
        /// ////////////////////////////////////////////////////////
        public static CInfoActionServeur[] GetListeActionsPossibles(int nIdSession)
        {
            IDeclencheurActionSurServeur declencheur = (IDeclencheurActionSurServeur)C2iFactory.GetNewObjetForSession("CDeclencheurActionSurServeur", typeof(IDeclencheurActionSurServeur), nIdSession);

            return(declencheur.ActionsDisponibles);
        }
        /// /////////////////////////////////////////////////
        public static CResultAErreur PurgeEntites(int nIdSession, Type typeObjets, int[] nIds)
        {
            IActionSupprimerEntiteServeur objetServeur = (IActionSupprimerEntiteServeur)C2iFactory.GetNewObjetForSession("CActionSupprimerEntiteServeur", typeof(IActionSupprimerEntiteServeur), nIdSession);
            CResultAErreur result = objetServeur.PurgeEntites(typeObjets, nIds);

            return(result);
        }
Example #23
0
 private static ISynchroniseurBdd GetSynchroniseur(int nIdSession)
 {
     return((ISynchroniseurBdd)C2iFactory.GetNewObjetForSession("CSynchroniseurBddServeur", typeof(ISynchroniseurBdd), nIdSession));
 }
Example #24
0
        //////////////////////////////////////////////////////////////////
        public static void ModificationsSNMP(
            CContexteDonnee contexte,
            Hashtable tableData,
            ref CResultAErreur result)
        {
            if (!result)
            {
                return;
            }
            DataTable table = contexte.Tables[CRelationEquipementLogique_ChampCustom.c_nomTable];

            if (table == null)
            {
                return;
            }
            ArrayList           lst = new ArrayList(table.Rows);
            IRequeteSNMPServeur requeteurServeur = null;

            foreach (DataRow row in lst)
            {
                if (row.RowState == DataRowState.Modified || row.RowState == DataRowState.Added)
                {
                    if (row[CObjetDonnee.c_champContexteModification] == DBNull.Value ||
                        (string)row[CObjetDonnee.c_champContexteModification] != CSpvChampCustomSNMP.c_contexteModificationRefreshFromSNMP)
                    {
                        CRelationEquipementLogique_ChampCustom relChamp = new CRelationEquipementLogique_ChampCustom(row);
                        CSpvChampCustomSNMP champSNMP = new CSpvChampCustomSNMP(contexte);
                        if (champSNMP.ReadIfExists(new CFiltreData(CSpvChampCustomSNMP.c_champIdChampCustomTimos + "=@1",
                                                                   (int)row[CChampCustom.c_champId])))
                        {
                            if (!champSNMP.GetOnly)
                            {
                                CSpvEquip eqptSpv = new CSpvEquip(contexte);
                                if (eqptSpv.ReadIfExists(new CFiltreData(CSpvEquip.c_champSmtEquipementLogique_Id + "=@1",
                                                                         row[CEquipementLogique.c_champId])))
                                {
                                    string strIP         = eqptSpv.AdresseIP;
                                    string strCommunaute = eqptSpv.CommunauteSnmp;
                                    if (requeteurServeur == null)
                                    {
                                        requeteurServeur = C2iFactory.GetNewObjetForSession("CRequeteSNMPServeur", typeof(IRequeteSNMPServeur), eqptSpv.ContexteDonnee.IdSession) as IRequeteSNMPServeur;
                                    }
                                    if (champSNMP != null && champSNMP.OID != null && champSNMP.OID.Length > 0 &&
                                        champSNMP.FormuleIndex != null)
                                    {
                                        CContexteEvaluationExpression ctxFormule = new CContexteEvaluationExpression(relChamp.ElementAChamps);
                                        CResultAErreur resTmp = champSNMP.FormuleIndex.Eval(ctxFormule);
                                        if (resTmp)
                                        {
                                            try
                                            {
                                                int             nIndex  = Convert.ToInt32(result.Data);
                                                string          strOid  = champSNMP.OID + "." + nIndex.ToString();
                                                CRequeteSnmpOID requete = new CRequeteSnmpOID(strIP, strCommunaute, strOid);

                                                requeteurServeur.SetValue(requete, relChamp.Valeur);
                                            }
                                            catch { }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
Example #25
0
        /////////////////////////////////////////////////////////////////////////////////
        public static CResultAErreur RegisterDroitUtilisateur(
            int nIdSession,
            string strCode,
            string strLibelle,
            int nNumOrdre,
            string strDroitParent,
            string strInfoSurDroit,
            OptionsDroit optionsPossibles)
        {
            CResultAErreur result = CResultAErreur.True;
            IGestionnaireDroitsUtilisateurs gestionnaire = (IGestionnaireDroitsUtilisateurs)C2iFactory.GetNewObjetForSession("CGestionnaireDroitsUtilisateurs", typeof(IGestionnaireDroitsUtilisateurs), nIdSession);

            if (gestionnaire == null)
            {
                result.EmpileErreur(I.T("Cannot allocate rights manager|131"));
                return(result);
            }
            gestionnaire.RegisterDroitUtilisateur(
                strCode,
                strLibelle,
                nNumOrdre,
                strDroitParent,
                strInfoSurDroit,
                optionsPossibles);
            return(result);
        }