Tel: 0203-2814763

 
Home


Access-Entwickler
Referenzen


Access-Forum
Access-Downloads
Access-Suchmaschine
knowhow.mdb
Artikel
Access-Links
Access-Codebeispiele
Access-FAQ
Verschiedenes
Autoren-Login

 

newsletter
Kontakt
English

 

 

 
  Willkommen Gast. Bitte Einloggen oder Registrieren
   
  ÜbersichtHilfeSuchenEinloggenRegistrieren  
 
Seitenindex umschalten Seiten: 1
Thema versenden Drucken
Werte im Formular übernehmen (Gelesen: 921 mal)
hkn2017
YaBB Newbies
*
Offline


Ohne Signatur!

Beiträge: 5
Werte im Formular übernehmen
05.01.2017 um 08:55:36
 
Habe ein Formular auf Basis einer Abfrage angelegt. Möchte nun einen Feldwert <soll2017> in ein Feld <ist2017> und aktuelles Datum mittels einer Befehlsschaltfläche und Ereignisprozedur übernehmen.

Private Sub Befehl102_Click()
Me![ist2017] = Me![Soll2017]
Me![dat2017] = Date
End Sub[/highlight]

Das funktioniert auch, wenn beide Werte (soll2017 und ist2017) aus der selben Tabelle stammen.

Nun habe ich aber soll2017 in eigener Tabelle und über Abfrage verknüpft. Seither kommt es bei Prozeduraufruf zu Laufzeitfehler 3326

Dieses Recordset kann nicht aktualisiert werden. (Fehler 3326)

Sie haben versucht, Daten in einem Feld zu bearbeiten, das an ein Resultset-Objekt vom Typ Momentaufnahme gebunden ist. Momentaufnahmefelder in einer Microsoft Access-Datenbank können nicht bearbeitet werden.

HILFE - DANKE
Zum Seitenanfang
 
 
IP gespeichert
 
Juergen_el
YaBB Moderator
*****
Offline


Wissen ist Macht - weiß
nichts - Macht nichts.

Beiträge: 6351
Geschlecht: male
Re: Werte im Formular übernehmen
Antwort #1 - 05.01.2017 um 09:30:28
 
Moin,

(Grußfloskeln schaden nicht ...)

du verwendest offenbar eine Abfrage, die keine Änderungen zulässt, da eine eindeutige Zuordnung nicht gegeben ist.

Beschreib doch mal das Ansinnen (ohne Formular, Tabelle, Abfrage, etc). Oder lade gleich eine Beispiel-db im mdb-Format und gepackt hoch.

Grossbuchstaben bedeuten im Netz schreien und sind nicht so gerne gesehen ... Also auch mal die Netiquette lesen.
Zum Seitenanfang
 

Gruß Jürgen

Hilfe nach bestem Wissen, ohne Anspruch auf Richtigkeit und Vollständigkeit.

*feedback erwünscht*

Bitte Media Dateien und klickbare Links in Beiträgen und Signaturen sind nur für registrierte Mitglieder verfügbar!!  Sie müssen sich Einloggen oder Registrieren
Homepage  
IP gespeichert
 
hkn2017
YaBB Newbies
*
Offline


Ohne Signatur!

Beiträge: 5
Re: Werte im Formular übernehmen
Antwort #2 - 05.01.2017 um 11:40:34
 
Einen wunderschönen, guten Morgen und Mahlzeit!
Bitte meinen Erstauftritt im Forum ohne Begrüßung zu entschuldigen, kommt nicht mehr vor!

Zu meinem Problem:

Ich habe ein Mitgliederverzeichnis (tab1) in meiner Datenbank. Jedes Mitglied hat ua. eine Zahlungskategorie in (tab2) a,b oder c. In dieser tab2 wird der Zahlungskategorie ein bestimmter Währungsbetrag zugeordnet (soll2017).
Über eine Abfrage ist tab1 mit tab 2 verknüpft (und anderen tab´s)

Ich möchte nun in einem Formular mit Schaltfläche und Ereignisprozedur (bei click) den Wert im Feld <soll2017> in das Feld <ist2017> gemeinsam mit dem Zahlungsdatum <dat2017>, im selben Formular übernehmen, beide liegen in tab1.

Dabei kommt es zum Laufzeitfehler.

Wenn ich <soll2017> und <ist2017> in die selbe tab1 schreibe (ohne Abfrage), dann funktioniert es.
Ich möchte aber <soll2017> in eigener Tabelle verwalten, da  bei Betragsänderung diese "indirekte Adressierung" natürlich vorteilhafter ist.
Ich vermute mein Problem in den Verküpfungseigenschaften der Abfrage (referentielle Integrität) ???

Hoffe, ich habe mein Problem ausreichend erklärt und danke für jegliche Hilfestellung.
Zum Seitenanfang
 
 
IP gespeichert
 
Juergen_el
YaBB Moderator
*****
Offline


Wissen ist Macht - weiß
nichts - Macht nichts.

Beiträge: 6351
Geschlecht: male
Re: Werte im Formular übernehmen
Antwort #3 - 05.01.2017 um 11:51:49
 
Zitat:
Hoffe, ich habe mein Problem ausreichend erklärt ...


Verstanden hab ich folgendes: Du hast eine Mitgliederverwaltung und willst kontrollieren ob der (Jahres-)Beitrag gezahlt wurde.

Wenn dem so ist, kann über ein Datenmodell nachgedacht werden. Es gibt sicher einige Möglichkeiten, eine davon könnte so aussehen:

tbl_Person
ID (Autowert)
Nachname
Vorname
Geschlecht
GebDatum
Eintritt
Austritt
...

tbl_Zahlungskatogerie
ID
Kategorie
Katbeschreibung

tbl_Person_Zahlkategorie
ID_Person
ID_ZahlKat
Beginn (Datum)

tbl_Zahlungen
ID_Person
Zahldatum
Zahlbetrag

Die tbl_Person_Zahlkategorie beinhaltet eine m:n Beziehung und bildet die Zahlungskategorie je Person ab. Da diese sich ggf ändern kann wird sie mit einem Beginndatum versehen, damit du den aktuellen Stand ermitteln kannst. Daraus leitest du die Verbindlichkeit ab und vergleichst sie mit dem Zahlungseingang.

achja -  und willkommen im Forum  Zwinkernd
Zum Seitenanfang
 

Gruß Jürgen

Hilfe nach bestem Wissen, ohne Anspruch auf Richtigkeit und Vollständigkeit.

*feedback erwünscht*

Bitte Media Dateien und klickbare Links in Beiträgen und Signaturen sind nur für registrierte Mitglieder verfügbar!!  Sie müssen sich Einloggen oder Registrieren
Homepage  
IP gespeichert
 
hkn2017
YaBB Newbies
*
Offline


Ohne Signatur!

Beiträge: 5
Re: Werte im Formular übernehmen
Antwort #4 - 05.01.2017 um 19:30:17
 
Hallo und guten Abend!

Das db-modell entspricht ziemlich dem von mir verwendeten.
Die tbl_personen_zahlkategorie habe ich nicht explizit angelegt, da in tbl_personen bereits die ID_zahlkat enthalten ist und ich somit die m:n Beziehung zwischen tbl_personen und tbl_zahlkat herstellen kann.
In der tbl_zahlkat ist auch der Betrag hinterlegt (soll2017), der in der tbl_zahlungen (ist2017) übernommen werden soll, sobald der Zahlungseingang erfolgt. Und genau das funktioniert eben nicht mit meiner Ereignisprozedur.
Bin mir ziemlich sicher, dass das Problem in der Architektur des db_modells liegt und daher keine Änderungen zulässig sind. Werde ein neues Modell anlegen und berichten.
vielen Dank zunächst für die Hilfe
mfg hkn
Zum Seitenanfang
 
 
IP gespeichert
 
Juergen_el
YaBB Moderator
*****
Offline


Wissen ist Macht - weiß
nichts - Macht nichts.

Beiträge: 6351
Geschlecht: male
Re: Werte im Formular übernehmen
Antwort #5 - 05.01.2017 um 19:44:30
 
Hallo hkn,

Zitat:
... da in tbl_personen bereits die ID_zahlkat enthalten ist und ich somit die m:n Beziehung zwischen tbl_personen und tbl_zahlkat herstellen kann...


Falsch - du stellst eine 1:1, bestenfalls eine 1:n Beziehung her.

Aber mach mal deine Änderungen und melde dich. Evtl lädst du dann eine Muster-db im mdb-Format hoch.

Zum Seitenanfang
 

Gruß Jürgen

Hilfe nach bestem Wissen, ohne Anspruch auf Richtigkeit und Vollständigkeit.

*feedback erwünscht*

Bitte Media Dateien und klickbare Links in Beiträgen und Signaturen sind nur für registrierte Mitglieder verfügbar!!  Sie müssen sich Einloggen oder Registrieren
Homepage  
IP gespeichert
 
hkn2017
YaBB Newbies
*
Offline


Ohne Signatur!

Beiträge: 5
Re: Werte im Formular übernehmen
Antwort #6 - 05.01.2017 um 20:05:57
 
Nochmals hallo!

Die tbl_Personen_Zahlungskategorie, um bei deinem Beispiel zu bleiben, stellt also mit jeweils einer 1:n Beziehung die Relation: Persone < > Zahlungskategorie her (n:m).

Kann es sein, dass meine db_struktur nicht eindeutig ist und somit Probleme für datenaktualisierung über ereignisprozedur macht?

schönen Abend noch, morgen ist Feiertag, zumindest bei uns in Österreich  Zwinkernd
Zum Seitenanfang
 
 
IP gespeichert
 
Juergen_el
YaBB Moderator
*****
Offline


Wissen ist Macht - weiß
nichts - Macht nichts.

Beiträge: 6351
Geschlecht: male
Re: Werte im Formular übernehmen
Antwort #7 - 05.01.2017 um 22:12:10
 
Moinsen,

m:n bedeuten beliebieg viele Person können beliebig viele Kategorien als Zahlungsarten haben. Deshalb die Zuordnung ab wann die Zahlart gilt. Beispiel aus der Praxis --> Mitglied ist jungendlich und zahlt Jugendbeitrag ... im Lauf der Zeit wird Mitglied älter und zahlt aktiven Beitrag ... leider schreitet die Zeit fort und Mitglied altert immer noch und zahlt nur noch AH-Beirag ...

Verstehst du, worauf das Datenmodell hinaus will?
Zum Seitenanfang
 

Gruß Jürgen

Hilfe nach bestem Wissen, ohne Anspruch auf Richtigkeit und Vollständigkeit.

*feedback erwünscht*

Bitte Media Dateien und klickbare Links in Beiträgen und Signaturen sind nur für registrierte Mitglieder verfügbar!!  Sie müssen sich Einloggen oder Registrieren
Homepage  
IP gespeichert
 
hkn2017
YaBB Newbies
*
Offline


Ohne Signatur!

Beiträge: 5
Re: Werte im Formular übernehmen
Antwort #8 - 06.01.2017 um 09:35:06
 
Guten Morgen!
Ich verstehe das db_modell. In meinem Fall kann eine Person in einem Kalenderjahr nur eine Zahlungsart haben, d.h. der Zahlungsartwechsel kann nur per 1.1.xxxx eintreten, der sollbetrag ändert sich also im laufenden Kalenderjahr nicht.
Mir gefällt dein Modell aber recht gut, da damit ein exaktes Beginndatum einer Zahlart definiert ist. Ändert sich die Zahlart, dann muss zwangsläufig auch ein neues Beginndatum folgen. Es kann eine Person ja für einen Zeitraum nur eine Zahlart haben. Wie ist das sichergestellt?

Danke und schönen Tag noch
Zum Seitenanfang
 
 
IP gespeichert
 
Seitenindex umschalten Seiten: 1
Thema versenden Drucken