Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  Dokument-Infos über API bei drw nur zur Ansicht

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
  
SolidWorks Kurs mit IHK-Zertifzierung , ein Kurs (bis zu 100% förderbar mit Bildungsgutschein)
Autor Thema:  Dokument-Infos über API bei drw nur zur Ansicht (992 mal gelesen)
MartinKirchmayer
Mitglied



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

Beiträge: 79
Registriert: 14.05.2002

erstellt am: 14. Mai. 2002 13:44    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 APIProgrammier- und Anwendungsschnittstelle (Application Programming Interface)-Programmierer,
ich verfolge nun dieses Forum schon einige Zeit und habe immer wieder hilfreiche Anregungen für SWXSolidWorks und auch ab und zu SmarTeam (unsere Systeme hier) gefunden.

Jetzt komme ich aber mit einem Problem nicht mehr weiter:
Ich möchte bei einer automatischen ps-Erstellung aus SWXSolidWorks die drw's nur zur Ansicht laden, aus Performance-Gründen. Nun muss ich aber (per VB) herausfinden, welches Format die Zeichnung hat, um die Druckereinstellungen entsprechend vorzunehmen. Ist dies irgendwie möglich?
Habe gerade nach Versuchen nur aus dem Sheet.GetProperties - Array die paper width und height rauslesen können, aber weder das benutzte Template noch die PaperSize.

Danke schon mal im Voraus,
MK

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

gismo
Mitglied
DriveWorks Support


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

Beiträge: 1047
Registriert: 05.03.2001

HP Z Book17 G5;
32GB Ram;
Quadro P4200
WIN10 Pro;
Alle SWX ;)

erstellt am: 14. Mai. 2002 14: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 MartinKirchmayer 10 Unities + Antwort hilfreich

Hallo Martin,
erstmal herzlich willkommen in unserem (spitzen) Forum!
doch nun zu Deiner Frage:
Ich hab ein Makro, das mir das Blattformat und den Masstab ausgibt. (auch hier aus dem Forum)
Hier der Code:
Code:

Dim swApp As Object
Dim DrawingDoc As Object
Dim Sheet As Object
Dim SheetProp As Variant
Dim Size As String
Dim Model As Object
Dim typ As Long


Sub main()

Set swApp = CreateObject("SldWorks.Application")
swApp.visible = True
Set Model = swApp.ActiveDoc
    If Model Is Nothing Then
        Call MsgBox("Kein SolidWorks Dokument geöffnet", vbOKOnly, "Information")
        Exit Sub
    End If
   
'typ = Model.gettype
'swApp.sendmsgtouser (typ)
If (Model.gettype <> 3) Then
    swApp.sendmsgtouser ("Das klappt nur bei 2D - Ableitungen")
    Exit Sub      ' Verlassen, wenn keine Drawing
End If


Set DrawingDoc = swApp.ActiveDoc
Set Sheet = DrawingDoc.GetCurrentSheet
SheetProp = Sheet.GetProperties
    Size = ""
    If SheetProp(0) = 7 Then Size = "DIN A4"
    If SheetProp(0) = 8 Then Size = "DIN A3"
    If SheetProp(0) = 9 Then Size = "DIN A2"
    If SheetProp(0) = 10 Then Size = "DIN A1"
    If SheetProp(0) = 11 Then Size = "DIN A0"
    If Size = "" Then Size = "keine Ahnung"

' 7 Doubles mit Eigenschaften:
' paperSize, templateIn, scale1, scale2, firstAngle, width, height
MsgBox ("Blattmaßstab ist " & SheetProp(2) & " : " & SheetProp(3) & Chr$(13) & "Blattformat: " & Size)

End Sub



Ich denke, wenn es das ist, was Du gesucht hast, kannst Du es sicher gut auf Deine Bedürfnisse anpassen.

------------------
Viele Grüße aus dem Schwarzwald
gismo

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

MartinKirchmayer
Mitglied



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

Beiträge: 79
Registriert: 14.05.2002

erstellt am: 14. Mai. 2002 14:09    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

Danke gismo, damit hab ich's schon probiert.
Das wichitge ist:
Das Dokument ist nur zur Ansicht geladen (also nur das Vorschaubild!!)
Und da geben aus den Sheetprops nur die letzten beiden Einträge was her (Höhe und Breite).
Die sheetprops kann ich sowieso nicht verwenden, da das VB-Derivat, das SmarTeam als Script-Sprache benutzt, keine Arrays als Resultat von Funktionen beschreiben kann.
Daher suche ich irgendeine andere Funktion, die mir das erledigt...

Gruß aus'm Franngland,
Martin

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: 14. Mai. 2002 14: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 MartinKirchmayer 10 Unities + Antwort hilfreich

Hallo Martin,

wenn du Zeichnungen nur View-Only lädst werden nur die Displaydaten benutzt und viele Werte sind nicht korrekt gesetzt (z.B. eben auch die Sheet.GetProperties).

Ich hatte ein ähnliches Problem letztes Jahr, hier die Originalantwort vom API support (hat sich so weit ich weiß auch nichts geändert)

Zitat:

> I open a document viewonly for plotting. I use Sheet.GetProperties to
> determine the sheet size, but if opened viewonly (with OpenDoc2)
> the sheetproperties(0) will ALWAYS have a value of 12 (userdefined)
> The values for the width and height are set correct.
>
> If opened not viewonly all values okay.
I would consider what you are seeing as intended behaviour rather than a
"bug".

The issue is that SW uses the display list when a file is opened view only.
This is the same as the SW viewer.  In view only mode, a lot of information
is just not loaded/resolved which is why it is a lot faster to load.  This
is by design.  You will notice that the RMB menu has a different set of
options in view only mode.

I have also found that various other values in Sheet::GetProperties are
incorrect when the drawing is loaded view only.  Sheet::GetTemplateName is
similarly incorrect.


Da die Höhe und Breite aber ja vorhanden sind kannst du selbst daraus das Format ermitteln ...

Aber mal ein ganz anderer Ansatz: wenn ihr doch schon SmarTeam habt, wieso holst du dir nicht die Info über die Blattgröße aus der Datenbank? Ich kenn zwar SmarTeam nicht, aber das kann sicher beim einchecken auch das Blattformat auslesen und irgendwo mit im Dokumentensatz abspeichern?!

Ciao,
Stefan

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

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

MartinKirchmayer
Mitglied



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

Beiträge: 79
Registriert: 14.05.2002

erstellt am: 14. Mai. 2002 14:26    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

@Stefan:
Danke für die Auskunft, hab's fast befürchtet....
Ja, inzwischen (mit neueren templates) geht auch genau diese Info an die SmarTeam-DB beim Einchecken. Aber alle Zeichnungen, die mit alten templates erstellt und schon geprüft sind, haben diese Eigenschaft noch nicht.
Und von diesen Zeichnungen muss manchmal noch nachträglich ein ps-file erstellt werden...

Muss ich mir irgendwie anders behelfen, externe Applikation evtl.

Danke für die Hilfe soweit,
Martin

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



Anzeige:Infos zum Werbeplatz >>

GeoVisual Civil Engineer CAD APP für 3D, Tiefbau, AEC - Architektur-, Ingenieur- und Bauwesen

Die benutzerfreundliche Softwarelösung zur Visualisierung von Infrastrukturplanungen

gismo
Mitglied
DriveWorks Support


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

Beiträge: 1047
Registriert: 05.03.2001

HP Z Book17 G5;
32GB Ram;
Quadro P4200
WIN10 Pro;
Alle SWX ;)

erstellt am: 14. Mai. 2002 15:29    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 MartinKirchmayer 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von MartinKirchmayer:
Das Dokument ist nur zur Ansicht geladen (also nur das Vorschaubild!!)


Sorry Martin, das kommt davon, wenn man den Beitrag nicht zweimal durchliest, bevor mann antwortet 
Aber wie immer hat Stefan eine kompetente Antwort bei der Hand! 


------------------
Viele Grüße aus dem Schwarzwald
gismo

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