logout entry could not be saved on database
hi experts, i have problem saving my logout entry could not be saved on database.
Password & username textbox is in the login form on form 1 and lbldate & lbltime is on form 2. Log-out click is a Menu editor on form 2. Pls help me check my code. Thanks a lot.
Private Sub Logout_Click()
Set rs = New ADODB.Recordset
rs.Open "select*from Logout_Records", cn, adOpenKeyset, adLockOptimistic
rs.AddNew
rs!Password = Form01.txtPassword.Text
rs!Username1 = Form01.txtUsername.Text
rs!Logout_Date = Form02.Label1.Caption
rs!Logout_Time = Form02.Label2.Caption
rs.Update
rs.Close
Set rs = Nothing
Unload Me
Exit Sub
End Sub
Related Article: how view specific date of entry from database
is a solved Visual Basic 4 / 5 / 6 discussion thread by 2mhzbrain that has 10 replies, was last updated 5 months ago and has been tagged with the keywords: visual, basic, 6.0, date, range, specific, to, database.
kimangel
Junior Poster in Training
73 posts since Jan 2013
Reputation Points: 13
Solved Threads: 0
Skill Endorsements: 0
sir, the forms name are already correct. there is no error when I click the log-out on the menu editor and no data has save on database.
kimangel
Junior Poster in Training
73 posts since Jan 2013
Reputation Points: 13
Solved Threads: 0
Skill Endorsements: 0
This is normally where I will start using public variables...
In a module add the following -
Public strUsername1 As String, strPassword As String, strLogout_Date As String, strLogout_Time As String ''Note, string values used, you have already formatted all dates and times etc...
In your logout form -
Private Sub Logout_Click()
Set rs = New ADODB.Recordset
rs.Open "SELECT * FROM Logout_Records", cn, adOpenKeyset, adLockOptimistic
strPassword = Form01.txtPassword.Text
strUsername1 = Form01.txtUsername.Text
''The values from form2 can be called either here IF FORM2 IS STILL OPEN... If form 2 was closed earlier on, add the values BEFORE form2 was closed as per our discussion yesterday...
strLogout_Date = Form02.Label1.Caption
strLogout_Time = Form02.Label2.Caption
rs.AddNew
rs!Password = strPassword
rs!Username1 = strUsername1
rs!Logout_Date = strLogout_Date
rs!Logout_Time = strLogout_Time
rs.Update
rs.Close
Set rs = Nothing
strUsername1 = vbNullString
strPassword = vbNullString
strLogout_Date = vbNullString
strLogout_Time = vbNullString
Unload Me
Exit Sub
End Sub
AndreRet
Industrious Poster
4,706 posts since Jan 2008
Reputation Points: 391
Solved Threads: 481
Skill Endorsements: 20
Hi Sir, I still can't connect with the codes below; Pls help me check whats wrong.
Private Sub Timer2_Timer()
Label1.Caption = Format(Date, "mm/dd/yy")
Label2.Caption = Format(Now, "hh:mm:ss")
End Sub
*in module1
Public cn As ADODB.Connection
Public rs As ADODB.Recordset
Public strUsername1 As String, strPassword As String, strLogout_Date As String, strLogout_Time As String
Sub main()
Set cn = New ADODB.Connection
Set rs = New ADODB.Recordset
cn.ConnectionString = "provider=Microsoft.jet.oledb.4.0; data source=" & (App.Path & "\automatedpayrollsystem.mdb") & "; persist security info = false"
cn.Open
Form01.Show
End Sub
Logout click is in menu bar of form02 as menu editor.
Private Sub Logout_Click()
Set rs = New ADODB.Recordset
rs.Open "select * from Logout_Records", cn, adOpenKeyset, adLockOptimistic
strPassword = Form01.txtPassword.Text
strUsername1 = Form01.txtUsername.Text
strLogout_Date = Form02.Label1.Caption
strLogout_Time = Form02.Label2.Caption
rs.AddNew
rs!Password = strPassword
rs!Username1 = strUsername1
rs!Logout_Date = strLogout_Date
rs!Logout_Time = strLogout_Time
rs.Update
rs.Close
Set rs = Nothing
strPassword = vbNullString
strUsername1 = vbNullString
strLogout_Date = vbNullString
strLogout_Time = vbNullString
Unload Me
Exit Sub
End Sub
kimangel
Junior Poster in Training
73 posts since Jan 2013
Reputation Points: 13
Solved Threads: 0
Skill Endorsements: 0
First, Sub Main is incorrect...
Sub main()
Set cn = New ADODB.Connection
''Set rs = New ADODB.Recordset - DO NOT USE THIS HERE, use it in your form, when done with rs, close it...
cn.ConnectionString = "provider=Microsoft.jet.oledb.4.0; data source=" & App.Path & "\automatedpayrollsystem.mdb", persist security info = false"
cn.Open
Form01.Show
End Sub
Your Logout_click will NOT work if form 1 was closed UNLESS you gave values to Username1 and Password BEFORE FORM 1 WAS CLOSED!!!
Private Sub Logout_Click()
Set rs = New ADODB.Recordset
rs.Open "select * from Logout_Records", cn, adOpenKeyset, adLockOptimistic
strPassword = Form01.txtPassword.Text ''YOU DO NOT NEED TO DO THIS HERE. BEFORE form 1 is closed, add the values to the public )global) variables...
''In Form01 you will have before its unload event -
''strUsername1 = Form01.txtUsername.Text
''strPassword = Form01.txtPassword.Text
strLogout_Date = Form02.Label1.Caption
strLogout_Time = Form02.Label2.Caption
rs.AddNew
rs!Password = strPassword
rs!Username1 = strUsername1
rs!Logout_Date = strLogout_Date
rs!Logout_Time = strLogout_Time
rs.Update
rs.Close
Set rs = Nothing
strPassword = vbNullString
strUsername1 = vbNullString
strLogout_Date = vbNullString
strLogout_Time = vbNullString
Unload Me
Exit Sub
End Sub
And voila, all sorted...
Note that I have changed your connection entirely (cn)...
AndreRet
Industrious Poster
4,706 posts since Jan 2008
Reputation Points: 391
Solved Threads: 481
Skill Endorsements: 20
Hi Sir, thank you for this. Saving the fields above is now okay. I just deleted the Logout_Records and created a new Logout table and its working, few changes also were made;
I used these for date and time codes without using the labels.
Private Sub Logout_Click()
Set rs = New ADODB.Recordset
rs.Open "select*from LogOut", cn, adOpenKeyset, adLockOptimistic
rs.AddNew
rs!Password = Form01.txtPassword.Text
rs!Username1 = Form01.txtUsername.Text
rs!Logout_Time = Format(Now, "hh:mm:ss")
rs!Logout_Date = Format(Date, "mm/dd/yy")
rs.Update
rs.Close
MsgBox "Your Time out has been recorded!", vbInformation, "Logout"
Set rs = Nothing
Unload Me
End Sub
for now its fine but as soon as error occurs I will try your code aboe sir.
thanks a lot.
kimangel
Junior Poster in Training
73 posts since Jan 2013
Reputation Points: 13
Solved Threads: 0
Skill Endorsements: 0
Question Answered as of 4 Months Ago by
AndreRet
and
rishif2 No problem. If it solved your problem, you know what to do then, thanx. :)
AndreRet
Industrious Poster
4,706 posts since Jan 2008
Reputation Points: 391
Solved Threads: 481
Skill Endorsements: 20