Jump to content

Protokollkopfparamter über PCM anwählen


---
 Share

Recommended Posts

Hallo zusammen,

gibt es eine Möglichkeit über einen PCM code bei Start der Messung die Protokollkopfparamter über PCM anzuwählen.

Vorteil wäre bei Umstellung auf PiWeb, dass man nicht jedes Programm neu abspeichern müsste.

Foto siehe Anlage

image.thumb.png.3b51ec79733cda4694bb13024f1f2976.png

Link to comment
Share on other sites

Wir haben immer mit Benutzerdefinierten Protokollkopfvariablen gearbeitet. Das Heißt z.B. mit u_.......
Wir haben eine PiWeb Schulung gehabt und jetzt möchten wir auf die "Zeiss" Variablen umsteigen, da man so in PiWeb filtern usw. kann.

Desweiteren haben wir Gear bekommen und so müssen wir auch noch ein paar Namen im Hintergrund ändern damit die GDE passend befüllt wird.

Jetzt müssten wir eine neue Protokollkopfparamter Datei erzeugen und diese bei jedem Prüfplan anwählen und abspeichern.

Wenn ich jetzt eine PCM Datei mit dem richtigen Name erzeuge und im inspections Ordner ablege dann würde diese Datei für alle Messprogramme gelten.

Link to comment
Share on other sites

Hallo Markus,

ein direkter PCM-Befehl existiert dafür nicht. 

Du kannst z.B. die Datei "inspection_pre_start_dialog_pcm.txt" oder "inspection_post_load_pcm.txt" in den Prüfplanordner oder den Standardpfad für die Prüfpläne packen und den Code unten einfügen (auf eigene Gefahr!).

protPath und ProtName musst du gegebenenfalls anpassen. 

Achtung: Die Zeilen mit removeAll löschen die bisher aktivierten Protokollkopfvariablen. Wenn dies nicht gewünscht ist, einfach auskommentieren.

protPath="C:\Users\Public\Documents\Zeiss\CALYPSO\data\protocol header\"  // Pfad zur Protokollkopfdatei 
protName="ProtocolHeader.xml"  // Name der Protokollkopfdatei
codeProt = "(t1 := '" + protPath + protName +   "') readStream. "
codeProt = codeProt +  "t2:=Zeiss.Calypso.OMInspection active protocol protDefObj. "
codeProt = codeProt +  "t2 settings at: #multiProtOn put: true. "
codeProt = codeProt +  "t3:=#phParaFor_E. "
codeProt = codeProt +  "t4:=#phParaFor_R. "
codeProt = codeProt +  "(t2 settings at: t3) removeAll. "
codeProt = codeProt +  "(t2 settings at: t4) removeAll. "
codeProt = codeProt +  "([(XML.XMLParser on: t1 asFilename) "
codeProt = codeProt +  "			validate: false; scanDocument] "
codeProt = codeProt +  "			on: XML.MalformedSignal , OsInaccessibleError do: [:t10 | ^Zeiss.Calypso.OMProtHeadParameterSelection new parameterListNotReadable: t1]) root realElements "
codeProt = codeProt +  "do: 	[:t5 | 	| t6 |	t5 tag type = 'Edit' "
codeProt = codeProt +  "ifTrue: [t6:=t3] "
codeProt = codeProt +  "ifFalse: [t5 tag type = 'CNC' "
codeProt = codeProt +  "ifTrue: [t6:=t4] "
codeProt = codeProt +  "ifFalse: [ ^Zeiss.Calypso.OMProtHeadParameterSelection new parameterListNotReadable: t1]]. "
codeProt = codeProt +  "(t2 settings at: t6) addAll: (t5 realElements collect: [:t7 | t7 elements first text asSymbol]) asOrderedCollection. ]. "
codeProt = codeProt +  "^0 "
executeCode(codeProt)		
clearParameter("codeProt", "protPath", "protName")

 

  • Like! 1
Link to comment
Share on other sites

 Share

×
×
  • Create New...