NAV 2009 SP1 brings developers new possibility to extend RTC with own visual controls. Clear step by step description how you can create own addin is described in
this Blog.
I recommend to read the article to know what is possible in the NAV 2009 SP1.
Comments
RTC it's getting better and better...but it looks like I have to learn some C#...
btw...nav is moving in this direction... :roll:
*edit: i wonder if we will be able to implement something like an OnMousePos trigger...i have to read the post more carfully and wait for the real product to come out
"Never memorize what you can easily find in a book".....Or Mibuso
My Blog
In some future versions there will be (may be) event support for the control (each event will have trigger in NAV), but not now...
MVP - Dynamics NAV
My BLOG
NAVERTICA a.s.
Maybe i wrote some ridicolous things :oops: (i don't know C# and object oriented programming), i'll correct my post after investigating some more. Thanks for now
"Never memorize what you can easily find in a book".....Or Mibuso
My Blog
MVP - Dynamics NAV
My BLOG
NAVERTICA a.s.
- An event triggers when using addin (to be simple: push a button in a winform)
- The addin trigger calls the predefined C/al trigger passing a "developer-defined" ID in order to let nav know what add-in event is triggered(integer or text)
- The C/al trigger execute some code
But...can data be retrieved and or send to the add-in control? (maybe future blog posts will explain this... :-k )
"Never memorize what you can easily find in a book".....Or Mibuso
My Blog
This posting is provided "AS IS" with no warranties, and confers no rights.
Yes, but what about case when I have some customized edit box, it means the text to which it is bounded, is used as data, but I need to push some more data to the addin (not only the data string, but some settings or something like that)? Will it means that I need to envelop the data and settings into the string, pass it into the addin, and when saving, remove them and save only the plain data?
MVP - Dynamics NAV
My BLOG
NAVERTICA a.s.
thanks!
"Never memorize what you can easily find in a book".....Or Mibuso
My Blog
MVP - Dynamics NAV
My BLOG
NAVERTICA a.s.
"Never memorize what you can easily find in a book".....Or Mibuso
My Blog
This posting is provided "AS IS" with no warranties, and confers no rights.
Ok, good to know. Do you think that there is some way around through using the functions in the dlls which are in the client folder? I can do databinding etc. with them... but I do not have enough knowledge about the model yet...
MVP - Dynamics NAV
My BLOG
NAVERTICA a.s.
This posting is provided "AS IS" with no warranties, and confers no rights.
I tried to develop a simple add-in like the one descripted on msdn: http://msdn.microsoft.com/en-us/library/dd983804.aspx
After 1h and a half i managed to get it work, but i have some questions:
1. can i call methods of the add-in from C-al code?
2. can i use add-ins on list pages?If yes, how?and why the descripted add-in does not work?
3. can "onControladdin" trigger be fired from C/al? (i don't think so)
4. consider this situation: I developed an add-in that must be used from every textbox in Nav and there's some code in the oncontroladdin trigger: Do I have to copy-paste the property and the code in each control?Or is there an Onglobalcontroladdin that can be overwritten?
5. About the sample control add-in described in the link: how can i color the text?(this is a C# development question)
6. What about future versions?I mean, is it useful to spend time with these add-ins or will them be replaced by something else? (e.g.: when C# development for nav will take effect)
Thanks in advance
"Never memorize what you can easily find in a book".....Or Mibuso
My Blog
4. I am afraid that you need to copy all what you need, there is no "global" way. Addin is there to replace some specific fields, not "change" the whole interface in general...
5. I think it is Control.Font.Color
6. They will not be replaced, they will be extended... :-)
MVP - Dynamics NAV
My BLOG
NAVERTICA a.s.
"Never memorize what you can easily find in a book".....Or Mibuso
My Blog
MVP - Dynamics NAV
My BLOG
NAVERTICA a.s.
customer name is blue if his balance is <0, otherwise it is yellow.
(i know that there's a new property that support some formatting, but i'm here to learn add-ins)
"Never memorize what you can easily find in a book".....Or Mibuso
My Blog
think about a rec.DELETEALL run from mousehover of "customer name"...really bad joke to the customer!!(and to yourself)
"Never memorize what you can easily find in a book".....Or Mibuso
My Blog
It is not easy to do that, because you need to pass the info through the text of the control, or use e.g. BigText as source expression for the control and fill it with all data which the addin needs and where it will return what you need... (you can pass whole XML file to the addin in this way - I recommend to look at this webcast if you are MS partner and you have access to trainings).
MVP - Dynamics NAV
My BLOG
NAVERTICA a.s.
In other words, kine, you're saying that now there's not an easy way to create add-ins which depends from the actual content of the page... :-k
"Never memorize what you can easily find in a book".....Or Mibuso
My Blog
MVP - Dynamics NAV
My BLOG
NAVERTICA a.s.
The developer have to program just 20 lines of code in c# and he's done.
Just follow http://msdn.microsoft.com/en-us/library/dd983804.aspx to create/register the dll (it was an hard work for me ](*,) ). Then delete the code in it and make something like this:
"Never memorize what you can easily find in a book".....Or Mibuso
My Blog
- COM is method / event oriented communication
- Add-ins use a document based communication:
+ Bind the Add-in to data (simpple value or even XML through BigText / Blob binding
+ Add-in receives data through binding, can be asked to deliver changed data when saving and can initiate saving
+ Add-ins can fire one generic to trigger C/AL code (message id / text)
It can be really harder to encapsulate a strong method / event oriented interfacing of COM objects into the document based communication. If you have control on the COM objects, it might be easier to rewrite those and replace the interfacing with a document based communication. (I have seen a case, where this document based communiation was even much better for the purpose of what those COM objects in this case were doing.)
Christian Abeln
Program Manager Microsoft
Dynamics NAV
blogs.msdn.com/cabeln/
thanks in advance
"Never memorize what you can easily find in a book".....Or Mibuso
My Blog
"Never memorize what you can easily find in a book".....Or Mibuso
My Blog
"Never memorize what you can easily find in a book".....Or Mibuso
My Blog
MVP - Dynamics NAV
My BLOG
NAVERTICA a.s.