<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic API: change Parameter and save in current folder in Fusion API and Scripts Forum</title>
    <link>https://forums.autodesk.com/t5/fusion-api-and-scripts-forum/api-change-parameter-and-save-in-current-folder/m-p/10132415#M9297</link>
    <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I want to write a function that changes a parameter and then saves the document to the current folder (not locally, but in the cloud) (or the folder where the "template-part" is located. The filename should be something like "projectname_" + the parameter. E.g. "projectname_350".&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The code I have written is here:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="general"&gt;#Author-
#Description-

import&amp;nbsp;adsk.core,&amp;nbsp;adsk.fusion,&amp;nbsp;adsk.cam,&amp;nbsp;traceback,&amp;nbsp;time

&amp;nbsp;&amp;nbsp;

def&amp;nbsp;run(context):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ui&amp;nbsp;=&amp;nbsp;None
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;try:&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;app&amp;nbsp;=&amp;nbsp;adsk.core.Application.get()
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ui&amp;nbsp;&amp;nbsp;=&amp;nbsp;app.userInterface
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;design&amp;nbsp;=&amp;nbsp;app.activeProduct
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;parameters&amp;nbsp;=&amp;nbsp;design.allParameters

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;def&amp;nbsp;param_and_save(abstand):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;abstand_param&amp;nbsp;=&amp;nbsp;parameters.itemByName('Achsabstand')
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;abstand_param.expression&amp;nbsp;=&amp;nbsp;str(abstand)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;adsk.doEvents()
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;time.sleep(2)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;app.activeDocument.saveAs('test',&amp;nbsp;'',&amp;nbsp;'',&amp;nbsp;'')&amp;nbsp;# &amp;lt;- how can I save it ?&amp;nbsp;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;abstand&amp;nbsp;=&amp;nbsp;[50,&amp;nbsp;640, 736, 298]
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for&amp;nbsp;x&amp;nbsp;in&amp;nbsp;abstand:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;param_and_save(x)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;except:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;ui:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ui.messageBox('Failed:\n{}'.format(traceback.format_exc()))&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Changing the parameters works perfectly. But how can I save every document separately in the current project-folder&amp;nbsp; ?&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: inherit;"&gt;The line "app.activeDocument.saveAs('test',&amp;nbsp;'',&amp;nbsp;'',&amp;nbsp;'')" doesnt work.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: inherit;"&gt;It seems that the function needs a name and a Project-folder and two other parameters ? How is this it done right ?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: inherit;"&gt;And another rather general question: W&lt;/SPAN&gt;&lt;SPAN style="font-family: inherit;"&gt;here can I find the definition of all the functions availibe ? For example in the Object Model-PDF-file I cant find&amp;nbsp; the saveAs-funktion ?&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: inherit;"&gt;And would it also be possible to just Copy a component inside a document with different name and different parameter "Achsabstand" ? (copy component and paste new) ? How would that be done ?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: inherit;"&gt;Thanks &lt;span class="lia-unicode-emoji" title=":smiling_face_with_smiling_eyes:"&gt;😊&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt;</description>
    <pubDate>Fri, 05 Mar 2021 08:03:36 GMT</pubDate>
    <dc:creator>maik_staudt</dc:creator>
    <dc:date>2021-03-05T08:03:36Z</dc:date>
    <item>
      <title>API: change Parameter and save in current folder</title>
      <link>https://forums.autodesk.com/t5/fusion-api-and-scripts-forum/api-change-parameter-and-save-in-current-folder/m-p/10132415#M9297</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I want to write a function that changes a parameter and then saves the document to the current folder (not locally, but in the cloud) (or the folder where the "template-part" is located. The filename should be something like "projectname_" + the parameter. E.g. "projectname_350".&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The code I have written is here:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="general"&gt;#Author-
#Description-

import&amp;nbsp;adsk.core,&amp;nbsp;adsk.fusion,&amp;nbsp;adsk.cam,&amp;nbsp;traceback,&amp;nbsp;time

&amp;nbsp;&amp;nbsp;

def&amp;nbsp;run(context):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ui&amp;nbsp;=&amp;nbsp;None
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;try:&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;app&amp;nbsp;=&amp;nbsp;adsk.core.Application.get()
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ui&amp;nbsp;&amp;nbsp;=&amp;nbsp;app.userInterface
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;design&amp;nbsp;=&amp;nbsp;app.activeProduct
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;parameters&amp;nbsp;=&amp;nbsp;design.allParameters

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;def&amp;nbsp;param_and_save(abstand):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;abstand_param&amp;nbsp;=&amp;nbsp;parameters.itemByName('Achsabstand')
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;abstand_param.expression&amp;nbsp;=&amp;nbsp;str(abstand)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;adsk.doEvents()
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;time.sleep(2)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;app.activeDocument.saveAs('test',&amp;nbsp;'',&amp;nbsp;'',&amp;nbsp;'')&amp;nbsp;# &amp;lt;- how can I save it ?&amp;nbsp;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;abstand&amp;nbsp;=&amp;nbsp;[50,&amp;nbsp;640, 736, 298]
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for&amp;nbsp;x&amp;nbsp;in&amp;nbsp;abstand:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;param_and_save(x)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;except:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;ui:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ui.messageBox('Failed:\n{}'.format(traceback.format_exc()))&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Changing the parameters works perfectly. But how can I save every document separately in the current project-folder&amp;nbsp; ?&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: inherit;"&gt;The line "app.activeDocument.saveAs('test',&amp;nbsp;'',&amp;nbsp;'',&amp;nbsp;'')" doesnt work.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: inherit;"&gt;It seems that the function needs a name and a Project-folder and two other parameters ? How is this it done right ?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: inherit;"&gt;And another rather general question: W&lt;/SPAN&gt;&lt;SPAN style="font-family: inherit;"&gt;here can I find the definition of all the functions availibe ? For example in the Object Model-PDF-file I cant find&amp;nbsp; the saveAs-funktion ?&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: inherit;"&gt;And would it also be possible to just Copy a component inside a document with different name and different parameter "Achsabstand" ? (copy component and paste new) ? How would that be done ?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: inherit;"&gt;Thanks &lt;span class="lia-unicode-emoji" title=":smiling_face_with_smiling_eyes:"&gt;😊&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 05 Mar 2021 08:03:36 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fusion-api-and-scripts-forum/api-change-parameter-and-save-in-current-folder/m-p/10132415#M9297</guid>
      <dc:creator>maik_staudt</dc:creator>
      <dc:date>2021-03-05T08:03:36Z</dc:date>
    </item>
    <item>
      <title>Re: API: change Parameter and save in current folder</title>
      <link>https://forums.autodesk.com/t5/fusion-api-and-scripts-forum/api-change-parameter-and-save-in-current-folder/m-p/10133204#M9298</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/4263662"&gt;@maik_staudt&lt;/a&gt;&amp;nbsp;.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;For now, let's talk about saveAs.&lt;/P&gt;
&lt;P&gt;&lt;A href="https://help.autodesk.com/view/fusion360/ENU/?guid=GUID-7b292219-62fa-4a01-b522-2a1a297edb28" target="_blank" rel="noopener"&gt;https://help.autodesk.com/view/fusion360/ENU/?guid=GUID-7b292219-62fa-4a01-b522-2a1a297edb28&lt;/A&gt;&amp;nbsp;&lt;BR /&gt;Fusion360's data panel can be saved under the same name, but I think it is better to use a different name to avoid confusion.&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;The dataFolder needs to be passed a DataFolder object.&lt;/P&gt;
&lt;P&gt;&lt;A href="https://help.autodesk.com/view/fusion360/ENU/?guid=GUID-a0938aea-0657-4784-9cfc-f5757627ae99" target="_blank" rel="noopener"&gt;https://help.autodesk.com/view/fusion360/ENU/?guid=GUID-a0938aea-0657-4784-9cfc-f5757627ae99&lt;/A&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;In this sample, we will save the four documents in the same folder as the active document when we run the split.&lt;BR /&gt;Be sure to execute it with the document saved once.&lt;/P&gt;
&lt;LI-CODE lang="python"&gt;import adsk.core, adsk.fusion, adsk.cam, traceback, time

def run(context):
    ui = None
    try:
        app = adsk.core.Application.get()
        ui  = app.userInterface
      
        design = app.activeProduct
        parameters = design.allParameters

        def param_and_save(
            abstand :int,
            folder :adsk.core.DataFolder,
            fileHeader :str):

            abstand_param = parameters.itemByName('Achsabstand')
            abstand_param.expression = str(abstand)
            # adsk.doEvents()
            # time.sleep(2)

            # saveAs
            # https://help.autodesk.com/view/fusion360/ENU/?guid=GUID-7b292219-62fa-4a01-b522-2a1a297edb28
            app.activeDocument.saveAs(f'{fileHeader}_{abstand}', folder, '', '')


        # get DataFolder
        # https://help.autodesk.com/view/fusion360/ENU/?guid=GUID-a0938aea-0657-4784-9cfc-f5757627ae99
        folder :adsk.core.DataFolder = app.activeDocument.dataFile.parentFolder
        fileHeader = app.activeDocument.name

        abstand = [50, 640, 736, 298]
        for x in abstand:
            param_and_save(x, folder, fileHeader)
            app.activeViewport.refresh()

        ui.messageBox('Done')
    except:
        if ui:
            ui.messageBox('Failed:\n{}'.format(traceback.format_exc()))&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="1.png" style="width: 645px;"&gt;&lt;img src="https://forums.autodesk.com/t5/image/serverpage/image-id/889256iD05D7773432E5791/image-size/large?v=v2&amp;amp;px=999" role="button" title="1.png" alt="1.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 05 Mar 2021 14:16:40 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fusion-api-and-scripts-forum/api-change-parameter-and-save-in-current-folder/m-p/10133204#M9298</guid>
      <dc:creator>kandennti</dc:creator>
      <dc:date>2021-03-05T14:16:40Z</dc:date>
    </item>
    <item>
      <title>Betreff: API: change Parameter and save in current folder</title>
      <link>https://forums.autodesk.com/t5/fusion-api-and-scripts-forum/api-change-parameter-and-save-in-current-folder/m-p/10228507#M9299</link>
      <description>&lt;P&gt;Thanks a lot, Kandennti,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The script works perfectly.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Is there also a way to copy the component inside the main-assembly with different parameter ?&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Maik&amp;nbsp;&lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 11 Apr 2021 06:08:09 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fusion-api-and-scripts-forum/api-change-parameter-and-save-in-current-folder/m-p/10228507#M9299</guid>
      <dc:creator>maik_staudt</dc:creator>
      <dc:date>2021-04-11T06:08:09Z</dc:date>
    </item>
    <item>
      <title>Betreff: API: change Parameter and save in current folder</title>
      <link>https://forums.autodesk.com/t5/fusion-api-and-scripts-forum/api-change-parameter-and-save-in-current-folder/m-p/10233758#M9300</link>
      <description>&lt;P&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/4263662"&gt;@maik_staudt&lt;/a&gt;&amp;nbsp;.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I interpreted it to mean something like this.&lt;/P&gt;
&lt;P&gt;&lt;IFRAME src="https://player.vimeo.com/video/536250410?title=0&amp;amp;byline=0&amp;amp;portrait=0&amp;amp;speed=0&amp;amp;badge=0&amp;amp;autopause=0&amp;amp;player_id=0&amp;amp;app_id=58479" width="960" height="530" frameborder="0" allowfullscreen="allowfullscreen" allow="autoplay; fullscreen; picture-in-picture" title="Change parameters and save demo.mp4"&gt;&lt;/IFRAME&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;There were variations in the execution time.&lt;BR /&gt;This video is the one that was processed in a fairly short time.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;LI-CODE lang="python"&gt;# Fusion360API Python script
import adsk.core, adsk.fusion, adsk.cam, traceback, time

def run(context):
    ui = None
    try:
        app = adsk.core.Application.get()
        ui  = app.userInterface
      
        design = app.activeProduct
        parameters = design.allParameters

        start = time.time()

        def param_and_save(
            abstand :int,
            folder :adsk.core.DataFolder,
            fileHeader :str) -&amp;gt; str:

            abstand_param = parameters.itemByName('Achsabstand')
            abstand_param.expression = str(abstand)

            docName = f'{fileHeader}_{abstand}'

            # saveAs
            # https://help.autodesk.com/view/fusion360/ENU/?guid=GUID-7b292219-62fa-4a01-b522-2a1a297edb28
            app.activeDocument.saveAs(docName, folder, '', '')

            return docName

        def waitFinishedSaving(
            doc :adsk.core.Document):

                try:
                    id = doc.dataFile.id
                except:
                    id = ''

                while True:
                    adsk.doEvents()
                    try:
                        doc.dataFile
                        if id != doc.dataFile.id:
                            break
                    except:
                        time.sleep(0.1)

        def getDataFileFromDataPanel(
            docNames :list,
            folder) -&amp;gt; list:

            wait = 3.0
            while True:
                try:
                    folder.dataFiles.asArray()
                    break
                except:
                    time.sleep(wait)
                    adsk.doEvents()

            names = []
            
            while True:
                for name in docNames:
                    if not name in names:
                        time.sleep(wait)
                        break
                else:
                    app.executeTextCommand('DataPanel.reload')                    
                    names = [f.name for f in folder.dataFiles.asArray()]
                    adsk.doEvents()
                    continue
                break

            dataFiles = folder.dataFiles.asArray()
            files = []
            for name in docNames:
                for df in dataFiles:
                    if name == df.name:
                        files.append(df)
                        break
                else:
                    continue

            return files

        # get DataFolder
        # https://help.autodesk.com/view/fusion360/ENU/?guid=GUID-a0938aea-0657-4784-9cfc-f5757627ae99
        folder :adsk.core.DataFolder = app.activeDocument.dataFile.parentFolder
        fileHeader = app.activeDocument.name

        # update parameter &amp;amp; saveas
        abstand = [50, 640, 736, 298]
        docNames = []
        viewport = app.activeViewport
        for x in abstand:
            docNames.append(param_and_save(x, folder, fileHeader))
            viewport.refresh()
            viewport.fit()

        # get datafile
        dataFileList = getDataFileFromDataPanel(docNames, folder)

        # clese activeDocument
        app.activeDocument.close(False)

        # create assy doc
        assyDoc = app.documents.add(adsk.core.DocumentTypes.FusionDesignDocumentType)
        assyDoc.saveAs(f'{fileHeader}_Assy', folder, '', '')
        waitFinishedSaving(assyDoc)
        assyOccs = assyDoc.design.rootComponent.occurrences

        # insert Doc
        matZero = adsk.core.Matrix3D.create()
        for dataFile in dataFileList:
            assyOccs.addByInsert(dataFile, matZero, True)
            adsk.doEvents()
            viewport.refresh()
            viewport.fit()

        ui.messageBox(f'Done\n{time.time() - start}s')
    except:
        if ui:
            ui.messageBox('Failed:\n{}'.format(traceback.format_exc()))&lt;/LI-CODE&gt;</description>
      <pubDate>Tue, 13 Apr 2021 09:18:30 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fusion-api-and-scripts-forum/api-change-parameter-and-save-in-current-folder/m-p/10233758#M9300</guid>
      <dc:creator>kandennti</dc:creator>
      <dc:date>2021-04-13T09:18:30Z</dc:date>
    </item>
    <item>
      <title>Betreff: API: change Parameter and save in current folder</title>
      <link>https://forums.autodesk.com/t5/fusion-api-and-scripts-forum/api-change-parameter-and-save-in-current-folder/m-p/12511935#M9301</link>
      <description>&lt;P&gt;I tried to run this script and I must admit that it stopped working. The effect of its operation is the same as what I described in my post and the saveaAS() method does not work properly.&lt;BR /&gt;Link to my post:&lt;BR /&gt;&lt;A href="https://forums.autodesk.com/t5/fusion-360-api-and-scripts/saveas-multiple-documents/td-p/12467126" target="_blank"&gt;https://forums.autodesk.com/t5/fusion-360-api-and-scripts/saveas-multiple-documents/td-p/12467126&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Sun, 21 Jan 2024 22:28:57 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/fusion-api-and-scripts-forum/api-change-parameter-and-save-in-current-folder/m-p/12511935#M9301</guid>
      <dc:creator>espablo</dc:creator>
      <dc:date>2024-01-21T22:28:57Z</dc:date>
    </item>
  </channel>
</rss>

