public SCBWflFolder createFolderInWorkList(int newWorkGroupID, string OrdnerName) { SCBWflFolder folder = null; try { if (workGroupSession != null) { foreach (SCBWflFolder subFolder in workGroupSession.WorkList.GetSubFolders()) { if (subFolder.Name == OrdnerName) { Console.WriteLine("Folder '" + OrdnerName + "' existiert bereits!"); return(subFolder); } } folder = workGroupSession.WorkList.CreateSubFolder(OrdnerName); } return(folder); } catch (Exception ex) { Console.WriteLine(ex.Message); return(folder); } }
public void createFolder(string[] folderNames) //, string pfad_gesamt = "", int usernr = -1) { try { if (workGroupSession != null) { SCBWflFolder subFolder = null; foreach (SCBWflFolder sub in workGroupSession.WorkList.GetSubFolders()) { if (sub.Name == folderNames[1]) // => erste Ebene der Ordner { Console.WriteLine("Folder '" + sub.Name + "' (" + sub.ID.ToLong(IDType.wflLocalKey) + ") existiert bereits!"); //InfoLogger.WriteFile("update BIG_FOLDER_RESTORE_TMP2 set foldernr = " + sub.ID.ToLong(IDType.wflLocalKey) + " where wgnr = " + usernr + " and pfad_gesamt = '" + pfad_gesamt + "';"); subFolder = sub; break; } } if (subFolder == null) {//create Folder erste Ebene subFolder = workGroupSession.WorkList.CreateSubFolder(folderNames[1]); Console.WriteLine("Folder '" + subFolder.Name + "' wurde erstellt!"); } if (folderNames.Length > 2) { bool folderExists = false; for (int idx = 2; idx < folderNames.Length; idx++) { folderExists = false; foreach (SCBWflFolder sub in subFolder.GetSubFolders()) { if (sub.Name == folderNames[idx]) { subFolder = sub; Console.WriteLine("Folder '" + sub.Name + "' existiert bereits!"); //InfoLogger.WriteFile("update BIG_FOLDER_RESTORE_TMP2 set foldernr = " + sub.ID.ToLong(IDType.wflLocalKey) + " where wgnr = " + usernr + " and pfad_gesamt = '" + pfad_gesamt + "';"); folderExists = true; break; } } if (!folderExists) { //create Sub Folders Console.WriteLine("Folder '" + subFolder.Name + "\\" + folderNames[idx] + "' wird erstellt!"); subFolder = subFolder.CreateSubFolder(folderNames[idx]); } } } } } catch (Exception ex) { Console.WriteLine("createFolder() " + ex.Message); } }
private SCBWflFolder FindFolder(SCBWflFolder folder, int destFolderID) { foreach (SCBWflFolder sub in folder.GetSubFolders()) { if (sub.ID.ToLong(IDType.wflLocalKey) == destFolderID) { return(sub); } if (sub.GetSubFolders().Count > 0) { SCBWflFolder found = FindFolder(sub, destFolderID); if (found != null) { return(found); } } } return(null); }
public SCBWflFolder createFolderInFolder(SCBWflFolder folder, string OrdnerName) { try { foreach (SCBWflFolder subFolder in folder.GetSubFolders()) { if (subFolder.Name == OrdnerName) { Console.WriteLine("Folder '" + OrdnerName + "' existiert bereits!"); return(subFolder); } } if (folder != null) { return(folder.CreateSubFolder(OrdnerName)); } return(null); } catch (Exception ex) { Console.WriteLine(ex.Message); return(null); } }
public bool moveWorkItem(int igz, int workGroupID, int destFolderID, out string message) { message = ""; try { if (igz > 0) { SCBWflFolder folder = null; if (allFolders.Count > 0) { folder = allFolders.Find(f => f.ID.ToLong(IDType.wflLocalKey) == destFolderID); } if (folder == null) { workGroupSession = getWorkGroupSession(workGroupID); if (workGroupSession != null) { folder = FindFolder(workGroupSession.WorkList, destFolderID); stopWorkGroupSession(); if (folder != null) { allFolders.Add(folder); } } else { message = "WorkGroupSession is null: " + workGroupID; } } if (folder != null) { //System.Windows.Forms.MessageBox.Show(folder.Name + " (" + folder.ID.ToLong(IDType.wflLocalKey) + ")" + " " + destFolderID); Console.WriteLine(folder.Name + " (" + folder.ID.ToLong(IDType.wflLocalKey) + ")" + " " + destFolderID); SCBWflProcessInstance pi = sysSession.System.GetProcessInstanceByID(sysSession.System.NewIDByLocalKey(igz)); SCBWflWorkItem wi = pi.GetWorkItems().Item(1); if (wi.GetCurrentActor().ID.ToLong(IDType.wflLocalKey) == workGroupID) { pi.SetLock(LockTypeOfProcInst.wflProcInstWhole); wi.MoveToFolder(folder); pi.ReleaseLock(LockTypeOfProcInst.wflProcInstWhole); return(true); } else { message = "Aktueller Benutzer stimmt nicht mit Arbeitsgruppe überein! CurrentActor: " + wi.GetCurrentActor().ID.ToLong(IDType.wflLocalKey) + " WorkGroupID: " + workGroupID; return(false); } } else { return(false); } } else { return(false); } } catch (Exception ex) { Console.WriteLine("IGZ: " + igz + ": " + ex.Message); message = "IGZ: " + igz + ": " + ex.Message; return(false); } }