|
web
newsgroups
|
|||||||||||||||||||||||
|
|||||||||||||||||||||||
Object variable or With block variable not set.here's my vb code: Imports System.Web.Security Imports System.Data Imports System.Data.OleDb Public Class dpitem Inherits System.Web.UI.Page #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 Protected WithEvents MyDataList As System.Web.UI.WebControls.DataList Protected WithEvents mydatalist2 As System.Web.UI.WebControls.DataList Protected WithEvents sc As System.Web.UI.WebControls.HyperLink Protected WithEvents name As System.Web.UI.WebControls.Label Protected WithEvents subs As System.Web.UI.WebControls.Label Protected WithEvents qty As System.Web.UI.WebControls.Label Protected WithEvents buyqty As System.Web.UI.WebControls.TextBox Protected WithEvents add As System.Web.UI.WebControls.ImageButton Protected WithEvents dg As System.Web.UI.WebControls.DataGrid Protected WithEvents lblTotal As System.Web.UI.WebControls.Label Dim pid As String 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 If Not IsPostBack Then makeCart() End If Dim ds As DataSet Dim ds2 As DataSet Dim MyConnection As OleDbConnection Dim MyCommand As OleDbDataAdapter pid = Request.QueryString("pid") Dim P As New PartyHouse ds = P.getSub("*", "lydiasun_product", "pid", pid, "", "") MyDataList.DataSource = ds.Tables("lydiasun_product").DefaultView MyDataList.DataBind() With ds.Tables("lydiasun_product").Rows(0) name.Text = .Item("pname") subs.Text = .Item("subcategory") sc.Text = .Item("subcategory") sc.NavigateUrl = "subcategory.aspx?subcategory=" & .Item ("subcategory") qty.Text = P.sizing(.Item("allsizes"), .Item("small"), .Item ("medium"), .Item("large")) End With ds2 = P.getSub("distinct subcategory", "lydiasun_product", "category", "Decoration & Props", "", "") mydatalist2.DataSource = ds2.Tables("lydiasun_product").DefaultView mydatalist2.DataBind() End Sub Dim objDT As DataTable Dim objDR As DataRow Sub addtocart(ByVal s As Object, ByVal e As ImageClickEventArgs) 'Dim pid As String = Request.QueryString("pid") 'Dim ds As DataSet 'Dim p As New PartyHouse lblTotal.Text = "pid is:" & pid Dim match As Boolean objDT = Session("cart") 'ds = p.getSub("*", "lydiasun_product", "pid", pid, "", "") If objDT.Rows.Count = 0 Then objDR = objDT.NewRow objDR("pid") = "dpp101" objDR("qty") = CInt(Request.Form("buyqty")) objDR("price") = 1.99 'With ds.Tables("lydiasun_product").Rows(0) ' objDR("pid") = .Item("pid") ' objDR("qty") = Request.Form("buyqty") ' objDR("img") = .Item("img") ' objDR("pname") = .Item("pname") ' objDR("pdesc") = .Item("pdesc") ' objDR("price") = .Item("price") If Session("email") = "" Then objDR("user") = "guest" Else objDR("user") = Session("email") End If 'End With 'objDR("size") = "all size" objDT.Rows.Add(objDR) Else For Each objDR In objDT.Rows If objDR("pid") = pid Then objDR("qty") += CInt(Request.Form("buyqty")) match = True Exit For End If Next If Not match Then objDR = objDT.NewRow 'With ds.Tables("lydiasun_product").Rows(0) objDR("pid") = pid objDR("qty") = CInt(Request.Form("buyqty")) objDR("price") = 1.99 'objDR("img") = .Item("img") 'objDR("pname") = .Item("pname") 'objDR("pdesc") = .Item("pdesc") 'objDR("price") = .Item("price") If Session("email") = "" Then objDR("user") = "guest" Else objDR("user") = Session("email") End If 'End With 'objDR("size") = "all size" objDT.Rows.Add(objDR) End If End If Session("cart") = objDT dg.DataSource = objDT dg.DataBind() lblTotal.Text = lblTotal.Text & "<br>$" & GetItemTotal() 'Response.Write("<script>window.open('shoppingcart.aspx','mainmid') ;window.open('vtop.aspx','vtop');</script>") End Sub Function makeCart() If Nothing(Session("cart")) Then objDT = New DataTable("Cart") objDT.Columns.Add("ID", GetType(Integer)) objDT.Columns("ID").AutoIncrement = True objDT.Columns("ID").AutoIncrementSeed = 1 objDT.Columns.Add("pid", GetType(String)) objDT.Columns.Add("qty", GetType(Integer)) 'objDT.Columns.Add("img", GetType(String)) 'objDT.Columns.Add("pname", GetType(String)) 'objDT.Columns.Add("pdesc", GetType(String)) objDT.Columns.Add("price", GetType(Decimal)) objDT.Columns.Add("user", GetType(String)) Session("Cart") = objDT End If End Function Function GetItemTotal() As Decimal Dim intCounter As Integer Dim decRunningTotal As Decimal For intCounter = 0 To objDT.Rows.Count - -1 objDR = objDT.Rows(intCounter) decRunningTotal += (objDR("price") * objDR("qty")) Next Return decRunningTotal End Function End Class ----------------------------------- helpp... im so desperate.. Looks like you have missed a new somewhere and are using a variable without
creating the object. Rgds, Anand M http://www.dotnetindia.com Show quoteHide quote "sista via DotNetMonster.com" wrote: > hi.. just wondering what does this error means? > > here's my vb code: > Imports System.Web.Security > Imports System.Data > Imports System.Data.OleDb > > Public Class dpitem > Inherits System.Web.UI.Page > > #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 > > Protected WithEvents MyDataList As System.Web.UI.WebControls.DataList > Protected WithEvents mydatalist2 As System.Web.UI.WebControls.DataList > Protected WithEvents sc As System.Web.UI.WebControls.HyperLink > Protected WithEvents name As System.Web.UI.WebControls.Label > Protected WithEvents subs As System.Web.UI.WebControls.Label > Protected WithEvents qty As System.Web.UI.WebControls.Label > Protected WithEvents buyqty As System.Web.UI.WebControls.TextBox > Protected WithEvents add As System.Web.UI.WebControls.ImageButton > Protected WithEvents dg As System.Web.UI.WebControls.DataGrid > Protected WithEvents lblTotal As System.Web.UI.WebControls.Label > Dim pid As String > > 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 > If Not IsPostBack Then > makeCart() > End If > Dim ds As DataSet > Dim ds2 As DataSet > Dim MyConnection As OleDbConnection > Dim MyCommand As OleDbDataAdapter > pid = Request.QueryString("pid") > Dim P As New PartyHouse > > ds = P.getSub("*", "lydiasun_product", "pid", pid, "", "") > MyDataList.DataSource = ds.Tables("lydiasun_product").DefaultView > MyDataList.DataBind() > > With ds.Tables("lydiasun_product").Rows(0) > name.Text = .Item("pname") > subs.Text = .Item("subcategory") > sc.Text = .Item("subcategory") > sc.NavigateUrl = "subcategory.aspx?subcategory=" & .Item > ("subcategory") > qty.Text = P.sizing(.Item("allsizes"), .Item("small"), .Item > ("medium"), .Item("large")) > End With > > ds2 = P.getSub("distinct subcategory", "lydiasun_product", > "category", "Decoration & Props", "", "") > > mydatalist2.DataSource = ds2.Tables("lydiasun_product").DefaultView > mydatalist2.DataBind() > End Sub > > Dim objDT As DataTable > Dim objDR As DataRow > > Sub addtocart(ByVal s As Object, ByVal e As ImageClickEventArgs) > 'Dim pid As String = Request.QueryString("pid") > > 'Dim ds As DataSet > 'Dim p As New PartyHouse > lblTotal.Text = "pid is:" & pid > Dim match As Boolean > objDT = Session("cart") > 'ds = p.getSub("*", "lydiasun_product", "pid", pid, "", "") > > If objDT.Rows.Count = 0 Then > objDR = objDT.NewRow > objDR("pid") = "dpp101" > objDR("qty") = CInt(Request.Form("buyqty")) > objDR("price") = 1.99 > 'With ds.Tables("lydiasun_product").Rows(0) > ' objDR("pid") = .Item("pid") > ' objDR("qty") = Request.Form("buyqty") > ' objDR("img") = .Item("img") > ' objDR("pname") = .Item("pname") > ' objDR("pdesc") = .Item("pdesc") > ' objDR("price") = .Item("price") > If Session("email") = "" Then > objDR("user") = "guest" > Else > objDR("user") = Session("email") > End If > 'End With > 'objDR("size") = "all size" > > objDT.Rows.Add(objDR) > Else > For Each objDR In objDT.Rows > If objDR("pid") = pid Then > objDR("qty") += CInt(Request.Form("buyqty")) > match = True > Exit For > End If > Next > If Not match Then > objDR = objDT.NewRow > 'With ds.Tables("lydiasun_product").Rows(0) > objDR("pid") = pid > objDR("qty") = CInt(Request.Form("buyqty")) > objDR("price") = 1.99 > 'objDR("img") = .Item("img") > 'objDR("pname") = .Item("pname") > 'objDR("pdesc") = .Item("pdesc") > 'objDR("price") = .Item("price") > If Session("email") = "" Then > objDR("user") = "guest" > Else > objDR("user") = Session("email") > End If > > 'End With > 'objDR("size") = "all size" > > objDT.Rows.Add(objDR) > End If > End If > Session("cart") = objDT > dg.DataSource = objDT > dg.DataBind() > lblTotal.Text = lblTotal.Text & "<br>$" & GetItemTotal() > > 'Response.Write("<script>window.open('shoppingcart.aspx','mainmid') > ;window.open('vtop.aspx','vtop');</script>") > > End Sub > > Function makeCart() > If Nothing(Session("cart")) Then > > objDT = New DataTable("Cart") > objDT.Columns.Add("ID", GetType(Integer)) > objDT.Columns("ID").AutoIncrement = True > objDT.Columns("ID").AutoIncrementSeed = 1 > > objDT.Columns.Add("pid", GetType(String)) > objDT.Columns.Add("qty", GetType(Integer)) > 'objDT.Columns.Add("img", GetType(String)) > 'objDT.Columns.Add("pname", GetType(String)) > 'objDT.Columns.Add("pdesc", GetType(String)) > objDT.Columns.Add("price", GetType(Decimal)) > objDT.Columns.Add("user", GetType(String)) > > Session("Cart") = objDT > End If > End Function > > Function GetItemTotal() As Decimal > > Dim intCounter As Integer > Dim decRunningTotal As Decimal > > For intCounter = 0 To objDT.Rows.Count - -1 > objDR = objDT.Rows(intCounter) > decRunningTotal += (objDR("price") * objDR("qty")) > Next > > Return decRunningTotal > > End Function > > End Class > > ----------------------------------- > > helpp... im so desperate.. > > -- > Message posted via http://www.dotnetmonster.com > sista via DotNetMonster.com wrote:
> hi.. just wondering what does this error means? It usually means you've used an object variable that hasn't beeninitialized. Can you tell us which line the error occurs on ? > Function makeCart() I don't know what this actually does (if anything!) but I strongly> If Nothing(Session("cart")) Then suspect that what you mean is If Session("cart") Is Nothing Then To the group: Why does the original compile? What does it mean? -- Larry Lard Replies to group please Larry,
You found the error in all that code. On your question, try this. If DirectCast(Nothing, Object) Is Nothing Then Response.Write("I am just an object") End If With Option Strict Off it compiles as always in this kind of situation. Cor
Hashtable question
guidelines for developing an application Form question (Re-usuable code) Icon for Components How do you protect from pirating? copying data from MS-SQL to MS-Access using VB.Net Anyone know what could cause the following error messages? SqlCommand w/ Params Select Issue Using the IN Clause Print information when ANY control is used how to declare globally unique identifier (GUID) |
|||||||||||||||||||||||