Creating a custom web service for Dynamic Navision - web-services

I am new to Dynamic Navision .On just going through the Dynamic Navision Solution I could find certain in-built Web Services.
Can those Web Services be customizable .
If so how can I make it possible.
Can I create a new Service with new Object Id .
I have searched for resources,but couldn't find any .It would be really helpful if someone suggest me with a good resource.

I think, more specifically you're looking for:
http://msdn.microsoft.com/en-us/library/dd339004.aspx
Creating a codeunit from within Microsoft Dynamics NAV.
Exposing the Web service.
Verifying the Web services availability.
Consuming the Web service from a console application that is created
in Visual Studio
Just make sure you have
Microsoft Dynamics NAV 2009 with a developer license.

You might like to give: http://msdn.microsoft.com/en-us/library/dd355036.aspx a read.

Related

Integration between custom system and Crm Dynamics 2016 Online

I'm working on Dynamics since about 1 year, and I'm working on "on premise" environments, and I don't know very much about online solutions.
I should now integrate 2 systems through webservice, and one of them involves Microsoft Dynamics CRM Online 2016.
What I'm trying to accomplish is that the custom systems sends data to the CRM Online through webservice.
I've read I just can't deploy my webservice and my logic as I've always done (separate web application that receives a Json or a XML through web services and works on CRM entities through the SDK).
So, do I need a separate machine to receive the XML and working on the CRM through the SDK?
In some posts I learn a little about Azure, but I don't know if it could be a nice solution. Should I get a virtual machine and then install IIS? Will my web app be visible by the custom system and able to work on the CRM online? Do I need a different service?
Thanks in advance and sorry for the confusion, it's the first time I'm trying to make CRM Online communicate with the outside.
So if I understand correctly your approach is 'custom system <=> your WS <=> CRM Online 2016
I've read I just can't deploy my webservice and my logic as I've always done (separate web application that receives a Json or a XML through web services and works on CRM entities through the SDK).
In CRM Online you don't have access to machine that CRM stands on so no folders, no inetmgr, no deploy.
So, do I need a separate machine to receive the XML and working on the CRM through the SDK?
Yes.
Should I get a virtual machine and then install IIS?
It doesn't have to be new virtual machine. It could be for example machine that custom system stands on ofc. if it can be configured to have access to the internet.
Will my web app be visible by the custom system and able to work on the CRM online?
It is matter of configuration of NAT, firewall etc.
Do I need a different service?
What service do you reffer here?

Calling an external API from Microsoft Dynamics Nav

I am researching how to integrate Microsoft Dynamics NAV with my existing REST API (built on Django REST Framework). What I would like to do is trigger API calls from NAV to CRUD objects via the REST API.
Reading the web services docs for NAV, it seems clear that NAV can expose a web service for other software to consume from. But can NAV consume 3rd party APIs? In the web services examples documentation, it says:
Solutions that need to execute business logic or read data from
Microsoft Dynamics NAV are candidates for Web service implementation.
These can also be solutions that write data to Microsoft Dynamics NAV
and validate the data using existing business logic.
Also, it gives the following example of how to use web services:
Execute any kind of business logic that is more easily developed and
managed in Microsoft Dynamics NAV.
However, I don't see any examples of data writing. It doesn't seem that in the exposure of web service pages or codeunits, there's a way to make calls to 3rd party APIs and execute business logic with the data that comes back within NAV. Is this actually possible?
Unfortunately not, no.
You do however have access to the full .NET framework from within the 'Development Client' of Dynamics NAV - When defining your variables select the Type of DotNet
It's far from perfect, so for larger tasks I'll create AddIns or completely external libraries (depending on version).
For something smaller like this I personally find it easiest to write it in C# as a small (console) app and the 'translate' it back into Dynamics NAV.
If you are looking for way to invoke a web service then why do you need Nav web services? Nav web services is a way to call Nav.
These can also be solutions that write data to Microsoft Dynamics NAV and validate the data using existing business logic.
This means if you invoke published Nav web service then you can pass data to your call and the data will be validated and saved to Nav. So this is about how to push data to Nav, not pull from external system.
If you want to invoke a web service from Nav consider this options:
Write external wraper library (as mentioned by #SeeSharp or as described). Then use it in C/AL as DotNet or Automation types of variables.
Use existing libraries like 'Microsoft XML, v6.0'.XMLHTTP60 right in C/AL to make http calls to your web service.
Do it Navision style.
Last damn option is to write console application that will consume your web service and call it from Nav using shell. This is not an option, I know.

Microsoft Dynamics CRM -- Do people build websites with it?

Forgive my ignorance, but do people build websites with Microsoft Dynamics CRM?
I have a potential client who says that is the technology they will use for a new web project, for which I would be doing the HTML templating. I want to learn all I can as I am new to this particular system, but I can't seem to find anything related to web building and CRM. Is it more likely the client is using another piece of technology that they are neglecting to tell us about?
Any experience or insight about this process is greatly appreciated!
You can't build website using MSCRM, but you can build ASP.Net website using CRM content easily. The API provided by MSCRM is a set of web services, that can be queried in a website to populate pages content.
Also, you can directly query the Database if you want ReadOnly content, and only for read-only content, because it is not supported to update/create data using SQL connections.
Note that it's required to have the external connector license to use any data in the CRM, thru the API and even thru direct SQL queries.
I have built a website using .NET, utilising the CRM4 API and database. All the website did was to submit queries to CRM using the CRM web services and metadata web services, and get data back. This company was already using CRM for their back end, so it's much easier for the front end to use the same database as well since it's a simple one.
The alternative would be to create an intermediate connector between the 2 systems -- backend and front end, which is not as efficient (for our case anyway).

Will SharePoint 2010 support Web Service Access?

It's my understanding SharePoint 2010 has introduced a new JavaScript API, a brand new assembly for Silverlight clients, but does anybody know if there will be still support for good old Web Service Access?
By old services, I am referring to the old interface
http://msdn.microsoft.com/en-us/library/dd878586.aspx
Yes SharePoint 2010 still has web services. Review this MSDN section for more information.
Essentially the new API's are there to help client side code run interesting code without having to use the Web Services. If you have ever tried utilising a webservice from Javascript you can understand the pain the new API's are trying to prevent.
The Web services are still supported. However, the data-retrieval oriented Web services should be considered semi-deprecated. Going forward, you shoul use either the client object model or ADO.NET Data Services to get data from a client.
I've been trying to figure out how to administrate the whole thing with whatever APIs are available. The MSDN documentation seems like what I need, except I feel stupid and can't find where those APIs are on my server. There are no URLs to be seen in the documentation. Am I blind?

How do I develop Salesforce API code for a custom object without Enterprise/Unlimited edition?

Background:
I'm building a small application that will be run daily, pulling data from our own in-house databases and sending it over to our corporate Salesforce instance. I've built a custom object (called Marqui_Instance) in our Salesforce instance to house the data. The app will be creating a couple hundred of these, and attaching them to various Account records.
The Problem:
Our Salesforce instance is Professional edition, which means I can't generate the WSDL for our instance, which makes me think I'm not going to be able to develop code that can create/edit/delete Marqui_Instance objects.
Before I start floundering around in the dark, I thought I'd post on here for advice. The only thing I can think of is to create an identical object in a Salesforce developer account, and use the WSDL from there... but then when I go to deploy the code in production, will it work? I'm scared that the WSDL from my dev account will have some guids or something similar, and my code will only work against the dev account.
If you get your application certified by Salesforce they will provide you with a "Partner Application API" token. Using this when establishing the Salesforce API session will allow your application to work with a professional edition org.
Alternatively, you can also obtain API access to a Professional Edition org by paying an additional fee. You will need to contact your salesforce.com sales person.
Update: Apparently the functionality is enabled by Salesforce internally using the informally named "Black Tab".
See also: Re: Use of the API and Salesforce.com Professional Version
Access to the web services API for Salesforce is only available in Developer, Enterprise, and Unlimited Editions.
I believe that you aren't allowed to login to the API, so even if you managed to generate a WSDL it wouldn't work.
See the full edition comparison chart [PDF].