What to do on this project?

EDN Admin

Well-known member
Joined
Aug 7, 2010
Messages
12,794
Location
In the Machine
DETAILGEGEVENS

Public Class frmDetailsEvenementen

declareren van de publieke variabelen

Public dsevenementen As DataSet

Public daevenemeten As OleDb.OleDbDataAdapter

Public conn As OleDb.OleDbConnection

Public index As Integer

Public eMOEv As Boolean

Public Evteller As Integer

Public ValidatieTel As Short

declareren van de velden apprt omdat het overzichtsfromulier anders een private-fout geeft

Public EvenementenEvNr As String

Public EvenementenNaam As String

Public EvenementenBeschrijving As String

Public EvenmentenStartdag As String

Public EvenmentenEinddag As String

Public EvementenSucces As String

Public EvementenOpmerkingen As String

Private Sub frmDetailsEvenementen_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

de index gelijk aan 0 zetten

index = 0

een iffunctie waaardoor het programma weet vanwaaruit de bedoeling is.

als de teller 1 is dus het formulier wordt gewijzigd

If Evteller = 1 Then

de terug en vooruit knop verbergen

btnTerug.Hide()

btnVooruit.Hide()

de ok en anuleren knop tonen

btnOk.Show()

btnAnnuleren.Show()

de functie gebruiken om de gegevens in het formulier te laden

VulVanOverzicht()

als de teller 2 is dus er wordt een nieuw formulier aangemaakt

ElseIf Evteller = 2 Then

de terug en vooruit knop verbergen

btnTerug.Hide()

btnVooruit.Hide()

de ok en anululeren knop tonen

btnOk.Show()

btnAnnuleren.Show()

als dit geen van beiden is dus nog steeds 0 dan wordt het detailformulier direct opgevraagt

Else

de knop terug en vooruit tonen

btnTerug.Show()

btnVooruit.Show()

de knop ok en annuleren verbergen

btnOk.Hide()

btnAnnuleren.Hide()

alle gegevens oproepen zodaning de gebruiker alles kan overlopen

LaadGegevensOp()

End If

End Sub



Private Sub LaadGegevensOp()

variablen zette

dsevenementen = New DataSet

daevenemeten = New OleDb.OleDbDataAdapter

conn = New OleDb.OleDbConnection

Dim sql As String



gebruik de connectionstring uit de wizard; vppr ons eigen connection object

conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|GipDataBaseJohnnie(1)(1).mdb"



maak de sql opdracht aan

sql = "Select * From Evenementen"



koppel de sql opdracht aan de data adaptor

daevenemeten.SelectCommand = New OleDb.OleDbCommand(sql)



koppel de databank verbinding met de data adaptor

daevenemeten.SelectCommand.Connection = conn



daevenemeten.Fill(dsevenementen)

tel de lijnen van de table van de dataste op, als er rijen gevonden zijn vul je de geg, in

If dsevenementen.Tables(0).Rows.Count > 0 Then

vulveldenop()

Else

MsgBox("ErrorToString")

End If





End Sub



Private Sub vulveldenop()

vul de velden op aan de hand van de geslecteerde rij

txtEvNr.Text = dsevenementen.Tables(0).Rows(index).Item("EvNummer").ToString

txtNaam.Text = dsevenementen.Tables(0).Rows(index).Item("EvNaam").ToString

txtBeschrijving.Text = dsevenementen.Tables(0).Rows(index).Item("EvBeschrijving").ToString

dtpStartdag.Text = dsevenementen.Tables(0).Rows(index).Item("EvStartdag").ToString

dtpEinddag.Text = dsevenementen.Tables(0).Rows(index).Item("EvEindag").ToString

ckbSucces.Checked = dsevenementen.Tables(0).Rows(index).Item("EvSucces")

txtOpmerkingen.Text = dsevenementen.Tables(0).Rows(index).Item("EvOpmerkingen").ToString

End Sub

Private Sub btnVooruit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnVooruit.Click

Enkel verdergaan met het opladen van de gegevens als er een volgende record bestaat

If index < dsevenementen.Tables(0).Rows.Count - 1 Then

de index plus 1 doen om aan te geven dat je op de volgende record komt

index = index + 1

de gegevens naar het detailformulier laden

LaadGegevensOp()

Else

als er geen volgende record en dus geen volgende gegevens bestaan weergeven aan de gebruiker dat het einde van de tabel is

MsgBox("Einde tabel!", MsgBoxStyle.Critical, "Einde")

End If

End Sub



Private Sub btnTerug_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnTerug.Click

Enkel teruggaan met het opladen van de gegevens als er een vorige record bestaat

If index > 0 Then

de index min 1 doen om aan te geven dat je op de vorige record komt

index = index - 1

de gegevens naar het detailformulier laden

LaadGegevensOp()

Else

als er geen volgende record en dus geen volgende gegevens bestaan weergeven aan de gebruiker dat het einde van de tabel is

MsgBox("Begin tabel!", MsgBoxStyle.Critical, "Einde")

End If

End Sub

Private Sub btnOk_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOk.Click

alvborens de gegevens op te slaan de validatie functie uitvoeren

If eMOEv = False Then

als er een fout is in de validatie is de variabele 1

If ValidatieTel = 1 Then

terugaan naar het formulier

Return

Else

anders aalles in de tabel adapter steken om naar de tabel te plaatsten

EvenementenTableAdapter.Insert(txtNaam.Text, dtpStartdag.Value, dtpEinddag.Value, txtBeschrijving.Text, ckbSucces.Checked, txtOpmerkingen.Text)

het overzicht formulier opvullen

frmOverzichtEvenementen.EvenementenTableAdapter.Fill(frmOverzichtEvenementen._GipDataBaseJohnnie_1__1_DataSet.Evenementen)

het detail formulier afsluiten

Dispose()

End If

Else

wnr je een product wijzigt

declareer de variabelen

Dim ds As New DataSet

Dim da As New OleDb.OleDbDataAdapter

Dim sql As String

Dim conn As New OleDb.OleDbConnection



haal de connectie string op

conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|GipDataBaseJohnnie(1)(1).mdb"



controleren of de verbinding dicht of open is

als deze dicht is moet deze geopend worden

If conn.State = ConnectionState.Closed Then

de connectie openen

conn.Open()

End If



de functie oproepen voor het teruggeven van het nummer

HetLevNummerTeruggeven()

het sql commando oppbouwen aan de hand van de volgende code

sql = "Update Evenementen Set " & _

"EvNaam = " & txtNaam.Text & " , " & _

"EvStartdag = " & dtpStartdag.Value.Date & " , " & _

"EvEindag = " & dtpEinddag.Value.Date & " , " & _

"EvBeschrijving = " & txtBeschrijving.Text & " , " & _

"EvSucces = " & ckbSucces.Checked & " , " & _

"EvOpmerkingen = " & txtOpmerkingen.Text & ""



"Where BestNr = " & txtBestNr.Text



de updateopdracht aan de hand van het nummer aanmaken met de table adaptor

deze het het bovenstaande sql commando weergeven

da.UpdateCommand = New OleDb.OleDbCommand(sql)



de connectie instellen die de tableadaptor moet gebruiken voor het verbinden van de database

da.UpdateCommand.Connection = conn



voer de query uit

da.UpdateCommand.ExecuteNonQuery()



de verbinding met de database terug sluiten

conn.Close()

de ververs functie oproepen voor het verversen van de gegevens

frmOverzichtEvenementen.verversgegevens()

Het formulier afsluiten

Dispose()

End If

End Sub



Private Sub btnAnnuleren_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAnnuleren.Click

bij annuleren het venster laten verdwijnen en de variabelen automatisch leegmaken

Me.Dispose()

End Sub

Private Sub VulVanOverzicht()

de velden opvullen aan de hand van de globale variabelen

txtEvNr.Text = EvenementenEvNr

txtNaam.Text = EvenementenNaam

txtBeschrijving.Text = EvenementenBeschrijving

dtpStartdag.Value = EvenmentenStartdag

dtpEinddag.Value = EvenmentenEinddag

ckbSucces.Checked = EvementenSucces

txtOpmerkingen.Text = EvementenOpmerkingen

End Sub

Private Sub Validatie()

een validatie tekst declareren

Dim vdtxt As String

de tekstvelden trimmen om te onderzoeken op foutieve of lege ingave

Trim(txtEvNr.Text)

Trim(txtNaam.Text)

Trim(txtBeschrijving.Text)

Trim(dtpStartdag.Value)

Trim(dtpEinddag.Value)

Trim(ckbSucces.Text)

Trim(txtOpmerkingen.Text)

de validatietekst een vaste waarde toekennnen

als de er iets fout is in de validatie zal dit worden teruggegeven aan de gebruiker

vdtxt = "Gelieve de volgende velden te corrigeren: " & vbNewLine

hieronder daarvoor alle nodige iflussen (kan worden uitgebreid)

If IsNumeric(txtNaam.Text) Then

de fout van de toevoegen aan het fouten venster

vdtxt = vdtxt & "Naam"

een nieuwe lijn beginnen in de fouten lijn

vdtxt = vdtxt & vbNewLine

de variabele de waarde 1 toekennen zodanig deze een fout kan geven bij het uitvoeren

ValidatieTel = 1

End If

als het tekstveld na het trimmen (het verwijderen van alle spaties) deze fout

If txtNaam.Text.Length = 0 Then

de fout van de toevoegen aan het fouten venster

vdtxt = vdtxt & "Naam"

een nieuwe lijn beginnen in de fouten lijn

vdtxt = vdtxt & vbNewLine

de variabele de waarde 1 toekennen zodanig deze een fout kan geven bij het uitvoeren

ValidatieTel = 1

End If

als het tekstveld na het trimmen (het verwijderen van alle spaties) deze fout

If dtpStartdag.Text.Length = 0 Then

de fout van de toevoegen aan het fouten venster

vdtxt = vdtxt & "Startdag"

een nieuwe lijn beginnen in de fouten lijn

vdtxt = vdtxt & vbNewLine

de variabele de waarde 1 toekennen zodanig deze een fout kan geven bij het uitvoeren

ValidatieTel = 1

End If

als het tekstveld na het trimmen (het verwijderen van alle spaties) deze fout

If dtpEinddag.Text.Length = 0 Then

de fout van de toevoegen aan het fouten venster

vdtxt = vdtxt & "Einddag"

een nieuwe lijn beginnen in de fouten lijn

vdtxt = vdtxt & vbNewLine

de variabele de waarde 1 toekennen zodanig deze een fout kan geven bij het uitvoeren

ValidatieTel = 1

End If

de fout tonen aan de gebruiker

If ValidatieTel = 1 Then

MsgBox(vdtxt, MsgBoxStyle.Critical, "Fout!")

End If

End Sub

End Class

EEN TABEL

Public Class frmOverzichtEvenementen



Private Sub frmOverzichtsEvenementen_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Activated

verversgegevens()

End Sub



Private Sub frmEvenementen_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

de functie oproepen op degegevens op te laden bij het laden van dit formulier

HaalGegevensOp()

End Sub

Public Sub HaalGegevensOp()

declareren van de varriablen

de dataset en de data adapter declareren

Dim ds As New DataSet

Dim da As OleDb.OleDbDataAdapter

het sql commando declareren

Dim sql As String

het sql commando een waarde geven

sql = "Select * From Evenementen"

het doorgeven van de commando aan de data adapter

da = New OleDb.OleDbDataAdapter(sql, Me.EvenementenTableAdapter.Connection.ConnectionString)

da.Fill(ds, "Evenementen")



EvenementenDataGridView.DataSource = ds.Tables(0)

EvenementenDataGridView.Refresh()

End Sub



Private Sub btnNieuw_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNieuw.Click

declareren van de variabelen

Dim frm As frmDetailsEvenementen

deze variabelen een waarde geven (het formulier zelf)

frm = New frmDetailsEvenementen

de editmode op false zetten

frm.eMOEv = False

de globale variabele toekennnen (hierdoor wordt het detailformulier beïnvloed)

frm.Evteller = 2

het detailformulier tonen aan de gebruiker

frm.ShowDialog(Me)

End Sub



Public Sub btnWijzigen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnWijzigen.Click

Dim frm As frmDetailsEvenementen

frm = New frmDetailsEvenementen

Dim teller As Integer

teller = Me.EvenementenDataGridView.CurrentRow.Index

frm.Evteller = 1

frm.eMOEv = True

frm.EvenementenEvNr = Me.EvenementenDataGridView.Item(0, teller).Value

frm.EvenementenNaam = Me.EvenementenDataGridView.Item(1, teller).Value

frm.EvenmentenStartdag = Me.EvenementenDataGridView.Item(2, teller).Value

frm.EvenmentenEinddag = Me.EvenementenDataGridView.Item(3, teller).Value

frm.EvenementenBeschrijving = Me.EvenementenDataGridView.Item(4, teller).Value

frm.EvementenSucces = Me.EvenementenDataGridView.Item(5, teller).Value

frm.EvementenOpmerkingen = Me.EvenementenDataGridView.Item(6, teller).Value

frm.ShowDialog(Me)

chronologische comentaar

Het declareren van de variabelen

deze variabelen een waarde geven (het formulier zelf)

een teller declareren

de globale variabele toekennnen (hierdoor wordt het detailformulier beïnvloed)

de teller de waarde toeknennen van de geselecteerde rij

De editmode op true zetten

de waarden in de bijhorende velden opvullen

het detailformulier tonen aan de gebruiker

End Sub

Public Sub verversgegevens()

een functie voor het verversen van de gegevens

eerst de tabeladapter opvullen met de nodige gegevens

Me.EvenementenTableAdapter.Fill(Me._GipDataBaseJohnnie_1__1_DataSet.Evenementen)

de datagrid refreshen

Me.EvenementenDataGridView.Refresh()

omdat bovenstaande code niet 100% correct werkt

HaalGegevensOp()

End Sub



Private Sub btnVerwijderen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnVerwijderen.Click

Dim result As DialogResult



ervoor zetten omdat dit anders voor problemen met het eerste nummer in de gegevens

Dim teller As Integer

het nummer zoeken van de geselcteerde rij

teller = EvenementenDataGridView.CurrentRow.Index



result = MsgBox("Bent u zeker dat u wilt verwijderen?", MsgBoxStyle.YesNo, "Waarschuwing")

If result = DialogResult.Yes Then





zoeken naar gerelateerde records waardoor je niet mag verwijderen

Declareer de variabelen die we gaan gebruiken voor het ophalen van de klantEvenementgegevens

Dim ds As New DataSet

Dim dt As DataTable

Dim da As OleDb.OleDbDataAdapter

Dim sql As String

Dim geralteerdegeg As Boolean



initialiseer de check en zet de waarde op onwaar

geralteerdegeg = False

Maak de sql statement aan

sql = "Select * From Klanten Where KlaNummer = " & EvenementenDataGridView.Item(0, teller).Value

Maak de verbinding me de database en geef de sql opdracht mee

da = New OleDb.OleDbDataAdapter(sql, EvenementenTableAdapter.Connection.ConnectionString)

Vul de dataset met de gegevens uit de databank die overeenkomen met de sql opdracht

da.Fill(ds, "Klanten")

De datatabel gelijkstellen aan de tabel klantEvenement uit de dataset

dt = ds.Tables(0)



Als de datatable records bevat, dan is de klant voor dat evenement al ingeschreven

If dt.Rows.Count > 0 Then

Zet de check hier op true

geralteerdegeg = True

End If



If geralteerdegeg = False Then

Verwijder de geselecteerde record

EvenementenTableAdapter.Delete(EvenementenDataGridView.Item(0, teller).Value, EvenementenDataGridView.Item(1, teller).Value, EvenementenDataGridView.Item(2, teller).Value, EvenementenDataGridView.Item(3, teller).Value, EvenementenDataGridView.Item(5, teller).Value)



gegevense verversen in de tabel

EvenementenTableAdapter.Fill(_GipDataBaseJohnnie_1__1_DataSet.Evenementen)

EvenementenDataGridView.Refresh()

Else

MsgBox("Je mag dit niet verwijderen omdat er nog gerelateerde gegevens gelinkt zijn aan deze gegevens die u wilt verwijderen", MsgBoxStyle.Information, "Info")

End If

verversgegevens()

vbT()

End If

End Sub

End Class

EEN-OP-Veel

Public Class frmOverzichtsLeveranciersKosten



Private Sub frmOverzichtsKosten_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Activated

HaalGegevensOp()

End Sub

Private Sub frmOverzichtsKosten_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

de functie oproepen op degegevens op te laden bij het laden van dit formulier

HaalGegevensOp()

End Sub



Private Sub btnWijzigen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnWijzigen.Click

Dim frm As frmDetailsKosten

frm = New frmDetailsKosten

Dim teller As Integer

frm.vulLevLijst()

teller = Me.QREovKostLevDataGridView.CurrentRow.Index

frm.Kostteller = 1

frm.eMOKost = True

frm.KostenKostNummer = Me.QREovKostLevDataGridView.Item(0, teller).Value.ToString

frm.Kostennaam = Me.QREovKostLevDataGridView.Item(1, teller).Value.ToString

frm.KostenPlaats = Me.QREovKostLevDataGridView.Item(2, teller).Value.ToString

frm.KostenTotBedrag = Me.QREovKostLevDataGridView.Item(3, teller).Value.ToString

frm.KostenBedrag = Me.QREovKostLevDataGridView.Item(4, teller).Value.ToString

frm.KostenBtwPercentage = Me.QREovKostLevDataGridView.Item(5, teller).Value.ToString

frm.KostenDatum = Me.QREovKostLevDataGridView.Item(6, teller).Value.ToString

frm.KostenOpmerkingen = Me.QREovKostLevDataGridView.Item(7, teller).Value.ToString

cmb opvullen

frm.leveranciernaam = Me.QREovKostLevDataGridView.Item(10, teller).Value.ToString

frm.ShowDialog(Me)

chronologische comentaar

Het declareren van de variabelen

deze variabelen een waarde geven (het formulier zelf)

een teller declareren

de globale variabele toekennnen (hierdoor wordt het detailformulier beïnvloed)

de teller de waarde toeknennen van de geselecteerde rij

De editmode op true zetten

de waarden in de bijhorende velden opvullen

het detailformulier tonen aan de gebruiker

End Sub



Private Sub HaalGegevensOp()

declareren van de varriablen

de dataset en de data adapter declareren

Dim ds As New DataSet

Dim da As OleDb.OleDbDataAdapter

het sql commando declareren

Dim sql As String

het sql commando een waarde geven

sql = "Select * From QREovKostLev"

het doorgeven van de commando aan de data adapter

da = New OleDb.OleDbDataAdapter(sql, Me.QREovKostLevTableAdapter.Connection.ConnectionString)

da.Fill(ds, "QREovKostLev")



QREovKostLevDataGridView.DataSource = ds.Tables(0)

QREovKostLevDataGridView.Refresh()



End Sub



Private Sub btnNieuw_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNieuw.Click

declareren van de variabelen

Dim frm As frmDetailsKosten

deze variabelen een waarde geven (het formulier zelf)

frm = New frmDetailsKosten

de editmode op false zetten

frm.eMOKost = False

de globale variabele toekennnen (hierdoor wordt het detailformulier beïnvloed)

frm.Kostteller = 2

het detailformulier tonen aan de gebruiker

frm.ShowDialog(Me)

End Sub

Public Sub verversgegevens()

een functie voor het verversen van de gegevens

eerst de tabeladapter opvullen met de nodige gegevens

Me.QREovKostLevTableAdapter.Fill(Me._GipDataBaseJohnnie_1__1_DataSet.QREovKostLev)

de datagrid refreshen

Me.QREovKostLevDataGridView.Refresh()

End Sub



Private Sub btnVerwijderen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnVerwijderen.Click

i als een variabele

Dim i As Integer

Haal het nummer van de gesleecteerde record op

i = Me.QREovKostLevDataGridView.CurrentRow.Index



ervoor zetten omdat dit anders voor problemen met het eerste nummer in de gegevens

Dim teller As Integer

het nummer zoeken van de geselcteerde rij

teller = QREovKostLevDataGridView.Item(0, i).Value



Maak de variabelen aan voor de verbinding met de database

Dim ds As New DataSet

Dim da As New OleDb.OleDbDataAdapter

Dim conn As New OleDb.OleDbConnection



Haal de connectionstring op en ken die toe aan het conn object

conn.ConnectionString = Me.QREovKostLevTableAdapter.Connection.ConnectionString



Als de verbinding gesloten is

If conn.State = ConnectionState.Closed Then

Open de verbinding

conn.Open()

End If



Dim i As Integer

Haal het nummer van de gesleecteerde record op

i = Me.QREovATECEvDataGridView.CurrentRow.Index



Dim LevNr As Integer

LevNr = QREovKostLevDataGridView.Item(8, i).Value



Dim sql As String

sql = "Delete from Kosten where KostNummer = " & teller & " And KostLevNummer = " & LevNr



Maak de delete commando aan

da.DeleteCommand = New OleDb.OleDbCommand(sql)

Voeg daar de connectie aan mee

da.DeleteCommand.Connection = conn



Voer de deletequery uit

da.DeleteCommand.ExecuteNonQuery()



We sluiten de connectie naar de database

conn.Close()



Laad alle deelnemers van het evenement opnieuw op

verversgegevens()

End Sub

End Class

View the full article
 
Back
Top