Solved

What is best for AS/400 Connection?

Posted on 2000-04-10
18
403 Views
Last Modified: 2010-04-04
I have seen the following AS/400 solutions:

Delphi/400 - http://www.borland.com
Delphi/400 - http://www.systemobjects.com
   the first two might be the same, I don't know.
ACE/400 - http://www.missystems.com

So, anyway, all I want to do is create an interface between some data on the AS/400 and post that data to some other table, like paradox.

The above packages seem to be overpriced for what I am searching for.  Does anyone know of a way that I can simply login, grab the data through SQL, and post it somewhere else?

If not, what package is best?
0
Comment
Question by:perkley
  • 8
  • 5
  • 5
18 Comments
 
LVL 1

Expert Comment

by:heapsteratwork
Comment Utility
Ive just spent ages looking into this...

Ive tried OLE DB, IDAPI native driver, System Objects native components, ODBC and JDBC.  And the winner was... ODBC, in terms of performance and flexibility.  You could easily achieve your task using ODBC. Im using the client access odbc driver, which i recommend, and it doesnt require a distribution license.

However, you do need an as/400 driver of some description.

http://www.as400.ibm.com/clientaccess/
0
 
LVL 2

Expert Comment

by:NetoMan
Comment Utility
I already worked with something like you want.

Well I supose you have or you can have a PC/Windows client.

First: You can logon to an AS400 system creating the apropiate AS400 ODBC Alias.
Use the AS400 Connections to create the apropiate connection, then reference this item from the ODBC Alias. Now you are ready for use it from Delphi. However, I recommend to you to use ODBCExpress Components. They are easy-to-use and work very fine for me even for write into AS400 Tables.

My job was reading data from AS400 from my PC/Windows, Manipulate this data in Delphi and then write them in Oracle (or any databse). In the same way, in some case I read from Oracle in Windows environment an then write records into a remote AS400 system.

If you need more information or step by step configuration for the conection, please leave a message here.

:) NetoMan
0
 
LVL 1

Expert Comment

by:heapsteratwork
Comment Utility
I would avoid as/400 specific components - surely its better to use standard delphi db aware components.  I ve written an app that configures your odbc settings (through the registry), and youll need a bde alias (as you cant access the client access driver directly through delphi), then its just like working with any other db client app.  
0
 
LVL 2

Expert Comment

by:NetoMan
Comment Utility
heapsteratwork & perkeley:

Using this ODBC Express Components allow you not to depend on BDE. You can create applications "free-on-the-run" that not need to bypass BDE structures and the need of its configuration (that is proven to slowdown performance: thats why InterBase is free BDE access in Delphi 5.)

However I only mentioned that tip for a performance option. You can use an ODBC Alias using standart Delphi components.

:) NetoMan
0
 
LVL 1

Expert Comment

by:heapsteratwork
Comment Utility
so do the odbc express components come with free drivers?
0
 
LVL 2

Expert Comment

by:NetoMan
Comment Utility
Of course not... In the same way that BDE, you need the ODBC driver for any data platform you want to connect.

my point is the difference of using BDE or not in performance of accesing data:

Delphi -> BDE -> ODBC -> AS400 System

with ODBC Express or Another "avoid-of-use-BDE component" :

Delphi -> ODBC -> AS400 system

Maybe there are in the market a component to access tables of AS400 in direct way, like DirectOracle components do for Oracle that makes something like this :

Delphi -> Oracle

But I think this is going to far and making to much performance improvement that only works for a heavy transactions. However if  perkley doesn´t need to read/write large amounts of data, a simple BDE Access with ODBC is suggested.

:) NetoMan

0
 
LVL 1

Expert Comment

by:heapsteratwork
Comment Utility
Ive looked at the components and they seem quite good.  With my application its got to be as portable as possible, being able to 'plugin' any dbase, whether driven by odbc, native drivers, whatever.  If i went for these components, i would have to use odbc drivers for all my db access - right?
The other worry is im locked into delphi3 here.
0
 
LVL 2

Expert Comment

by:NetoMan
Comment Utility
Yes... the best thing here is portability of your apps and as I comment, you need the driver for each database you want to connect to. (but I think you can get it from the internet without problem as you say for Client Access)

Not sure if ODBCExpress has a version for Delphi3. I worked for years with this components in Delphi 4 and works very fine for me.

NetoMan :)
0
 
LVL 1

Expert Comment

by:heapsteratwork
Comment Utility
I can see  your point about the BDE, im not disputing that, i forgot to mention performance is not an issue in my app, so i can afford to turn to the more portable types of solutions.  Ive benchmarked ODBC through the BDE and BDE native, and both proved easily quick enough for what im doing.  

I agree BDE and ODBC is simplest way to get started.  Its only a data migration task anyway...

cheers. ;-)
0
How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

 

Author Comment

by:perkley
Comment Utility
Okay, here is what I am going to do.  If you both help me get connected, I will give you both 50 points each.

I am not accepting the answer right now, so that you will help me.

I am not very familiar with AS/400 at all.  I am not the AS/400 administrator, but whatever I tell them, they will do.  So I need step through instructions on how to get connected to the AS/400 and what I am looking for once connected.

0
 
LVL 2

Expert Comment

by:NetoMan
Comment Utility
First:

You dont have to ask anything to the AS400 administrator except that he will have to give you a valid account (username and password) to let you access the appropiated tables of the AS400/System you want.

Second :

You need to check if in your PC you have already AS/400 connections module form ClientAccess software. If you don´t  have it, you must install it. Check the adress below for more information in how to get only the ODBC driver :

http://www.as400.ibm.com/clientaccess/

but I recommend to install the hole ClientAccess Software because this allow you to check and test the connections.

I´ll wait until you tell me the status of this two tasks




0
 

Author Comment

by:perkley
Comment Utility
Yes, we do have ClientAccess Software setup.  What next?
0
 
LVL 2

Expert Comment

by:NetoMan
Comment Utility
Ok, then check if you already have a AS400 connect access item from "AS400 Connections" to this desired system. If you don´t, must create them. (If you already have an application that use an AS400 connection from your PC to this system then you don´t need to do this. )

To create it you must provide the IP of the remote AS400 System, the user and the password to access it. All this from New Connection in "AS400 Connections"

Then you must try to connect to AS400 opening this item only to check if was seeting ok.

NetoMan
0
 

Author Comment

by:perkley
Comment Utility
You are saying in "AS400 Connections".  What is AS400 Connections?  Is it on the PC or on the AS400 machine itself?
0
 
LVL 2

Expert Comment

by:NetoMan
Comment Utility
Its in your PC.

Look in the ClientAccess Group of programs. (Sorry, in this moment I´m not in my computer with ClientAccess software).

Is some program Called AS/400 Connections or something like that
0
 

Author Comment

by:perkley
Comment Utility
OK, I am not actually at the system myself, it is at another building, I just called and they told me they had the ClientAccess setup already.  So, I don't know if I will get over to it today or tomorrow.  Thanks for the help, and if you don't mind, please post the next step, so that when I do get to go look at it, I will know what to look for.  Thanks.
0
 
LVL 2

Accepted Solution

by:
NetoMan earned 50 total points
Comment Utility
Ok...

I´ll check it on my Pc. These are the steps for create an AS/400 connection

1. In client Access AS/400 Programs Group look for "AS/400 Connections".

2. Choose "New"

3. You must provide in this order :  
-  Protocol to use : I used TCP/IP
-  system Name (I you don´t know it, just put the IP Adress.
- If in the last step you already put the adress this not apply and go to next step. If you put the system name, this step try to converts the system name to its IP Adress.
- User Id from AS400 system
- choose Default view. If the system let you login to a application like JDEdwards or another, you may choose in emulation mode. Perhaps for delphi we need "connect only"
- Test the connection. If this fail you must have to reconsider the IP adress or the system name.

If everythig was ok, then you have the AS400 Connection ready.

Then From ODBC Administrator you must create the ODBC Alias to point to this AS400 item.

From ODBC Administration :

- Click on Add button
- Select Client Access Driver
- Fill DatasourceName with the name you want it to access from delphi
- Fill description
- Choosse in the System Name the one that you already created from AS400 Connections

There are a lot of configuration things in other tabs but in the must of the cases those not apply for this case.

Next step is test the ODBC Connection from Delphi.



0
 

Author Comment

by:perkley
Comment Utility
k, thanks, I will try this and let you know if I have any problems.
0

Featured Post

Find Ransomware Secrets With All-Source Analysis

Ransomware has become a major concern for organizations; its prevalence has grown due to past successes achieved by threat actors. While each ransomware variant is different, we’ve seen some common tactics and trends used among the authors of the malware.

Join & Write a Comment

The uses clause is one of those things that just tends to grow and grow. Most of the time this is in the main form, as it's from this form that all others are called. If you have a big application (including many forms), the uses clause in the in…
This article explains how to create forms/units independent of other forms/units object names in a delphi project. Have you ever created a form for user input in a Delphi project and then had the need to have that same form in a other Delphi proj…
This video discusses moving either the default database or any database to a new volume.
When you create an app prototype with Adobe XD, you can insert system screens -- sharing or Control Center, for example -- with just a few clicks. This video shows you how. You can take the full course on Experts Exchange at http://bit.ly/XDcourse.

762 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

6 Experts available now in Live!

Get 1:1 Help Now