Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  E3.series
  Skript alle geöffneten E3 Dokumente als PDF

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  Skript alle geöffneten E3 Dokumente als PDF (972 mal gelesen)
Feuerblitz
Mitglied



Sehen Sie sich das Profil von Feuerblitz an!   Senden Sie eine Private Message an Feuerblitz  Schreiben Sie einen Gästebucheintrag für Feuerblitz

Beiträge: 29
Registriert: 07.10.2020

Solidworks 2012 Professional
Windows 10 Pro
E3 2018

erstellt am: 26. Okt. 2020 11:43    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo zusammen

gibt es ein Skript, mit dem ich alle geöffneten Dokumente als PDF drucken kann in einen gewünschten Ordner? Dies mit dem Namen der Datei selber?
Ich wäre sehr froh drum.

Gruss Feuerblitz

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

RSchulz
Moderator²
Head of CAD, Content & Collaboration / IT-Manager



Sehen Sie sich das Profil von RSchulz an!   Senden Sie eine Private Message an RSchulz  Schreiben Sie einen Gästebucheintrag für RSchulz

Beiträge: 5541
Registriert: 12.04.2007

@Work
Lenovo P510
Xeon E5-1630v4
64GB DDR4
Quadro P2000
256GB PCIe SSD
512GB SSD
SmarTeam V5-6 R2016 Sp04
CATIA V5-6 R2016 Sp05
E3.Series V2019
Altium Designer/Concord 19
Win 10 Pro x64

erstellt am: 26. Okt. 2020 13:08    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Feuerblitz 10 Unities + Antwort hilfreich

Hallo Feuerblitz,

du wirst aus einem Script heraus nicht alle Zeichnungen speichern können, da diese in eigenen E3 Instanzen geöffnet sind. Das vb script läuft aber leider im nur im Kontext der aufrufenden Applikation\Instanz. Daher geht dies nur über .net und mit dem Hook auf jede einzelne E3 Instanz.

Das Speichern der Zeichnung erfolgt dann wie folgt:

Code:

E3Prj.ExportPDF(strFullFileName, ShtIds, &H7)

oder wie in der Hilfe als vbs beschrieben:

Code:

Set App = CreateObject("CT.Application")
Set Prj = App.CreateJobObject
Set Sht = Prj.CreateSheetObject

shtcnt = prj.GetSheetIds(shtids)

If(shtcnt = 0) Then
    MsgBox "No sheet contained!"
Else
    ret = prj.ExportPdf( "C:\pdf_v7_no_modify.pdf", shtids, &h200 + &h7 )      'Version 7 + not modifiable
    If(ret <> 1) Then MsgBox "Failed to create PDF file!"
End If


Wie sehen denn deine Programmierkenntnisse aus?

------------------
MFG
Rick Schulz

Nettiquette (CAD.de)  -  Was ist die Systeminfo?  -  Wie man Fragen richtig stellt.  -  Unities

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

RSchulz
Moderator²
Head of CAD, Content & Collaboration / IT-Manager



Sehen Sie sich das Profil von RSchulz an!   Senden Sie eine Private Message an RSchulz  Schreiben Sie einen Gästebucheintrag für RSchulz

Beiträge: 5541
Registriert: 12.04.2007

@Work
Lenovo P510
Xeon E5-1630v4
64GB DDR4
Quadro P2000
256GB PCIe SSD
512GB SSD
SmarTeam V5-6 R2016 Sp04
CATIA V5-6 R2016 Sp05
E3.Series V2019
Altium Designer/Concord 19
Win 10 Pro x64

erstellt am: 26. Okt. 2020 13:18    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Feuerblitz 10 Unities + Antwort hilfreich

Versuch mal folgendes:
Code:

Dim FileName, Folder, FullFileName
Dim ShtCnt, RetCode, ShtIds
Dim App, Prj, Sht

Set App = CreateObject("CT.Application")
Set Prj = App.CreateJobObject
Set Sht = Prj.CreateSheetObject

Folder = "D:\" 'Enter Save Folder Here
FileName = Prj.GetName
FullFileName = Folder & FileName & ".pdf"
ShtCnt = Prj.GetSheetIds(ShtIds)

If(ShtCnt = 0) Then
    MsgBox "No sheet contained!"
Else
    RetCode = Prj.ExportPdf(FullFileName, ShtIds, &h200 + &h7) 'Version 7 + not modifiable
    If(RetCode <> 1) Then MsgBox "Failed to create PDF file!"
End If


Das sollte so schon in der geöffneten E3 Instanz als aufgerufenes vbs funktionieren. Aktuell würde es das PDF mit allen Blätten nach D: mit dem Namen des Projektes speichern. Aber es wird eben nur die ausführende Instanz gespeichert, nicht alle geöffneten Projekte.

------------------
MFG
Rick Schulz

Nettiquette (CAD.de)  -  Was ist die Systeminfo?  -  Wie man Fragen richtig stellt.  -  Unities

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Feuerblitz
Mitglied



Sehen Sie sich das Profil von Feuerblitz an!   Senden Sie eine Private Message an Feuerblitz  Schreiben Sie einen Gästebucheintrag für Feuerblitz

Beiträge: 29
Registriert: 07.10.2020

Solidworks 2012 Professional
Windows 10 Pro
E3 2018

erstellt am: 26. Okt. 2020 17:18    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo
Vielen Dank für deine Antwort. Meine Erfahrungen habe ich eher in Excel mit VBA gemacht.
In E3 ist der PDF export bei mir ausgegraut. Mit dem Code habe ichs versucht. Gab aber keinen Erfolg.

Gruss

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Feuerblitz
Mitglied



Sehen Sie sich das Profil von Feuerblitz an!   Senden Sie eine Private Message an Feuerblitz  Schreiben Sie einen Gästebucheintrag für Feuerblitz

Beiträge: 29
Registriert: 07.10.2020

Solidworks 2012 Professional
Windows 10 Pro
E3 2018

erstellt am: 26. Okt. 2020 17:23    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Vielen Dank für den Code. Den habe ich sofort ausprobiert. Leider kommt eine Fehlermeldung:
Failed to create PDF File.
Was ja in der MSgBox steht. Aber was das bedeutet ist mir noch ein Rätsel.
Was heisst das für mich?
Ich werde nicht schlau wenn ich den Code studiere.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

RSchulz
Moderator²
Head of CAD, Content & Collaboration / IT-Manager



Sehen Sie sich das Profil von RSchulz an!   Senden Sie eine Private Message an RSchulz  Schreiben Sie einen Gästebucheintrag für RSchulz

Beiträge: 5541
Registriert: 12.04.2007

@Work
Lenovo P510
Xeon E5-1630v4
64GB DDR4
Quadro P2000
256GB PCIe SSD
512GB SSD
SmarTeam V5-6 R2016 Sp04
CATIA V5-6 R2016 Sp05
E3.Series V2019
Altium Designer/Concord 19
Win 10 Pro x64

erstellt am: 26. Okt. 2020 17:24    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Feuerblitz 10 Unities + Antwort hilfreich

Hast du denn eine Lizenz zum PDF erzeugen?

------------------
MFG
Rick Schulz

Nettiquette (CAD.de)  -  Was ist die Systeminfo?  -  Wie man Fragen richtig stellt.  -  Unities

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Feuerblitz
Mitglied



Sehen Sie sich das Profil von Feuerblitz an!   Senden Sie eine Private Message an Feuerblitz  Schreiben Sie einen Gästebucheintrag für Feuerblitz

Beiträge: 29
Registriert: 07.10.2020

Solidworks 2012 Professional
Windows 10 Pro
E3 2018

erstellt am: 26. Okt. 2020 17:57    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Das ist eine sehr gute Frage. Das weiss ich ehrlich gesagt nicht. Wie finde ich das raus?

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

awb
Mitglied


Sehen Sie sich das Profil von awb an!   Senden Sie eine Private Message an awb  Schreiben Sie einen Gästebucheintrag für awb

Beiträge: 8
Registriert: 16.01.2020

Windows 10
E3 2018
VBS, VBA, VB6, vb.net

erstellt am: 27. Okt. 2020 12:17    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Feuerblitz 10 Unities + Antwort hilfreich

Hallo,

versuche mal folgendes:

Code:

Dim FileName, Folder, FullFileName
Dim ShtCnt, RetCode, ShtIds
Dim App, Prj, Sht
Set App = CreateObject("CT.Application")
Set Prj = App.CreateJobObject
Set Sht = Prj.CreateSheetObject

Folder = Prj.GetPath
FileName = Prj.GetName
FullFileName = Folder & FileName & ".pdf"
ShtCnt = Prj.GetSheetIds(ShtIds)

If(ShtCnt = 0) Then
    MsgBox "No sheet contained!"
Else
    RetCode = Prj.ExportPdf(FullFileName, ShtIds, 0)
    If(RetCode <> 1) Then MsgBox "Failed to create PDF file! Error Code: " & RetCode
End If


Dadurch wird der Fehlercode auch mit ausgegeben.

Fehlercodes:
1 Export successful
-1 Unknown error
-2 No project opened
-3 Missing license
-4 Invalid file path or missing authorization
-5 Invalid sheet
-6 Invalid Acrobat version
-10 Invalid password
-11 outdated external document (Available since Build 2018-19.00)
-12 non-existent link to external document (Available since Build 2018-19.00)

evtl. findest du auch im Meldungsfenster einen Hinweis wieso der Export nicht funktioniert.

Gruß awb

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Feuerblitz
Mitglied



Sehen Sie sich das Profil von Feuerblitz an!   Senden Sie eine Private Message an Feuerblitz  Schreiben Sie einen Gästebucheintrag für Feuerblitz

Beiträge: 29
Registriert: 07.10.2020

Solidworks 2012 Professional
Windows 10 Pro
E3 2018

erstellt am: 29. Okt. 2020 08:54    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo awb

dein Code habe ich versucht. Geht nicht. Lizenz für den PDF Export ist nicht vorhanden.

Aber vielen Dank.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Sevy4791
Mitglied



Sehen Sie sich das Profil von Sevy4791 an!   Senden Sie eine Private Message an Sevy4791  Schreiben Sie einen Gästebucheintrag für Sevy4791

Beiträge: 70
Registriert: 28.01.2022

erstellt am: 10. Jan. 2023 15:25    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Feuerblitz 10 Unities + Antwort hilfreich

Hallo Zusammen

Vielen Dank für die Scripts, funktioniert soweit einwandfrei.

Gibt es eine Möglichkeit die Signal-/Ader- Logiklinien sowie
die Linienenden-Markierung vor dem PDF-Export auszuschalten?

Das wäre noch das letzte Puzzleteil, das noch fehlt. 

Besten Dank für eure Hilfe, Grüsse Sevy

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

K0NFUZIUS
Moderator



Sehen Sie sich das Profil von K0NFUZIUS an!   Senden Sie eine Private Message an K0NFUZIUS  Schreiben Sie einen Gästebucheintrag für K0NFUZIUS

Beiträge: 258
Registriert: 06.02.2006

erstellt am: 24. Jan. 2023 16:24    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Feuerblitz 10 Unities + Antwort hilfreich

Hallo Sevy,
das hier sollte funktionieren:
Code:

Set e3Application = CreateObject( "CT.Application" )
Set job = e3Application.CreateJobObject()
value = job.GetSettingvalue ("AIRLINES")
newvalue = value And Not 5
job.SetSettingvalue "AIRLINES", newvalue

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Sevy4791
Mitglied



Sehen Sie sich das Profil von Sevy4791 an!   Senden Sie eine Private Message an Sevy4791  Schreiben Sie einen Gästebucheintrag für Sevy4791

Beiträge: 70
Registriert: 28.01.2022

E3 2020 SP3 Build 21.30
I9-1295HX 32GB Win10 22H2
Eplan ProPanel 2.9
Eplan 3.3/5.x
Elcad
Fusion360

erstellt am: 26. Jan. 2023 06:52    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Feuerblitz 10 Unities + Antwort hilfreich

Guten Morgen Jörg

Besten Dank, das hat auf Anhieb geklappt. Die Linienendenmarkierung bleibt zwar, aber damit kann ich leben.

Anbei nun der gesamte Script um alle geöffneten Seiten eines Projekts in ein PDF zu exportieren.
Ich nutze das um Umbauanleitungen zu erstellen.

Gruss Sevy

Programmcode lauffähig unter VBA für VBS bitte entsprechend anpassen. Ihr braucht noch das Modul ConnectToE3
von Zuken für die Projektauswahl.

Code:
Sub OpenPages2PDF()
    Dim FileName, Folder, FullFileName
    Dim ShtCnt, RetCode, ShtIds
    Dim App, Prj, Sht, Job
    Dim LongArr() As Variant
    Set App = ConnectToE3
    Set Prj = App.CreateJobObject
    Set Job = App.CreateJobObject
    Set Sht = Prj.CreateSheetObject
    Folder = Prj.GetPath
    FileName = Prj.GetName
    FullFileName = Folder & FileName & "_Umbauanleitung.pdf"
   
    Job.ResetHighlight
    If Prj.LoadLevelConfiguration("Link auf eure .vis Datei") <> 1 Then Debug.Print "SetLevelFailed"
    Value = Job.GetSettingvalue("AIRLINES")
    newvalue = Value And Not 5
    Job.SetSettingvalue "AIRLINES", newvalue
   
    c = 0
    ShtCnt = Prj.GetSheetIds(ShtIds)
    For i = 1 To UBound(ShtIds)
        ret = Sht.SetId(ShtIds(i))
        If Sht.Visible Then
            Debug.Print ShtIds(i)
            If strSheetIds = "" Then
                strSheetIds = ShtIds(i)
            Else
                strSheetIds = strSheetIds & ";" & ShtIds(i)
            End If
        End If
    Next
    tmpArr = Split(strSheetIds, ";")
    ReDim LongArr(UBound(tmpArr) + 1)
    For x = LBound(tmpArr) To UBound(tmpArr)
        LongArr(x + 1) = CLng(tmpArr(x))
    Next
    If (UBound(LongArr) = 0) Then
        MsgBox "No sheet contained!"
    Else
        Debug.Print FullFileName
        RetCode = Prj.ExportPDF(FullFileName, LongArr, &H7)
        If (RetCode <> 1) Then MsgBox "Failed to create PDF file! Error Code: " & RetCode
    End If
    If Prj.LoadLevelConfiguration("Link auf eure .vis Datei") <> 1 Then Debug.Print "SetLevelFailed"
End Sub

------------------
E3 2020 SP3 Build 21.30
I9-12950HX 32GB Win10 Ent 22H2

Eplan ProPanel 2.9
Eplan 5.x
Eplan 5.1
Eplan 3.3
Elcad

Fusion360

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz