예제 #1
0
 //-------------------------------------------------------------------
 private void m_cmbCategorie_SelectedValueChanged(object sender, System.EventArgs e)
 {
     if (!m_bComboCatIsInit)
     {
         return;
     }
     m_listeObjets.Filtre = null;
     if (m_cmbCategorie.SelectedValue != null)
     {
         int nId = ((C2iCategorieRapportCrystal)m_cmbCategorie.SelectedValue).Id;
         m_listeObjets.Filtre = new CFiltreData(C2iCategorieRapportCrystal.c_champId + " = @1", nId);
     }
     m_listView.Remplir(m_listeObjets);
 }
        private void UpdateListeVariables()
        {
            m_bListeVariablesRemplie     = false;
            m_variableEnCoursEdition     = null;
            m_txtFormuleVariable.Visible = false;
            if (!(m_cmbProcess.SelectedValue is CProcessInDb))
            {
                m_wndListeVariables.Enabled  = false;
                m_txtFormuleVariable.Visible = false;
                return;
            }
            m_wndListeVariables.Enabled  = true;
            m_txtFormuleVariable.Visible = true;

            CProcessInDb processInDB = (CProcessInDb)m_cmbProcess.SelectedValue;
            CProcess     process     = processInDB.Process;

            if (process == null)
            {
                m_wndListeVariables.Enabled  = false;
                m_txtFormuleVariable.Visible = false;
                return;
            }
            ArrayList lst = new ArrayList(process.ListeVariables);

            m_wndListeVariables.Remplir(lst, false);
            m_bListeVariablesRemplie = true;
        }
예제 #3
0
        /// //////////////////////////////////////////////////////
        private void m_arbre_AfterSelect(object sender, System.Windows.Forms.TreeViewEventArgs e)
        {
            ValideModifsDroitEnCours();
            CDroitNode        node  = (CDroitNode)e.Node;
            CDroitUtilisateur droit = node.Droit;

            m_listeExtensions.Visible = droit.TypeAssocieURI != null && droit.TypeAssocieURI != "";
            m_labelInfo.Text          = droit.Infos;
            OptionsDroit[] options = droit.ListeOptionsPossibles;
            m_wndListeOptions.Items.Clear();
            if (options.Length == 0)
            {
                m_wndListeOptions.Visible = false;
            }
            else
            {
                foreach (OptionsDroit option in options)
                {
                    int nItem = m_wndListeOptions.Items.Add(new COptionDroitUtilisateur(option));
                    if (node.Relation != null)
                    {
                        m_wndListeOptions.SetItemChecked(nItem, node.Relation.HasOption(option));
                    }
                }
                m_wndListeOptions.Visible = true;
            }
            if (droit.TypeAssocieURI != null)
            {
                CListeObjetsDonnees lst = droit.ListeObjetsAssocies;
                m_listeExtensions.Remplir(lst);
                if (node.Relation != null)
                {
                    //Coche ce qui doit l'être
                    Hashtable tableCheck = new Hashtable();
                    foreach (CObjetDonnee obj in node.Relation.ListeObjetsOption)
                    {
                        tableCheck[obj] = true;
                    }
                    foreach (ListViewItem item in m_listeExtensions.Items)
                    {
                        if (tableCheck[item.Tag] != null)
                        {
                            item.Checked = true;
                        }
                    }
                }
            }
            if (e.Node.Checked && !m_bLockEdition)
            {
                m_listeExtensions.Enabled = true;
                m_wndListeOptions.Enabled = true;
            }
            else
            {
                m_listeExtensions.Enabled = false;
                m_wndListeOptions.Enabled = false;
            }
            m_lastNodeAffiche = (CDroitNode)e.Node;
        }
예제 #4
0
        //-------------------------------------------------------------------------
        protected override CResultAErreur InitChamps()
        {
            CResultAErreur result = base.InitChamps();

            AffecterTitre(I.T("Form @1|10000", Formulaire.Libelle));
            if (result)
            {
                //CUtilASauvegardeProfilDesigner.InitialiserProfil( new CContexteSauvegardeProfilDesigner(m_panelEditionFormulaire));

                ArrayList lst = new ArrayList(CRoleChampCustom.Roles);
                foreach (CRoleChampCustom role in lst.ToArray(typeof(CRoleChampCustom)))
                {
                    if (role.CodeRole == sc2i.custom.CRoleFormulaireSurImpressionWin32.c_roleChampCustom)
                    {
                        lst.Remove(role);
                    }
                }
                if (Formulaire.Role != null && Formulaire.Role.CodeRole ==
                    sc2i.custom.CRoleFormulaireSurImpressionWin32.c_roleChampCustom)
                {
                    m_panelLibelle.Visible = false;
                }
                else
                {
                    m_panelLibelle.Visible = true;
                }
                m_cmbRoleFormulaire.ListDonnees   = lst;
                m_cmbRoleFormulaire.SelectedValue = Formulaire.Role;

                C2iWndFenetre fenetre = Formulaire.Formulaire;
                fenetre.ImageFond = m_imageFond;
                m_panelEditionFormulaire.ObjetEdite            = fenetre;
                m_panelEditionFormulaire.FournisseurProprietes = m_fournisseurProprietes;


                RedefinitRoleAssocie();
                m_panelEditionFormulaire.TypeEdite = m_typeAssocie;
                if (m_imageFond != null)
                {
                    Formulaire.Formulaire.ImageFond = m_imageFond;
                }

                CListeObjetsDonnees listeRestrictions = new CListeObjetsDonnees(Formulaire.ContexteDonnee, typeof(CRestrictionChampCustom));
                m_wndListeMasquer.Remplir(listeRestrictions);
                foreach (ListViewItem item in m_wndListeMasquer.Items)
                {
                    CRestrictionChampCustom rest = (CRestrictionChampCustom)item.Tag;
                    if ((Formulaire.RestrictionsMasquer & (int)Math.Pow(2, rest.ValeurFlag)) != 0)
                    {
                        item.Checked = true;
                    }
                    else
                    {
                        item.Checked = false;
                    }
                }
            }
            return(result);
        }
예제 #5
0
        /// //////////////////////////////////////////
        protected override void InitChamps()
        {
            base.InitChamps();
            m_wndAideFormule.FournisseurProprietes = ObjetEdite.Process;
            m_wndAideFormule.ObjetInterroge        = typeof(CProcess);

            m_txtFormuleCle.Init(m_wndAideFormule.FournisseurProprietes, m_wndAideFormule.ObjetInterroge);
            m_txtFormuleDescriptif.Init(m_wndAideFormule.FournisseurProprietes, m_wndAideFormule.ObjetInterroge);
            m_txtFormuleLibelle.Init(m_wndAideFormule.FournisseurProprietes, m_wndAideFormule.ObjetInterroge);
            m_txtFormuleFichier.Init(m_wndAideFormule.FournisseurProprietes, m_wndAideFormule.ObjetInterroge);
            m_txtFormuleUser.Init(m_wndAideFormule.FournisseurProprietes, m_wndAideFormule.ObjetInterroge);
            m_txtFormulePassword.Init(m_wndAideFormule.FournisseurProprietes, m_wndAideFormule.ObjetInterroge);

            CListeObjetsDonnees liste = new CListeObjetsDonnees(CSc2iWin32DataClient.ContexteCourant, typeof(CCategorieGED));

            m_wndListeCategories.Remplir(liste, false);
            List <CDbKey> listeDbKeysCategorie = new List <CDbKey>(CopierLocalDansGed.ListeDbKeysCategoriesStockage);

            foreach (ListViewItem item in m_wndListeCategories.Items)
            {
                CCategorieGED cat = (CCategorieGED)item.Tag;
                if (listeDbKeysCategorie.Contains(cat.DbKey))
                {
                    item.Checked = true;
                }
                else
                {
                    item.Checked = false;
                }
            }

            m_txtFormuleFichier.Formule  = CopierLocalDansGed.ExpressionContenu;
            m_txtFormuleCle.Text         = CopierLocalDansGed.ExpressionCle.GetString();
            m_txtFormuleDescriptif.Text  = CopierLocalDansGed.ExpressionDescriptif.GetString();
            m_txtFormuleLibelle.Text     = CopierLocalDansGed.ExpressionLibelle.GetString();
            m_txtFormuleUser.Formule     = CopierLocalDansGed.ExpressionUser;
            m_txtFormulePassword.Formule = CopierLocalDansGed.ExpressionPassword;

            m_rbtnFichier.Checked = !CopierLocalDansGed.LeContenuEstUnTexte;
            m_rbtnText.Checked    = CopierLocalDansGed.LeContenuEstUnTexte;
        }
예제 #6
0
        private void UpdateListeVariables()
        {
            m_bListeVariablesRemplie     = false;
            m_variableEnCoursEdition     = null;
            m_txtFormuleVariable.Visible = false;
            if (!(m_comboModeleEtat.SelectedValue is C2iRapportCrystal))
            {
                m_wndListeVariables.Enabled  = false;
                m_txtFormuleVariable.Visible = false;
                return;
            }
            m_wndListeVariables.Enabled  = true;
            m_txtFormuleVariable.Visible = true;

            C2iRapportCrystal     etat           = (C2iRapportCrystal)m_comboModeleEtat.SelectedValue;
            CMultiStructureExport multiStructure = etat.MultiStructure;

            if (multiStructure == null)
            {
                m_wndListeVariables.Enabled  = false;
                m_txtFormuleVariable.Visible = false;
                return;
            }
            IElementAVariablesDynamiques element = multiStructure;
            ArrayList lst = new ArrayList(element.ListeVariables);

            for (int nVar = lst.Count - 1; nVar >= 0; nVar--)
            {
                if (!((IVariableDynamique)lst[nVar]).IsChoixUtilisateur())
                {
                    lst.RemoveAt(nVar);
                }
            }
            m_wndListeVariables.Remplir(lst, false);
            m_bListeVariablesRemplie = true;
        }
예제 #7
0
        /// //////////////////////////////////////////
        protected override void InitChamps()
        {
            base.InitChamps();
            m_wndAideFormule.FournisseurProprietes = ObjetEdite.Process;
            m_wndAideFormule.ObjetInterroge        = typeof(CProcess);

            m_txtFormuleCle.Init(m_wndAideFormule.FournisseurProprietes, m_wndAideFormule.ObjetInterroge);
            m_txtFormuleDescriptif.Init(m_wndAideFormule.FournisseurProprietes, m_wndAideFormule.ObjetInterroge);
            m_txtFormuleLibelle.Init(m_wndAideFormule.FournisseurProprietes, m_wndAideFormule.ObjetInterroge);
            m_txtFormuleListeDocuments.Init(m_wndAideFormule.FournisseurProprietes, m_wndAideFormule.ObjetInterroge);
            m_txtFormuleNomFichier.Init(m_wndAideFormule.FournisseurProprietes, typeof(CDocumentGED));

            CListeObjetsDonnees liste = new CListeObjetsDonnees(CSc2iWin32DataClient.ContexteCourant, typeof(CCategorieGED));

            m_wndListeCategories.Remplir(liste, false);
            List <CDbKey> listeDbKeysCategorie = new List <CDbKey>(ZipGedDansGed.ListeDbKeysCategoriesStockage);

            foreach (ListViewItem item in m_wndListeCategories.Items)
            {
                CCategorieGED cat = (CCategorieGED)item.Tag;
                if (listeDbKeysCategorie.Contains(cat.DbKey))
                {
                    item.Checked = true;
                }
                else
                {
                    item.Checked = false;
                }
            }

            m_txtFormuleListeDocuments.Formule = ZipGedDansGed.ExpressionListeDocuments;
            m_txtFormuleCle.Text        = ZipGedDansGed.ExpressionCle.GetString();
            m_txtFormuleDescriptif.Text = ZipGedDansGed.ExpressionDescriptif.GetString();
            m_txtFormuleLibelle.Text    = ZipGedDansGed.ExpressionLibelle.GetString();
            m_txtFormuleNomFichier.Text = ZipGedDansGed.ExpressionNomsFichiers.GetString();
        }
예제 #8
0
        /// //////////////////////////////////////////
        protected override void InitChamps()
        {
            base.InitChamps();
            m_wndAideFormule.FournisseurProprietes = ObjetEdite.Process;
            m_wndAideFormule.ObjetInterroge        = typeof(CProcess);

            m_txtFormuleCle.Init(m_wndAideFormule.FournisseurProprietes, m_wndAideFormule.ObjetInterroge);
            m_txtFormuleDescriptif.Init(m_wndAideFormule.FournisseurProprietes, m_wndAideFormule.ObjetInterroge);
            m_txtFormuleLibelle.Init(m_wndAideFormule.FournisseurProprietes, m_wndAideFormule.ObjetInterroge);
            m_txtFormuleVariable.Init(m_wndAideFormule.FournisseurProprietes, m_wndAideFormule.ObjetInterroge);

            CListeObjetsDonnees liste = new CListeObjetsDonnees(CSc2iWin32DataClient.ContexteCourant, typeof(CCategorieGED));

            m_wndListeCategories.Remplir(liste, false);
            foreach (ListViewItem item in m_wndListeCategories.Items)
            {
                CCategorieGED cat = (CCategorieGED)item.Tag;
                if (ActionGenererEtat.ListeIdsCategoriesStockage.Contains(cat.Id))
                {
                    item.Checked = true;
                }
                else
                {
                    item.Checked = false;
                }
            }

            liste = new CListeObjetsDonnees(CSc2iWin32DataClient.ContexteCourant, typeof(sc2i.documents.C2iRapportCrystal));
            m_comboModeleEtat.ListDonnees = liste;
            C2iRapportCrystal rapport = new C2iRapportCrystal(CSc2iWin32DataClient.ContexteCourant);

            m_tableIdVariableToFormule.Clear();
            if (rapport.ReadIfExists(ActionGenererEtat.IdEtatCrystal))
            {
                m_comboModeleEtat.SelectedValue = rapport;
                CMultiStructureExport multiStructure = rapport.MultiStructure;
                if (multiStructure != null)
                {
                    foreach (IVariableDynamique variable in multiStructure.ListeVariables)
                    {
                        m_tableIdVariableToFormule[variable.IdVariable] = ActionGenererEtat.GetExpressionForVariableFiltre(variable.IdVariable);
                    }
                }
            }
            else
            {
                m_comboModeleEtat.SelectedValue = null;
            }

            UpdateListeVariables();

            m_txtFormuleCle.Text        = ActionGenererEtat.ExpressionCle.GetString();
            m_txtFormuleDescriptif.Text = ActionGenererEtat.ExpressionDescriptif.GetString();
            m_txtFormuleLibelle.Text    = ActionGenererEtat.ExpressionLibelle.GetString();

            m_cmbFormat.DisplayMember = "Libelle";
            m_cmbFormat.ValueMember   = "Valeur";
            m_cmbFormat.DataSource    = CUtilSurEnum.GetCouplesFromEnum(typeof(TypeFormatExportCrystal));

            m_cmbFormat.SelectedValue = (int)ActionGenererEtat.FormatExport;

            m_chkStocker.Checked  = ActionGenererEtat.StockerDansLaGed;
            m_chkImprimer.Checked = ActionGenererEtat.ImprimerSurClient;
        }
예제 #9
0
        private CResultAErreur CFormEditionGroupeActeurs_OnInitPage(object page)
        {
            CResultAErreur result = CResultAErreur.True;

            using (CWaitCursor waiter = new CWaitCursor())
            {
                if (page == m_pageGroupes)
                {
                    CListeObjetsDonnees liste = new CListeObjetsDonnees(GroupeActeur.ContexteDonnee, typeof(CGroupeActeur), false);
                    //Le groupe ne doit pas dépendre d'un groupe dépendant de lui même !!
                    int[] idsDependants = GroupeActeur.GetHierarchieGroupesContenus();
                    if (idsDependants.Length > 0)
                    {
                        string strFiltre = "";
                        foreach (int nId in idsDependants)
                        {
                            strFiltre += nId.ToString() + ",";
                        }
                        strFiltre    = "(" + strFiltre.Substring(0, strFiltre.Length - 1) + ")";
                        strFiltre    = CGroupeActeur.c_champId + " not in " + strFiltre;
                        liste.Filtre = new CFiltreData(strFiltre);
                    }

                    m_panelGroupesContenants.Init(
                        liste,
                        GroupeActeur.RelationsGroupesContenantsDirects,
                        GroupeActeur,
                        "GroupeContenu",
                        "GroupeContenant");
                    m_panelGroupesContenants.RemplirGrille();

                    m_panelNecessitesGroupes.Init(
                        liste,
                        GroupeActeur.RelationsGroupesNecessaires,
                        GroupeActeur,
                        "GroupeNecessitant",
                        "GroupeNecessaire");
                    m_panelNecessitesGroupes.RemplirGrille();


                    m_wndListeMembres.Remplir(GroupeActeur.RelationsGroupesContenusDirects);
                }
                else if (page == m_pageRoles)
                {
                    m_listViewRoles.Remplir(CRoleActeur.Roles);
                    m_listViewRoles.CheckBoxes = true;

                    Hashtable tableRoles = new Hashtable();
                    foreach (CRelationRoleActeur_GroupeActeur rel in GroupeActeur.RelationsRoles)
                    {
                        if (rel.RoleActeur != null)
                        {
                            tableRoles[rel.RoleActeur] = rel;
                        }
                    }

                    foreach (ListViewItem item in m_listViewRoles.Items)
                    {
                        if (tableRoles.ContainsKey((CRoleActeur)item.Tag))
                        {
                            item.Checked = true;
                        }
                    }
                }
                else if (page == m_pageChampsCustom)
                {
                    m_panelDefinisseurChamps.InitPanel
                        (GroupeActeur,
                        typeof(CFormListeChampsCustom),
                        typeof(CFormListeFormulaires));
                }
                else if (page == m_pageEOs)
                {
                    m_panelEOS.Init(GroupeActeur);
                }
            }
            return(result);
        }
        //-------------------------------------------------------------------
        public void RemplirGrille()
        {
            m_listView.CheckBoxes = !LockEdition;
            m_listView.BeginUpdate();
            try
            {
                if (m_listeObjetsSource != null)
                {
                    CFiltreData oldFiltre = m_listeObjetsSource.Filtre;
                    bool        bIsAvance = oldFiltre is CFiltreDataAvance;
                    if (LockEdition)
                    {
                        string strIds     = "";
                        string strChampId = "";
                        string strTable   = "";
                        foreach (CObjetDonneeAIdNumeriqueAuto objet in m_hashtableObjets.Keys)
                        {
                            strIds += objet.Id.ToString() + (bIsAvance?";":",");
                            if (strChampId == "")
                            {
                                strChampId = objet.GetChampId();
                                strTable   = objet.GetNomTable();
                            }
                        }
                        if (strIds.Length == 0)
                        {
                            m_listView.Items.Clear();
                            return;
                        }
                        strIds = strIds.Substring(0, strIds.Length - 1);
                        CFiltreData filtre;
                        if (bIsAvance)
                        {
                            filtre = new CFiltreDataAvance(
                                strTable,
                                strChampId + " in {" + strIds + "}");
                        }
                        else
                        {
                            filtre = new CFiltreData(
                                strChampId + " in (" + strIds + ")");
                        }
                        m_listeObjetsSource.Filtre = CFiltreData.GetAndFiltre(oldFiltre, filtre);
                    }
                    m_listView.Remplir(m_listeObjetsSource);
                    if (LockEdition)
                    {
                        m_listeObjetsSource.Filtre = oldFiltre;
                        return;
                    }

                    foreach (ListViewItem item in m_listView.Items)
                    {
                        CObjetDonneeAIdNumeriqueAuto objet = (CObjetDonneeAIdNumeriqueAuto)item.Tag;
                        CObjetDonnee relation = (CObjetDonnee)m_hashtableObjets[objet];
                        bool         bCheck   = relation != null;
                        if (ExclusionParException)
                        {
                            bCheck = !bCheck;
                        }
                        if (bCheck)
                        {
                            item.Checked = true;
                        }
                        else
                        {
                            if (m_listView.CheckBoxes == false)
                            {
                                item.Remove();
                            }
                        }
                    }
                }
            }
            finally
            {
                m_listView.EndUpdate();
            }
        }