SharePointCommunity
Die deutschsprachige Community für SharePoint, Microsoft 365, Teams, Yammer und mit Azure

Sponsored by

Willkommen im Forum Archiv.
Einträge sind hier nicht mehr möglich, aber der Bestand von 12 Jahren SharePoint-Wissen ist hier recherchierbar.




Visualisierung Workflowschritte

Geprüfte Antwort Dieser Beitrag hat 13 Antworten

Ohne Rang
253 Beiträge
BBB erstellt 20 März 2015 11:12
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo zusammen,

ich habe jetzt die Anforderung bekommen einen Fortschrittsbalken oder ähnliches für die einzelnen Schritte des Workflows zu erstellen. Leider ist das Problem das es im Workflow viele Bedingungen gibt. Einzelne Bedingungen werden auch erst im Laufe der Zeit aktiv, wenn Angaben in das Formular eingegeben. Die Bedingungen sind auch nicht zwangsläufig voneinander abhängig.

Hoffentlich ist dies einigermaßen verständlich.

Ich habe zwar die Workflowvisualisierung vom Designer ausprobiert, aber die ist recht unübersichtlich.

Hat jemand schonmal so etwas in der Art gemacht bzw. wie kann ich die Default-Workflowvisualisierung übersichtlicher gestalten?

Viele Grüße

BBB

Alle Antworten

Ohne Rang
253 Beiträge
BBB Als Antwort am 26 März 2015 08:24
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Es würde auch ausreichen, wenn es z. B. nur eine %-Angabe oder "Schritt ... von ..."-Angabe wäre.

Kann man bei der Default-Workflowvisualisierung auch komplette Schritte weglassen?

 

Viele Grüße

BBB

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 26 März 2015 08:32
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Ich kenne da leider keine Möglichkeit. Am einfachsten wäre es vielleicht noch, per Workflow irgendwelche Daten in eine Liste zu schreiben und die dann "schön" darzustellen. Das ist aber auch nur eine Idee...

Übrigens kann Nintex-Workflow diese Visualisierung ganz wunderbar.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
253 Beiträge
BBB Als Antwort am 26 März 2015 08:49
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Per Workflow habe ich es schon probiert, aber leider würden die Bedingungen für die Festlegung der Anzahl der Schritte in dem Statusworkflow, diesen wohl "sprengen". Der Nintex-Workflow sprengt wiederum leider den Projektrahmen.

Ohne Rang
253 Beiträge
BBB Als Antwort am 27 März 2015 09:05
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Ich probiere es jetzt doch mit der SPD-Visualisierung.

Aber wenn ich die vdw-Datei in Visio öffnen möchte bekomme ich immer eine Fehlermeldung:

Weiß jemand wo der Fehler liegt?

Viele Grüße

BBB

Ohne Rang
234 Beiträge
Patrick Als Antwort am 27 März 2015 09:25
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hey,

ich würde dir folgendes vorschlagen:

Du erstellst eine weitere Spalte in der Liste und diese lässt du zur Statusanzeige umbauen via:

http://www.eliostruyf.com/applying-js-link-on-task-lists-breaks-the-default-rendering-of-the-checkboxes/

oder

https://code.msdn.microsoft.com/office/Client-side-rendering-code-f1068b4b

Dann per Workflow die "Zahl" der Prozentanzeige ändern. Vielleicht hilft dir das ja etwas weiter. Nur ne Idee eben...

 

Grüße

 

Patrick

Zu meinem SharePoint Blog: afraIT

Ohne Rang
253 Beiträge
BBB Als Antwort am 27 März 2015 10:35
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Danke für die Idee!

Ohne Rang
253 Beiträge
BBB Als Antwort am 9 Apr. 2015 13:24
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Leider hilft mir das doch nicht wirklich weiter. Da mein grundsätzliches Problem ja bleibt. Ich habe das Problem das ich zu viele unterschiedliche Bedingungen habe, die auch noch zu unterschiedlichen Zeitpunkten des Workflow festgelegt werden. Daraus ergibt sich eine große Anzahl von Verschachtelungen die ich mit Hilfe eines Workflows nicht realisieren kann.

Ohne Rang
253 Beiträge
BBB Als Antwort am 10 Apr. 2015 10:21
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Es soll nicht jeder einzelne Schritt einen Fortschritt anzeigen, sondern nur der Fortschritt des kompletten Workflows. Da habe ich halt das Problem mit der Komplexität.

Hat dazu jemand vielleicht jetzt eine Idee?

Ohne Rang
253 Beiträge
BBB Als Antwort am 29 Apr. 2015 11:53
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Meine Probleme wegen der Komplexität habe ich behoben, habe das jetzt mit dem Aktualisieren einer Spalte mit %-Angabe gemacht. Jetzt fehlt noch die Visualisierung dieser Spalte. Leider bekomme ich es mit den angegebenen nicht hin.

Kann mir einer helfen wie ich das JavaScript richtig einbinde?

 

Viele Grüße

BBB

Ohne Rang
234 Beiträge
Patrick Als Antwort am 29 Apr. 2015 12:33
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hi,

hochladen tu ich meine JS eig. immer in die Masterpage-Gallery siehe:

http://www.communardo.de/home/techblog/2013/12/27/js-link-youve-got-the-whole-sharepoint-in-your-hands/

Wichtig: Der Zielbereich muss auf die Seite verweisen, in der die Liste ist. Z.b. http://sp13/<subsite>

 

mein Javascript für den %-Balken sieht so aus:

var taskSample = taskSample || {};

 

taskSample.CustomizeFieldRendering = function () {

  RegisterSod('hierarchytaskslist.js', '/_layouts/15/hierarchytaskslist.js');

  LoadSodByKey('hierarchytaskslist.js', null);

 

    // Intialize the variables for overrides objects

  var overrideCtx = {

    Templates: {

      Fields: {

        'PercentComplete': { 

          'View' : taskSample.PercentCompleteRendering

        }

      }

    }

  };

 

  // Register the override of the field

  SPClientTemplates.TemplateManager.RegisterTemplateOverrides(overrideCtx);

}

 

taskSample.PercentCompleteRendering = function (ctx) {

  var output = [];

  output.push('<div style="background: #BCBCBC; display:block; height: 20px; width: 100px;">');

  output.push('<span style="color: #fff; position:absolute; text-align: center; width: 100px;">');

  output.push(ctx.CurrentItem.PercentComplete);

  output.push('</span>');

  output.push('<div style="background: #ffdb16; height: 100%; width: ');

  output.push(ctx.CurrentItem.PercentComplete.replace(" %", ""));

  output.push('%;"></div></div>');

  return output.join('');

}

 

taskSample.CustomizeFieldRendering();

 

Hoffe, dass dies dich zum Ziel führt und ich vielleicht ein Teil deiner Antwort beitragen konnte...

Grüße Patrick

Grüße

 

Patrick

Zu meinem SharePoint Blog: afraIT

Ohne Rang
253 Beiträge
BBB Als Antwort am 29 Apr. 2015 13:27
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Danke Patrick!

Funktioniert fast wie gewünscht!

Was nicht funktioniert, ist dass sich die Balkengröße dem Wert der Spalte anpasst. Wie und wo muss ich was ändern damit das funktioniert?

 

Viele Grüße

Bernd

 

Ohne Rang
234 Beiträge
Patrick Als Antwort am 29 Apr. 2015 16:45
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hi,

schau mal ob du MDS aktiv hast.

Falls ja, deaktiviere diese mal und schau, ob du dann den Balken hast.

Bei mir sieht es danach so aus:

Grüße

 

Patrick

Zu meinem SharePoint Blog: afraIT

Ohne Rang
253 Beiträge
BBB Als Antwort am 30 Apr. 2015 08:32
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo Patrick,

das (oder die?) MDS war/ist deaktiviert. Ich habe noch bisschen den Code verändert und jetzt funktioniert es.

Den Code habe ich wie folgt geändert:

var taskSample = taskSample || {};

taskSample.CustomizeFieldRendering = function () {

  RegisterSod('hierarchytaskslist.js', '/_layouts/15/hierarchytaskslist.js');

  LoadSodByKey('hierarchytaskslist.js', null);

    // Intialize the variables for overrides objects

  var overrideCtx = {

    Templates: {

      Fields: {

        'PercentComplete': {

          'View' : taskSample.PercentCompleteRendering

        }

      }

    }

  };

 

  // Register the override of the field

  SPClientTemplates.TemplateManager.RegisterTemplateOverrides(overrideCtx);

}

taskSample.PercentCompleteRendering = function (ctx) {

  var output = [];

  output.push('<div style="background: #BCBCBC; display:block; height: 20px; width: 200px;">');

  output.push('<span style="color: #fff; position:absolute; text-align: center; width: 200px;">');

  output.push(ctx.CurrentItem.PercentComplete);

  output.push('</span>');

  output.push('<div style="background: #135cae; height: 100%; width: ');

if (ctx.CurrentItem.PercentComplete.replace(" %", "") === "100") {
 output.push(ctx.CurrentItem.PercentComplete.replace(" %", "") + '; background: #00421F;');
}

else {
 output.push(ctx.CurrentItem.PercentComplete.replace(" %", "") + '; background: #135CAE;');
}


  output.push('<#=ctx.CurrentItem.PercentComplete.replace(/ /%,"")#></div></div>');

  return output.join('');

}

taskSample.CustomizeFieldRendering();

 

Danke für deine Hilfe!