15 pts.
 as400 not working in windows 2008 server
my script is working in windows xp, but not in windows 2008 server. I just fetch the records from as400 through php. if i run that page means iy says the page is not available.
if i disable the as400 odbc connection means it will run and say no connection but i enable the code means it says the page is not available.
so kindly help me.. am struggling for past 10 days...


Software/Hardware used:
as400 php
ASKED: March 22, 2012  6:55 AM
UPDATED: March 24, 2012  4:32 AM

Answer Wiki:
Last Wiki Answer Submitted:  Be the first to answer this question.
All Answer Wiki Contributors:  Be the first to answer this question.
To see all answers submitted to the Answer Wiki: View Answer History.


Discuss This Question:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _


 

Hi I don’t know if I have understood well the problem, but if it is verified when you recall a script on Windows 2008 from As400 through runrmtcmd, the problem is tied up to the new concepts of authorizations on Windows 2008 servers. They exist some articles on as to resolve this problem of “sessions”, but the simplest way to revolve is him/it that to recall the script through a job of the schedulatore of Windows. For example through a CL as that that follows.

/* Avvio Programmi su Server Windows 2003/2008 */
PGM PARM(&NOMPGM)

DCL VAR(&NOMPGM) TYPE(*CHAR) LEN(20) /* +
programma da eseguire */
/* */
DCL VAR(&SERVER) TYPE(*CHAR) LEN(20) +
VALUE(‘Server2008 ‘) /* Server +
di default */
/* */

DCL VAR(&COMMAND) TYPE(*CHAR) LEN(240) +
VALUE(‘ –


‘)
DCL VAR(&SYSLOC) TYPE(*CHAR) LEN(8)
DCL VAR(&USER) TYPE(*CHAR) LEN(10)
DCL VAR(&DIP£B) TYPE(*CHAR) LEN(10)
DCL VAR(&EMA£B) TYPE(*CHAR) LEN(30)
DCL VAR(&LSR£B) TYPE(*CHAR) LEN(01)
DCL VAR(&EMAIL) TYPE(*CHAR) LEN(31)
RTVNETA SYSNAME(&SYSLOC)
RTVJOBA USER(&USER)
CHGVAR VAR(&DIP£B) VALUE(&USER)
CHGVAR VAR(&EMA£B) +
VALUE(‘ ‘)
CHGVAR VAR(&LSR£B) VALUE(‘ ‘)
CALL PGM($MAIL) PARM(&DIP£B &EMA£B &LSR£B)
CHGVAR VAR(&EMAIL) VALUE(‘ ‘ !! &EMA£B)

IF COND(&SERVER *EQ ‘Server2008 ‘ THEN(DO)

/* SCHTASKS, ESECUZIONE TRAMITE CREAZIONE DEL LAVORO SCHEDULATO */

/* DELETE */
CHGVAR VAR(&COMMAND) +
VALUE(‘ –


‘)
CHGVAR VAR(&COMMAND) VALUE(‘Schtasks /DELETE /S \’ +
*TCAT &SERVER *TCAT ‘ /U DomainName/User /P +
UsrPassord /F /TN ‘ *CAT &NOMPGM)
RUNRMTCMD CMD(&COMMAND) RMTLOCNAME(&SERVER *IP) +
RMTUSER(ADMIN) RMTPWD(UsrPassord) WAITTIME(180)
MONMSG MSGID(CPF0000)
DLTSPLF FILE(QSYSPRT)
MONMSG MSGID(CPF0000)
/* CREATE */
CHGVAR VAR(&COMMAND) +
VALUE(‘ –


‘)
CHGVAR VAR(&COMMAND) VALUE(‘Schtasks /Create /SC +
ONCE /ST 00:00:00 /S \’ *TCAT &SERVER +
*TCAT ‘ /U DomainName/User /P UsrPassord /RU +
DomainName/User /RP UsrPassord /TN ‘ *CAT &NOMPGM)
CHGVAR VAR(&COMMAND) VALUE(&COMMAND *TCAT ‘ /TR +
“\ServerscriptPathscrpt’ *CAT &NOMPGM +
*TCAT &EMAIL *TCAT ‘”‘)
RUNRMTCMD CMD(&COMMAND) RMTLOCNAME(&SERVER *IP) +
RMTUSER(ADMIN) RMTPWD(UsrPassord) WAITTIME(180)
MONMSG MSGID(CPF0000)
DLTSPLF FILE(QSYSPRT)
MONMSG MSGID(CPF0000)
/* CHANGE */
GOTO CMDLBL(NOCHANGE)

CHGVAR VAR(&COMMAND) +
VALUE(‘ –

‘)
CHGVAR VAR(&COMMAND) VALUE(‘Schtasks /Change /S \’ +
*TCAT &SERVER *TCAT ‘ /U DomainName/User /P +
UsrPassord /RU DomainName/User /RP UsrPassord /TN ‘ +
*CAT &NOMPGM)
CHGVAR VAR(&COMMAND) VALUE(&COMMAND *TCAT ‘ /TR +
“\ServerscriptPathscrpt’ *CAT &NOMPGM +
*TCAT &EMAIL *TCAT ‘”‘)
RUNRMTCMD CMD(&COMMAND) RMTLOCNAME(&SERVER *IP) +
RMTUSER(ADMIN) RMTPWD(UsrPassord) WAITTIME(180)
MONMSG MSGID(CPF0000)
DLTSPLF FILE(QSYSPRT)
MONMSG MSGID(CPF0000)
NOCHANGE:
/* RUN */
CHGVAR VAR(&COMMAND) +
VALUE(‘ -
-
-
‘)
CHGVAR VAR(&COMMAND) VALUE(‘Schtasks /RUN /TN ‘ +
*CAT &NOMPGM)
RUNRMTCMD CMD(&COMMAND) RMTLOCNAME(&SERVER *IP) +
RMTUSER(ADMIN) RMTPWD(UsrPassord) WAITTIME(180)
MONMSG MSGID(CPF0000)
DLTSPLF FILE(QSYSPRT)
MONMSG MSGID(CPF0000)
ENDDO

ELSE CMD(DO)

/* ESECUZIONE DIRETTA DEL FILE .BAT (SERVER2003) */

CHGVAR VAR(&COMMAND) +
VALUE(‘ –


‘)
CHGVAR VAR(&COMMAND) VALUE(&COMMAND *TCAT +
‘”\ServerscriptPathscrpt’ *CAT &NOMPGM +
*TCAT &EMAIL *TCAT ‘”‘)
RUNRMTCMD CMD(&COMMAND) RMTLOCNAME(&SERVER *IP) +
RMTUSER(ADMIN) RMTPWD(UsrPassord) WAITTIME(180)
MONMSG MSGID(CPF0000)
DLTSPLF FILE(QSYSPRT)
MONMSG MSGID(CPF0000)
ENDDO

ENDPGM: RCLRSC

ENDPGM

 290 pts.

 

my script is working in windows xp, but not in windows 2008 server. I just fetch the records from as400…

What is your AS/400 OS version/release?

Tom

 108,135 pts.

 

Os V 5.4.

 290 pts.

 

Os400 V5.4.

 290 pts.

 

V5R4 should be okay. Can you get its cume PTF group level? (The WRKPTFGRP command can display a list of group packages.)

How do your scripts get invoked in the two Windows systems? Do you have any success from that Win2008 server for any other ODBC connections to that AS/400?

Tom

 108,135 pts.

 

no Mr. Tom i didn’t have any success in win 2008 server but i think i need to install any driver for ODBC connection in win 2008 server.

 15 pts.