Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  Makro, drucken mit definiertem Drucker

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
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS
  
16. mav Innovationsforum 2024
Autor Thema:  Makro, drucken mit definiertem Drucker (8772 mal gelesen)
Press play on tape
Ehrenmitglied
Konstrukteur und sonst nix!


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

Beiträge: 1945
Registriert: 30.04.2007

Creo Elements Direct Modeling 17

erstellt am: 16. Feb. 2011 19:10    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,

da ich hier auf der Seite und im WWW nichts gefunden habe, habe ich angefangen selbst ein Makro zu basteln. Meine Kenntnisse sind aber eher gering. Ziel des Makros ist es, auf dem im Makro definierten Drucker die Blattgröße zu ermitteln und entsprechend die Druckeinstellungen vorzunehmen und zu drucken. Einsetzbar soll es in Skripten als Makroaufruf (mein Anwendungsfall, Skript aus PDM = Stapelplott) und als "one klick" Drucklösung in Zeichnungen sein (damit man z.B. versehentlich nicht ein A2 auf dem A3 Drucker ohne "scaletofit" druckt). Kurz es soll sich der Druck selbständig einstellen.

Aber aller Anfang ist schwer, deshalb geht es Stückweise vorwärts. Der erste Schritt ist abgeschlossen, der Drucker ist per Namen einstellbar, die Druckeigenschaften werden eingestellt wenn auch nur A4 100% im Moment.

Was ich im kompletten Vorhabe:

  • Zeichnung neu aufbauen wenn notwendig
  • Zeichnungsgröße ermitteln
  • die im Makro für diese größe vorgegebenen Druckeinstellungen vornehmen
  • auf dem im Makro festgelegten Drucker ausdrucken

Viele Dinge die ich dazu benötige finde ich hier im Forum in anderen Makro. Beispielsweise erhoffe ich mir beim ermitteln des Blattformats und einstellen Hilfe aus dem Makro Nr. 29(Blattformat tauschen) von Stefan. Aber da klemme ich mich jetzt nach und nach dahinter.

Kein Fred ohne eigentliche Frage, hier kommt sie:

Bei ModelDoc2.Pagesetup.Orientation, kann ich anstatt den String der da gerade jetzt steht auch einfach eine Zahl nämlich 1 oder zwei verwenden (in einem Beispielmakro gesehen), der String der jetzt gerade drinsteht kommt aus einer Makroaufzeichnung. Frage, woher bekomme ich diese information ich habe in der API Hilfe nichts gefunden, muß man die erraten?

Code:
Dim swApp As SldWorks.SldWorks
Dim Model As SldWorks.ModelDoc2
Dim ps As PageSetup
Dim swPrinter As String


Sub main()

Set swApp = CreateObject("SldWorks.Application")

Set Model = swApp.ActiveDoc

Set ps = Model.PageSetup


swPrinter = "OKI C5200n"     '"OKI C5200n"  '"\\server\Kyocera Mita KM-2030"

Dim pageArray(3) As Long
pageArray(0) = 1
pageArray(1) = 1
pageArray(2) = 3
pageArray(3) = 3

Dim vPageArray As Variant
vPageArray = pageArray

Dim copies As Long
copies = 1

Dim collate As Boolean
collate = True

ps.DrawingColor = swPageSetupDrawingColor_e.swPageSetup_BlackAndWhite
ps.ScaleToFit = False
ps.Scale2 = 100
ps.Orientation = swPageSetupOrientation_e.swPageSetupOrient_Portrait
ps.PrinterPaperSize = 9
ps.PrinterPaperSource = 261

Model.Extension.PrintOut2 vPageArray, copies, collate, swPrinter, ""

End Sub



Ich möchte das mit dem Makro selbst machen, also komplette Makros bitte mal noch nicht posten, andrerseits bin ich natürlich für jeden Tipp dankbar.

gruß Heiko

------------------
Umstieg auf 64bit OS, was meint ihr?
Plauderthread
Umfrage

[Diese Nachricht wurde von Press play on tape am 16. Feb. 2011 editiert.]

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

Ralf Tide
Moderator
-




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

Beiträge: 4978
Registriert: 06.08.2001

Sehr seltsame Dinge passiern <Klaus Lage - Toy Story>
.-)

erstellt am: 16. Feb. 2011 19:47    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 Press play on tape 10 Unities + Antwort hilfreich

Hallo Heiko,
ich bin mir nicht sicher aber im 3dcontentcentral gab es auch mal so was...

Aber wenn Du Dir sowieso PAC4SWX anschaffst, ist das Makro überflüssig 

Bis demnäx,
Ralf

------------------

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

Press play on tape
Ehrenmitglied
Konstrukteur und sonst nix!


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

Beiträge: 1945
Registriert: 30.04.2007

Creo Elements Direct Modeling 17

erstellt am: 16. Feb. 2011 20:02    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

An alle ich habe den Eingangstext oben nun fertig editiert (wurde unterbrochen)


 

Zitat:
Original erstellt von Ralf Tide:
Hallo Heiko,
ich bin mir nicht sicher aber im 3dcontentcentral gab es auch mal so was...

Aber wenn Du Dir sowieso PAC4SWX anschaffst, ist das Makro überflüssig   

Bis demnäx,
Ralf



Hallo Ralf,

dort gibts eines das alle geöffneten Zeichnungen druckt, allerdings auf dem aktuellen Drucker. Solche varianten gibts viele. Mein Problem ist daß der Drucker eingestellt werden muß und es eben nur diese eine Zeichnung drucken darf. Das mit dem PAC4SWX hat sich bei mir erledigt, Chef hatte es genehmigt aber es bringt mir nur bedingt etwas. Stattdessen bin ich in meinem PDM auf die Skripte gestoßen (Support konnte mir auf die Anfrage vor zwei Monaten aber nicht helfen, erst wenn mans selbst macht).

Mir geht es dabei um die Liste die gedruckt werden muß, die Zeichnungen liegen in verschiedenen Unterordnern und ich filtere die im PDM. Diese Liste konnte ich leider nicht ins PAC4SWX übernehmen weshalb das jetzt wegfällt, da ich das mit den Skrpten im PDM (kann Makros ausführen) lösen konnte.

Ich hoffe nur daß ich mich damit jetzt nicht übernehme und außerdem ist es interessant. Bei all den existierenden Makros hole ich mir auch die informationen die ich brauche, so ein Stück von dort und eines von dort 

gruß Heiko


------------------
Umstieg auf 64bit OS, was meint ihr?
Plauderthread
Umfrage

[Diese Nachricht wurde von Press play on tape am 16. Feb. 2011 editiert.]

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

Volkmar Grube
Mitglied
Konstrukteur


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

Beiträge: 120
Registriert: 31.01.2009

WIN11 64Bit, SWX 2022, Delphi 10

erstellt am: 16. Feb. 2011 23:40    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 Press play on tape 10 Unities + Antwort hilfreich

Hallo Heiko,
ich habe vor einiger Zeit für uns sowas ähnliches geschrieben.
Das Programm guckt in der Zeichnung nach den Zeichnungvorlagen der Zeichnung und dann in einer Datenbank nach dem Drucker, der dort der Vorlage der zu druckenden Seite zugeordnet ist und druckt dann alle für den automatischen Druck markierten Seiten.
Außerdem sind in der Datenbank die Druckereinstellungen (Orientierung, Blattgröße, Schacht usw.) gespeichert.
Es gibt da zwei Tabellen, eine zentrale und eine für die Arbeitsstation. Wenn einer Zeichnungsvorlage kein lokaler Drucker zugeordnet ist, wird die zentrale Zuordnung genommen.
Das Programm ist in Delphi geschrieben und nutzt Extended ADS-Datenbanken (DBF auf ADS). Der lokale ADS-Datenbankserver ist frei und bedingt Netzwerkfähig und es können wohl maximal 10 Nutzer gleichzeitig auf die Tabellen zugreifen.
Wenn Interesse da ist, könnte ich das am Wochenende mal aus der Umgebung lösen und senden.

------------------
Grüße aus Dresden
Volkmar Grube

Es gibt keine Probleme, es gibt nur Aufgaben.

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

HenryV
Mitglied
Konstrukteur, Engineering


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

Beiträge: 813
Registriert: 18.05.2005

SolidWorks 2022 x64 SP5.0
Dell Precision 5820
Intel Xeon W-2125 4x4GHz
NVIDIA Quadro P2000 5GB
32GB RAM
2x Dell U2412M, 24" TFT
Windows 10 Enterprise x64 22H2
Microsoft 365 E5
Microsoft Visual Studio Enterprise 2022

erstellt am: 17. Feb. 2011 08:02    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 Press play on tape 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Press play on tape:
Kein Fred ohne eigentliche Frage, hier kommt sie:

Bei ModelDoc2.Pagesetup.Orientation, kann ich anstatt den String der da gerade jetzt steht auch einfach eine Zahl nämlich 1 oder zwei verwenden (in einem Beispielmakro gesehen), der String der jetzt gerade drinsteht kommt aus einer Makroaufzeichnung.
Frage, woher bekomme ich diese information ich habe in der API Hilfe nichts gefunden, muß man die erraten?


Hallo Heiko

Jein, wenn du in der API-Hilfe zB. im "Orientation Property (IPageSetup)" bist, siehst du unten im Text "Return Value".
Da steht "Page orientation as defined in swPageSetupOrientation_e", wenn du dann auf den Link klickst, kommst du zu "swPageSetupOrientation_e Enumeration". Hier sind unter "Members" die Einzelnen aufgelistet. Um an die Zahl zu kommen, kann man einfach durchzählen:
1 für swPageSetupOrient_Portrait
2 für swPageSetupOrient_Landscape

Gruss Andreas


------------------
21 ist nur die halbe Antwort.

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

Press play on tape
Ehrenmitglied
Konstrukteur und sonst nix!


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

Beiträge: 1945
Registriert: 30.04.2007

Creo Elements Direct Modeling 17

erstellt am: 17. Feb. 2011 09:59    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,

ich habe gerade den bisherigen code genaue hinterfragt und auskommentiert. Dabei habe ich ein Problem besser gesagt eine Stelle die mir nicht ganz klar ist.

Code:
Dim pageArray(3) As Long
pageArray(0) = 1
pageArray(1) = 1
pageArray(2) = 3
pageArray(3) = 3

Dim vPageArray As Variant
vPageArray = pageArray
.
.
.
.
Model.Extension.PrintOut2 vPageArray, copies, collate, swPrinter, ""


pageArray hat hier vier variablen zweimal die eins und zweimal die 3. In der Api Hilfe steht bei pageArray daß 1,1,3,3 die Seite 1 und die Seite 3 druckt. Habe ich das richtig verstanden? Oder bin ich da völlig auf dem Holzweg. Ich weis es ist etwas viel Hilfe von mir hier verlangt, wenns zuviel wird bitte PM an mich mit beschwerde und ich werde es reduzieren.

An den restlichen Theman habe ich in der API schon weitergesucht und bei Isheet kann man die Blattgröße auslesen aber das dauert noch ein wenig. Erstmal alles richtig verstehen was man tut.

gruß Heiko

------------------
Umstieg auf 64bit OS, was meint ihr?
Plauderthread
Umfrage

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

nahe
Ehrenmitglied



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

Beiträge: 1747
Registriert: 18.01.2001

arbeite mit:
Dell Precision 7750
i7 2,6 GHz 6 Kerne
32GB RAM
512GB SSD
NVIDIA Quadro RTX 4000
------------------------
SWX-2020 SP5.0
EPDM
----------------
Windows 10
----------------
VB.net
VB
VBA
ein wenig Swift am Mac

erstellt am: 17. Feb. 2011 10: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 Press play on tape 10 Unities + Antwort hilfreich

Hallo Heiko

eigentlich ist es in der Hilfe schön erklärt.

PageArray contains any number of pairs of values, each pair indicating the start page and end page of a range of pages to print. For example, to print sheets 1, 2, 3, 6, and 7 of a drawing, the array should contain 4 elements; 1, 3, 6, 7. This means to print pages 1-3 and 6-7.  A range can be 5, 5, which means to print just page 5. If the array contains only one value, only that page is printed. If that one element is 0, then all sheets are printed.

Du brauchst immer ein Paar der Nummern.
Ein Paar = 1. Nummer Startseite 2. Nummer Endseite
die Seite(n) dazwischen inkl. Start- und Endseite werden gedruckt

so wie ich es verstehe
z.B.: die Zeichnung hat 5 Blätter
willst Du Blatt 1 bis 5 drucken
dann brauchst Du 2 Einträge
1,5

willst Du Blatt 2 und 4 bis 5 drucken
brauchst Du 4 Einträge
2,2,4,5

willst Du Blatt 1, 3 und 5 drucken
brauchst Du 6 Einträge
1,1,3,3,5,5

------------------
Grüße
Heinz

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

Press play on tape
Ehrenmitglied
Konstrukteur und sonst nix!


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

Beiträge: 1945
Registriert: 30.04.2007

Creo Elements Direct Modeling 17

erstellt am: 17. Feb. 2011 14:42    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

 
Zitat:
Original erstellt von nahe:
Hallo Heiko

eigentlich ist es in der Hilfe schön erklärt.


danke für die Antwort, das wurde schon erklärt und hab ich sogar gefunden   , den code habe ich aber aus einem API Beispiel (und war mir unklar) und die Sequenz wird nicht erklärt deshalb meine Theorie ob durch den code da tasächlich 1,1,3,3 herauskommt. Hab jetzt einfach mal ein Dokument mit 4 Blättern gedruckt und siehe da es funktioniert nur Blatt 1 und 3 wird gedruckt also muß da jetzt ne 0 rein   

ich ändere das jetzt also ab in:

Code:
'Dim pageArray(3) As Long 'nur die Seiten 1 und 3 werden gedruckt
'pageArray(0) = 1
'pageArray(1) = 1
'pageArray(2) = 3
'pageArray(3) = 3 'ergibt 1,1,3,3 für pageArray bei Printout2
'Dim vPageArray As Variant
'vPageArray = pageArray

Dim pageArray As Long
Dim vPageArray As Variant
vPageArray = pageArray
.
.
.
.
.
Model.Extension.PrintOut2 vPageArray, copies, collate, swPrinter, ""

'Printfilname das letzte Argument muß leer = "" sein damit es auf dem Drucker gedruckt wird ansonsten wird in Datei gedruckt


------------------
Umstieg auf 64bit OS, was meint ihr?
Plauderthread
Umfrage

[Diese Nachricht wurde von Press play on tape am 17. Feb. 2011 editiert.]

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

Press play on tape
Ehrenmitglied
Konstrukteur und sonst nix!


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

Beiträge: 1945
Registriert: 30.04.2007

Creo Elements Direct Modeling 17

erstellt am: 21. Feb. 2011 23:06    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

Naja, mein Makro nimmt Gestalt an

Code:
' ******************************************************************************
' C:\Dokumente und Einstellungen\Ppot\Lokale Einstellungen\Temp\swx2196\Macro1.swb - macro recorded on 02/15/11 by Press play on tape' ******************************************************************************
Option Explicit

'Dim swApp As SldWorks.SldWorks
'Dim Model As SldWorks.ModelDoc2
'Dim ps As PageSetup
'Dim swPrinter As String

'  Drawing Paper Sizes

Public Enum swDwgPaperSizes_e

    swDwgPaperAsize = 0

    swDwgPaperAsizeVertical = 1

    swDwgPaperBsize = 2

    swDwgPaperCsize = 3

    swDwgPaperDsize = 4

    swDwgPaperEsize = 5

    swDwgPaperA4size = 6

    swDwgPaperA4sizeVertical = 7

    swDwgPaperA3size = 8

    swDwgPaperA2size = 9

    swDwgPaperA1size = 10

    swDwgPaperA0size = 11

    swDwgPapersUserDefined = 12

End Enum


Sub main()

Dim swApp                  As SldWorks.SldWorks
Dim swModel                As SldWorks.ModelDoc2
Dim swDraw                  As SldWorks.DrawingDoc
Dim swSheet                As SldWorks.Sheet
Dim vSheetProps            As Variant
Dim swPs                    As PageSetup
Dim swPrinter              As String

Set swApp = Application.SldWorks
Set swDraw = swApp.ActiveDoc
Set swModel = swApp.ActiveDoc
Set swSheet = swDraw.GetCurrentSheet
Set swPs = swModel.PageSetup


swPrinter = "\\server\Kyocera Mita KM-2030"    '"OKI C5200n"  "\\server\Kyocera Mita KM-2030"  "Samsung ML-2010 Series"

' Get current sheet properties
vSheetProps = swSheet.GetProperties

'Dim pageArray(3) As Long 'nur die Seiten 1 und 3 werden gedruckt
'pageArray(0) = 1
'pageArray(1) = 1
'pageArray(2) = 3
'pageArray(3) = 3 'ergibt 1,1,3,3 für pageArray bei Printout2
'Dim vPageArray As Variant
'vPageArray = pageArray

Dim pageArray As Long
Dim vPageArray As Variant
pageArray = 0
vPageArray = pageArray

Dim copies As Long
copies = 1 'Anzahl der Ausdrucke

Dim collate As Boolean
collate = True 'True = Seiten werden der Reihe nach ausgedruckt wenn copies >1 ist also 1,2,3... dann wieder 1,2,3...
              'False = Seiten werden mehrfach gedruckt wenn copies >1 ist also 2x Seite 1 dann 2x Seite 2 .....
              'collate= kollationieren = seitenweises zusamentragen = sortiert ;-)
             
swPs.DrawingColor = swPageSetupDrawingColor_e.swPageSetup_BlackAndWhite 'Druckfarbe hier s/w
swPs.ScaleToFit = False 'Maßstab an Papier anpassen, False/True
swPs.Scale2 = 100 'Maßstab in Prozent 100% = 1:1
swPs.Orientation = swPageSetupOrientation_e.swPageSetupOrient_Portrait 'Querformat oder Hochformat
swPs.PrinterPaperSize = 9 'Drucker abhängiger Wert = von Drucker zu Drucker unterschiedlich hier 9 = A4 (Blattgröße des Druckers)
swPs.PrinterPaperSource = 261 'Drucker abhängiger Wert = von Drucker zu Drucker unterschiedlich hier 261 = Auto (Papierschacht)

Select Case vSheetProps(0)

Case 7
Debug.Print "A4 hoch"

Case 8
Debug.Print "A3"

Case 9 To 11
Debug.Print "A2; A1 und A0"

Case Else
Debug.Print "etwas nicht definiertes"

End Select

swModel.Extension.PrintOut2 vPageArray, copies, collate, swPrinter, "" 'Printfilname das letzte Argument muß leer = "" sein damit es auf dem Drucker gedruckt wird ansonsten wird in Datei gedruckt

' Current sheet properties

    Debug.Print "Name = " + swSheet.GetName

    Debug.Print "  TemplateName              = " & swSheet.GetTemplateName

    Debug.Print "  PaperSize                = " & vSheetProps(0)

    Debug.Print "  TemplateIn                = " & vSheetProps(1)

    Debug.Print "  Scale1                    = " & vSheetProps(2)

    Debug.Print "  scale2                    = " & vSheetProps(3)

    Debug.Print "  FirstAngle                = " & vSheetProps(4)

    Debug.Print "  Width                    = " & vSheetProps(5)

    Debug.Print "  Height                    = " & vSheetProps(6)

End Sub


Im Direktfenster sieht man schon daß es klappen sollte. Ich muß jetzt noch die Pagesetup in die Case Anweisungen stopfen dann sollte es gehen, hoff ich. Ich habe viel dazu gelernt und eigentlich wollte ich die Blattgröße nicht über die GetProperties sondern nur über GetSize von ISheet, aber das habe ich absolut nicht hinbekommen, da habe ich irgendetwas nicht verstanden, aber so geht es auch. Allerdings muß ich auch gestehen daß ich in der API das GetProperties Example nutzen konnte

Es fehlt jetzt noch der ForceRebuild die Case Anweisungen fertig machen und aufräumen. Dann habe ich endlich einen integrierten Stapelplot und ein Druckmakro auf Knopfdruck.

Für Kritik und Anregungen bin ich dankbar, wenngleich es auch sehr schwer ist sich dieses chaos durchzuwursteln.

Das ganze zeigt aber auch wieviel mühe es macht so ein kleines Makro zu erstellen wenn auch Profis so etwas sicher recht zügig hinbekommen (ich darf nicht verraten wieviel Stunden ich da jetzt Bastle, ist aber mein Freizeitvergnügen, immer wieder ein bischen Zeit)

gruß Heiko

------------------
Umstieg auf 64bit OS, was meint ihr?
Plauderthread
Umfrage

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

constructeur de machines
Mitglied
Konstrukteur


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

Beiträge: 13
Registriert: 14.11.2008

SolidWorks 2008
PDMWorks Enterprise

erstellt am: 22. Feb. 2011 12:00    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 Press play on tape 10 Unities + Antwort hilfreich

Hallo Leute,

zum Drucken mit ausgewähltem Drucker/Format gibt es was Fertiges. In einer IniDatei kann man definieren welches Format auf welchen Drucker soll. Es besteht auch die Möglichkeit das Programm in unterschiedliche Ordner zu speichern und jedem Ordner eine eigene IniDatei zu geben. Dann kann man z.B. 1:1 drucken und automatisch Laser oder Plotter auswählen, oder für die Werkstatt alles 1 Format kleiner auf den geeigneten Drucker/Plotter schicken oder als Übersicht jedes Format auf dem A3 Laser ausgeben. Nennt sich PrintMan und kann unter http://www.umct.de/  bei Download herunter geladen werden. Letztes Update ist vom 14.11.2010, es lebt also noch.

Ist halt eine Exe und kein Makro und druckt nur die aktuell geöffnete Zeichnung, aber vieleicht hilft es weiter. Programm und Autor sind auch hier im Forum genannt. Der kann da sicher was beisteuern.

Gruß

cdm

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

Press play on tape
Ehrenmitglied
Konstrukteur und sonst nix!


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

Beiträge: 1945
Registriert: 30.04.2007

Creo Elements Direct Modeling 17

erstellt am: 22. Feb. 2011 23:41    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


Druckmakro.swp.txt

 
Hallo,

mein Makro ist nun fertig. Wenn im Makro der Drucker eingetragen wird und einmalig die Seiteneinrichtung vorgenommen wird liest das Makro die Seitengröße aus und wählt passend die Druckeinstellungen. Man kann also ohne die Seiteneinstellungen zu prüfen drucken.

Wie oebn schon erwähnt habe ich es in der Hauptsache gemacht um in einem Skript (PDM) zu nutzen und dadurch die Möglichkeit eines Stapelplotts aus einer Listeransicht heraus. Aber auch die ein klick Drucklösung ist sehr reizvoll muß man nämlich nicht immer schauen ob man gerade auf A3 oder A4 gestellt hat.

Vorraussetzung ist daß eine Zeichnung gelöffnet ist. Ein Modellneuaufbau wird nicht gemacht, es wird nicht geprüft ob eine Zeichnung geöffnet ist oder sonst irgeneine Prüfung vorgenommen, alles reiner Ablauf. Zielgruppe sind Laserdrucker Drucker die ab und zu A3 ausdrucken und die Druckereinstellungen immer mal wieder ändern müssen.

Ein wirklich übertriebn kommentiertes Makro ist im Anhang, es ist wirklich sehr viel kommentiert so daß es sich doch jeder anpassen können sollte.

Es gibt noch einige andere Druckmakros im Netz Gratis zu finden z.B. den Printman auf der Makromania oder dieses hier. Aber eines in dieser Art habe ich nicht gefunden was mich veranlasst hat mich ausnahmsweise mal selbst daran zu versuchen.

Hier das Makro, der Anhang ist ausführlich kommentiert und nebenbei bemerkt mit sehr schlechter englischer Grammatik.

Code:

Option Explicit

'Drawing Paper Sizes

Public Enum swDwgPaperSizes_e

    swDwgPaperAsize = 0
    swDwgPaperAsizeVertical = 1
    swDwgPaperBsize = 2
    swDwgPaperCsize = 3
    swDwgPaperDsize = 4
    swDwgPaperEsize = 5
    swDwgPaperA4size = 6
    swDwgPaperA4sizeVertical = 7
    swDwgPaperA3size = 8
    swDwgPaperA2size = 9
    swDwgPaperA1size = 10
    swDwgPaperA0size = 11
    swDwgPapersUserDefined = 12

End Enum


Sub main()

Dim swApp                   As SldWorks.SldWorks
Dim swModel                 As SldWorks.ModelDoc2
Dim swDraw                  As SldWorks.DrawingDoc
Dim swSheet                 As SldWorks.Sheet
Dim swPs                    As PageSetup
Dim vSheetProps             As Variant
Dim swPrinter               As String

Set swApp = Application.SldWorks
Set swDraw = swApp.ActiveDoc
Set swModel = swApp.ActiveDoc
Set swSheet = swDraw.GetCurrentSheet
Set swPs = swModel.PageSetup

Dim pageArray As Long
Dim vPageArray As Variant
pageArray = 0
vPageArray = pageArray
Dim copies As Long
copies = 1 'Anzahl der Ausdrucke

Dim collate As Boolean
collate = True 

vSheetProps = swSheet.GetProperties
Select Case vSheetProps(0)

Case 7 

    swPs.DrawingColor = 3   'Farben in Zeichnungen, auto = 1 Farb/Grau = 2 s/w = 3
    swPs.ScaleToFit = False 'Scale to Fit, False/True
    swPs.Scale2 = 100   'Scale value in percent
    swPs.Orientation = 1    'Orientation Portrait = 1 Landscape = 2
    swPs.HighQuality = False 'High Quality, False/True
    swPs.PrinterPaperSize = 9 'von Drucker abhängig 
    swPs.PrinterPaperSource = 261 'von Drucker abhängig
  
    swPrinter = "\\server\Kyocera Mita KM-2030" 'Drucker
   
    swModel.Extension.PrintOut2 vPageArray, copies, collate, swPrinter, ""

Case 8
   
    swPs.DrawingColor = 3
    swPs.ScaleToFit = False
    swPs.Scale2 = 100
    swPs.Orientation = 2
    swPs.HighQuality = False
    swPs.PrinterPaperSize = 10
    swPs.PrinterPaperSource = 261
    swPrinter = "\\server\Kyocera Mita KM-2030"
    swModel.Extension.PrintOut2 vPageArray, copies, collate, swPrinter, ""
   
Case 9 To 11
   
    swPs.DrawingColor = 3
    swPs.ScaleToFit = True
    'swPs.Scale2 = 100
    swPs.Orientation = 2
    swPs.HighQuality = False
    swPs.PrinterPaperSize = 10
    swPs.PrinterPaperSource = 261
    swPrinter = "\\server\Kyocera Mita KM-2030"
    swModel.Extension.PrintOut2 vPageArray, copies, collate, swPrinter, ""

Case Else

    MsgBox "Sheetsize not defined, print by menu or edit macro"
   
End Select


End Sub


gruß Heiko

------------------
Umstieg auf 64bit OS, was meint ihr?
Plauderthread
Umfrage

[Diese Nachricht wurde von Press play on tape am 22. Feb. 2011 editiert.]

[Diese Nachricht wurde von Press play on tape am 22. Feb. 2011 editiert.]

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

Olls Lai Lolli
Mitglied
Konstrukteur


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

Beiträge: 366
Registriert: 07.05.2009

MS Windows 10 Prof.
Intel Xeon E5-1630 v 3 3.7 GHz
32 GB Ram
Nvidia Quadro M4000
SWX 2019 x64 SP 5
PDM Enterprise 2019 SP 3

erstellt am: 08. Mrz. 2011 19:05    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 Press play on tape 10 Unities + Antwort hilfreich

Hallo Heiko,

vielen Dank für dein ausführlich kommentiertes Makro.

Ich hab gerade mit der Hilfe deiner Hinweise versucht, das Makro auf meine Umgebung anzupassen. Das ermitteln der Nummern für Papierquelle und Papiergröße beim Drucker hat auch gleich geklappt.

Wo ich aber gewaltig hänge ist gleich am Anfang, dort wo die Größe der Zeichnung ermittelt wird.

Ich hab mir die Stelle wie folgt angepasst:

Code:
Public Enum swDwgPaperSizes_e

    swDwgPaperA0size = 0
   
    swDwgPaperA1size = 1
   
    swDwgPaperA2size = 2
   
    swDwgPaperA3size = 3

    swDwgPaperA4size = 4

    swDwgPaperA4sizeVertical = 5

    swDwgPapersUserDefined = 6

End Enum


Die Papierformate A-E kommen bei mir nicht vor deswegen habe ich sie raus genommen.

Wenn ich jetzt das Makro starte kommt immer die Meldung für nicht definiertes Blattformat.

Kannst du mir bitte den Bereich in dem das Blattformat ermittelt wird, noch etwas ausführlicher erklären?

Gruß OLL

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

Press play on tape
Ehrenmitglied
Konstrukteur und sonst nix!


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

Beiträge: 1945
Registriert: 30.04.2007

Creo Elements Direct Modeling 17

erstellt am: 08. Mrz. 2011 22:06    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 Oll,

zunächst mal freut es mich daß sich noch jemand für so ein Makro interessiert. Erstaunlicherweise hat sich das bei mir im Einsatz bisher bewährt. Dann hast Du einen Gewaltigen Fehler gemacht. Die Zahlen beim Enum darfst Du nicht verändern, vielmehr ist es in diesem Fall eher ein Nachschlagewerk zum nachschauen für Dich welche Zahl ein DIN A4 Format hat. die Werte kommen so aus SolidWorks (habs gerade extra nochmal getestet was passiert wenn ich es ändere) die sind dort so hinterlegt. Also auch wenn Du keine amerikanischen Formate verwendest bleiben die zahlen für A4 hoch z.B. die 7.

Was mit diesen Zahlen passiert steht in den Case Anweisungen

Code:

vSheetProps = swSheet.GetProperties

Select Case vSheetProps(0)


die erste Zeile holt ein ganzes Bündel an Informationen über das Zeichnungsblatt unter anderem die Blattgröße und gibt sie der Variablen vSheetprops. Die zweite Zeile Select Case vSheetprops (0) sagt wähle einen Fall aus und zwar über den Wert der in vSheetprops bei (0) steht, hier stehen diese im Enum gezeigten Zahlen.


Im folgenden Ausschnitt des Codes steht dann was in welchem Fall passiert. In meinem Beispiel sage ich in Case 7 (wenn die 7 wird aus vSheetprops (0)) ausgelesen wird, wird der Druckmaßstab auf 100% gesetzt (beachten daß dabei Scale to fit = fals stehen muß), auf s/w Druck umgestellt und Orientierung auf Hochformat gestellt. In Case 8 steht dasselbe fürs DIN A3 Format und im Bereich Case 9 To 11 werden die Formate A2 bis A0 mit auf Blattformat anpassen auf Din A3 gedruckt. Wenn Du also hier einen Plotter ansprechen willst müsstest Du hier die einzelnen Formate trennen und die Fälle (Case) 9,10 und 11 getrennt behandeln. Das Case else heißt einfach alles was nicht behandelt wird bekommt die Message Box daß es nicht definiert ist, deshalb kommt diese Meldung bei Dir.

Code:
Case 7  'die 7 steht für den Wert im Enum also Fall 7 = A4 hoch

    swPs.DrawingColor = 3  'Farben in Zeichnungen, auto = 1 Farb/Grau = 2 s/w = 3
    swPs.ScaleToFit = False 'Scale to Fit, False/True
    swPs.Scale2 = 100  'Scale value in percent
    swPs.Orientation = 1    'Orientation Portrait = 1 Landscape = 2
    swPs.HighQuality = False 'High Quality, False/True
    swPs.PrinterPaperSize = 9 'von Drucker abhängig 
    swPs.PrinterPaperSource = 261 'von Drucker abhängig
 
    swPrinter = "\\server\Kyocera Mita KM-2030" 'Drucker
   
    swModel.Extension.PrintOut2 vPageArray, copies, collate, swPrinter, ""

Case 8  'Fall Nr. 8 = A3

    swPs.DrawingColor = 3
    swPs.ScaleToFit = False
    swPs.Scale2 = 100
    swPs.Orientation = 2
    swPs.HighQuality = False
    swPs.PrinterPaperSize = 10
    swPs.PrinterPaperSource = 261
    swPrinter = "\\server\Kyocera Mita KM-2030"
    swModel.Extension.PrintOut2 vPageArray, copies, collate, swPrinter, ""
   
Case 9 To 11  'bedeutet die Fälle 9 bis 11 = A2, A1 und A0
 
    swPs.DrawingColor = 3
    swPs.ScaleToFit = True
    'swPs.Scale2 = 100
    swPs.Orientation = 2
    swPs.HighQuality = False
    swPs.PrinterPaperSize = 10
    swPs.PrinterPaperSource = 261
    swPrinter = "\\server\Kyocera Mita KM-2030"
    swModel.Extension.PrintOut2 vPageArray, copies, collate, swPrinter, ""

Case Else

    MsgBox "Sheetsize not defined, print by menu or edit macro"
   
End Select


Ich hoffe meine Erklärungen helfen Dir etwas weiter. Theoretisch könnte man folglich das Public Enum am Anfang einfach weglassen da die deklarationen aus SolidWorks kommen.

gruß Heiko

------------------
Umstieg auf 64bit OS, was meint ihr?
Plauderthread
Umfrage

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

Olls Lai Lolli
Mitglied
Konstrukteur


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

Beiträge: 366
Registriert: 07.05.2009

MS Windows 10 Prof.
Intel Xeon E5-1630 v 3 3.7 GHz
32 GB Ram
Nvidia Quadro M4000
SWX 2019 x64 SP 5
PDM Enterprise 2019 SP 3

erstellt am: 09. Mrz. 2011 07:36    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 Press play on tape 10 Unities + Antwort hilfreich

Hallo Heiko,

sowas hab ich schon vermutet, mir ist nämlich aufgefallen, dass die Nummerierung genau identisch ist mit der Reihenfolge der Auflistung wie die Blattvorlagen aufgeführt werden.

Jetzt hab ich den Salat. Die Zeichnungen die ich drucken will sind selbst definierte Blattformate :-( Und es wird nicht bei diesen bis jetzt  existierenden Vorlagen bleiben, da kommen noch weitere von den Kunden dazu.

Ich hatte mir so ein Makro schonmal für eine andere CAD Software programmiert, da bin ich einen anderen Weg gegangen.
Zur Ermittlung der Blattgröße habe ich die Blattabmessungen ausgelesen, dann verglichen x und y um fest zu stellen ob quer oder hoch Format und dann anhand der Längen die Blattformate beim Drucker eingestellt.

Komm ich bei SWXSolidWorks Balttformat unabhängig an die Abmessungen ran?

Gruß OLL

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

HenryV
Mitglied
Konstrukteur, Engineering


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

Beiträge: 813
Registriert: 18.05.2005

SolidWorks 2022 x64 SP5.0
Dell Precision 5820
Intel Xeon W-2125 4x4GHz
NVIDIA Quadro P2000 5GB
32GB RAM
2x Dell U2412M, 24" TFT
Windows 10 Enterprise x64 22H2
Microsoft 365 E5
Microsoft Visual Studio Enterprise 2022

erstellt am: 09. Mrz. 2011 08:00    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 Press play on tape 10 Unities + Antwort hilfreich

Hallo OLL

Ja kommst du.
Mit der Zeile

Code:
' Get current sheet properties
vSheetProps = swSheet.GetProperties
,welche du schon hast, bekommst du einen Array zurück, welcher folgenen Inhalt hat

    paperSize = Paper size. This value is a long packed into a double and is represented by the swDwgPaperSizes_e enumeration.
    templateIn = Template index. This value is a long packed into a double and is represented by the swDwgTemplates_e enumeration.
    scale1 = Scale numerator.
    scale2 = Scale denominator.
    firstAngle = Value is a boolean packed into a double and returns True if the sheet is using first angle projection and false if not.
    width = Paper width.
    height = Paper height.

Also nur

Code:
Width = vSheetProps(5)
Height = vSheetProps(6)
und du hast Länge und Breite

Gruss Andreas

------------------
21 ist nur die halbe Antwort.

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

Press play on tape
Ehrenmitglied
Konstrukteur und sonst nix!


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

Beiträge: 1945
Registriert: 30.04.2007

Creo Elements Direct Modeling 17

erstellt am: 09. Mrz. 2011 08:05    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,

die Blattabmessungen werden bei diesem Makro tatsächlich schon geholt. Ich bin ja den Weg über getsheetprperties gegangen. Da stehen einige Informationen drin. Im ausführlichen Makro (Dateianhang) stehen ganz unten einige Debug Prints´von vSheetProps. vSheetProps ist ein variant und hat bei (0) die Blattgröße also DIN A4h oder A3. Alles was sich nicht in die amerikanischen oder deutschen größen einsortieren lässt gibt die Nr. 12 aus. Sollten Deine benutzerdefinierten Blattformate also immer quer sein würde es genügen ein Case 12 anzulegen oder den Case 9 To 11 erweitern auf 9 To 12. Bei vSheetProps wird auch die Blatthöhe ausgegeben und die Breite, die Breite wäre also vSheetProps (5) und die Höhe vSheetProps (6). Wenn Du das Makro im Makroeditor laufen lässt und das Direktfenster einschaltest kannst Du sehen was vSheetProps alles enthält müsstest eben damit weiterarbeiten.

Wenn Du Anhaltspunkte brauchst wie man das mit den größen lösen könnte, könntest Du etwas beim Blattformat tauschen Makro von Stefan Berlitz abkupfern soweit mir in Erinnerung ist er den Weg über die Größen gegangen weis ich aber nicht mehr genau. Das Makro findest Du in der Makromania unter der Nummer 29 bei Stefans Makros.

Aber wenn Deine selbstdefinierten größen eh alle quer sind kannst ja einfach mal den Fall 12 versuchen. Solange Du angepasst also auf A3 oder so drucken willst, alles andere geht dann natürlich nicht mehr weils ja dann Unterschiede gibt.

gruß Heiko

------------------
Umstieg auf 64bit OS, was meint ihr?
Plauderthread
Umfrage

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

StefanBerlitz
Guter-Geist-Moderator
IT Admin (CAx)



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

Beiträge: 8756
Registriert: 02.03.2000

SunZu sagt:
Analysiere die Vorteile, die
du aus meinem Ratschlag ziehst.
Dann gliedere deine Kräfte
entsprechend und mache dir
außergewöhnliche Taktiken zunutze.

erstellt am: 09. Mrz. 2011 08:11    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 Press play on tape 10 Unities + Antwort hilfreich

Hallo OLL,

benutzerdefinierte Blattformate liefern dir als "Blattgröße" immer swDwgPapersUserDefined = 12
zurück (BTW, du darfst doch nicht einfach Konstanten verändern und dann hoffen, das der Rest noch funktioniert  )

D.h. um das auf deine Blattformate anzupassen gehst du am besten nicht über die vSheetProps(0)
von Sheet::GetProperties, das gibt dier ja die "Blattgröße" zurück, sondern gehst über die vSheetProps(5) und vSheetProps(6), in der die Blattabmessungen stehen und orientierst dich daran. Das mach ich im PAC4SWX auch so, ist sicherer, da es ja durchaus auch sein kann, dass jemand ein benutezrdefinertes Blattformat hat, was zufällig  genau so groß ist wie ein A3 quer usw. Früher hing das z.B. damit zusammen, ob du die original Blattformatnamen wie temp_a3.slddrt benutzt hast oder einen eigenen Namen ...

Also du unterscheidest dann am besten ungefähr in dem Stil:

Code:
If vSheetProps(5) = 0.297 AND vSheetProps(6) = 0.210 then
  ' hier die Werte für A4 quer eintragen
  ...
else If vSheetProps(5) = 1.500 AND vSheetProps(6) = 0.594 then
  ' hier das Spezielformat 1500 x 594 mm
  ...

Ich hoffe du verstehst, wie das gemeint ist

Ciao,
Stefan

------------------
Inoffizielle deutsche SolidWorks Hilfeseite    http://solidworks.cad.de
Stefans SolidWorks Blog

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

Press play on tape
Ehrenmitglied
Konstrukteur und sonst nix!


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

Beiträge: 1945
Registriert: 30.04.2007

Creo Elements Direct Modeling 17

erstellt am: 09. Mrz. 2011 09:14    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,

nur nochmal daß wir uns richtig verstehen, die Blattformatgrößen Deiner Kunden weichen von den üblichen Formaten DIN A4, A3 usw. in der größe ab? Oder unterscheiden Sie sich deshalb nur vom Original weil sie anders aussehen?

Ich frage deshalb weil GetProperties einmal die Vorlage ausliest und einmal die Blattgröße. Die Vorlage ist ja eigentlich bei jedem 12 also benutzerdefiniert während die Blattgröße meist die DIN Formate haben.

Ich meine ich ja schon von Sonderformaten gehört bzw. welche gesehen aber das war wirklich mal exotisch und in der Regel verlängerte DIN Formate z.B. Höhe A1 aber 2 Meter lang.

gruß Heiko

------------------
Umstieg auf 64bit OS, was meint ihr?
Plauderthread
Umfrage

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

Olls Lai Lolli
Mitglied
Konstrukteur


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

Beiträge: 366
Registriert: 07.05.2009

MS Windows 10 Prof.
Intel Xeon E5-1630 v 3 3.7 GHz
32 GB Ram
Nvidia Quadro M4000
SWX 2019 x64 SP 5
PDM Enterprise 2019 SP 3

erstellt am: 09. Mrz. 2011 12:48    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 Press play on tape 10 Unities + Antwort hilfreich

Mahlzeit,

erst mal vielen Dank an alle für die gewaltige Unterstützung  

 

Zitat:
Original erstellt von Press play on tape:
....die Blattformatgrößen Deiner Kunden weichen von den üblichen Formaten DIN A4, A3 usw. in der größe ab?

Nein, bisher noch nicht, auser ab und zu ein paar oversized Blätter wie du es unten beschrieben hast.
 
Zitat:
Oder unterscheiden Sie sich deshalb nur vom Original weil sie anders aussehen?
Genau, es sind halt abweichende Zeichnungsrahmen/Schriftfelder.


 

Zitat:
Original erstellt von Stefan Berlitz:
....Also du unterscheidest dann am besten ungefähr in dem Stil:
Danke für den Ansatz, ich werde es so mal probieren.

 

Zitat:
....Ich hoffe du verstehst, wie das gemeint ist
Ich hoff mal, dass ich es verstanden habe, ansonsten melde ich mich ganz schnell wieder  


[Diese Nachricht wurde von Olls Lai Lolli am 09. Mrz. 2011 editiert.]

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

Olls Lai Lolli
Mitglied
Konstrukteur


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

Beiträge: 366
Registriert: 07.05.2009

MS Windows 10 Prof.
Intel Xeon E5-1630 v 3 3.7 GHz
32 GB Ram
Nvidia Quadro M4000
SWX 2019 x64 SP 5
PDM Enterprise 2019 SP 3

erstellt am: 15. Mrz. 2011 21: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 Press play on tape 10 Unities + Antwort hilfreich

Vergesst was ich hier geschrieben hab, war Essig.

Wer lesen kann ist klar im Vorteil :-)

[Diese Nachricht wurde von Olls Lai Lolli am 15. Mrz. 2011 editiert.]

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

Thisoft
Mitglied
Konstrukteur


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

Beiträge: 178
Registriert: 10.04.2010

erstellt am: 24. Mai. 2011 08:22    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 Press play on tape 10 Unities + Antwort hilfreich

Hallo Heiko,

ich bin auch gerade dabei, Dein Makro auf meine Bedürfnisse anzupassen. Dein Ansatz ist sehr gut und trifft im Wesentlichen auch genau meine Bedürfnisse. Eine Frage habe ich allerdings bei der mir auch die API-Hilfe nicht weitergeholfen hat. Und zwar ist das die Sache mit dem PageArray. Mir ist klar, wie ich bestimmte oder eben alle Blätter ansprechen kann - aber wie kann ich dort einstellen, dass das gerade aktive Blatt und nur das! gedruckt wird? Ich kann zwar den Blattnamen ermitteln, aber wie setze ich den in eine Nummer für das PageArray um?

Danke und Gruß
Thilo

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

HenryV
Mitglied
Konstrukteur, Engineering


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

Beiträge: 813
Registriert: 18.05.2005

SolidWorks 2022 x64 SP5.0
Dell Precision 5820
Intel Xeon W-2125 4x4GHz
NVIDIA Quadro P2000 5GB
32GB RAM
2x Dell U2412M, 24" TFT
Windows 10 Enterprise x64 22H2
Microsoft 365 E5
Microsoft Visual Studio Enterprise 2022

erstellt am: 24. Mai. 2011 08:41    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 Press play on tape 10 Unities + Antwort hilfreich

Hallo Thilo

Stefan hat da mal ein Code-Snippet erstellt.
http://ww3.cad.de/foren/ubb/Forum2/HTML/003082.shtml#000004

Gruss Andreas

------------------
21 ist nur die halbe Antwort.

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

Thisoft
Mitglied
Konstrukteur


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

Beiträge: 178
Registriert: 10.04.2010

erstellt am: 24. Mai. 2011 09: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 Press play on tape 10 Unities + Antwort hilfreich

Ah Danke,

das hilft mir weiter. Ist ja eigentlich simpel, nur hatte ich eben nicht soweit "um die Ecke" gedacht sondern nach einer "direkteren" Methode gesucht .

Gruß Thilo

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

Press play on tape
Ehrenmitglied
Konstrukteur und sonst nix!


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

Beiträge: 1945
Registriert: 30.04.2007

Creo Elements Direct Modeling 17

erstellt am: 19. Jan. 2012 09: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


Benutz_Blattfor.jpg

 
Hallo,

bei mir kam per Mail eine Frage auf warum manche Zeichnungen nicht gedruckt werden. Wenn da die Meldung kommt "sheet size not defined...." heißt das, dass es ein benutzerdefiniertes Blattformat ist. Dieses kann durchaus auch die üblichen DIN Abmessungen haben, wird aber mit diesem einfachen Makro nicht gedruckt, dazu müsste man die Blattgröße (nicht das Format) auslesen und vergleichen. Im Anhang ein Bild wo kein Haken stehen darf.

gruß Heiko

------------------
CAD.de Treffen Stuttgart nicht nur Pro/E!!!!

64bit sind kein Thema mehr ;-)

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

GrünesTelefon
Mitglied
Konstrukteur


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

Beiträge: 156
Registriert: 14.06.2005

SW2016 SP5.0 auf W7 64bit

erstellt am: 19. Jan. 2012 12:03    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 Press play on tape 10 Unities + Antwort hilfreich

... würde ja im Umkehrschluss bedeuten, dass alles was da kein Häkchen hat, eigentlich auch eines der vordefinierten Blattformate besitzen sollte. Habe aber immernoch das Problem dass bei einer ganz bestimmten Vorlage (vom Kunden) das Makro nichts zuordnen kann. Ich glaub ich befrage dazu mal den Support.

Vielen Dank schonmal für deine Antwort!

------------------
MfG

-GrünesTelefon- 

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

Press play on tape
Ehrenmitglied
Konstrukteur und sonst nix!


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

Beiträge: 1945
Registriert: 30.04.2007

Creo Elements Direct Modeling 17

erstellt am: 19. Jan. 2012 14: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

 
Zitat:
Original erstellt von GrünesTelefon:
... würde ja im Umkehrschluss bedeuten, dass alles was da kein Häkchen hat, eigentlich auch eines der vordefinierten Blattformate besitzen sollte. Habe aber immernoch das Problem dass bei einer ganz bestimmten Vorlage (vom Kunden) das Makro nichts zuordnen kann. Ich glaub ich befrage dazu mal den Support.

Vielen Dank schonmal für deine Antwort!


meiner Ansicht nach ja! Wenn ich auch nicht der Makro Guru bin 

Besteht die Möglichkeit die Vorlage mal zu bekommen? Wenn nicht über Anhang evtl. per Mail?(über PM ausmachen)

gruß Heiko

Edit: Sorry, es gibt noch den Fall, dass es sich um die Amerikanischen Formate A-E handelt, wenn es eines dieser Formate ist, müsste man es im Makro entsprechen bei den case Anweisungen hinzufügen in der Art:

Code:
Case 7 

    swPs.DrawingColor = 3  'Farben in Zeichnungen, auto = 1 Farb/Grau = 2 s/w = 3
    swPs.ScaleToFit = False 'Scale to Fit, False/True
    swPs.Scale2 = 100  'Scale value in percent
    swPs.Orientation = 1    'Orientation Portrait = 1 Landscape = 2
    swPs.HighQuality = False 'High Quality, False/True
    swPs.PrinterPaperSize = 9 'von Drucker abhängig 
    swPs.PrinterPaperSource = 261 'von Drucker abhängig
 
    swPrinter = "\\server\Kyocera Mita KM-2030" 'Drucker
   
    swModel.Extension.PrintOut2 vPageArray, copies, collate, swPrinter, ""


entsprechend eingestellt hinzu fügen.

gruß Heiko

------------------
CAD.de Treffen Stuttgart nicht nur Pro/E!!!!

64bit sind kein Thema mehr ;-)

[Diese Nachricht wurde von Press play on tape am 19. Jan. 2012 editiert.]

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

Andi Beck
Ehrenmitglied V.I.P. h.c.
Konstrukteur



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

Beiträge: 2572
Registriert: 02.10.2006

Firma: SW 2023-4.0 + PDM Prof.
Windows 10 Pro 64bit, i9-11900
32 GbRAM, Quadro P2200
Home:
SW 2022-5.0
Passungstabelle von Heinz
Windows 11 Pro 64bit,
i7-12700K, 32 GbRAM,
GeForce GTX 1050Ti
Samsung C34H892, 3440x1440 Pixel

erstellt am: 19. Jan. 2012 18:56    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 Press play on tape 10 Unities + Antwort hilfreich

Hallo,
wobei folgendes gilt:

    swDwgPaperAsize = Case 0
    swDwgPaperAsizeVertical = Case 1
    swDwgPaperBsize = Case 2
    swDwgPaperCsize = Case 3
    swDwgPaperDsize = Case 4
    swDwgPaperEsize = Case 5
    swDwgPapersUserDefined = Case 12

Nur der vollständigkeit halber, falls sich jemand nicht die Mühe macht, den kompletten Thread nachzulesen.

Grüße, Andi 

------------------
Hast du kein Problem?
Such dir eins. ( Und löse es )

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

GrünesTelefon
Mitglied
Konstrukteur


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

Beiträge: 156
Registriert: 14.06.2005

SW2016 SP5.0 auf W7 64bit

erstellt am: 20. Jan. 2012 14:42    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 Press play on tape 10 Unities + Antwort hilfreich

Hallo zusammen! Habe nun mal um den Fehler einzugrenzen jedem Case einen anderen Text gegeben. Meine Standard-A1-Vorlage hat tatsächlich die 12.  Wenn ich mal Zeit hab, werde ich diese Vorlage wohl mal neu machen (aus der Standard-SWXSolidWorks-Vorlage und dem Inhalt vom Kunden).

------------------
MfG

-GrünesTelefon- 

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

Olls Lai Lolli
Mitglied
Konstrukteur


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

Beiträge: 366
Registriert: 07.05.2009

MS Windows 10 Prof.
Intel Xeon E5-1630 v 3 3.7 GHz
32 GB Ram
Nvidia Quadro M4000
SWX 2019 x64 SP 5
PDM Enterprise 2019 SP 3

erstellt am: 21. Jan. 2012 07: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 Nur für Press play on tape 10 Unities + Antwort hilfreich

 
Zitat:
Original erstellt von GrünesTelefon:
...Wenn ich mal Zeit hab, werde ich diese Vorlage wohl mal neu machen (aus der Standard-SWX-Vorlage und dem Inhalt vom Kunden)...

Braucht du nicht, probier mal die von mir modifizierte Variante dieses Makros.

[Diese Nachricht wurde von Olls Lai Lolli am 21. Jan. 2012 editiert.]

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

Press play on tape
Ehrenmitglied
Konstrukteur und sonst nix!


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

Beiträge: 1945
Registriert: 30.04.2007

Creo Elements Direct Modeling 17

erstellt am: 21. Jan. 2012 18:42    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

Zitat:
Original erstellt von Olls Lai Lolli:
 

Braucht du nicht, probier mal die von mir modifizierte Variante dieses Makros.

[Diese Nachricht wurde von Olls Lai Lolli am 21. Jan. 2012 editiert.]


Ja ist nicht so schlecht, es wird aber nur die Länge und die Breite miteinander verglichen und entsprechend dem längen-breiten Verhältnis auf quer oder längs gestellt und schlußendlich auf Din A4 bzw. Din A3 gedruckt(vermutl. A4, da ein A4 Format auf A3 nicht so gut kommt). Vorteil die Blattgröße spielt keine Rolle es ist also egal ob eines auf benutzerdefiniert steht. Allerdings hilft mir selbst diese modifikation nicht viel weiter da ich gerne meine Formate von A3-A0 auch auf A3 gedruckt haben will.

Jetzt könnte man natürlich sagen kein Problem, wir vergleichen die vsheetprops einfach mit entsprechenden größen und stellen entsprechend das Blattformat im Druckdialog um. In der Makromania ist das im Makro Blattformat tauschen von Stefan Berlitz auch als Beispiel vorhanden.

gruß Heiko

------------------
CAD.de Treffen Stuttgart nicht nur Pro/E!!!!

64bit sind kein Thema mehr ;-)

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

Olls Lai Lolli
Mitglied
Konstrukteur


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

Beiträge: 366
Registriert: 07.05.2009

MS Windows 10 Prof.
Intel Xeon E5-1630 v 3 3.7 GHz
32 GB Ram
Nvidia Quadro M4000
SWX 2019 x64 SP 5
PDM Enterprise 2019 SP 3

erstellt am: 21. Jan. 2012 21:10    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 Press play on tape 10 Unities + Antwort hilfreich

Hallo PPOT

die Lösung die du suchst wird in naher Zukunft auch von mir benötigt, ich zieh das Projekt vor und Versuch bis Mitte nächster Woche die Lösung einzustellen.

Gruß OLL

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)2024 CAD.de | Impressum | Datenschutz