Jump to content

Wert in Präsentationsprotokoll übertragen


---
 Share

Recommended Posts

Hallo,

ich habe in den Parameter Ausgangseinstellungen eines Prüfplanes über eine Formel gewisse Werte berechnet.
Die Berechnung beinhaltet unter anderem Prüfmerkmal Istwerte, außerdem eine if Variable, so dass es zwei mögliche Ergebnisse gibt. Die Formel funktioniert soweit und ich kann mir die jeweiligen Ergebnisse auch über message(...) anzeigen lassen.

Jetzt hatte ich vor diese Ergebnisse auch auf dem Präsentationsprotokoll erscheinen lassen, aber irgendwie bekomme ich es nicht hin. Hat jemand eine Idee wie man das verwirklichen kann?

Kleiner Hinweis noch, bei dem Ergebnis handelt es sich um Variablen die für ein bestimmtes Messergebnis stehen sollen. Ich hatte es über Resultatselement versucht aber irgendwie bringt Calypso dann immer das Ergebnis dass die jeweilige Parameter Variable der Formel nicht bekannt ist.
Wenn ich die Formel in den Ausgangseinstellungen berechnen lasse und dann danach das Resultatselement aufrufe geht es, nur nicht im regulären durchlauf des Programmes.
Muss ich die Formel evtl. an einem anderen Ort als den Ausgangseinstellungen platzieren?

Ich hoffe es ist einigermaßen verständlich um was es mir geht.

Im groben sieht die Formel so aus:
Ergebnis=98

if Ergebnis<100 then 
	format(Ergebnis)
	Führende0=format(0)
	Test= Führende0 + Ergebnis
	message(Test)
		
		else Ergebnis
		message(Ergebnis)
endif
Link to comment
Share on other sites

Wenn die Berechnung in den Ausgangseinstellungen des Prüfplans steht, ist die Berechnung der Prüfmerkmale an dem Punkt wahrscheinlich schon abgeschlossen, deshalb taucht das Ergebnis dann nicht mehr im Protokoll auf.
Du musst die Berechnung irgendwo vor dem Resultatselement unterbringen, wo du es ausgeben willst, spätestens aber in dessen Eingangseinstellungen.
Link to comment
Share on other sites

Wenn Du die Formel in der PreSettings des ResultatElements einträgst,
müsste der Paramater "Ergebnis" im Resultatselement dargestellt werden.

Der Parameter "Test" ist ein Text, damit sagt CALYPSO "falsches Format", d.h. kann nicht verwendet werden.

Ganz klar ist mir nicht, was Du bezweckst:
Link to comment
Share on other sites

Danke für die Antworten.

Ich werde das jetzt testen die Formel in den Parametern des Resultatselements selbst einzubauen.

Letztendlich will ich nur bezwecken dass sobald das Ergebnis zweistellig wird eine 0 vorangestellt wird.
Habe bisher keine andere Möglichkeit gefunden wie ich das bewerkstelligen könnte. Habe schon gesehen das Calypso hier meckert, das wäre dann wahrscheinlich die nächste Baustelle, muss ich mir nochmal anschauen. Oder hat jemand eine andere Idee wie man das machen könnte?
Link to comment
Share on other sites

Hallo Julius,

willst Du das als Messwert am Protokoll stehen haben? Glaube nicht dass das funktioniert weil beim Messwert immer eine Zahl erwartet wird und da die voranstehende "0" weggekürzt wird.
Du könntest aber auch im Kommentar des Resultatselements über "Formel" den Parameter "Test" eingeben, dann wird das unter dem Namen des Resultatselement als Kommentar mit der führenden 0 angezeigt.
Link to comment
Share on other sites

  • 2 weeks later...
Hallo, danke für den Hinweis.

Ich möchte das Ergebnis an die .txt Datei (Tabellendatei) übergeben. Also es muss in dieser an irgendeiner Stelle auftauchen.

Machte es über die Kommentarfunktion leider nicht. Hat jemand eine Idee wie ich das Ergebnis trotz führender 0 in das Protokoll oder die txt Datei bekommen könnte?
Link to comment
Share on other sites

Gäbe es evtl. eine Möglichkeit die über die Formel erzeugte Zahl direkt in eine .txt Datei zu schreiben?

Eine Textdatei kann ich ja jederzeit erzeugen lassen, nur habe ich bisher keine Möglichkeit gefunden wie ich das Ergebnis der Formel in diese schreiben könnte.

Also z.B. 098 ist das Ergebnis der Formel, dann erzeuge *.txt und schreibe in diese .txt -Datei dann 098, sonst nichts.
Beim nächsten Durchlauf sollte die txt Datei dann einfach überschrieben werden.
Link to comment
Share on other sites

Folgendes in den Ausgangseinstellungen des gewünschten Prüfmerkmals müsste funktionieren:

// Textdatei mit Namen des Merkmals wird im Prüfplanordner erzeugt
// Der Istwert des Merkmals wird in Textdatei geschrieben
// Istwert <100 wird eine Führende 0 hinzugefügt
Merkmalname = getNominal().identifier 								//Merkmalsnamen definieren
Ergebnis = getActual().actual												//Aktuelles Ergebnis des Merkmals
PrüfplanVerz = getActualInspectionDir()								//Aktuelles Prüfplanverzeichnis
TxtDatei = PrüfplanVerz + "\" + Merkmalname + ".txt"				//Zusammensetzen des Namens der Textdatei

if fileExists(TxtDatei) == true then
	deleteFile(TxtDatei)														//Löschen der Textdatei wenn vorhanden
endif


if Ergebnis<100 then
	GerErgebnis = round(Ergebnis,3)									//Wenn Ergibniss <100 wird Ergebnis auf 3 Nachkommastellen gerundet
	GerErgebnisOhned = mid(format(GerErgebnis),1,6)			//Hier wird das Gerundete Ergebnis formatiert und auf um das "d" das an Ende stehen würde gekürzt
	message("0" + GerErgebnisOhned)									//Hier wird die Führende 0 und das Ergebnis als Meldung ausgegeben
	addToFile(TxtDatei,"0" + GerErgebnisOhned)					//Hier wird die Führende 0 und das Ergebnis in die Textdatei geschrieben
		else Ergebnis
		message(round(Ergebnis,3))										//Wenn Ergebnis >=100 wird das Gerundete Ergebnis als Meldung ausgegeben
		addToFile(TxtDatei,Ergebnis)										//Hier wird das Ergebnis mit den im Calypso Voreingestellten Nachkommastellen in die Textdatei geschrieben
endif

MfG Florian
Link to comment
Share on other sites

 Share

×
×
  • Create New...