Solved

Visual Studio Visual Basic 2012, Automatically update a record when moving to next record without need for save button

Posted on 2014-09-22
2
466 Views
Last Modified: 2014-09-24
Trying to see if I can teach an old dog(me) new tricks. After years of using Access to create databases, I am trying to use Visual Studio 2012 Visual Basic to re-create some of the applications I have created. Right now my learning curve is more of a straight line than a curve. I am used to Microsoft Access handling all record update functions for me. I used the before update event for data validation. Then, if no errors were found, Access would write the updated data to the table. Not so with VB 2012. How do I get VB 2012 to error check a record before the update is written and then, if no errors are found, to write the changes (and/or add a new record) when moving to a new record. I have purchased a couple of books on VB 2012 and I cannot find the answer in any of them. I can't find it online. As a side issue, is there a book/tutorial that anyone could recommend that deals pretty much exclusively with handling databases? I would like to find one that takes me, step by step, thru the creation of a small vb project that updates data located in a SQL server.
0
Comment
Question by:rodneygray
2 Comments
 
LVL 83

Accepted Solution

by:
CodeCruiser earned 500 total points
ID: 40338702
There are quite a few tutorials online and following is just an example

http://www.homeandlearn.co.uk/NET/nets12p1.html

VB has this concept of disconnected database access where it downloads records from DB, allows you to work on it locally and then upload changes back to the DB if you want.

If you want to update records whenever current record changes then you can call the tableadapter.update method in your button clicks for all the next, previous buttons.
0
 
LVL 1

Author Comment

by:rodneygray
ID: 40340269
Found the solution on http://www.codeproject.com/Articles/12846/Auto-Saving-DataGridView-Rows-to-a-SQL-Server-Data
Had to add two subroutines and one class variable. Might need to add me.Validate(), have not tested yet.


Public Class SizeForm
    Dim UpdatePending As Boolean = False

   
Private Sub SizeBindingSource_ListChanged(sender As Object, e As System.ComponentModel.ListChangedEventArgs) Handles SizeBindingSource.ListChanged
        If Me.SupplyRoomDataSet.HasChanges Then
            Me.UpdatePending = True
        End If
    End Sub


Private Sub SizeDataGridView_RowValidated(sender As Object, e As DataGridViewCellEventArgs) Handles SizeDataGridView.RowValidated
        If UpdatePending Then
            Me.SizeTableAdapter.Update(Me.SupplyRoomDataSet)
            Me.UpdatePending = False
        End If
    End Sub
End Class
0

Featured Post

Free Trending Threat Insights Every Day

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

Join & Write a Comment

Since .Net 2.0, Visual Basic has made it easy to create a splash screen and set it via the "Splash Screen" drop down in the Project Properties.  A splash screen set in this manner is automatically created, displayed and closed by the framework itsel…
1.0 - Introduction Converting Visual Basic 6.0 (VB6) to Visual Basic 2008+ (VB.NET). If ever there was a subject full of murkiness and bad decisions, it is this one!   The first problem seems to be that people considering this task of converting…
Internet Business Fax to Email Made Easy - With eFax Corporate (http://www.enterprise.efax.com), you'll receive a dedicated online fax number, which is used the same way as a typical analog fax number. You'll receive secure faxes in your email, fr…
Get a first impression of how PRTG looks and learn how it works.   This video is a short introduction to PRTG, as an initial overview or as a quick start for new PRTG users.

758 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

22 Experts available now in Live!

Get 1:1 Help Now