Weißt du wieviel Sterne stehen ... (Bewertung Sterne, Durchschnitt usw)

Fragen und Antworten rund um das Thema JavaScript im LiveCycleDesigner
Benutzeravatar
URH
Beiträge: 36
Registriert: 14.08.2017, 11:37

Weißt du wieviel Sterne stehen ... (Bewertung Sterne, Durchschnitt usw)

Beitrag von URH » 13.12.2017, 10:19

Guten Morgen,
in einem mittlerweile etwas umfangreicherer geworden "Projekt" soll eine Entwicklungsbewertung je Bereich einfliesen.
Wie das ganze aussieht und aufgebaut ist soll examplarisch durch den beiliegenden Screenshot dargestellt werden.
Hierbei ist z.B. Bereich[0] die "Persönliche Entwicklung".
Mit etwas tüfteln ist es mir gelungen in jedem Bereich "Sterne" für Kriterium 1 bis 4 (Krit[0] bis [3]) setzen zu können.
Womit ich nun aber leider nicht weiterkomme ist die Berechnung des Durchschnitts der vergebenen Sterne je Bereich und darüber hinaus den so ermittelten Wert (ohne Nachkommastelle) in BereichGes automatisch zu setzen.

Code: Alles auswählen

function Sterne(Objekt) 
{
	var B = Objekt.parent.parent.index, star = Objekt.index;
	var K = Objekt.parent.index;
	
	/*
	if (Objekt.caption.font.fill.color.value == "51,51,51" && (star == 5 || xfa.resolveNode("MB.Bericht.Bewertung.Bereich["+ B +"].BereichGes.Stern[" + (star + 1) + "]").caption.font.fill.color.value != "51,51,51")) 
	{
		star = -1
	}
	for (i = 0; i < 6; i++) 
	{
		xfa.resolveNode("MB.Bericht.Bewertung.Bereich["+ B +"].BereichGes.Stern[" + i + "]").caption.font.fill.color.value = star < i ? "212,208,200" : "51,51,51" ;
	}
	*/
	
	if (Objekt.caption.font.fill.color.value == "51,51,51" && (star == 5 || xfa.resolveNode("MB.Bericht.Bewertung.Bereich["+ B +"].Krit["+ K +"].Stern[" + (star + 1) + "]").caption.font.fill.color.value != "51,51,51")) 
	{
		star = -1;
	}	
	for (i = 0; i < 6; i++) 
	{
		xfa.resolveNode("MB.Bericht.Bewertung.Bereich["+ B +"].Krit["+ K +"].Stern[" + i + "]").caption.font.fill.color.value = star < i ? "212,208,200" : "51,51,51" ;
	}
}
Weß jemand wieviel Sterne stehen... im Durchschnitt je Bereich? Bestenfalls auch wie diese dann gesetzt werden können?

Lieben Dank im Voraus und vorweihnachtliche Grüße,
Uwe

Interessant wäre auch irgendwie zu ermittelten welche Kriterien je Bereich am schlechtesten bzw. am besten (1-2 Sterne bzw. 4 und mehr Sterne) bewertet wurden und wie dies in einem Textfeld gesammelt werden kann.
Z.B. in eimem Textfeld "Problembereiche": Pers. Entwicklung: Kriterium 1, Kriterium 3; Schule Ausbildung: Kriterium 1, Kriterium 2, Kriterium 3; usw.

armine
Beiträge: 2690
Registriert: 16.05.2009, 10:24

Weißt du wieviel Sterne stehen ...

Beitrag von armine » 14.12.2017, 11:19

Hallo Uwe,

du solltest dir mal die Funktionen von FormCalc anschauen. Da gibt es was zum Ermitteln des Maximums, Minimums und des Durchschnitts. Ach ja, zur Verwendung des Schrägstrichs solltest du dich auch kundig machen.

Bei den Sternchen kannst du bei jedem Kriterium 0 bis 5 vergeben. Wird nichts vergeben, geht das Kriterium auch nicht in die Berechnung des Durchschnitts ein. Etwaige Ausreißer werden gekennzeichnet, also kein Grund, mit weiteren Texten die Übersicht zu verderben. Das gehst du schon mit der Gruppierung der Sterne an. Wozu soll das gut sein?

vg armine
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Benutzeravatar
URH
Beiträge: 36
Registriert: 14.08.2017, 11:37

Weißt du wieviel Sterne stehen ...

Beitrag von URH » 15.12.2017, 09:27

Hallo armine,

Wow, ganz lieben Dank für deine Mühe und diese grandiose Lösung :)
In der Tat muß ich mich vieleicht doch etwas intensiver mit dem einen oder anderen befassen und nachdem du sehr oft mit Tabellen arbeitest hat das bestimmt auch seinen guten Grund.
Wenn ich noch eine kleine Frage anschließen darf:
Wie kann ich, sofern das überhaupt machbar ist, die jeweils schlechtesten "Bewertungen" in einem Textfeld schreiben?

VG und nochmals vielen Dank, Uwe

armine
Beiträge: 2690
Registriert: 16.05.2009, 10:24

Weißt du wieviel Sterne stehen ...

Beitrag von armine » 18.12.2017, 10:23

Hallo Uwe,

eigentlich sollten die Sterne aussagekräftig sein, sonst braucht man sie doch gar nicht. Wenn aber ein Exzerpt notwendig ist, kannst du dir das nach dem Beispiel anpassen.
Ob da mal vier Sterne als schwächte Beurteilung auszugeben sind, wage ich zu bezweifeln. Wenn in einer Kategorie kein Stern oder nur ein/zwei vergeben wurden scheint mir das viel wichtiger. Aber was verstehe ich schon davon.
Bevor du nochmal »die jeweils schlechtesten "Bewertungen" in einem Textfeld« auszugeben vorschlägst, empfehle ich dir, so eine Ausgabe mal zusammenzuschreiben und als Anschauungsmaterial zu posten.

vg armine
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Benutzeravatar
URH
Beiträge: 36
Registriert: 14.08.2017, 11:37

Weißt du wieviel Sterne stehen ...

Beitrag von URH » 18.12.2017, 10:35

Hallo armine,
wie geil ist das denn? :D
Frag blos nicht noch mal:
"Aber was verstehe ich schon davon."
Wie mir scheint eine ganze Menge! ;)

Perfekt! Damit kann ich weiterarbeiten.

Die Idee war die Zusammenstellung, genau so wie du sie auch hier vorgeschlagen hast, in das Textfeld "MB.Bericht.Bereiche.Problemfelder" (s. Abb) zu schreiben.
Nachdem es mir aber zwischenzeitlich gelungen in "MB.Bericht.Bereiche. ..." relevante Kurzberichte aus TB zu sammeln und zuzuordnen, sollte auch das gelingen.
Hoff ich doch - zum 1.1. soll das Teil Live gehen.

Vielen herzlichen Dank und Gruß,
Uwe

Benutzeravatar
URH
Beiträge: 36
Registriert: 14.08.2017, 11:37

Weißt du wieviel Sterne stehen ...

Beitrag von URH » 08.01.2018, 10:02

Hallo armine,
nachdem mein Formular nun seit dem 1.1. live gegangen ist stellte sich nun doch zu deinem Beispiel "Sterne+Text" eine einscheidende Frage: Wie bekomme ich in jeden Bereich die festgelegten Kriterien?
So wie ich es sehe gibt es im je Bereich nur eine Zeile, die du durch eine Schleife laufen lässt.
An der Stelle weiß ich nun nicht wie bzw. wo ich den Text für das jeweilige Kriterium schreiben soll.
Die derzeit aktuelle (neutrale) Fassung habe ich angehängt.
Nicht erschrecken - es funktioniert zwar wie gewünscht, doch der Code ist mit Sicherheit ziemlich verbesserungwürdig.

Gruß, Uwe

armine
Beiträge: 2690
Registriert: 16.05.2009, 10:24

Weißt du wieviel Sterne stehen ...

Beitrag von armine » 08.01.2018, 10:15

Hallo Uwe,

das Problem war vorhersehbar. Im Beitrag vom 18 Dez 2017 10:23 steht die Lösung.

vg armine

Benutzeravatar
URH
Beiträge: 36
Registriert: 14.08.2017, 11:37

Weißt du wieviel Sterne stehen ...

Beitrag von URH » 08.01.2018, 20:05

Hallo armine,
ich hab deinen Kommentar vom 18.12. nochmal gelesen und muß gestehen ich weiß nicht worauf du abzielst.
Daher hab ich zu Verständnis nochmal ein Bild angefügt.
Letztlich geht es darum, daß ich ich 1. - 4. Kriterium durch die eigenen, aussagekräftigen Kriterien ersetzen möchte.
Idee(soweit das an der Stelle geht): die Kriterien in einem Array definieren?

Ob das wohl auch für andere Teile des Formulars wie zum Beispiel DDL's möglich ist?
Insgesamt würde das Die Pflege z.B. bei Mitarbeiter, bereiche, Filter, usw. erheblich vereinfachen.

In VB, VBA, VBS war das immer ganz schick die Arrays mit den "statischen Daten" ganz an den Anfang zu stellen.
So ersparte ich mir bei Änderungen von Menüs, sich wiederholende Überschriften usw. das ganz Suchen im Quellcode. Ob das auch bei solchen Formulare möglich ist?

Grüße, Uwe

armine
Beiträge: 2690
Registriert: 16.05.2009, 10:24

Weißt du wieviel Sterne stehen ...

Beitrag von armine » 10.01.2018, 17:37

Hallo Uwe,

das PDF ist Teil des Beitrags. Ist da wirklich nicht zu erkennen, dass man die Bezeichnung der Kriterien gleich in die Tabelle schreiben kann?
Mit etwas Gezerre kannst du das auch über ein Array erledigen (siehe zusätzliche Tabelle).

Wo du die "statischen Daten" ganz an den Anfang zu stellen willst, kann ich nicht nachvollziehen. Ich schreibe mehrfach genutzte Daten (gerne auch als Array) in Funktionen.

vg armine
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Benutzeravatar
URH
Beiträge: 36
Registriert: 14.08.2017, 11:37

Weißt du wieviel Sterne stehen ...

Beitrag von URH » 13.01.2018, 16:26

Hallo armine,
vielen Dank für deine Mühe, das hilft mir schon sehr weiter.
Hast du vielleicht ein Link oder Bespiel wie ich solche Arrays speziell für den Inhalt von mehrfach vorkommenden DDL aufbaue und ansteuere?
Gruß und Danke nochmals, Uwe

Antworten