How do I call NAS from Clients

ashu_gargs
Member Posts: 16
Hi All,
I want to route the posting documents through MSMQ. I am able to create the Write and Read Queue. The problem that i am facing is, when sending a message to MSMQ it's sent from the client's machine and to the local MSMQ client installed on the client's machine.
How can i trigger creation of this Queue from NAS as soon as user clicks on the Post button from Nav Client??? this will help me in installing MSMQ server on NAS server only and not on the clients..
Any alternative method for this???
Please help.....
I want to route the posting documents through MSMQ. I am able to create the Write and Read Queue. The problem that i am facing is, when sending a message to MSMQ it's sent from the client's machine and to the local MSMQ client installed on the client's machine.
How can i trigger creation of this Queue from NAS as soon as user clicks on the Post button from Nav Client??? this will help me in installing MSMQ server on NAS server only and not on the clients..
Any alternative method for this???
Please help.....
0
Comments
-
Hi
What DLL are you using with the queues ???
You can try to send the documents directly to the server's queue.
I get it using CPHandler DLL (Navision uses this to manage commerce portal). This DLL's functions, allows you to pass a windows registry path as a parameter to know where the queue is.
You can add a reference in Windows registry to a queue stored in the server and when you post the document the queue used will be th servers queue. Now you can use NAS to retrieve the document from a queue and save it in a directory.
Example:
My servers's queue is MYQUEUE
I added in windows registry this key
In LOCAL_MACHINE\SOFTWARE\QUEUES\SERVERQUEUE
The key is Direct=OS:Server\Private$\MYQUEUE
In Navision I declared an automation (MYQUEUES) using CPHandler.
And a XML Doc (for example, it works with file variables)
IF ISCLEAR(MYQUEUES) THEN
CREATE(MYQUEUES);
IF ISCLEAR(XMLDocOUT) THEN
CREATE(XMLDocOUT);
XMLDocOUT.load('c:\MyXML.xml');
Cola.SendToLabel('MYQUEUES',XMLDocOUT,1,0'SOFTWARE\QUEUES\SERVERQUEUE',FALSE);
This instruction, send the doc to the queue referenced in this registry path with the name MYQUEUES, in this case to servers queue
I think this can help you
Bye0 -
No it's really not that complicated... The queue path defined in your system is probably defined as '.\private$\somequeuename', where the dot at the start means the current machine. If you replace the dot with the machine name that holds the queue, or the IP address, you should be all set.0
-
Thanks buddy .. now it's working from clients also by just changing the path of the queue....
One more query ... how can i make MSMQ to wait before sending the second, only once some codeunits are successfully run for the first message.0
Categories
- All Categories
- 73 General
- 73 Announcements
- 66.6K Microsoft Dynamics NAV
- 18.7K NAV Three Tier
- 38.4K NAV/Navision Classic Client
- 3.6K Navision Attain
- 2.4K Navision Financials
- 116 Navision DOS
- 851 Navision e-Commerce
- 1K NAV Tips & Tricks
- 772 NAV Dutch speaking only
- 617 NAV Courses, Exams & Certification
- 2K Microsoft Dynamics-Other
- 1.5K Dynamics AX
- 320 Dynamics CRM
- 111 Dynamics GP
- 10 Dynamics SL
- 1.5K Other
- 990 SQL General
- 383 SQL Performance
- 34 SQL Tips & Tricks
- 35 Design Patterns (General & Best Practices)
- 1 Architectural Patterns
- 10 Design Patterns
- 5 Implementation Patterns
- 53 3rd Party Products, Services & Events
- 1.6K General
- 1.1K General Chat
- 1.6K Website
- 83 Testing
- 1.2K Download section
- 23 How Tos section
- 252 Feedback
- 12 NAV TechDays 2013 Sessions
- 13 NAV TechDays 2012 Sessions