Sunday, July 25, 2004

 

Update & E-Connect Setup Issues

Something went wrong and my computer started screwing up. IE stopped recognizing some commands like CTRL+ENTER, stopped doing autocomplete, task manager would stop showing the usernames, the date was moved back a few years. I have been using the same installation of Windows XP for about a year and a half now and have been wanting to do a fresh install. This was a perfect time so instead of figuring out what the problem was (one of my brother must have installed something weird on my computer) I decided to just do a clean install of everything on my computer.

Anyways, everything was going good except when I got to the eConnect installation part. When installing eConnect it asked me for the connection string so I went ahead and created it. I specified DYNAMICS as the initial catalog. Once the connection string was built I clicked 'Next' and got the following error:

Error -2147217865 Invalid object name 'dbo.Shield'. 

Now, I am working on figuring out whats the deal with that. Oh and by the way I am also planning on trying out SQL Server 2005 Express Beta :).

Sunday, July 18, 2004

 

First Steps

I surfed the web before getting started and found a tool called TcpTrace which prooved to be really useful when it comes to web services. I would advise that you should check it out too.

I started out with the simple Hello World web service that is created when you create a new web service in Visual Studio. After running the web service, I ran the following perl script.

#!/data/Perl/bin/perl -w
##!/usr/bin/perl -w

use SOAP::Lite;

my $webserviceURL = "http://localhost:8989/eConnectWebService/eConnectService.asmx";

print SOAP::Lite
-> uri("http://xxxx.com/webservices")
-> proxy($webserviceURL)
-> HelloWorld()
-> result;


Guess what? The above didn't print anything... Looking at the data returned to TcpTrace by IIS I saw "System.Web.Services.Protocols.SoapException: Server did not recognize the value of HTTP Header SOAPAction: http://tempuri.org/webservices#HelloWorld."

Doing some reasearch on the web I found out that I Microsoft prefers "URI/HelloWorld" instead of "URI#HelloWorld" in the request that is sent. The solution was to tell SOAP::Lite to replace the / with #, this can be accomplished by:

use SOAP::Lite
on_action => sub { return '"' . join('/', @_) . '"'}
;


The above solved this problem, and now I was able to print "Hello World" to the console!


 

Zone Alarm and Visual Studio .Net

I spent a few hours trying to figure out why I can't create a web service in Visual Studio .Net 2k3. I even reinstalled Visual Studio but that didn't solve the problem. Everytime Visual Studio would give the following error:
"Contacting server to create visual studio web project 'WebService1'"
I was about to reinstall windows because I saw a post on expert exchange that said that the person just ended up reinstall windows. I did one last search on google thinking that maybe someone would have figured out the issue and guess what? Someone actually had a solution. It turns out that the problem was caused by the Zone Alarm firewall (which I just happened to be using also). So I shutdown Zone Alarm, fired up VS.Net, and created a project. This time it worked fine!

Looking on Zone Alarm's support website I ended up on this thread according to which they have acknowledge the issue and are working on a solution. According to that thread there will be a fix release in mid July, so I am planning on not using Zone Alarm till then (mostly because lately I have been using my computer at home, which is behind a firewall anyways).

Just a heads up to anyone who might face this problem. I think this problem is only with the latest version of Zone Alarm, 5.0. The exact version of Zone Alarm that I am running is 5.0.590.043.

Saturday, July 17, 2004

 

The Goal and Approach

The Goal
My goal is to interface a perl based service with GP. I have to build classes in perl that will support browsing of customers, their transactions, and all the other good stuff.

The Approach
As far as I know the only option that I have is to use SOAP. For this I will need to create a web service that will run on Windows and then make the perl pieces talk to this web service. I have decided to use C# .Net to create the web service.

According to the eConnect manual there is a .Net dll (eConnect_API.dll) in the eConnect directory (C:\Program Files\Microsoft Great Plains\eConnect7\MBS eConnect EAI Incoming Service) but I couldn't find it there or anywhere else. Instead of spending anymore time looking for this dll I decided to use the COM dll.

 

Introduction to Everything

This is where I start. Ideally I would like to give an overview of Great Plains before diving into the details but again, I don't have too much time and most of the information in available on Microsoft's Great Plain website (or so you would think :)). Anyways, here just a brief overview of Great Plains...

Great Plains
Great Plains (GP) was an accounting software offered by a company called Great Plains Software, Inc. I say 'was' because it was bought out by Microsoft in April 2001 and is now part of Microsoft. I haven't had to deal with any of the previous versions of GP but my latest interaction with GP 7.5 hasn't been the best one. I admit that this is a humungous application and probably requires a lot of upfront training but I still took on the challenge!

eConnect
eConnect is the API provided by Microsoft for GP. This provides several different ways that can be used to connect to GP (including MSMQ, Biztalk, SOAP).



Friday, July 16, 2004

 

Starting Out

Introduction
I have always tried to keep a website where I can share what I have learned. Also, I have been told that we remember only 20% what we learn everyday. So, this is my attempt at increasing that percentage.
 
What you will find here
Most of the stuff will be technical (computer related) but sometimes I might talk about odd things (like life). Starting out I will probably explain my Great Plains integration experience since thats one thing that I have spent some time on and will probably be spending more time on.
 
 
Make sure you comment about what I say, good or bad... don't care... I am always up for a learning lesson.
 
Cheers!

This page is powered by Blogger. Isn't yours?