Ejemplo n.º 1
0
        private void ImportViews(IEnumerable <ImportRecordMetadata> metadata, LogController controller,
                                 CustomisationImportResponse response, IEnumerable <string> createdRecordTypes)
        {
            var numberToDo      = metadata.Count();
            var numberCompleted = 0;

            for (var i = 0; i < metadata.Count(); i++)
            {
                var recordMetadata = metadata.ElementAt(i);
                var viewImport     = new ImportViews(recordMetadata);
                try
                {
                    controller.UpdateProgress(numberCompleted++, numberToDo, "Importing Views");
                    var isUpdate = !createdRecordTypes.Contains(recordMetadata.SchemaName);
                    if (recordMetadata.Views.Any(f => f.Fields.Any(g => g.Order >= 0 && g.Width > 0)))
                    {
                        RecordService.UpdateViews(recordMetadata);
                        recordMetadata.ViewUpdated = true;
                    }
                    else
                    {
                        continue;
                    }
                    response.AddResponseItem(viewImport, isUpdate);
                }
                catch (Exception ex)
                {
                    response.AddResponseItem(viewImport, ex);
                }
            }
        }
Ejemplo n.º 2
0
        private void ImportViews(IEnumerable <ImportRecordMetadata> metadata, LogController controller,
                                 CustomisationImportResponse response, IEnumerable <string> createdRecordTypes)
        {
            var numberToDo      = metadata.Count();
            var numberCompleted = 0;

            for (var i = 0; i < metadata.Count(); i++)
            {
                var recordMetadata = metadata.ElementAt(i);
                var viewImport     = new ImportViews(recordMetadata);
                try
                {
                    controller.UpdateProgress(numberCompleted++, numberToDo, "Importing Views");
                    var isUpdate = !createdRecordTypes.Contains(recordMetadata.SchemaName);
                    if (recordMetadata.Views.Any(f => f.Fields.Any(g => g.Order >= 0 && g.Width > 0)))
                    {
                        RecordService.UpdateViews(recordMetadata);
                        recordMetadata.ViewUpdated = true;
                    }
                    else
                    {
                        continue;
                    }
                    response.AddImportedItem(viewImport, isUpdate);
                }
                catch (Exception ex)
                {
                    response.AddResponseItem(viewImport, ex);
                }
            }
            if (numberCompleted > 0)
            {
                controller.LogLiteral("Publishing Views");
                var publishXml = $"<importexportxml><entities>{string.Join("", metadata.Select(m => "<entity>" + m.SchemaName + "</entity>"))}</entities></importexportxml>";
                RecordService.Publish(publishXml);
            }
        }