Adress Manager erstellen?

  • VB.NET

Es gibt 26 Antworten in diesem Thema. Der letzte Beitrag () ist von Marcus Gräfe.

    Adress Manager erstellen?

    Hallo zusammen,

    ich würde mir gerne einen Adress Manager in VB erstellen.
    Er sollte Vorname,Nachnahme,Telefonnummer,Email Adresse, KD Nummer enthalten.
    Da ich schon ewig nichts mehr mit VB gemacht habe wäre ich für jede Anregung dankbar.

    Eine Stammdatei sollte auf der NAS liegen und es sollten mehrere Personen gleichzeitig drauf zugreiffen können.

    Gruß
    GrünerBaum
    Nimm statt einer Stammdatei einen SQL-Server.
    Dort legst du das ganze schön als Tabelle an mit
    ID, Nachnahme, Telefonnummer, Email Adresse, KD Nummer

    ID = PK und autoincrement

    Durch die ID lässt sich dein Address-Manager einfach erweitern, wenn du mal Lust drauf hast und den User mit anderen Datensätzen in Verbindung bringen willst.
    Dann brauchst du nur noch deine Eingabe/Anzeige/Bearbeitungsmasken auf einer Form und baust dir die passenden INSERT/UPDATE/SELECT zusammen.
    Das kann dann auch von mehreren Benutzern gestartet und verwendet werden.

    So würde ich das anstellen.


    LG Acr0most
    Wenn das Leben wirklich nur aus Nullen und Einsen besteht, dann laufen sicherlich genügen Nullen frei herum. :D
    Signature-Move 8o
    kein Problem mit privaten Konversationen zu Thema XY :thumbup:
    Willkommen im Forum. :thumbup:

    GrünerBaum schrieb:

    Funktioniert anstatt ein SQL Server auch eine Access Datenbank?
    Klar.
    Sogar eine Excel-Tabelle.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Also vergiss Youtube-Videos, fast alle sind Muell. Meist erstellt von irgendwelchen die nicht mal durch den Stimmbruch sind, so gut wie keine Ahnung vom coden haben(sieht man am Code und hoer dir mal manche erklaerungen an xD) und nur vor ihren Freunden angeben wollen: "Schaut mal, ich mach Coding-Tutorials", bin der OberHacker.

    Schau dir mal diesen Thread vom ErfinderDesRades an, vllt. ist dir damit geholfen.
    DatasetOnly: DB-Programmierung ohne Datenbank
    And i think to myself... what a wonderfuL World!

    GrünerBaum schrieb:

    mehrere Personen
    Schreib mal ne vollständige Problembeschreibung / Aufgabenstellung.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Also mein Chef und ich hätten folgendes gerne:

    Ein kleines VB Programm das wir als Adress Manager benutzen.
    Dort sollten wir Kundendaten wie Name Telefonnummer etc eintragen können.
    Eine Suchfunktion wäre auch noch sicher sinvoll
    Gespeichert sollte das ganze in einer Access Datenbank werden.

    Hierfür bräuchte ich eure Hilfe da ich sowas noch nie in VB gemacht habe...



    Grüße
    GrünerBaum

    GrünerBaum schrieb:

    da ich sowas noch nie in VB gemacht habe...


    Wie gut sind deine VB.Net Kentnisse?
    "Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben."

    Wie debugge ich richtig? => Debuggen, Fehler finden und beseitigen
    Wie man VisualStudio nutzt? => VisualStudio richtig nutzen
    @mrMo Jou.

    GrünerBaum schrieb:

    Also mein Chef und ich hätten folgendes gerne
    Du hast keine Ahnung, wir machen die Arbeit und Du bekommst Geld dafür?
    Wenn Du hier nämlich lernen wolltest, um das ordentlich zu machen, schmeißt Dich Dein Chef vorher wegen keiner Ergebnisse raus.
    Wie also dürfen wir unsere Zusammenarbeit vorstellen?
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    GrünerBaum schrieb:

    Hierfür bräuchte ich eure Hilfe da ich sowas noch nie in VB gemacht habe...


    Das macht nix. Für deine Anforderungen würde auch AccessVBA reichen.
    Ein einfaches Frontend für die Tabellen, fertig. Bei Access ist nur der Mehrbenutzerzugriff schwierig. Da Acces sich zwar als Datenbank sieht aber nicht die schöne Mehrbenutzerfähigkeit von SQL (o.ä.) mitbringt.
    There is no CLOUD - just other people's computers

    Q: Why do JAVA developers wear glasses?
    A: Because they can't C#

    Daily prayer:
    "Dear Lord, grand me the strength not to kill any stupid people today and please grant me the ability to punch them in the face over standard TCP/IP."
    Kleine Anmerkung:
    Was wenn der Kunde mehrere (z.B. 5-10) E-Mail Adressen, Telefon - & Handynummern hat? Da geht es dann schon los, dass man ne weitere Tabelle braucht... Solche Eigenentwicklungen können schnell ausarten wenn die Anforderungen steigen. Und das ist meist der Fall wenns Programm gut läuft. An sich ja kein Problem, wenn man einigermaßen sattelfest in VB.Net ist.
    "Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben."

    Wie debugge ich richtig? => Debuggen, Fehler finden und beseitigen
    Wie man VisualStudio nutzt? => VisualStudio richtig nutzen
    So ich habe jetzt mal mit einer Youtube Anleitung etwas kleines erstellt.
    Leider bekomme ich immer einem Syntaxfehler.
    Kann vielleicht jemand helfen?

    Ach und nein. Ich bekomme dafür kein Geld. Ich lerne aber gerne auch immer dazu....

    Spoiler anzeigen
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    'TODO: Diese Codezeile lädt Daten in die Tabelle "Your_DatabaseDataSet.Tabelle1". Sie können sie bei Bedarf verschieben oder entfernen.
    Me.Tabelle1TableAdapter.Fill(Me.Your_DatabaseDataSet.Tabelle1)

    With DataGridView1
    .ClearSelection()
    .ReadOnly = True
    .MultiSelect = False
    End With

    Dim colors() As String = [Enum].GetNames(GetType(KnownColor))

    cboDfColor.Items.AddRange(colors)
    cboAltColor.Items.AddRange(colors)

    Me.reset()

    End Sub

    Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
    Me.Close()
    End Sub

    Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click

    If MessageBox.Show("Are you sure", "Delete Record", MessageBoxButtons.YesNo, _
    MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) = _
    Windows.Forms.DialogResult.Yes Then
    Tabelle1BindingSource.RemoveCurrent()
    End If

    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Tabelle1BindingSource.MovePrevious()
    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    Tabelle1BindingSource.AddNew()
    End Sub

    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
    Tabelle1BindingSource.MoveNext()
    End Sub

    Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
    On Error GoTo SaveErr
    Tabelle1BindingSource.EndEdit()
    Tabelle1TableAdapter.Update(Your_DatabaseDataSet.Tabelle1)
    MessageBox.Show("OK")
    SaveErr:
    Exit Sub
    End Sub

    Private Sub cboDfColor_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboDfColor.SelectedIndexChanged
    cboDfColor.BackColor = Color.FromName(cboDfColor.SelectedItem)
    txtSearch.Select()
    End Sub

    Private Sub cboAltColor_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboAltColor.SelectedIndexChanged
    cboAltColor.BackColor = Color.FromName(cboAltColor.SelectedItem)
    txtSearch.Select()
    End Sub

    Private Sub IblReset_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles IblReset.Click
    On Error GoTo ErrRe
    txtSearch.Select()
    Tabelle1BindingSource.Filter = Nothing

    With DataGridView1
    .ClearSelection()
    .ReadOnly = True
    .MultiSelect = False
    .DataSource = Tabelle1BindingSource
    End With

    Me.reset()

    ErrEx:
    Exit Sub

    ErrRe:
    MsgBox("Error Number " & Err.Number & vbNewLine & _
    "Error Description " & Err.Description, MsgBoxStyle.Critical, _
    "Reset Error!")
    Resume ErrEx
    End Sub

    Private Sub btnSearch_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSearch.Click
    On Error GoTo SearchErr

    If txtSearch.Text = "" Then
    Call notFound()
    Exit Sub

    Else

    Dim cantFind As String = txtSearch.Text
    Me.dgvFill()

    Tabelle1BindingSource.Filter = "(Convert(ID, 'System.String') '" & txtSearch.Text & "')" & _
    "OR (Kundennummer LIKE ' " & txtSearch.Text & "') OR (Firma LIKE '" & txtSearch.Text & "')" & _
    "OR (Anrede LIKE '" & txtSearch.Text & "') OR (Vorname LIKE '" & txtSearch.Text & "')" & _
    "OR (Nachname LIKE '" & txtSearch.Text & "') OR (Straße LIKE '" & txtSearch.Text & "')" & _
    "OR (PLZ LIKE ' " & txtSearch.Text & "') OR (Ort LIKE '" & txtSearch.Text & "')" & _
    "OR (Telefon LIKE '" & txtSearch.Text & "') OR (Handy LIKE '" & txtSearch.Text & "')" & _
    "OR (Homepage LIKE '" & txtSearch.Text & "') OR (E-Mail LIKE '" & txtSearch.Text & "')" & _
    "OR (Skype LIKE '" & txtSearch.Text & "' OR (Business/Privat LIKE '" & txtSearch.Text & "')" & _
    "OR (Bemerkungen LIKE'" & txtSearch.Text & "')"

    If Tabelle1BindingSource.Count <> 0 Then
    With DataGridView1
    .DataSource = Tabelle1BindingSource
    End With

    Else

    Me.notFound()

    MsgBox("--> " & cantFind & vbNewLine & _
    "The search item was not found.", _
    MsgBoxStyle.Information, "Hey Boss!")

    Tabelle1BindingSource.Filter = Nothing

    With DataGridView1
    .ClearSelection()
    .ReadOnly = True
    .MultiSelect = False
    .DataSource = Tabelle1BindingSource
    End With

    End If

    End If

    ErrExit:
    Exit Sub
    SearchErr:
    MsgBox("Error Numbe " & Err.Number & vbNewLine & _
    "Error Description " & Err.Description, MsgBoxStyle.Critical, _
    "Reset Error!")
    Resume ErrExit

    End Sub

    Private Sub reset()

    Dim txtS As TextBox = txtSearch
    With txtS
    .Text = ""
    .Select()
    .BackColor = Color.LightCyan
    End With

    cboDfColor.SelectedItem = "MistyRose"
    cboAltColor.SelectedItem = "Gold"

    cboDfColor.BackColor = Color.LightCyan
    cboAltColor.BackColor = Color.LightCyan

    If DataGridView1.DataSource Is Nothing Then
    Exit Sub
    End If

    Dim dgv1 As DataGridView = DataGridView1
    With dgv1
    .RowsDefaultCellStyle.BackColor = Color.FromName(cboDfColor.SelectedItem)
    .AlternatingRowsDefaultCellStyle.BackColor = Color.FromName(cboAltColor.SelectedItem)
    End With

    End Sub

    Private Sub dgvFill()

    txtSearch.BackColor = Color.LightBlue

    If DataGridView1.DataSource Is Nothing Then
    Exit Sub
    End If

    Dim myDGV1 As DataGridView = DataGridView1
    With myDGV1
    .RowsDefaultCellStyle.BackColor = Color.FromName(cboDfColor.SelectedItem)
    .AlternatingRowsDefaultCellStyle.BackColor = Color.FromName(cboAltColor.SelectedItem)
    End With


    End Sub

    Private Sub notFound()

    Dim txtS As TextBox = txtSearch
    With txtS
    .BackColor = Color.LightCyan
    .Select()
    .SelectAll()
    End With

    If DataGridView1.DataSource Is Nothing Then
    Exit Sub
    End If

    Dim dgv As DataGridView = DataGridView1
    With dgv
    .RowsDefaultCellStyle.BackColor = Color.White
    .AlternatingRowsDefaultCellStyle.BackColor = Color.White
    End With

    End Sub

    Private Function Straße() As Object
    Throw New NotImplementedException
    End Function

    End Class


    Eine Ausnahme (erste Chance) des Typs "System.Data.SyntaxErrorException" ist in System.Data.dll aufgetreten.

    Wie funktioniert das mit dem StackTrace?

    Gruß
    GrünerBaum
    Bilder
    • screenvb.PNG

      74,94 kB, 1.055×614, 169 mal angesehen

    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „GrünerBaum“ ()