private DataSet GetDataSetFromList(IEnumerable <CObjetDonneeAIdNumerique> listeSource)
        {
            List <GLColumn> lstColonnes = new List <GLColumn>();

            foreach (GLColumn col in m_panelListe.Columns)
            {
                lstColonnes.Add(col);
            }
            C2iStructureExport structure = CConvertisseurInfoStructureDynamiqueToDefinitionChamp.ConvertToStructureExport(
                ListeObjets.TypeObjets,
                lstColonnes.ToArray());

            if (structure == null)
            {
                return(null);
            }
            structure.TraiterSurServeur = true;
            DataSet        ds     = new DataSet("EXPORT OBJECTS");
            CResultAErreur result = structure.Export(
                ListeObjets.ContexteDonnee.IdSession,
                listeSource,
                ref ds,
                null);

            if (!result)
            {
                return(null);
            }

            return(ds);
        }
Exemple #2
0
        /// //////////////////////////////////////////////////////////
        public CResultAErreur ExportData(string strChaineSerializationListeObjetDonnee, C2iStructureExport structure, IElementAVariablesDynamiquesAvecContexteDonnee elementAVariablesDynamiquesPourFiltre, IIndicateurProgression indicateur)
        {
            System.Threading.Thread.CurrentThread.Priority = System.Threading.ThreadPriority.BelowNormal;
            //Déserialise la liste d'objets
            CStringSerializer serializer = new CStringSerializer(strChaineSerializationListeObjetDonnee, ModeSerialisation.Lecture);
            C2iSponsor        sponsor    = new C2iSponsor();

            sponsor.Register(indicateur);
            CResultAErreur result = CResultAErreur.True;

            try
            {
                using (CContexteDonnee contexte = new CContexteDonnee(IdSession, true, false))
                {
                    I2iSerializable objet = null;
                    contexte.GestionParTablesCompletes = true;
                    result = serializer.TraiteObject(ref objet, contexte);
                    if (!result)
                    {
                        return(result);
                    }
                    if (objet == null || !(objet is CListeObjetsDonnees))
                    {
                        result.EmpileErreur(I.T("Error during the deserialization of source list|101"));
                        return(result);
                    }
                    CListeObjetsDonnees listeSource = (CListeObjetsDonnees)objet;
                    listeSource.RemplissageProgressif = false;
                    structure.TraiterSurServeur       = false;
                    DataSet ds = new DataSet();
                    result = structure.Export(IdSession, listeSource, ref ds, elementAVariablesDynamiquesPourFiltre, indicateur);
                    if (result)
                    {
                        result.Data = ds;
                    }
                    return(result);
                }
            }
            catch (Exception e)
            {
                result.EmpileErreur(new CErreurException(e));
            }
            finally
            {
                sponsor.Unregister(indicateur);
            }
            return(result);
        }