AxPath

AxPath proposal
AxPath is a protocol for activating Axapta forms. It is implemented by Tabax and Sidax. Additionally Tabax RC 1 contains plug-in for AxPath integration into browser. Axaptapedia supports AxPath in external URLS: [AxPath://AOT/Classes/SysSetupForm/designCanContain?line=4&pos=12 click here] for example

Introduction
Imagine that you have the ability to create links to everything in Axapta: forms, records, classes, business objects (for example orders). You can insert that link in the web page or e-mail and your correspondent can click on this link and open the item you linked to from a browser or an email client. For example you open Purchase order 'P0002', click the 'copy link' button and send a letter with words "look at order P0002 order" and somebody who have received this message can simply click on the link to open it.

This document describe how to introduce that kind of links

Implementation
This effect is achieved by the following:
 * introducing the new uri protocol
 * handling that protocol by Windows (including Opera, Internet Explorer and Firefox browsers)
 * communication between windows protocol handler and Axapta

Download link
AxPath.dll for [[Tabax] for Microsoft Dynamics AX 3, 4, 2009]

URI scheme
URI is formatted as any other uri (for example URI to this page is http://www.axaptapedia.com/index.php?AxPath) - protocolname://step1/step2 etc.
 * uri is starting with the protocol name 'AxPath'
 * it follows by the kind of link:
 * AOT - this is the link to some AOT Node
 * MenuItem - Axapta have to run given menu item and open form and navigate to the record given as parameter
 * Application - the next step is a name of the application following steps is other AxPath

Examples

 * axpath://MenuItem/Display/PurchTable?PurchID=P0002 - purchase order #P0002
 * axpath://Application/Test/MenuItem/PurchTable?PurchID=P0002 - purchase order #P0002 at the test application
 * AxPath://AOT/Data%20Dictionary/Tables/Address/Methods/axAddress?line=3&pos=12 - position 12 of the line 3 of axAddress method of the Address table

Protocol handling
The example of protocol handler implementation is the VSS protocol handler

What do you think about it?
Would you like to have an implementation of such proprotocol?

Please share your impressons here at discussion page

Or at blog post