Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
fortlaufende Nummerierung von der Jahreszahl abhängig
Gehe zu Seite 1, 2  Weiter
zurück: Kreuztabelle: nicht erster o. letzer Wert,sondern alle Werte weiter: Anfügeabfrage mit WENN in einer Spalte Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Feedback Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
jomei
Im Profil kannst Du frei den Rang ändern


Verfasst am:
22. Dez 2008, 12:12
Rufname:
Wohnort: Hamburg

fortlaufende Nummerierung von der Jahreszahl abhängig - fortlaufende Nummerierung von der Jahreszahl abhängig

Nach oben
       Version: Office 2003

In meiner Tabelle Tbl_Rechnung befinden sich u.a. die Felder [ReNummer] und [ReDatum]. Im zugehörigen Formular Frm_Rechnung wird die [ReNummer] über eine Befehlsschalfläche „ReNrNeu“ mit dem Code:
Code:
Private Sub ReNrNeu_Click()
    'neue Rechnung mit neuer ReNr anlegen
    DoCmd.GoToRecord , , acNewRec
    ReNr = DMax("ReNr", "Tbl_Rechnung") + 1
End Sub
eine neue [ReNummer] erstellt. Die [ReNummer] hat grundsätzlich den Aufbau YXXXX (also 70001 erste Rechnung in 2007; 80001 erste Rechnung in 2008). Derzeit wird die erste Rechnung des neuen Jahres manuell eingegeben und wenn nachträglich Rechnungen für das alte Jahr noch erstellt werden müssen werden diese auch manuell eingetragen.
Ich möchte dies automatisieren und abhängig vom Feld [ReDatum] machen. Dies Feld zeigt standardmäßig das aktuelle Datum an, es kann aber auch manuell verändert werden.

Wie muß ich meine Befehlsschaltfläche ändern damit ich die erreichen ?

Bitte keine Kommentare bzgl. der Rechnungsnummer. Es ist mir bekannt, dass nach akt. Steuerrichtlinien eine über die Jahre fortlaufende Nummerierung stattfinden soll, es ist so gewünscht.

_________________
Herzlichen Gruss
jomei der für jede Unterstützung dankbar ist
Win7 Home Premium; Office 2010
Gast



Verfasst am:
22. Dez 2008, 15:02
Rufname:


AW: fortlaufende Nummerierung von der Jahreszahl abhängig - AW: fortlaufende Nummerierung von der Jahreszahl abhängig

Nach oben
       Version: Office 2003

Hallo,

Du solltest Dir im Jahr 2009 Gedanken über die künftige Nummerierung machen und nur am Rande über eine Automatisierung bezügl. der Jahreszahl. Unter Zugrundelegung der bisherigen Nomenklatur YXXXX wirst Du ab dem 1.1.2010 Probleme bekommen und weiterhin Rechnungsnummern mit einer führenden 9 erhalten. Die DMAX-Funktion sucht die größte enthaltene Nummer; diese beginnt dann mit 9 auch wenn der erste Eintrag für 2010 einer 00001 ähneln sollte.
Mit diesem Aufbau kannst Du generell nicht unterscheiden, aus welchem Jahrzehnt die Rechnung stammt - 197x, 198x, 199x, 200x, 201x,....

Um auch über 2009 hinaus Rechnungen erstellen zu können sollte die Rechnungsnummer min. ZWEI Stellen der Jahreszahl enthalten, bspw. 08xxxx, 09xxxx, 10xxxx, ..., 21xxxx,... 99xxxx
Mit der bisherigen Angabe von 4 Stellen bist Du weiterhin nicht in der Lage, mehr als 9999 Rechnungen pro Jahr zu erstellen.

Viel Spaß beim Grübeln

Gerald
jomei
Im Profil kannst Du frei den Rang ändern


Verfasst am:
22. Dez 2008, 15:33
Rufname:
Wohnort: Hamburg

AW: fortlaufende Nummerierung von der Jahreszahl abhängig - AW: fortlaufende Nummerierung von der Jahreszahl abhängig

Nach oben
       Version: Office 2003

Hallo Gerald,

wie wäre denn Dein Vorschlag für die Automatisierung wenn ich die Nummerierung auf YYXXXX umstellen würde?

_________________
Herzlichen Gruss
jomei der für jede Unterstützung dankbar ist
Win7 Home Premium; Office 2010
JörgG
Access-Team


Verfasst am:
22. Dez 2008, 16:35
Rufname:
Wohnort: b. Dresden

AW: fortlaufende Nummerierung von der Jahreszahl abhängig - AW: fortlaufende Nummerierung von der Jahreszahl abhängig

Nach oben
       Version: Office 2003

Hallo,

nö, bei solchen Nummernkreisen empfiehlt sich immer das atomare Speichern der Bestandteile. Also ein Feld mit der Jahreszahl und eins für die lfdNr (beide Typ LongInteger). Der Datentyp Zahl wird besonders interessant beim Sortieren Wink. Erzeugen kannst Du sie zB so:
Code:
Private Sub Form_Current()
    Me!lfdNr.DefaultValue = DMax("lfdNr", "Tbl_Rechnung", "Jahreszahl = Year(Date())") + 1
    Me!Jahreszahl.DefaultValue = Year(Date)
End Sub
In der Formular-/Berichtsabfrage können sie ja zusammengesetzt und formatiert werden:
Code:
ReNr: Right([Jahreszahl];2) & Format([lfdNr];"#0000")

_________________
MfG, Jörg Very Happy

Bitte das Feedback nicht vergessen.
jomei
Im Profil kannst Du frei den Rang ändern


Verfasst am:
22. Dez 2008, 19:06
Rufname:
Wohnort: Hamburg


AW: fortlaufende Nummerierung von der Jahreszahl abhängig - AW: fortlaufende Nummerierung von der Jahreszahl abhängig

Nach oben
       Version: Office 2003

Hallo,

ich habe in der Tbl_Rechnung meine alte [ReNummer] aufgeteilt in [ReJahr] und [ReNummer] (beide Typ Long) und zusammen als Primärschlüssel definiert. Die einzelnen Rechnungspositionen habe ich in der Tbl_RePosten, auch hier habe ich die Felder dementsprechend geändert und in eine 1:n Beziehung gebracht

Wie bringe ich jetzt meine Befehlsschaltfläche dazu das Feld [ReDatum] auszulesen und das darin befindliche Jahr in das Feld [ReJahr] einzutragen.

Meine Code:
Code:
Private Sub ReNrNeu_Click()
    'neue Rechnung mit neuer ReNr anlegen
    DoCmd.GoToRecord , , acNewRec
    ReJahr = Year("ReJahr" (), "Tbl_Rechnung)
    ReNr = DMax("ReNr", "Tbl_Rechnung") + 1
End Sub
funktioniert nicht.

Was mache ich falsch?

_________________
Herzlichen Gruss
jomei der für jede Unterstützung dankbar ist
Win7 Home Premium; Office 2010
JörgG
Access-Team


Verfasst am:
22. Dez 2008, 21:01
Rufname:
Wohnort: b. Dresden

AW: fortlaufende Nummerierung von der Jahreszahl abhängig - AW: fortlaufende Nummerierung von der Jahreszahl abhängig

Nach oben
       Version: Office 2003

Hallo,

das ist auf keinen Fall ein Primärschlüssel, baue die Beziehungen prinzipiell über Autowert-UD's auf!
  • TblRechnung: ReID Autowert-Primärindex, ReNr, ReJahr, weitere Felder
  • TblAndere: AndereID Autowert-Primärindex, ReID LongInteger, weitere Felder

  • TblRechnung.ReID 1:n TblAndere.ReID, referentielle Integrität + Aktualisierungsweitergabe
Zum Setzen der Werte schau Dir das og Beispiel an, Formularereignis "beim Anzeigen".

_________________
MfG, Jörg Very Happy

Bitte das Feedback nicht vergessen.
Willi Wipp
Moderator


Verfasst am:
23. Dez 2008, 02:59
Rufname:
Wohnort: Raum Wiesbaden

Re: fortlaufende Nummerierung von der Jahreszahl abhängig - Re: fortlaufende Nummerierung von der Jahreszahl abhängig

Nach oben
       Version: Office 2003

Hi jomei,

vermutlich duerfte sogar das Jahres-Feld ueberfluessig sein,
da in der Regel keine Rechnung ohne ein Datumsfeld erstellt wird!
Darin ist ja dann bereits das Jahr enthalten!

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
MiLie
kein Office- VBA- Programmierer


Verfasst am:
23. Dez 2008, 21:32
Rufname: Micha
Wohnort: Chemnitz

AW: fortlaufende Nummerierung von der Jahreszahl abhängig - AW: fortlaufende Nummerierung von der Jahreszahl abhängig

Nach oben
       Version: Office 2003

hallo,
Zitat:
Unter Zugrundelegung der bisherigen Nomenklatur YXXXX wirst Du ab dem 1.1.2010 Probleme bekommen und weiterhin Rechnungsnummern mit einer führenden 9 erhalten. Die DMAX-Funktion sucht die größte enthaltene Nummer; diese beginnt dann mit 9 auch wenn der erste Eintrag für 2010 einer 00001 ähneln sollte.
Mit diesem Aufbau kannst Du generell nicht unterscheiden, aus welchem Jahrzehnt die Rechnung stammt - 197x, 198x, 199x, 200x, 201x,....

Um auch über 2009 hinaus Rechnungen erstellen zu können sollte die Rechnungsnummer min. ZWEI Stellen der Jahreszahl enthalten, bspw. 08xxxx, 09xxxx, 10xxxx, ..., 21xxxx,... 99xxxx
man kann auch die max vom laufeden Jahr (9 oder 0) ermitteln, da ist nicht 9>0,
Nummerierung würde sich zwar alle 10 Jahre wiederholen, stört aber insoweit nicht, die diese ohnehin nur 10 Jahre aufgehoben werden müssen, auch dass lässt scih rausfiltern.

_________________
Viele Grüße

Micha

Schreibfehler die Ihr findet, könnt Ihr behalten
jomei
Im Profil kannst Du frei den Rang ändern


Verfasst am:
26. Dez 2008, 17:20
Rufname:
Wohnort: Hamburg

AW: fortlaufende Nummerierung von der Jahreszahl abhängig - AW: fortlaufende Nummerierung von der Jahreszahl abhängig

Nach oben
       Version: Office 2003

ALLEN EIN FROHES FEST

Ich möchte Euch bitten mir keine weiteren gut gemeinten Ratschläge bzgl. der steuerrechtlichen Vorschriften von Rechnungsnummern zu geben. Es ist so vom Anwender gewünscht und angebl. auch mit seinem Steuerberater abgestimmt.

Deshalb noch einmal die Aufgabe in wenigen Worten:

1. Die Rechnungsnummer hat das Format YYXXXX (YY=das Jahr der Rechnungsstellung; XXXX = 4stellige Zahl, jedes Jahr beginnend mit 0001)
2. Bei Programmstart wird das frm_Rechnung mit aktuellem Datum im Feld ReDatum geöffnet, alle anderen Felder sind leer.
3. Über eine Befehlsschaltfläche soll eine neue Rechnugsnummer entspr. Punkt 1 im Feld ReNummer generiert werden.
4. Im Bedarfsfall soll die Möglichkeit bestehen im neuen Jahr auch Rechnungen noch für das alte Jahr zu erstellen. In diesem Fall wird bei Punkt 2 das ReDatum manuell auf ein älteres Datum geändert.

Ich hoffe die Anforderungen sind jetzt klar verständlich und Ihr könnt mir weiterhelfen

_________________
Herzlichen Gruss
jomei der für jede Unterstützung dankbar ist
Win7 Home Premium; Office 2010
MiLie
kein Office- VBA- Programmierer


Verfasst am:
26. Dez 2008, 19:23
Rufname: Micha
Wohnort: Chemnitz

AW: fortlaufende Nummerierung von der Jahreszahl abhängig - AW: fortlaufende Nummerierung von der Jahreszahl abhängig

Nach oben
       Version: Office 2003

hallo,

als Ansatz hier eine Idee (ungetestet)
Code:
    Dim Datensatz As Recordset
    Dim Realt As String
    Dim Reneu As String
   
    Set Datensatz = Me.RecordsetClone
    If Datensatz.RecordCount < 1 Then
        Realt = "000000"
        MsgBox "Bisher keine Rechnung in der Datenbank, erzeuge neue."
      Else
        Datensatz.MoveFirst
        Do While Not Datensatz.EOF
            If Realt < Nz(Datensatz("deinRechnungsnummerfeld"), "0") And _
               Year(Nz(Datensatz("deinDatumsfeld"), Date)) > (Year(Date) - 99) Then
                Realt = Nz(Datensatz("deinrechnungsnummerfeld"), "0")
            End If
            Datensatz.MoveNext
        Loop
    End If
    'neue LSNummer ermitteln
    If Left(Realt, 2) <> Right(Year(Date), 2) Then
        Reneu = Right(Year(Date), 2) & "0001"
      Else
        Reneu = Right(Year(Date), 2) & Format(Right(Realt, 4) + 1, "0000")
    End If

_________________
Viele Grüße

Micha

Schreibfehler die Ihr findet, könnt Ihr behalten
Alf2009
Access-Programm., SAP-Cons./Entw./Trainer


Verfasst am:
26. Dez 2008, 20:19
Rufname:
Wohnort: Mannheim

AW: fortlaufende Nummerierung von der Jahreszahl abhängig - AW: fortlaufende Nummerierung von der Jahreszahl abhängig

Nach oben
       Version: Office 2003

Das folgende funktioniert auf jeden Fall:
... leider nicht, s. Beitrag von 21.30h

Zwei Anmerkungen noch:

1. Es sollte auf jeden Fall in die Tabelle noch das Feld Rechnungsjahr, das auf dem Formular automatisch mit dem Jahr, in dem das Tagesdatum liegt, vorbelegt werden sollte (ebenfalls im Private Sub ReNrNeu_Click). Die Zeile
Code:
    StJahr = Right(CStr(Me!ReDatum), 2)
' würde dann durch
    StJahr = Right(CStr(Me!ReGJahr), 2)
ersetzt.

2. Ich habe den Feldtyp von ReNr auf Text geändert, weil mein String das nötig gemacht hat. Jörg macht oben den berechtigten Einwand, daß das Probleme mit der Sortierung gibt. Ich weis aber, daß es dafür eine Einstellung gibt, die die Zahl mit führenden Nullen ausgibt.

_________________
Besten Gruß

Alf

Feedback hilft Allen! Ich antworte grundsätzlich nur auf Postings des Themen-Eröffners.


Zuletzt bearbeitet von Alf2009 am 26. Dez 2008, 22:26, insgesamt 3-mal bearbeitet
jens05
Moderator


Verfasst am:
26. Dez 2008, 20:58
Rufname:
Wohnort: ~~~~~

AW: fortlaufende Nummerierung von der Jahreszahl abhängig - AW: fortlaufende Nummerierung von der Jahreszahl abhängig

Nach oben
       Version: Office 2003

Hallo Alf,
nichts für ungut, aber deine Funktion dürfte erstmal auf einen Fehler laufen ;)
StJahr ist nicht deklariert.

Dann hätte ich noch 2 Fragen, welchen Zweck hat die Prozedur im Ereignis "Beim Anzeigen" Sollte diese aus Performancegründen nicht auch beim Button liegen?
Wieso nutzt du nicht gleich die DMax() Funktion.

Welchen Zweck kann das redundante ablegen des Rechnungsjahres haben?

_________________
mfg jens05 Wink
Alf2009
Access-Programm., SAP-Cons./Entw./Trainer


Verfasst am:
26. Dez 2008, 21:22
Rufname:
Wohnort: Mannheim

AW: fortlaufende Nummerierung von der Jahreszahl abhängig - AW: fortlaufende Nummerierung von der Jahreszahl abhängig

Nach oben
       Version: Office 2003

Nichts für Ungut, Jens, aber mein Code stellt keine Function, sondern eine Ereignisprozedur dar. Ich dachte das wäre klar, aber danke: so ist es nochmal deutlich geworden.

Was deine Anmerkungen betrifft:
1. Die Variable habe ich zwischendrin umbenannt, aber nur in meinem Testcode. Da hieß aber der Button anders, weshalb ich die ersten 3 Zeilen aus dem Code von Jomei übernommen habe. Und dort hatte ich die Variable noch nicht umbenannt. Sorry für das Versehen und danke für deine Aufmerksamkeit.

2. Die Anregung die Belegung von kAktGJahr in die Ereignisprozedur zum Button zu verlegen werde ich gleich einbauen, danke!

3. Dmax ist natürlich besser, baue ich bei der Gelegenheit dann gleich auch um.

4. Zu deiner Frage zum Geschäftsjahr: Die Rechnung ist ein Beleg. Und in einen Beleg gehört normalerweise standardmäßig das Geschäftsjahr. Falls das nicht so geregelt wird, müsste man das über Punkt 4. von Jomei (16.20h) regeln.

_________________
Besten Gruß

Alf

Feedback hilft Allen! Ich antworte grundsätzlich nur auf Postings des Themen-Eröffners.
jens05
Moderator


Verfasst am:
26. Dez 2008, 21:33
Rufname:
Wohnort: ~~~~~

AW: fortlaufende Nummerierung von der Jahreszahl abhängig - AW: fortlaufende Nummerierung von der Jahreszahl abhängig

Nach oben
       Version: Office 2003

Hallo Alf,
1.Wir können jetzt Haarspalterei betreiben, oder es sein lassen. Was ich mit Funktion meinte hast du sicherlich verstanden, auch wenn du eine Prozedur erstellt hast.
2. Wenn Rückfragen dich stören, hab ich es jetzt zur Kenntniss genommen.
3. Werde ich keine fremden Codes ändern!

_________________
mfg jens05 Wink
MiLie
kein Office- VBA- Programmierer


Verfasst am:
26. Dez 2008, 22:06
Rufname: Micha
Wohnort: Chemnitz


AW: fortlaufende Nummerierung von der Jahreszahl abhängig - AW: fortlaufende Nummerierung von der Jahreszahl abhängig

Nach oben
       Version: Office 2003

hallo,

nebenbei, sollte die Numerierung bei einen neuen Jahr nicht von vorn anfangen?
Zitat:
Das folgende funktioniert auf jeden Fall:
ist noch nicht ganz erreicht.
_________________
Viele Grüße

Micha

Schreibfehler die Ihr findet, könnt Ihr behalten
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Gehe zu Seite 1, 2  Weiter
Diese Seite Freunden empfehlen

Seite 1 von 2
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Access Tabellen & Abfragen: Kombinationsfelder per Makro voneinander abhängig machen 12 master_t 1238 19. Nov 2010, 10:12
master_t Kombinationsfelder per Makro voneinander abhängig machen
Keine neuen Beiträge Access Tabellen & Abfragen: Datensatzherkunft eines Feldes, abhängig von anderem Feld 4 Peter DD 694 18. März 2010, 13:00
MissPh! Datensatzherkunft eines Feldes, abhängig von anderem Feld
Keine neuen Beiträge Access Tabellen & Abfragen: Nummerierung von Zeilen mit zweifacher Sortierung 2 Michael87 1395 24. Feb 2010, 22:18
Michael87 Nummerierung von Zeilen mit zweifacher Sortierung
Keine neuen Beiträge Access Tabellen & Abfragen: Dynamische Nummerierung 1 magnum 400 30. Jan 2010, 21:45
steffen0815 Dynamische Nummerierung
Keine neuen Beiträge Access Tabellen & Abfragen: Stunden summieren abhängig vom Tagesdatum 14 Gast 909 13. Jan 2010, 18:10
KlausMz Stunden summieren abhängig vom Tagesdatum
Keine neuen Beiträge Access Tabellen & Abfragen: fortlaufende Nummerierung 8 romae 1914 10. Jun 2009, 11:28
romae fortlaufende Nummerierung
Keine neuen Beiträge Access Tabellen & Abfragen: fortlaufende Summation 5 watto 411 15. Okt 2008, 08:15
watto fortlaufende Summation
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrageergebnisse abhängig von zwei Werten 2 imx 386 01. Jul 2008, 12:37
imx Abfrageergebnisse abhängig von zwei Werten
Keine neuen Beiträge Access Tabellen & Abfragen: Datumsfunktion die nur die aktuelle Jahreszahl ausgibt 2 azwinzds 2221 06. Mai 2008, 11:54
azwinzds Datumsfunktion die nur die aktuelle Jahreszahl ausgibt
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrage mit Datumswerten (Abhängig von Tabeinträgen) 2 Razzo99 371 25. März 2008, 09:13
Gast Abfrage mit Datumswerten (Abhängig von Tabeinträgen)
Keine neuen Beiträge Access Tabellen & Abfragen: Nummerierung bei Abfrage 6 coste 510 24. Okt 2007, 22:55
coste Nummerierung bei Abfrage
Keine neuen Beiträge Access Tabellen & Abfragen: Fortlaufende Nummer in Abschnitten 1 Blocki 387 08. Okt 2007, 20:44
jens05 Fortlaufende Nummer in Abschnitten
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: MS Frontpage