<?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: API Module DATA Manager in Archicad C++ API</title>
    <link>https://community.graphisoft.com/t5/Archicad-C-API/API-Module-DATA-Manager/m-p/131716#M6495</link>
    <description>&lt;BLOCKQUOTE&gt;atila-diffusion wrote:&lt;BR /&gt;So, I have to fill the API_HotlinkNode structure with the 3 others and other parameters. But once the structure is filled, will the modul be pasted automatically to the scene?&lt;/BLOCKQUOTE&gt;
Sorry, I don't know the answer that. These functions are new with AC12 and I haven't had any need for them yet. Experiment a bit and let us know what you find. Someone like Akos could probably tell you more.</description>
    <pubDate>Thu, 04 Dec 2008 11:16:24 GMT</pubDate>
    <dc:creator>Ralph Wessel</dc:creator>
    <dc:date>2008-12-04T11:16:24Z</dc:date>
    <item>
      <title>API Module DATA Manager</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/API-Module-DATA-Manager/m-p/131713#M6492</link>
      <description>&lt;DIV class="actalk-migrated-content"&gt;Hello,&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;I need help to use API developper kit. &lt;/STRONG&gt;&lt;I&gt;&lt;/I&gt;&lt;S&gt;&lt;I&gt;&lt;I&gt;&lt;/I&gt;&lt;/I&gt;&lt;/S&gt;I use Visual Studio (on Windows).&lt;BR /&gt;&lt;BR /&gt;&lt;U&gt;&lt;/U&gt;&lt;S&gt;&lt;U&gt;&lt;U&gt;&lt;/U&gt;&lt;/U&gt;&lt;/S&gt;My goal :&lt;BR /&gt;&lt;BR /&gt;I aim to write a plugin for archicad 12 which load an external &lt;STRONG&gt;Hotlinked Module&lt;/STRONG&gt; and paste it on the scene, like if in Archicad we do : file -&amp;gt; External content -&amp;gt; Place hotlinked Module -&amp;gt; choose Hotlink (module file and select "open in single story mode") and place Module.&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;&lt;BR /&gt;&lt;U&gt;&lt;/U&gt;&lt;/STRONG&gt;&lt;S&gt;&lt;U&gt;&lt;U&gt;&lt;/U&gt;&lt;/U&gt;&lt;/S&gt;My researches :&lt;BR /&gt;&lt;BR /&gt;I found the &lt;STRONG&gt;Module Data Manager&lt;/STRONG&gt; module, I think that's what I need to use but I'm not sure.&lt;BR /&gt;they speak about an exemple but it's not in the exemple folder of API v12.&lt;BR /&gt;I found this exemple in the examples pack for archicad 7 but the API is very old and too many things have changed to build it.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;So, if somebody could help me please i really need help because it's difficult to understand how to use this module.&lt;BR /&gt;&lt;BR /&gt;Than you and sorry for my english, i do my best .&lt;/DIV&gt;</description>
      <pubDate>Fri, 04 Aug 2023 12:49:43 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/API-Module-DATA-Manager/m-p/131713#M6492</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2023-08-04T12:49:43Z</dc:date>
    </item>
    <item>
      <title>Re: API Module DATA Manager</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/API-Module-DATA-Manager/m-p/131714#M6493</link>
      <description>&lt;BLOCKQUOTE&gt;atila-diffusion wrote:&lt;BR /&gt;  I aim to write a plugin for archicad 12 which load an external &lt;B&gt;Hotlinked Module&lt;/B&gt; and paste it on the scene, [...]  I found the &lt;B&gt;Module Data Manager&lt;/B&gt; module, I think that's what I need to use but I'm not sure. they speak about an exemple but it's not in the exemple folder of API v12. I found this exemple in the examples pack for archicad 7 but the API is very old and too many things have changed to build it.&lt;/BLOCKQUOTE&gt;
I think you have been looking at the &lt;I&gt;&lt;/I&gt;&lt;S&gt;&lt;I&gt;&lt;I&gt;&lt;/I&gt;&lt;/I&gt;&lt;/S&gt;ModulData Manager&lt;E&gt;&lt;/E&gt;, which allows an add-on to store and retrieve data in the project file, e.g. user preferences. These functions don't have any direct relevance to the problem.&lt;BR /&gt;
&lt;BR /&gt;
I haven't attempted to place hotlinks in a project, so I can't definitively say that it will work, but I recommend you look at the following subjects in the Devkit documentation:&lt;UL&gt;&lt;LI&gt;- API_HotlinkTypeID&lt;BR /&gt;
- API_HotlinkStoryRangeID&lt;BR /&gt;
- API_HotlinkUserData&lt;BR /&gt;
- API_HotlinkNode&lt;/LI&gt;&lt;/UL&gt;</description>
      <pubDate>Wed, 03 Dec 2008 16:05:42 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/API-Module-DATA-Manager/m-p/131714#M6493</guid>
      <dc:creator>Ralph Wessel</dc:creator>
      <dc:date>2008-12-03T16:05:42Z</dc:date>
    </item>
    <item>
      <title>Re: API Module DATA Manager</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/API-Module-DATA-Manager/m-p/131715#M6494</link>
      <description>thank you, &lt;BR /&gt;
 &lt;BR /&gt;
you're right this subjects seems to be what I'm looking for.  &lt;BR /&gt;
So, I have to fill the API_HotlinkNode structure with the 3 others and other parameters. &lt;BR /&gt;
But once the structure is filled, will the modul be pasted automatically to the scene?&lt;BR /&gt;
&lt;BR /&gt;
Thank you very much for your help.</description>
      <pubDate>Thu, 04 Dec 2008 08:48:10 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/API-Module-DATA-Manager/m-p/131715#M6494</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2008-12-04T08:48:10Z</dc:date>
    </item>
    <item>
      <title>Re: API Module DATA Manager</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/API-Module-DATA-Manager/m-p/131716#M6495</link>
      <description>&lt;BLOCKQUOTE&gt;atila-diffusion wrote:&lt;BR /&gt;So, I have to fill the API_HotlinkNode structure with the 3 others and other parameters. But once the structure is filled, will the modul be pasted automatically to the scene?&lt;/BLOCKQUOTE&gt;
Sorry, I don't know the answer that. These functions are new with AC12 and I haven't had any need for them yet. Experiment a bit and let us know what you find. Someone like Akos could probably tell you more.</description>
      <pubDate>Thu, 04 Dec 2008 11:16:24 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/API-Module-DATA-Manager/m-p/131716#M6495</guid>
      <dc:creator>Ralph Wessel</dc:creator>
      <dc:date>2008-12-04T11:16:24Z</dc:date>
    </item>
    <item>
      <title>Re: API Module DATA Manager</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/API-Module-DATA-Manager/m-p/131717#M6496</link>
      <description>Hello,&lt;BR /&gt;
&lt;BR /&gt;
i continued to search for my issues and I found something which seems to be good :&lt;BR /&gt;
&lt;BR /&gt;
- I fill this structure : API_HotlinkNode&lt;BR /&gt;
(even if I do not succeed to fill many of parameters) :
&lt;PRE&gt;BNZeroMemory (&amp;amp;myAPI_HotlinkNode, sizeof (myAPI_HotlinkNode));

	//fill API_HotlinkUserData structure
	myAPI_HotlinkNode.userData.dataVersion=1;
	myAPI_HotlinkNode.userData.platformSign= GS::Act_Platform_Sign;

	//define single story mode
	myAPI_HotlinkNode.storyRangeType = APIHotlink_SingleStory;
	//define file type
	myAPI_HotlinkNode.type = APIHotlink_Module;
	//define file to load
	myAPI_HotlinkNode.sourceLocation = &amp;amp;location;

	//define update date
	myUpdateDate.year = 2008;
	myUpdateDate.month = 12;
	myUpdateDate.dayOfWeek = 4;
	myUpdateDate.day = 4;
	myUpdateDate.hour = 10;
	myUpdateDate.minute = 0;
	myUpdateDate.second = 0;
	myUpdateDate.milliSecond = 0;
	
	err = TIGetGSTime(&amp;amp;myUpdateDate,&amp;amp;myAPI_HotlinkNode.updateTime,TI_UTC_TIME);
	
	if (err != NoError) {
			sprintf_s (msgStr,sizeof(msgStr), "TIGetGSTime: %d ",(int) err);
					ACAPI_WriteReport (msgStr, true);
			return err;
		}

	//other parameters
	myAPI_HotlinkNode.refFloorInd = ind;&lt;/PRE&gt;

-use this fonction :
&lt;PRE&gt;ACAPI_Database (APIDb_CreateHotlinkNodeID,&amp;amp;myAPI_HotlinkNode,NULL,NULL);&lt;/PRE&gt;

and i use this one :
&lt;PRE&gt;ACAPI_Database (APIDb_CreateHotlinkNodeID,&amp;amp;myAPI_HotlinkNode,NULL,NULL);&lt;/PRE&gt;

I think that's the good way, but the last one creates a "APIERR_GENERAL" error code, i think that's because I do not succeed to fill many parameters in the sturcture.&lt;BR /&gt;
&lt;BR /&gt;
If someone know where is my error, that would be the biggest Christmas present oh this year &lt;IMG src="https://community.graphisoft.com/legacyfs/online/emojis/icon_smile.gif" style="display : inline;" /&gt;</description>
      <pubDate>Mon, 08 Dec 2008 16:00:46 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/API-Module-DATA-Manager/m-p/131717#M6496</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2008-12-08T16:00:46Z</dc:date>
    </item>
    <item>
      <title>Re: API Module DATA Manager</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/API-Module-DATA-Manager/m-p/131718#M6497</link>
      <description>&lt;BLOCKQUOTE&gt;atila-diffusion wrote:&lt;BR /&gt;i continued to search for my issues and I found something which seems to be good :&lt;BR /&gt;
- I fill this structure : API_HotlinkNode&lt;BR /&gt;
(even if I do not succeed to fill many of parameters) :&lt;BR /&gt;
and i use this one :
&lt;PRE&gt;ACAPI_Database (APIDb_CreateHotlinkNodeID,&amp;amp;myAPI_HotlinkNode,NULL,NULL);&lt;/PRE&gt;
I think that's the good way, but the last one creates a "APIERR_GENERAL" error code, i think that's because I do not succeed to fill many parameters in the sturcture.&lt;/BLOCKQUOTE&gt;
Have you tried enclosing your code between &lt;I&gt;&lt;/I&gt;&lt;S&gt;&lt;I&gt;&lt;I&gt;&lt;/I&gt;&lt;/I&gt;&lt;/S&gt;ACAPI_OpenUndoableSession&lt;E&gt;&lt;/E&gt; and &lt;I&gt;&lt;/I&gt;&lt;S&gt;&lt;I&gt;&lt;I&gt;&lt;/I&gt;&lt;/I&gt;&lt;/S&gt;ACAPI_CloseUndoableSession&lt;E&gt;&lt;/E&gt;? Some functions return that error if you haven't started an Undo session.</description>
      <pubDate>Mon, 08 Dec 2008 16:13:18 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/API-Module-DATA-Manager/m-p/131718#M6497</guid>
      <dc:creator>Ralph Wessel</dc:creator>
      <dc:date>2008-12-08T16:13:18Z</dc:date>
    </item>
    <item>
      <title>Re: API Module DATA Manager</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/API-Module-DATA-Manager/m-p/131719#M6498</link>
      <description>Hello,&lt;BR /&gt;
&lt;BR /&gt;
yes, i already enclosed my code between these functions.&lt;BR /&gt;
I think this error comes from the fact i did not fill these three parameters in the structure: &lt;BR /&gt;
&lt;BR /&gt;
  GS::uchar_t               name [API_UniLongNameLen];&lt;BR /&gt;
  GS::uchar_t               refFloorName [API_UniLongNameLen];&lt;BR /&gt;
  GSType                    ownerId;&lt;BR /&gt;
&lt;BR /&gt;
because I don't understand what are GS::uchar_t and GSType, so these parameters are important.&lt;BR /&gt;
&lt;BR /&gt;
I tried this : &lt;BR /&gt;

&lt;PRE&gt;res = CHANSI2Unicode ("Module1", GS::CStringLen, myAPI_HotlinkNode.name,API_UniLongNameLen, CC_Default, NULL);       
	res = CHANSI2Unicode ("1", GS::CStringLen, myAPI_HotlinkNode.refFloorName,API_UniLongNameLen, CC_Default, NULL);   

	myAPI_HotlinkNode.ownerId = 1295081318;&lt;/PRE&gt;

But i'm not sure at all.</description>
      <pubDate>Tue, 09 Dec 2008 08:34:51 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/API-Module-DATA-Manager/m-p/131719#M6498</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2008-12-09T08:34:51Z</dc:date>
    </item>
    <item>
      <title>Re: API Module DATA Manager</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/API-Module-DATA-Manager/m-p/131720#M6499</link>
      <description>&lt;BLOCKQUOTE&gt;atila-diffusion wrote:&lt;BR /&gt;yes, i already enclosed my code between these functions. I think this error comes from the fact i did not fill these three parameters in the structure: etc&lt;/BLOCKQUOTE&gt;
I haven't made any use of these functions yet, and the documentation is a bit thin. I think the best option is to PM Akos Somorjai - he is the API guru at GS, and has answered more than a few awkward questions for me.</description>
      <pubDate>Tue, 09 Dec 2008 11:16:34 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/API-Module-DATA-Manager/m-p/131720#M6499</guid>
      <dc:creator>Ralph Wessel</dc:creator>
      <dc:date>2008-12-09T11:16:34Z</dc:date>
    </item>
    <item>
      <title>Re: API Module DATA Manager</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/API-Module-DATA-Manager/m-p/131721#M6500</link>
      <description>Ok,&lt;BR /&gt;
&lt;BR /&gt;
i send him a PM, i'm waiting for his aswer.&lt;BR /&gt;
I continue to search and I'll let you know what i find.&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
thank you</description>
      <pubDate>Tue, 09 Dec 2008 13:02:19 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/API-Module-DATA-Manager/m-p/131721#M6500</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2008-12-09T13:02:19Z</dc:date>
    </item>
    <item>
      <title>Re: API Module DATA Manager</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/API-Module-DATA-Manager/m-p/131722#M6501</link>
      <description>hello,&lt;BR /&gt;
&lt;BR /&gt;
I succeeded to solve my error, i just had to do this :&lt;BR /&gt;
	myAPI_HotlinkNode.refFloorInd = -2;&lt;BR /&gt;
instead of this &lt;BR /&gt;
	myAPI_HotlinkNode.refFloorInd = 1;&lt;BR /&gt;
&lt;BR /&gt;
Now my module is saved in archicad, i now have to place it.&lt;BR /&gt;
&lt;BR /&gt;
i will succeed , i don't lose hope.</description>
      <pubDate>Wed, 10 Dec 2008 13:23:17 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/API-Module-DATA-Manager/m-p/131722#M6501</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2008-12-10T13:23:17Z</dc:date>
    </item>
    <item>
      <title>Re: API Module DATA Manager</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/API-Module-DATA-Manager/m-p/131723#M6502</link>
      <description>Do I have to use the database so as to past my hotlinkNodeID?&lt;BR /&gt;
&lt;BR /&gt;
may be something like this : &lt;BR /&gt;

&lt;PRE&gt;API_Region          clipRegion;
API_Element         element;
GSErrCode           err;

BNZeroMemory (&amp;amp;clipRegion, sizeof (API_Region));
clipRegion.box.xMin = 0.0;
clipRegion.box.xMax = 2.0;
clipRegion.box.yMin = 1.54;
clipRegion.box.yMax = 2.54;

err = ACAPI_Database (APIDb_StartClippingSessionID, NULL, NULL);
if (err == NoError) {
    /* ... */
    err = ACAPI_Element_Create (&amp;amp;element, NULL);
    /* ... */
    err = ACAPI_Database (APIDb_DoClipID, &amp;amp;clipRegion, NULL);
}
err = ACAPI_Database (APIDb_StopClippingSessionID, NULL, NULL);&lt;/PRE&gt;
&lt;PRE&gt;&lt;I&gt;
&lt;/I&gt;
i fond it in the documentation.

May be you know how to past un element??&lt;/PRE&gt;</description>
      <pubDate>Wed, 10 Dec 2008 14:53:54 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/API-Module-DATA-Manager/m-p/131723#M6502</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2008-12-10T14:53:54Z</dc:date>
    </item>
  </channel>
</rss>

