Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  CATScript (PartNumber=Dateiname inkl. Unterordner)

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:  CATScript (PartNumber=Dateiname inkl. Unterordner) (2743 mal gelesen)
Gena
Mitglied
Konstruktion


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

Beiträge: 109
Registriert: 07.07.2005

Catia V5 R26 SP3 HF22<P>HP Z800 Workstation
Intel Xeon CPU X5672 @ 3.20GHz
Windows 7, 48 GB RAM,
NVIDIA Quadro K5000

erstellt am: 02. Okt. 2009 10: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 Freunde,

könnt Ihr mir bitte bei einem Script helfen?

Hier sieht Ihr einen Script (von einem CAD.de User) mit dem man Part Number mit dem Dateinamen synchronisiert. Nach dem starten gibt man die Adresse von einem Ordner in dem sich die Daten befinden und alle Part's und Produkt's werden abgeglichen.

Nun möchte ich das auch die Unterordner mit untersucht werden.

Würde mich über eine Lösung sehr freuen.
Mit freundlichem Gruß
Gena


Sub CATMain()
Dim Eingabe As String
Eingabe = "D:\pf"
Eingabe = InputBox ("Bitte geben Sie den Öffnungs Ort  ein.", "Alle Parts/Products Öffnen", Eingabe)

    Dim oFileSystem As INFITF.FileSystem
    Set oFileSystem = CATIA.FileSystem
    Dim oFolder As INFITF.Folder
    ' Verzeichnisname für CATIA-Part
    Set oFolder = oFileSystem.GetFolder (Eingabe)

   
    Dim FileSep As String
    FileSep = oFileSystem.FileSeparator
    Dim i As Long
    Dim j as Variant
    Dim oFile As INFITF.File
    Dim oActiveDoc As DrawingDocument
    'Dim BackView As DrawingView
    'Dim oText As DrawingText
    For i = 1 To oFolder.Files.Count
        Set oFile = oFolder.Files.Item(i)
        If Right(oFile.Name, 7) = "CATPart" Then
            Set oActiveDoc = CATIA.Documents.Open(oFolder.Path + FileSep + oFile.Name)

Dim document As document
Dim splitname As string
Set document = CATIA.ActiveDocument
splitname = Split(document.Name, ".")
Set pro = document.Product
pro.PartNumber = splitname(0)

            oActiveDoc.Save
            oActiveDoc.Close
     
End If

'For i = 1 To oFolder.Files.Count
        Set oFile = oFolder.Files.Item(i)
        If Right(oFile.Name, 10) = "CATProduct" Then
            Set oActiveDoc = CATIA.Documents.Open(oFolder.Path + FileSep + oFile.Name)

'Dim document As document
'Dim splitname As string
Set document = CATIA.ActiveDocument
splitname = Split(document.Name, ".")
Set pro = document.Product
pro.PartNumber = splitname(0)

            oActiveDoc.Save
            oActiveDoc.Close
      End If

    Next
End Sub

[Diese Nachricht wurde von Gena am 02. Okt. 2009 editiert.]

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

Christian.O
Mitglied
Konstrukteur


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

Beiträge: 1212
Registriert: 17.07.2009

erstellt am: 04. Nov. 2010 21: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 Gena 10 Unities + Antwort hilfreich

Servus,

muß dieses Thema nochmals aufwärmen weil ich ein paar Makros umschreiben will, dass auch die Unterordner in die Suche mitaufgenommen werden.

Das Problem dabei ist, dass der folgende Code auf dem Standrechner mit Win XP (64 Bit) und  Microsoft Office 2003 funktioniert.

Code:
    Set objShell = CreateObject("Shell.Application")
    strOrdner = objShell.BrowseForFolder(0, "Wählen Sie bitte den Ordner mit den Dateien aus", 0).Self.Path
   
    If Right(strOrdner, 1) <> "\" Then
        strOrdner = strOrdner & "\"
        With Application.FileSearch
        .LookIn = strOrdner
        .SearchSubFolders = True
        .NewSearch
        .FileName = "*.pdf"
            If .Execute > 0 Then
                MsgBox (.FoundFiles.Count)
                    For lngI = 1 To .FoundFiles.Count
                    MsgBox (.FoundFiles(lngI))
                Next
            End If
        End With
    End If

Jedoch auf meinem Laptop (Konfiguration siehe Systeminfo) mit Office 2010 funktioniert die Sache leider nicht mehr. Mit der Sufu hab ich hier im Forum nichts dazu gefunden. Google hingegen spuckt mir aus, dass ab Office 2007 Application.FileSearch nicht mehr funktioniert (Link). Hier wird dann auf eine Alternative hingewiesen die auch nicht funktioniert. Das Makro steigt dann bei

Code:
Dim objFileSearch As clsFileSearch
aus. Funktioniert somit auch nicht.

Gibt es noch eine andere Möglichkeit einen Unterordner in die Suche mit aufzunehmen? Oder muß man noch einen Verweis auf eine Library setzen?

------------------
Mit freundlichen Grüßen aus Tirol
Christian Obholzer

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

Christian.O
Mitglied
Konstrukteur


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

Beiträge: 1212
Registriert: 17.07.2009

Celsius-Mobile H720
i7-3840QM
32 Gb Arbeitsspeicher
256 Gb SSD
Quadro K2000M
Windows 7 Professional (64 Bit)
Catia V5R19 (64 Bit)
SpacePilot Pro

erstellt am: 07. Nov. 2010 11: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 Gena 10 Unities + Antwort hilfreich


Kill_Files.rar

 
Servus,

hab jetzt selber eine Lösung für mein Problem gefunden, dass auch die Unterordner durchsucht werden. Anbei ein Makro zum Löschen von Dateien.

------------------
Mit freundlichen Grüßen aus Tirol
Christian Obholzer

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