0

Files dynamisch umbenennen in Schleife

Ich möchte gerne Files dynamisch in einer Schleife umbenennen. Ausschlaggebend sind folgende Kriterien, welche sich im Dateinamen wiederfinden, im Anschluss sollen die umbenannten Files wieder in die dazugehörigen Bildfelder, der nicht benötigte Rest aus dem Anhang gelöscht werden.

Dateiname bestehend aus: Name + KV-Nr + Bildfeldname + Dateiendung des Originalfiles.

Habe es jetzt mehr schlecht als recht hinbekommen, die Files dynamisch umzubenennen.

Bekomm sie aber aus dem Array bzw. aus dem Anhang nicht wieder in die Bildfelder. Müsste nach der Bezeichnung der Bildfelder geschehen, die Bezeichnung findet sich ja im Dateinamen wieder.

Hab insgesamt bis zu 11 Files in Bildfeldern. Das ganze soll natürlich auch noch flüssig laufen.

5 Antworten

null
    • UweG
    • vor 10 Monaten
    • Gemeldet - anzeigen



    Habe es mit Base64 gebaut damit man die Funktionalität flexibel (ohne aufwendige Scriptänderungen) nutzen kann.
    Man kann so Bidfelder erweitern und muss nur das entsprechende Array im Script um die Feldnamen und die Array Erstellungen erweitern.
    In der DB habe ich eine neue Tabelle 'Ninox' eingefügt, die es beispielhaft veranschaulicht.
    Die neuen Namen werden hier aus den entsprechenden Feldern gezogen, das muss man dann auf seine Bedürfnisse anpassen. Auch wenn eine Erweiterung der Bildfelder ansteht.

    Die Anpassungen im Script sind überschaubar, da ich versucht habe soviel wie möglich flexibel zu gestalten.

    In Tabelle 'Zugänge' den API-Key eingeben und dann kann man schon testen.

      • Michi.1
      • vor 10 Monaten
      • Gemeldet - anzeigen

       danke dir,

      schau mir es liebend gerne an. Wird aber erst im neuen Jahr. 

      Ich wünsche dir ein guten Rutsch 

      Michi

    • UweG
    • vor 10 Monaten
    • Gemeldet - anzeigen

    Ich habe die Datenbank jetzt so erweitert, dass alle Records der Tabelle mit einem Button-Klick von der Page ausgehend verarbeitet werden (Massendatenänderung) und nicht nur pro Record die Verarbeitung neu ausgeführt wird.

      • Michi.1
      • vor 10 Monaten
      • Gemeldet - anzeigen

      hab das ganze mal getestet. Es funktioniert so weit super.

      Ich habe nur 2 Probleme.

      • Wenn ich die Files umbenenne und die Links erzeuge, sehe ich die Files nicht in den Bildfeldern. Auch ein close & openRecord hilft da nicht. Es muss die ganze Seite im Browser neu geladen werden, dann sind die Inhalte der Bildfelder wieder sichtbar.
      • Das 2. große Problem betrifft das nochmalige Auslösen des Skriptes. Wenn man zum Beispiel ein File ändert, die schon bestehenden anderen Files jedoch nicht verändert, so ist am Ende nur noch das neu hinzugefügte File aufrufbar. Im Bildbeispiel: Image2. Ist geändert, der Rest wurde beibehalten.  (auslesen der Files ergibt ["F8/Image2_Testname_KV123.png"]

      Hast du da eventuell noch eine Lösung

       

       

       

      ?

      • Michi.1
      • vor 10 Monaten
      • Gemeldet - anzeigen

      Kann das Löschen der Anhänge (der zu behaltenden Files) umgehen mit 3 kleinen Anpassungen.

      • Bildfelder sind nur Schreibbar wenn = null & im trigger nach Änderung wird NewName... gefüllt
      •  START2 - create Array of existings ImageNames
        ---;
        let oName := if Image1 and NewName_Image1 then
                text(last(split(text(Image1), "/")))
            else
                "Empty"
            end;

      let oldName := split(oName, ",");

      An der Stelle wird extra noch auf NewName geprüft.

      • Am Skript ende werden die NewName Felder auf null gesetzt.

      http("DELETE", deleteURL + urlEncode(item(oldName, k)), deleteHeaders, {});
              NewName_Image1 := null;
              NewName_Image2 := null;
              NewName_Image3 := null

      • Um vorhandene Files in Bildfelder zu ersetzen, MUSS man den dazugehörigen Lösch Button benutzen.

       

      Geht bestimmt eleganter ... aber funktioniert.

      Bleibt nur noch das 1.Problem.... Ich bekomme die Anzeigen nur aktuell, wenn ich die Ninox Seite im Browser neu lade.

Content aside

  • vor 10 MonatenZuletzt aktiv
  • 5Antworten
  • 123Ansichten
  • 3 Folge bereits