CATPart et CATProduct
3 participants
Page 1 sur 1
CATPart et CATProduct
bonjour je voudrai faire la différence entre les catpart et les catproduct de mon assemblage afin de faire une vérification du genre,
-si catproduct, partnumberfini par 0 ok sinn pasok
-si catpart, partnumber ne fini pas par 0 ok sinn pasok
après avoir lu plusieurs page dessus je n'y arrive toujours pas,
voici mon programme la parti sur laquelle je travail est encadré de '=====
merci d'avance
-si catproduct, partnumberfini par 0 ok sinn pasok
-si catpart, partnumber ne fini pas par 0 ok sinn pasok
après avoir lu plusieurs page dessus je n'y arrive toujours pas,
voici mon programme la parti sur laquelle je travail est encadré de '=====
- Code:
If myDoc Is Nothing Then
MsgBox "Please load a product - THEN activate this function!"
Return
End If
Set myrootProduct = myDoc.Product
Call visitProduct(myrootProduct, "", myTree)
UserForm2.Show
End Sub
Sub visitProduct(prod As Product, parentKey As String, ByRef myTree As TreeView)
On Error Resume Next
Dim children As Products
Set children = prod.Products
Dim i As Integer
Dim child As Product
Dim key As String
Dim label As String
label = prod.PartNumber & " / " & prod.Name ' pour afficher le pratNumber et le nom d'instance
key = parentKey & "###" & prod.Name
If parentKey = "" Then
UserForm2.tree.Nodes.Add(, , key, label).Expanded = True
UserForm2.ListBox1.AddItem "----------"
UserForm2.ListBox1.AddItem prod.PartNumber
UserForm2.ListBox1.AddItem "----------"
Else
UserForm2.tree.Nodes.Add(parentKey, tvwChild, key, label).Expanded = True
UserForm2.ListBox1.AddItem "----------"
UserForm2.ListBox1.AddItem prod.PartNumber
UserForm2.ListBox1.AddItem "----------"
MsgBox (prod.Parameters.Name)
'======================
If (InStr(1, prod.Products.Name, "CATProduct") > 0) Then
If Right(Left(prod.PartNumber, 10), 1) = "0" Then
UserForm2.ListBox2.AddItem prod.PartNumber & " --> correct"
End If
Else
UserForm2.ListBox2.AddItem prod.PartNumber & " --> part"
End If
'======================
End If
For i = 1 To children.Count
Set child = children.Item(i)
Call visitProduct(child, key, myTree)
Next
End Sub
merci d'avance
Dernière édition par quentinc le Jeu 23 Juin 2016 - 9:31, édité 1 fois
quentinc- actif
- Messages : 33
Date d'inscription : 07/06/2016
Localisation : saint quentin en yveline
Re: CATPart et CATProduct
bonjour,
A mon sens il faut que que tu ecrives ceci
essais ça
raphael
A mon sens il faut que que tu ecrives ceci
- Code:
if InStr(1, prod.Name, "CATProduct") > 0 Then
If Right(Left(prod.PartNumber, 10), 1) = 0 Then
UserForm2.ListBox2.AddItem prod.PartNumber & " --> correct"
End If
Else
UserForm2.ListBox2.AddItem prod.PartNumber & " --> part"
End If
essais ça
raphael
raphael_59240- actif
- Messages : 127
Date d'inscription : 28/03/2015
Age : 53
Localisation : dunkerque
Re: CATPart et CATProduct
Salut Quentin,
Je pense qu'il faut placer tes tests un peu plus haut.
Il faut également récupérer le nom de fichier et pas le PartNumber pour le test:
Je pense qu'il faut placer tes tests un peu plus haut.
Il faut également récupérer le nom de fichier et pas le PartNumber pour le test:
- Code:
label = prod.PartNumber & " / " & prod.Name ' pour afficher le pratNumber et le nom d'instance
'===========================
'Récupère le nom de fichier:
nomFichier = prod.ReferenceProduct.Parent.Name
'Si c'est un CATProduct:
If InStr(nomFichier, "CATProduct") > 0 Then
If Right(Left(prod.PartNumber, 10), 1) = 0 Then
MsgBox (prod.PartNumber & " nom OK")
'UserForm2.ListBox2.AddItem prod.PartNumber & " --> correct"
Else
MsgBox (prod.PartNumber & " nom NOK")
'UserForm2.ListBox2.AddItem prod.PartNumber & " --> incorrect"
End If
End If
'Si c'est un CATPart:
If InStr(nomFichier, "CATPart") > 0 Then
If Right(Left(prod.PartNumber, 10), 1) = 0 Then
MsgBox (prod.PartNumber & " nom NOK")
'UserForm2.ListBox2.AddItem prod.PartNumber & " --> incorrect"
Else
MsgBox (prod.PartNumber & " nom OK")
'UserForm2.ListBox2.AddItem prod.PartNumber & " --> correct"
End If
End If
'===========================
key = parentKey & "###" & prod.Name
lumpazepfel- Fédérateur
- Messages : 319
Date d'inscription : 02/11/2015
Localisation : Ensisheim
Re: CATPart et CATProduct
bonjour,
en effet il fallait bien prendre le nom fichier,
merci à vous deux
quentin
en effet il fallait bien prendre le nom fichier,
merci à vous deux
quentin
quentinc- actif
- Messages : 33
Date d'inscription : 07/06/2016
Localisation : saint quentin en yveline
Sujets similaires
» Convertir un CATPart en CATProduct
» Detecter le Niveau Actif (CATProduct/Composant/CATPart)
» Creation d'un fichier standard de type CATPart, CATProduct, CATDrawing
» Macro VBA - Enregistrer sous de tous les CATProduct et CATPart uniquement présents dans CATIA.ActiveDocument ?
» VBA CATIA - Renommer les instances d'un CATProduct
» Detecter le Niveau Actif (CATProduct/Composant/CATPart)
» Creation d'un fichier standard de type CATPart, CATProduct, CATDrawing
» Macro VBA - Enregistrer sous de tous les CATProduct et CATPart uniquement présents dans CATIA.ActiveDocument ?
» VBA CATIA - Renommer les instances d'un CATProduct
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum