Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations SkipVought on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Establishing an ODBC / ADO connection to MAS 90 5

Status
Not open for further replies.

Arnell

Programmer
Sep 18, 2002
4
0
0
US
This seems to be an issue for some so I thought I'd post my solution. We are using the ProvideX ODBC driver (version 3.2.2) to connect to MAS90 remotely. I have a VB application and am connecting via ADO to the MAS90 database without using a DSN. Here's the VB code with the connection string to get this to work (with, of course, some generic info):

mobjConn.Open "Driver={ProvideX 32-Bit ODBC Driver};Directory=\\Server\Share\MAS90\;UID=user;PWD=password;Company=ABC"

By specifying the default driver in the connection string you do not need a DSN. Using other attributes in this string (like "USER" or "PSWD" instead of "UID" or "PWD") resulted in the ProvideX login box popping up. If you specify the correct connect string you do not need to tell ADO to avoid prompting. In other words, this is the only line of code I have to execute prior to executing queries against the database. I suppose the attribute names depend on the driver. These are the attribtues expected by the ProvideX driver.
 
One more thing. You can find the name of the ODBC driver in the ODBC Data Source Administrator dialog. This is the same place you create DSNs (get there from the Control Panel). Just click on the Drivers tab and find the name of the driver you need in the Name column. Enclose the driver name in the connection string with curly brackets if there are embedded spaces.
 
Greetings Arnell

I have been struggling to get this to work. Have you managed to get something to work via asp? I have observed the VBA examples, but don't have the expertise, yet, to implement an asp /VB Script solution.

I eagerly await your resonse.

ABJ
 
ABJ,

I'm not an ASP expert but there should be no difference between the VB I provided and VBScript. Just ensure that you properly create an ADO connection object. However, if you are not using a Providex ODBC driver your connection string might require different parameters.

Hopefully this helps and sorry it took so long for me to respond.
 
Hey Arnell,

No problem regarding the timing.

So far your script / example was the closest in identifying a possible way for me to connect via asp. I am currently using;

mobjConn.Open "Driver={MAS90 32-Bit ODBC Driver};Directory=\\Server\Share\MAS90\;UID=user;PWD=password;Company=ABC"

The 'ProvideX' driver would not connect at all. I will be posting the errors that I've recieved. For now, here are some specifics regarding my single server configuration;

-WINNT Server as PDC
-Service Pack 6a
-MDAC6SP1
-IIS4 / Option pack and whatever version of ASP is associated.
-MAS90 (200) Version 3.41 - basic modules GL AP AR IM etc.
-MAS90 WebServer not installed

I have also tried using DSN according to another post (thread637-70589) but with no success.

In my next post, as I re-attempt to get this working, I will provide the errors that I am receiving. It is difficult and time consuming because in some code scenarios, the servers netinfo or inetinfo (I forget the exact name) application is observed to make the asp / web resouces unresponsive requiring many reboots - the cost for my various attempts.

Anyone out there that can help, let us talk.
twstdpairs on AIM, Yahoo and MSN.

Thanks.
 
Has anyone gotten this to work yet?

I've tried everything I've seen posted so far, to no avail. In addition, I've also done this:

I created an Access 2002 database on the web server, which uses a DSN to "link" to the table I want from MAS90. The Access database opens the table just fine, with no popup for login info...

Then I've tried to access that Access database directly via ASP/ADO... I can get local tables but not linked ones.. nor can I get queries based on the linked tables... I've also tried to make this Access database a "linked server" into SQL Server, it works, but again, not for the "linked" tables...

I've also tried to make MAS90 a linked server in SQL Server, again, same problem.

Please help! I just need to query one table in MAS90....

Travis
 
I am having trouble retrieving DATA from MAS90 via ADO/ODBC. I can connect to the database OK, but when I tray to create the recordset I get the error, "Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another."

Here's my code:

Dim CN As ADODB.Connection
Set CN = CreateObject("ADODB.Connection")
sConnect = "DSN=SilentSILCO"
CN.Open sConnect
SQL = "Select * FROM GL8_BudgetAndHistory"
Set rs = CN.OpenRecordset(SQL)

thanks in advance for your help
 
The ODBC driver you're using likely doesn't support the asterisk to specify all columns. Try explicitly stating each column name in the query.
 
Ok, I have got to the point where I get no errors, but the page just hangs and hangs as I see the browsers progress bar slowly creep forward. The page will actually attempt to load for around 5 minutes, maybe longer before it times out or something.

I am using an older version of Mas90 (client/server version) actually identified as Mas200 even though the installations cd's and GUI / Application splash image clearly say's 'Mas90'. The Driver included with our version is 'MAS 90 32-Bit ODBC Driver' - version 3.0. I have also installed the 'ProvideX 32-Bit ODBC Driver' - version 3.22, local (downloaded from I have tested in evaluation mode, not entering any serial # etc. until it has proven to work. Here is the code I have tried to use;

Set cnnGetString = Server. CreateObject("ADODB.Connection")
cnnGetString.Open "Driver={ProvideX 32-Bit ODBC Driver};UID=UID;PWD=********;Company=TST;Directory=\\Server\Share\Mas90\"

Set rstGetString = cnnGetString.Execute("SELECT VendorNumber FROM APR_Vendor1099Payments")

As mentioned earlier, I initially tried using the "MAS 90" driver since the ProvideX version was not installed on my system. I also tried creating System DSN's and File DSN's and uppon adding my password to the file (because the application does not write the password to file by GUI) I attempted to connect, but failed to fetch the data.

I have tried changing the order of the above configuration details(placing UID behind PWD etc), with and without trailing '\' in the directory path. I had even tried using the column name instead of asterisk but that didn't work. But now that Arnell pointed that out, I may give that more attention than earlier.

Lots of info, hope it helps.

ABJ
 
P.S. Through previous error messages and stuff, I realize the the Mas90 driver is probably ProvideX based or provided however, 'ProvideX' is not the name / string that our system identifies for ODBC connection. It is 'MAS 90' and why I refer to is as different than the 'ProvideX' driver which upon installation of version 3.22 local, is identified through connection as 'ProvideX'

ABJ
 
Forget my last post. I can't even make sense of what I wrote :). I must be on drugs - though all I've had all morning is some crab salad.
 
Hi

This thread has been helpful in my connecting to the MAS90 server using ASP. I am using the MAS 90 32-bit ODBC driver. The connect command does not complaint, but whenever I issue a simple select on any table for example 'Select * from IM1_INVENTORYMASTERFILE ' or sililar I get the following message '[ProvideX][ODBC Driver][FILEIO]Table is not accessible '.

Can someone throw some light on what is it thats going wrong here.

Any help will be greatly apprciated.

Thanks
Ritesh

 
Hi Again

I also tried using the Providex 3.22 driver.

This is confusing, there are two drivers - a client and a server. I installed the client driver on my machine and tried to import data into excel which I could earlier using the MAS90 32 bit driver. But with the new Providex driver, it says network not found even though I provide the IP or the Server name. Both my machine and the server are in the same segment. I did not install the Server ODBC driver because I do not know enough of MAS90 to roll back in case it starts disallowing users to access the server.

Any light here will help too

Thanks
Ritesh
 
I was getting the same error when I tried to access MAS90 data from a perl script on an Apache server (running on W2K).

I was able to correct the problem by assigning a user log-on to the Apache service in the services control panel. (since this is strictly an internal thing in my case, I used my user name and password).

It seems that the script was fine all along, but the Apache service didn't have enough rights to access ODBC.

(hopefully this can help lead you in the right direction)

-keith
 
In my case the server running the MAS90 is also the web server running IIS. So access is not the issue.

I can access the MAS90 files on the server from the server or elsewhere using the MAS 90 32-bit ODBC driver.

I dunno why the ASP code doesn't see the tables. Do I have to qualify the tablenames like ServerName.DBName.Owner.TableName etc.

:-((
 
hi,
I am trying to have the database connection string for SATOmas90 DSN name using ASP.net....If any one has done successfully, please do paste the code...
I am able to work with the same DSN using ASP, which is working fine....but I want to use ASP.NET.....

Regards
Pradeep
 
I get the below message when trying to connect to a MAS90 database on a Novell server from a Win2000 Server running IIS. The script was running fine on a WIN98 that used personal web server. When I moved it it would not work.

The message is very similar to BanoTek's problem. I tend to think it is a rights issue. I can connect using the ODBC driver fine and my script to open the DB is ok.

Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[ProvideX][ODBC Driver][FILEIO]Table is not accessible


Any help?
Banotek - did you find a solution????
 
OK - Here's the thing with the FileIO Error - IIS tries to access the directory/drive to get to the MAS90 files. However it does not have permissions to it - and therefore fails.

What you need to do is to first create a userid/password in the Administrative Tasks -> User Management. Then go the windows explorer and give permissions to this user to the MAS90 directory. Then go into the IIS settings and go to Security - assign this userid/password - do not let the IIS handle the userid which is normally something like IUSER_XXX. Once you do this you will be able to get across this problem atleast.
Let me know if this helped.
 
I see numerous folks who have tried to connect to MAS90 via ASP, and that most (all?) of them have failed. I have tried all of the remedies listed here, to no avail.

If you have a solution to this problem, could you please pass it along? Crash90, Banotech and others imply that they may have created workarounds. If so, I would be most interested in learning what you've done.

Thanks for your help.

Bill H.
 
Phazoo
You get the FileIO error coz the ASP script is unable to access the MAS90 tables/file (whatever the hell it is stored as). This happens because when you use ASP, it accesses the MAS90 directory using the permission set by IIS and this userid does not have access to the MAS90 directory.

So : you need to create a userid/password in the Administrative Tasks -> User Management. Give this user permissions to the MAS90 directory you are trying to access. Then in your IIS settings, go to Security - and use this userid/password.

This way, while you will still be using the same ASP script, the IIS userid/password will be the one you just created and which has access permissions to the MAS90 directory and you should be able to access the tables.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top