Premise Custom Logic Blocks

Motorola Premise

mhilbush

Member
I followed the directions to set up a Custom Logic Block as described on pages 22-32 in the Premise Builder Examples document. Seemed straightforward enough.

Before creating my own custom logic blocks, I created the example Increment and Emailer blocks, which I was able to add to one of my logic diagrams. Everything worked as expected, until I closed and restarted the Premise Builder app. After restarting the Builder, the custom blocks were no longer visible in my logic diagram. All the other standard blocks were there -- just not the custom ones that I had just created. The classes associated with the custom blocks still appear in the Explorer window, and the custom blocks still show up in the FunctionBlock list in the Palette.

This really doesn't make much sense to me, and I suspect I'm missing something obvious. I set all the properties exactly as instructed in the Premise Builder Examples document. I even went through the process a couple times, just to make sure I didn't miss a step.

Any help would be appreciated.

Thanks,
Mark
 
Any chance you can post an example xdo file with the logic diagram and custom blocks? I don't use logic diagrams normally (most everyone uses scripts), but I can take a look sometime next week.
 
Asking for the xdo files was a great suggestion, as it has revealed what may be the problem.

Attached is a zip archive containing 3 xdo files:

CustomLogicBlocks.xdo
This is the module containing two custom logic blocks (SendEmail and Increment)

Occupancy-Logic-CustomLogicBlockTest_before.xdo
This is an export of the logic diagram taken immediately after the diagram was created in Premise Builder. The logic diagram is located in the Logic section of the Occupancy module (note I just exported the logic diagram, not the whole Occupancy module).

Occupancy-Logic-CustomLogicBlockTest_after.xdo
This is an export of the same logic diagram after I closed and restarted Premise Builder.

So, the sequence is:
- create logic diagram
- export logic diagram
- close Premise Builder
- open Premise Builder
- export logic diagram

Note that the 2 lines associated with the custom logic blocks have changed from:
<Object ID="{A367F12C-AD4D-49E0-9F57-CA6E51943977}" Name=" " Flags="0x2" Class="sys://Schema/Modules/CustomLogicBlocks/Classes/SendEmail" LastSend="12/30/2010 7:53:07 AM" Left="668" Top="153" />
<Object ID="{5E8AE066-1A8F-4C79-BA3B-EE7333416FBB}" Name=" " Flags="0x2" Class="sys://Schema/Modules/CustomLogicBlocks/Classes/Increment" Left="475" Top="157" />

to:
<Object ID="{A367F12C-AD4D-49E0-9F57-CA6E51943977}" Name=" " Flags="0x2" Class="sys://Schema/System/Object" LastSend="12/30/2010 7:53:07 AM" Left="668" Top="153" />
<Object ID="{5E8AE066-1A8F-4C79-BA3B-EE7333416FBB}" Name=" " Flags="0x2" Class="sys://Schema/System/Object" Left="475" Top="157" />

So, now I see what's happening; however, I have no idea how to fix it. Any thoughts/ideas -- other than not using this feature of Premise ;)

Thanks,
Mark
 

Attachments

Hmm... Looks interesting. I think the only suggestion I might have is to try entering expert mode before you create the custom logic blocks and see if that helps. Another long shot is to explore using a different flag; 123 posted a list of flags on here somewhere.
 
I found this post, which fixed my problem.

http://www.cocoontech.com/forums/index.php?showtopic=10009&st=15

The custom logic block classes must be in the Default module. I wish I had found this post earlier...

Mark
 
Back
Top