Link to home
Start Free TrialLog in
Avatar of 1eyed
1eyed

asked on

Can I update a linked table on an iSeries using MS Access?

Hi all,

I have set up a query and form to 3 linked tables on an iSeries. (using iSeries Access ODBC Driver v9.00.02.02 and Access 2003)

I would like to give the people using the form the ability to edit just one of the fields in one of the tables.

I've done some looking around the net and found a few tutorials that make this process seem so easy but...

no matter what I do I can't seem to type into the field.

Does anyone have step by step instructions on how to do this?

I'm not sure if this is a very difficult process, I'm not an expert at Access so it's all a mystery to me.

I'll give 500 points for a way of doing this that a guy who typically writes in crayon can follow.

Thanks in advance for your help.
Avatar of Scott McDaniel (EE MVE )
Scott McDaniel (EE MVE )
Flag of United States of America image

Assuming an "iSeries" is an server of some sort ???

What's your query? If your query is updateable, you can simply include the field on your form and your user will be able to update it. If your query is NOT updateable, then you'll have to rewrite your query. A query which contains aggregate functions (SUM, AVG, etc) isn't updateable, and a query containing GROUP BY is not updateable.

Post the SQL behind the query ... open the Query in design view, select View - SQL and copy/paste all that here.
Avatar of tmharvey
tmharvey

Also your users will need to have write access to the iSeries datasource. Typically ODBC links are read-only
Cheers...Terry
Avatar of 1eyed

ASKER

Sorry about that. An iSeries is the new name for an IBM AS/400.

I think the query is very simple, just pulling some information from the tables. Here is the SQL:

SELECT R37FILES_VCOHEAD.OAFOBP, R37FILES_VCOHEAD.OAENTR, FDS_FDSHEAD.FDUSER, FDS_FDSHEAD.FDCRDT, FDS_FDSHEAD.FDITD1, FDS_FDSPDREQ.RQMO, FDS_FDSPDREQ.RQQTY, FDS_FDSPDREQ.RQITEM, FDS_FDSPDREQ.RQCRDT, FDS_FDSPDREQ.RQCOMM, FDS_FDSHEAD.FDNOTE
FROM (R37FILES_VCOHEAD INNER JOIN FDS_FDSHEAD ON (R37FILES_VCOHEAD.OAORD = FDS_FDSHEAD.FDSO) AND (R37FILES_VCOHEAD.OABOCD = FDS_FDSHEAD.FDSOBACK) AND (R37FILES_VCOHEAD.OACMP = FDS_FDSHEAD.FDCMP)) INNER JOIN FDS_FDSPDREQ ON (FDS_FDSHEAD.FDSO = FDS_FDSPDREQ.RQSO) AND (FDS_FDSHEAD.FDSOBACK = FDS_FDSPDREQ.RQSOBACK) AND (FDS_FDSHEAD.FDMO = FDS_FDSPDREQ.RQMO);


The table/column that I am trying to write to is FDS_FDSHEAD.FDNOTE

The ODBC connection type is set to: Read/Write (All SQL statements allowed) I don't know if that makes any difference.


Thanks for the input so far.
Avatar of 1eyed

ASKER

Hi again,

Came up with a temporary solution. By modifying my report to only use one table and I can now write to it.
The people using the reports open the original report to view the data and have a second window open with the 2nd report to modify the needed field.

Kinda cheesy but it works for the moment.

Another thing I found is this article:

http://support.microsoft.com/default.aspx?scid=kb;en-us;304179&Product=acc2003

I'm not quite sure how to do that on the iSeries but will keep you updated as to the progress.
ASKER CERTIFIED SOLUTION
Avatar of modulo
modulo

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial