The following code runs very slowly compared to similar routines running on
the same type of systems.

Can anyone point out anything I'm doing that would make this particular code
run slowly as I'm out of ideas!

Sorry if this post is a bit long!
Any help gratefully appreciated..


print <<SC1;
Content-type: text/html\n\n
  <HTML>
  <HEAD>
        <TITLE>On-Line Metaphase Tiff File Search.</TITLE>
  </HEAD>
  <BODY BACKGROUND="/images/hunmet2.gif" BGPROPERTIES="fixed">
        <H1><u>Tiff and Multi-File Drawing Search</u></H1>
        <FONT SIZE=2>
        <CENTER>
        <TABLE BACKGROUND="/images/graygrid.gif" BORDER="3"
BORDERCOLORLIGHT="#FFFFF0" BORDERCOLORDARK="#707070" CELLSPACING="2"
CELLPADDING="5" WIDTH=%100>
        <TR BGCOLOR="#ADD8E6"><TD><B><CENTER>File
Name</CENTER></B></DT><TD><B><CENTER>Revision</CENTER></B></TD><TD><B><CENTE
R>Status</CENTER></B></TD><TD><B><CENTER>Charted</CENTER></B></TD></TR>
SC1
use CGI; use DBI;
my $q = new CGI;
my $value = $q->param( "metadata" ); $value =~ tr/*/%/; 
my $dtype = $q->param( "type" );
my $start = $q->param( "start" );
if ($start eq N) { substr($value, 0, 0) = "%";}
my $dbh = DBI->connect("dbi:Oracle:host=test;sid=test;port=1521", 'test',
'test');
my $sql = "none";
my $sth;
my @stored=("","","","","","");
my @stored2=("","","","","","");
my @rawsql=("","","","","","");
my $lastname="";
my $lastname2="";
my $curname="";
my $first = 1;
my $tloop; my $charted;
for ($tloop = 1; $tloop < 3; $tloop++){
  if ($tloop ==1){ $sql = "select RELATIVEPATH, DOCUMENTNAME, REVISION,
h.lifecyclestate, h.HWSHEETNO, h.HWDOCSTATUS from TIFF T, ATTACH A, HWDOCNH
H where H.OBID = A.LEFT AND A.RIGHT = T.OBID AND H.DOCUMENTNAME Like
'$value\%' ORDER BY H.DOCUMENTNAME, H.HWSHEETNO, H.REVISION";
$charted="No."}
  if ($tloop ==2){ $sql = "select RELATIVEPATH, DOCUMENTNAME, REVISION,
h.lifecyclestate, h.HWSHEETNO, h.HWDOCSTATUS from TIFF T, ADHOCDEP A,
HWDOCNH H where H.OBID = A.RIGHT AND A.LEFT = T.OBID AND H.DOCUMENTNAME Like
'$value\%' ORDER BY H.DOCUMENTNAME, H.HWSHEETNO, H.REVISION";
$charted="Yes."}
  $sth = $dbh->prepare($sql);
  $sth->execute();
  while (@rawsql = $sth->fetchrow_array()) {
     if (($dtype eq "prod" and length $rawsql[2] != 1) or ($dtype eq "pree"
and length $rawsql[2] < 2) or ($dtype eq "obsl" and $rawsql[5] eq
'OBSOLETE')) {
        $curname = "";
        $curname = $rawsql[1];
        if ($curname ne $lastname) {
                if ($stored[3] eq 'HWLcsIssd' ) {
                   if ($stored[4] eq 1 and $dtype ne "obsl" and $stored[5]
ne "OBSOLETE" ) { print "<TR><TD><A
HREF=\"http://web.uk07.eng.europe.honeywell.com/cadlib/Library/raw_tiff/"; .
join("", $stored[0]) . "\">" . join("", $stored[1]) .
"</A></TD><TD><CENTER><B>" . join("", $stored[2]) . "</B></CENTER></TD><TD>
Issued </TD><TD><CENTER><B>$charted</B></CENTER></TD></TR>"}
                   if ($stored[4] eq 1 and $dtype eq 'obsl' and $stored[5]
eq "OBSOLETE" ) { print "<TR><TD><A
HREF=\"http://web.uk07.eng.europe.honeywell.com/cadlib/Library/raw_tiff/"; .
join("", $stored[0]) . "\">" . join("", $stored[1]) .
"</A></TD><TD><CENTER><B>" . join("", $stored[2]) . "</B></CENTER></TD><TD>
OBSOLETE </TD><TD><CENTER><B>$charted</B></CENTER></TD></TR>"}
                   if ($stored[4] ne 1 and $dtype eq 'prod') { print
"<TR><TD>" . join("", $stored[1]) . "</TD><TD><CENTER><B><FORM
ACTION=\"../scripts/pages.plx\"><INPUT TYPE=\"SUBMIT\" NAME=$stored2[1]
VALUE=\"Multi-Page\"></FORM></B></CENTER></TD><TD> Issued.
</TD><TD><CENTER><B>$charted</B></CENTER></TD></TR>"}
                   if ($stored[4] ne 1 and $dtype eq 'pree') { print
"<TR><TD>" . join("", $stored[1]) . "</TD><TD><CENTER><B><FORM
ACTION=\"../scripts/pages.plx\"><INPUT TYPE=\"SUBMIT\" NAME=$stored2[1]
VALUE=\"Multi-page\"></FORM></B></CENTER></TD><TD> Issued
</TD><TD><CENTER><B>$charted</B></CENTER></TD></TR>"}
                }
                if (not $first and $stored[3] ne 'HWLcsIssd') {
                   if ($lastname2 eq $lastname and $stored2[3] eq
'HWLcsIssd') {
                      print "<TR><TD><A
HREF=\"http://web.uk07.eng.europe.honeywell.com/cadlib/Library/raw_tiff/"; .
join("", $stored2[0]) . "\">" . join("", $stored2[1]) .
"</A></TD><TD><CENTER><B>" . join("", $stored2[2]) . "</B></CENTER></TD><TD>
Last Issued </TD><TD><CENTER><B>$charted</B></CENTER></TD></TR>"}
                   print "<TR><TD>" . join("", $stored[1]) .
"</TD><TD><CENTER><B>" . join("", $stored[2]) . "</B></CENTER></TD><TD>
Pending </TD><TD><CENTER><B>$charted</B></CENTER></TD></TR>";
                   if ($lastname2 eq $lastname and $stored2[3] ne
'HWLcsIssd') {
                      print "<TR><TD><FORM
ACTION=\"../scripts/history.plx\"><INPUT TYPE=\"SUBMIT\" NAME=\"HISTORY\"
VALUE=$stored2[1]></FORM></TD><TD><CENTER><B> N/A
</B></CENTER></TD><TD><B>No
Issue!</B></TD><TD><CENTER><B>$charted</B></CENTER></TD></TR>"}
                }
        }
        $lastname2 = $lastname;
        $lastname = $curname;
        @stored2 = @stored;
        @stored = @rawsql;
        $first = 0
     }
  }
  if ($stored[3] eq 'HWLcsIssd' ) {
    if ($stored[4] eq 1 and $dtype ne "obsl" and $stored[5] ne "OBSOLETE" )
{ print "<TR><TD><A
HREF=\"http://web.uk07.eng.europe.honeywell.com/cadlib/Library/raw_tiff/"; .
join("", $stored[0]) . "\">" . join("", $stored[1]) .
"</A></TD><TD><CENTER><B>" . join("", $stored[2]) . "</B></CENTER></TD><TD>
Issued </TD><TD><CENTER><B>$charted</B></CENTER></TD></TR>"}
    if ($stored[4] eq 1 and $dtype eq "obsl" and $stored[5] eq "OBSOLETE" )
{ print "<TR><TD><A
HREF=\"http://web.uk07.eng.europe.honeywell.com/cadlib/Library/raw_tiff/"; .
join("", $stored[0]) . "\">" . join("", $stored[1]) .
"</A></TD><TD><CENTER><B>" . join("", $stored[2]) . "</B></CENTER></TD><TD>
OBSOLETE </TD><TD><CENTER><B>$charted</B></CENTER></TD></TR>"}
    if ($stored[4] ne 1 and $dtype eq "prod") { print "<TR><TD>" . join("",
$stored[1]) . "</TD><TD><CENTER><B><FORM
ACTION=\"../scripts/pages.plx\"><INPUT TYPE=\"SUBMIT\" NAME=$stored2[1]
VALUE=\"Multi-Page\"></FORM></B></CENTER></TD><TD> Issued
</TD><TD>CHARTED</TD><TD><CENTER><B>$charted</B></CENTER></TD></TR>"}
    if ($stored[4] ne 1 and $dtype eq "pree") { print "<TR><TD>" . join("",
$stored[1]) . "</TD><TD><CENTER><B><FORM
ACTION=\"../scripts/pages.plx\"><INPUT TYPE=\"SUBMIT\" NAME=$stored2[1]
VALUE=\"Multi-page\"></FORM></B></CENTER></TD><TD> Issued
</TD><TD>CHARTED</TD><TD><CENTER><B>$charted</B></CENTER></TD></TR>"}
  }
  if (not $first and $stored[3] ne 'HWLcsIssd') {
   if ($lastname2 eq $lastname and $stored2[3] eq 'HWLcsIssd') {
      print "<TR><TD><A
HREF=\"http://web.uk07.eng.europe.honeywell.com/cadlib/Library/raw_tiff/"; .
join("", $stored2[0]) . "\">" . join("", $stored2[1]) .
"</A></TD><TD><CENTER><B>" . join("", $stored2[2]) . "</B></CENTER></TD><TD>
Last Issued </TD><TD><CENTER><B>$charted</B></CENTER></TD></TR>"}
   print "<TR><TD>" . join("", $stored[1]) . "</TD><TD><CENTER><B>" .
join("", $stored[2]) . "</B></CENTER></TD><TD> Pending
</TD><TD><CENTER><B>$charted</B></CENTER></TD></TR>";
   if ($lastname2 eq $lastname and $stored2[3] ne 'HWLcsIssd') {
      print "<TR><TD><FORM ACTION=\"../scripts/history.plx\"><INPUT
TYPE=\"SUBMIT\" NAME=\"HISTORY\"
VALUE=$stored2[1]></FORM></TD><TD><CENTER><B> N/A
</B></CENTER></TD><TD><H3>No
Issue!</H3></TD><TD><CENTER><B>$charted</B></CENTER></TD></TR>"}
  }
  $sth->finish();
  @stored=("","","","","","");
  @stored2=("","","","","","");
  @rawsql=("","","","","","");
  $lastname="";
  $lastname2="";
  $curname="";
  $first = 1
}      
print "</CENTER></TABLE></FONT><HR><p align=\"center\"><BUTTON
onClick=\"top.history.back()\">BACK</BUTTON></p></BODY></HTML>";
$dbh->disconnect;


-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to