示例#1
0
        /// <summary>
        /// Commit the changes to memory, save the configuration settings to disk and create a backup.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void SaveConfigurationFileToolStripMenuItem_Click(object sender, EventArgs e)
        {
            #region root path file
            // Update the paths in memory
            GlobalParameters.OutputPath        = textBoxOutputPath.Text;
            GlobalParameters.ConfigurationPath = textBoxConfigurationPath.Text;

            var localEnvironment = (KeyValuePair <TeamWorkingEnvironment, string>)comboBoxEnvironments.SelectedItem;
            GlobalParameters.WorkingEnvironment           = localEnvironment.Key.environmentKey;
            GlobalParameters.WorkingEnvironmentInternalId = localEnvironment.Key.environmentInternalId;

            // Save the paths from memory to disk.
            UpdateRootPathFile();
            #endregion

            // Make sure the new paths as updated are available upon save for backup etc.
            // Check if the paths and files are available, just to be sure.
            FileHandling.InitialisePath(GlobalParameters.ConfigurationPath);
            FileHandling.InitialisePath(GlobalParameters.OutputPath);
            TeamConfiguration.CreateDummyEnvironmentConfigurationFile(GlobalParameters.ConfigurationPath + GlobalParameters.ConfigFileName + '_' + GlobalParameters.WorkingEnvironment + GlobalParameters.FileExtension);
            ValidationSetting.CreateDummyValidationFile(GlobalParameters.ConfigurationPath + GlobalParameters.ValidationFileName + '_' + GlobalParameters.WorkingEnvironment + GlobalParameters.FileExtension);
            JsonExportSetting.CreateDummyJsonConfigurationFile(GlobalParameters.ConfigurationPath + GlobalParameters.JsonExportConfigurationFileName + '_' + GlobalParameters.WorkingEnvironment + GlobalParameters.FileExtension);

            // Create a file backup for the configuration file
            try
            {
                TeamUtility.CreateFileBackup(GlobalParameters.ConfigurationPath + GlobalParameters.ConfigFileName + '_' + GlobalParameters.WorkingEnvironment + GlobalParameters.FileExtension);
                richTextBoxInformation.Text = "A backup of the current configuration was made at " + DateTime.Now + " in " + textBoxConfigurationPath.Text + ".\r\n";
            }
            catch (Exception)
            {
                richTextBoxInformation.Text = "TEAM was unable to create a backup of the configuration file.";
            }


            // Update the in-memory variables for use throughout the application, to commit the saved changes for runtime use.
            // This is needed before saving to disk, as the EnvironmentConfiguration Class retrieves the values from memory.
            UpdateConfigurationInMemory();


            // Save the information
            LocalTeamEnvironmentConfiguration.SaveConfigurationFile();
            parentFormMain.RevalidateFlag = true;
        }
示例#2
0
        private void SetStandardConfigurationSettings()
        {
            if (checkBoxConfigurationSettings.Checked)
            {
                TeamUtility.CreateFileBackup(GlobalParameters.ConfigurationPath + GlobalParameters.ConfigFileName + '_' + GlobalParameters.WorkingEnvironment + FormBase.GlobalParameters.FileExtension);

                // Shared values (same for all samples)
                var stagingAreaPrefix           = "STG";
                var persistentStagingAreaPrefix = "PSA";

                var    hubTablePrefix     = "HUB_";
                var    satTablePrefix     = "SAT_";
                var    linkTablePrefix    = "LNK_";
                var    linkSatTablePrefix = "LSAT_";
                string psaKeyLocation     = "PrimaryKey";

                string keyIdentifier;
                string sourceRowId;
                string eventDateTime;
                string loadDateTime;
                string expiryDateTime;
                string changeDataIndicator;
                string recordSource;
                string etlProcessId;
                string etlUpdateProcessId;
                string logicalDeleteAttribute;
                string tableNamingLocation;
                string keyNamingLocation;
                string recordChecksum;
                string currentRecordIndicator;
                string alternativeRecordSource;
                string alternativeHubLoadDateTime;
                string alternativeSatelliteLoadDateTime;
                string alternativeRecordSourceFunction;
                string alternativeHubLoadDateTimeFunction;
                string alternativeSatelliteLoadDateTimeFunction;



                keyIdentifier = "_SK";

                sourceRowId                              = "SOURCE_ROW_ID";
                eventDateTime                            = "EVENT_DATETIME";
                loadDateTime                             = "LOAD_DATETIME";
                expiryDateTime                           = "LOAD_END_DATETIME";
                changeDataIndicator                      = "CDC_OPERATION";
                recordSource                             = "RECORD_SOURCE";
                etlProcessId                             = "MODULE_INSTANCE_ID";
                etlUpdateProcessId                       = "MODULE_UPDATE_INSTANCE_ID";
                logicalDeleteAttribute                   = "DELETED_RECORD_INDICATOR";
                tableNamingLocation                      = "Prefix";
                keyNamingLocation                        = "Suffix";
                recordChecksum                           = "HASH_FULL_RECORD";
                currentRecordIndicator                   = "CURRENT_RECORD_INDICATOR";
                alternativeRecordSource                  = "N/A";
                alternativeHubLoadDateTime               = "N/A";
                alternativeSatelliteLoadDateTime         = "N/A";
                alternativeRecordSourceFunction          = "False";
                alternativeHubLoadDateTimeFunction       = "False";
                alternativeSatelliteLoadDateTimeFunction = "False";


                TeamConfiguration.EnvironmentMode = EnvironmentModes.PhysicalMode;

                TeamConfiguration.StgTablePrefixValue = stagingAreaPrefix;
                TeamConfiguration.PsaTablePrefixValue = persistentStagingAreaPrefix;

                TeamConfiguration.HubTablePrefixValue  = hubTablePrefix;
                TeamConfiguration.SatTablePrefixValue  = satTablePrefix;
                TeamConfiguration.LinkTablePrefixValue = linkTablePrefix;
                TeamConfiguration.LsatTablePrefixValue = linkSatTablePrefix;
                TeamConfiguration.DwhKeyIdentifier     = keyIdentifier;
                TeamConfiguration.PsaKeyLocation       = psaKeyLocation;
                TeamConfiguration.TableNamingLocation  = tableNamingLocation;
                TeamConfiguration.KeyNamingLocation    = keyNamingLocation;

                TeamConfiguration.EventDateTimeAttribute                          = eventDateTime;
                TeamConfiguration.LoadDateTimeAttribute                           = loadDateTime;
                TeamConfiguration.ExpiryDateTimeAttribute                         = expiryDateTime;
                TeamConfiguration.ChangeDataCaptureAttribute                      = changeDataIndicator;
                TeamConfiguration.RecordSourceAttribute                           = recordSource;
                TeamConfiguration.EtlProcessAttribute                             = etlProcessId;
                TeamConfiguration.EtlProcessUpdateAttribute                       = etlUpdateProcessId;
                TeamConfiguration.RowIdAttribute                                  = sourceRowId;
                TeamConfiguration.RecordChecksumAttribute                         = recordChecksum;
                TeamConfiguration.CurrentRowAttribute                             = currentRecordIndicator;
                TeamConfiguration.LogicalDeleteAttribute                          = logicalDeleteAttribute;
                TeamConfiguration.EnableAlternativeRecordSourceAttribute          = alternativeRecordSourceFunction;
                TeamConfiguration.AlternativeRecordSourceAttribute                = alternativeRecordSource;
                TeamConfiguration.EnableAlternativeLoadDateTimeAttribute          = alternativeHubLoadDateTimeFunction;
                TeamConfiguration.AlternativeLoadDateTimeAttribute                = alternativeHubLoadDateTime;
                TeamConfiguration.EnableAlternativeSatelliteLoadDateTimeAttribute = alternativeSatelliteLoadDateTimeFunction;
                TeamConfiguration.AlternativeSatelliteLoadDateTimeAttribute       = alternativeSatelliteLoadDateTime;

                LocalTeamEnvironmentConfiguration.SaveConfigurationFile();
            }
        }