Beispiel #1
0
        public bool CreateDataSet(string CURRENT_USER, Int32 CURRENT_REGISTRY_ID, string name, string parent)
        {
            bool          objReturn  = false;
            XmlSerializer serializer = null;
            SharedDataSet dataSet    = null;
            MemoryStream  stream     = null;

            try
            {
                if (!CheckItemExists("DataSet", parent + "/" + name))
                {
                    if (rsMain == null)
                    {
                        rsMain = new ReportingService2010()
                        {
                            Url = ReportServiceUrl, Credentials = System.Net.CredentialCache.DefaultCredentials
                        }
                    }
                    ;

                    serializer = new XmlSerializer(typeof(SharedDataSet));
                    dataSet    = new SharedDataSet(CURRENT_REGISTRY_ID);
                    stream     = new MemoryStream();

                    serializer.Serialize(stream, dataSet);

                    byte[]    definition = stream.ToArray();
                    Warning[] warnings   = null;

                    LogDetails  logDetails = new LogDetails(String.Format("{0}.{1}", System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.FullName, System.Reflection.MethodBase.GetCurrentMethod().Name), CURRENT_USER, CURRENT_REGISTRY_ID);
                    CatalogItem item       = rsMain.CreateCatalogItem("DataSet", name, parent, false, definition, null, out warnings);
                    LogManager.LogTiming(logDetails);

                    if (item != null)
                    {
                        objReturn = true;
                    }
                }
                else
                {
                    objReturn = true;
                }
            }
            catch (Exception ex)
            {
                LogManager.LogError(ex.Message, String.Format("{0}.{1}", System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.FullName, System.Reflection.MethodBase.GetCurrentMethod().Name), CURRENT_USER, CURRENT_REGISTRY_ID);
                throw ex;
            }
            finally
            {
                if (stream != null)
                {
                    stream.Close();
                    stream.Dispose();
                    stream = null;
                }
            }

            return(objReturn);
        }
Beispiel #2
0
        /// <summary>
        /// Create an SDS object in memory
        /// </summary>
        /// <param name="shared">Boolean indicating whether a shared dataset is required</param>
        /// <returns>The new dataset object</returns>
        public DataSet CreateSDSInMemory(bool shared)
        {
            // Create and SDS object
            DataSet internalSDS;

            // If a shared dataset has been specified, then open a shared dataset object, otherwise open an ordinary dataset object
#if true
            internalSDS = DataSet.Open("msds:memory");
#else
            if (shared)
            {
                internalSDS = SharedDataSet.Open("msds:memory2");
            }
            else
            {
                internalSDS = DataSet.Open("msds:memory2");
            }
#endif

            // Disable auto commit
            internalSDS.IsAutocommitEnabled = false;

            // Return the SDS object
            return(internalSDS);
        }