コード例 #1
0
 /// <summary>
 /// Initialise the settings object based upon the current report group ID
 /// </summary>
 private void InitSettings()
 {
     EMMADataSet.RptGroupSettingsDataTable settingsTable = new EMMADataSet.RptGroupSettingsDataTable();
     lock (rptGroupSettingsTableAdapter)
     {
         rptGroupSettingsTableAdapter.FillByID(settingsTable, _id);
     }
     if (settingsTable.Count > 0)
     {
         XmlDocument settingsDoc = new XmlDocument();
         settingsDoc.LoadXml(settingsTable[0].Settings);
         _settings = new ReportGroupSettings(settingsDoc);
     }
     else
     {
         _settings = new ReportGroupSettings(_id);
     }
 }
コード例 #2
0
        /// <summary>
        /// Store the report group's settings in the database
        /// </summary>
        public void StoreSettings()
        {
            // If it's null then it's not been accessed and there are no changes to store..
            if (_settings != null)
            {
                if (_settings.Changed)
                {
                    EMMADataSet.RptGroupSettingsDataTable settingsTable = new EMMADataSet.RptGroupSettingsDataTable();
                    lock (rptGroupSettingsTableAdapter)
                    {
                        rptGroupSettingsTableAdapter.FillByID(settingsTable, _id);
                        if (settingsTable.Count == 0)
                        {
                            EMMADataSet.RptGroupSettingsRow newRow = settingsTable.NewRptGroupSettingsRow();
                            newRow.ReportGroupID = _id;
                            // Just make this blank temporarilly so we are allowed to add it to the table.
                            newRow.Settings = "";
                            settingsTable.AddRptGroupSettingsRow(newRow);
                        }
                        settingsTable[0].Settings = _settings.Xml.InnerXml;

                        rptGroupSettingsTableAdapter.Update(settingsTable);
                    }
                    _settings.Changed = false;
                }
            }
            // Store character level settings as well.
            foreach (EVEAccount account in _accounts)
            {
                foreach (APICharacter character in account.Chars)
                {
                    if (character.CharIncWithRptGroup || character.CorpIncWithRptGroup)
                    {
                        character.StoreSettings();
                    }
                }
            }
        }