Pagina 1 di 2 12 UltimaUltima
Risultati da 1 a 10 di 12
  1. #1
    Utente poco attivo
    Iscritto dal
    2012
    Messaggi
    7
    Professione
    Disegnatore
    Regione
    Italia
    Software
    Autodesk Inventor

    Compilazione iProperties negli assiemi

    Salve,
    mi chiamo Zsolt e sn nuovo in questo forum. Ho 24 anni e lavoro per un azienda che produce impianti per l'avicoltura. Sono giunto qui per chiedervi aiuto su una questione che mi preoccupa da tempo.
    Io ho realizzato un modulo globale iLogic in inventor che utilizzando delle regole esterne e appogiandosi a un file excel esterno, compila diversi campi delle iProperties in automatico cliccando un pulsante di questo form. Funziona alla perfezione, nelle parti singole *.ipt. Il mio problema è il seguente:
    io vorrei fare un modulo che funziona anche per gli assiemi e che in automatico andasse a compilare tutte le iProperties dei singoli pezzi presenti in un assieme. Non so però come si comporterebbe con le parti della libreria, perchè quelle le iProperties le hanno gia compilate, quindi sarebbero da escludere, oppure possiamo rinominarle e in seguito non verranno salvate!?!?

    Spero che qualcuno di voi riesca a darmi una mano. Intanto vi posto ma regola esterna che compila le iProperties di una singola parte, in pratica vorrei che questa si ripetesse per ogni singola parte del assieme (-libreria??):

    i = GoExcel.FindRow("Z:\DISEGNI_INVENTOR\Descrizioni.x lsx", "VALLI_ARTICOLI-e-TRADUZIONI", "Codice Articolo", "=", iProperties.Value ("Project", "Part Number"))
    iProperties.Value ("Project", "Description") = GoExcel.CurrentRowValue("Descr.Articolo")
    iProperties.Value ("Custom", "Descr. Agg. ITA") = GoExcel.CurrentRowValue("Descr.Agg.Articolo")
    iProperties.Value ("Project", "Project") = GoExcel.CurrentRowValue("Gruppo Appartenenza")
    iProperties.Value ("Custom", "Descrizione inglese") = GoExcel.CurrentRowValue("Descr.Tradotta")
    iProperties.Value ("Custom", "Descr. Agg. ENG") = GoExcel.CurrentRowValue("Descr.Agg.Tradotta")

  2. #2
    Utente Standard L'avatar di Catafratto
    Iscritto dal
    2011
    Messaggi
    809
    Professione
    Disegnatore/progettista
    Regione
    Veneto
    Software
    Inventor 2016

    Predefinito

    Qui trovi il codice in visualbasic per passare tutti gli elementi di un assieme, iLogic non lo conosco e non so se si possa trasportare (usa codice ricorsivo) ma penso valga la pena provare.

    F1 -> Guida alla programmazione (API) -> Cut-and-paste sample code -> Bills of Materials
    Per quanto riguarda gli elementi di libreria non so dirti ora, magari se ho tempo faccio una prova...

    Ciao!
    Spesso astuzia ed intelligenza sono molto più efficaci dell'ottusa forza bruta: ma non ho proprio tempo di cercare qualcun alltro...

  3. #3
    Utente poco attivo
    Iscritto dal
    2012
    Messaggi
    7
    Professione
    Disegnatore
    Regione
    Italia
    Software
    Autodesk Inventor

    Predefinito

    F1 -> Guida alla programmazione (API) -> Cut-and-paste sample code -> Bills of Materials
    Per quanto riguarda gli elementi di libreria non so dirti ora, magari se ho tempo faccio una prova...
    Scusa l'ignoranza ma non riesco a trovarlo!!
    Con F1 mi apre la guida online....

    Per quanto riguarda gli elementi della libreria non penso possano esserci problemi dato che sono solo in lettura, quindi il modulo potrebbe tranquillamento compilare tutte le iProperties tanto quelle della libreria non vengono salvate.

    Se mi puoi postare quel codice di prima te ne sarei grato

    P.s. Comunque guardando la distinata componenti di un assieme basterebbe compilare le iProperties di tutti i componenti della distinta strutturata che non abbiano la Struttura distinta componenti uguale a ACQUISTATO, cioè quelli della libreria.

  4. #4
    Utente Standard L'avatar di Catafratto
    Iscritto dal
    2011
    Messaggi
    809
    Professione
    Disegnatore/progettista
    Regione
    Veneto
    Software
    Inventor 2016

    Predefinito

    F1 di Inventor dalla finestra modellazione, io uso I2011

    comunque:
    Public Sub BOMQuery()
    ' Set a reference to the assembly document.
    ' This assumes an assembly document is active.
    Dim oDoc As AssemblyDocument
    Set oDoc = ThisApplication.ActiveDocument

    Dim FirstLevelOnly As Boolean
    If MsgBox("First level only?", vbYesNo) = vbYes Then
    FirstLevelOnly = True
    Else
    FirstLevelOnly = False
    End If

    ' Set a reference to the BOM
    Dim oBOM As BOM
    Set oBOM = oDoc.ComponentDefinition.BOM

    ' Set whether first level only or all levels.
    If FirstLevelOnly Then
    oBOM.StructuredViewFirstLevelOnly = True
    Else
    oBOM.StructuredViewFirstLevelOnly = False
    End If

    ' Make sure that the structured view is enabled.
    oBOM.StructuredViewEnabled = True

    'Set a reference to the "Structured" BOMView
    Dim oBOMView As BOMView
    Set oBOMView = oBOM.BOMViews.Item("Structured")

    Debug.Print "Item"; Tab(15); "Quantity"; Tab(30); "Part Number"; Tab(70); "Description"
    Debug.Print "----------------------------------------------------------------------------------"

    'Initialize the tab for ItemNumber
    Dim ItemTab As Long
    ItemTab = -3
    Call QueryBOMRowProperties(oBOMView.BOMRows, ItemTab)
    End Sub

    Private Sub QueryBOMRowProperties(oBOMRows As BOMRowsEnumerator, ItemTab As Long)
    ItemTab = ItemTab + 3
    ' Iterate through the contents of the BOM Rows.
    Dim i As Long
    For i = 1 To oBOMRows.Count
    ' Get the current row.
    Dim oRow As BOMRow
    Set oRow = oBOMRows.Item(i)

    'Set a reference to the primary ComponentDefinition of the row
    Dim oCompDef As ComponentDefinition
    Set oCompDef = oRow.ComponentDefinitions.Item(1)

    Dim oPartNumProperty As Property
    Dim oDescripProperty As Property

    If Typeof oCompDef Is VirtualComponentDefinition Then

    'Get the file property that contains the "Part Number"
    'The file property is obtained from the virtual component definition
    Set oPartNumProperty = oCompDef.PropertySets _
    .Item("Design Tracking Properties").Item("Part Number")

    'Get the file property that contains the "Description"
    Set oDescripProperty = oCompDef.PropertySets _
    .Item("Design Tracking Properties").Item("Description")

    Debug.Print Tab(ItemTab); oRow.ItemNumber; Tab(17); oRow.ItemQuantity; Tab(30); _
    oPartNumProperty.Value; Tab(70); oDescripProperty.Value
    Else

    'Get the file property that contains the "Part Number"
    'The file property is obtained from the parent
    'document of the associated ComponentDefinition.
    Set oPartNumProperty = oCompDef.Document.PropertySets _
    .Item("Design Tracking Properties").Item("Part Number")

    'Get the file property that contains the "Description"
    Set oDescripProperty = oCompDef.Document.PropertySets _
    .Item("Design Tracking Properties").Item("Description")

    Debug.Print Tab(ItemTab); oRow.ItemNumber; Tab(17); oRow.ItemQuantity; Tab(30); _
    oPartNumProperty.Value; Tab(70); oDescripProperty.Value

    'Recursively iterate child rows if present.
    If Not oRow.ChildRows Is Nothing Then
    Call QueryBOMRowProperties(oRow.ChildRows, ItemTab)
    End If
    End If
    Next
    ItemTab = ItemTab - 3
    End Sub
    Spesso astuzia ed intelligenza sono molto più efficaci dell'ottusa forza bruta: ma non ho proprio tempo di cercare qualcun alltro...

  5. #5
    Utente poco attivo
    Iscritto dal
    2012
    Messaggi
    7
    Professione
    Disegnatore
    Regione
    Italia
    Software
    Autodesk Inventor

    Predefinito

    Grazie adesso provo a studiarlo un po e vedo se riesco a cavarmela in VB anche se preferivo le regole esterne di iLogic così il modulo esterno sarebbe gia a disposizione a tutti gli utenti della rete. Se avete altri suggerimenti vi ringrazio in anticipo.

  6. #6
    Utente Standard L'avatar di Catafratto
    Iscritto dal
    2011
    Messaggi
    809
    Professione
    Disegnatore/progettista
    Regione
    Veneto
    Software
    Inventor 2016

    Predefinito

    Come dicevo magari è comunque convertibile in iLogic... proprio non so.
    Spesso astuzia ed intelligenza sono molto più efficaci dell'ottusa forza bruta: ma non ho proprio tempo di cercare qualcun alltro...

  7. #7
    Utente poco attivo
    Iscritto dal
    2012
    Messaggi
    7
    Professione
    Disegnatore
    Regione
    Italia
    Software
    Autodesk Inventor

    Predefinito

    Per adesso sono riuscito a farlo partire in Vb, funziona (non da errori), ma non so assolutamente cosa faccia, visto che non vedo nessun tipo di modifiche! E poi non so come collegargli il mio file excel dove deve an dare a leggere le iProperties e compilarle.

  8. #8
    Utente Standard L'avatar di Catafratto
    Iscritto dal
    2011
    Messaggi
    809
    Professione
    Disegnatore/progettista
    Regione
    Veneto
    Software
    Inventor 2016

    Predefinito

    Beh, non fa modifiche, legge le iproperties e le stampa a video; era solo un esempio di come scorrere i vari componenti di un assieme.
    Spesso astuzia ed intelligenza sono molto più efficaci dell'ottusa forza bruta: ma non ho proprio tempo di cercare qualcun alltro...

  9. #9
    Utente poco attivo
    Iscritto dal
    2012
    Messaggi
    7
    Professione
    Disegnatore
    Regione
    Italia
    Software
    Autodesk Inventor

    Predefinito

    Ah allora non funziona perchè non mi fa vedere niente :-D

  10. #10
    Utente Standard L'avatar di Catafratto
    Iscritto dal
    2011
    Messaggi
    809
    Professione
    Disegnatore/progettista
    Regione
    Veneto
    Software
    Inventor 2016

    Predefinito

    Dipende da dove guardi ;-)

    Stampa nella finestra "Immediata" (CTRL+G) di VBA
    Spesso astuzia ed intelligenza sono molto più efficaci dell'ottusa forza bruta: ma non ho proprio tempo di cercare qualcun alltro...


  • Pagina 1 di 2 12 UltimaUltima

    Discussioni Simili

    1. Vincoli negli assiemi
      Di Pietro_1 nel forum Inventor
      Risposte: 2
      Ultimo Messaggio: 15-09-2010, 13: 37
    2. dinamica fisica negli assiemi
      Di asblo nel forum Solidworks
      Risposte: 8
      Ultimo Messaggio: 15-06-2010, 14: 19
    3. Raggruppare le parti negli assiemi
      Di resquas nel forum Inventor
      Risposte: 9
      Ultimo Messaggio: 01-10-2008, 23: 20
    4. Filettature cosmetiche negli assiemi
      Di teo230186 nel forum Solidworks
      Risposte: 2
      Ultimo Messaggio: 25-09-2008, 10: 30
    5. saldature negli assiemi
      Di marco_designer nel forum Solidworks
      Risposte: 2
      Ultimo Messaggio: 14-02-2008, 10: 36

    Segnalibri

    Segnalibri

    Permessi di Scrittura

    • Tu non puoi inviare nuove discussioni
    • Tu non puoi inviare risposte
    • Tu non puoi inviare allegati
    • Tu non puoi modificare i tuoi messaggi
    •  





    CAD3D.it - la community dei progettisti