<?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 Re: Forward Migration to Multiple Objects. Help. in Libraries &amp; objects</title>
    <link>https://community.graphisoft.com/t5/Libraries-objects/Forward-Migration-to-Multiple-Objects-Help/m-p/234490#M4903</link>
    <description>&lt;BLOCKQUOTE&gt;Barry wrote:&lt;BR /&gt;actualGuid = "BF01EC6E-D872-48E4-BB8D-A59B1634557A" is your original object which you seem to be finding OK.&lt;BR /&gt;
&lt;BR /&gt;
You then have 6 other objects (or in this case two test objects).&lt;BR /&gt;
&lt;BR /&gt;
Each object must have its own migration script looking for the original GUID and then changing it to the GUID of the new separate object.&lt;BR /&gt;
&lt;BR /&gt;
You just need to test the old object to find the 'test' parameter value and if it is the correct one then migrate it to the new GUID of the new object.&lt;BR /&gt;
So you only need new GUID for that particular new object in the script (of the new object).&lt;BR /&gt;
Having the GUID of the other objects is not required - each must have its own script.&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
So in object one have ...&lt;BR /&gt;

&lt;PRE&gt;actualGuid = FROM_GUID 

IF (actualGuid = "BF01EC6E-D872-48E4-BB8D-A59B1634557A") then 
   xx = DELETED_PAR_VALUE ("test", t1)  !!this will check for the original option value and temporarily set it in this new object. 
    
   if t1 = 1 then 
      actualGuid = "6A6F3D13-EA87-41D7-86DD-34A6E0C08B83" 
   endif 
ENDIF&lt;/PRE&gt;

and in object 2 have ...&lt;BR /&gt;

&lt;PRE&gt;actualGuid = FROM_GUID 

IF (actualGuid = "BF01EC6E-D872-48E4-BB8D-A59B1634557A") then 
   xx = DELETED_PAR_VALUE ("test", t2)  !!this will check for the original option value and temporarily set it in this new object. 
    
   if t2 = 1 then 
      actualGuid = "861BD837-D86A-4752-9462-A564141EA066" 
   endif 
ENDIF
&lt;/PRE&gt;

Also make sure you only have the GUID of the old object in the migration list (not the new object GUID) and also make sure the old object is not in your loaded library, otherwise the migration will not happen.&lt;BR /&gt;
&lt;BR /&gt;
Barry.&lt;/BLOCKQUOTE&gt; This is very helpful! Only one last question, what do I put in the original object forward migration script if those 2 have to go in the new objects</description>
    <pubDate>Tue, 03 Oct 2017 10:39:54 GMT</pubDate>
    <dc:creator>JGoode</dc:creator>
    <dc:date>2017-10-03T10:39:54Z</dc:date>
    <item>
      <title>Forward Migration to Multiple Objects. Help.</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/Forward-Migration-to-Multiple-Objects-Help/m-p/234486#M4899</link>
      <description>&lt;DIV class="actalk-migrated-content"&gt;&lt;R&gt;Hello, I am trying forward migrate to enable an old object to change to a new version of the object. The forward migration works but it will only migrate to the variation of the object. For example I have one object with 6 different options inside, I have made 6 new separate objects and when the migration happens, I want it to choose the right object to migrate to but it isn't currently. When I pick option '4' I want it to pick the 4th object but it is only choosing the first option.&lt;BR /&gt;

&lt;PRE&gt;actualGuid = FROM_GUID

if (test = t1) then
	IF (actualGuid = "BF01EC6E-D872-48E4-BB8D-A59B1634557A") then
	
		actualGuid = "6A6F3D13-EA87-41D7-86DD-34A6E0C08B83"
	endif
else
	if (actualGuid = "BF01EC6E-D872-48E4-BB8D-A59B1634557A") then
	
		actualGuid = "861BD837-D86A-4752-9462-A564141EA066"
	endif
endif
SETMIGRATIONGUID actualGuid&lt;/PRE&gt; This code didn't work :S&lt;BR /&gt;
&lt;BR /&gt;
edit: just tried putting the 2nd part before the first and that didn't work, so it can't be the order of the code.&lt;BR /&gt;
&lt;BR /&gt;
edit 2: It seems to do it in order of file name, does anyone know how to get this to work?&lt;/R&gt;&lt;/DIV&gt;</description>
      <pubDate>Mon, 02 Oct 2017 15:33:13 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/Forward-Migration-to-Multiple-Objects-Help/m-p/234486#M4899</guid>
      <dc:creator>JGoode</dc:creator>
      <dc:date>2017-10-02T15:33:13Z</dc:date>
    </item>
    <item>
      <title>Re: Forward Migration to Multiple Objects. Help.</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/Forward-Migration-to-Multiple-Objects-Help/m-p/234487#M4900</link>
      <description>They all originate from the same object (same GUID) so it is the option parameter you need to check.&lt;BR /&gt;
I don't know what your parameters are but you will want to do something like this.&lt;BR /&gt;

&lt;PRE&gt;&lt;I&gt;
&lt;/I&gt;IF (actualGuid = "BF01EC6E-D872-48E4-BB8D-A59B1634557A") then

xx = DELETED_PAR_VALUE ("option", option_new)  !!this will check for the original option value and temporarily set it in this new object.

if option_new = 1 then
actualGuid = "6A6F3D13-EA87-41D7-86DD-34A6E0C08B83" 
endif

ENDIF&lt;/PRE&gt;

Repeat this in the other five object looking for the different 'option' values and setting the correct final GUID.&lt;BR /&gt;
&lt;BR /&gt;
Barry.</description>
      <pubDate>Tue, 03 Oct 2017 07:27:52 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/Forward-Migration-to-Multiple-Objects-Help/m-p/234487#M4900</guid>
      <dc:creator>Barry Kelly</dc:creator>
      <dc:date>2017-10-03T07:27:52Z</dc:date>
    </item>
    <item>
      <title>Re: Forward Migration to Multiple Objects. Help.</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/Forward-Migration-to-Multiple-Objects-Help/m-p/234488#M4901</link>
      <description>&lt;BLOCKQUOTE&gt;Barry wrote:&lt;BR /&gt;They all originate from the same object (same GUID) so it is the option parameter you need to check.&lt;BR /&gt;
I don't know what your parameters are but you will want to do something like this.&lt;BR /&gt;

&lt;PRE&gt;&lt;I&gt;
&lt;/I&gt;IF (actualGuid = "BF01EC6E-D872-48E4-BB8D-A59B1634557A") then

xx = DELETED_PAR_VALUE ("option", option_new)  !!this will check for the original option value and temporarily set it in this new object.

if option_new = 1 then
actualGuid = "6A6F3D13-EA87-41D7-86DD-34A6E0C08B83" 
endif

ENDIF&lt;/PRE&gt;

Repeat this in the other five object looking for the different 'option' values and setting the correct final GUID.&lt;BR /&gt;
&lt;BR /&gt;
Barry.&lt;/BLOCKQUOTE&gt;

This is what I have in my script; 
&lt;PRE&gt;actualGuid = FROM_GUID

IF (actualGuid = "BF01EC6E-D872-48E4-BB8D-A59B1634557A") then 
	xx = DELETED_PAR_VALUE ("test", t1)  !!this will check for the original option value and temporarily set it in this new object. 
	
	if t1 = 1 then 
		actualGuid = "6A6F3D13-EA87-41D7-86DD-34A6E0C08B83" 
	endif 
ENDIF

IF (actualGuid = "BF01EC6E-D872-48E4-BB8D-A59B1634557A") then 
	xx = DELETED_PAR_VALUE ("test", t2)  !!this will check for the original option value and temporarily set it in this new object. 
	
	if t2 = 1 then 
		actualGuid = "861BD837-D86A-4752-9462-A564141EA066" 
	endif 
ENDIF&lt;/PRE&gt; It doesn't seem to work.&lt;BR /&gt;
&lt;BR /&gt;
my parameters are defined like this &lt;PRE&gt;t1 = "1"
t2 = "2"
VALUES "test" t1, t2&lt;/PRE&gt;

Edit: Even when I comment out the t1 part of the script, it still migrates to that object. I'm puzzled.</description>
      <pubDate>Tue, 03 Oct 2017 09:04:32 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/Forward-Migration-to-Multiple-Objects-Help/m-p/234488#M4901</guid>
      <dc:creator>JGoode</dc:creator>
      <dc:date>2017-10-03T09:04:32Z</dc:date>
    </item>
    <item>
      <title>Re: Forward Migration to Multiple Objects. Help.</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/Forward-Migration-to-Multiple-Objects-Help/m-p/234489#M4902</link>
      <description>actualGuid = "BF01EC6E-D872-48E4-BB8D-A59B1634557A" is your original object which you seem to be finding OK.&lt;BR /&gt;
&lt;BR /&gt;
You then have 6 other objects (or in this case two test objects).&lt;BR /&gt;
&lt;BR /&gt;
Each object must have its own migration script looking for the original GUID and then changing it to the GUID of the new separate object.&lt;BR /&gt;
&lt;BR /&gt;
You just need to test the old object to find the 'test' parameter value and if it is the correct one then migrate it to the new GUID of the new object.&lt;BR /&gt;
So you only need new GUID for that particular new object in the script (of the new object).&lt;BR /&gt;
Having the GUID of the other objects is not required - each must have its own script.&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
So in object one have ...&lt;BR /&gt;

&lt;PRE&gt;actualGuid = FROM_GUID 

IF (actualGuid = "BF01EC6E-D872-48E4-BB8D-A59B1634557A") then 
   xx = DELETED_PAR_VALUE ("test", t1)  !!this will check for the original option value and temporarily set it in this new object. 
    
   if t1 = 1 then 
      actualGuid = "6A6F3D13-EA87-41D7-86DD-34A6E0C08B83" 
   endif 
ENDIF&lt;/PRE&gt;

and in object 2 have ...&lt;BR /&gt;

&lt;PRE&gt;actualGuid = FROM_GUID 

IF (actualGuid = "BF01EC6E-D872-48E4-BB8D-A59B1634557A") then 
   xx = DELETED_PAR_VALUE ("test", t2)  !!this will check for the original option value and temporarily set it in this new object. 
    
   if t2 = 1 then 
      actualGuid = "861BD837-D86A-4752-9462-A564141EA066" 
   endif 
ENDIF
&lt;/PRE&gt;

Also make sure you only have the GUID of the old object in the migration list (not the new object GUID) and also make sure the old object is not in your loaded library, otherwise the migration will not happen.&lt;BR /&gt;
&lt;BR /&gt;
Barry.</description>
      <pubDate>Tue, 03 Oct 2017 09:27:42 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/Forward-Migration-to-Multiple-Objects-Help/m-p/234489#M4902</guid>
      <dc:creator>Barry Kelly</dc:creator>
      <dc:date>2017-10-03T09:27:42Z</dc:date>
    </item>
    <item>
      <title>Re: Forward Migration to Multiple Objects. Help.</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/Forward-Migration-to-Multiple-Objects-Help/m-p/234490#M4903</link>
      <description>&lt;BLOCKQUOTE&gt;Barry wrote:&lt;BR /&gt;actualGuid = "BF01EC6E-D872-48E4-BB8D-A59B1634557A" is your original object which you seem to be finding OK.&lt;BR /&gt;
&lt;BR /&gt;
You then have 6 other objects (or in this case two test objects).&lt;BR /&gt;
&lt;BR /&gt;
Each object must have its own migration script looking for the original GUID and then changing it to the GUID of the new separate object.&lt;BR /&gt;
&lt;BR /&gt;
You just need to test the old object to find the 'test' parameter value and if it is the correct one then migrate it to the new GUID of the new object.&lt;BR /&gt;
So you only need new GUID for that particular new object in the script (of the new object).&lt;BR /&gt;
Having the GUID of the other objects is not required - each must have its own script.&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
So in object one have ...&lt;BR /&gt;

&lt;PRE&gt;actualGuid = FROM_GUID 

IF (actualGuid = "BF01EC6E-D872-48E4-BB8D-A59B1634557A") then 
   xx = DELETED_PAR_VALUE ("test", t1)  !!this will check for the original option value and temporarily set it in this new object. 
    
   if t1 = 1 then 
      actualGuid = "6A6F3D13-EA87-41D7-86DD-34A6E0C08B83" 
   endif 
ENDIF&lt;/PRE&gt;

and in object 2 have ...&lt;BR /&gt;

&lt;PRE&gt;actualGuid = FROM_GUID 

IF (actualGuid = "BF01EC6E-D872-48E4-BB8D-A59B1634557A") then 
   xx = DELETED_PAR_VALUE ("test", t2)  !!this will check for the original option value and temporarily set it in this new object. 
    
   if t2 = 1 then 
      actualGuid = "861BD837-D86A-4752-9462-A564141EA066" 
   endif 
ENDIF
&lt;/PRE&gt;

Also make sure you only have the GUID of the old object in the migration list (not the new object GUID) and also make sure the old object is not in your loaded library, otherwise the migration will not happen.&lt;BR /&gt;
&lt;BR /&gt;
Barry.&lt;/BLOCKQUOTE&gt; This is very helpful! Only one last question, what do I put in the original object forward migration script if those 2 have to go in the new objects</description>
      <pubDate>Tue, 03 Oct 2017 10:39:54 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/Forward-Migration-to-Multiple-Objects-Help/m-p/234490#M4903</guid>
      <dc:creator>JGoode</dc:creator>
      <dc:date>2017-10-03T10:39:54Z</dc:date>
    </item>
    <item>
      <title>Re: Forward Migration to Multiple Objects. Help.</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/Forward-Migration-to-Multiple-Objects-Help/m-p/234491#M4904</link>
      <description>&lt;BLOCKQUOTE&gt;JGoode wrote:&lt;BR /&gt;
This is very helpful! Only one last question, what do I put in the original object forward migration script if those 2 have to go in the new objects&lt;/BLOCKQUOTE&gt;

Nothing.&lt;BR /&gt;
You won't have the old original object in your library anymore (you will have deleted it) so there is no need to do anything in its migration scripts.&lt;BR /&gt;
All you need is its GUID in the script for the new objects, so when you open a file that has an instance of the original object with that old GUID, the new object will replace it.&lt;BR /&gt;
Only the new object that has the correct 'test' parameter value that matches the original object settings will replace the old object.&lt;BR /&gt;
&lt;BR /&gt;
Barry.</description>
      <pubDate>Wed, 04 Oct 2017 01:05:54 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/Forward-Migration-to-Multiple-Objects-Help/m-p/234491#M4904</guid>
      <dc:creator>Barry Kelly</dc:creator>
      <dc:date>2017-10-04T01:05:54Z</dc:date>
    </item>
    <item>
      <title>Re: Forward Migration to Multiple Objects. Help.</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/Forward-Migration-to-Multiple-Objects-Help/m-p/234492#M4905</link>
      <description>&lt;BLOCKQUOTE&gt;Barry wrote:&lt;BR /&gt;&lt;BLOCKQUOTE&gt;JGoode wrote:&lt;BR /&gt;
This is very helpful! Only one last question, what do I put in the original object forward migration script if those 2 have to go in the new objects&lt;/BLOCKQUOTE&gt;

Nothing.&lt;BR /&gt;
You won't have the old original object in your library anymore (you will have deleted it) so there is no need to do anything in its migration scripts.&lt;BR /&gt;
All you need is its GUID in the script for the new objects, so when you open a file that has an instance of the original object with that old GUID, the new object will replace it.&lt;BR /&gt;
Only the new object that has the correct 'test' parameter value that matches the original object settings will replace the old object.&lt;BR /&gt;
&lt;BR /&gt;
Barry.&lt;/BLOCKQUOTE&gt;

I've tried it as you said. Still nothing. Have you tried this previously or is it just 'in theory'? It only picks up the first object and doesn't change to the second at all.</description>
      <pubDate>Wed, 04 Oct 2017 09:21:06 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/Forward-Migration-to-Multiple-Objects-Help/m-p/234492#M4905</guid>
      <dc:creator>JGoode</dc:creator>
      <dc:date>2017-10-04T09:21:06Z</dc:date>
    </item>
    <item>
      <title>Re: Forward Migration to Multiple Objects. Help.</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/Forward-Migration-to-Multiple-Objects-Help/m-p/234493#M4906</link>
      <description>I do this quite often (migrating objects) - although I can't say I have split on object into 6 others.&lt;BR /&gt;
&lt;BR /&gt;
Make sure you delete the original object from your library (after you have the GUID).&lt;BR /&gt;
If it is still loaded then it will not get replaced by the new objects.&lt;BR /&gt;
&lt;BR /&gt;
Also make sure the new GUID is not in the migration list.&lt;BR /&gt;
That should only have the old object GUID - it didn't used to matter but since version 19 or 20 it does and will stop the objects from swapping.&lt;BR /&gt;
&lt;BR /&gt;
My understanding is when Archicad determines an object is missing (i.e. no longer in the loaded library) it uses the GUID of that missing object (Archicad still has this information in its database) and searches other objects in the loaded library and looks in the migration list for the missing GUID.&lt;BR /&gt;
If it finds it then it uses the Forward Migration script to do what you want - setting parameters and swapping the object.&lt;BR /&gt;
&lt;BR /&gt;
Maybe it has something to do with the fact you are splitting one object into many different ones so it is finding the GUID in more than one new object - as I say I have never tried to do this.&lt;BR /&gt;
But I am 99% certain it should still work.&lt;BR /&gt;
I would have to test it to be sure or you could attach you test objects (and original object) here in a zip file and I could have a look at them.&lt;BR /&gt;
&lt;BR /&gt;
Barry.</description>
      <pubDate>Wed, 04 Oct 2017 09:44:18 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/Forward-Migration-to-Multiple-Objects-Help/m-p/234493#M4906</guid>
      <dc:creator>Barry Kelly</dc:creator>
      <dc:date>2017-10-04T09:44:18Z</dc:date>
    </item>
    <item>
      <title>Re: Forward Migration to Multiple Objects. Help.</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/Forward-Migration-to-Multiple-Objects-Help/m-p/234494#M4907</link>
      <description>&lt;BLOCKQUOTE&gt;Barry wrote:&lt;BR /&gt;I do this quite often (migrating objects) - although I can't say I have split on object into 6 others.&lt;BR /&gt;
&lt;BR /&gt;
Make sure you delete the original object from your library (after you have the GUID).&lt;BR /&gt;
If it is still loaded then it will not get replaced by the new objects.&lt;BR /&gt;
&lt;BR /&gt;
Also make sure the new GUID is not in the migration list.&lt;BR /&gt;
That should only have the old object GUID - it didn't used to matter but since version 19 or 20 it does and will stop the objects from swapping.&lt;BR /&gt;
&lt;BR /&gt;
My understanding is when Archicad determines an object is missing (i.e. no longer in the loaded library) it uses the GUID of that missing object (Archicad still has this information in its database) and searches other objects in the loaded library and looks in the migration list for the missing GUID.&lt;BR /&gt;
If it finds it then it uses the Forward Migration script to do what you want - setting parameters and swapping the object.&lt;BR /&gt;
&lt;BR /&gt;
Maybe it has something to do with the fact you are splitting one object into many different ones so it is finding the GUID in more than one new object - as I say I have never tried to do this.&lt;BR /&gt;
But I am 99% certain it should still work.&lt;BR /&gt;
I would have to test it to be sure or you could attach you test objects (and original object) here in a zip file and I could have a look at them.&lt;BR /&gt;
&lt;BR /&gt;
Barry.&lt;/BLOCKQUOTE&gt; Well I have only been trying it on a test object with 2 objects rather than 6. I've attached a zip containing the objects. Thanks for your help.</description>
      <pubDate>Wed, 04 Oct 2017 09:55:28 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/Forward-Migration-to-Multiple-Objects-Help/m-p/234494#M4907</guid>
      <dc:creator>JGoode</dc:creator>
      <dc:date>2017-10-04T09:55:28Z</dc:date>
    </item>
    <item>
      <title>Re: Forward Migration to Multiple Objects. Help.</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/Forward-Migration-to-Multiple-Objects-Help/m-p/234495#M4908</link>
      <description>Thanks for all the help, Barry. It works excellently with my main object! When migrating from ArchiCAD 19 to ArchiCAD 21, is there any need to put anything in the forward migration script in the old object? It seems as though it will work without anything in the forward migration script and just with the old object in the 'Migration' tab in the gdl editor?</description>
      <pubDate>Thu, 05 Oct 2017 15:20:59 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/Forward-Migration-to-Multiple-Objects-Help/m-p/234495#M4908</guid>
      <dc:creator>JGoode</dc:creator>
      <dc:date>2017-10-05T15:20:59Z</dc:date>
    </item>
    <item>
      <title>Re: Forward Migration to Multiple Objects. Help.</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/Forward-Migration-to-Multiple-Objects-Help/m-p/234496#M4909</link>
      <description>For those following on at home here is the info I sent JGoode directly (Archicad-talk was playing up and I couldn't post).&lt;BR /&gt;
Amended files attached as well.&lt;BR /&gt;

&lt;BLOCKQUOTE&gt;This should work now.&lt;BR /&gt;
I modified the old test object so it could be a cube or sphere (to easily tell the difference).&lt;BR /&gt;
I also modified new 1 to be cube and new 2 to be sphere.&lt;BR /&gt;
&lt;BR /&gt;
In the migration script there was no need for brackets around the … actualGuid=...&lt;BR /&gt;
I didn't notice this in your original script.&lt;BR /&gt;
&lt;BR /&gt;
Also when checking the value of the parameter it need to be in quotes as it is a string value (not numerical ... if t1 = "1" then&lt;BR /&gt;
&lt;BR /&gt;
And I forgot to add the command ... setmigrationguid actualGuid ... at the end of the migration script.&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
Amended files are attached - I have them in two libraries (folders) - old and new.&lt;BR /&gt;
Load both.&lt;BR /&gt;
Place the old object in the plan twice - once as a cube and once as a sphere.&lt;BR /&gt;
Then delete (un-load) the "old" library and they should replace with each of the new objects.
&lt;/BLOCKQUOTE&gt;

&lt;BR /&gt;
No there is no need for anything in the Forward Migration script of the old object.&lt;BR /&gt;
That stays exactly like it is.&lt;BR /&gt;
In fact it won't even be in your loaded library so there is no need to do anything to it at all.&lt;BR /&gt;
&lt;BR /&gt;
All you need is the GUID for it in your new objects, so they know when they come across a missing object (because it is not in your loaded libraries) with that GUID it will be replaced with the new object.&lt;BR /&gt;
&lt;BR /&gt;
Barry.</description>
      <pubDate>Fri, 06 Oct 2017 01:04:34 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/Forward-Migration-to-Multiple-Objects-Help/m-p/234496#M4909</guid>
      <dc:creator>Barry Kelly</dc:creator>
      <dc:date>2017-10-06T01:04:34Z</dc:date>
    </item>
    <item>
      <title>Re: Forward Migration to Multiple Objects. Help.</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/Forward-Migration-to-Multiple-Objects-Help/m-p/234497#M4910</link>
      <description>&lt;BLOCKQUOTE&gt;Barry wrote:&lt;BR /&gt;For those following on at home here is the info I sent JGoode directly (Archicad-talk was playing up and I couldn't post).&lt;BR /&gt;
Amended files attached as well.&lt;BR /&gt;

&lt;BLOCKQUOTE&gt;This should work now.&lt;BR /&gt;
I modified the old test object so it could be a cube or sphere (to easily tell the difference).&lt;BR /&gt;
I also modified new 1 to be cube and new 2 to be sphere.&lt;BR /&gt;
&lt;BR /&gt;
In the migration script there was no need for brackets around the … actualGuid=...&lt;BR /&gt;
I didn't notice this in your original script.&lt;BR /&gt;
&lt;BR /&gt;
Also when checking the value of the parameter it need to be in quotes as it is a string value (not numerical ... if t1 = "1" then&lt;BR /&gt;
&lt;BR /&gt;
And I forgot to add the command ... setmigrationguid actualGuid ... at the end of the migration script.&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
Amended files are attached - I have them in two libraries (folders) - old and new.&lt;BR /&gt;
Load both.&lt;BR /&gt;
Place the old object in the plan twice - once as a cube and once as a sphere.&lt;BR /&gt;
Then delete (un-load) the "old" library and they should replace with each of the new objects.
&lt;/BLOCKQUOTE&gt;

&lt;BR /&gt;
No there is no need for anything in the Forward Migration script of the old object.&lt;BR /&gt;
That stays exactly like it is.&lt;BR /&gt;
In fact it won't even be in your loaded library so there is no need to do anything to it at all.&lt;BR /&gt;
&lt;BR /&gt;
All you need is the GUID for it in your new objects, so they know when they come across a missing object (because it is not in your loaded libraries) with that GUID it will be replaced with the new object.&lt;BR /&gt;
&lt;BR /&gt;
Barry.&lt;/BLOCKQUOTE&gt; So if it is just 1 old object migrated to 1 new object, I only have to search for the old object through the 'Migration' tab. If I understand correctly. I assumed I needed to put some code in the forward migration script of the old object.</description>
      <pubDate>Fri, 06 Oct 2017 08:57:08 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/Forward-Migration-to-Multiple-Objects-Help/m-p/234497#M4910</guid>
      <dc:creator>JGoode</dc:creator>
      <dc:date>2017-10-06T08:57:08Z</dc:date>
    </item>
  </channel>
</rss>

