Teste offlineCMS mit Excel

Kann auch Umlaute und Sonderzeichen!

Excel generiert aus den Daten eine json-Datei und lädt diese automatisch via ftp auf den Webspace.

Nebenbei kann auch eine Word-Seriendruck-Datei angesprochen werden, um bspw. die Daten für eine Restaurant-Speisenkarte in Excel zusammenzustellen, in Word die Speisenkarte zu drucken und abschliessend alles VOLL automatisch auf den Webspace zu laden...

Genial einfach - oder?

A wie AntonB wie Berta
... and more lorem ... and more ipsum ... and no dolor...

Excel-Screenshot


VBA-Quellcode für Excel Macro

Alle Einstellungen für Dateinamen und ftp-Zugang bitte in Sub Fertig() anpassen...

Mit Excel die Datei test_CMS.xlsm öffnen:
Im Menü ENTWICKLERTOOLS/VisualBasic/ aufrufen
ggf. auf Tabelle1 (test) im "Projekt - VBAProjekt-Bereich" klicken
und bei der Sub Fertig() alle Einstellungen vornehmen. Speichern. Fertig!

    …
        Public Sub Fertig()
           'Dateinamen richtig einstellen
           JSONFileName = ActiveWorkbook.Path & "\test_CMS.json"
           WORDFileName = ActiveWorkbook.Path & "\test_CMS.docx"
           'Excel richtig einstellen
           WorkSheetName = "Test" 's.a. Excel-Datei
           'FTP richtig einstellen
           UserFTP = "user"
           PwdFTP = "pwd"
           ServerFTP = "ftp.example.com"
           FTPDirectory = "test/gaga"
           FTPWait = "30" 'Sekunden
           'alles ausführen
           SaveAsJSON
           OpenWord
           UploadFTP
           'Excel beenden
           Me.Save
           Application.Quit
        End Sub
    …
    

Der gesamte VB-Quelltext ist im Excel-Makro einsehbar!


Word-Screenshot


Das minimale HTML-Gerüst inkl. jquery-Quelltext zum Einlesen der json-Daten:

"Item.A" und "Item.B" im Javascript sind die Überschriften aus den Office-Daten! Wenn die Überschriften umbenannt werden, dann muss der Tabellenkopf <th> oben und das Javascript <script> unten auch entsprechend angepasst werden!!!

Leere Datensätze werden wegen if ( item.A != '' ) übrigens nicht ausgegeben!


        <!DOCTYPE HTML>
        <html>
          <head>
            <title>offlineCMS Calc</title>
            <meta charset="utf-8" />
            <script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
          </head>
          <body>
            <table border="1">
              <thead>
                <tr><th>A</th><th>B</th></tr>
              </thead>
              <tbody id="table_body">
                <!-- two Columns or even more!!! -->
              </tbody> 
            </table>    
          </body>
          <script>
            $( document ).ready(function() {
              $.getJSON("test_CMS.json", function( data ) {
                $.each ( data, function( i, item ) {
                  if ( item.A != '' ) {
                    $("#table_body").append("<tr><td>" + 
                                               item.A + 
                                            "</td><td>" + 
                                               item.B + 
                                            "</td></tr>");
                  }
                });
              });
            });
          </script>
        </html>