Showing posts with label inst. Show all posts
Showing posts with label inst. Show all posts

Thursday, March 22, 2012

System.NullReferenceException: Object reference not set to an inst

I have several pages written in aspx, but sometime the aspx page return the
following error. And it hapeen, the whole web application gives this error,
that means all the aspx files get affected. Any ideas?
Here is the error:
Server Error in '/' Application.
----
--
Object reference not set to an instance of an object.
Description: An unhandled exception occurred during the execution of the
current web request. Please review the stack trace for more information abou
t
the error and where it originated in the code.
Exception Details: System.NullReferenceException: Object reference not set
to an instance of an object.
ASPX CODE:
<%@dotnet.itags.org. Page Language="JScript" Aspcompat="true" Debug="false"
Inherits="PETestTimeMSP" src="http://pics.10026.com/?src=source/pettmailmsp.js" %>
<%
pettMailMSP();
%>
<html>
<head>
<title>SCReliabilityServices Emailer</title>
</head>
<body>
SCReliabilityServices Emailer - Sent!
</body>
</html>
SOURCE CODE:
import System;
import System.Data;
import System.Data.OleDb;
import System.Web.UI;
import System.Web.UI.WebControls;
import System.Web.UI.HtmlControls;
import System.Text;
import System.Web.Mail;
import DBConn;
import LDAPCOM;
public class PETestTimeMSP extends Page {
public function sendMail(message : String, to : String) : void {
var Mailer : MailMessage = new MailMessage();
Mailer.Priority = MailPriority.Normal;
Mailer.BodyFormat = MailFormat.Html;
Mailer.From = "manager@dotnet.itags.org.email.com";
Mailer.To = to;
Mailer.Subject = "(MSP) DRTL PE Test Time Forecast - " + (new
Date().getMonth()+1) + "/" + new Date().getDate() + "/" + new
Date().getYear();
//Mailer.Body = "<font color=blue face=Arial size=-1>Starting today, you
will be receiving a daily report that should be beneficial in planning test
time<br>for jobs being stressed in DRTL.<br><br>The first part of the report
“Completed Stress – Pending Test” shows jobs that have completed stres
s
and<br>are pending test. For jobs in this status, electrical test has not
yet been completed - according to our database.<br>These will continue to
stay open, until data is provided to close.<br>If you have contacted our lab
on some of these jobs for closure, we are working on them.<br><b>Otherwise,
please contact Jennifer McClellan.</b><br><br>The second part of the report
“Forecast Readpoints for Test” is a forecast for jobs that are in<br>str
ess
and are expected to be completed within the next 5 days.<br>The time out on
the expected day is the end of the day.<br><br>Regards,<br>David
Kaase<br>DRTL Manager</font><br><br>" + message;
Mailer.Body = message;
SmtpMail.SmtpServer = "smtp.mail.ti.com";
SmtpMail.Send(Mailer);
}
public function pettMailMSP() : String {
var DBConnUtil : DBConnQDW = new DBConnQDW();
var dbconn : OleDbConnection = DBConnUtil.connectQDW();
var sql : String = "select d.relcode, d.jobtitle, d.pengrname,
d.pengremail, d.priority, t.testtype, t.testnum, r.grp, r.readnum, r.hrcy,
r.qty, to_char(k.sent, 'MM/DD/YYYY') sent, to_char(k.expecteddate,
'MM/DD/YYYY') expecteddate, k.location from rel_device d, rel_tests t,
rel_reads r, rel_track k where d.relcode = t.relcode and t.relcode =
r.relcode and t.testnum = r.testnum and r.relcode = k.relcode and r.testnum
=
k.testnum and r.grp = k.grp and r.readnum = k.readnum and d.dbname = 'MSPREL
'
and t.status = 'Active' and UPPER(t.programno) like 'ENG%' and k.complete is
null and k.location = 'PE Test'"
+ " union "
+ "select d.relcode, d.jobtitle, d.pengrname,
d.pengremail, d.priority, t.testtype, t.testnum, r.grp, r.readnum, r.hrcy,
r.qty, to_char(k.sent, 'MM/DD/YYYY') sent, to_char(k.expecteddate,
'MM/DD/YYYY') expecteddate, k.location from rel_device d, rel_tests t,
rel_reads r, rel_track k where d.relcode = t.relcode and t.relcode =
r.relcode and t.testnum = r.testnum and r.relcode = k.relcode and r.testnum
=
k.testnum and r.grp = k.grp and r.readnum = k.readnum and d.dbname = 'MSPREL
'
and t.status = 'Active' and ((t.testnum >= 0001 and t.testnum <= 0104) or
(t.testnum >= 1000 and t.testnum <= 1615) or (t.testnum >= 2000 and t.testnu
m
<= 2750) or (t.testnum >= 3000 and t.testnum <= 3240) or (t.testnum >= 3500
and t.testnum <= 3800) or (t.testnum >= 4075 and t.testnum <= 4322) or
(t.testnum = 9001)) and UPPER(t.programno) like 'ENG%' and k.expecteddate is
not null and k.expecteddate <= sysdate+5 and k.complete is null and
k.location like 'DRTL-%' order by 3, 5, 1, 6, 8, 12, 13";
var dbcmd : OleDbCommand = new OleDbCommand(sql, dbconn);
var dbRecords : OleDbDataReader = dbcmd.ExecuteReader();
var tableA : StringBuilder = new StringBuilder();
var tableB : StringBuilder = new StringBuilder();
var tableC : StringBuilder = new StringBuilder();
var tableS1 : StringBuilder = new StringBuilder();
var tableS2 : StringBuilder = new StringBuilder();
var tableS3 : StringBuilder = new StringBuilder();
var pengremail : String;
var relcodeA : String;
var relcodeB : String;
var expecteddate : String;
var tempdate : Date;
var ldaputil : LDAP = new LDAP();
while( dbRecords.Read() ) {
if( String.Compare(pengremail, dbRecords("pengremail")) != 0 ) {
if( String.Compare(pengremail, null) != 0 ) {
if( String.Compare(tableA.ToString(), "") != 0 ) {
tableA.Append("</table>");
tableC.Append(tableA.ToString());
tableC.Append("<br><br>");
}
if( String.Compare(tableB.ToString(), "") != 0 ) {
tableB.Append("</table>");
tableC.Append(tableB.ToString());
}
if( String.Compare(ldaputil.getLDAPValue('MAIL', pengremail,
'mail'), "") != 0 &&
String.Compare(tableC.ToString(), "") != 0 ) {
tableC.Append("<br>NOTE: This is an auto-generated
message!<br>");
sendMail(tableC.ToString(), pengremail);
}
}
pengremail = dbRecords("pengremail").ToString();
tableA = new StringBuilder();
tableB = new StringBuilder();
tableC = new StringBuilder();
}
if( String.Compare(dbRecords("location").ToString(), 'PE Test') == 0 ) {
if( String.Compare(tableS1.ToString(), "") == 0 ) {
tableS1.Append("<h2><font color=maroon>Completed Stress - Pending
Test</font></h2>");
tableS1.Append("<table width=75%>");
}
if( String.Compare(tableA.ToString(), "") == 0 ) {
tableA.Append("<h2><font color=maroon>Completed Stress - Pending
Test</font></h2>");
tableA.Append("<table width=75%>");
tableA.Append("<tr>");
tableA.Append("<td colspan=7><b>PE: " +
dbRecords("pengrname").ToString() + ":</b></td>");
tableA.Append("</tr>");
tableS1.Append("<tr>");
tableS1.Append("<td colspan=7><b>PE: " +
dbRecords("pengrname").ToString() + ":</b></td>");
tableS1.Append("</tr>");
}
if( String.Compare(relcodeA, dbRecords("relcode").ToString()) != 0 ) {
relcodeA = dbRecords("relcode").ToString();
tableA.Append("<tr>");
tableA.Append("<td colspan=5> <i><a
href='http://reldb.sc.ti.com/reldb/reldbmain.nsf/ShowJobDetail?OpenAgent&Rel
code="
+ relcodeA + "'>" + relcodeA + " — " +
dbRecords("jobtitle").ToString() + "</a></i></td>");
tableA.Append("</tr>");
tableA.Append("<tr>");
tableA.Append("<td align=center><font
size=-1><b>Test_Type</b></font></td>");
tableA.Append("<td align=center><font
size=-1><b>Hr/Cy</b></font></td>");
tableA.Append("<td align=center><font
size=-1><b>Grp</b></font></td>");
tableA.Append("<td align=center><font
size=-1><b>Qty</b></font></td>");
tableA.Append("<td align=center><font
size=-1><b>PE_Test</b></font></td>");
tableA.Append("</tr>");
tableS1.Append("<tr>");
tableS1.Append("<td colspan=5> <i><a
href='http://reldb.sc.ti.com/reldb/reldbmain.nsf/ShowJobDetail?OpenAgent&Rel
code="
+ relcodeA + "'>" + relcodeA + " — " +
dbRecords("jobtitle").ToString() + "</a></i></td>");
tableS1.Append("</tr>");
tableS1.Append("<tr>");
tableS1.Append("<td align=center><font
size=-1><b>Test_Type</b></font></td>");
tableS1.Append("<td align=center><font
size=-1><b>Hr/Cy</b></font></td>");
tableS1.Append("<td align=center><font
size=-1><b>Grp</b></font></td>");
tableS1.Append("<td align=center><font
size=-1><b>Qty</b></font></td>");
tableS1.Append("<td align=center><font
size=-1><b>PE_Test</b></font></td>");
tableS1.Append("</tr>");
}
tableA.Append("<tr>");
tableA.Append("<td align=center><font size=-1>" +
dbRecords("testtype").ToString() + "</font></td>");
tableA.Append("<td align=center><font size=-1>" +
dbRecords("hrcy").ToString() + "</font></td>");
tableA.Append("<td align=center><font size=-1>" +
dbRecords("grp").ToString() + "</font></td>");
tableA.Append("<td align=center><font size=-1>" +
dbRecords("qty").ToString() + "</font></td>");
tableA.Append("<td align=center><font size=-1>" +
dbRecords("sent").ToString() + "</font></td>");
tableA.Append("</tr>");
tableS1.Append("<tr>");
tableS1.Append("<td align=center><font size=-1>" +
dbRecords("testtype").ToString() + "</font></td>");
tableS1.Append("<td align=center><font size=-1>" +
dbRecords("hrcy").ToString() + "</font></td>");
tableS1.Append("<td align=center><font size=-1>" +
dbRecords("grp").ToString() + "</font></td>");
tableS1.Append("<td align=center><font size=-1>" +
dbRecords("qty").ToString() + "</font></td>");
tableS1.Append("<td align=center><font size=-1>" +
dbRecords("sent").ToString() + "</font></td>");
tableS1.Append("</tr>");
}
else {
expecteddate = dbRecords("expecteddate").ToString();
if( parseInt(dbRecords("testnum")) >= 1 &&
parseInt(dbRecords("testnum")) <= 104 ) {
sql = "select r_user from rel_reads where relcode = '" +
dbRecords("relcode") + "' and testnum = '" + dbRecords("testnum") + "' and
grp = '" + dbRecords("grp") + "' and readnum <= '" + dbRecords("readnum") +
"' and r_user like '%Soak%'";
var dbconnPrecon : OleDbConnection = DBConnUtil.connectQDW();
var dbcmdPrecon : OleDbCommand = new OleDbCommand(sql,
dbconnPrecon);
var dbRecordsPrecon : OleDbDataReader = dbcmdPrecon.ExecuteReader();
if( !dbRecordsPrecon.Read() ) {
dbRecordsPrecon.Close();
DBConnUtil.closeQDW(dbconnPrecon);
continue;
}
else {
tempdate = new Date(expecteddate);
tempdate.setHours(48);
if( tempdate > new Date().setHours(120) ) {
dbRecordsPrecon.Close();
DBConnUtil.closeQDW(dbconnPrecon);
continue;
}
else {
expecteddate = (new Date(tempdate).getMonth()+1) + "/" + new
Date(tempdate).getDate() + "/" + new Date(tempdate).getYear();
dbRecordsPrecon.Close();
DBConnUtil.closeQDW(dbconnPrecon);
}
}
}
if( String.Compare(tableS2.ToString(), "") == 0 ) {
tableS2.Append("<h2><font color=maroon>Forecast Readpoints for
Test</font></h2>");
tableS2.Append("<table width=75%>");
}
if( String.Compare(tableB.ToString(), "") == 0 ) {
tableB.Append("<h2><font color=maroon>Forecast Readpoints for
Test</font></h2>");
tableB.Append("<table width=75%>");
tableB.Append("<tr>");
tableB.Append("<td colspan=7><b>PE: " +
dbRecords("pengrname").ToString() + ":</b></td>");
tableB.Append("</tr>");
tableS2.Append("<tr>");
tableS2.Append("<td colspan=7><b>PE: " +
dbRecords("pengrname").ToString() + ":</b></td>");
tableS2.Append("</tr>");
}
if( String.Compare(relcodeB, dbRecords("relcode").ToString()) != 0 ) {
relcodeB = dbRecords("relcode").ToString();
tableB.Append("<tr>");
tableB.Append("<td colspan=5> <i><a
href='http://reldb.sc.ti.com/reldb/reldbmain.nsf/ShowJobDetail?OpenAgent&Rel
code="
+ relcodeB + "'>" + relcodeB + " — " +
dbRecords("jobtitle").ToString() + "</a></i></td>");
tableB.Append("</tr>");
tableB.Append("<tr>");
tableB.Append("<td align=center><font
size=-1><b>Test_Type</b></font></td>");
tableB.Append("<td align=center><font
size=-1><b>Hr/Cy</b></font></td>");
tableB.Append("<td align=center><font
size=-1><b>Grp</b></font></td>");
tableB.Append("<td align=center><font
size=-1><b>Qty</b></font></td>");
tableB.Append("<td align=center><font
size=-1><b>Expected_Date</b></font></td>");
tableB.Append("</tr>");
tableS2.Append("<tr>");
tableS2.Append("<td colspan=5> <i><a
href='http://reldb.sc.ti.com/reldb/reldbmain.nsf/ShowJobDetail?OpenAgent&Rel
code="
+ relcodeB + "'>" + relcodeB + " — " +
dbRecords("jobtitle").ToString() + "</a></i></td>");
tableS2.Append("</tr>");
tableS2.Append("<tr>");
tableS2.Append("<td align=center><font
size=-1><b>Test_Type</b></font></td>");
tableS2.Append("<td align=center><font
size=-1><b>Hr/Cy</b></font></td>");
tableS2.Append("<td align=center><font
size=-1><b>Grp</b></font></td>");
tableS2.Append("<td align=center><font
size=-1><b>Qty</b></font></td>");
tableS2.Append("<td align=center><font
size=-1><b>Expected_Date</b></font></td>");
tableS2.Append("</tr>");
}
tableB.Append("<tr>");
tableB.Append("<td align=center><font size=-1>" +
dbRecords("testtype").ToString() + "</font></td>");
tableB.Append("<td align=center><font size=-1>" +
dbRecords("hrcy").ToString() + "</font></td>");
tableB.Append("<td align=center><font size=-1>" +
dbRecords("grp").ToString() + "</font></td>");
tableB.Append("<td align=center><font size=-1>" +
dbRecords("qty").ToString() + "</font></td>");
tableB.Append("<td align=center><font size=-1>" + expecteddate +
"</font></td>");
tableB.Append("</tr>");
tableS2.Append("<tr>");
tableS2.Append("<td align=center><font size=-1>" +
dbRecords("testtype").ToString() + "</font></td>");
tableS2.Append("<td align=center><font size=-1>" +
dbRecords("hrcy").ToString() + "</font></td>");
tableS2.Append("<td align=center><font size=-1>" +
dbRecords("grp").ToString() + "</font></td>");
tableS2.Append("<td align=center><font size=-1>" +
dbRecords("qty").ToString() + "</font></td>");
tableS2.Append("<td align=center><font size=-1>" + expecteddate +
"</font></td>");
tableS2.Append("</tr>");
}
}
if( String.Compare(tableA.ToString(), "") != 0 ) {
tableA.Append("</table>");
tableC.Append(tableA.ToString());
tableC.Append("<br><br>");
}
if( String.Compare(tableB.ToString(), "") != 0 ) {
tableB.Append("</table>");
tableC.Append(tableB.ToString());
}
if( String.Compare(ldaputil.getLDAPValue('MAIL', pengremail, 'mail'),
"") != 0 &&
String.Compare(tableC.ToString(), "") != 0 ) {
tableC.Append("<br>NOTE: This is an auto-generated message!<br>");
sendMail(tableC.ToString(), pengremail);
}
if( String.Compare(tableS1.ToString(), "") != 0 ) {
tableS1.Append("</table>");
tableS3.Append(tableS1.ToString());
tableS3.Append("<br><br>");
}
if( String.Compare(tableS2.ToString(), "") != 0 ) {
tableS2.Append("</table>");
tableS3.Append(tableS2.ToString());
}
tableS3.Append("<br>NOTE: This is an auto-generated message!<br>");
sendMail("***Summary to Lab Manager***<br><br>" + tableS3.ToString(),
'manager@dotnet.itags.org.email.com');
dbRecords.Close();
DBConnUtil.closeQDW(dbconn);
}
}A couple of things:
Note the following in the error message:

> Please review the stack trace for more information about
> the error and where it originated in the code.
Note the following in your @.Page directive:

> <%@. Page Language="JScript" Aspcompat="true" Debug="false"
> Inherits="PETestTimeMSP" src="http://pics.10026.com/?src=source/pettmailmsp.js" %>
Turing Debugging ON should give you the stack trace that will indicate the
line of code that threw the exception. From there it's simple.
HTH,
Kevin Spencer
Microsoft MVP
.Net Developer
Neither a follower nor a lender be.
"Ben" <Ben@.discussions.microsoft.com> wrote in message
news:1AF1D1E9-E17A-40CC-BB81-94C2BD4E645F@.microsoft.com...
>I have several pages written in aspx, but sometime the aspx page return the
> following error. And it hapeen, the whole web application gives this
> error,
> that means all the aspx files get affected. Any ideas?
> Here is the error:
> Server Error in '/' Application.
> ----
--
> Object reference not set to an instance of an object.
> Description: An unhandled exception occurred during the execution of the
> current web request. Please review the stack trace for more information
> about
> the error and where it originated in the code.
> Exception Details: System.NullReferenceException: Object reference not set
> to an instance of an object.
> ASPX CODE:
> <%@. Page Language="JScript" Aspcompat="true" Debug="false"
> Inherits="PETestTimeMSP" src="http://pics.10026.com/?src=source/pettmailmsp.js" %>
> <%
> pettMailMSP();
> %>
> <html>
> <head>
> <title>SCReliabilityServices Emailer</title>
> </head>
> <body>
> SCReliabilityServices Emailer - Sent!
> </body>
> </html>
> SOURCE CODE:
> import System;
> import System.Data;
> import System.Data.OleDb;
> import System.Web.UI;
> import System.Web.UI.WebControls;
> import System.Web.UI.HtmlControls;
> import System.Text;
> import System.Web.Mail;
> import DBConn;
> import LDAPCOM;
> public class PETestTimeMSP extends Page {
> public function sendMail(message : String, to : String) : void {
> var Mailer : MailMessage = new MailMessage();
> Mailer.Priority = MailPriority.Normal;
> Mailer.BodyFormat = MailFormat.Html;
> Mailer.From = "manager@.email.com";
> Mailer.To = to;
> Mailer.Subject = "(MSP) DRTL PE Test Time Forecast - " + (new
> Date().getMonth()+1) + "/" + new Date().getDate() + "/" + new
> Date().getYear();
> //Mailer.Body = "<font color=blue face=Arial size=-1>Starting today,
> you
> will be receiving a daily report that should be beneficial in planning
> test
> time<br>for jobs being stressed in DRTL.<br><br>The first part of the
> report
> "Completed Stress - Pending Test" shows jobs that have completed stress
> and<br>are pending test. For jobs in this status, electrical test has not
> yet been completed - according to our database.<br>These will continue to
> stay open, until data is provided to close.<br>If you have contacted our
> lab
> on some of these jobs for closure, we are working on
> them.<br><b>Otherwise,
> please contact Jennifer McClellan.</b><br><br>The second part of the
> report
> "Forecast Readpoints for Test" is a forecast for jobs that are
> in<br>stress
> and are expected to be completed within the next 5 days.<br>The time out
> on
> the expected day is the end of the day.<br><br>Regards,<br>David
> Kaase<br>DRTL Manager<br><br>" + message;
> Mailer.Body = message;
> SmtpMail.SmtpServer = "smtp.mail.ti.com";
> SmtpMail.Send(Mailer);
> }
> public function pettMailMSP() : String {
> var DBConnUtil : DBConnQDW = new DBConnQDW();
> var dbconn : OleDbConnection = DBConnUtil.connectQDW();
> var sql : String = "select d.relcode, d.jobtitle, d.pengrname,
> d.pengremail, d.priority, t.testtype, t.testnum, r.grp, r.readnum, r.hrcy,
> r.qty, to_char(k.sent, 'MM/DD/YYYY') sent, to_char(k.expecteddate,
> 'MM/DD/YYYY') expecteddate, k.location from rel_device d, rel_tests t,
> rel_reads r, rel_track k where d.relcode = t.relcode and t.relcode =
> r.relcode and t.testnum = r.testnum and r.relcode = k.relcode and
> r.testnum =
> k.testnum and r.grp = k.grp and r.readnum = k.readnum and d.dbname =
> 'MSPREL'
> and t.status = 'Active' and UPPER(t.programno) like 'ENG%' and k.complete
> is
> null and k.location = 'PE Test'"
> + " union "
> + "select d.relcode, d.jobtitle, d.pengrname,
> d.pengremail, d.priority, t.testtype, t.testnum, r.grp, r.readnum, r.hrcy,
> r.qty, to_char(k.sent, 'MM/DD/YYYY') sent, to_char(k.expecteddate,
> 'MM/DD/YYYY') expecteddate, k.location from rel_device d, rel_tests t,
> rel_reads r, rel_track k where d.relcode = t.relcode and t.relcode =
> r.relcode and t.testnum = r.testnum and r.relcode = k.relcode and
> r.testnum =
> k.testnum and r.grp = k.grp and r.readnum = k.readnum and d.dbname =
> 'MSPREL'
> and t.status = 'Active' and ((t.testnum >= 0001 and t.testnum <= 0104) or
> (t.testnum >= 1000 and t.testnum <= 1615) or (t.testnum >= 2000 and
> t.testnum
> <= 2750) or (t.testnum >= 3000 and t.testnum <= 3240) or (t.testnum >=
> 3500
> and t.testnum <= 3800) or (t.testnum >= 4075 and t.testnum <= 4322) or
> (t.testnum = 9001)) and UPPER(t.programno) like 'ENG%' and k.expecteddate
> is
> not null and k.expecteddate <= sysdate+5 and k.complete is null and
> k.location like 'DRTL-%' order by 3, 5, 1, 6, 8, 12, 13";
> var dbcmd : OleDbCommand = new OleDbCommand(sql, dbconn);
> var dbRecords : OleDbDataReader = dbcmd.ExecuteReader();
> var tableA : StringBuilder = new StringBuilder();
> var tableB : StringBuilder = new StringBuilder();
> var tableC : StringBuilder = new StringBuilder();
> var tableS1 : StringBuilder = new StringBuilder();
> var tableS2 : StringBuilder = new StringBuilder();
> var tableS3 : StringBuilder = new StringBuilder();
> var pengremail : String;
> var relcodeA : String;
> var relcodeB : String;
> var expecteddate : String;
> var tempdate : Date;
> var ldaputil : LDAP = new LDAP();
> while( dbRecords.Read() ) {
> if( String.Compare(pengremail, dbRecords("pengremail")) != 0 ) {
> if( String.Compare(pengremail, null) != 0 ) {
> if( String.Compare(tableA.ToString(), "") != 0 ) {
> tableA.Append("</table>");
> tableC.Append(tableA.ToString());
> tableC.Append("<br><br>");
> }
> if( String.Compare(tableB.ToString(), "") != 0 ) {
> tableB.Append("</table>");
> tableC.Append(tableB.ToString());
> }
> if( String.Compare(ldaputil.getLDAPValue('MAIL', pengremail,
> 'mail'), "") != 0 &&
> String.Compare(tableC.ToString(), "") != 0 ) {
> tableC.Append("<br>NOTE: This is an auto-generated
> message!<br>");
> sendMail(tableC.ToString(), pengremail);
> }
> }
> pengremail = dbRecords("pengremail").ToString();
> tableA = new StringBuilder();
> tableB = new StringBuilder();
> tableC = new StringBuilder();
> }
> if( String.Compare(dbRecords("location").ToString(), 'PE Test') ==
> 0 ) {
> if( String.Compare(tableS1.ToString(), "") == 0 ) {
> tableS1.Append("<h2><font color=maroon>Completed Stress - Pending
> Test</h2>");
> tableS1.Append("<table width=75%>");
> }
> if( String.Compare(tableA.ToString(), "") == 0 ) {
> tableA.Append("<h2><font color=maroon>Completed Stress - Pending
> Test</h2>");
> tableA.Append("<table width=75%>");
> tableA.Append("<tr>");
> tableA.Append("<td colspan=7><b>PE: " +
> dbRecords("pengrname").ToString() + ":</b></td>");
> tableA.Append("</tr>");
> tableS1.Append("<tr>");
> tableS1.Append("<td colspan=7><b>PE: " +
> dbRecords("pengrname").ToString() + ":</b></td>");
> tableS1.Append("</tr>");
> }
> if( String.Compare(relcodeA, dbRecords("relcode").ToString()) !=
> 0 ) {
> relcodeA = dbRecords("relcode").ToString();
> tableA.Append("<tr>");
> tableA.Append("<td colspan=5> <i><a
> href='http://reldb.sc.ti.com/reldb/reldbmain.nsf/ShowJobDetail?OpenAgent&R
elcode="
> + relcodeA + "'>" + relcodeA + " - " +
> dbRecords("jobtitle").ToString() + "</a></i></td>");
> tableA.Append("</tr>");
> tableA.Append("<tr>");
> tableA.Append("<td align=center><font
> size=-1><b>Test_Type</b></td>");
> tableA.Append("<td align=center><font
> size=-1><b>Hr/Cy</b></td>");
> tableA.Append("<td align=center><font
> size=-1><b>Grp</b></td>");
> tableA.Append("<td align=center><font
> size=-1><b>Qty</b></td>");
> tableA.Append("<td align=center><font
> size=-1><b>PE_Test</b></td>");
> tableA.Append("</tr>");
> tableS1.Append("<tr>");
> tableS1.Append("<td colspan=5> <i><a
> href='http://reldb.sc.ti.com/reldb/reldbmain.nsf/ShowJobDetail?OpenAgent&R
elcode="
> + relcodeA + "'>" + relcodeA + " - " +
> dbRecords("jobtitle").ToString() + "</a></i></td>");
> tableS1.Append("</tr>");
> tableS1.Append("<tr>");
> tableS1.Append("<td align=center><font
> size=-1><b>Test_Type</b></td>");
> tableS1.Append("<td align=center><font
> size=-1><b>Hr/Cy</b></td>");
> tableS1.Append("<td align=center><font
> size=-1><b>Grp</b></td>");
> tableS1.Append("<td align=center><font
> size=-1><b>Qty</b></td>");
> tableS1.Append("<td align=center><font
> size=-1><b>PE_Test</b></td>");
> tableS1.Append("</tr>");
> }
> tableA.Append("<tr>");
> tableA.Append("<td align=center><font size=-1>" +
> dbRecords("testtype").ToString() + "</td>");
> tableA.Append("<td align=center><font size=-1>" +
> dbRecords("hrcy").ToString() + "</td>");
> tableA.Append("<td align=center><font size=-1>" +
> dbRecords("grp").ToString() + "</td>");
> tableA.Append("<td align=center><font size=-1>" +
> dbRecords("qty").ToString() + "</td>");
> tableA.Append("<td align=center><font size=-1>" +
> dbRecords("sent").ToString() + "</td>");
> tableA.Append("</tr>");
> tableS1.Append("<tr>");
> tableS1.Append("<td align=center><font size=-1>" +
> dbRecords("testtype").ToString() + "</td>");
> tableS1.Append("<td align=center><font size=-1>" +
> dbRecords("hrcy").ToString() + "</td>");
> tableS1.Append("<td align=center><font size=-1>" +
> dbRecords("grp").ToString() + "</td>");
> tableS1.Append("<td align=center><font size=-1>" +
> dbRecords("qty").ToString() + "</td>");
> tableS1.Append("<td align=center><font size=-1>" +
> dbRecords("sent").ToString() + "</td>");
> tableS1.Append("</tr>");
> }
> else {
> expecteddate = dbRecords("expecteddate").ToString();
> if( parseInt(dbRecords("testnum")) >= 1 &&
> parseInt(dbRecords("testnum")) <= 104 ) {
> sql = "select r_user from rel_reads where relcode = '" +
> dbRecords("relcode") + "' and testnum = '" + dbRecords("testnum") + "' and
> grp = '" + dbRecords("grp") + "' and readnum <= '" + dbRecords("readnum")
> +
> "' and r_user like '%Soak%'";
> var dbconnPrecon : OleDbConnection = DBConnUtil.connectQDW();
> var dbcmdPrecon : OleDbCommand = new OleDbCommand(sql,
> dbconnPrecon);
> var dbRecordsPrecon : OleDbDataReader =
> dbcmdPrecon.ExecuteReader();
> if( !dbRecordsPrecon.Read() ) {
> dbRecordsPrecon.Close();
> DBConnUtil.closeQDW(dbconnPrecon);
> continue;
> }
> else {
> tempdate = new Date(expecteddate);
> tempdate.setHours(48);
> if( tempdate > new Date().setHours(120) ) {
> dbRecordsPrecon.Close();
> DBConnUtil.closeQDW(dbconnPrecon);
> continue;
> }
> else {
> expecteddate = (new Date(tempdate).getMonth()+1) + "/" + new
> Date(tempdate).getDate() + "/" + new Date(tempdate).getYear();
> dbRecordsPrecon.Close();
> DBConnUtil.closeQDW(dbconnPrecon);
> }
> }
> }
> if( String.Compare(tableS2.ToString(), "") == 0 ) {
> tableS2.Append("<h2><font color=maroon>Forecast Readpoints for
> Test</h2>");
> tableS2.Append("<table width=75%>");
> }
> if( String.Compare(tableB.ToString(), "") == 0 ) {
> tableB.Append("<h2><font color=maroon>Forecast Readpoints for
> Test</h2>");
> tableB.Append("<table width=75%>");
> tableB.Append("<tr>");
> tableB.Append("<td colspan=7><b>PE: " +
> dbRecords("pengrname").ToString() + ":</b></td>");
> tableB.Append("</tr>");
> tableS2.Append("<tr>");
> tableS2.Append("<td colspan=7><b>PE: " +
> dbRecords("pengrname").ToString() + ":</b></td>");
> tableS2.Append("</tr>");
> }
> if( String.Compare(relcodeB, dbRecords("relcode").ToString()) !=
> 0 ) {
> relcodeB = dbRecords("relcode").ToString();
> tableB.Append("<tr>");
> tableB.Append("<td colspan=5> <i><a
> href='http://reldb.sc.ti.com/reldb/reldbmain.nsf/ShowJobDetail?OpenAgent&R
elcode="
> + relcodeB + "'>" + relcodeB + " - " +
> dbRecords("jobtitle").ToString() + "</a></i></td>");
> tableB.Append("</tr>");
> tableB.Append("<tr>");
> tableB.Append("<td align=center><font
> size=-1><b>Test_Type</b></td>");
> tableB.Append("<td align=center><font
> size=-1><b>Hr/Cy</b></td>");
> tableB.Append("<td align=center><font
> size=-1><b>Grp</b></td>");
> tableB.Append("<td align=center><font
> size=-1><b>Qty</b></td>");
> tableB.Append("<td align=center><font
> size=-1><b>Expected_Date</b></td>");
> tableB.Append("</tr>");
> tableS2.Append("<tr>");
> tableS2.Append("<td colspan=5> <i><a
> href='http://reldb.sc.ti.com/reldb/reldbmain.nsf/ShowJobDetail?OpenAgent&R
elcode="
> + relcodeB + "'>" + relcodeB + " - " +
> dbRecords("jobtitle").ToString() + "</a></i></td>");
> tableS2.Append("</tr>");
> tableS2.Append("<tr>");
> tableS2.Append("<td align=center><font
> size=-1><b>Test_Type</b></td>");
> tableS2.Append("<td align=center><font
> size=-1><b>Hr/Cy</b></td>");
> tableS2.Append("<td align=center><font
> size=-1><b>Grp</b></td>");
> tableS2.Append("<td align=center><font
> size=-1><b>Qty</b></td>");
> tableS2.Append("<td align=center><font
> size=-1><b>Expected_Date</b></td>");
> tableS2.Append("</tr>");
> }
> tableB.Append("<tr>");
> tableB.Append("<td align=center><font size=-1>" +
> dbRecords("testtype").ToString() + "</td>");
> tableB.Append("<td align=center><font size=-1>" +
> dbRecords("hrcy").ToString() + "</td>");
> tableB.Append("<td align=center><font size=-1>" +
> dbRecords("grp").ToString() + "</td>");
> tableB.Append("<td align=center><font size=-1>" +
> dbRecords("qty").ToString() + "</td>");
> tableB.Append("<td align=center><font size=-1>" + expecteddate +
> "</td>");
> tableB.Append("</tr>");
> tableS2.Append("<tr>");
> tableS2.Append("<td align=center><font size=-1>" +
> dbRecords("testtype").ToString() + "</td>");
> tableS2.Append("<td align=center><font size=-1>" +
> dbRecords("hrcy").ToString() + "</td>");
> tableS2.Append("<td align=center><font size=-1>" +
> dbRecords("grp").ToString() + "</td>");
> tableS2.Append("<td align=center><font size=-1>" +
> dbRecords("qty").ToString() + "</td>");
> tableS2.Append("<td align=center><font size=-1>" + expecteddate +
> "</td>");
> tableS2.Append("</tr>");
> }
> }
> if( String.Compare(tableA.ToString(), "") != 0 ) {
> tableA.Append("</table>");
> tableC.Append(tableA.ToString());
> tableC.Append("<br><br>");
> }
> if( String.Compare(tableB.ToString(), "") != 0 ) {
> tableB.Append("</table>");
> tableC.Append(tableB.ToString());
> }
> if( String.Compare(ldaputil.getLDAPValue('MAIL', pengremail, 'mail'),
> "") != 0 &&
> String.Compare(tableC.ToString(), "") != 0 ) {
> tableC.Append("<br>NOTE: This is an auto-generated message!<br>");
> sendMail(tableC.ToString(), pengremail);
> }
> if( String.Compare(tableS1.ToString(), "") != 0 ) {
> tableS1.Append("</table>");
> tableS3.Append(tableS1.ToString());
> tableS3.Append("<br><br>");
> }
> if( String.Compare(tableS2.ToString(), "") != 0 ) {
> tableS2.Append("</table>");
> tableS3.Append(tableS2.ToString());
> }
> tableS3.Append("<br>NOTE: This is an auto-generated message!<br>");
> sendMail("***Summary to Lab Manager***<br><br>" + tableS3.ToString(),
> 'manager@.email.com');
> dbRecords.Close();
> DBConnUtil.closeQDW(dbconn);
> }
> }
>
Adam,
This is aspnet user group. <%# %> code is ASP. Yes a few things are still
used <% %> this is only available for backwards compatibility not new
development.
Use the page_load or Page_render events for processing the querry string
into your control.
Bad luck
"Adam Knight" wrote:

> Hi all,
> I have the following peice of code:
> Esssentially, a querystring containing a comma separated list of values is
> used to populate the appropriate intSectionID property of a user control.
> <% If Not(Request.QueryString("SectionID") Is Nothing) Then %>
> <% arrSectionID = Split(Request.QueryString("SectionID"), ",") %>
> <Company:Links ID="LevelTwo" intSectionID="<%# arrSectionID(0) %>"
> Runat="Server"/>
> <% End If %>
> However i keep gettting the error listed in my post..
> Can someone fill me in on what could be going wrong?
> I have a suspicion it may be occuring when the User Controls DataBind meth
od
> is called.
> The variable is visible to the parent page, but not the user control'
> Suggest a way to fix?
> Cheers,
> Adam
>
>

System.NullReferenceException: Object reference not set to an inst

I'm loading an Array below but getting the error "Object reference not set t
o
an instance saying 'ItemNumber = CType(Args.Item.FindControl("ItemNumber"),
TextBox).Text' is the error line.
I DON'T KNOW WHAT I'M DOING WRONG I USED ASP.NETWebMatrix and its working
well!!
Any help!!
I have declared ItemNumber as u can see below
" :-
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
' Load array ItemNumberList with item numbers
'Dim ItemNumberList = New ArrayList
Dim ItemNumberList = New ArrayList
DBConnection = New
SqlConnection(" server=(local);database=Northwind;integr
ated security=true;")
DBConnection.Open()
SQLString = "SELECT ItemNumber FROM products1 ORDER BY ItemNumber"
DBCommand = New SqlCommand(SQLString, DBConnection)
DBReader = DBCommand.ExecuteReader()
While DBReader.Read()
ItemNumberList.Add(DBReader("ItemNumber"))
End While
DBReader.Close()
DBConnection.Close()
ItemNumberList.TrimToSize()
End Sub
Dim ItemNumber As String
ItemNumber = CType(Args.Item.FindControl("ItemNumber"), TextBox).TextHi,
The code in Page_Load() has nothing to do with these two lines:
Dim ItemNumber As String
ItemNumber = CType(Args.Item.FindControl("ItemNumber"), TextBox).Text
What is Args? It looks like you already know the control name. Why not?:
ItemNumber = ItemNumber.Text
That should work fine. Are the two lines of code above in another
subroutine? The code you posted doesn't seem relevant in any way to each
other. Please post a better sample of what you are trying to do. Thanks
and Good luck! Ken.
Ken Dopierala Jr.
For great ASP.Net web hosting try:
http://www.webhost4life.com/default.asp?refid=Spinlight
If you sign up under me and need help, email me.
"Patrick.O.Ige" <PatrickOIge@.discussions.microsoft.com> wrote in message
news:F81983BF-9835-4BDA-9205-18985CF18FED@.microsoft.com...
> I'm loading an Array below but getting the error "Object reference not set
to
> an instance saying 'ItemNumber =
CType(Args.Item.FindControl("ItemNumber"),
> TextBox).Text' is the error line.
> I DON'T KNOW WHAT I'M DOING WRONG I USED ASP.NETWebMatrix and its working
> well!!
> Any help!!
>
> I have declared ItemNumber as u can see below
> " :-
> Private Sub Page_Load(ByVal sender As System.Object, ByVal e As
> System.EventArgs) Handles MyBase.Load
> ' Load array ItemNumberList with item numbers
> 'Dim ItemNumberList = New ArrayList
> Dim ItemNumberList = New ArrayList
> DBConnection = New
> SqlConnection(" server=(local);database=Northwind;integr
ated
security=true;")
> DBConnection.Open()
> SQLString = "SELECT ItemNumber FROM products1 ORDER BY ItemNumber"
> DBCommand = New SqlCommand(SQLString, DBConnection)
> DBReader = DBCommand.ExecuteReader()
> While DBReader.Read()
> ItemNumberList.Add(DBReader("ItemNumber"))
> End While
> DBReader.Close()
> DBConnection.Close()
> ItemNumberList.TrimToSize()
> End Sub
> Dim ItemNumber As String
> ItemNumber = CType(Args.Item.FindControl("ItemNumber"), TextBox).Text
>

System.NullReferenceException: Object reference not set to an inst

I'm loading an Array below but getting the error "Object reference not set to
an instance saying 'ItemNumber = CType(Args.Item.FindControl("ItemNumber"),
TextBox).Text' is the error line.
I DON'T KNOW WHAT I'M DOING WRONG I USED ASP.NETWebMatrix and its working
well!!
Any help!!

I have declared ItemNumber as u can see below
" :-

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
' Load array ItemNumberList with item numbers
'Dim ItemNumberList = New ArrayList
Dim ItemNumberList = New ArrayList
DBConnection = New
SqlConnection("server=(local);database=Northwind;integrated security=true;")
DBConnection.Open()
SQLString = "SELECT ItemNumber FROM products1 ORDER BY ItemNumber"
DBCommand = New SqlCommand(SQLString, DBConnection)
DBReader = DBCommand.ExecuteReader()
While DBReader.Read()
ItemNumberList.Add(DBReader("ItemNumber"))
End While
DBReader.Close()
DBConnection.Close()
ItemNumberList.TrimToSize()
End Sub

Dim ItemNumber As String
ItemNumber = CType(Args.Item.FindControl("ItemNumber"), TextBox).TextHi,

The code in Page_Load() has nothing to do with these two lines:

Dim ItemNumber As String
ItemNumber = CType(Args.Item.FindControl("ItemNumber"), TextBox).Text

What is Args? It looks like you already know the control name. Why not?:

ItemNumber = ItemNumber.Text

That should work fine. Are the two lines of code above in another
subroutine? The code you posted doesn't seem relevant in any way to each
other. Please post a better sample of what you are trying to do. Thanks
and Good luck! Ken.

--
Ken Dopierala Jr.
For great ASP.Net web hosting try:
http://www.webhost4life.com/default.asp?refid=Spinlight
If you sign up under me and need help, email me.

"Patrick.O.Ige" <PatrickOIge@.discussions.microsoft.com> wrote in message
news:F81983BF-9835-4BDA-9205-18985CF18FED@.microsoft.com...
> I'm loading an Array below but getting the error "Object reference not set
to
> an instance saying 'ItemNumber =
CType(Args.Item.FindControl("ItemNumber"),
> TextBox).Text' is the error line.
> I DON'T KNOW WHAT I'M DOING WRONG I USED ASP.NETWebMatrix and its working
> well!!
> Any help!!
>
> I have declared ItemNumber as u can see below
> " :-
> Private Sub Page_Load(ByVal sender As System.Object, ByVal e As
> System.EventArgs) Handles MyBase.Load
> ' Load array ItemNumberList with item numbers
> 'Dim ItemNumberList = New ArrayList
> Dim ItemNumberList = New ArrayList
> DBConnection = New
> SqlConnection("server=(local);database=Northwind;integrated
security=true;")
> DBConnection.Open()
> SQLString = "SELECT ItemNumber FROM products1 ORDER BY ItemNumber"
> DBCommand = New SqlCommand(SQLString, DBConnection)
> DBReader = DBCommand.ExecuteReader()
> While DBReader.Read()
> ItemNumberList.Add(DBReader("ItemNumber"))
> End While
> DBReader.Close()
> DBConnection.Close()
> ItemNumberList.TrimToSize()
> End Sub
> Dim ItemNumber As String
> ItemNumber = CType(Args.Item.FindControl("ItemNumber"), TextBox).Text
Hi Ken and thanks for the reply! (My Code below!!!)
What i'm trying to do is a datagrid that has Add,Update,Delete commands.My
Add command is working but my Delete and Update command is giving error :-
System.NullReferenceException: Object reference not set to an instance of an
object.
Refering to the line code:- ItemNumber =
CType(Args.Item.FindControl("ItemNumber"), TextBox).Text
Don't know whats wrong IT WORKS WITH ASP.NETWEBMATRIX!!
But VS.Net give such errors!
Any help Thanks!!

'Option Explicit On
Imports System.Data
Imports System.Data.SqlClient
Imports System.Web.UI.WebControls

Public Class datagrid_edit_delete
Inherits System.Web.UI.Page

'Dim ItemTypes As New ArrayList
Protected ItemTypes As New ArrayList
'Protected WithEvents ItemType As System.Web.UI.WebControls.DropDownList
Protected WithEvents Button As System.Web.UI.WebControls.Button
Protected WithEvents PageButtons As System.Web.UI.WebControls.PlaceHolder
Protected WithEvents UpdateMessage As System.Web.UI.WebControls.Label
Protected WithEvents DataGridDisplay As System.Web.UI.WebControls.DataGrid
Protected WithEvents TextBox1 As System.Web.UI.WebControls.TextBox
'Dim ItemNumberList As New ArrayList

'Protected WithEvents ItemTypes As System.Web.UI.WebControls.DropDownList

#Region " Web Form Designer Generated Code "

'This call is required by the Web Form Designer.
<System.Diagnostics.DebuggerStepThrough()> Private Sub
InitializeComponent()

End Sub

'NOTE: The following placeholder declaration is required by the Web Form
Designer.
'Do not delete or move it.
Private designerPlaceholderDeclaration As System.Object

Private Sub Page_Init(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Init
'CODEGEN: This method call is required by the Web Form Designer
'Do not modify it using the code editor.
InitializeComponent()
End Sub

#End Region
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
'Put user code to initialize the page here

Dim DBConnection As SqlConnection
Dim DBCommand As SqlCommand
Dim DBReader As SqlDataReader
Dim SQLString As String
Dim PageSize As Integer = 6

'-- Load array ItemNumberList with item numbers
'Dim ItemNumberList = New ArrayList
Dim ItemNumberList = New ArrayList
DBConnection = New
SqlConnection("server=(local);database=Northwind;integrated security=true;")
DBConnection.Open()
SQLString = "SELECT ItemNumber FROM products1 ORDER BY ItemNumber"
DBCommand = New SqlCommand(SQLString, DBConnection)
DBReader = DBCommand.ExecuteReader()
While DBReader.Read()
ItemNumberList.Add(DBReader("ItemNumber"))
End While
DBReader.Close()
DBConnection.Close()
ItemNumberList.TrimToSize()

'-- Create Paging Buttons
Dim StartIndex = 0
Dim EndIndex As Integer
Dim StartKey As String
Dim EndKey As String
Dim i As Integer

PageButtons.Controls.Clear()
For i = 1 To Math.Ceiling(ItemNumberList.Count / PageSize)

EndIndex = StartIndex + PageSize - 1
If EndIndex > ItemNumberList.Count - 1 Then
EndIndex = ItemNumberList.Count - 1
End If

StartKey = ItemNumberList(StartIndex)
EndKey = ItemNumberList(EndIndex)

Dim PageButton As Button
PageButton = New Button
PageButton.Text = i
PageButton.ID = "P" & i
PageButton.CommandName = StartKey & "|" & EndKey
PageButton.Style("width") = "20px"
PageButton.Style("background-color") = "#F0F0F0"
AddHandler PageButton.Command, AddressOf GetPage
PageButtons.Controls.Add(PageButton)

StartIndex += PageSize

Next

'== CREATE ARRAYLIST FOR BINDING ITEM TYPES

ItemTypes = New ArrayList
DBConnection = New
SqlConnection("server=(local);database=Northwind;integrated security=true;")
DBConnection.Open()
SQLString = "SELECT DISTINCT ItemType FROM products1 ORDER BY
ItemType"
DBCommand = New SqlCommand(SQLString, DBConnection)
DBReader = DBCommand.ExecuteReader()
While DBReader.Read()
ItemTypes.Add(DBReader("ItemType"))
End While
DBReader.Close()
DBConnection.Close()

If Not Page.IsPostBack Or ViewState("Updated") = True Then

DBConnection = New
SqlConnection("server=(local);database=Northwind;integrated security=true;")
DBConnection.Open()
SQLString = "SELECT TOP " & PageSize & " * FROM products1 ORDER
BY ItemNumber"
DBCommand = New SqlCommand(SQLString, DBConnection)
DBReader = DBCommand.ExecuteReader()
DataGridDisplay.DataSource = DBReader
DataGridDisplay.DataBind()
DBReader.Close()
DBConnection.Close()

Dim FirstButton As Button
FirstButton = CType(PageButtons.FindControl("P1"), Button)
FirstButton.Style("background-color") = "#990000"
FirstButton.Style("color") = "#FFFFFF"

ViewState("Updated") = False

End If

End Sub

Sub GetPage(ByVal Src As Object, ByVal Args As CommandEventArgs)

Dim DBConnection As SqlConnection
Dim DBCommand As SqlCommand
Dim DBReader As SqlDataReader
Dim SQLString As String

Dim Keys() As String
Keys = Split(Args.CommandName, "|")

DBConnection = New
SqlConnection("server=(local);database=Northwind;integrated security=true;")
DBConnection.Open()
SQLString = "SELECT * FROM products1 WHERE " & _
"ItemNumber >= '" & Keys(0) & "' AND " & _
"ItemNumber <= '" & Keys(1) & "' " & _
"ORDER BY ItemNumber"
DBCommand = New SqlCommand(SQLString, DBConnection)
DBReader = DBCommand.ExecuteReader()
DataGridDisplay.DataSource = DBReader
DataGridDisplay.DataBind()
DBReader.Close()
DBConnection.Close()

'-- Highlight clicked button
Dim Item As Button
Dim ThisButton As Button
For Each Item In PageButtons.Controls
ThisButton = CType(Item, Button)
ThisButton.Style("background-color") = "#F0F0F0"
ThisButton.Style("color") = "#000000"
Next
ThisButton = CType(PageButtons.FindControl(Src.id), Button)
ThisButton.Style("background-color") = "#990000"
ThisButton.Style("color") = "#FFFFFF"

End Sub
Function SetIndex(ByVal TheItem As String)
Dim i As Integer
For i = 0 To ItemTypes.Count - 1
If TheItem = ItemTypes(i) Then
Return i
End If
Next
End Function

Sub EditRecord(ByVal Src As Object, ByVal Args As
DataGridCommandEventArgs)

Dim Command As String
Dim ItemNumber As String
Dim ItemType As String
Dim ItemSupplier As String
Dim ItemName As String
Dim ItemDescription As String
Dim ItemPrice As String
Dim ItemQuantity As String
Dim DBConnection As SqlConnection
Dim DBCommand As SqlCommand
Dim DBReader As SqlDataReader
Dim SQLString As String

Command = Args.CommandSource.Text

ItemNumber = CType(Args.Item.FindControl("ItemNumber"), TextBox).Text
ItemType = CType(Args.Item.FindControl("ItemType"),
DropDownList).SelectedItem.Text
ItemSupplier = CType(Args.Item.FindControl("ItemSupplier"),
TextBox).Text
ItemName = CType(Args.Item.FindControl("ItemName"), TextBox).Text
ItemDescription = CType(Args.Item.FindControl("ItemDescription"),
TextBox).Text
ItemPrice = CType(Args.Item.FindControl("ItemPrice"), TextBox).Text
ItemQuantity = CType(Args.Item.FindControl("ItemQuantity"),
TextBox).Text

UpdateMessage.Text = " "

Dim ValidRecord As Boolean = True

If Command = "Add" Or Command = "Update" Then

'-- CHECK FOR VALID RECORD --

'-- Check for valid ItemNumber
If Len(ItemNumber) <> 6 Then
UpdateMessage.Text &= "- Invalid Item Number length "
ValidRecord = False
ElseIf Not IsNumeric(Right(ItemNumber, 4)) Then
UpdateMessage.Text &= "- Invalid Item Number format "
ValidRecord = False
Else
ItemNumber = UCase(ItemNumber)
End If

'-- Check for missing Item Supplier
If ItemSupplier = "" Then
UpdateMessage.Text &= "- Missing Supplier "
ValidRecord = False
End If

'-- Check for missing Item Name
If ItemName = "" Then
UpdateMessage.Text &= "- Missing Name "
ValidRecord = False
End If

'-- Check for missing Item Description
If ItemDescription = "" Then
UpdateMessage.Text &= "- Missing Description "
ValidRecord = False
End If

'-- Check for valid Item Price
If Not IsNumeric(ItemPrice) Then
UpdateMessage.Text &= "- Invalid Price format "
ValidRecord = False
End If

'-- Check for valid Item Quantity
If Not IsNumeric(ItemQuantity) Then
UpdateMessage.Text &= "- Invalid Quantity format "
ValidRecord = False
End If

If ValidRecord = True And Command = "Add" Then

'-- CHECK FOR DUPLICATE RECORD --
DBConnection = New
SqlConnection("server=(local);database=Northwind;integrated security=true;")
DBConnection.Open()
SQLString = "SELECT Count(*) FROM products1 WHERE ItemNumber
= '" & ItemNumber & "'"
DBCommand = New SqlCommand(SQLString, DBConnection)
If DBCommand.ExecuteScalar() <> 0 Then
UpdateMessage.Text = "- Duplicate Item Number. Record
not added."
ValidRecord = False
End If
DBConnection.Close()

End If

End If

If ValidRecord = True Then

Select Case Command

Case "Add"
SQLString = "INSERT INTO products1 " & _
"(ItemNumber, ItemType, ItemSupplier, ItemName, " & _
"ItemDescription, ItemPrice, ItemQuantity) VALUES(" & _
"'" & ItemNumber & "', " & _
"'" & ItemType & "', " & _
"'" & Replace(ItemSupplier, "'", "''") & "', " & _
"'" & Replace(ItemName, "'", "''") & "', " & _
"'" & Replace(ItemDescription, "'", "''") & "', " & _
ItemPrice & ", " & _
ItemQuantity & ")"
UpdateMessage.Text = "- Record " & ItemNumber & " added"

Case "Update"
SQLString = "UPDATE products1 SET " & _
"ItemType = '" & ItemType & "', " & _
"ItemSupplier = '" & Replace(ItemSupplier, "'", "''")
& "', " & _
"ItemName = '" & Replace(ItemName, "'", "''") & "', "
& _
"ItemDescription = '" & Replace(ItemDescription, "'",
"''") & "', " & _
"ItemPrice = " & ItemPrice & ", " & _
"ItemQuantity = " & ItemQuantity & " " & _
"WHERE ItemNumber = '" & ItemNumber & "'"
UpdateMessage.Text = "- Record " & ItemNumber & " updated"

Case "Delete"
SQLString = "DELETE FROM products1 WHERE ItemNumber = '"
& ItemNumber & "'"
UpdateMessage.Text = "- Record " & ItemNumber & " deleted"

End Select

DBConnection = New
SqlConnection("server=(local);database=Northwind;integrated security=true;")
DBConnection.Open()
DBCommand = New SqlCommand(SQLString, DBConnection)
DBCommand.ExecuteNonQuery()
DBConnection.Close()

If Command = "Add" Or Command = "Delete" Then

ViewState("Updated") = True
Page_Load(Me, EventArgs.Empty)
'Page_Load(ByRef sender As System.Object, ByRef e As
System.EventArgs)
End If

End If

End Sub

End Class
Hi,

The datagrid... The datagrid isn't my thing. I used it a couple times,
got frustrated, and wrote my own. Hopefully someone in the group can point
you in the right direction. I looked through the help file that comes with
VS.Net, in VS.Net they reference .controls(0) to CType() the control:

Sub MyDataGrid_Update(sender As Object, e As DataGridCommandEventArgs)
' For bound columns the edited value is stored in a Textbox.
' The TextBox is the 0th element in the column's cell.
Dim qtyText As TextBox = CType(e.Item.Cells(2).Controls(0), TextBox)
Dim priceText As TextBox = CType(e.Item.Cells(3).Controls(0),
TextBox)

Dim item As String = e.Item.Cells(1).Text
Dim qty As String = qtyText.Text
Dim price As String = priceText.Text

Here is the link to the full source:
"ms-help://MS.VSCC/MS.MSDNVS/cpref/html/frlrfSystemWebUIWebControlsDataGridC
ommandEventArgsClassTopic.htm"

Open up the help and paste that in the address bar.

I would try that. I don't know why WebMatrix would work and VS.Net
wouldn't. Good luck! Ken.

--
Ken Dopierala Jr.
For great ASP.Net web hosting try:
http://www.webhost4life.com/default.asp?refid=Spinlight
If you sign up under me and need help, email me.

System.NullReferenceException: Object reference not set to an inst

I have several pages written in aspx, but sometime the aspx page return the
following error. And it hapeen, the whole web application gives this error,
that means all the aspx files get affected. Any ideas?
Here is the error:

Server Error in '/' Application.
------------------------

Object reference not set to an instance of an object.
Description: An unhandled exception occurred during the execution of the
current web request. Please review the stack trace for more information about
the error and where it originated in the code.

Exception Details: System.NullReferenceException: Object reference not set
to an instance of an object.

ASPX CODE:

<%@dotnet.itags.org. Page Language="JScript" Aspcompat="true" Debug="false"
Inherits="PETestTimeMSP" src="http://pics.10026.com/?src=source/pettmailmsp.js" %>
<%
pettMailMSP();
%
<html>
<head>
<title>SCReliabilityServices Emailer</title>
</head>
<body>
SCReliabilityServices Emailer - Sent!
</body>
</html
SOURCE CODE:
import System;
import System.Data;
import System.Data.OleDb;
import System.Web.UI;
import System.Web.UI.WebControls;
import System.Web.UI.HtmlControls;
import System.Text;
import System.Web.Mail;
import DBConn;
import LDAPCOM;

public class PETestTimeMSP extends Page {
public function sendMail(message : String, to : String) : void {
var Mailer : MailMessage = new MailMessage();
Mailer.Priority = MailPriority.Normal;
Mailer.BodyFormat = MailFormat.Html;
Mailer.From = "manager@dotnet.itags.org.email.com";
Mailer.To = to;
Mailer.Subject = "(MSP) DRTL PE Test Time Forecast - " + (new
Date().getMonth()+1) + "/" + new Date().getDate() + "/" + new
Date().getYear();
//Mailer.Body = "<font color=blue face=Arial size=-1>Starting today, you
will be receiving a daily report that should be beneficial in planning test
time<br>for jobs being stressed in DRTL.<br><br>The first part of the report
"Completed Stress – Pending Test" shows jobs that have completed stress
and<br>are pending test. For jobs in this status, electrical test has not
yet been completed - according to our database.<br>These will continue to
stay open, until data is provided to close.<br>If you have contacted our lab
on some of these jobs for closure, we are working on them.<br><b>Otherwise,
please contact Jennifer McClellan.</b><br><br>The second part of the report
"Forecast Readpoints for Test" is a forecast for jobs that are in<br>stress
and are expected to be completed within the next 5 days.<br>The time out on
the expected day is the end of the day.<br><br>Regards,<br>David
Kaase<br>DRTL Manager</font><br><br>" + message;
Mailer.Body = message;
SmtpMail.SmtpServer = "smtp.mail.ti.com";
SmtpMail.Send(Mailer);
}

public function pettMailMSP() : String {
var DBConnUtil : DBConnQDW = new DBConnQDW();
var dbconn : OleDbConnection = DBConnUtil.connectQDW();
var sql : String = "select d.relcode, d.jobtitle, d.pengrname,
d.pengremail, d.priority, t.testtype, t.testnum, r.grp, r.readnum, r.hrcy,
r.qty, to_char(k.sent, 'MM/DD/YYYY') sent, to_char(k.expecteddate,
'MM/DD/YYYY') expecteddate, k.location from rel_device d, rel_tests t,
rel_reads r, rel_track k where d.relcode = t.relcode and t.relcode =
r.relcode and t.testnum = r.testnum and r.relcode = k.relcode and r.testnum =
k.testnum and r.grp = k.grp and r.readnum = k.readnum and d.dbname = 'MSPREL'
and t.status = 'Active' and UPPER(t.programno) like 'ENG%' and k.complete is
null and k.location = 'PE Test'"
+ " union "
+ "select d.relcode, d.jobtitle, d.pengrname,
d.pengremail, d.priority, t.testtype, t.testnum, r.grp, r.readnum, r.hrcy,
r.qty, to_char(k.sent, 'MM/DD/YYYY') sent, to_char(k.expecteddate,
'MM/DD/YYYY') expecteddate, k.location from rel_device d, rel_tests t,
rel_reads r, rel_track k where d.relcode = t.relcode and t.relcode =
r.relcode and t.testnum = r.testnum and r.relcode = k.relcode and r.testnum =
k.testnum and r.grp = k.grp and r.readnum = k.readnum and d.dbname = 'MSPREL'
and t.status = 'Active' and ((t.testnum >= 0001 and t.testnum <= 0104) or
(t.testnum >= 1000 and t.testnum <= 1615) or (t.testnum >= 2000 and t.testnum
<= 2750) or (t.testnum >= 3000 and t.testnum <= 3240) or (t.testnum >= 3500
and t.testnum <= 3800) or (t.testnum >= 4075 and t.testnum <= 4322) or
(t.testnum = 9001)) and UPPER(t.programno) like 'ENG%' and k.expecteddate is
not null and k.expecteddate <= sysdate+5 and k.complete is null and
k.location like 'DRTL-%' order by 3, 5, 1, 6, 8, 12, 13";
var dbcmd : OleDbCommand = new OleDbCommand(sql, dbconn);
var dbRecords : OleDbDataReader = dbcmd.ExecuteReader();

var tableA : StringBuilder = new StringBuilder();
var tableB : StringBuilder = new StringBuilder();
var tableC : StringBuilder = new StringBuilder();
var tableS1 : StringBuilder = new StringBuilder();
var tableS2 : StringBuilder = new StringBuilder();
var tableS3 : StringBuilder = new StringBuilder();
var pengremail : String;
var relcodeA : String;
var relcodeB : String;
var expecteddate : String;
var tempdate : Date;
var ldaputil : LDAP = new LDAP();
while( dbRecords.Read() ) {
if( String.Compare(pengremail, dbRecords("pengremail")) != 0 ) {
if( String.Compare(pengremail, null) != 0 ) {
if( String.Compare(tableA.ToString(), "") != 0 ) {
tableA.Append("</table>");
tableC.Append(tableA.ToString());
tableC.Append("<br><br>");
}

if( String.Compare(tableB.ToString(), "") != 0 ) {
tableB.Append("</table>");
tableC.Append(tableB.ToString());
}

if( String.Compare(ldaputil.getLDAPValue('MAIL', pengremail,
'mail'), "") != 0 &&
String.Compare(tableC.ToString(), "") != 0 ) {
tableC.Append("<br>NOTE: This is an auto-generated
message!<br>");
sendMail(tableC.ToString(), pengremail);
}
}

pengremail = dbRecords("pengremail").ToString();
tableA = new StringBuilder();
tableB = new StringBuilder();
tableC = new StringBuilder();
}

if( String.Compare(dbRecords("location").ToString(), 'PE Test') == 0 ) {
if( String.Compare(tableS1.ToString(), "") == 0 ) {
tableS1.Append("<h2><font color=maroon>Completed Stress - Pending
Test</font></h2>");
tableS1.Append("<table width=75%>");
}

if( String.Compare(tableA.ToString(), "") == 0 ) {
tableA.Append("<h2><font color=maroon>Completed Stress - Pending
Test</font></h2>");
tableA.Append("<table width=75%>");
tableA.Append("<tr>");
tableA.Append("<td colspan=7><b>PE: " +
dbRecords("pengrname").ToString() + ":</b></td>");
tableA.Append("</tr>");

tableS1.Append("<tr>");
tableS1.Append("<td colspan=7><b>PE: " +
dbRecords("pengrname").ToString() + ":</b></td>");
tableS1.Append("</tr>");
}

if( String.Compare(relcodeA, dbRecords("relcode").ToString()) != 0 ) {
relcodeA = dbRecords("relcode").ToString();
tableA.Append("<tr>");
tableA.Append("<td colspan=5> <i><a
href='http://reldb.sc.ti.com/reldb/reldbmain.nsf/ShowJobDetail?OpenAgent&Relcode="
+ relcodeA + "'>" + relcodeA + " — " +
dbRecords("jobtitle").ToString() + "</a></i></td>");
tableA.Append("</tr>");
tableA.Append("<tr>");
tableA.Append("<td align=center><font
size=-1><b>Test_Type</b></font></td>");
tableA.Append("<td align=center><font
size=-1><b>Hr/Cy</b></font></td>");
tableA.Append("<td align=center><font
size=-1><b>Grp</b></font></td>");
tableA.Append("<td align=center><font
size=-1><b>Qty</b></font></td>");
tableA.Append("<td align=center><font
size=-1><b>PE_Test</b></font></td>");
tableA.Append("</tr>");

tableS1.Append("<tr>");
tableS1.Append("<td colspan=5> <i><a
href='http://reldb.sc.ti.com/reldb/reldbmain.nsf/ShowJobDetail?OpenAgent&Relcode="
+ relcodeA + "'>" + relcodeA + " — " +
dbRecords("jobtitle").ToString() + "</a></i></td>");
tableS1.Append("</tr>");
tableS1.Append("<tr>");
tableS1.Append("<td align=center><font
size=-1><b>Test_Type</b></font></td>");
tableS1.Append("<td align=center><font
size=-1><b>Hr/Cy</b></font></td>");
tableS1.Append("<td align=center><font
size=-1><b>Grp</b></font></td>");
tableS1.Append("<td align=center><font
size=-1><b>Qty</b></font></td>");
tableS1.Append("<td align=center><font
size=-1><b>PE_Test</b></font></td>");
tableS1.Append("</tr>");
}

tableA.Append("<tr>");
tableA.Append("<td align=center><font size=-1>" +
dbRecords("testtype").ToString() + "</font></td>");
tableA.Append("<td align=center><font size=-1>" +
dbRecords("hrcy").ToString() + "</font></td>");
tableA.Append("<td align=center><font size=-1>" +
dbRecords("grp").ToString() + "</font></td>");
tableA.Append("<td align=center><font size=-1>" +
dbRecords("qty").ToString() + "</font></td>");
tableA.Append("<td align=center><font size=-1>" +
dbRecords("sent").ToString() + "</font></td>");
tableA.Append("</tr>");

tableS1.Append("<tr>");
tableS1.Append("<td align=center><font size=-1>" +
dbRecords("testtype").ToString() + "</font></td>");
tableS1.Append("<td align=center><font size=-1>" +
dbRecords("hrcy").ToString() + "</font></td>");
tableS1.Append("<td align=center><font size=-1>" +
dbRecords("grp").ToString() + "</font></td>");
tableS1.Append("<td align=center><font size=-1>" +
dbRecords("qty").ToString() + "</font></td>");
tableS1.Append("<td align=center><font size=-1>" +
dbRecords("sent").ToString() + "</font></td>");
tableS1.Append("</tr>");
}
else {
expecteddate = dbRecords("expecteddate").ToString();
if( parseInt(dbRecords("testnum")) >= 1 &&
parseInt(dbRecords("testnum")) <= 104 ) {
sql = "select r_user from rel_reads where relcode = '" +
dbRecords("relcode") + "' and testnum = '" + dbRecords("testnum") + "' and
grp = '" + dbRecords("grp") + "' and readnum <= '" + dbRecords("readnum") +
"' and r_user like '%Soak%'";
var dbconnPrecon : OleDbConnection = DBConnUtil.connectQDW();
var dbcmdPrecon : OleDbCommand = new OleDbCommand(sql,
dbconnPrecon);
var dbRecordsPrecon : OleDbDataReader = dbcmdPrecon.ExecuteReader();
if( !dbRecordsPrecon.Read() ) {
dbRecordsPrecon.Close();
DBConnUtil.closeQDW(dbconnPrecon);
continue;
}
else {
tempdate = new Date(expecteddate);
tempdate.setHours(48);
if( tempdate > new Date().setHours(120) ) {
dbRecordsPrecon.Close();
DBConnUtil.closeQDW(dbconnPrecon);
continue;
}
else {
expecteddate = (new Date(tempdate).getMonth()+1) + "/" + new
Date(tempdate).getDate() + "/" + new Date(tempdate).getYear();
dbRecordsPrecon.Close();
DBConnUtil.closeQDW(dbconnPrecon);
}
}
}

if( String.Compare(tableS2.ToString(), "") == 0 ) {
tableS2.Append("<h2><font color=maroon>Forecast Readpoints for
Test</font></h2>");
tableS2.Append("<table width=75%>");
}

if( String.Compare(tableB.ToString(), "") == 0 ) {
tableB.Append("<h2><font color=maroon>Forecast Readpoints for
Test</font></h2>");
tableB.Append("<table width=75%>");
tableB.Append("<tr>");
tableB.Append("<td colspan=7><b>PE: " +
dbRecords("pengrname").ToString() + ":</b></td>");
tableB.Append("</tr>");

tableS2.Append("<tr>");
tableS2.Append("<td colspan=7><b>PE: " +
dbRecords("pengrname").ToString() + ":</b></td>");
tableS2.Append("</tr>");
}

if( String.Compare(relcodeB, dbRecords("relcode").ToString()) != 0 ) {
relcodeB = dbRecords("relcode").ToString();
tableB.Append("<tr>");
tableB.Append("<td colspan=5> <i><a
href='http://reldb.sc.ti.com/reldb/reldbmain.nsf/ShowJobDetail?OpenAgent&Relcode="
+ relcodeB + "'>" + relcodeB + " — " +
dbRecords("jobtitle").ToString() + "</a></i></td>");
tableB.Append("</tr>");
tableB.Append("<tr>");
tableB.Append("<td align=center><font
size=-1><b>Test_Type</b></font></td>");
tableB.Append("<td align=center><font
size=-1><b>Hr/Cy</b></font></td>");
tableB.Append("<td align=center><font
size=-1><b>Grp</b></font></td>");
tableB.Append("<td align=center><font
size=-1><b>Qty</b></font></td>");
tableB.Append("<td align=center><font
size=-1><b>Expected_Date</b></font></td>");
tableB.Append("</tr>");

tableS2.Append("<tr>");
tableS2.Append("<td colspan=5> <i><a
href='http://reldb.sc.ti.com/reldb/reldbmain.nsf/ShowJobDetail?OpenAgent&Relcode="
+ relcodeB + "'>" + relcodeB + " — " +
dbRecords("jobtitle").ToString() + "</a></i></td>");
tableS2.Append("</tr>");
tableS2.Append("<tr>");
tableS2.Append("<td align=center><font
size=-1><b>Test_Type</b></font></td>");
tableS2.Append("<td align=center><font
size=-1><b>Hr/Cy</b></font></td>");
tableS2.Append("<td align=center><font
size=-1><b>Grp</b></font></td>");
tableS2.Append("<td align=center><font
size=-1><b>Qty</b></font></td>");
tableS2.Append("<td align=center><font
size=-1><b>Expected_Date</b></font></td>");
tableS2.Append("</tr>");
}

tableB.Append("<tr>");
tableB.Append("<td align=center><font size=-1>" +
dbRecords("testtype").ToString() + "</font></td>");
tableB.Append("<td align=center><font size=-1>" +
dbRecords("hrcy").ToString() + "</font></td>");
tableB.Append("<td align=center><font size=-1>" +
dbRecords("grp").ToString() + "</font></td>");
tableB.Append("<td align=center><font size=-1>" +
dbRecords("qty").ToString() + "</font></td>");
tableB.Append("<td align=center><font size=-1>" + expecteddate +
"</font></td>");
tableB.Append("</tr>");

tableS2.Append("<tr>");
tableS2.Append("<td align=center><font size=-1>" +
dbRecords("testtype").ToString() + "</font></td>");
tableS2.Append("<td align=center><font size=-1>" +
dbRecords("hrcy").ToString() + "</font></td>");
tableS2.Append("<td align=center><font size=-1>" +
dbRecords("grp").ToString() + "</font></td>");
tableS2.Append("<td align=center><font size=-1>" +
dbRecords("qty").ToString() + "</font></td>");
tableS2.Append("<td align=center><font size=-1>" + expecteddate +
"</font></td>");
tableS2.Append("</tr>");
}
}

if( String.Compare(tableA.ToString(), "") != 0 ) {
tableA.Append("</table>");
tableC.Append(tableA.ToString());
tableC.Append("<br><br>");
}

if( String.Compare(tableB.ToString(), "") != 0 ) {
tableB.Append("</table>");
tableC.Append(tableB.ToString());
}

if( String.Compare(ldaputil.getLDAPValue('MAIL', pengremail, 'mail'),
"") != 0 &&
String.Compare(tableC.ToString(), "") != 0 ) {
tableC.Append("<br>NOTE: This is an auto-generated message!<br>");
sendMail(tableC.ToString(), pengremail);
}

if( String.Compare(tableS1.ToString(), "") != 0 ) {
tableS1.Append("</table>");
tableS3.Append(tableS1.ToString());
tableS3.Append("<br><br>");
}

if( String.Compare(tableS2.ToString(), "") != 0 ) {
tableS2.Append("</table>");
tableS3.Append(tableS2.ToString());
}

tableS3.Append("<br>NOTE: This is an auto-generated message!<br>");
sendMail("***Summary to Lab Manager***<br><br>" + tableS3.ToString(),
'manager@dotnet.itags.org.email.com');

dbRecords.Close();
DBConnUtil.closeQDW(dbconn);
}
}A couple of things:

Note the following in the error message:

> Please review the stack trace for more information about
> the error and where it originated in the code.

Note the following in your @.Page directive:

> <%@. Page Language="JScript" Aspcompat="true" Debug="false"
> Inherits="PETestTimeMSP" src="http://pics.10026.com/?src=source/pettmailmsp.js" %
Turing Debugging ON should give you the stack trace that will indicate the
line of code that threw the exception. From there it's simple.

--
HTH,

Kevin Spencer
Microsoft MVP
..Net Developer
Neither a follower nor a lender be.

"Ben" <Ben@.discussions.microsoft.com> wrote in message
news:1AF1D1E9-E17A-40CC-BB81-94C2BD4E645F@.microsoft.com...
>I have several pages written in aspx, but sometime the aspx page return the
> following error. And it hapeen, the whole web application gives this
> error,
> that means all the aspx files get affected. Any ideas?
> Here is the error:
> Server Error in '/' Application.
> ------------------------
> Object reference not set to an instance of an object.
> Description: An unhandled exception occurred during the execution of the
> current web request. Please review the stack trace for more information
> about
> the error and where it originated in the code.
> Exception Details: System.NullReferenceException: Object reference not set
> to an instance of an object.
> ASPX CODE:
> <%@. Page Language="JScript" Aspcompat="true" Debug="false"
> Inherits="PETestTimeMSP" src="http://pics.10026.com/?src=source/pettmailmsp.js" %>
> <%
> pettMailMSP();
> %>
> <html>
> <head>
> <title>SCReliabilityServices Emailer</title>
> </head>
> <body>
> SCReliabilityServices Emailer - Sent!
> </body>
> </html>
> SOURCE CODE:
> import System;
> import System.Data;
> import System.Data.OleDb;
> import System.Web.UI;
> import System.Web.UI.WebControls;
> import System.Web.UI.HtmlControls;
> import System.Text;
> import System.Web.Mail;
> import DBConn;
> import LDAPCOM;
> public class PETestTimeMSP extends Page {
> public function sendMail(message : String, to : String) : void {
> var Mailer : MailMessage = new MailMessage();
> Mailer.Priority = MailPriority.Normal;
> Mailer.BodyFormat = MailFormat.Html;
> Mailer.From = "manager@.email.com";
> Mailer.To = to;
> Mailer.Subject = "(MSP) DRTL PE Test Time Forecast - " + (new
> Date().getMonth()+1) + "/" + new Date().getDate() + "/" + new
> Date().getYear();
> //Mailer.Body = "<font color=blue face=Arial size=-1>Starting today,
> you
> will be receiving a daily report that should be beneficial in planning
> test
> time<br>for jobs being stressed in DRTL.<br><br>The first part of the
> report
> "Completed Stress - Pending Test" shows jobs that have completed stress
> and<br>are pending test. For jobs in this status, electrical test has not
> yet been completed - according to our database.<br>These will continue to
> stay open, until data is provided to close.<br>If you have contacted our
> lab
> on some of these jobs for closure, we are working on
> them.<br><b>Otherwise,
> please contact Jennifer McClellan.</b><br><br>The second part of the
> report
> "Forecast Readpoints for Test" is a forecast for jobs that are
> in<br>stress
> and are expected to be completed within the next 5 days.<br>The time out
> on
> the expected day is the end of the day.<br><br>Regards,<br>David
> Kaase<br>DRTL Manager</font><br><br>" + message;
> Mailer.Body = message;
> SmtpMail.SmtpServer = "smtp.mail.ti.com";
> SmtpMail.Send(Mailer);
> }
> public function pettMailMSP() : String {
> var DBConnUtil : DBConnQDW = new DBConnQDW();
> var dbconn : OleDbConnection = DBConnUtil.connectQDW();
> var sql : String = "select d.relcode, d.jobtitle, d.pengrname,
> d.pengremail, d.priority, t.testtype, t.testnum, r.grp, r.readnum, r.hrcy,
> r.qty, to_char(k.sent, 'MM/DD/YYYY') sent, to_char(k.expecteddate,
> 'MM/DD/YYYY') expecteddate, k.location from rel_device d, rel_tests t,
> rel_reads r, rel_track k where d.relcode = t.relcode and t.relcode =
> r.relcode and t.testnum = r.testnum and r.relcode = k.relcode and
> r.testnum =
> k.testnum and r.grp = k.grp and r.readnum = k.readnum and d.dbname =
> 'MSPREL'
> and t.status = 'Active' and UPPER(t.programno) like 'ENG%' and k.complete
> is
> null and k.location = 'PE Test'"
> + " union "
> + "select d.relcode, d.jobtitle, d.pengrname,
> d.pengremail, d.priority, t.testtype, t.testnum, r.grp, r.readnum, r.hrcy,
> r.qty, to_char(k.sent, 'MM/DD/YYYY') sent, to_char(k.expecteddate,
> 'MM/DD/YYYY') expecteddate, k.location from rel_device d, rel_tests t,
> rel_reads r, rel_track k where d.relcode = t.relcode and t.relcode =
> r.relcode and t.testnum = r.testnum and r.relcode = k.relcode and
> r.testnum =
> k.testnum and r.grp = k.grp and r.readnum = k.readnum and d.dbname =
> 'MSPREL'
> and t.status = 'Active' and ((t.testnum >= 0001 and t.testnum <= 0104) or
> (t.testnum >= 1000 and t.testnum <= 1615) or (t.testnum >= 2000 and
> t.testnum
> <= 2750) or (t.testnum >= 3000 and t.testnum <= 3240) or (t.testnum >=
> 3500
> and t.testnum <= 3800) or (t.testnum >= 4075 and t.testnum <= 4322) or
> (t.testnum = 9001)) and UPPER(t.programno) like 'ENG%' and k.expecteddate
> is
> not null and k.expecteddate <= sysdate+5 and k.complete is null and
> k.location like 'DRTL-%' order by 3, 5, 1, 6, 8, 12, 13";
> var dbcmd : OleDbCommand = new OleDbCommand(sql, dbconn);
> var dbRecords : OleDbDataReader = dbcmd.ExecuteReader();
> var tableA : StringBuilder = new StringBuilder();
> var tableB : StringBuilder = new StringBuilder();
> var tableC : StringBuilder = new StringBuilder();
> var tableS1 : StringBuilder = new StringBuilder();
> var tableS2 : StringBuilder = new StringBuilder();
> var tableS3 : StringBuilder = new StringBuilder();
> var pengremail : String;
> var relcodeA : String;
> var relcodeB : String;
> var expecteddate : String;
> var tempdate : Date;
> var ldaputil : LDAP = new LDAP();
> while( dbRecords.Read() ) {
> if( String.Compare(pengremail, dbRecords("pengremail")) != 0 ) {
> if( String.Compare(pengremail, null) != 0 ) {
> if( String.Compare(tableA.ToString(), "") != 0 ) {
> tableA.Append("</table>");
> tableC.Append(tableA.ToString());
> tableC.Append("<br><br>");
> }
> if( String.Compare(tableB.ToString(), "") != 0 ) {
> tableB.Append("</table>");
> tableC.Append(tableB.ToString());
> }
> if( String.Compare(ldaputil.getLDAPValue('MAIL', pengremail,
> 'mail'), "") != 0 &&
> String.Compare(tableC.ToString(), "") != 0 ) {
> tableC.Append("<br>NOTE: This is an auto-generated
> message!<br>");
> sendMail(tableC.ToString(), pengremail);
> }
> }
> pengremail = dbRecords("pengremail").ToString();
> tableA = new StringBuilder();
> tableB = new StringBuilder();
> tableC = new StringBuilder();
> }
> if( String.Compare(dbRecords("location").ToString(), 'PE Test') ==
> 0 ) {
> if( String.Compare(tableS1.ToString(), "") == 0 ) {
> tableS1.Append("<h2><font color=maroon>Completed Stress - Pending
> Test</font></h2>");
> tableS1.Append("<table width=75%>");
> }
> if( String.Compare(tableA.ToString(), "") == 0 ) {
> tableA.Append("<h2><font color=maroon>Completed Stress - Pending
> Test</font></h2>");
> tableA.Append("<table width=75%>");
> tableA.Append("<tr>");
> tableA.Append("<td colspan=7><b>PE: " +
> dbRecords("pengrname").ToString() + ":</b></td>");
> tableA.Append("</tr>");
> tableS1.Append("<tr>");
> tableS1.Append("<td colspan=7><b>PE: " +
> dbRecords("pengrname").ToString() + ":</b></td>");
> tableS1.Append("</tr>");
> }
> if( String.Compare(relcodeA, dbRecords("relcode").ToString()) !=
> 0 ) {
> relcodeA = dbRecords("relcode").ToString();
> tableA.Append("<tr>");
> tableA.Append("<td colspan=5> <i><a
> href='http://reldb.sc.ti.com/reldb/reldbmain.nsf/ShowJobDetail?OpenAgent&Relcode="
> + relcodeA + "'>" + relcodeA + " - " +
> dbRecords("jobtitle").ToString() + "</a></i></td>");
> tableA.Append("</tr>");
> tableA.Append("<tr>");
> tableA.Append("<td align=center><font
> size=-1><b>Test_Type</b></font></td>");
> tableA.Append("<td align=center><font
> size=-1><b>Hr/Cy</b></font></td>");
> tableA.Append("<td align=center><font
> size=-1><b>Grp</b></font></td>");
> tableA.Append("<td align=center><font
> size=-1><b>Qty</b></font></td>");
> tableA.Append("<td align=center><font
> size=-1><b>PE_Test</b></font></td>");
> tableA.Append("</tr>");
> tableS1.Append("<tr>");
> tableS1.Append("<td colspan=5> <i><a
> href='http://reldb.sc.ti.com/reldb/reldbmain.nsf/ShowJobDetail?OpenAgent&Relcode="
> + relcodeA + "'>" + relcodeA + " - " +
> dbRecords("jobtitle").ToString() + "</a></i></td>");
> tableS1.Append("</tr>");
> tableS1.Append("<tr>");
> tableS1.Append("<td align=center><font
> size=-1><b>Test_Type</b></font></td>");
> tableS1.Append("<td align=center><font
> size=-1><b>Hr/Cy</b></font></td>");
> tableS1.Append("<td align=center><font
> size=-1><b>Grp</b></font></td>");
> tableS1.Append("<td align=center><font
> size=-1><b>Qty</b></font></td>");
> tableS1.Append("<td align=center><font
> size=-1><b>PE_Test</b></font></td>");
> tableS1.Append("</tr>");
> }
> tableA.Append("<tr>");
> tableA.Append("<td align=center><font size=-1>" +
> dbRecords("testtype").ToString() + "</font></td>");
> tableA.Append("<td align=center><font size=-1>" +
> dbRecords("hrcy").ToString() + "</font></td>");
> tableA.Append("<td align=center><font size=-1>" +
> dbRecords("grp").ToString() + "</font></td>");
> tableA.Append("<td align=center><font size=-1>" +
> dbRecords("qty").ToString() + "</font></td>");
> tableA.Append("<td align=center><font size=-1>" +
> dbRecords("sent").ToString() + "</font></td>");
> tableA.Append("</tr>");
> tableS1.Append("<tr>");
> tableS1.Append("<td align=center><font size=-1>" +
> dbRecords("testtype").ToString() + "</font></td>");
> tableS1.Append("<td align=center><font size=-1>" +
> dbRecords("hrcy").ToString() + "</font></td>");
> tableS1.Append("<td align=center><font size=-1>" +
> dbRecords("grp").ToString() + "</font></td>");
> tableS1.Append("<td align=center><font size=-1>" +
> dbRecords("qty").ToString() + "</font></td>");
> tableS1.Append("<td align=center><font size=-1>" +
> dbRecords("sent").ToString() + "</font></td>");
> tableS1.Append("</tr>");
> }
> else {
> expecteddate = dbRecords("expecteddate").ToString();
> if( parseInt(dbRecords("testnum")) >= 1 &&
> parseInt(dbRecords("testnum")) <= 104 ) {
> sql = "select r_user from rel_reads where relcode = '" +
> dbRecords("relcode") + "' and testnum = '" + dbRecords("testnum") + "' and
> grp = '" + dbRecords("grp") + "' and readnum <= '" + dbRecords("readnum")
> +
> "' and r_user like '%Soak%'";
> var dbconnPrecon : OleDbConnection = DBConnUtil.connectQDW();
> var dbcmdPrecon : OleDbCommand = new OleDbCommand(sql,
> dbconnPrecon);
> var dbRecordsPrecon : OleDbDataReader =
> dbcmdPrecon.ExecuteReader();
> if( !dbRecordsPrecon.Read() ) {
> dbRecordsPrecon.Close();
> DBConnUtil.closeQDW(dbconnPrecon);
> continue;
> }
> else {
> tempdate = new Date(expecteddate);
> tempdate.setHours(48);
> if( tempdate > new Date().setHours(120) ) {
> dbRecordsPrecon.Close();
> DBConnUtil.closeQDW(dbconnPrecon);
> continue;
> }
> else {
> expecteddate = (new Date(tempdate).getMonth()+1) + "/" + new
> Date(tempdate).getDate() + "/" + new Date(tempdate).getYear();
> dbRecordsPrecon.Close();
> DBConnUtil.closeQDW(dbconnPrecon);
> }
> }
> }
> if( String.Compare(tableS2.ToString(), "") == 0 ) {
> tableS2.Append("<h2><font color=maroon>Forecast Readpoints for
> Test</font></h2>");
> tableS2.Append("<table width=75%>");
> }
> if( String.Compare(tableB.ToString(), "") == 0 ) {
> tableB.Append("<h2><font color=maroon>Forecast Readpoints for
> Test</font></h2>");
> tableB.Append("<table width=75%>");
> tableB.Append("<tr>");
> tableB.Append("<td colspan=7><b>PE: " +
> dbRecords("pengrname").ToString() + ":</b></td>");
> tableB.Append("</tr>");
> tableS2.Append("<tr>");
> tableS2.Append("<td colspan=7><b>PE: " +
> dbRecords("pengrname").ToString() + ":</b></td>");
> tableS2.Append("</tr>");
> }
> if( String.Compare(relcodeB, dbRecords("relcode").ToString()) !=
> 0 ) {
> relcodeB = dbRecords("relcode").ToString();
> tableB.Append("<tr>");
> tableB.Append("<td colspan=5> <i><a
> href='http://reldb.sc.ti.com/reldb/reldbmain.nsf/ShowJobDetail?OpenAgent&Relcode="
> + relcodeB + "'>" + relcodeB + " - " +
> dbRecords("jobtitle").ToString() + "</a></i></td>");
> tableB.Append("</tr>");
> tableB.Append("<tr>");
> tableB.Append("<td align=center><font
> size=-1><b>Test_Type</b></font></td>");
> tableB.Append("<td align=center><font
> size=-1><b>Hr/Cy</b></font></td>");
> tableB.Append("<td align=center><font
> size=-1><b>Grp</b></font></td>");
> tableB.Append("<td align=center><font
> size=-1><b>Qty</b></font></td>");
> tableB.Append("<td align=center><font
> size=-1><b>Expected_Date</b></font></td>");
> tableB.Append("</tr>");
> tableS2.Append("<tr>");
> tableS2.Append("<td colspan=5> <i><a
> href='http://reldb.sc.ti.com/reldb/reldbmain.nsf/ShowJobDetail?OpenAgent&Relcode="
> + relcodeB + "'>" + relcodeB + " - " +
> dbRecords("jobtitle").ToString() + "</a></i></td>");
> tableS2.Append("</tr>");
> tableS2.Append("<tr>");
> tableS2.Append("<td align=center><font
> size=-1><b>Test_Type</b></font></td>");
> tableS2.Append("<td align=center><font
> size=-1><b>Hr/Cy</b></font></td>");
> tableS2.Append("<td align=center><font
> size=-1><b>Grp</b></font></td>");
> tableS2.Append("<td align=center><font
> size=-1><b>Qty</b></font></td>");
> tableS2.Append("<td align=center><font
> size=-1><b>Expected_Date</b></font></td>");
> tableS2.Append("</tr>");
> }
> tableB.Append("<tr>");
> tableB.Append("<td align=center><font size=-1>" +
> dbRecords("testtype").ToString() + "</font></td>");
> tableB.Append("<td align=center><font size=-1>" +
> dbRecords("hrcy").ToString() + "</font></td>");
> tableB.Append("<td align=center><font size=-1>" +
> dbRecords("grp").ToString() + "</font></td>");
> tableB.Append("<td align=center><font size=-1>" +
> dbRecords("qty").ToString() + "</font></td>");
> tableB.Append("<td align=center><font size=-1>" + expecteddate +
> "</font></td>");
> tableB.Append("</tr>");
> tableS2.Append("<tr>");
> tableS2.Append("<td align=center><font size=-1>" +
> dbRecords("testtype").ToString() + "</font></td>");
> tableS2.Append("<td align=center><font size=-1>" +
> dbRecords("hrcy").ToString() + "</font></td>");
> tableS2.Append("<td align=center><font size=-1>" +
> dbRecords("grp").ToString() + "</font></td>");
> tableS2.Append("<td align=center><font size=-1>" +
> dbRecords("qty").ToString() + "</font></td>");
> tableS2.Append("<td align=center><font size=-1>" + expecteddate +
> "</font></td>");
> tableS2.Append("</tr>");
> }
> }
> if( String.Compare(tableA.ToString(), "") != 0 ) {
> tableA.Append("</table>");
> tableC.Append(tableA.ToString());
> tableC.Append("<br><br>");
> }
> if( String.Compare(tableB.ToString(), "") != 0 ) {
> tableB.Append("</table>");
> tableC.Append(tableB.ToString());
> }
> if( String.Compare(ldaputil.getLDAPValue('MAIL', pengremail, 'mail'),
> "") != 0 &&
> String.Compare(tableC.ToString(), "") != 0 ) {
> tableC.Append("<br>NOTE: This is an auto-generated message!<br>");
> sendMail(tableC.ToString(), pengremail);
> }
> if( String.Compare(tableS1.ToString(), "") != 0 ) {
> tableS1.Append("</table>");
> tableS3.Append(tableS1.ToString());
> tableS3.Append("<br><br>");
> }
> if( String.Compare(tableS2.ToString(), "") != 0 ) {
> tableS2.Append("</table>");
> tableS3.Append(tableS2.ToString());
> }
> tableS3.Append("<br>NOTE: This is an auto-generated message!<br>");
> sendMail("***Summary to Lab Manager***<br><br>" + tableS3.ToString(),
> 'manager@.email.com');
> dbRecords.Close();
> DBConnUtil.closeQDW(dbconn);
> }
> }
Kevin,

Thanks for helping out.
When I turn it on, the stack shows error during compiling and assembly
permissions issue. I cannot get the error back, because our server guy reboot
the .net service, and the pages are working again.
It happen so many times that every time it happen, all the aspx pages get
affected and the .net service return the same error for every aspx pages. And
every time I have to ask our server guy to reboot the .net service, and then
everything works again... We couldn't find out what the root cause is.
Any ideas?

Thanks,
Ben

"Kevin Spencer" wrote:

> A couple of things:
> Note the following in the error message:
> > Please review the stack trace for more information about
> > the error and where it originated in the code.
> Note the following in your @.Page directive:
> > <%@. Page Language="JScript" Aspcompat="true" Debug="false"
> > Inherits="PETestTimeMSP" src="http://pics.10026.com/?src=source/pettmailmsp.js" %>
> Turing Debugging ON should give you the stack trace that will indicate the
> line of code that threw the exception. From there it's simple.
> --
> HTH,
> Kevin Spencer
> Microsoft MVP
> ..Net Developer
> Neither a follower nor a lender be.
> "Ben" <Ben@.discussions.microsoft.com> wrote in message
> news:1AF1D1E9-E17A-40CC-BB81-94C2BD4E645F@.microsoft.com...
> >I have several pages written in aspx, but sometime the aspx page return the
> > following error. And it hapeen, the whole web application gives this
> > error,
> > that means all the aspx files get affected. Any ideas?
> > Here is the error:
> > Server Error in '/' Application.
> > ------------------------
> > Object reference not set to an instance of an object.
> > Description: An unhandled exception occurred during the execution of the
> > current web request. Please review the stack trace for more information
> > about
> > the error and where it originated in the code.
> > Exception Details: System.NullReferenceException: Object reference not set
> > to an instance of an object.
> > ASPX CODE:
> > <%@. Page Language="JScript" Aspcompat="true" Debug="false"
> > Inherits="PETestTimeMSP" src="http://pics.10026.com/?src=source/pettmailmsp.js" %>
> > <%
> > pettMailMSP();
> > %>
> > <html>
> > <head>
> > <title>SCReliabilityServices Emailer</title>
> > </head>
> > <body>
> > SCReliabilityServices Emailer - Sent!
> > </body>
> > </html>
> > SOURCE CODE:
> > import System;
> > import System.Data;
> > import System.Data.OleDb;
> > import System.Web.UI;
> > import System.Web.UI.WebControls;
> > import System.Web.UI.HtmlControls;
> > import System.Text;
> > import System.Web.Mail;
> > import DBConn;
> > import LDAPCOM;
> > public class PETestTimeMSP extends Page {
> > public function sendMail(message : String, to : String) : void {
> > var Mailer : MailMessage = new MailMessage();
> > Mailer.Priority = MailPriority.Normal;
> > Mailer.BodyFormat = MailFormat.Html;
> > Mailer.From = "manager@.email.com";
> > Mailer.To = to;
> > Mailer.Subject = "(MSP) DRTL PE Test Time Forecast - " + (new
> > Date().getMonth()+1) + "/" + new Date().getDate() + "/" + new
> > Date().getYear();
> > //Mailer.Body = "<font color=blue face=Arial size=-1>Starting today,
> > you
> > will be receiving a daily report that should be beneficial in planning
> > test
> > time<br>for jobs being stressed in DRTL.<br><br>The first part of the
> > report
> > "Completed Stress - Pending Test" shows jobs that have completed stress
> > and<br>are pending test. For jobs in this status, electrical test has not
> > yet been completed - according to our database.<br>These will continue to
> > stay open, until data is provided to close.<br>If you have contacted our
> > lab
> > on some of these jobs for closure, we are working on
> > them.<br><b>Otherwise,
> > please contact Jennifer McClellan.</b><br><br>The second part of the
> > report
> > "Forecast Readpoints for Test" is a forecast for jobs that are
> > in<br>stress
> > and are expected to be completed within the next 5 days.<br>The time out
> > on
> > the expected day is the end of the day.<br><br>Regards,<br>David
> > Kaase<br>DRTL Manager</font><br><br>" + message;
> > Mailer.Body = message;
> > SmtpMail.SmtpServer = "smtp.mail.ti.com";
> > SmtpMail.Send(Mailer);
> > }
> > public function pettMailMSP() : String {
> > var DBConnUtil : DBConnQDW = new DBConnQDW();
> > var dbconn : OleDbConnection = DBConnUtil.connectQDW();
> > var sql : String = "select d.relcode, d.jobtitle, d.pengrname,
> > d.pengremail, d.priority, t.testtype, t.testnum, r.grp, r.readnum, r.hrcy,
> > r.qty, to_char(k.sent, 'MM/DD/YYYY') sent, to_char(k.expecteddate,
> > 'MM/DD/YYYY') expecteddate, k.location from rel_device d, rel_tests t,
> > rel_reads r, rel_track k where d.relcode = t.relcode and t.relcode =
> > r.relcode and t.testnum = r.testnum and r.relcode = k.relcode and
> > r.testnum =
> > k.testnum and r.grp = k.grp and r.readnum = k.readnum and d.dbname =
> > 'MSPREL'
> > and t.status = 'Active' and UPPER(t.programno) like 'ENG%' and k.complete
> > is
> > null and k.location = 'PE Test'"
> > + " union "
> > + "select d.relcode, d.jobtitle, d.pengrname,
> > d.pengremail, d.priority, t.testtype, t.testnum, r.grp, r.readnum, r.hrcy,
> > r.qty, to_char(k.sent, 'MM/DD/YYYY') sent, to_char(k.expecteddate,
> > 'MM/DD/YYYY') expecteddate, k.location from rel_device d, rel_tests t,
> > rel_reads r, rel_track k where d.relcode = t.relcode and t.relcode =
> > r.relcode and t.testnum = r.testnum and r.relcode = k.relcode and
> > r.testnum =
> > k.testnum and r.grp = k.grp and r.readnum = k.readnum and d.dbname =
> > 'MSPREL'
> > and t.status = 'Active' and ((t.testnum >= 0001 and t.testnum <= 0104) or
> > (t.testnum >= 1000 and t.testnum <= 1615) or (t.testnum >= 2000 and
> > t.testnum
> > <= 2750) or (t.testnum >= 3000 and t.testnum <= 3240) or (t.testnum >=
> > 3500
> > and t.testnum <= 3800) or (t.testnum >= 4075 and t.testnum <= 4322) or
> > (t.testnum = 9001)) and UPPER(t.programno) like 'ENG%' and k.expecteddate
> > is
> > not null and k.expecteddate <= sysdate+5 and k.complete is null and
> > k.location like 'DRTL-%' order by 3, 5, 1, 6, 8, 12, 13";
> > var dbcmd : OleDbCommand = new OleDbCommand(sql, dbconn);
> > var dbRecords : OleDbDataReader = dbcmd.ExecuteReader();
> > var tableA : StringBuilder = new StringBuilder();
> > var tableB : StringBuilder = new StringBuilder();
> > var tableC : StringBuilder = new StringBuilder();
> > var tableS1 : StringBuilder = new StringBuilder();
> > var tableS2 : StringBuilder = new StringBuilder();
> > var tableS3 : StringBuilder = new StringBuilder();
> > var pengremail : String;
> > var relcodeA : String;
> > var relcodeB : String;
> > var expecteddate : String;
> > var tempdate : Date;
> > var ldaputil : LDAP = new LDAP();
> > while( dbRecords.Read() ) {
> > if( String.Compare(pengremail, dbRecords("pengremail")) != 0 ) {
> > if( String.Compare(pengremail, null) != 0 ) {
> > if( String.Compare(tableA.ToString(), "") != 0 ) {
> > tableA.Append("</table>");
> > tableC.Append(tableA.ToString());
> > tableC.Append("<br><br>");
> > }
> > if( String.Compare(tableB.ToString(), "") != 0 ) {
> > tableB.Append("</table>");
> > tableC.Append(tableB.ToString());
> > }
> > if( String.Compare(ldaputil.getLDAPValue('MAIL', pengremail,
> > 'mail'), "") != 0 &&
> > String.Compare(tableC.ToString(), "") != 0 ) {
> > tableC.Append("<br>NOTE: This is an auto-generated
> > message!<br>");
> > sendMail(tableC.ToString(), pengremail);
> > }
> > }
> > pengremail = dbRecords("pengremail").ToString();
> > tableA = new StringBuilder();
> > tableB = new StringBuilder();
> > tableC = new StringBuilder();
> > }
> > if( String.Compare(dbRecords("location").ToString(), 'PE Test') ==
> > 0 ) {
> > if( String.Compare(tableS1.ToString(), "") == 0 ) {
> > tableS1.Append("<h2><font color=maroon>Completed Stress - Pending
> > Test</font></h2>");
> > tableS1.Append("<table width=75%>");
> > }
> > if( String.Compare(tableA.ToString(), "") == 0 ) {
> > tableA.Append("<h2><font color=maroon>Completed Stress - Pending
> > Test</font></h2>");
> > tableA.Append("<table width=75%>");
> > tableA.Append("<tr>");
> > tableA.Append("<td colspan=7><b>PE: " +
> > dbRecords("pengrname").ToString() + ":</b></td>");
> > tableA.Append("</tr>");
> > tableS1.Append("<tr>");
> > tableS1.Append("<td colspan=7><b>PE: " +
> > dbRecords("pengrname").ToString() + ":</b></td>");
> > tableS1.Append("</tr>");
> > }
> > if( String.Compare(relcodeA, dbRecords("relcode").ToString()) !=
> > 0 ) {
> > relcodeA = dbRecords("relcode").ToString();
> > tableA.Append("<tr>");
> > tableA.Append("<td colspan=5> <i><a
> > href='http://reldb.sc.ti.com/reldb/reldbmain.nsf/ShowJobDetail?OpenAgent&Relcode="
> > + relcodeA + "'>" + relcodeA + " - " +
> > dbRecords("jobtitle").ToString() + "</a></i></td>");
> > tableA.Append("</tr>");
> > tableA.Append("<tr>");
> > tableA.Append("<td align=center><font
> > size=-1><b>Test_Type</b></font></td>");
> > tableA.Append("<td align=center><font
> > size=-1><b>Hr/Cy</b></font></td>");
> > tableA.Append("<td align=center><font
> > size=-1><b>Grp</b></font></td>");
> > tableA.Append("<td align=center><font
> > size=-1><b>Qty</b></font></td>");
> > tableA.Append("<td align=center><font
> > size=-1><b>PE_Test</b></font></td>");
> > tableA.Append("</tr>");
> > tableS1.Append("<tr>");
> > tableS1.Append("<td colspan=5> <i><a
> > href='http://reldb.sc.ti.com/reldb/reldbmain.nsf/ShowJobDetail?OpenAgent&Relcode="
> > + relcodeA + "'>" + relcodeA + " - " +
> > dbRecords("jobtitle").ToString() + "</a></i></td>");
> > tableS1.Append("</tr>");
> > tableS1.Append("<tr>");
> > tableS1.Append("<td align=center><font
> > size=-1><b>Test_Type</b></font></td>");
> > tableS1.Append("<td align=center><font
> > size=-1><b>Hr/Cy</b></font></td>");
> > tableS1.Append("<td align=center><font
> > size=-1><b>Grp</b></font></td>");
> > tableS1.Append("<td align=center><font
> > size=-1><b>Qty</b></font></td>");
> > tableS1.Append("<td align=center><font
> > size=-1><b>PE_Test</b></font></td>");
> > tableS1.Append("</tr>");
> > }
> > tableA.Append("<tr>");
> > tableA.Append("<td align=center><font size=-1>" +
> > dbRecords("testtype").ToString() + "</font></td>");
> > tableA.Append("<td align=center><font size=-1>" +
> > dbRecords("hrcy").ToString() + "</font></td>");
> > tableA.Append("<td align=center><font size=-1>" +
> > dbRecords("grp").ToString() + "</font></td>");
> > tableA.Append("<td align=center><font size=-1>" +
> > dbRecords("qty").ToString() + "</font></td>");
> > tableA.Append("<td align=center><font size=-1>" +
> > dbRecords("sent").ToString() + "</font></td>");
> > tableA.Append("</tr>");
> > tableS1.Append("<tr>");
> > tableS1.Append("<td align=center><font size=-1>" +
> > dbRecords("testtype").ToString() + "</font></td>");
> > tableS1.Append("<td align=center><font size=-1>" +
> > dbRecords("hrcy").ToString() + "</font></td>");
> > tableS1.Append("<td align=center><font size=-1>" +
> > dbRecords("grp").ToString() + "</font></td>");
> > tableS1.Append("<td align=center><font size=-1>" +
> > dbRecords("qty").ToString() + "</font></td>");
> > tableS1.Append("<td align=center><font size=-1>" +
> > dbRecords("sent").ToString() + "</font></td>");
> > tableS1.Append("</tr>");
> > }
> > else {
> > expecteddate = dbRecords("expecteddate").ToString();
> > if( parseInt(dbRecords("testnum")) >= 1 &&
> > parseInt(dbRecords("testnum")) <= 104 ) {
> > sql = "select r_user from rel_reads where relcode = '" +
> > dbRecords("relcode") + "' and testnum = '" + dbRecords("testnum") + "' and
> > grp = '" + dbRecords("grp") + "' and readnum <= '" + dbRecords("readnum")
> > +
> > "' and r_user like '%Soak%'";
> > var dbconnPrecon : OleDbConnection = DBConnUtil.connectQDW();
> > var dbcmdPrecon : OleDbCommand = new OleDbCommand(sql,
> > dbconnPrecon);
> > var dbRecordsPrecon : OleDbDataReader =
> > dbcmdPrecon.ExecuteReader();
> > if( !dbRecordsPrecon.Read() ) {
> > dbRecordsPrecon.Close();
> > DBConnUtil.closeQDW(dbconnPrecon);
> > continue;
> > }
> > else {
> > tempdate = new Date(expecteddate);
> > tempdate.setHours(48);
> > if( tempdate > new Date().setHours(120) ) {
> > dbRecordsPrecon.Close();
> > DBConnUtil.closeQDW(dbconnPrecon);
> > continue;
> > }
> > else {
> > expecteddate = (new Date(tempdate).getMonth()+1) + "/" + new
> > Date(tempdate).getDate() + "/" + new Date(tempdate).getYear();
> > dbRecordsPrecon.Close();
> > DBConnUtil.closeQDW(dbconnPrecon);
> > }
> > }
> > }
> > if( String.Compare(tableS2.ToString(), "") == 0 ) {
> > tableS2.Append("<h2><font color=maroon>Forecast Readpoints for
> > Test</font></h2>");
> > tableS2.Append("<table width=75%>");
> > }
> > if( String.Compare(tableB.ToString(), "") == 0 ) {
> > tableB.Append("<h2><font color=maroon>Forecast Readpoints for
> > Test</font></h2>");
> > tableB.Append("<table width=75%>");
> > tableB.Append("<tr>");
> > tableB.Append("<td colspan=7><b>PE: " +
> > dbRecords("pengrname").ToString() + ":</b></td>");
> > tableB.Append("</tr>");
> > tableS2.Append("<tr>");
> > tableS2.Append("<td colspan=7><b>PE: " +
> > dbRecords("pengrname").ToString() + ":</b></td>");
> > tableS2.Append("</tr>");
> > }
> > if( String.Compare(relcodeB, dbRecords("relcode").ToString()) !=
> > 0 ) {
> > relcodeB = dbRecords("relcode").ToString();
> > tableB.Append("<tr>");
> > tableB.Append("<td colspan=5> <i><a
> > href='http://reldb.sc.ti.com/reldb/reldbmain.nsf/ShowJobDetail?OpenAgent&Relcode="
> > + relcodeB + "'>" + relcodeB + " - " +
> > dbRecords("jobtitle").ToString() + "</a></i></td>");
> > tableB.Append("</tr>");
> > tableB.Append("<tr>");
> > tableB.Append("<td align=center><font
> > size=-1><b>Test_Type</b></font></td>");
> > tableB.Append("<td align=center><font
> > size=-1><b>Hr/Cy</b></font></td>");
> > tableB.Append("<td align=center><font
> > size=-1><b>Grp</b></font></td>");
> > tableB.Append("<td align=center><font
> > size=-1><b>Qty</b></font></td>");
> > tableB.Append("<td align=center><font
> > size=-1><b>Expected_Date</b></font></td>");
> > tableB.Append("</tr>");
> > tableS2.Append("<tr>");
> > tableS2.Append("<td colspan=5> <i><a
> > href='http://reldb.sc.ti.com/reldb/reldbmain.nsf/ShowJobDetail?OpenAgent&Relcode="
> > + relcodeB + "'>" + relcodeB + " - " +
> > dbRecords("jobtitle").ToString() + "</a></i></td>");
> > tableS2.Append("</tr>");
> > tableS2.Append("<tr>");
> > tableS2.Append("<td align=center><font
> > size=-1><b>Test_Type</b></font></td>");
> > tableS2.Append("<td align=center><font
> > size=-1><b>Hr/Cy</b></font></td>");
> > tableS2.Append("<td align=center><font
> > size=-1><b>Grp</b></font></td>");
> > tableS2.Append("<td align=center><font
> > size=-1><b>Qty</b></font></td>");
> > tableS2.Append("<td align=center><font
> > size=-1><b>Expected_Date</b></font></td>");
> > tableS2.Append("</tr>");
> > }
> > tableB.Append("<tr>");
> > tableB.Append("<td align=center><font size=-1>" +
> > dbRecords("testtype").ToString() + "</font></td>");
> > tableB.Append("<td align=center><font size=-1>" +
> > dbRecords("hrcy").ToString() + "</font></td>");
> > tableB.Append("<td align=center><font size=-1>" +
> > dbRecords("grp").ToString() + "</font></td>");
> > tableB.Append("<td align=center><font size=-1>" +
> > dbRecords("qty").ToString() + "</font></td>");
> > tableB.Append("<td align=center><font size=-1>" + expecteddate +
> > "</font></td>");
> > tableB.Append("</tr>");
> > tableS2.Append("<tr>");
> > tableS2.Append("<td align=center><font size=-1>" +
> > dbRecords("testtype").ToString() + "</font></td>");
> > tableS2.Append("<td align=center><font size=-1>" +
> > dbRecords("hrcy").ToString() + "</font></td>");
> > tableS2.Append("<td align=center><font size=-1>" +
> > dbRecords("grp").ToString() + "</font></td>");
> > tableS2.Append("<td align=center><font size=-1>" +
> > dbRecords("qty").ToString() + "</font></td>");
> > tableS2.Append("<td align=center><font size=-1>" + expecteddate +
> > "</font></td>");
> > tableS2.Append("</tr>");
> > }
> > }
> > if( String.Compare(tableA.ToString(), "") != 0 ) {
> > tableA.Append("</table>");
> > tableC.Append(tableA.ToString());
> > tableC.Append("<br><br>");
> > }
> > if( String.Compare(tableB.ToString(), "") != 0 ) {
> > tableB.Append("</table>");
> > tableC.Append(tableB.ToString());
> > }
> > if( String.Compare(ldaputil.getLDAPValue('MAIL', pengremail, 'mail'),
> > "") != 0 &&
> > String.Compare(tableC.ToString(), "") != 0 ) {
> > tableC.Append("<br>NOTE: This is an auto-generated message!<br>");
> > sendMail(tableC.ToString(), pengremail);
> > }
> > if( String.Compare(tableS1.ToString(), "") != 0 ) {
> > tableS1.Append("</table>");
> > tableS3.Append(tableS1.ToString());
> > tableS3.Append("<br><br>");
> > }
> > if( String.Compare(tableS2.ToString(), "") != 0 ) {
> > tableS2.Append("</table>");
> > tableS3.Append(tableS2.ToString());
> > }
> > tableS3.Append("<br>NOTE: This is an auto-generated message!<br>");
> > sendMail("***Summary to Lab Manager***<br><br>" + tableS3.ToString(),
> > 'manager@.email.com');
> > dbRecords.Close();
> > DBConnUtil.closeQDW(dbconn);
> > }
> > }
>