Ups.... Monthcalender hat keine value value eigenschaft

  • VB.NET

Es gibt 17 Antworten in diesem Thema. Der letzte Beitrag () ist von Alf.

    Ups.... Monthcalender hat keine value value eigenschaft

    Hallo
    Habe eine Frage an euch
    Es geht um eine Selectanweisung
    Bei VB6 konnte Ich in einer Selectanweisung z.b "Date" in der DB mit meinem Kalender ausfiltern.
    Ich
    möchte, genau wie in VB6 per Mausclick auf dem Kalendersteuerelement
    das mir die Einträege des ausgewählten Tages im Datagridview angezeigt
    werden.
    Wie gesagt in VB6 funktioniert das.
    Das Problem
    Bei .Net gibt es keine Value Eigenschaft im Kalender.
    Gibt es da einen Trick oder einen anderen Umweg

    VB.NET-Quellcode

    1. da = New OleDbDataAdapter("SELECT * FROM Eintraege WHERE Date= '" & Monthcalendar1.Value & " '", Con)


    schon mal vielen Dank im Vorraus
    Alf
    bei Selectionrange 1

    SelectionRange.End
    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."
    SelectionRange.End gibt die ein Date zurück
    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."
    Ja,

    Dim sr As New SelectionRange()
    sr.Start = DateTime.Parse(Me.Label7.Text)

    Nun habe ich mir das ausgewählte Datum in einem Label anzeigen lassen.
    Das funktioniert auch.
    aber in der Selectanweisung bleibt das grid vollkommen leer.

    da = New OleDbDataAdapter("SELECT * FROM Eintraege WHERE Date='" & Label7.text & "' Order by Date DESC", Con)

    wie muss ich ich die Selectanweisung schreiben ??
    kann es vielleicht sein das in der DB (Access ) im Feld " Date" Datum und Zeit hinterlegt ist
    und im Label nur das Datum
    Sorry, ich bin anfänger in .Net Komme von VB6 und da ist alles anders.

    weiss jemand rat
    Nochmal Hallo
    Habe nun Tagelang gegoogelt aber mein Problem konnte ich nicht lösen.
    Ich werds nochmal beschreiben.
    Also
    In der Access DB Liegt in einer Tabelle eine Spalte mit Datum (Date)
    Da s Datum diegt vor im Format dd.mm.yyy hh:mm:ss

    Wenn ich nun in meinem Programm auf den Kalender Klicke möchte Ich die Daten vom Selectierten Datum im DG
    anzeigen lassen.

    VB.NET-Quellcode

    1. da = New OleDbDataAdapter("SELECT * FROM Eintraege WHERE Date='" & MonthCalendar1.SelectionStart & "' Order by Date DESC", Con)


    Habe schon versucht "SelectionStart" im Label anzuzeigen, Zeigt im Label aber nur das Datum an.
    selbst wenn SelectionStart das Format dd.mm.yyy hh:mm:ss hätte, würde das Ergebnis immer Null sein.
    Da ja dann die Zeit mit verglichen wird. Ich benötige für den Vergleich lediglich das Datum. also die Datensätze
    mit dem gleichen Datum im Kalender
    Vielleicht hat ja jemand doch ein Lösung
    Gruß
    Alf ;(
    Quick and Dirty(?): Alles nach dem ersten Leerzeichen (dieses eingeschlossen) abschneiden und vergessen
    Ich Antworte nach bestem Wissen und Gewissen. Ich übernehme keine Garantie für die Richtigkeit oder Fehlerfreiheit meiner Texte.


    Ich konnte dir helfen?
    - Das ist schön :) Ich würde mich über ein "Hilfreich" freuen ^^

    VB.NET-Quellcode

    1. Dim s As String = CStr(MonthCalendar1.SelectionStart)
    2. s.Split(" ") ' <- So wie du benötigst weiterverarbeiten


    müsste so stimmen... is as'm Kopf
    Ich Antworte nach bestem Wissen und Gewissen. Ich übernehme keine Garantie für die Richtigkeit oder Fehlerfreiheit meiner Texte.


    Ich konnte dir helfen?
    - Das ist schön :) Ich würde mich über ein "Hilfreich" freuen ^^
    so. hab es nun so versucht.
    Uhrzeit wird abgeschnitten. Im Label erscheint nun nur das Datum
    Aber das DG bleibt weiter leer



    VB.NET-Quellcode

    1. Dim s As String = CStr(MonthCalendar1.SelectionStart)
    2. s.Split("10, 8")
    3. Label7.Text = s
    4. da = New OleDbDataAdapter("SELECT * FROM Eintraege WHERE Date='" & Label7.Text & "' Order by Date DESC", Con)
    Da in der Datenbank auch "hh:mm:ss" vorhanden ist musst du deine Abfrage so anpassen, dass es ignoriert wird

    Wenn ich den SQL Command noch richtig im Kopf habe könnte das hier die Lösung sein (bitte verbessern wenn ich Falsch liege)

    WHERE <- überprüft auf gleichheit
    LIKE <- überprüft auf ähnlichket
    Ich Antworte nach bestem Wissen und Gewissen. Ich übernehme keine Garantie für die Richtigkeit oder Fehlerfreiheit meiner Texte.


    Ich konnte dir helfen?
    - Das ist schön :) Ich würde mich über ein "Hilfreich" freuen ^^
    Nein, leider funktioniert das auch nicht mit LIKE


    Dim
    s As String = CStr(MonthCalendar1.SelectionStart)
    s.Split("10, 8")
    Label7.Text = s
    da = New OleDbDataAdapter("SELECT * FROM Eintraege WHERE Date LIKE ='" & Label7.Text & "' Order by Date DESC", Con)
    wenn die datumspalte vom Typ Datum ist müsstest du #text# schreiben statt 'text'
    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."
    Meine Erklärung war Falsch... (Hast du aber zum Glück auch nicht so umgesetzt wie's gemeint war)

    ersetze das = zeichen durch das LIKE also so -> [...] WHERE xyz LIKE abc [...] <- Das müsste(!!!) stimmen

    Und den Hinweis von @Schamash: beachten!
    Ich Antworte nach bestem Wissen und Gewissen. Ich übernehme keine Garantie für die Richtigkeit oder Fehlerfreiheit meiner Texte.


    Ich konnte dir helfen?
    - Das ist schön :) Ich würde mich über ein "Hilfreich" freuen ^^
    und du bekommst keine fehlermeldung?

    vielleicht ist ja dein Statement nicht falsch sondern die anbindung ans datagridview oder die schreibweise der Tabellen/Spalten
    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."

    Habe Lösung gefunden

    Nach stunden des Suchens und lesens habe Ich die Lösung gefunden
    Der String sieht nun so aus
    und es funktioniert

    VB.NET-Quellcode

    1. da = New OleDbDataAdapter("SELECT * FROM Eintraege WHERE Date LIKE '" & MonthCalendar1.SelectionStart & "%' Order by Date DESC", Con)


    vielen Dank an alle die sich des Problems angenommen haben
    Gruß aus Norddeutschland

    Alf