Jump to content

bggas400

New Members
  • Posts

    4
  • Joined

  • Last visited

bggas400's Achievements

Newbie

Newbie (1/5)

0

Reputation

  1. if ($fdsort == "TODAY"){ $query = "Select * from ALLFTM100.ANHISTL2 where HSDATE >= '$slcdates' "; print("<h4>Townsend transfers on $system for $slcdate only. </h4>"); } if($fdsort <> "TODAY"){ $query = "Select * from ALLFTM100.ANHISTL2 where HSSESN = '$fdsort' order by HSDATE desc, HSTIME desc"; print("<h4>Townsend transfers for $fdsort on $system listed in descending order by date/time starting from $slcdate. </h4>"); } ?> <h3> <a href="javascript:history.go(-1)"style="color:blue;">Back to previous page</a></h3> <br > </br> <?php //Execute query $queryexe = db2_exec($conn, $query) ; while(db2_fetch_row($queryexe)) { $HSSESN = db2_result($queryexe, 'HSSESN'); // System Name $HSLOGI = db2_result($queryexe, 'HSLOGI'); // System Roll $HSRETN = db2_result($queryexe, 'HSRETN'); // System Ping $HSDATE = db2_result($queryexe, 'HSDATE'); // System Maintenance $HSTIME = db2_result($queryexe, 'HSTIME'); // System Telnet Status $HSTEXT = db2_result($queryexe, 'HSTEXT'); // System FTP Status print("<table>"); print("<td WIDTH=100>"); print("$HSSESN</td><td width=10> <a href=http://orion/iTownsendTranslog.php?system=$system&HSLOGI=$HSLOGI&HSSESN=$HSSESN >$HSLOGI</td> <td width=10> $HSRETN</td> <td width=10> $HSDATE</td> <td width=10> $HSTIME</td> <td width=100> $HSTEXT \n"); print("</td> \n"); } print("</tr>"); print("</tbody>"); print("</table>"); db2_close($conn); ?> Hi, Pretty new to PHP. I have this piece of code which I've inherited. How can I modify it to where, if the select statement doesn't return any data, that I can print or echo a message stating that... "No transfers have run recently"? I was thinking of some sort of $result variable but I'm not getting anywhere. This is running on the IBM i - iSeries. Thanks for any assistance, bgg
  2. Issue has been resolved. There was a missing procedure. Thanks for replying.
  3. Yeah, sorry. It's actually failing on the Prepare statement. The code works because as I say, I have successful connections to other systems. $conn2 = db2_connect($host,"",$CONPA ); $proc = "CALL ITWEB.ITW0002CL(?, ?, ?, ?)"; $stmt = db2_prepare($conn2, $proc); As a test, connecting to a 'host' system I know this works on, I copied that ITW0002CL program to another library, modified the code to reflect that and I got the same message. ITW0002CL in 'yourlibrary' type *N not found I also changed the code to reflect a different program name and still get the same 'not found' message. I assume becaue the parms needed are different The Debug warning message is db2_prepare(): Statement Prepare Failed
  4. Hi, I am getting the following error message when running my script. It worked recently, a library was restored and now I'm getting this. ITW0002CL in ITWEB type *N not found. SQLCODE=-204 ITW0002CL in ITWEB type *N not found. SQLCODE=-204 The library (ITWEB) and program (ITW0002CL) do exist and the authority to those objects is more than sufficient. The script works flawlessly when accessing any other system. I've debugged it in Zend Studio (Debug URL) specifying a system it works on and the one it is not finding the object on and all values in the variables are as they should be. I'm at a loss to figure out why it does not find the program object when it does exist. Not sure if it will help but the code (partially edited) is below. Any help would be greatly appreciated. bgg <?php // show generic header include ("../includes/iheader.php"); // show generic top navigation include ("../includes/iTopNavigate.php"); print ("<div id=body>"); print ("<div style=text-align: left;></div>"); print ("<div id=content>"); print ("<div style=text-align: left;></div>"); print ("<div style=text-align: right;>"); print ("<br />"); print ("<div style=text-align: left;>"); //Establish connection to remote systems after getting correct connection // parms ini_set('display_startup_errors', 0) ; ini_set('display_errors', 0) ; ini_set('log_errors', 1) ; ini_set('error_reporting', E_ALL | E_STRICT) ; $filename=$_POST['filename']; $library=$_POST['library']; $selected=$_POST['select']; $parmIN1 = $filename; $parmIN2 = $library; $parmIN3 = '*FILE'; $parmOUT3 = ' '; $database = " "; $stmt = " "; $codetext = ' '; $JOURNAL = ' '; $host = ''; $hasystem = ' '; $conn = i5_connect('', '', ''); $description = array( array( "Name"=>"CONPA", "IO"=>I5_INOUT, "Type"=>I5_TYPE_CHAR, "Length"=>"10" ), array( "Name"=>"RTVPRF", "IO"=>I5_INOUT, "Type"=>I5_TYPE_CHAR, "Length"=>"10" ), array( "Name"=>"NODE", "IO"=>I5_INOUT, "Type"=>I5_TYPE_CHAR, "Length"=>"8" ), ); $pgm = i5_program_prepare('ITWEB/WEBCONGET', $description); if (!$pgm) { throw_error("i5_program_prepare"); exit(); } $parameter = array( "CONPA"=>" ", "RTVPRF"=>"", "NODE"=>"$host" ); $parmOut = array( "CONPA"=>"CONPA" ); $ret = i5_program_call($pgm, $parameter, $parmOut); if ($ret === FALSE) { $errorTab = i5_error(); echo "FAIL : i5_program_call failure code <br>"; die(); } i5_program_close($pgm); i5_close($conn); function throw_error($func) { echo "Error in function: ".$func." --- "; echo "Error Number: ".i5_errno()." --- "; echo "Error Message: ".i5_errormsg()."<br>"; } $queryhasys = "Select * from ITWEBLCL.syslst where SALI = '$selected' "; $host = "*LOCAL"; $conn3 = db2_connect ($host,"", ""); echo db2_stmt_errormsg(); // Get the HA system name so we can add that system name to the search $queryexe = db2_exec($conn3, $queryhasys) ; while(db2_fetch_row($queryexe)) { $SHAS = db2_result($queryexe, 'SHAS'); // System Name HA Name $SALI = db2_result($queryexe, 'SALI'); // System Name Prod Alias $SHDN = db2_result($queryexe, 'SHDN'); // HA System DNS name $SPRD = db2_result($queryexe, 'SPRD'); // Production DNS name $SRDB = db2_result($queryexe, 'SRDB'); // relational database name $hasystem = $SHAS; } $host = $selected; if ($SRDB !== ' ') { $host = $SRDB; } $conn2 = db2_connect($host,"",$CONPA ); $proc = "CALL ITWEB.ITW0002CL(?, ?, ?, ?)"; $stmt = db2_prepare($conn2, $proc); echo db2_stmt_errormsg(); db2_bind_param($stmt, 1, "parmIN1", DB2_PARAM_IN); db2_bind_param($stmt, 2, "parmIN2", DB2_PARAM_IN); db2_bind_param($stmt, 3, "parmIN3", DB2_PARAM_IN); db2_bind_param($stmt, 4, "parmOUT3", DB2_PARAM_OUT); db2_execute($stmt); echo db2_stmt_errormsg(); switch (substr($parmOUT3, 0, 2)) { case '01': $codetext = "Object not found in library $library"; print ("<p><h2>File $filename in $library could not be checked on system $selected, the error returned was - $codetext</h2></p>"); break; case '02': $codetext = "Not Authorized to object in library $library"; print ("<p><h2>File $filename in $library could not be checked on system $selected, the error returned was - $codetext</h2></p>"); break; case '03': $codetext = "Library $library not found"; print ("<p><h2>File $filename in $library could not be checked on system $selected, the error returned was - $codetext</h2></p>"); break; case '04': $codetext = 'Member not found in file'; print ("<p><h2>File $filename in $library could not be checked on system $selected, the error returned was - $codetext</h2></p>"); break; case '05': $codetext = "Not authorized to use library $library"; print ("<p><h2>File $filename in $library could not be checked on system $selected, the error returned was - $codetext</h2></p>"); break; case '06': $codetext = 'Cannot assign library'; print ("<p><h2>File $filename in $library could not be checked on system $selected, the error returned was - $codetext</h2></p>"); break; case '07': $codetext = 'Error occured during processing of command'; print ("<p><h2>File $filename in $library could not be checked on system $selected, the error returned was - $codetext</h2></p>"); break; case 'NJ': $codetext = 'Object has no journal associated'; print ("<p><h2>File $filename in $library is not journaled on system $selected. No journal information retrieved</h2></p>"); break; case 'AA': // if the code is AA then we got a good return and we can start the page $codetext = 'Journal information found'; $JOURNAL = substr($parmOUT3, 2, 10); $JOURNLIB = substr($parmOUT3, 12, 10); $queryhasys = "Select * from ITWEBLCL.syslst where SALI = '$selected' "; $host = "*LOCAL"; $conn3 = db2_connect ($host,"", ""); echo db2_stmt_errormsg(); // Get the HA system name so we can add that system name to the search $queryexe = db2_exec($conn3, $queryhasys) ; while(db2_fetch_row($queryexe)) { $SHAS = db2_result($queryexe, 'SHAS'); // System Name HA Name $SALI = db2_result($queryexe, 'SALI'); // System Name Prod Alias $SHDN = db2_result($queryexe, 'SHDN'); // HA System DNS name $SPRD = db2_result($queryexe, 'SPRD'); // Production DNS name $hasystem = $SHAS; } $jrnsql = "Select * from itweblcl.itw0006pf where (itwjsysa = '$hasystem' and itwjjrn = '$JOURNAL') or (itwjsysa = '$selected' and itwjjrn = '$JOURNAL') order by ITWJATDAT DESC , ITWJATTIM DESC"; $queryexe = db2_exec($conn3, $jrnsql) ; echo db2_stmt_errormsg(); print ("<p><h3>Journal information requested for file $filename in library $library on system $selected</h3>"); print ("<h3>The journal associated with the file is $JOURNAL in $JOURNLIB</h3></p>"); print ("<br><br>"); print ("<table><tr><b><td>Node</td><td>Receiver Name </td><td> Receiver Library </td><td> Attached Date </td><td> Attached Time </td><td> Detached Date </td><td> Detached Time </td><td> Status</td><td>Backup Tape </td> <td> Tape Expiration&nbsp</td></b>\n"); while(db2_fetch_row($queryexe)) { $ITWJSYS = db2_result($queryexe, 'ITWJSYS'); // System Name $ITWJSYSA = db2_result($queryexe, 'ITWJSYSA'); // system alias $ITWJJRN = db2_result($queryexe, 'ITWJJRN'); // journal $ITWJJRNL = db2_result($queryexe, 'ITWJJRNL'); // journal library $ITWJJRNRC = db2_result($queryexe, 'ITWJJRNRC'); // receiver $ITWJJRNRL = db2_result($queryexe, 'ITWJJRNRL'); // receiver library $ITWJATDAT = db2_result($queryexe, 'ITWJATDAT'); // attached date $ITWJATTIM = db2_result($queryexe, 'ITWJATTIM'); // attached time $ITWJDTDAT = db2_result($queryexe, 'ITWJDTDAT'); // detached date $ITWJDTTIM = db2_result($queryexe, 'ITWJDTTIM'); // detached time $ITWJRNRSTA = db2_result($queryexe, 'ITWJRNRSTA'); // journal status $ITWJRNTAP = db2_result($queryexe, 'ITWJRNTAP'); // Journal Tape ID $ITWTAPSTA = db2_result($queryexe, 'ITWTAPSTA'); // Tape Status $ITWTAPEXP = db2_result($queryexe, 'ITWTAPEXP'); // Tape Expiration // Lets blank the date if its the defualt value if ($ITWTAPEXP == '0001-01-01') { $ITWTAPEXP = ' '; } // Lets blank the date if its the defualt value if ($ITWJDTDAT == '0001-01-01') { $ITWJDTDAT = ' '; } // Lets blank the date if its the defualt value if ($ITWJDTTIM == '00.00.00') { $ITWJDTTIM = ' '; } print ("<tr><td>$ITWJSYS</td><td><form name=setit method=post action=http://primintl/Journal/iJrnSetAut.php><input type=hidden name=SHDN value=$SHDN><input type=hidden name=ITWJJRN value=$ITWJJRN><input type=hidden name=SPRD value=$SPRD><input type=hidden name=ITWJJRNL value=$ITWJJRNL><input type=hidden name=CONPA value=$CONPA ><input type=submit value=$ITWJJRNRC></form></td> <td> $ITWJJRNRL </td><td> $ITWJATDAT </td><td> $ITWJATTIM </td><td> $ITWJDTDAT </td><td> $ITWJDTTIM </td><td> $ITWJRNRSTA </td><td> $ITWJRNTAP</td><td> $ITWTAPEXP </td></tr>\n"); } print("</tbody>"); print("</table>"); break; } // if the connection has failed, let the user know and clean up the screen if (!$conn2){ print ("<b> <h3>Connection to iSeries $host database failed </h3><b></b>\n"); print db2_conn_errormsg(); die( "Connection error is :" . i5_errormsg()); exit(); } db2_close($conn); db2_close($conn2); db2_close($conn3); //Show the flag banner at the bottom of the page print("<br>"); print("<br>"); //Show the flag banner at the bottom of the page include_once ("../includes/iFlags.php"); // Show left Navigation include_once ("../includes/iNavigate.php"); // Show the common footer include_once("../includes/ifooter.php"); // Column Header function Print_Head($ColHdg) { print("<hr style=WIDTH: 91.41%; HEIGHT: 3px align=center size=1 width=100.00%/>"); print("<tr> <th colspan=3><h3>$ColHdg</h3></th></tr> \n"); print("<left><table width=10% cellpadding=1>"); // will control the flag bottom position and the left tool bar print("<tbody>"); } ?>
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.