Solved

Referencing a (dataset variable in code)

Posted on 2015-02-02
3
141 Views
Last Modified: 2015-02-02
vs2012 vb.net
Here's me code:
    Public Sub btnApply_Click(sender As Object, e As EventArgs) Handles btnApply.Click

        Dim frm As New RO_PartsL1
        Dim dstest As System.Data.DataSet = New Database1DataSet11
        dstest.Tables("PrtsLn1").Columns.Add("Parts_QuantitySold")
        Dim i As Integer = 0
        Dim TtlPrtsSellingPriceLn1 As Decimal = 0
        Dim TtlPrtsCostLn1 As Decimal = 0

        For Each row As DataGridViewRow In DataGridView1.Rows
            Dim chkboxcell As DataGridViewCheckBoxCell = row.Cells("Parts_PutOnRO")

            If chkboxcell.Value = True Then

                Dim m_PartNum_ForRO As String = Me.Database1DataSet11.Tables("PartsInv").Rows(i).Item("Parts_Num")
                Dim m_PartDesc_ForRO As String = Me.Database1DataSet11.Tables("PartsInv").Rows(i).Item("Parts_Desc")
                Dim m_SoldQty_ForRO As Decimal = 1
                Dim m_SellingPrice_ForRO As Decimal = Me.Database1DataSet11.Tables("PartsInv").Rows(i).Item("Parts_List")
                Dim m_PartCost_ForRO As Decimal = Me.Database1DataSet11.Tables("PartsInv").Rows(i).Item("Parts_Cost")

                'Your insert query to save to database table

                Dim myDr As DataRow

                myDr = dstest.Tables("PrtsLn1").NewRow()

                myDr("Parts_Num") = m_PartNum_ForRO
                myDr("Parts_Desc") = m_PartDesc_ForRO
                myDr("Parts_QuantitySold") = m_SoldQty_ForRO

                myDr("Parts_SellingPrice") = m_SellingPrice_ForRO
                TtlPrtsSellingPriceLn1 = TtlPrtsSellingPriceLn1 + m_SellingPrice_ForRO

                myDr("Parts_Cost") = m_PartCost_ForRO
                TtlPrtsCostLn1 = TtlPrtsCostLn1 + m_PartCost_ForRO

                dstest.Tables("PrtsLn1").Rows.Add(myDr)

            End If

            i = i + 1

        Next

        If TtlPrtsSellingPriceLn1 <> 0 Then
            UpdtePrtsSellingPriceLn1(TtlPrtsSellingPriceLn1)
        Else

        End If

        If TtlPrtsCostLn1 <> 0 Then
            UpdtePrtsCostLn1(TtlPrtsCostLn1)
        Else

        End If

        'TODO: This line of code loads data into the 'Database1DataSet11.PrtsLn1' table. You can move, or remove it, as needed.
        frm.DGV_Line1.DataSource = dstest.Tables("PrtsLn1")
        Me.Close()
        frm.Show()
    End Sub

everything seems to be working up to here
? is when I exit the "SUB" - How do I reference the DATA IN "frm.DGV_Line1.DataSource = dstest.Tables("PrtsLn1")"
if "dstest" is a block declared VARIABLE "data in the datagridview I mean"
I don't want to declare it DSTEST as a Global variable if I don't have to.
0
Comment
Question by:MBHEY131
3 Comments
 
LVL 32

Accepted Solution

by:
Daniel Wilson earned 500 total points
ID: 40583943
Within frm, the data would be easily accessed.  I'm not sure what DGV_Line1 is, but it probably has text that has been set by virtue of having the DataSource set.

Do you need to access that data from code in frm?  Of from code in the form that has btnApply?

If the latter, you probably need a global variable for that data element -- the string that is in dstest.Tables("PrtsLn1")"
0
 
LVL 33

Expert Comment

by:it_saige
ID: 40584020
You don't have to make it a global variable in that all classes and assemblies within the project can access it.  Rather, you would make it global to the class it exists in.  Consider the following:
Module Module1
	Private classLevelVariable As String = "I am a class\module level variable.  I can be changed by any method in the class\module."

	Sub Main()
		Console.WriteLine(classLevelVariable)
		Method1()
		Console.WriteLine(classLevelVariable)
		Console.ReadLine()
	End Sub

	Sub Method1()
		Dim method1LevelVariable As String = "I am a method level variable.  I can only be changed within the method I am declared."
		Console.WriteLine(method1LevelVariable)
		classLevelVariable = "Method1 has changed my value."
	End Sub
End Module

Open in new window

Which produces the following output -Capture.JPG-saige-
0
 

Author Closing Comment

by:MBHEY131
ID: 40584048
don't like using Global Variables but I have to access that data from another form
0

Featured Post

Microsoft Certification Exam 74-409

Veeam® is happy to provide the Microsoft community with a study guide prepared by MVP and MCT, Orin Thomas. This guide will take you through each of the exam objectives, helping you to prepare for and pass the examination.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Need to Edit a PDF 9 121
Problem with SqlConnection 4 159
updating table data with inner join 9 24
configure dependency in POM for new database 3 15
This article describes how to use the timestamp of existing data in a database to allow Tableau to calculate the prior work day instead of relying on case statements or if statements to calculate the days of the week.
The article will include the best Data Recovery Tools along with their Features, Capabilities, and their Download Links. Hope you’ll enjoy it and will choose the one as required by you.
The viewer will learn how to set up a document for the web and print and the recommended PPI for printing.
This video shows how use content aware, what it’s used for, and when to use it over other tools.

912 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

21 Experts available now in Live!

Get 1:1 Help Now