PDA

View Full Version : [CLOSED]AutoCode - RPG program not compiling


dlstrawn
03-25-2010, 02:49 PM
I am attempting to generate a file maintenance program for file DP1000L1. It is giving me the error "RPG Program Creation Errored." It does however generate the .html. I have the file library in my environment library list. And am not "signing in" to the system i, just the valence portal with my ID. When I set up my ID, I filled in the System i User id field, but not sure what that really does since I am not authenticating on the system i. Any ideas?

sean.lanktree
03-25-2010, 04:11 PM
Try to compile the program manually. What are the compile errors?

speedy67
03-25-2010, 04:17 PM
I had the same problem.
I fixed by setting the CCSID 280 file qrpglesrc. I had the CCSID 280 (italy).
Pierpaolo

speedy67
03-25-2010, 04:19 PM
Excuse from CCSID 280 to 37
Pierpaolo

dlstrawn
03-26-2010, 08:30 AM
Where is it? It is not in Valence21, which is the only library in my environment other than the library the file is in (which has no QRPGLESRC). I think the error is from trying to generate the program, not compile it (of course, I may be wrong). Is it not an authority issue?

Also, to Speedy67's issue, the CCSID is already 37, but thanks.

sean.lanktree
03-26-2010, 08:56 AM
I do not think it is an authority issue. Upon launching the program, it checks authority and will put up a warning if your profile does not have the proper authority.

Go into the "Settings" program and verify the library for "RPG source generated by Valence auto code". Possibly this was changed to a library without a QRPGLESRC?

Additionally, can you check the job log for the CGI job?

dlstrawn
03-26-2010, 10:15 AM
The "RPG source generated by Valence auto code" setting is VALENCE21. The
Job log gives the following:

Open of member VVOMQ200 was changed to SEQONLY(*NO).
Open of member VVOMQ200 was changed to SEQONLY(*NO).
Open of member VVOMQ200 was changed to SEQONLY(*NO).
Open of member VVOMQ200 was changed to SEQONLY(*NO).
File QRPGLESRC in library VALENCE21 with member DPA0005R not found.
Error message CPF4102 appeared during OPEN.
File QDDSSRC in library VALENCE21 with member DPA0005RDS not found.
Error message CPF4102 appeared during OPEN.
No authority to objects needed for file QDDSSRC.
Member DPA0005RDS not added to file QDDSSRC in VALENCE21.

We are at a security level of 40 on our system i, would that have any impact?

sean.lanktree
03-26-2010, 11:28 AM
Can you please close the file maintenance auto code tab. Get firebug visible and then call file maintenance back up again. You should notice one request...post the response you receive back.

dlstrawn
03-26-2010, 11:38 AM
Sorry, didn't see your response above. I will try what you say.....

OK. I granted QTMHHTP1 user *ALLOBJ special authority on the user profile, but now I am getting the following error:

(filemaintenance_err02c) - Received a failure response from the server when attempting to generate a grid inquiry program.

Any thoughts?

sean.lanktree
03-26-2010, 11:46 AM
Check the "Errors" program...any messages related to this? Any MSGW jobs?

dlstrawn
03-26-2010, 11:54 AM
It was successful that time! I am not sure what happened, or why it is now successful. However, the nav tree is now showing 2 of the same options for the file maintenance that I generated. Also, is there any way around giving QTMHHTP1 *ALLOBJ special authority?

dlstrawn
03-26-2010, 12:02 PM
Opps didn't see my last reply

sean.lanktree
03-26-2010, 12:13 PM
Yes, you can link a system i user profile to the Valence user. Go into "Users" and edit the user id that you are logging in with. Notice you can link a system i user with this profile.
If you have "Override job user" selected in the "Settings" program, then the authority for the system i profile will be used for each request. In other words, the job will no longer run as QTMHHTP1, it will run as the system i profile specified.

dlstrawn
03-26-2010, 12:58 PM
I have "override job user" checked, but I am still seeing QTMHHTP1 user on the job. Also, I signed up a user (using system i based authentication). When I signed on with his profile it made me change his password (it had expired). When I changed the password, it seemed to take (and I verified that it did on the system i), but left me with a header and footer, but nothing for the view port body. Any thoughts?

robert.swanson
03-26-2010, 01:15 PM
Did you restart your Valence instance when you changed the "Settings" values? If not, what you may be seeing is older CGI jobs using the original settings, and newer spawned CGI jobs using the new ones. Try restarting the instance - ENDTCPSVR SERVER(*HTTP) HTTPSVR(VALENCE21) followed by STRTCPSVR SERVER(*HTTP) HTTPSVR(VALENCE21)...

Also, keep in mind that if you have "Reset job user" checked, then the job will only show the overridden user for a split second before it reverts back to QTMHHTP1.

dlstrawn
03-26-2010, 02:11 PM
I did restart the Valence instance. I also tried to uncheck "reset job user", but it said this:

System i QSECURITY >= 30 requires that RESET_JOB_USER be turned on.

We are at level 40. Thanks, but any more thoughts?

sean.lanktree
03-26-2010, 03:15 PM
In order to gain the benefits of the user authority swapping previously mentioned you do not need to have Valence in system i authentication mode. Simply having a system i user linked to the valence user and Override Job User checked will do it.

I am not quite sure where all of this stands now (in terms of how your system is setup now). If your jobs are going to run under QTMHHTP1, then it needs to be able to add members to the auto code library you have specified. Whether you do that by changing the authority on QTMHHTP1 or changing the authority access on the library itself is entirely up to you. Otherwise, you want your job to run as a user who has proper authority for the library (which you can accomplish by linking a system i user to the Valence user profile).

dlstrawn
03-26-2010, 03:58 PM
when i switch from system i based authentication to valence based authentication(and restart the instance), it sill gives me the same message:

System i QSECURITY >= 30 requires that RESET_JOB_USER be turned on.

I think I will change access to object QDDSSRC and QRPGLESRC to allow QTMHHTP1 user, instead of giving QTMHHTP1 *ALLOBJ authority. Thanks for that suggestion.