private CMISFolder determineFolder(SIEEFieldlist fieldlist)
        {
            CMISFolder folder = cmisClient.GetFolderFromId(selectedFolderId);

            if (mySettings.UseSubFolderField)
            {
                // Get contents of subfolder field into pathExtension
                List <SIEEField> match = fieldlist.Where(n => n.Name == mySettings.SubFolderField).ToList();
                if (match.Count != 1)
                {
                    throw (new Exception("No field " + mySettings.SubFolderField + " in data"));
                }
                string pathExtension = match.First().Value;

                // Get sub folder type
                string ftype = "cmis:folder";
                if (mySettings.UseSubFolderType && mySettings.SubFolderTypeFixed)
                {
                    ftype = mySettings.SubFolderType;
                }
                if (mySettings.UseSubFolderType && mySettings.SubFolderTypeFromField)
                {
                    string newType = fieldlist.Where(n => n.ExternalId == mySettings.SubFolderTypeField).Select(n => n.Value).First();
                    if (newType != "")
                    {
                        ftype = newType;
                    }
                }
                // Get the folder
                folder = cmisClient.GetSubfolder(folder, pathExtension, ftype);
            }
            return(folder);
        }
Example #2
0
        public void T08_Password()
        {
            CMISViewModel vm = getInitializedViewModel();

            // Test one: Direct Password set and get on the view model
            string pw = "Hello World!";

            vm.CT.Password = pw;
            Assert.AreEqual(pw, vm.CT.Password);
            string encryptedPW = vm.CMISSettings.Password;

            Assert.AreNotEqual(pw, encryptedPW);

            // Verify password in export
            StoreDocumentResult expectedtResult = StoreDocumentResult.DefaultResult();

            expectedtResult.Password = pw;

            CMISClientMock cmisClient = new CMISClientMock();
            CMISExport     export     = new CMISExport(cmisClient);
            SIEEBatch      batch      = createBatch(expectedtResult.Filename, expectedtResult.DocName);
            SIEEFieldlist  fieldlist  = batch[0].Fieldlist;

            // Default document export
            vm.LoadPropertiesHandler();
            Assert.IsTrue(vm.TT.PropertiesLoaded);
            Assert.AreEqual(6, vm.TT.Properties.Count);
            export.Init(vm.Settings);
            export.ExportBatch(vm.Settings, batch); Assert.IsTrue(batch[0].Succeeded);
            expectedtResult.Compare(cmisClient.SDR);
        }
Example #3
0
 private void verifyField(string id, string value, SIEEFieldlist fl, List <SPOField> spofl)
 {
     Assert.AreEqual(
         fl.Where(n => n.ExternalId == id).First().Value,
         spofl.Where(n => n.InternalName == id).First().Value
         );
 }
Example #4
0
        // Add all selected properties to the schema and add the field named for subfolder and subfolder type
        public override SIEEFieldlist CreateSchema()
        {
            SIEEFieldlist schema = new SIEEFieldlist();

            foreach (CMISProperty p in Properties)
            {
                if (p.Selected)
                {
                    schema.Add(new SIEEField()
                    {
                        Name        = p.Id.Replace(':', '_'),
                        ExternalId  = p.Id,
                        Cardinality = p.IsMulti ? -1 : 0,
                    });
                }
            }
            if (UseSubFolderField && SubFolderTypeFixed)
            {
                schema.Add(new SIEEField()
                {
                    Name = SubFolderField, ExternalId = SubFolderField
                });
            }
            if (UseSubFolderField && SubFolderTypeFromField)
            {
                schema.Add(new SIEEField()
                {
                    Name = SubFolderTypeField, ExternalId = SubFolderTypeField
                });
            }
            return(schema);
        }
Example #5
0
        public void SetFieldNames(SIEEFieldlist fieldList)
        {
            List <string> newFieldNames = fieldList.GetScalarFieldNames();

            if (!SIEEUtils.StringListEqual(FieldNames, newFieldNames))
            {
                FieldNames = newFieldNames;
                if (FieldNames.Count > 0)
                {
                    SelectedFieldName = FieldNames[0];
                }
            }
        }
        public override SIEEFieldlist CreateSchema()
        {
            SIEEFieldlist schema = new SIEEFieldlist();

            foreach (SPOField f in Fields)
            {
                if (f.Use)
                {
                    schema.Add(new SIEEField {
                        Name = f.Title, ExternalId = f.InternalName
                    });
                }
            }
            return(schema);
        }
Example #7
0
        public override SIEEFieldlist CreateSchema()
        {
            SIEEFieldlist schema = new SIEEFieldlist();

            foreach (ColumnDescription col in Columns)
            {
                if (col.Use && !(col.SqlTypeName == null || col.IsDocument))
                {
                    schema.Add(new SIEEField {
                        Name = col.Name, ExternalId = col.Name
                    });
                }
            }

            return(schema);
        }
Example #8
0
        private SIEEBatch createBatch(string filename, string docName)
        {
            SIEEField field = new SIEEField()
            {
                Name = "SomeField", ExternalId = "SomeField", Value = "SomeValue"
            };
            SIEEFieldlist fieldlist = new SIEEFieldlist();

            fieldlist.Add(field);
            SIEEDocument document = new SIEEDocument();

            document.PDFFileName   = filename;
            document.InputFileName = docName;
            document.BatchId       = "4711";
            document.DocumentId    = "0";
            document.Fieldlist     = fieldlist;
            SIEEBatch batch = new SIEEBatch();

            batch.Add(document);
            return(batch);
        }
Example #9
0
        public void t04_Export()
        {
            SPOViewModel vm = createViewModel();

            vm.LT.SelectedList = new SPOList()
            {
                Title = "SomeList"
            };
            vm.LoadFieldsButtonHandler();
            SIEEFieldlist schema = vm.Settings.CreateSchema();

            Assert.AreEqual(2, schema.Count);

            schema.Where(n => n.ExternalId == "Id1").First().Value = "myTitle";
            schema.Where(n => n.ExternalId == "Id3").First().Value = "true";
            schema.Add(new SIEEField()
            {
                Name = "SomeName", ExternalId = "xx", Value = "SomeValue"
            });

            SPOClientMock spoClient = new SPOClientMock();
            SPOExport     export    = new SPOExport(spoClient);

            export.Init(vm.Settings);

            SIEEDocument document = new SIEEDocument()
            {
                PDFFileName = "file.pdf"
            };

            export.ExportDocument(vm.Settings, document, "sub/Document", schema);

            Assert.AreEqual("SomeList", spoClient.LastExportResult.ListTitle);
            Assert.AreEqual("sub/Document.pdf", spoClient.LastExportResult.DocumentPath);
            Assert.AreEqual("file.pdf", spoClient.LastExportResult.FilePath);
            verifyField("Id1", "myTitle", schema, spoClient.LastExportResult.Fields);
            verifyField("Id3", "true", schema, spoClient.LastExportResult.Fields);
        }
Example #10
0
        public void T04_TypesTab()
        {
            CMISViewModel       vm             = getInitializedViewModel();
            StoreDocumentResult expectedResult = StoreDocumentResult.DefaultResult();

            // Default setting
            Assert.AreEqual(0, vm.TT.Properties.Count);

            // Select, deselect all
            vm.LoadPropertiesHandler();
            Assert.IsNull(SIEEMessageBox.LastMessage);
            Assert.AreEqual(6, vm.TT.Properties.Count);
            foreach (CMISProperty p in vm.TT.Properties)
            {
                Assert.IsFalse(p.Selected);
            }
            vm.TT.SelectAllHandler();
            foreach (CMISProperty p in vm.TT.Properties)
            {
                Assert.IsTrue(p.Selected);
            }
            vm.TT.DeselectAllHandler();
            foreach (CMISProperty p in vm.TT.Properties)
            {
                Assert.IsFalse(p.Selected);
            }

            // Create schema
            SIEEFieldlist fl = vm.Settings.CreateSchema();

            Assert.AreEqual(0, fl.Count);
            vm.TT.Properties[0].Selected = true;
            fl = vm.Settings.CreateSchema();
            Assert.AreEqual(1, fl.Count);
            Assert.AreEqual(vm.TT.Properties[0].Id, fl[0].Name);
        }
Example #11
0
        public void T03_FolderTab()
        {
            CMISViewModel       vm             = getInitializedViewModel();
            StoreDocumentResult expectedResult = StoreDocumentResult.DefaultResult();

            CMISClientMock cmisClient = new CMISClientMock();
            CMISExport     export     = new CMISExport(cmisClient);

            // Default values
            Assert.AreEqual("/" + cmisClient.GetRootFolder().DisplayName, vm.FT.SelectedFolderPath);
            Assert.IsFalse(vm.FT.UseSubFolderField);
            Assert.AreEqual("FolderField", vm.FT.SubFolderField);
            Assert.IsFalse(vm.FT.UseSubFolderType);
            Assert.IsTrue(vm.FT.SubFolderTypeFixed);
            Assert.AreEqual("cmis:folder", vm.FT.SubFolderType);
            Assert.IsFalse(vm.FT.SubFolderTypeFromField);
            Assert.AreEqual("FolderTypeField", vm.FT.SubFolderTypeField);
            Assert.AreEqual(CMISSettings.ConflictHandling.None, vm.FT.SelectedConflictHandling);
            Assert.AreEqual(4, vm.FT.NumberOfDigits);
            Assert.AreEqual("Collapsed", vm.FT.NumberOfDigitsVisible);
            Assert.IsTrue(vm.FT.Major);
            Assert.AreEqual("Collapsed", vm.FT.VersioningVisible);

            // Visibility checks and logic
            vm.FT.SubFolderTypeFromField = true;
            Assert.IsFalse(vm.FT.SubFolderTypeFixed);
            vm.FT.SubFolderTypeFixed = true;
            Assert.IsFalse(vm.FT.SubFolderTypeFromField);
            vm.FT.SelectedConflictHandling = CMISSettings.ConflictHandling.Replace;
            Assert.AreEqual("Collapsed", vm.FT.NumberOfDigitsVisible);
            Assert.AreEqual("Collapsed", vm.FT.VersioningVisible);
            vm.FT.SelectedConflictHandling = CMISSettings.ConflictHandling.AddBlurb;
            Assert.AreEqual("Collapsed", vm.FT.NumberOfDigitsVisible);
            Assert.AreEqual("Collapsed", vm.FT.VersioningVisible);
            vm.FT.SelectedConflictHandling = CMISSettings.ConflictHandling.AddNumber;
            Assert.AreEqual("Visible", vm.FT.NumberOfDigitsVisible);
            Assert.AreEqual("Collapsed", vm.FT.VersioningVisible);
            vm.FT.SelectedConflictHandling = CMISSettings.ConflictHandling.AddVersion;
            Assert.AreEqual("Collapsed", vm.FT.NumberOfDigitsVisible);
            Assert.AreEqual("Visible", vm.FT.VersioningVisible);
            vm.FT.SelectedConflictHandling = CMISSettings.ConflictHandling.None;

            // Default document export
            SIEEBatch     batch     = createBatch(expectedResult.Filename, expectedResult.DocName);
            SIEEFieldlist fieldlist = batch[0].Fieldlist;

            vm.LoadPropertiesHandler();
            export.Init(vm.Settings);
            export.ExportBatch(vm.Settings, batch); Assert.IsTrue(batch[0].Succeeded);
            expectedResult.Compare(cmisClient.SDR);

            // SubFolderField
            vm.FT.UseSubFolderField = true;
            fieldlist.Add(new SIEEField()
            {
                Name = "FolderField", Value = "subFolder", ExternalId = "FolderField"
            });
            expectedResult.FinalFolder += "/subFolder";
            export.Init(vm.Settings);
            export.ExportBatch(vm.Settings, batch); Assert.IsTrue(batch[0].Succeeded);
            expectedResult.UsedFolderType = vm.FT.SubFolderType; // Default is what export implements
            expectedResult.Compare(cmisClient.SDR);

            // SubFolderType
            vm.FT.UseSubFolderType = true;
            vm.FT.SubFolderType    = "cmis:myFolderType";
            export.Init(vm.Settings);
            export.ExportBatch(vm.Settings, batch); Assert.IsTrue(batch[0].Succeeded);
            expectedResult.UsedFolderType = "cmis:myFolderType";
            expectedResult.Compare(cmisClient.SDR);

            // SubFolderFieldType
            vm.FT.SubFolderTypeFromField = true;
            fieldlist.Add(new SIEEField()
            {
                Name       = vm.FT.SubFolderTypeField,
                Value      = "cmis:anotherFolderType",
                ExternalId = vm.FT.SubFolderTypeField,
            });
            export.Init(vm.Settings);
            export.ExportBatch(vm.Settings, batch);
            expectedResult.UsedFolderType = "cmis:anotherFolderType";
            expectedResult.Compare(cmisClient.SDR);

            // Conflict Handling : Replace
            cmisClient.ExistingDocument    = expectedResult.DocName + ".pdf";
            vm.FT.SelectedConflictHandling = CMISSettings.ConflictHandling.Replace;
            export.ExportBatch(vm.Settings, batch); Assert.IsTrue(batch[0].Succeeded);
            expectedResult.Compare(cmisClient.SDR);

            // Conflict Handling : None
            cmisClient.ExistingDocument    = expectedResult.DocName + ".pdf";
            vm.FT.SelectedConflictHandling = CMISSettings.ConflictHandling.None;
            export.ExportBatch(vm.Settings, batch);
            expectedResult.OverwrittenExistingDocument = true;
            expectedResult.Compare(cmisClient.SDR);
            expectedResult.OverwrittenExistingDocument = false;
            cmisClient.SDR.OverwrittenExistingDocument = false;

            // Conflict Handling : AddBlurb
            vm.FT.SelectedConflictHandling = CMISSettings.ConflictHandling.AddBlurb;
            export.ExportBatch(vm.Settings, batch); Assert.IsTrue(batch[0].Succeeded);
            expectedResult.ExpectBlurb = true;
            expectedResult.Compare(cmisClient.SDR);
            expectedResult.ExpectBlurb = false;

            // Conflict Handling : AddNumber
            vm.FT.SelectedConflictHandling = CMISSettings.ConflictHandling.AddNumber;
            vm.FT.NumberOfDigits           = 2;
            export.ExportBatch(vm.Settings, batch); Assert.IsTrue(batch[0].Succeeded);
            string save = expectedResult.DocName;

            expectedResult.DocName += "_01";
            expectedResult.Compare(cmisClient.SDR);
            expectedResult.DocName = save;

            // Conflict Handling : AddVersion
            vm.FT.SelectedConflictHandling = CMISSettings.ConflictHandling.AddVersion;
            vm.FT.Major = true;
            export.ExportBatch(vm.Settings, batch); Assert.IsTrue(batch[0].Succeeded);
            expectedResult.Updated        = true;
            expectedResult.Major          = true;
            expectedResult.CheckInComment = "OCC created version";
            expectedResult.Compare(cmisClient.SDR);
            vm.FT.Major = false;
            export.ExportBatch(vm.Settings, batch); Assert.IsTrue(batch[0].Succeeded);
            expectedResult.Major = false;
            expectedResult.Compare(cmisClient.SDR);
        }
Example #12
0
        public void T02_BasicExport()
        {
            CMISViewModel vm = getInitializedViewModel();

            vm.CMISSettings.SelectedCultureInfoName = "en-US";
            StoreDocumentResult expectedtResult = StoreDocumentResult.DefaultResult();

            CMISClientMock cmisClient = new CMISClientMock();
            CMISExport     export     = new CMISExport(cmisClient);
            SIEEBatch      batch      = createBatch(expectedtResult.Filename, expectedtResult.DocName);
            SIEEFieldlist  fieldlist  = batch[0].Fieldlist;

            // Default document export
            vm.LoadPropertiesHandler();
            Assert.IsTrue(vm.TT.PropertiesLoaded);
            Assert.AreEqual(6, vm.TT.Properties.Count);
            export.Init(vm.Settings);
            export.ExportBatch(vm.Settings, batch); Assert.IsTrue(batch[0].Succeeded);
            expectedtResult.Compare(cmisClient.SDR);

            foreach (CMISProperty p in vm.TT.Properties)
            {
                p.Selected = true;
                object objectValue;
                string stringValue;
                switch (p.Type)
                {
                case CMISClientType.Boolean:
                    stringValue = "true";
                    objectValue = true;
                    break;

                case CMISClientType.Integer:
                    stringValue = "4711";
                    objectValue = 4711;
                    break;

                case CMISClientType.Decimal:
                    stringValue = "1.8";
                    objectValue = 1.8M;
                    break;

                case CMISClientType.DateTime:
                    stringValue = "11.03.2017";
                    objectValue = DateTime.Parse(stringValue, new CultureInfo("en-US"));
                    break;

                default: objectValue = stringValue = "Some string"; break;
                }
                fieldlist.Add(new SIEEField(p.Id, p.Id, stringValue));
                expectedtResult.Properties[p.Id] = objectValue;
                export.Init(vm.Settings);
                export.ExportBatch(vm.Settings, batch); Assert.IsTrue(batch[0].Succeeded);
                expectedtResult.Compare(cmisClient.SDR);
                if (p.Type != CMISClientType.String)
                {
                    fieldlist.Where(n => n.ExternalId == p.Id).First().Value = "Illegal value";
                    export.Init(vm.Settings);
                    export.ExportBatch(vm.Settings, batch); Assert.IsFalse(batch[0].Succeeded);
                }
                expectedtResult.Compare(cmisClient.SDR);
                fieldlist.Remove(fieldlist.Where(n => n.ExternalId == p.Id).First());
                expectedtResult.Properties.Remove(p.Id);
            }

            CMISProperty pror = vm.TT.Properties.Where(n => n.Type == CMISClientType.Decimal).First();

            pror.Selected = true;
            fieldlist.Add(new SIEEField(pror.Id, pror.Id, "1,8"));
            expectedtResult.Properties[pror.Id]     = 1.8M;
            vm.CMISSettings.SelectedCultureInfoName = "de-DE";
            export.Init(vm.Settings);
            export.ExportBatch(vm.Settings, batch); Assert.IsTrue(batch[0].Succeeded);
            expectedtResult.Compare(cmisClient.SDR);
        }
Example #13
0
        public override void ExportDocument(SIEESettings settings, SIEEDocument document, string targetFileName, SIEEFieldlist fieldlist)
        {
            List <SPOField> fields = new List <SPOField>();

            foreach (SIEEField f in fieldlist)
            {
                SPOField spof = mySettings.Fields.Where(n => n.InternalName == f.ExternalId).FirstOrDefault();
                if (spof != null)
                {
                    spof.Value = f.Value;
                    fields.Add(spof);
                }
            }
            int itemId = spoClient.AddDocument(
                mySettings.SelectedList,
                getRelativePath(document) + targetFileName + ".pdf",
                document.PDFFileName,
                fields);

            document.TargetDocumentId = itemId.ToString();
        }
        public override void ExportDocument(SIEESettings settings, SIEEDocument document, string name, SIEEFieldlist fieldlist)
        {
            CMISFolder folder  = determineFolder(fieldlist);
            string     docName = name;

            // Collision detection and handling (except for version handling)
            CMISDocument existingDocument = cmisClient.GetDocument(folder, docName + pdfExtension);

            if (existingDocument != null)
            {
                switch (mySettings.SelectedConflictHandling)
                {
                case CMISSettings.ConflictHandling.Replace:
                { cmisClient.DeleteDocument(existingDocument); break; }

                case CMISSettings.ConflictHandling.AddBlurb:
                { docName = getDocumentNameWithBlurb(docName); break; }

                case CMISSettings.ConflictHandling.AddNumber:
                { docName = getDocumentNameWithNumber(docName, folder); break; }

                default: break;
                }
            }

            // Create property list
            string checkInComment             = "OCC created version";
            Dictionary <string, object> props = new Dictionary <string, object>();

            props["cmis:objectTypeId"] = selectedTypeId;

            foreach (SIEEField f in fieldlist)
            {
                if (f.ExternalId == "cmis:checkinComment")
                {
                    checkInComment = f.Value; continue;
                }
                if (mySettings.UseSubFolderField &&
                    mySettings.SubFolderTypeFixed &&
                    f.ExternalId == mySettings.SubFolderField)
                {
                    continue;
                }
                if (mySettings.UseSubFolderField &&
                    mySettings.SubFolderTypeFromField &&
                    f.ExternalId == mySettings.SubFolderTypeField)
                {
                    continue;
                }

                try { props[f.ExternalId] = convert(mySettings, f); }
                catch (Exception e) { throw new Exception(
                                                "Error converting value for field '" + f.ExternalId + "' Value = '" + f.Value +
                                                "' \nReason: " + e.Message
                                                ); }
            }

            try
            {
                string dn = docName + pdfExtension;
                if (cmisClient.GetDocument(folder, docName + pdfExtension) == null || !versionHandling())
                {
                    bool?v = null;
                    if (versionHandling())
                    {
                        v = mySettings.Major;
                    }
                    cmisClient.StoreDocument(folder, document.PDFFileName, dn, props, v);
                }
                else
                {
                    cmisClient.UpdateDocument(folder, document.PDFFileName, dn, props, mySettings.Major, checkInComment);
                }
            }
            catch (Exception e) { trace.WriteError(e.Message); throw; }
            document.TargetDocumentId = folder + ":" + document.PDFFileName;
        }
Example #15
0
        // Simulate some exports and verify the final location
        public void t05_SubfolderHandling()
        {
            SPOViewModel vm = createViewModel();

            // Create schema based on mocked SPOList
            vm.LT.SelectedList = new SPOList()
            {
                Title = "SomeList"
            };
            vm.LoadFieldsButtonHandler();
            SIEEFieldlist schema = vm.Settings.CreateSchema();

            Assert.AreEqual(2, schema.Count);

            schema.Where(n => n.ExternalId == "Id1").First().Value = "myTitle";
            schema.Where(n => n.ExternalId == "Id3").First().Value = "true";
            schema.Add(new SIEEField()
            {
                Name = "SomeName", ExternalId = "xx", Value = "SomeValue"
            });

            SIEEDocument document = new SIEEDocument()
            {
                PDFFileName = "file.pdf"
            };

            SPOClientMock spoClient    = vm.SPOClient as SPOClientMock; // was: new SPOClientMock();
            SPOExport     export       = new SPOExport(spoClient);
            string        documentName = "abc/document";

            var td = new[]
            {
                new {
                    n            = 0, folderType = SPOSettings.FolderHandlingType.None,
                    folder       = string.Empty, auxField = false, expError = false,
                    fieldContent = string.Empty,
                    result       = documentName,
                },
                new {
                    n            = 1, folderType = SPOSettings.FolderHandlingType.Folder,
                    folder       = "sub/subsub", auxField = false, expError = false,
                    fieldContent = string.Empty,
                    result       = "sub/subsub/" + documentName,
                },
                new {
                    n            = 2, folderType = SPOSettings.FolderHandlingType.Folder,
                    folder       = "/sub/subsub/", auxField = false, expError = false,
                    fieldContent = string.Empty,
                    result       = "sub/subsub/" + documentName,
                },
                new {
                    n            = 3, folderType = SPOSettings.FolderHandlingType.Folder,
                    folder       = "/", auxField = false, expError = false,
                    fieldContent = string.Empty,
                    result       = documentName,
                },
                new {
                    n            = 4, folderType = SPOSettings.FolderHandlingType.Field,
                    folder       = string.Empty, auxField = false, expError = false,
                    fieldContent = "sub/subsub",
                    result       = "sub/subsub/" + documentName,
                },
                new {
                    n            = 5, folderType = SPOSettings.FolderHandlingType.Field,
                    folder       = string.Empty, auxField = false, expError = false,
                    fieldContent = "/sub/subsub/",
                    result       = "sub/subsub/" + documentName,
                },
                new {
                    n            = 6, folderType = SPOSettings.FolderHandlingType.Field,
                    folder       = string.Empty, auxField = false, expError = false,
                    fieldContent = "/",
                    result       = documentName,
                },
                new {
                    n            = 7, folderType = SPOSettings.FolderHandlingType.Field,
                    folder       = string.Empty, auxField = true, expError = false,
                    fieldContent = "/sub/subsub/",
                    result       = "sub/subsub/" + documentName,
                },
                new {
                    n            = 8, folderType = SPOSettings.FolderHandlingType.Field,
                    folder       = string.Empty, auxField = true, expError = true,
                    fieldContent = "/sub/subsub/",
                    result       = "sub/subsub/" + documentName,
                },
            };
            int doOnly = -1;

            for (int i = 0; i != td.Length; i++)
            {
                if (doOnly > 0 && td[i].n != doOnly)
                {
                    continue;
                }

                vm.FT.FolderHandling = SPOSettings.FolderHandlingType.None;
                vm.FT.FolderName     = td[i].folder;
                vm.FT.FieldName      = string.Empty;

                document.AuxFields = new SIEEFieldlist();

                if (td[i].folderType == SPOSettings.FolderHandlingType.Field)
                {
                    if (td[i].auxField == false)
                    {
                        vm.FT.FieldName = "SomeName";
                        schema.Where(n => n.Name == "SomeName").First().Value = td[i].fieldContent;
                    }
                    else
                    {
                        vm.FT.FieldName = "auxField" + (td[i].expError ? "-err" : "");
                        document.AuxFields.Add(new SIEEField("auxField", "", td[i].fieldContent));
                    }
                }
                vm.FT.FolderHandling = td[i].folderType;
                document.Fieldlist   = schema;

                export.Init(vm.Settings);
                bool exception = false;
                try
                {
                    export.ExportDocument(vm.Settings, document, documentName, schema);
                } catch { exception = true; }
                if (td[i].expError)
                {
                    Assert.IsTrue(exception);
                }
                else
                {
                    Assert.IsFalse(exception);
                    Assert.AreEqual(td[i].result + ".pdf", spoClient.LastExportResult.DocumentPath);
                }
            }
            Assert.IsTrue(doOnly < 0, "Not all tests executed");
        }
Example #16
0
        public override void ExportDocument(SIEESettings settings, SIEEDocument document, string name, SIEEFieldlist fieldlist)
        {
            List <SqlColumn> columns = new List <SqlColumn>();

            foreach (ColumnDescription colDes in mySettings.Columns.Where(n => n.SqlTypeName != null))
            {
                SqlColumn col = new SqlColumn()
                {
                    Name       = colDes.Name,
                    SqlType    = SqlTypes.GetSqlType(colDes.SqlTypeName),
                    IsDocument = colDes.IsDocument,
                };
                if (colDes.IsDocument)
                {
                    col.ValueString = document.PDFFileName;
                }
                else
                {
                    SIEEField f = fieldlist.Where(n => n.ExternalId == colDes.Name).FirstOrDefault();
                    col.ValueString = f == null ? null : f.Value;
                }
                columns.Add(col);
            }
            try { sqlClient.SetObjectValues(columns); }
            catch (Exception e)
            {
                document.NonRecoverableError = true;
                throw e;
            }
            sqlClient.Insert(columns);
        }
Example #17
0
 public bool ActivateTab(SIEEFieldlist fieldlist)
 {
     SetFieldNames(fieldlist);
     return(false);
 }