| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| Auf dem Weg zur digitalen Auftragsmappe. , ein Anwenderbericht
|
Autor
|
Thema: PDF mit Datum erzeugen (iLogic) (1794 / mal gelesen)
|
SWxler Mitglied technischer zeichner
Beiträge: 117 Registriert: 11.11.2013 Win 7 SP1.0 / 64 bit / IV 2018
|
erstellt am: 04. Apr. 2016 19:13 <-- editieren / zitieren --> Unities abgeben:
Werte Gemeinde! Bin kein iLogic-Fachkundiger-- brauche eure werte Hilfe! Möchte mit einer iLogic-Regel aus einer IDW ( auch mehrere Blätter ) eine PDF erzeugen lassen, welche im gleichen Pfad mit dem IDW-Namen gespeichert wird erzeugen lassen....-das funkt soweit mit dem Code: path_and_name = ThisDoc.PathAndFileName(False) PDFAddIn = ThisApplication.ApplicationAddIns.ItemById("{0AC6FD96-2F4D-42CE-8BE0-8AEA580399E4}") oDocument = ThisApplication.ActiveDocument oContext = ThisApplication.TransientObjects.CreateTranslationContext oContext.Type = IOMechanismEnum.kFileBrowseIOMechanism oOptions = ThisApplication.TransientObjects.CreateNameValueMap oDataMedium = ThisApplication.TransientObjects.CreateDataMedium If PDFAddIn.HasSaveCopyAsOptions(oDataMedium, oContext, oOptions) Then oOptions.Value("All_Color_AS_Black") = 1 oOptions.Value("Remove_Line_Weights") = 1 oOptions.Value("Vector_Resolution") = 400 oOptions.Value("Sheet_Range") = Inventor.PrintRangeEnum.kPrintAllSheets End If oDataMedium.FileName = path_and_name & ".pdf" PDFAddIn.SaveCopyAs(oDocument, oContext, oOptions,oDataMedium) MessageBox.Show("PDF saved to: " & path_and_name, "PDF Saved", MessageBoxButtons.OK) NUN möchte ich dem PDF noch das aktuelle Datum als Extension mitgeben z.B. 04042016_FILENAME.PDF genau daran scheitere ich ;-( Wer ist so nett und kann mir unter die Arme greifen thxs a lot Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Canadabear Mitglied Konstrukteur
Beiträge: 921 Registriert: 30.06.2010 Inventor 2020 SolidWorks 2020
|
erstellt am: 04. Apr. 2016 21:11 <-- editieren / zitieren --> Unities abgeben: Nur für SWxler
Hallo, ich weis das es die Date Funktion in VBA existiert. vielleicht kannst du eine VBA Funktion programmieren die dir das gewuenschte Format des Datums an die iLogic-Rule liefert. Gruss Ray ------------------ Barbarus hic ego sum, quia non intellegor ulli! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
SWxler Mitglied technischer zeichner
Beiträge: 117 Registriert: 11.11.2013 Win 7 SP1.0 / 64 bit / IV 2018
|
erstellt am: 05. Apr. 2016 08:12 <-- editieren / zitieren --> Unities abgeben:
|
KraBBy Mitglied Maschinenbau-Ingenieur
Beiträge: 721 Registriert: 19.09.2007 Inventor Professional 2020 WinX
|
erstellt am: 05. Apr. 2016 09:11 <-- editieren / zitieren --> Unities abgeben: Nur für SWxler
Nur die Variable für Pfad und Dateiname selbst zusammensetzen... Der Befehl DateString liefert das Datum entsprechend der Systemeinstellungen, denke ich. Evtl. hilft das schon ein wenig weiter. (den restlichen Code habe ich nicht versucht) Code: path_and_name = ThisDoc.Path & "\" & DateString & "_" & ThisDoc.FileName(False)
Gruß KraBBy Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ruzy5624 Mitglied Konstruktionsleiter / staatl. gepr. Techniker
Beiträge: 280 Registriert: 01.07.2015 Product Design Suite 2018 Ultimate Visual Studio 2017 Windows 10 Pro Intel Xeon E3-1245 v5 @ 3,5GHz Nvidia Quadro M4000 8GB RAM 32GB 2x 24" Monitore FullHD SpaceMouse Pro
|
erstellt am: 05. Apr. 2016 09:18 <-- editieren / zitieren --> Unities abgeben: Nur für SWxler
Hi, füge oben als erstes die Zeile ein
Code: Datum = DateTime.Now.tostring("dd") + DateTime.Now.tostring("MM") + DateTime.Now.tostring("yyyy")
und ändere die Zeile
Code: oDataMedium.FileName = path_and_name & ".pdf"
in
Code: oDataMedium.FileName = Datum & "_" & path_and_name & ".pdf"
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
KraBBy Mitglied Maschinenbau-Ingenieur
Beiträge: 721 Registriert: 19.09.2007 Inventor Professional 2020 WinX
|
erstellt am: 05. Apr. 2016 09:46 <-- editieren / zitieren --> Unities abgeben: Nur für SWxler
leider nicht genau genug gelesen... das Datum sollte ja in einer bestimmten Form sein DDMMYYYY. Dazu einfach die Punkte "ersetzen" durch einen leeren String (""). Code: 'Datum als ddmmyyyy sDatum = Replace(DateString, ".", "") path_and_name = ThisDoc.Path & "\" & sDatum & "_" & ThisDoc.FileName(False)
mir persönlich würde aber das Datum "anders herum" besser gefallen, YYYYMMDD wegen der Sortierung im Datei-Explorer usw. Code: sM = Trim(Month(Datestring)) 'Monat 'Trim entfernt Leerzeichen am Anfang/Ende des Strings, kA warum nötig If Len(sM)=1 Then sM = "0" & sM 'bei Bedarf 0 vorne anhängen sD = Trim(Day(Datestring)) 'Tag If Len(sD)=1 Then sD = "0"& sD 'bei Bedarf 0 vorne anhängen sDatum = Year(Datestring) & sM & sD 'zusammensetzen path_and_name = ThisDoc.Path & "\" & sDatum & "_" & ThisDoc.FileName(False)
Gruß KraBBy Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
KraBBy Mitglied Maschinenbau-Ingenieur
Beiträge: 721 Registriert: 19.09.2007 Inventor Professional 2020 WinX
|
erstellt am: 05. Apr. 2016 09:55 <-- editieren / zitieren --> Unities abgeben: Nur für SWxler
die Lösung von Ruzy5624 (in der Form: DateTime.Now.tostring("MM"))ist etwas eleganter als mein Vorschlag. Allerdings kommt dabei oDataMedium.FileName = Datum & "_" & path_and_name & ".pdf" nicht das richtige raus. Das Datum steht ja dann noch vor dem Pfad! Aber damit sollte dann auch das passen:
Code: oDataMedium.FileName = ThisDoc.Path & "\" & Datum & "_" & ThisDoc.FileName(False) & ".pdf"
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ruzy5624 Mitglied Konstruktionsleiter / staatl. gepr. Techniker
Beiträge: 280 Registriert: 01.07.2015 Product Design Suite 2018 Ultimate Visual Studio 2017 Windows 10 Pro Intel Xeon E3-1245 v5 @ 3,5GHz Nvidia Quadro M4000 8GB RAM 32GB 2x 24" Monitore FullHD SpaceMouse Pro
|
erstellt am: 05. Apr. 2016 12:12 <-- editieren / zitieren --> Unities abgeben: Nur für SWxler
Zitat: Original erstellt von KraBBy: die Lösung von Ruzy5624 (in der Form: DateTime.Now.tostring("MM"))ist etwas eleganter als mein Vorschlag.Allerdings kommt dabei oDataMedium.FileName = Datum & "_" & path_and_name & ".pdf" nicht das richtige raus. Das Datum steht ja dann noch vor dem Pfad! Aber damit sollte dann auch das passen:
Code: oDataMedium.FileName = ThisDoc.Path & "\" & Datum & "_" & ThisDoc.FileName(False) & ".pdf"
Oh stimmt richtig, da habe ich wohl nur zu flüchtig drüber nachgedacht, aber so wie du schreibst sollte es dann passen Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
SWxler Mitglied technischer zeichner
Beiträge: 117 Registriert: 11.11.2013 Win 7 SP1.0 / 64 bit / IV 2018
|
erstellt am: 06. Apr. 2016 10:55 <-- editieren / zitieren --> Unities abgeben:
|