collapse

* Benutzer Info

 
 
Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?

* Wer ist Online

  • Punkt Gäste: 66
  • Punkt Versteckte: 0
  • Punkt Mitglieder: 0

Es sind keine Mitglieder online.

* Forenstatistik

  • stats Mitglieder insgesamt: 14471
  • stats Beiträge insgesamt: 72211
  • stats Themen insgesamt: 9746
  • stats Kategorien insgesamt: 5
  • stats Boards insgesamt: 17
  • stats Am meisten online: 415

Autor Thema: Felder für alle DS eines UFs automatisch befüllen  (Gelesen 2958 mal)

Offline EBlajs

  • Newbie
  • Beiträge: 28
Felder für alle DS eines UFs automatisch befüllen
« am: September 25, 2010, 18:18:17 »
Ich habe diesen Post auch in einem älteren Beitrag eingetragen und später realisiert, dass es dann evtl. untergehen könnte. Daher hier noch einmal, ich hoffe dass gilt nicht als Crossposting (wenn ja dann sorry).
Zuerst einmal vielen Dank an alle Access Geübte, die in diesen Foren posten. Ich habe schon sehr viel gelernt und versuche immer zuerst bereits vorhandene Postings abzugrasen bevor ich eine Frage stelle. Aber diesmal komme ich nicht mehr weiter. Ich muss vorausschicken, dass ich in VBA leider wenig geübt, bitte um Nachsicht wenn ich bestimmte Dingen falsch benenne oder evtl. Lösungsvorschläge nicht gleich kapiere.

Ich habe ein ähnliches Problem wie in einem alten Beitrag über "Ja/Nein Felder Alle Markieren" beschrieben und hoffte, mit dem Vorschlag von DF6GL eine Lösung gefunden zu habe. Aber es hakt noch.

Ich habe eine HF in dem man mittels Eingabe von Parametern einen SQL string erzeugen kann.

Private Sub MakeSQL()
  Krit = ""
  If Not IsNull(Me!Ime) Then Krit = Krit & " AND Ime LIKE '" & Me!Ime & "*'"
  If Not IsNull(Me!DatumOd) Then Krit = Krit & " AND Datum >= #" & Format(Me!DatumOd, "yyyy-mm-dd") & "#"
  If Not IsNull(Me!DatumDo) Then Krit = Krit & " AND Datum <= #" & Format(Me!DatumDo, "yyyy-mm-dd") & "#"
  If Not IsNull(Me!Usluge) Then Krit = Krit & " AND IDUsluge LIKE '" & Me!Usluge & "'"
  If Not IsNull(Me!Prijavljen) Then Krit = Krit & " AND JePrijavljen = " & IIf(Me!Prijavljen, "True", "False")

  SQL = "SELECT * FROM qryHranarinaUporaba "
  If Krit <> "" Then
    Krit = Mid(Krit, 5)
    SQL = SQL & "WHERE " & Krit
  End If
End Sub

Dieser SQL string dient als Recordsource für das Suchen der entsprechenden Datensätze in einem Unterformular:

Private Sub Suchen_Click()
  MakeSQL
  Me!ufrmSporUslugeSuchen.Form.RecordSource = SQL
End Sub


Das Aufbereiten der Daten im UOF funktioniert so weit ohne Probleme.

Nach Auswahl der entsprechenden Datensätze müsste ich zwei Felder für alle vorhandenen Datensätze im UF aktualisieren (ein Ja/Nein Feld und ein Datumsfeld). Ich habe versucht das mit dem Lösungsvorschlag von DF6GL zu realisieren:

Private Sub subSetObracunano(jn As Boolean)
    Dim rs As Dao.Recordset
        Set rs = Me!ufrmSporUslugeSuchen.Form.RecordsetClone
        If rs.RecordCount > 0 Then
        With rs
        .MoveFirst
        Do Until .EOF
        .Edit
        !Obracunano = jn
        .Update
        Loop
        .MoveNext
        End With
        End If
        Set rs = Nothing
        RunCommand acCmdSaveRecord
End Sub

den ich so aufrufe:

Private Sub Befehl123_Click()
    MakeSQL
    Me!ufrmSporUslugeSuchen.Form.RecordSource = SQL
    subSetObracunano True
End Sub

Versuche ich nun das Ja/Nein Feld mit obigen Code zu aktualisieren, wird der erste DS markiert aber dann scheint sich die Prozedur aufzuhängen. Bei Unterbrechen der Prozedur wird die Zeile Loop gelb markiert. Würde mich freuen, wenn mir jemand Tipps geben könnte was ich hier alles falsch mache. Vielleicht gibt es auch eine viel leichtere Lösung, die ich im Forum nur noch nicht gesehen habe. Vielen Dank.
Eblajs
 

Offline bahasu

  • Moderator
  • Access Guru
  • *****
  • Beiträge: 1909
Re: Felder für alle DS eines UFs automatisch befüllen
« Antwort #1 am: September 25, 2010, 18:23:15 »
Hallo

Wie reagiert das Programm, wenn Du die Reihenfolge von
   Loop
  .MoveNext

tauschst?

Harald
Servus
 

Offline DF6GL

  • Global Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 23813
Re: Felder für alle DS eines UFs automatisch befüllen
« Antwort #2 am: September 25, 2010, 18:24:24 »
Im anderen Thread schon beantwortet....  ;)

Offline EBlajs

  • Newbie
  • Beiträge: 28
Re: Felder für alle DS eines UFs automatisch befüllen
« Antwort #3 am: September 25, 2010, 19:34:23 »
Hallo,

habe Franz schon auf dem anderen Thread gedankt, funktioniert jetzt alles einwandfrei. Harald, Dein Hinweis hat den Nagel auf den Kopf getroffen, danke auch. Genau das war das Problem.
Ganz schön frustrierend, wie man als unbedarfter Access User bei den kleinsten Problemen hängen bleibt. Gott sei Dank gibst es dieses Forum mit all den vielen Power-Usern und MS Access Programmierern.

Ernst
 

 

Felder-Addition

Begonnen von tatoBoard Tabelle/Abfrage

Antworten: 2
Aufrufe: 2870
Letzter Beitrag Juni 25, 2010, 16:28:15
von tato
Leere Felder farbig markieren

Begonnen von GastBoard Tabelle/Abfrage

Antworten: 4
Aufrufe: 7638
Letzter Beitrag Juli 24, 2010, 21:26:27
von database
abhängige Felder

Begonnen von krümelchenBoard Access Programmierung

Antworten: 3
Aufrufe: 2699
Letzter Beitrag August 24, 2010, 12:47:13
von Kiui
Prüfen ob Kombination zweier Felder vorhanden ist

Begonnen von Falke22Board Tabelle/Abfrage

Antworten: 1
Aufrufe: 2312
Letzter Beitrag August 25, 2010, 08:38:40
von Sulu
Wenn Felder leer sind kommt Fehlermeldung

Begonnen von maniaspetsBoard Access Programmierung

Antworten: 12
Aufrufe: 7054
Letzter Beitrag Oktober 13, 2010, 12:50:34
von database

Advertisment / Werbung - Amazon Affiliate Links