Re: Automatisch abgelaufene Einträge aus der Ausgabe entfernen - 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 Sander (8133 Beiträge) am Montag, 30.Juli.2001, 19:49.
    Re: Automatisch abgelaufene Einträge aus der Ausgabe entfernen

      Vergiss den 2ten code, mir is ne bessere lösung zum ersten eingefallen :-)
      <perl>
      if ($cmd eq "")
      {
      get "Bis<jetzt","Termine"; # dbname mit der orginaldb ersetzen
      while (get_next("Termine")) # hier auch
      {
      %_put=%_loop;
      del "Id==$_id","Termine"; # und nochmal
      put undef,"Termine_Archiv"; # dbname2 der archivdb ersetzen
      }
      }
      </perl>  
      

      Sander


    Antworten

 Alle Einträge zum Thema: Zur Liste 
    Beitrag von Achim (118 Beiträge) am Sonntag, 29.Juli.2001, 23:22.
    Automatisch abgelaufene Einträge aus der Ausgabe entfernen

      Hallo zusammen,

      kann mir jemand erklären was ich einrichten muß, um einen Termin, dessen Datum verstrichen ist, automatisch aus der Ausgabeseite gestrichen wird? Am besten sollter dieser Termin in Ein ARchiv wandern.
      Ich habe eine Datenbank in der Veranstltungstermine stehen, ich möchte mir das löschen von Hand sparen und gleichzeitig die verstrichenen Termine in ein Archiv legen.

      <br><b>
      <do action=all databack=f0f0f0 datasize=2 headback=778899 border=0 spacing=1 padding=3 gridcolor=
      FFFFFF dataface=verdana,arial,helvetica sort^=Von range^=0,20 pagebrowse=top buttonbrowse=top,bottom listtype=list listfields=Von,Bis,Veranstaltung,Wo?,eMail input=link>
      

      Dies ist die bisherige Datenbank.

      Würde mich über Hilfe freuen

     Antworten

    Beitrag von Sander (8133 Beiträge) am Sonntag, 29.Juli.2001, 23:44.
    Re: Automatisch abgelaufene Einträge aus der Ausgabe entfernen

      mit ein bischen perl geht das.
      Vor dem do action muß rein:
      <perl>
      if ($cmd eq "")
      {
      get "Bis<-1","dbname"; # dbname mit der orginaldb ersetzen
      while (get_next("dbname")) # hier auch
      {
      %_put=%_get;
      del "Id==$_id","dbname";  # und nochmal
      put undef,"dbname2"; # dbname2 der archivdb ersetzen
      }
      }
      </perl>
      

      Das schreibt mit jedem Aufruf der Seite eventuelle Einträge von vor heute in das archiv um.

      Sander

     Antworten

    Beitrag von Achim (118 Beiträge) am Sonntag, 29.Juli.2001, 23:48.
    Re: Automatisch abgelaufene Einträge aus der Ausgabe entfernen

      Hi Sander,

      werd´s gleich mal probieren. Eine Frage habe ich noch, die Archivdatenbank, muß die genauso aufgenaut sein wie die DB aus der die Einträge ausgelesen werden sollen?...wahrscheinlich.
      Ich probiers einfach mal.

      Dank & Gruß aus Köln

      Achim

     Antworten

    Beitrag von Achim (118 Beiträge) am Montag, 30.Juli.2001, 00:28.
    Re: Automatisch abgelaufene Einträge aus der Ausgabe entfernen

      Hi Sander,

      hab´s probiert leider klappt es nicht. folgende Fehlermeldung erscheint jetzt auf der Orginalseite
      [ Fehler: init: Permission denied to read /cgi-bin/baseportal.pl?htx=/smarty/Termine

      Ursache: Die angegebene Datenbank ist für den gewünschten Zugriff nicht freigegeben.

      Lösung: Gehen Sie in Ihren privaten Bereich (Anmelden), wählen Sie die entsprechende Datenbank aus, klicken Sie auf 'Verwaltung' und ändern
      Sie die Rechte entsprechend. ]

      Habe auf der Archiv Seite alle Rechte vergeben.DIe Seite ist eine 1-1 Kopie der Orginalseite.
      Habe deine Source vor die doaction gestellt.

      <perl>
                                       if ($cmd eq "")
                                       {
                                       get "Bis<-1","/cgi-bin/baseportal.pl?htx=/smarty/Termine"; # dbname mit der orginaldb ersetzen
                                       while (get_next("/cgi-bin/baseportal.pl?htx=/smarty/Termine")) # hier auch
                                       {
      

                                   %_put=%_get;
                                   del "Id==$_id","/cgi-bin/baseportal.pl?htx=/smarty/Termine"; # und nochmal
      
                                       put undef,"/cgi-bin/baseportal.pl?htx=/smarty/Termine_Archiv"; # dbname2 der archivdb ersetzen                                  }                                  }                                  </perl> <do action=all databack=f0f0f0 datasize=2 headback=778899 border=0 spacing=1 padding=3 gridcolor=
      FFFFFF dataface=verdana,arial,helvetica sort^=Von range^=0,20 pagebrowse=top buttonbrowse=top,bottom listtype=list listfields=Von,Bis,Veranstaltung,Wo?,eMail input=link>


      Gruß

      Achim

     Antworten

    Beitrag von Sander (8133 Beiträge) am Montag, 30.Juli.2001, 00:40.
    Re: Automatisch abgelaufene Einträge aus der Ausgabe entfernen

      probiers mal so:

      <perl>
       
      if ($cmd eq "")
      {
                                       get "Bis<-1","Termine"; # dbname mit der orginaldb ersetzen
                                       while (get_next("Termine")) # hier auch
                                       {
      

                                   %_put=%_get;
                                   del "Id==$_id","Termine"; # und nochmal
      
                                       put undef,"Termine_Archiv"; # dbname2 der archivdb ersetzen                                  }                                  }                                  </perl> <do action=all db=Termine databack=f0f0f0 datasize=2 headback=778899 border=0 spacing=1 padding=3 gridcolor=   FFFFFF dataface=verdana,arial,helvetica sort^=Von range^=0,20 pagebrowse=top buttonbrowse=top,bottom listtype=list listfields=Von,Bis,Veranstaltung,Wo?,eMail input=link>

      Sander

     Antworten

    Beitrag von Achim (118 Beiträge) am Montag, 30.Juli.2001, 01:11.
    Re: Automatisch abgelaufene Einträge aus der Ausgabe entfernen

      Hi Sander,

      das klappt soweit in der OrginalDB (Termine) nur die Einträge in der ArchivDB sind leer. Da steht nur das Datum des heutigen tages drin. Aber keine Inhalte aus der OrginalDB.
      Da steht in der OrginalDB noch ein Eintrag vom 28-29.07.01 dieser müßte doch eigentlich schon ins Archiv gewandert sein wenn´s klappten sollte, oder.

      Wie gesagt, ich habe einen Eintrag in der OrginalDB mit altem Datum vorgenommen, dieses wurde nicht in die Orginal DB geschrieben und es gab einen Eintrag im Archiv...nur leider ohne Inhalt lediglich das Datum erschien. Das kuriose ist noch, das der Eintrag gedoppelt wird.

      http://www.baseportal.de/cgi-bin/baseportal.pl?htx=/smarty/Termine
      http://www.baseportal.de/cgi-bin/baseportal.pl?htx=/smarty/Termine_Archiv

      Gruß

      Achim

     Antworten

    Beitrag von Sander (8133 Beiträge) am Montag, 30.Juli.2001, 14:50.
    Re: Automatisch abgelaufene Einträge aus der Ausgabe entfernen

      Dann wohl doch nur so ;-)

      <perl>
      

      if ($cmd eq "")
      {
       
      get "Bis<jetzt","Termine"; # dbname mit der orginaldb ersetzen
                                       while (get_next("Termine")) # hier auch
                                       {
      

                                       del "Id==$_id","Termine"; # und nochmal
                                       put ["feldname1",$feldname1,"feldname2",$feldname2,"feldname3",$feldname3,"usw",$usfort],"Termine_Archiv"; # dbname2 der archivdb ersetzen, Feldnamen auch ersetzen, für jedes in der Db vorkommende Feld
                                       }
                                       }
                                       </perl> <do action=all db=Termine databack=f0f0f0 datasize=2 headback=778899 border=0 spacing=1 padding=3 gridcolor=
       
      

      FFFFFF dataface=verdana,arial,helvetica sort^=Von range^=0,20 pagebrowse=top buttonbrowse=top,bottom listtype=list listfields=Von,Bis,Veranstaltung,Wo?,eMail input=link>

      Sander

     Antworten

    Beitrag von Achim (118 Beiträge) am Montag, 30.Juli.2001, 16:32.
    Re: Automatisch abgelaufene Einträge aus der Ausgabe entfernen

      Hi Sander,

      habe die Feldnamen eingegeben...nun habe ich leider ´ne perl Fehlermeldung, was ist falsch?
      [ Fehler: (perl) in /smarty/Termine: Unrecognized character \374 at (eval 147) line 15, chunk 1. ]


      <perl>
      
                                       if ($cmd eq "")                                  {                                  get "Bis<jetzt","Termine"; # dbname mit der orginaldb ersetzen
                                   while (get_next("Termine")) # hier auch                              {                                                               del "Id==$_id","Termine"; # und nochmal                                                               put                              ["Von",$Von,"Bis",$Bis,"Veranstaltung",$Veranstaltung,"Wo",$Wo,"Was",$Was,"eMail",$eMail,"Homepage",$Homepage,"Telefon",$Telefon],"Termine_Archiv"; #                              dbname2 der archivdb ersetzen, Feldnamen auch ersetzen, für jedes in der Db vorkommende Feld                                                               }                                                               }
                                                                        </perl>

      Ich hatte diese schon beim ersten Einbau und dachte das die Fragezeichen und Leerschläge, die ich in den Feldnamen hatte wären schuld daran...habe darufhin diese geändert.

      Was muß ich machen...?

      Gruß&Dank

      Achim

     Antworten

    Beitrag von Sander (8133 Beiträge) am Montag, 30.Juli.2001, 19:49.
    Re: Automatisch abgelaufene Einträge aus der Ausgabe entfernen

      Vergiss den 2ten code, mir is ne bessere lösung zum ersten eingefallen :-)
      <perl>
      if ($cmd eq "")
      {
      get "Bis<jetzt","Termine"; # dbname mit der orginaldb ersetzen
      while (get_next("Termine")) # hier auch
      {
      %_put=%_loop;
      del "Id==$_id","Termine"; # und nochmal
      put undef,"Termine_Archiv"; # dbname2 der archivdb ersetzen
      }
      }
      </perl>  
      

      Sander

     Antworten

    Beitrag von Achim (118 Beiträge) am Montag, 30.Juli.2001, 20:34.
    Re: Automatisch abgelaufene Einträge aus der Ausgabe entfernen

      Hi Sander,

      wie befohlen ;-)...hab deinen neuen Code eigesetz...klappte auch, der alte Termin der bis gestern lief ist auch raus.....NUR LEIDER NICHT INS ARCHIV :....-(((heul*

      Ich habe das Archiv genau so gebaut wie die Orginale DB (via kopieren)
      Die Anzeige zeigt jetzt 21 Einträge die keinen Inhalt haben ....ähhhh?

      Anbei der Code der Archiv DB

      <do action=all db=Termine_Archiv databack=f0f0f0 datasize=2 headback=778899 border=0 spacing=1 padding=3 gridcolor=
      FFFFFF dataface=verdana,arial,helvetica sort^=Von range^=0,20 pagebrowse=top buttonbrowse=top,bottom listtype=list listfields=Von,Bis,Veranstaltung,Wo,eMail input=link>
      


      Die beiden Datumsfelder (Von...Bis) werden sortiert.

      Wir kriegen das hin, oder?

      Gruß&Dank

      Achim

     Antworten

    Beitrag von Sander (8133 Beiträge) am Montag, 30.Juli.2001, 21:03.
    Re: Automatisch abgelaufene Einträge aus der Ausgabe entfernen

      Das wird schon... ;-)
      Wenn du mir noch ein Schreibrecht kurzzeitig einräumen könntest für das Archiv, könnte ich es testen. Kaputt mache ich da ja (noch) nichts, oder? ;-)

      Sander

     Antworten

    Beitrag von Achim (118 Beiträge) am Montag, 30.Juli.2001, 21:11.
    Re: Automatisch abgelaufene Einträge aus der Ausgabe entfernen

      Hi Sander,

      wenn du die Rechte in der DB meinst...da ist jetzt alles offen. ändern, löschen etc. wenne meinen zugang braucht´s auch kein problem...bräuchte nur deine elektropost adresse.

      bis gleich ;-)

      Achim

     Antworten

    Beitrag von Sander (8133 Beiträge) am Montag, 30.Juli.2001, 23:15.
    Re: Automatisch abgelaufene Einträge aus der Ausgabe entfernen

      so, dann doch die 2te Variante... komisch, das das mit erstens nicht klappt.

      <perl>
      if ($cmd eq "")
      {
      get "Bis<jetzt","Termine"; # dbname mit der orginaldb ersetzen
      while (get_next("Termine")) # hier auch
      {
      del "Id==$_id","Termine"; # und nochmal
      put ["Von",$Von,"Bis",$Bis,"Veranstaltung",$Veranstaltung,"Wo",$Wo,"Was",$Was,"eMail",$eMail,"Homepage",$Homepage,"Telefon",$Telefon],"Termine_Archiv";
      }
      }
      </perl> 
      

      Das hab ich nun geprüft ;-)

      Sander

     Antworten

    Beitrag von Achim (118 Beiträge) am Montag, 30.Juli.2001, 23:35.
    Re: Automatisch abgelaufene Einträge aus der Ausgabe entfernen

      .....mmmmhhhhh, spiiiiitze!

      wo ist die krone?....und zum ritter hätte man dich auch schlagen sollen!
      zwehundertvierundzwanzigmal ....danke! et läuft.

      ....aber weißt du warum der eintrag immer noch doppelt ins archiv gestellt wird?

      wenn´s fertig ist stell ich mein erstes template in die doku, is das o.k.? oder ist so´ne termin db zu profan?

      gruß & dank aus köln

      achim

     Antworten

    Beitrag von Sander (8133 Beiträge) am Montag, 30.Juli.2001, 23:44.
    Re: Automatisch abgelaufene Einträge aus der Ausgabe entfernen

      hmmm, das doppelte könnte passieren, wenn do action=all im Template steckt, weil da steckt put mit drin. Vielleicht gehts, wenn du die Rechte wieder entfernst, perl interessiert es nämlich nicht ob rechte da sind. oder du schreibst vor </perl> noch
      %_put="";
      weiß aber nicht ob es so funzen kann, nur Vermutungen. Wenns nicht geht, machen wir uns halt weiter Gedanken ;-)

      In die Bib wäre vieleicht als Beispiel gut als "autom. löschen/verschieben von abgelaufenen Terminen". Die Frage kommt hier ja oft.

      Sander

     Antworten

    Beitrag von Sander (8133 Beiträge) am Montag, 30.Juli.2001, 23:46.
    Re: Automatisch abgelaufene Einträge aus der Ausgabe entfernen

      halt,
      %_put="";
      nicht vor </perl> sondern vor der letzten Klammer vor </perl>

      %_put="";
      }
      </perl>
      

      Sander

     Antworten

    Beitrag von Achim (118 Beiträge) am Dienstag, 31.Juli.2001, 00:10.
    Re: Automatisch abgelaufene Einträge aus der Ausgabe entfernen

      ....gääähn, ne...klappt auch nicht

      hab´s so eingesetzt...

                                       }
      %_put="";
                                       }
                                       </perl>
      

      macht aber weiterhin doppelte Archiveinträge.

      Naja, der Rest funktioniert ja schon mal ;-)


      Achim

     Antworten

    Beitrag von Achim (118 Beiträge) am Dienstag, 31.Juli.2001, 23:39.
    Re: Automatisch abgelaufene Einträge aus der Ausgabe entfernen

      hi sander,

      hab heute mal in ein per buch geschaut....ohoh, also ich galube bis ich da was gescheites auf die kette kriege, dauert noch so 50-60 jahre :-)

      hab darin auch nicht echt was gefunden (hab´s auch kaum kappiert :-(()
      haste denn schon ne idee?

      achim

     Antworten

    Beitrag von Sander (8133 Beiträge) am Dienstag, 31.Juli.2001, 23:44.
    Re: Automatisch abgelaufene Einträge aus der Ausgabe entfernen

      na wenn du noch nicht so alt bist, kanns ja noch was werden ;-)

      schreib nochmal den kompletten Code dieses Templates hier rein, am besten in einen neuen Thread, sonst vergess ich es wieder ;-)

      Sander

     Antworten

    Beitrag von Achim (118 Beiträge) am Montag, 30.Juli.2001, 23:56.
    Re: Automatisch abgelaufene Einträge aus der Ausgabe entfernen

      Hi,

      hab´s ausprobiert, beide varianten. Bei der%_put="", wird ein neuer eintrag in die Orginal DB geschrieben und keiner in´s Archiv.
      Bei der Rechtevergabe ändert sich auch nichts....habe momentan wieder nur abfragen eingestellt.
      Ich werde mal die doppelte Datumssortierung aus den beieden DB rausschmeißen und nur nach Von sortieren lassen. Vieleicht.....

      Ansonsten bis später

      achim

     Antworten

    Beitrag von Markus (0 Beiträge) am Mittwoch, 27.März.2002, 02:03. WWW: mgcbadems.de
    Re: Automatisch abgelaufene Einträge... Doppelter Archiveintag-Lösung?

      Hallo zusammen,
      habe aus der Bib den Code für "Löschen abgelaufener Termine und Eintrag in Archiv" kopiert und auf meine Bedürfnisse angepasst. Funzt super - nur: habe auch das Problem der doppelten Einträge im Archiv. Hat jemand dazu schon eine Lösung?
      Hier der Code:
      <perl>
      if ($cmd eq "")
      {
      get "Datum<jetzt","turnierkalender"; # dbname mit der orginaldb ersetzen
      while (get_next("turnierkalender")) # hier auch
      {
      del "Id==$_id","turnierkalender"; # und nochmal
      put
      ["Datum",$Datum,"Turniername",$Turniername,"Spielweise",$Spielweise,"Vorgabenwirksam",$Vorgabenwirksam,"Offen",$Offen,"Handicapbegrenzung",$Handicapbegrenzung,"Gesperrt_von",$Gesperrt_von,"Gesperrt_bis",$Gesperrt_bis,"Wo_gesperrt",$Wo_geseprrt],"turnierkalender_archiv";
      }
      }
      </perl>
      <center>
      <do action=all databack=FFFFFF dataalign=middle headalign=middle sort^=Datum range^=0,14 pagebrowse=yes buttonbrowse=bottom listfields=Datum,Turniername,Gesperrt_von,Gesperrt_bis input=link searchfields=Datum,Turniername,Vorgabenwirksam,Offen>
      

     Antworten

    Beitrag von Sander (8133 Beiträge) am Mittwoch, 27.März.2002, 08:07.
    Re: Automatisch abgelaufene Einträge... Doppelter Archiveintag-Lösung?

      probier mal nach put ein
      undef %_put;

      Sander

     Antworten

    Beitrag von Markus (0 Beiträge) am Mittwoch, 27.März.2002, 08:47.
    Re: Automatisch abgelaufene Einträge... Doppelter Archiveintag-Lösung?

      Danke Sander. Bin absoluter Perl-Looser - keine Ahnung! Deshalb:
      HELP! Wenn ich das mache, schreibt er leere Datensätze in die Originaldatenbank. Hab´s so gemacht:
      <perl>
      if ($cmd eq "")
      {
      get "Datum<jetzt","turnierkalender"; # dbname mit der orginaldb ersetzen
      while (get_next("turnierkalender")) # hier auch
      {
      del "Id==$_id","turnierkalender"; # und nochmal
      put undef %_put;
      ["Datum",$Datum,"Turniername",$Turniername,"Spielweise",$Spielweise,"Vorgabenwirksam",$Vorgabenwirksam,"Offen",$Offen,"Handicapbegrenzung",$Handicapbegrenzung,"Gesperrt_von",$Gesperrt_von,"Gesperrt_bis",$Gesperrt_bis,"Wo_gesperrt",$Wo_geseprrt],"turnierkalender_archiv";
      }
      }
      </perl>
      

     Antworten

    Beitrag von Sander (8133 Beiträge) am Mittwoch, 27.März.2002, 09:16.
    Re: Automatisch abgelaufene Einträge... Doppelter Archiveintag-Lösung?

      <perl>
      if ($cmd eq "")
      {
      get "Datum<jetzt","turnierkalender"; # dbname mit der orginaldb ersetzen
      while (get_next("turnierkalender")) # hier auch
      {
       
      del "Id==$_id","turnierkalender"; # und nochmal
      put ["Datum",$Datum,"Turniername",$Turniername,"Spielweise",$Spielweise,"Vorgabenwirksam",$Vorgabenwirksam,"Offen",$Offen,"Handicapbegrenzung",$Handicapbegrenzung,"Gesperrt_von",$Gesperrt_von,"Gesperrt_bis",$Gesperrt_bis,"Wo_gesperrt",$Wo_geseprrt],"turnierkalender_archiv";
      undef %_put;
      

      }
      }
      </perl>
      

      Sander

     Antworten

    Beitrag von Markus (0 Beiträge) am Mittwoch, 27.März.2002, 09:33.
    Re: Automatisch abgelaufene Einträge... Doppelter Archiveintag-Lösung?

      Danke Sander, Du bist der hilfsbereiteste Mensch, den ich kenne! Aber leider (heul): so kommen wieder doppelte Einträge. Ist doch wie verhext, oder?

     Antworten

    Beitrag von Achim (118 Beiträge) am Montag, 30.Juli.2001, 00:41.
    Re: Automatisch abgelaufene Einträge aus der Ausgabe entfernen

      Hi Sander,

      das mit der übertragung hat bei einem Testlauf funktioniert, habe ein abgelaufenes Datum genommen, da in meine Orginaldb zwar eins bis 29.07.01 steht aber dies bisher nicht übertragen wurde.
      Ich hab in die OrginalDB einen Eintrag vorgenommen der dann auch nicht in der Orgianalausgabe erschien...im Archiv wurden zwar Einträge gemacht doch leider ohne Inhalt.

      Gruß
      Achim

     Antworten

    Beitrag von Werner (67 Beiträge) am Donnerstag, 27.März.2003, 15:07. WWW: www.die-veranstaltung.at
    Re: Automatisch abgelaufene Einträge aus der Ausgabe entfernen

      Hallo,
      gibt es schon eine Lösung um die doppelten Einträge in der Archiv_DB zu verhindern?

      LG
      Werner

     Antworten

    Beitrag von Petra (29 Beiträge) am Dienstag, 28.September.2004, 14:21.
    Re: Automatisch abgelaufene Einträge aus der Ausgabe entfernen

      Das würde mich ebenfalls sehr interessieren...
      Weiß jemand, wie man die doppelten Einträge umgehen/verhindern kann?
      lg, Petra

     Antworten


     
 Liste der Einträge von 58800 bis 58950: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.07s by baseportal.de
Erstellen Sie Ihre eigene Web-Datenbank - kostenlos!