Tebis
Tebis

Prozesslösungen für die Fertigungsindustrie

Liste der NC Programmnamen am Ende der Doku, NC-Doku-Template

Beitrag 02.06.2023, 20:02 Uhr
Pu3a
Level 2 = Community-Facharbeiter
**
Ich brauche eine Liste von allen NC Programmnamen am Ende der Doku. Diese möchte ich in ein Gesamt-Programm generieren.
Kennt sich jemand mit dem NC-Doku-Template aus?

Reicht das am Ende aus?

<xsl:when test="n1:TebisDocu/n1:Language=&quot;English&quot;">
<fo:inline border-collapse="collapse" border-color="black" font-family="Helvetica" font-size="8pt" font-weight="bold">
<xsl:text>NC file name/</xsl:text>
</fo:inline>
</xsl:when>
<xsl:otherwise>
<fo:inline border-collapse="collapse" border-color="black" font-family="Helvetica" font-size="8pt" font-weight="bold">
<xsl:text>NC file name/</xsl:text>
</fo:inline>
   
Beitrag 02.06.2023, 20:44 Uhr
Dolzman
Level 4 = Community-Meister
****
QUOTE (Pu3a @ 02.06.2023, 22:02 Uhr) *
Ich brauche eine Liste von allen NC Programmnamen am Ende der Doku. Diese möchte ich in ein Gesamt-Programm generieren.
Kennt sich jemand mit dem NC-Doku-Template aus?

Reicht das am Ende aus?


Also das Stylesheet in einem Texteditor anzupassen wird nicht so einfach möglich sein,
Wenn du ein eigenes Stylesheet aufbauen möchtest (Software vorausgesetzt) wird die Schema Datei die du dazu benötigst im Templates Verzeichnis mit ausgeliefert.

Für eine Programmliste könntest du die alte PPD Doku verwenden, die wird bei jedem PP-Lauf mit ausgeführt und kann Informationen des aktuellen Programms ausgeben, wie z.B. auch den Dateinamen, so kannst du die eine Textdatei mit deinen PGM CALLS aufbauen die als Hauptprogramm nutzbar wäre. Bei mehreren Programmausgaben wird das hinten angehängt, so kannst du die eine Liste über mehrere NC-Ausgaben aufbauen.

Schöne Grüße


--------------------
Tebis: CAM Programierung, Datenbank Verwaltung, PP-Programmierung, System Administration
Heidenhain: iTNC530 Anwender, Cycle-Design, Kinematic Design, und sonstige PLC Spielereien . . . .
   
Beitrag 02.06.2023, 21:20 Uhr
Pu3a
Level 2 = Community-Facharbeiter
**
QUOTE (Dolzman @ 02.06.2023, 21:44 Uhr) *
Also das Stylesheet in einem Texteditor anzupassen wird nicht so einfach möglich sein,
Wenn du ein eigenes Stylesheet aufbauen möchtest (Software vorausgesetzt) wird die Schema Datei die du dazu benötigst im Templates Verzeichnis mit ausgeliefert.

Für eine Programmliste könntest du die alte PPD Doku verwenden, die wird bei jedem PP-Lauf mit ausgeführt und kann Informationen des aktuellen Programms ausgeben, wie z.B. auch den Dateinamen, so kannst du die eine Textdatei mit deinen PGM CALLS aufbauen die als Hauptprogramm nutzbar wäre. Bei mehreren Programmausgaben wird das hinten angehängt, so kannst du die eine Liste über mehrere NC-Ausgaben aufbauen.

Schöne Grüße


Vielen Dank für die Rückmeldung.
von PPD kann ich einzelne Programm-Namen rauskopieren, Ich möchte aber eine Liste in einer Datei am Stück, denn wenn es über 100 Programme gibt wirds schwierig.

Ich habe bis jetzt ein wenig was erreichen können (Anhang Seite 3)

Mit der Tabelle kämpfe ich noch.

Der Beitrag wurde von Pu3a bearbeitet: 02.06.2023, 21:21 Uhr
Angehängte Datei(en)
Angehängte Datei  document.pdf ( 11.58KB ) Anzahl der Downloads: 29
 
   
Beitrag 02.06.2023, 21:46 Uhr
Dolzman
Level 4 = Community-Meister
****
Wie gesagt, die PPD wird automatisch mit jeder Ausgabe eines Programms mit ausgeführt, falls eine Vorlage hinterlegt ist, und an bereits vorhandene Dokus hinten angehängt, du kannst also deine 100 Programme zusammen ausgeben, oder auch einzeln, so lange die Doku nicht gelöscht wird hängt sich jedes neue Programm hinten an.

Ich hatte damit auch schon ein Heidenhain Hauptprogramm generieren lassen. Du kannst auch abfragen ob die Doku Datei schon vorhanden ist oder das erste mal geschrieben wird. Somit auch eine Art Header mit Prokeltinformationen aus dem File Def einfügen, bei Heidenhain benötigst du ja ein BEG PGM xxxx MM am Anfang, das Problem ist nur, dass du nicht weist welche Datei die letzte ist, das Abschließen des Programms mit END PGM xxxx MM musste ich dann manuell einfügen, bzw. bis zur TNC530 fügt die Steuerung das automatisch ein.


--------------------
Tebis: CAM Programierung, Datenbank Verwaltung, PP-Programmierung, System Administration
Heidenhain: iTNC530 Anwender, Cycle-Design, Kinematic Design, und sonstige PLC Spielereien . . . .
   
Beitrag 03.06.2023, 10:29 Uhr
Pu3a
Level 2 = Community-Facharbeiter
**
QUOTE (Dolzman @ 02.06.2023, 22:46 Uhr) *
Wie gesagt, die PPD wird automatisch mit jeder Ausgabe eines Programms mit ausgeführt, falls eine Vorlage hinterlegt ist, und an bereits vorhandene Dokus hinten angehängt, du kannst also deine 100 Programme zusammen ausgeben, oder auch einzeln, so lange die Doku nicht gelöscht wird hängt sich jedes neue Programm hinten an.

Ich hatte damit auch schon ein Heidenhain Hauptprogramm generieren lassen. Du kannst auch abfragen ob die Doku Datei schon vorhanden ist oder das erste mal geschrieben wird. Somit auch eine Art Header mit Prokeltinformationen aus dem File Def einfügen, bei Heidenhain benötigst du ja ein BEG PGM xxxx MM am Anfang, das Problem ist nur, dass du nicht weist welche Datei die letzte ist, das Abschließen des Programms mit END PGM xxxx MM musste ich dann manuell einfügen, bzw. bis zur TNC530 fügt die Steuerung das automatisch ein.



Danke, ich versuchs trozdem mit NC-Doku. Für das END PGM habe ich bereits eine Lösung mit Excel-Variablen
   
Beitrag 03.06.2023, 10:33 Uhr
Pu3a
Level 2 = Community-Facharbeiter
**
Habs bereits so geschaft, muss nur noch den Code ausmisten

Der Beitrag wurde von Pu3a bearbeitet: 03.06.2023, 10:34 Uhr
Angehängte Datei(en)
Angehängte Datei  Unbenannt.JPG ( 25.61KB ) Anzahl der Downloads: 31
 
   
Beitrag 03.06.2023, 10:42 Uhr
Pu3a
Level 2 = Community-Facharbeiter
**
Wenn jemand helfen könnte wäre ich sehr dankbar. Ich brauche keine Bilder, Wekzeuge Zeiten. Nur alle Namen der Programme

hier der Ausschnitt
Angehängte Datei(en)
Angehängte Datei  Ausschnitt.txt ( 417.22KB ) Anzahl der Downloads: 18
 
   
Beitrag 03.06.2023, 11:54 Uhr
Monsieur5Achs
Level 1 = Community-Lehrling
*
Hallo @Pu3a, ich kenn mich im Tebis nicht aus, aber im HyperMill benutze ich auch .xsl-Skripte zur Generierung meiner Programm-Dokus. Im Endeffekt listet die das Skript alle abgefragtes Daten aus und mit dem Stylesheet wird es graphisch aufgehübscht. Konkret habe ich alles nicht benötigte rausgelöscht. Vielleicht funktioniert der Ansatz bei dir auch.


--------------------
Wer aufhört besser zu werden, hat aufgehört gut zu sein.
Geht nicht, gibt's nicht
   
Beitrag 03.06.2023, 11:54 Uhr
Monsieur5Achs
Level 1 = Community-Lehrling
*
Hallo @Pu3a, ich kenn mich im Tebis nicht aus, aber im HyperMill benutze ich auch .xsl-Skripte zur Generierung meiner Programm-Dokus. Im Endeffekt listet die das Skript alle abgefragtes Daten aus und mit dem Stylesheet wird es graphisch aufgehübscht. Konkret habe ich alles nicht benötigte rausgelöscht. Vielleicht funktioniert der Ansatz bei dir auch.


--------------------
Wer aufhört besser zu werden, hat aufgehört gut zu sein.
Geht nicht, gibt's nicht
   
Beitrag 03.06.2023, 17:35 Uhr
Pu3a
Level 2 = Community-Facharbeiter
**
Hallo Monseur, ungefähr so hab ich es auch gemacht. Bekommen allerdings nicht alles raus, ohne das der Script Fehler ausgibt.
   
Beitrag 04.06.2023, 10:42 Uhr
Monsieur5Achs
Level 1 = Community-Lehrling
*
QUOTE (Pu3a @ 03.06.2023, 19:35 Uhr) *
Hallo Monseur, ungefähr so hab ich es auch gemacht. Bekommen allerdings nicht alles raus, ohne das der Script Fehler ausgibt.


Ja so lief es bei mir meistens auch. Die meisten Fehler sind Syntax-Sachen, also Klammern nicht geschlossen, oder Funktionen sind nicht sauber beendet.


--------------------
Wer aufhört besser zu werden, hat aufgehört gut zu sein.
Geht nicht, gibt's nicht
   
Beitrag 04.06.2023, 18:57 Uhr
Pu3a
Level 2 = Community-Facharbeiter
**
Ich habe jetzt für die Seite nur noch das drin:

CODE
                            <xsl:variable name="altova:CurrContextGrid_30" select="."/>                                <xsl:variable name="altova:tablerows">
                                            <fo:block text-align="left">
                                                <xsl:choose>
                                                    <xsl:when test="n1:TebisDocu/n1:Language=&quot;English&quot;">
                                                        <fo:inline border-collapse="collapse" border-color="black" font-family="Helvetica" font-size="7pt" font-weight="bold">
                                                            <xsl:text>NC file name/</xsl:text>
                                                        </fo:inline>
                                                    </xsl:when>
                                                    <xsl:otherwise>
                                                        <fo:inline border-collapse="collapse" border-color="black" font-family="Helvetica" font-size="7pt" font-weight="bold">
                                                            <xsl:text>NC file name/</xsl:text>
                                                        </fo:inline>
                                                    </xsl:otherwise>
                                                </xsl:choose>
                                                </fo:block>
                                            <fo:block text-align="left">
                                                <fo:block>
                                                    <fo:leader leader-pattern="space"/>
                                                </fo:block>
                                            </fo:block>
                            </xsl:variable>
                                <xsl:choose>
                                    <xsl:when test="string($altova:tablerows)">
                                        <xsl:copy-of select="$altova:tablerows"/>
                                    </xsl:when>
                                    <xsl:otherwise>
                                                <fo:block/>
                                    </xsl:otherwise>
                                </xsl:choose>
                            <fo:block break-after="page">
                                <fo:leader leader-pattern="space"/>
                               </fo:block>
                            <fo:inline-container>
                                <fo:block>
                                    <xsl:text>&#x200B;</xsl:text>
                                </fo:block>
                            </fo:inline-container>



Werden mir da alle Programmnamen angezeigt? oder brauche ich noch "<xsl:for-each" irgendwas?
   
Beitrag 05.06.2023, 15:51 Uhr
Pu3a
Level 2 = Community-Facharbeiter
**
habs heute nochmal anpassen müssen, jetzt klappt's auch wie ichs mir vorstelle. wer den Script auch braucht, kann sich gerne melden

Der Beitrag wurde von Pu3a bearbeitet: 05.06.2023, 15:53 Uhr
   
Beitrag 05.06.2023, 16:12 Uhr
Dolzman
Level 4 = Community-Meister
****
QUOTE (Pu3a @ 05.06.2023, 17:51 Uhr) *
habs heute nochmal anpassen müssen, jetzt klappt's auch wie ichs mir vorstelle. wer den Script auch braucht, kann sich gerne melden


So rein Interessehalber,
du generierst jetzt eine PDF mit einer Auflistung der NC-Programme am Ende ?? Oder kommt da direkt eine ASCII Datei also TXT raus ?
Und dann holst du dir per (Excel ?) Script die Programmnamen raus und baust ein NC-Hauptprogramm ?


--------------------
Tebis: CAM Programierung, Datenbank Verwaltung, PP-Programmierung, System Administration
Heidenhain: iTNC530 Anwender, Cycle-Design, Kinematic Design, und sonstige PLC Spielereien . . . .
   
Beitrag 05.06.2023, 17:44 Uhr
Pu3a
Level 2 = Community-Facharbeiter
**
QUOTE (Dolzman @ 05.06.2023, 17:12 Uhr) *
So rein Interessehalber,
du generierst jetzt eine PDF mit einer Auflistung der NC-Programme am Ende ?? Oder kommt da direkt eine ASCII Datei also TXT raus ?
Und dann holst du dir per (Excel ?) Script die Programmnamen raus und baust ein NC-Hauptprogramm ?

Ich habe eine zusätzliche Seite im NC-Doku, nach dem Aufspannplan und Werkzeugbeschreibungen eingefügt, auf der die Programme in der Reihenfolge aufgelistet sind. Die Programmliste kopiert man in die Excel-Datei. Diese erstelt eine .h Datei mit Programmcalls von allen Programmen.
   
Beitrag 05.06.2023, 17:55 Uhr
Pu3a
Level 2 = Community-Facharbeiter
**
https://www.file-upload.net/download-151542...gramm.XLSM.html

Die Excel-Datei
   
Beitrag 05.06.2023, 18:14 Uhr
Pu3a
Level 2 = Community-Facharbeiter
**
Man könnte sicherlich einen Print Script in der .xsl schreiben, wie ich es in Excel getan habe. Damit würde sich die .h Datei voll automatisch erstellen. Leider kenne ich mit xsl nicht wirklich aus
   
Beitrag 14.06.2023, 13:19 Uhr
Dolzman
Level 4 = Community-Meister
****
QUOTE (Pu3a @ 05.06.2023, 20:14 Uhr) *
Man könnte sicherlich einen Print Script in der .xsl schreiben, wie ich es in Excel getan habe. Damit würde sich die .h Datei voll automatisch erstellen. Leider kenne ich mit xsl nicht wirklich aus


Du kannst dir mit dem XSL Stylesheet statt einer PDF auch direkt eine .H Datei generieren lassen, dann musst du gar nichts mehr konvertieren. So eine Anpassung wird jetzt nicht die welt kosten, frag halt mal nach !

Oder du baust dir ein Script, welches direkt die XML Datei durchsucht und die Programmnamen filtert,
Einmal mit einer FOR NEXT Schleife drüber und alle ProgFileName Einträge rausgesucht.


--------------------
Tebis: CAM Programierung, Datenbank Verwaltung, PP-Programmierung, System Administration
Heidenhain: iTNC530 Anwender, Cycle-Design, Kinematic Design, und sonstige PLC Spielereien . . . .
   
3 Besucher lesen dieses Thema (Gäste: 3)
0 Mitglieder: