Esempio n. 1
0
        private void ExportWorker_DoWork(object sender, DoWorkEventArgs e)
        {
            exportWorker.ReportProgress(0, "");

            var exportSettings = ( ExportSettings )e.Argument;

            // clear filesystem directories
            ServantKeeperApi.InitializeExport();

            // export individuals and phone numbers
            if (exportSettings.ExportIndividuals)
            {
                exportWorker.ReportProgress(1, "Exporting Individuals...");
                ServantKeeperApi.ExportIndividuals(exportSettings.ModifiedSince, exportSettings.ExportEmailType, exportSettings.ExportCampus);

                if (ServantKeeperApi.ErrorMessage.IsNotNullOrWhitespace())
                {
                    txtMessages.Text = $"Error exporting individuals: {ServantKeeperApi.ErrorMessage}";
                }

                /*exportWorker.ReportProgress( 1, "Exporting Phones..." );
                 * ServantKeeperApi.ExportPhoneNumbers( exportSettings.ModifiedSince );
                 *
                 * if ( ServantKeeperApi.ErrorMessage.IsNotNullOrWhitespace() )
                 * {
                 *  txtMessages.Text = $"Error exporting phones: {ServantKeeperApi.ErrorMessage}";
                 * }*/
            }

            // export contributions
            if (exportSettings.ExportContributions)
            {
                exportWorker.ReportProgress(30, "Exporting Funds...");

                ServantKeeperApi.ExportFunds();
                if (ServantKeeperApi.ErrorMessage.IsNotNullOrWhitespace())
                {
                    exportWorker.ReportProgress(31, $"Error exporting funds: {ServantKeeperApi.ErrorMessage}");
                }

                exportWorker.ReportProgress(32, "Exporting Contributions...");

                ServantKeeperApi.ExportContributions(exportSettings.ModifiedSince);
                if (ServantKeeperApi.ErrorMessage.IsNotNullOrWhitespace())
                {
                    exportWorker.ReportProgress(33, $"Error exporting contributions: {ServantKeeperApi.ErrorMessage}");
                }
            }


            // finalize the package
            ImportPackage.FinalizePackage("servantkeeper-export.slingshot");

            // schedule the API status to update (the status takes a few mins to update)
            _apiUpdateTimer.Start();
        }
Esempio n. 2
0
        private void ExportWorker_DoWork(object sender, DoWorkEventArgs e)
        {
            exportWorker.ReportProgress(0, "");

            var exportSettings = (ExportSettings)e.Argument;

            // clear filesystem directories
            ServantKeeperApi.InitializeExport(exportSettings.ModifiedSince, exportSettings.NoContributionsBefore);

            // export individuals and phone numbers
            if (exportSettings.ExportIndividuals)
            {
                exportWorker.ReportProgress(1, "Exporting Individuals...");
                ServantKeeperApi.ExportIndividuals();

                if (ServantKeeperApi.ErrorMessage.IsNotNullOrWhitespace())
                {
                    txtMessages.Text = $"Error exporting individuals: {ServantKeeperApi.ErrorMessage}";
                }
            }

            // export contributions
            if (exportSettings.ExportContributions)
            {
                exportWorker.ReportProgress(32, "Exporting Contributions...");

                ServantKeeperApi.ExportContributions();
                if (ServantKeeperApi.ErrorMessage.IsNotNullOrWhitespace())
                {
                    exportWorker.ReportProgress(33, $"Error exporting contributions: {ServantKeeperApi.ErrorMessage}");
                }
            }

            // export groups
            if (exportSettings.ExportGroups)
            {
                exportWorker.ReportProgress(54, $"Exporting Groups...");

                ServantKeeperApi.ExportGroups(exportSettings.SelectedGroups);

                if (ServantKeeperApi.ErrorMessage.IsNotNullOrWhitespace())
                {
                    exportWorker.ReportProgress(54, $"Error exporting groups: {ServantKeeperApi.ErrorMessage}");
                }
            }

            // finalize the package
            ImportPackage.FinalizePackage("servantkeeper.slingshot");

            // schedule the API status to update (the status takes a few mins to update)
            _apiUpdateTimer.Start();
        }
Esempio n. 3
0
        /// <summary>
        /// Handles the Loaded event of the Window control.
        /// </summary>
        /// <param name="sender">The source of the event.</param>
        /// <param name="e">The <see cref="RoutedEventArgs"/> instance containing the event data.</param>
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            // Retrieve the Group Names from the database
            Dictionary <int, string> AllGroups = ServantKeeperApi.GetAllGroups();

            // Populate Groups listbox control with available group names
            if (AllGroups.Any())
            {
                foreach (var group in AllGroups)
                {
                    GroupsListBox.Items.Add(new ListBoxItem()
                    {
                        Content = group.Value, Uid = group.Key.ToString()
                    });
                }
            }

            // Initialize values
            txtImportCutOff.Text        = "1/1/1900";
            txtContributionsCutOff.Text = "1/1/2017";
            Groups_Checked(null, null);
        }
Esempio n. 4
0
        private void btnOpen_Click(object sender, RoutedEventArgs e)
        {
            lblMessage.Text = string.Empty;

            if (txtFilename.Text != string.Empty && txtFilename.Text.ToLower().Contains(".skb"))
            {
                ServantKeeperApi.OpenConnection(txtFilename.Text);

                if (ServantKeeperApi.IsConnected)
                {
                    MainWindow mainWindow = new MainWindow();
                    mainWindow.Show();
                    this.Close();
                }
                else
                {
                    lblMessage.Text = $"Could not open the SKB backup file. {ServantKeeperApi.ErrorMessage}";
                }
            }
            else
            {
                lblMessage.Text = "Please choose a SKB backup file.";
            }
        }
Esempio n. 5
0
        private void btnOpen_Click(object sender, RoutedEventArgs e)
        {
            lblMessage.Text = string.Empty;

            if (txtFilename.Text != string.Empty)
            {
                ServantKeeperApi.OpenConnection(txtFilename.Text);

                if (ServantKeeperApi.IsConnected)
                {
                    MainWindow mainWindow = new MainWindow();
                    mainWindow.Show();
                    this.Close();
                }
                else
                {
                    lblMessage.Text = $"Could not open the MS Access database file. {ServantKeeperApi.ErrorMessage}";
                }
            }
            else
            {
                lblMessage.Text = "Please choose a MS Access database file.";
            }
        }