Example #1
0
        private void InitImportMapping(List <ImportFieldMapping> mappingList)
        {
            // Name
            ImportFieldMapping fullName = new ImportFieldMapping(Col_Name, true);

            fullName.Validator = new NotEmptyDataValidator();
            mappingList.Add(fullName);

            ImportFieldMapping desc = new ImportFieldMapping(Col_Description, false);

            mappingList.Add(desc);

            ImportFieldMapping price = new ImportFieldMapping(Col_UnitPrice, false);

            price.Validator = new DecimalDataValidator();
            mappingList.Add(price);

            ImportFieldMapping uom = new ImportFieldMapping(Col_UnitOfMeasure, false);

            mappingList.Add(uom);

            ImportFieldMapping packaging = new ImportFieldMapping(Col_Packaging, false);

            mappingList.Add(packaging);

            ImportFieldMapping categoryId = new ImportFieldMapping(Col_CategoryId, false);

            categoryId.Validator = new IntegerDataValidator();
            mappingList.Add(categoryId);
        }
Example #2
0
        public void RemoveMappingCommandAction(object parameter)
        {
            ImportFieldMapping mapping = parameter as ImportFieldMapping;

            Mappings.Remove(mapping);
            NotifyPropertyChanged("MappingsConfigured");
        }
Example #3
0
        public CellEditorWindow(ImportFieldMapping mapping, string currentValue)
        {
            InitializeComponent();
            this.Mapping = mapping;
            this.CurrentValue = currentValue;
            this.NewValue = currentValue;

            this.DataContext = this;

            Loaded += new RoutedEventHandler(CellEditorWindow_Loaded);
        }
 private void AddFixedField()
 {
     InputBox.Show(this.FindParentWindow(), "New fixed column", "Enter the value you wish to fix:", (val) => {
         var mapping = new ImportFieldMapping {
             IsFixed = true, DefaultValue = val
         };
         var vm = new ImportFieldMappingViewModel(mapping);
         _model.Add(vm);
         lvwMappings.SelectedItem = vm;
     });
 }
Example #5
0
        private void InitImportMapping(List <ImportFieldMapping> mappingList)
        {
            ImportFieldMapping colKey = new ImportFieldMapping(Col_Key, true);

            colKey.Validator = new NotEmptyDataValidator();
            mappingList.Add(colKey);

            ImportFieldMapping colValue = new ImportFieldMapping(Col_Value, true);

            colValue.Validator = new NotEmptyDataValidator();
            mappingList.Add(colValue);
        }
        public override void OnPageEnter(WizardDirection fromdirection)
        {
            var progress = new ProgressWindow(this.FindParentWindow(), "Extracting column information from data source...", true);

            _fields = _fieldSource();
            lvwFields.ItemsSource = _fields;

            CollectionView           myView           = (CollectionView)CollectionViewSource.GetDefaultView(lvwFields.ItemsSource);
            PropertyGroupDescription groupDescription = new PropertyGroupDescription("Category");

            myView.GroupDescriptions.Add(groupDescription);
            var model = new List <ImportFieldMapping>();

            JobExecutor.QueueJob(() => {
                List <String> columns = null;
                columns = ImportContext.Importer.GetColumnNames();

                var existingMappings = ImportContext.FieldMappings;
                if (existingMappings != null && existingMappings.Count() > 0)
                {
                    foreach (ImportFieldMapping mapping in existingMappings)
                    {
                        model.Add(mapping);
                    }
                }
                else
                {
                    foreach (string columnName in columns)
                    {
                        var mapping = new ImportFieldMapping {
                            SourceColumn = columnName
                        };
                        model.Add(mapping);
                    }
                }

                _model = new ObservableCollection <ImportFieldMappingViewModel>(model.Select((m) => {
                    return(new ImportFieldMappingViewModel(m));
                }));

                lvwMappings.InvokeIfRequired(() => {
                    lvwMappings.ItemsSource = _model;
                });

                progress.InvokeIfRequired(() => {
                    progress.Dispose();
                });
            });
        }
        private void InitImportMapping(List <ImportFieldMapping> mappingList)
        {
            // Name
            ImportFieldMapping name = new ImportFieldMapping(Col_Name, true);

            name.Validator = new NotEmptyDataValidator();
            mappingList.Add(name);

            ImportFieldMapping address = new ImportFieldMapping(Col_Address, false);

            mappingList.Add(address);

            ImportFieldMapping colCity = new ImportFieldMapping(Col_City, false);

            mappingList.Add(colCity);

            ImportFieldMapping colCountry = new ImportFieldMapping(Col_Country, false);

            mappingList.Add(colCountry);

            ImportFieldMapping colZipCode = new ImportFieldMapping(Col_ZipCode, false);

            mappingList.Add(colZipCode);

            ImportFieldMapping colContactPerson = new ImportFieldMapping(Col_ContactPerson, false);

            mappingList.Add(colContactPerson);

            ImportFieldMapping contactPhone = new ImportFieldMapping(Col_ContactPhone, false);

            mappingList.Add(contactPhone);
            ImportFieldMapping contactFax = new ImportFieldMapping(Col_ContactFax, false);

            mappingList.Add(contactFax);
            ImportFieldMapping contactEmail = new ImportFieldMapping(Col_ContactEmail, false);

            mappingList.Add(contactEmail);
            ImportFieldMapping website = new ImportFieldMapping(Col_Website, false);

            mappingList.Add(website);

            ImportFieldMapping category = new ImportFieldMapping(Col_Category, false);

            category.Validator = new IntegerDataValidator();
            mappingList.Add(category);
        }
        private void CollectMappingInfo()
        {
            for (int index = 0; index < MappingList.Count; index++)
            {
                RepeaterItem       item    = rptItems.Items[index];
                ImportFieldMapping mapping = MappingList[index];

                DropDownList ddl = item.FindControl("ddlColumns") as DropDownList;
                if (ddl != null)
                {
                    if (ddl.SelectedValue != null)
                    {
                        mapping.ColumnName = ddl.SelectedValue;
                    }
                }
            }
        }
        protected void rptItems_ItemCreated(object sender, System.Web.UI.WebControls.RepeaterItemEventArgs e)
        {
            DropDownList ddl = e.Item.FindControl("ddlColumns") as DropDownList;

            if (ddl != null)
            {
                ddl.Items.Add(new ListItem(string.Empty, string.Empty));
                foreach (ExcelSheetColumn col in CurrentSelectedSheet.Columns)
                {
                    ddl.Items.Add(new ListItem(col.Name, col.Name));
                }

                ImportFieldMapping mapping = e.Item.DataItem as ImportFieldMapping;
                if (mapping != null)
                {
                    ddl.SelectedValue = mapping.ColumnName;
                }
            }
        }
Example #10
0
        public async void AddMappingCommandAction(Object parameter)
        {
            string header = SelectedHeader;
            StandardFieldAttribute selectedField = SelectedField;

            IEnumerable <ImportFieldMapping> existing = Mappings.Where(ifm => ifm.Attribute == selectedField);

            if (existing.Any())
            {
                await App.Controller.MainPageInstance.DisplayAlert("Add Mapping",
                                                                   String.Format("A mapping has already been configured for '{0}'.", selectedField.DisplayName),
                                                                   "OK");
            }
            else
            {
                ImportFieldMapping mapping = new ImportFieldMapping(selectedField, header);
                Mappings.Add(mapping);
                SelectedHeader = null;
                SelectedField  = null;
                NotifyPropertyChanged("MappingsConfigured");
            }
        }
Example #11
0
        public static List <ImportFieldMapping> GetFieldMappings()
        {
            List <ImportFieldMapping> mappings = new List <ImportFieldMapping>();

            ImportFieldMapping name        = new ImportFieldMapping(StandardFieldAttribute.Get(typeof(Credential), "Name"), "Name");
            ImportFieldMapping description = new ImportFieldMapping(StandardFieldAttribute.Get(typeof(Credential), "Description"), "Description");
            ImportFieldMapping website     = new ImportFieldMapping(StandardFieldAttribute.Get(typeof(Credential), "Website"), "Website");
            ImportFieldMapping notes       = new ImportFieldMapping(StandardFieldAttribute.Get(typeof(Credential), "Notes"), "Notes");
            ImportFieldMapping username    = new ImportFieldMapping(StandardFieldAttribute.Get(typeof(Credential), "Username"), "Username");
            ImportFieldMapping password    = new ImportFieldMapping(StandardFieldAttribute.Get(typeof(Credential), "Password"), "Password");

            mappings.AddRange(new ImportFieldMapping[]
            {
                name,
                description,
                website,
                notes,
                username,
                password
            });

            return(mappings);
        }
        private void LoadTemplate()
        {
            var dlg = new OpenFileDialog();

            dlg.Filter = "Import Template Files (*.bip)|*.bip|All files (*.*)|*.*";
            if (dlg.ShowDialog().GetValueOrDefault())
            {
                var inifile = new IniFile();
                inifile.Load(dlg.FileName);

                var filtername = inifile.GetValue("Import", "ImportFilter");

                if (string.IsNullOrWhiteSpace(filtername))
                {
                    ErrorMessage.Show("Invalid import profile - the name of import filter could not be read!");
                    return;
                }

                var importer = _model.Find((filter) => {
                    return(filter.Name.Equals(filtername, StringComparison.CurrentCultureIgnoreCase));
                });

                if (importer == null)
                {
                    ErrorMessage.Show("Invalid import profile - the unrecognized or unloaded import filter: " + filtername);
                    return;
                }

                var epStr = inifile.GetValue("Import", "ProfileStr", "");

                if (string.IsNullOrWhiteSpace(epStr))
                {
                    ErrorMessage.Show("Invalid import profile - No profile string specified.");
                    return;
                }

                importer.InitFromProfileString(epStr);
                ImportContext.Importer = importer;

                listBox.SelectedItem = importer;

                var mappings = new List <ImportFieldMapping>();

                // Now the mappings...
                var colCount = inifile.GetInt("Import", "FieldCount");
                for (int i = 0; i < colCount; ++i)
                {
                    String fieldKey = string.Format("Field{0}", i);
                    var    mapStr   = inifile.GetValue("Mappings", fieldKey);
                    if (!string.IsNullOrWhiteSpace(mapStr))
                    {
                        var mapEp   = EntryPoint.Parse(mapStr);
                        var mapping = new ImportFieldMapping {
                            SourceColumn = mapEp.Name, TargetColumn = mapEp["Mapping"], DefaultValue = mapEp["Default", null], IsFixed = Boolean.Parse(mapEp["IsFixed", "false"])
                        };
                        mappings.Add(mapping);

                        var transformStr = inifile.GetValue("Transformations", fieldKey);
                        if (!string.IsNullOrWhiteSpace(transformStr))
                        {
                            mapping.Transformer = TransformationPipline.BuildFromState(transformStr);
                        }
                    }
                }
                ImportContext.FieldMappings = mappings;

                RaiseRequestNextPage();
            }
        }
        private void LoadTemplate()
        {
            var dlg = new OpenFileDialog();
            dlg.Filter = "Import Template Files (*.bip)|*.bip|All files (*.*)|*.*";
            if (dlg.ShowDialog().GetValueOrDefault()) {
                var inifile = new IniFile();
                inifile.Load(dlg.FileName);

                var filtername = inifile.GetValue("Import", "ImportFilter");

                if (string.IsNullOrWhiteSpace(filtername)) {
                    ErrorMessage.Show("Invalid import profile - the name of import filter could not be read!");
                    return;
                }

                var importer = _model.Find((filter) => {
                    return filter.Name.Equals(filtername, StringComparison.CurrentCultureIgnoreCase);
                });

                if (importer == null) {
                    ErrorMessage.Show("Invalid import profile - the unrecognized or unloaded import filter: " + filtername);
                    return;
                }

                var epStr = inifile.GetValue("Import", "ProfileStr", "");

                if (string.IsNullOrWhiteSpace(epStr)) {
                    ErrorMessage.Show("Invalid import profile - No profile string specified.");
                    return;
                }

                importer.InitFromProfileString(epStr);
                ImportContext.Importer = importer;

                listBox.SelectedItem = importer;

                var mappings = new List<ImportFieldMapping>();

                // Now the mappings...
                var colCount = inifile.GetInt("Import", "FieldCount");
                for (int i = 0; i < colCount; ++i) {
                    String fieldKey = string.Format("Field{0}", i);
                    var mapStr = inifile.GetValue("Mappings", fieldKey);
                    if (!string.IsNullOrWhiteSpace(mapStr)) {
                        var mapEp = EntryPoint.Parse(mapStr);
                        var mapping = new ImportFieldMapping { SourceColumn = mapEp.Name, TargetColumn = mapEp["Mapping"], DefaultValue = mapEp["Default", null], IsFixed = Boolean.Parse(mapEp["IsFixed", "false"]) };
                        mappings.Add(mapping);

                        var transformStr = inifile.GetValue("Transformations", fieldKey);
                        if (!string.IsNullOrWhiteSpace(transformStr)) {
                            mapping.Transformer = TransformationPipline.BuildFromState(transformStr);
                        }

                    }

                }
                ImportContext.FieldMappings = mappings;

                RaiseRequestNextPage();

            }
        }
        private void PreloadMappings(ImportWizardContext context)
        {
            var service = new ImportService(PluginManager.Instance.User);
            var fields  = service.GetImportFields();

            var mappings = new List <ImportFieldMapping>();

            if (_options != null && _options.RowSource != null)
            {
                _options.RowSource.Reset();
                var columns = _options.RowSource.ColumnNames;
                foreach (String colName in columns)
                {
                    var candidate = fields.Find((field) => {
                        if (!string.IsNullOrEmpty(colName))
                        {
                            // First try a simple match of the name...
                            if (field.DisplayName.Equals(colName, StringComparison.CurrentCultureIgnoreCase))
                            {
                                return(true);
                            }
                            ;
                            // Next convert all underscores to spaces and try that....

                            var test = colName.Replace("_", " ");
                            if (field.DisplayName.Equals(test, StringComparison.CurrentCultureIgnoreCase))
                            {
                                return(true);
                            }
                        }
                        return(false);
                    });

                    var mapping = new ImportFieldMapping {
                        SourceColumn = colName, TargetColumn = "Material.Other", DefaultValue = null, IsFixed = false
                    };
                    if (candidate != null)
                    {
                        mapping.TargetColumn = string.Format("{0}.{1}", candidate.Category, candidate.DisplayName);
                    }
                    else
                    {
                        DarwinCoreField dwc;
                        if (Enum.TryParse <DarwinCoreField>(colName, out dwc))
                        {
                            switch (dwc)
                            {
                            case DarwinCoreField.fieldNotes:
                            case DarwinCoreField.validatorNotes:
                            case DarwinCoreField.transcriberNotes:
                                mapping.TargetColumn = "Material.Notes";
                                break;

                            case DarwinCoreField.associatedMedia:
                                mapping.TargetColumn = "Material.Multimedia";
                                break;
                            }
                        }
                    }
                    mappings.Add(mapping);
                }
            }

            context.FieldMappings = mappings;
        }
Example #15
0
        private void PreloadMappings(ImportWizardContext context)
        {
            var service = new ImportService(PluginManager.Instance.User);
            var fields = service.GetImportFields();

            var mappings = new List<ImportFieldMapping>();

            if (_options != null && _options.RowSource != null) {
                _options.RowSource.Reset();
                var columns = _options.RowSource.ColumnNames;
                foreach (String colName in columns) {
                    var candidate = fields.Find((field) => {
                        if (!string.IsNullOrEmpty(colName)) {
                            // First try a simple match of the name...
                            if (field.DisplayName.Equals(colName, StringComparison.CurrentCultureIgnoreCase)) {
                                return true;
                            };
                            // Next convert all underscores to spaces and try that....

                            var test = colName.Replace("_", " ");
                            if (field.DisplayName.Equals(test, StringComparison.CurrentCultureIgnoreCase)) {
                                return true;
                            }
                        }
                        return false;
                    });

                    var mapping = new ImportFieldMapping { SourceColumn = colName, TargetColumn = "Material.Other", DefaultValue = null, IsFixed = false };
                    if (candidate != null) {
                        mapping.TargetColumn = string.Format("{0}.{1}", candidate.Category, candidate.DisplayName);
                    } else {
                        DarwinCoreField dwc;
                        if (Enum.TryParse<DarwinCoreField>(colName, out dwc)) {

                            switch (dwc) {
                                case DarwinCoreField.fieldNotes:
                                case DarwinCoreField.validatorNotes:
                                case DarwinCoreField.transcriberNotes:
                                    mapping.TargetColumn = "Material.Notes";
                                    break;
                                case DarwinCoreField.associatedMedia:
                                    mapping.TargetColumn = "Material.Multimedia";
                                    break;
                            }
                        }
                    }
                    mappings.Add(mapping);
                }
            }

            context.FieldMappings = mappings;
        }
Example #16
0
        private void InitImportMapping(List <ImportFieldMapping> mappingList)
        {
            // Full Name
            ImportFieldMapping fullName = new ImportFieldMapping(Col_FullName, true);

            fullName.Validator = new NotEmptyDataValidator();
            mappingList.Add(fullName);

            // familyName
            ImportFieldMapping familyName = new ImportFieldMapping(Col_FamilyName, false);

            mappingList.Add(familyName);

            // gender
            ImportFieldMapping gender = new ImportFieldMapping(Col_Gender, false);

            char[] regChars = new char[] { 'M', 'F' };
            gender.Validator = new CharSetValidator(regChars);
            mappingList.Add(gender);

            // phone
            ImportFieldMapping phone = new ImportFieldMapping(Col_Phone, false);

            mappingList.Add(phone);

            // Col_Email
            ImportFieldMapping email = new ImportFieldMapping(Col_Email, false);

            mappingList.Add(email);

            // Col_Fax
            ImportFieldMapping fax = new ImportFieldMapping(Col_Fax, false);

            mappingList.Add(fax);

            // Col_ZipCode
            ImportFieldMapping zipCode = new ImportFieldMapping(Col_ZipCode, false);

            mappingList.Add(zipCode);

            // Col_AddressLine1
            ImportFieldMapping addressLine1 = new ImportFieldMapping(Col_AddressLine1, false);

            mappingList.Add(addressLine1);
            // Col_AddressLine1
            ImportFieldMapping addressLine2 = new ImportFieldMapping(Col_AddressLine2, false);

            mappingList.Add(addressLine2);

            // Col_City
            ImportFieldMapping city = new ImportFieldMapping(Col_City, false);

            mappingList.Add(city);

            // Col_Country
            ImportFieldMapping country = new ImportFieldMapping(Col_Country, false);

            mappingList.Add(country);

            // Col_CountryState
            ImportFieldMapping countryState = new ImportFieldMapping(Col_CountryState, false);

            mappingList.Add(countryState);
        }
        private DataGridColumn CreateColumn(ImportFieldMapping mapping)
        {
            var col = new DataGridTextColumn();
            col.Header = mapping.SourceColumn;
            col.Width = DataGridLength.Auto;
            col.Binding = new Binding(mapping.SourceColumn);

            return col;
        }
Example #18
0
 private void AddFixedField()
 {
     InputBox.Show(this.FindParentWindow(), "New fixed column", "Enter the value you wish to fix:", (val) => {
         var mapping = new ImportFieldMapping { IsFixed = true, DefaultValue = val };
         var vm = new ImportFieldMappingViewModel(mapping);
         _model.Add(vm);
         lvwMappings.SelectedItem = vm;
     });
 }
Example #19
0
        public override void OnPageEnter(WizardDirection fromdirection)
        {
            var progress = new ProgressWindow(this.FindParentWindow(), "Extracting column information from data source...", true);

            _fields = _fieldSource();
            lvwFields.ItemsSource = _fields;

            CollectionView myView = (CollectionView)CollectionViewSource.GetDefaultView(lvwFields.ItemsSource);
            PropertyGroupDescription groupDescription = new PropertyGroupDescription("Category");
            myView.GroupDescriptions.Add(groupDescription);
            var model = new List<ImportFieldMapping>();

            JobExecutor.QueueJob(() => {

                List<String> columns = null;
                columns = ImportContext.Importer.GetColumnNames();

                var existingMappings = ImportContext.FieldMappings;
                if (existingMappings != null && existingMappings.Count() > 0) {
                    foreach (ImportFieldMapping mapping in existingMappings) {
                        model.Add(mapping);
                    }
                } else {
                    foreach (string columnName in columns) {
                        var mapping = new ImportFieldMapping { SourceColumn = columnName };
                        model.Add(mapping);
                    }
                }

                _model = new ObservableCollection<ImportFieldMappingViewModel>(model.Select((m) => {
                    return new ImportFieldMappingViewModel(m);
                }));

                lvwMappings.InvokeIfRequired(() => {
                    lvwMappings.ItemsSource = _model;
                });

                progress.InvokeIfRequired(() => {
                    progress.Dispose();
                });

            });
        }