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);
        }
Beispiel #2
0
 public override void Init(SIEESettings settings)
 {
     base.Init(settings);
     mySettings = settings as SPOSettings;
     mySettings.InitializeSPOClient(spoClient);
     spoClient.Login();
 }
        public SqlEEViewModel(SIEESettings settings, ISqlClient sqlClient)
        {
            SqlEESettings = settings as SqlEESettings;
            SqlClient     = sqlClient;

            CT = new SqlEEViewModel_CT(this);
            TT = new SqlEEViewModel_TT(this);
            DT = new SqlEEViewModel_DT(this);

            SelectedTab = 0;
            IsRunning   = false;
            DataLoaded  = false;

            if (SqlEESettings.LoginPossible)
            {
                LoginButtonHandler();
            }

            CT.PropertyChanged += (s, e) =>
            {
                if (CT.IsConnectionRelevant(e.PropertyName))
                {
                    SqlEESettings.LoginPossible = false;
                    DataLoaded = false;
                    TabNamesReset();
                }
            };
        }
 public override void Init(SIEESettings settings)
 {
     base.Init(settings);
     mySettings = settings as SqlEESettings;
     mySettings.Login(sqlClient);
     sqlClient.DefaultTable = mySettings.SelectedTable;
     sqlClient.SetCulture(new CultureInfo(mySettings.SelectedCultureInfoName));
 }
        public override void Init(SIEESettings settings)
        {
            mySettings = (CMISSettings)settings;
            mySettings.InitializeCMISClient(cmisClient);
            clientCulture = new CultureInfo(mySettings.SelectedCultureInfoName);

            cmisClient.LoadRepositories();
            cmisClient.SelectRepository(mySettings.SelectedRepository.Id);
            selectedTypeId   = mySettings.SelectedType;
            selectedFolderId = (TVIViewModel.deSerialize(mySettings.SerializedFolderPath.Last(), typeof(CMISFolderNode)) as CMISFolderNode).Id;
        }
Beispiel #6
0
        public void T07_SelectReposiory()
        {
            CMISViewModel vm = getViewModel();

            vm.LoadRepositoriesButtonHandler();
            Assert.AreEqual("Repository 1", vm.CT.SelectedRepository.Id);
            Assert.AreEqual(vm.CT.Repositories[0], vm.CT.SelectedRepository);
            vm.CT.SelectedRepository = vm.CT.Repositories[1];
            SIEESettings save = vm.Settings;

            vm = new CMISViewModel(vm.Settings, vm.CMISClient);
            Assert.AreEqual("Repository 2", vm.CT.SelectedRepository.Id);
            Assert.AreEqual(vm.CT.Repositories[1].Description, vm.CT.SelectedRepository.Description);
        }
Beispiel #7
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();
        }
Beispiel #8
0
        public CMISViewModel(SIEESettings settings, ICMISClient cmisClient) : base()
        {
            CMISSettings = settings as CMISSettings;
            CMISClient   = cmisClient;
            CT           = new CMISViewModel_CT(this);
            FT           = new CMISViewModel_FT(this);
            DT           = new CMISViewModel_DT(this);
            TT           = new CMISViewModel_TT(this);
            ST           = new CMISViewModel_ST(this);

            SelectedTab = 0;
            IsRunning   = false;
            DataLoaded  = false;

            if (this.CMISSettings.LoadRepositoriesPossible)
            {
                LoadRepositoriesButtonHandler();
                if (this.CMISSettings.ConnectPossible)
                {
                    ConnectdButtonHandler(true);
                }
            }

            CT.PropertyChanged += (s, e) => {
                if (CT.IsConnectionRelevant(e.PropertyName))
                {
                    DataLoaded = false;
                    if (e.PropertyName != CT.SelectedRepository_name)
                    {
                        repositoriesLoaded = false;
                        CMISSettings.LoadRepositoriesPossible = false;
                    }
                    CMISSettings.ConnectPossible = false;
                }
            };
        }
        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;
        }
Beispiel #10
0
 public override string GetLocation(SIEESettings s)
 {
     return(((CMISSettings)s).GetLocation());
 }
Beispiel #11
0
 public override SIEEViewModel CreateViewModel(SIEESettings settings)
 {
     return(new CMISViewModel(settings, new CMISClient()));
 }
 public override string GetLocation(SIEESettings s)
 {
     return(((SPOSettings)s).SiteUrl);
 }