Re: Datensatz von einer in die andere schreiben. - 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 Peter (293 Beiträge) am Freitag, 12.August.2011, 15:50.
    Re: Datensatz von einer in die andere schreiben.

      Es sollte natürlich "Datensatz von einer Datenbank in die andere schreiben" heissen.
      Auch für die übrigen Schreibfehler entschuldige ich mich.
      Die Finger sind manchmal nicht so flink wie's Gehirn, oder war's anders rum... ?


    Ihre Antwort:

    Name: EMail: EMail bei Antwort? WWW:
    Titel:
    Text:

    Neuer Eintrag


 Alle Einträge zum Thema: Zur Liste 
    Beitrag von Peter (293 Beiträge) am Freitag, 12.August.2011, 15:10.
    Datensatz von einer in die andere schreiben.

      Hallo zusammen,

      ich noch relativ neu hier und habe mir schon einiges aus dem Forum und der Hilfe gelesen.
      Aber bei einem Problem komme ich nicht weiter.

      Ich habe zwei Datenbanken, die gesondert bearbeitet werden, nennen wir es mal
      1. Bearbeitung
      2. Archiv

      In der Datenbank Bearbeitung gibt es eine Checkbox "erledigt".

      Ich möchte: Wenn ich dieses Feld im Formular checke, dann soll der Datensatz nach Archiv geschrieben werden, und aus Bearbeitung gelöscht werden.

      Ich habe mir die Befehle put und del angesehen und das hört sich erstmal leicht an, aber was mir fehlt ist die Verbindung dieser Befehle zum Standard.
      Soll heissen, ich habe in normales Formular generieren lassen und die Bearbeitung erfolgt auch hierüber.
      Wie kann ich die beiden Befehle nun einsetzen um meine Aufgabe zu realisieren.
      Geht das überhaupt mit Standards wie do_all etc.
      Wer kann mich auf die richtige Spur bringen?

      Vielen Danke schon einmal

     Antworten

    Beitrag von Peter (293 Beiträge) am Freitag, 12.August.2011, 15:50.
    Re: Datensatz von einer in die andere schreiben.

      Es sollte natürlich "Datensatz von einer Datenbank in die andere schreiben" heissen.
      Auch für die übrigen Schreibfehler entschuldige ich mich.
      Die Finger sind manchmal nicht so flink wie's Gehirn, oder war's anders rum... ?

     Antworten

    Beitrag von Claus (4645 Beiträge) am Samstag, 13.August.2011, 12:52. WWW: hammoniaweb.com
    Re: Datensatz von einer in die andere schreiben.

      mal so probieren:

      if (%_put && $_put{erldigt} == 1)
      {
       put undef,"Archiv";
      
      del "dein_Feldname==dein_Paramter", "Bearbeitung";

      }
      

      ungetestet, nur mal als Anregung...;)

      hth

      Gruesse

      claus

     Antworten

    Beitrag von Claus (4645 Beiträge) am Samstag, 13.August.2011, 13:02. WWW: hammoniaweb.com
    Re: Re: Datensatz von einer in die andere schreiben.

      Ups, war ein Tippfehler dring...

      if (%_put && $_put{erledigt} == 1)
      {
       put undef,"Archiv";
      
      del "dein_Feldname==dein_Paramter", "Bearbeitung";
      }

      bei "del" z.B. über die Id, also

      del "Id==$Id", "Bearbeitung";

      Bitte erst einmal mit einer Kopie versuchen oder vorher eine Sicherung der Original-DB anlegen!!

      Gruesse

      Claus

     Antworten

    Beitrag von Peter (293 Beiträge) am Samstag, 13.August.2011, 15:13.
    Re: Re: Re: Datensatz von einer in die andere schreiben.

      Hallo Claus,

      danke für den Tip.
      Ich habe inzwischen selbst mal probiert und bin auch zu einem Ergebnis gekommen(Ich glaube fast, es ist in etwa das Gleiche wie Deines, nur nicht so elegant).

      Meine Lösung:

              get "Erledigt==1", "Bearbeitung" ;
              while(get_next("Bearbeitung"))
              {
                  put [Feldliste], "Archiv";
              }
              del "Erledigt==1", "Bearbeitung";
      

      Nun da ich zwei Datenbanken habe, kann ich in die zwei Aufrufseiten jeweils den Code einfügen, da es ja auch möglich sein soll, einen Datensatz aus dem Archiv wieder in die Bearbeitung zu nehmen.
      Es funktioniert auch soweit. Einziges Manko oder auch (mangels Wissen) der Denkfehler:

      Der Code für das "Verschieben" aus Bearbeitung nach Archiv habe ich in die Aufrufseite für das Archiv geschrieben, und fürs Verschieben von Archiv in die Bearbeitung in die Bearbeitungsseite.

      Es funktioniert zwar, hat aber den Nachteil, dass der Datensatz nach Erledigt-Markierung noch auf der Seite bleibt, bis ich die Archiv-Seite anwähle.
      Vielleicht habe ich den Code auch nur an die falsche Stelle angefügt.
      Hast Du hier auch noch einen Tip?

     Antworten

    Beitrag von Claus (4645 Beiträge) am Samstag, 13.August.2011, 17:52. WWW: hammoniaweb.com
    Re: Re: Re: Re: Datensatz von einer in die andere schreiben.

          get "Erledigt==1", "Bearbeitung" ;
              while(get_next("Bearbeitung"))
              {
                  put [Feldliste], "Archiv";
              }
              del "Erledigt==1", "Bearbeitung";
      

      $_header="Location: http://hier der Pfad zu dem Template\n\n";

      Dann wird das template wieder aktualisiert und der Datensatz ist weg...;)

      hth

      Gruesse

      Claus

     Antworten

    Beitrag von Claus (4645 Beiträge) am Samstag, 13.August.2011, 18:07. WWW: hammoniaweb.com
    Re: Re: Re: Re: Re: Datensatz von einer in die andere schreiben.

      Sorry, war von meinem Beispiel ausgegangen, Macht der Gewohnheit...;)

      also bei Deinem Script so:

      if (%_put && $_put{Erledigt} == 1)
      {
      get "Erledigt==1", "Bearbeitung" ;
              while(get_next("Bearbeitung"))
              {
                  put [Feldliste], "Archiv";
              }
              del "Erledigt==1", "Bearbeitung";
      $_header="Location: http://hier der Pfad zu dem Template\n\n";
      }
      

      hth

      Gruesse

      Claus

     Antworten

    Beitrag von Peter (293 Beiträge) am Samstag, 13.August.2011, 19:11.
    Re: Re: Re: Re: Re: Re: Datensatz von einer in die andere schreiben.

      Hallo Claus,
      Du bist ja fix.
      Ich habe mal versucht das einzubauen, aber das funktioniert leider nicht.

      Hier ist mal der komplette code der Archiv-Seite:

      <center>
          <perl>
              
              get "Erledigt==1", "Bearbeitung";
              while(get_next("Bearbeitung"))
              {
                  put [Feldliste], "Archiv";
              }
      

             del "Erledigt==1", "Bearbeitung";
             $_header="Location: http://...\n\n";
             include "Includes/Kopfseite";
      
             do_all "db=Archiv ... ;
       
          </perl>
      </center>
      

      Nochmal meine Fragen dazu:

      In meinem naiven Verständnis wird der Code wird ja sicherlich beim Aufruf der Seite nur e i n m a l ausgeführt, oder wird der bei z.B. jeder Änderung an Datensätzen durchlaufen?
      (Wie gesagt, ich komme eher aus der prozeduralen VB-Welt, deshalb fehlt es mir hier an etwas Know-How)
      Ich versteh nicht so ganz, was $_header= bewirken soll (Ich hab schon verstanden, dass es quasi der Neuaufbau der Seite sein soll, aber wie soll das gehen?.
      Wenn ich die Seite aufgebaut habe, dann bin ich ja schon durch den Code.

      Was meintest Du noch mit Template (auch mit den Termina von Perl etc. bin ich nicht so vertraut)?
      Wenn Du die Seite meinst, dann kann ich mir nur vorstellen, dass Du die Aufrufseite (Bearbeitung oder Archiv) meinst. Ich habe beide Seiten ausbrobiert, aber immer nur Fehler (rekursiver Aufruf, oder Zu viele Verweise bekommen.

      Danke für Deine Geduld.

      Gruß

      Peter

     Antworten

    Beitrag von Claus (4645 Beiträge) am Sonntag, 14.August.2011, 10:48. WWW: hammoniaweb.com
    Re: Re: Re: Re: Re: Re: Re: Datensatz von einer in die andere schreiben.

      probier mal so:


      <center>
          <perl>
      
             include "Includes/Kopfseite";        do_all "db=Archiv ... ;
       if (%_put && $_put{Erledigt} == 1)
      {
      get "Erledigt==1", "Bearbeitung" ;
              while(get_next("Bearbeitung"))
              {
                  put [Feldliste], "Archiv";
              }
              del "Erledigt==1", "Bearbeitung";
      $_header="Location: http://hier der Pfad zu dem Template/Seite\n\n";
      }
      
          </perl>
      </center>

      Gruesse

      Claus

     Antworten

    Beitrag von Claus (4645 Beiträge) am Montag, 15.August.2011, 15:35. WWW: hammoniaweb.com
    Re: Re: Re: Re: Re: Re: Re: Re: Datensatz von einer in die andere schreiben.

      Hatte ich gestern übersehen...


      <center>
          <perl>
      
             include "Includes/Kopfseite";        do_all "db=Erledigt ... ";  if (%_put && $_put{Erledigt} == 1)

      {

      get "Erledigt==1", "Bearbeitung" ;
              while(get_next("Bearbeitung"))
              {
                  put [Feldliste], "Archiv";
              }
              del "Erledigt==1", "Bearbeitung";
      $_header="Location: http://hier der Pfad zu dem Template/Seite von Erledigt\n\n";
      }
      
          </perl>


      bei:

      http://hier der Pfad zu dem Template/Seite von Erledigt

      die Seite/Template von Erledigt aufrufen und den Link! kopieren und an der bezeichneten Stelle einfügen und bei "Feldliste" entsprechend die Parameter, wie in der Doku beschrieben, einfügen !!

      Dann wird der Inhalt in Archiv geschrieben und bei Erledigt in der DB gelöscht, darüber hinaus wird die Seite von "Erledigt" aktualisiert und der Datensatz nicht mehr angezeigt....

      Entsprechend umgekehrt dann auch bei Archiv verfahren, wenn Du den DS wieder aktivieren willst...

      Gruesse

      Claus

      </center>
      

     Antworten

    Beitrag von Claus (4645 Beiträge) am Montag, 15.August.2011, 15:39. WWW: hammoniaweb.com
    Re: Re: Re: Re: Re: Re: Re: Re: Re: Datensatz von einer in die andere schreiben.

      Oh Mann, bin momentan etwas im Stress, da an einer recht umfangreichen Sache für einen Kunden dran...

      <center>
          <perl>
             include "Includes/Kopfseite";
             do_all "db=Bearbeitung ... ";
       if (%_put && $_put{Erledigt} == 1)
      {
      get "Erledigt==1", "Bearbeitung" ;
              while(get_next("Bearbeitung"))
              {
                  put [Feldliste], "Archiv";
              }
              del "Erledigt==1", "Bearbeitung";
      $_header="Location: http://hier der Pfad zu dem Template/Seite von Bearbeitung\n\n";
      }
          </perl>
      </center>
      


      bei:

      http://hier der Pfad zu dem Template/Seite von Bearbeitung

      die Seite/Template von Bearbeitung aufrufen und den Link! kopieren und an der bezeichneten Stelle einfügen und bei "Feldliste" entsprechend die Parameter, wie in der Doku beschrieben, einfügen !!

      Dann wird der Inhalt in Archiv geschrieben und bei Bearbeitung in der DB gelöscht, darüber hinaus wird die Seite von "Bearbeitung" aktualisiert und der Datensatz nicht mehr angezeigt....

      Entsprechend umgekehrt dann auch bei Archiv verfahren, wenn Du den DS wieder aktivieren willst...

      Gruesse

      Claus

     Antworten


     
 Liste der ersten 150 Einträge:Einklappen Zur Eingabe 
 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.35s by baseportal.de
Erstellen Sie Ihre eigene Web-Datenbank - kostenlos!