@PerlProfis- Nummernkreise/Letzten Datensatz - baseportal Forum - Web-Anwendungen einfach, schnell, leistungsfähig!
baseportal
English - Deutsch "Es gibt keine dummen Fragen - jeder hat einmal angefangen"

 baseportal-ForumDie aktuellsten 10, 30, 50, 100 Einträge anzeigen.  

 
 Ausgewählter Eintrag: Zur Liste 
    Beitrag von Jürgen (614 Beiträge) am Sonntag, 7.Dezember.2003, 22:18.
    @PerlProfis- Nummernkreise/Letzten Datensatz

      Hi BP-Freaks,

      habe folgendes Problem.
      Eingabe in DB wird über ein selbst erstelltes Form übergeben.
      Hier hole ich dann die letzte Kartennummer (Feld: KartenNr) und lasse es beim putten um 1 erhöhen. Soweit klappt alles.
      Hier mal mein Code:
      get "IDmembers==# KartenNr==#", "member"; ## letzte Nummern aus DB holen
          $IDmemberp=++$IDmembers; ## Datensatznummer um eins erhöhen
          $KartenNrp=++$KartenNr; ## Kartennummer um eins erhöhen
      

      usw...

      So, jetzt möchte ich aber einen 2. Nummernkreis mit rein basteln.
      Der einen Nummernkreis (Kartennummer) beginnt mit 100000 und der zweite
      sollte mit 150000 beginnen.

      Natürlich passiert mir jetzt beim schreiben eines weiteren Datensatzes (Nummernkreis 1), daß
      er mir den Letzten Datensatz holt, und mir den (150000.) dann um 1 erhöht.
      Es sollte aber der 100000. um 1 erhhöht werden.

      Hoffen, Ihr versteht mich, was ich will.
      Wer hat einen Tip für mich. Danke im voraus.

      Gruß
      Jürgen


    Antworten

 Alle Einträge zum Thema: Zur Liste 
    Beitrag von Jürgen (614 Beiträge) am Sonntag, 7.Dezember.2003, 22:18.
    @PerlProfis- Nummernkreise/Letzten Datensatz

      Hi BP-Freaks,

      habe folgendes Problem.
      Eingabe in DB wird über ein selbst erstelltes Form übergeben.
      Hier hole ich dann die letzte Kartennummer (Feld: KartenNr) und lasse es beim putten um 1 erhöhen. Soweit klappt alles.
      Hier mal mein Code:
      get "IDmembers==# KartenNr==#", "member"; ## letzte Nummern aus DB holen
          $IDmemberp=++$IDmembers; ## Datensatznummer um eins erhöhen
          $KartenNrp=++$KartenNr; ## Kartennummer um eins erhöhen
      

      usw...

      So, jetzt möchte ich aber einen 2. Nummernkreis mit rein basteln.
      Der einen Nummernkreis (Kartennummer) beginnt mit 100000 und der zweite
      sollte mit 150000 beginnen.

      Natürlich passiert mir jetzt beim schreiben eines weiteren Datensatzes (Nummernkreis 1), daß
      er mir den Letzten Datensatz holt, und mir den (150000.) dann um 1 erhöht.
      Es sollte aber der 100000. um 1 erhhöht werden.

      Hoffen, Ihr versteht mich, was ich will.
      Wer hat einen Tip für mich. Danke im voraus.

      Gruß
      Jürgen

     Antworten

    Beitrag von Oliver ;-) (82 Beiträge) am Dienstag, 9.Dezember.2003, 08:19.
    Re: @PerlProfis- Nummernkreise/Letzten Datensatz

      Hallo Jürgen,

      ich dachte ich hätte es verstanden. Aber beim wiederholten lesen habe ich es doch nicht verstanden. Was willst du genau?

      Grüße
      Oliver ;-)

     Antworten

    Beitrag von Jürgen (614 Beiträge) am Dienstag, 9.Dezember.2003, 15:01.
    Re: @PerlProfis- Nummernkreise/Letzten Datensatz

      Hi Oliver,

      hmm, ;-)
      Ich habe ein Eingabeformular(1) das beim schreiben in die DB den letzten
      geschriebenen Datensatz die Kartennummer holt und um 1 erhöht.
      Jetzt ist das aber so, das ich Datensätze mit einem anderem Eingabeformular(2)
      schreiben kann - hier wird die Kartennummer von mir selbst eingegeben Z.B 150000.
      So, jetzt wäre das der letzte Datensatz für das Eingabeformular(1) und würde diesen
      beim schreiben um 1 erhöhen. Das darf nicht sein!!
      Eigentlich sollte der letzte Datensatz gehohlt werden, der mit Eingabeformular(1) eingtragen wurde.
      Hoffe, hab mich nicht zu umständlich ausgedrückt ;-)

      Gruß
      Jürgen

     Antworten

    Beitrag von hempelr (1976 Beiträge) am Dienstag, 9.Dezember.2003, 16:59.
    Re: @PerlProfis- Nummernkreise/Letzten Datensatz

      Hallo, Jürgen
      also wenn alle Eingabeformulare auf ein und dieselbe Datenbank arbeiten, ist dein Problem so generell nicht lösbar (das geht aber so bei keiner Datenbank und selbst unter dem wunderprächtigen Excel mit der max-Funktion nicht..)
      Also solltest du entweder zwei Felder nutzen, eine für Nummernkreis 1 und eine für Nummernkreis 2 oder aber ne andere Datenbank, die den letzten Wert aus dem Eingabeformular(1) mit speichert (und nur diesen) und dann per Relation als letzten Datensatz den mit der hier gespeicherten Nummer aus der "Arbeitsdatenbank" holt...
      Wobei ich persönlich die zweite Variante bevorzugen würde, sone Art "Zwischenspeicherdatenbank" ist ziemlich universell und da sie nie viel Datensätze beinhaltet, kann man ne Menge Felder als Zwischenspeicherfelder einbauen, alle sortiert und die Performance ist immer absolut allereste Sahne.


      hth
      Ruben

     Antworten

    Beitrag von Jürgen (614 Beiträge) am Donnerstag, 11.Dezember.2003, 10:18.
    Re: @PerlProfis- Nummernkreise/Letzten Datensatz

      Hi Ruben,

      merci für den Tipp. Ich hab zwei DB's (NrKreis1 u. NrKreis2) angelegt.
      Hier hole ich dann über Eingabeformular(1) die letzte Nummer aus DB NrKreis1
      und lasse beim putten die Member DB und NrKreis1 die neu Nummer schreiben.
      Das wars ;-)


      Gruß
      Jürgen

     Antworten

    Beitrag von chris (19 Beiträge) am Freitag, 30.Juli.2004, 11:38.
    Re: @PerlProfis- Nummernkreise/Letzten Datensatz

      Hi also da ich das gleiche problem habe wie du und eine lösung gefunden habe ohne zwei felder zu benutzter möchte ich natürlich dies nicht vorenthalten.

      Also wenn du folgendes Beispiel hast.

      Nummernkreis1 : 1000 - 1999
      Nummernkreis2 : 2000 - 2999
      Nummernkreis2 : 3000 - 3999
      usw.

      es ist egal wie viele nummernkreise du hast du must nur wissen wann der näste anfängt. Den letzten nummernkreis kannst du mit Select SELECT MAX(ID) FROM benutzer verwenden.

      Mit der folgenden Abfrage erhälst du die letzte id vom nummernkreis1:

      select id, name from benutzter where id<'2000' order by id desc

      Damit ist dein erster datensatzt die letzt id vom nummernkreis 1 weil die id kleiner ist als 2000 und durch das DESC ist es absteigend sortiert.

      Für nummernkreis 2 würde das dann so ausehen:

      select id, name from benutzter where id<'3000' order by id desc

      Ich hoffe das ich mit der kleinen lösung eure probleme lösen konnte

      Viel spaß noch

      Gruß Chris

     Antworten

    Beitrag von horstees (229 Beiträge) am Dienstag, 9.Dezember.2003, 20:01.
    Re: @PerlProfis- Nummernkreise/Letzten Datensatz

      Hi Jürgen,

      erhöhe doch einfach nicht 'beim' Schreiben
      sondern direkt danach.
      Mach ein normales put
      direkt anschließend ein 'mod' mit $_get{kartennr}+1.

      Wird wohl kaum jemand die Zwischenzeit ausnutzen
      um dir mit dem zweiten Formular noch einen
      anderen datensatz dazwischenzuhauen ;-)


      horstees

     Antworten


     
 Liste der Einträge von 33450 bis 33600:Einklappen Zur Eingabe 
Neueste Einträge << 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | Neuere Einträge < Zur Eingabe  > Ältere Einträge | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 >> Älteste Einträge


Zurück zur Homepage

© baseportal.de. Alle Rechte vorbehalten. Nutzungsbedingungen



powered in 0.06s by baseportal.de
Erstellen Sie Ihre eigene Web-Datenbank - kostenlos!