Options

TreeMapDemo

andyRandyR Member Posts: 27
edited 2009-10-29 in NAV Three Tier
Hi there,

in de 2009Sp1 DEMO VPC there is an interesting Addin. It is a Analysis Tree on Page Customer List. Is there a chance to extract the Addin fom the Virtual Machine and implement it in a own Database? I have already found the folder C:\Program Files\Microsoft Dynamics NAV\60\TreeMapDemo with the manual but there is a file missing (TreeMapDemo.Setup.msi). So, does anybody know where i can get this file.

Thanks and greetings
Andy

Answers

  • Options
    Marije_BrummelMarije_Brummel Member, Moderators Design Patterns Posts: 4,262
    AFAIK you can't. If you don't have the msi.

    MS does not seem very entousiastic to share them. My guess is that is has something to do with liability and support.

    They are just demo's, not fully working and supported parts of NAV.
  • Options
    kinekine Member Posts: 12,562
    What about folder ClientSetup in the NAV folder? ;-) there are .msi files...
    Kamil Sacek
    MVP - Dynamics NAV
    My BLOG
    NAVERTICA a.s.
  • Options
    Christian_AbelnChristian_Abeln Member, Microsoft Employee Posts: 42
    edited 2009-10-05
    Good to hear, that someone likes the TreeMap control :D
    And of course someone soon will figure out how this can be used in projects =D>
    But you don't have the license to do so! [-X (At least not yet.)

    But as you are asking, let me share some internals that might help you to understand this thing. (In case you want to create a more complex Add-in like a business data visualization yourself...)
      - The TreeMapAddIn consists of a few .Net libraries in the Add-in directory (TreeMap.Addin.dll, TreeMap.Control.dll). - The Add-in is registered in the Client Add-ins system table. - The TreeMap addin is utilized on Page 55558 - which is the Customer list place, and with the TreeMap instead of the list. - It binds to XML data which are delivered by a page variable. - The XML data is composed in C/AL code with the help of a data composing object (serverside COM object) which had been installed by the installer you are asking for. This is backed up by CodeUnit 55555. - The Installer in the "Client Setup" directory only covers the Client distribution mechanism.


    Now - if some parters really like to get this piece for evaluation, and are willing to invest time in experimenting, and perhaps even could consider the use in projects, then I would like to know.

    I can not promise that I will find a way to get this out to partners, and when this would be the case. Legal stuff has to be figured out and the distribution mechanism must be viable. (Mark, you are right: no liability terms or support like for the standard product - so you would need to be prepared to test this extremely well before using this in any way.)
    “This posting is provided "AS IS" with no warranties, and confers no rights.”

    Christian Abeln
    Program Manager Microsoft
    Dynamics NAV

    blogs.msdn.com/cabeln/
  • Options
    kinekine Member Posts: 12,562
    I hope that there will grow "open source" community around addins, but I am afraid that most addins will be commercial... :cry:
    Kamil Sacek
    MVP - Dynamics NAV
    My BLOG
    NAVERTICA a.s.
  • Options
    andyRandyR Member Posts: 27
    Hehe,

    yeah, i like the treemapdemo :-D.

    @Christian: How do you manage it, that the customer is opened by doubleclicking into the AddIn?

    Thanks and greetings
    AndyR
  • Options
    Christian_AbelnChristian_Abeln Member, Microsoft Employee Posts: 42
    The Add-in fires the OnControlAddIn trigger in C/AL code. It sends the message ID I have defined and that should open the taskpage ('101' in my case) and also send the ID of the data item, which has been clicked. By that the C/AL code can open the the card. (The TreeMap has received the ID for each item as part of the xml data. The ID happens to be the customer number.)

    Please note:
    - The TreeMap Control Add-in is generic and could be used for any data object.
    - The XML data builder is also generic
    - The supporting code unit 'TreeMapAddInCode' is also generic
    - Only the sample page '55558', where the TreeMap is used in the context of customers, is speific to the Customer object.

    You can also try other things:
    - When you navigate between the fields,the factboxes synchronize (right now not always, due to a bug...).
    - Change the filter in the filter pane and the TreeMap will nicely fade out data that had been filtered out or add data that came in.
    “This posting is provided "AS IS" with no warranties, and confers no rights.”

    Christian Abeln
    Program Manager Microsoft
    Dynamics NAV

    blogs.msdn.com/cabeln/
  • Options
    andyRandyR Member Posts: 27
    Hi Christian,

    what type of C# control did you use to show the customer list?
    I wanted to use a C# Form, but if i open the page, an error occures.

    Greetings Andy
  • Options
    henrikmhenrikm Member, Microsoft Employee Posts: 66
    I will do my best to answer this however I'm sure that Christian can elaborate further.

    I'm not sure exactly what you mean. However everything displayed in RTC is generated from pages inside NAV. The Analysis page shown is basically a ListPage without the data grid but only displaying the add-in.

    This control is created as an Add-in control and is hosted inside NAV 2009 using the standard mechanisms for hosting WPF controls inside a WinForms control (using an element host). More on that here: http://msdn.microsoft.com/en-us/library/ms745781.aspx

    To read more about how to create the control add-ins please click to the msdn page on the matter:
    http://msdn.microsoft.com/en-us/library/dd983700.aspx
    “This posting is provided "AS IS" with no warranties, and confers no rights.”

    Henrik Metzger, Software Development Engineer, Dynamics NAV
    MSFT
  • Options
    andyRandyR Member Posts: 27
    Hi, in every Walktrough the funkion Create Control() is overwritten ans a control is instantiated in the overwritten method (in the example on http://msdn.microsoft.com/en-us/library/dd983826.aspx it is a InkControl). So my question is, what type of Control is Chrisitan using to display the list.

    Thank you very much!!!
    Andy
  • Options
    henrikmhenrikm Member, Microsoft Employee Posts: 66
    I'm not sure exactly what list you are talking about in the TreeMap (can you please provide a screenshot?).

    If you are talking about the control returned by the overwritten method CreateControl then the control is based on a TreeMap control created in WPF but hosted via the before mentioned ElementHost. Thus the returning object to the CreateControl call is the ElementHost. The ElementHost then contains the WPF TreeMap control.

    The TreeMap control was made by Christian. The control is one of the controls which resides in the "Add-ins" subfolder of the Dynamics NAV 2009 SP1 installation.

    The base structure of a TreeMap control can be found here:
    http://www.bing.com/search?q=treemap
    http://en.wikipedia.org/wiki/Treemap
    “This posting is provided "AS IS" with no warranties, and confers no rights.”

    Henrik Metzger, Software Development Engineer, Dynamics NAV
    MSFT
  • Options
    andyRandyR Member Posts: 27
    Ahh ok, thank you very much.
  • Options
    henrikmhenrikm Member, Microsoft Employee Posts: 66
    you are welcome :)
    “This posting is provided "AS IS" with no warranties, and confers no rights.”

    Henrik Metzger, Software Development Engineer, Dynamics NAV
    MSFT
Sign In or Register to comment.