Categories: Uncategorized

admin

Share

DATASET_TO_SPREADSHEET Toolstap

Technische uitleg DATASET_TO_SPREADSHEET toolstap

Doel

De DATASET_TO_SPREADSHEET toolstap is een functionaliteit binnen het promptreeks-systeem die gebruikers in staat stelt om gestructureerde gegevens (datasets) om te zetten naar een Excel-spreadsheetbestand (.xlsx). Deze toolstap ondersteunt verschillende gegevensbronformaten, waaronder JSON, CSV en HTML-tabellen, en maakt het mogelijk om deze gegevens op te slaan in een gestructureerd, bewerkbaar formaat dat breed toegankelijk is voor verdere analyse en verwerking.

Implementatie

  • Definitie in database: De toolstap is gedefinieerd in de tabel WATCH_FUNCTIONS met de code ‘DATASET_TO_SPREADSHEET’
  • Front-end: includes/chain_functions.php:dataset_to_spreadsheet() – Creëert de interface voor het invoeren en converteren van de dataset
  • Back-end verwerking: Gebruikt PhpSpreadsheet bibliotheek voor het genereren en bewerken van Excel-bestanden
  • Ondersteuning voor formaten: Kan JSON-arrays, CSV-gegevens en HTML-tabellen verwerken
  • Bestandsopslag: Slaat het gegenereerde spreadsheet op in een gebruikerspecifieke map binnen de geconfigureerde AI-map

Procesflow

  1. Gebruiker voert de dataset in of deze wordt doorgegeven van een vorige stap
  2. Gebruiker kan een aangepaste bestandsnaam opgeven of de standaardnaam gebruiken
  3. Het systeem identificeert automatisch het gegevensformaat (JSON, CSV of HTML-tabel)
  4. De gegevens worden geparseerd en in het juiste format gebracht voor spreadsheetverwerking
  5. Een nieuw spreadsheet wordt aangemaakt of een bestaande wordt bijgewerkt:
    • Voor JSON: kolomkoppen worden automatisch aangemaakt op basis van de sleutels in de eerste rij
    • Voor CSV: gegevens worden direct geïmporteerd in het spreadsheet
    • Voor HTML-tabellen: tabelstructuur wordt omgezet naar spreadsheetcellen
  6. Het gegenereerde spreadsheet wordt opgeslagen met de opgegeven bestandsnaam
  7. Een downloadlink naar het spreadsheet wordt gegenereerd en aan de gebruiker getoond

Veiligheidsmaatregelen

  • Validatie van ingevoerde gegevens om schadelijke inhoud te voorkomen
  • Gecontroleerde bestandsnaamgeneratie om conflicten te voorkomen
  • Beperking van bestandstoegang tot gebruikerspecifieke mappen
  • Controle op JSON-integriteit voordat conversie wordt uitgevoerd
  • Bescherming tegen directory traversal-aanvallen

Afhankelijkheden

  • PhpSpreadsheet bibliotheek voor spreadsheetgeneratie en -manipulatie
  • Functies voor JSON-, CSV- en HTML-validatie en -verwerking
  • Bestandssysteemtoegang voor het opslaan van gegenereerde spreadsheets
  • Sessievariabelen voor het bijhouden van gebruikersspecifieke instellingen
  • Hulpfuncties zoals json_validator() en is_csv()

Beperkingen

  • Complexe geneste JSON-structuren kunnen niet direct worden omgezet naar een tabelstructuur
  • Zeer grote datasets kunnen verwerkingstijd en geheugenproblemen veroorzaken
  • Opmaak in HTML-tabellen kan gedeeltelijk verloren gaan tijdens de conversie
  • Beperkte ondersteuning voor speciale tekens in kolomnamen en celinhoud
  • Formules worden niet automatisch herkend of omgezet uit de brongegevens

Uitleg voor gebruikers

Wat is de DATASET_TO_SPREADSHEET toolstap?

De DATASET_TO_SPREADSHEET toolstap stelt je in staat om gestructureerde gegevens (zoals JSON-arrays, CSV-bestanden of HTML-tabellen) om te zetten naar een Excel-spreadsheet. Dit is bijzonder nuttig wanneer je:
– Gegevens wilt analyseren in een vertrouwde spreadsheetomgeving
– Datasets wilt bewerken, filteren of visualiseren met Excel
– Gestructureerde gegevens op een toegankelijke manier wilt delen met anderen
– AI-gegenereerde gegevens wilt opslaan in een bewerkbaar, gestructureerd formaat

De toolstap herkent automatisch het formaat van je invoergegevens en zet deze om naar een Excel-bestand (.xlsx) dat je kunt downloaden en verder bewerken.

Input

  • Gestructureerde gegevens in een van de volgende formaten:
    • JSON-arrays (bijvoorbeeld: [{"naam": "Jan", "leeftijd": 25}, {"naam": "Piet", "leeftijd": 30}])
    • CSV-tekst (bijvoorbeeld: naam,leeftijd\nJan,25\nPiet,30)
    • HTML-tabellen (bijvoorbeeld: <table><tr><th>naam</th><th>leeftijd</th></tr><tr><td>Jan</td><td>25</td></tr></table>)
  • Optioneel: een aangepaste bestandsnaam voor het gegenereerde spreadsheet

Output

  • Een Excel-spreadsheet (.xlsx) waarin de gegevens zijn gestructureerd in rijen en kolommen
  • Bij JSON-invoer: kolomkoppen worden automatisch gegenereerd op basis van de sleutels in de eerste rij
  • Bij CSV-invoer: de structuur wordt direct overgenomen in het spreadsheet
  • Bij HTML-tabellen: de tabelstructuur wordt omgezet naar een corresponderende spreadsheetstructuur
  • Een downloadlink naar het gegenereerde bestand

Bestandsnaamopties

Bij het opslaan van je spreadsheet heb je de volgende mogelijkheden:
– Een aangepaste bestandsnaam invoeren
– Gebruik maken van variabelen in de bestandsnaam:
{user} – wordt vervangen door je gebruikersnaam
{date} of {datum} – wordt vervangen door de huidige datum (JJJJ-MM-DD)
{time} of {tijd} – wordt vervangen door de huidige tijd (UU-MM-SS)

Voorbeeld: rapport_{user}_{date}_{time} wordt automatisch: rapport_jan_2023-09-15_14-30-22

Gebruikstips

  • Voor JSON-gegevens, zorg ervoor dat je een geldige array van objecten aanlevert
  • Voor CSV-gegevens, zorg voor consistente scheidingstekens (meestal komma’s)
  • Voor HTML-tabellen, zorg voor een goed gestructureerde tabel met kolomkoppen
  • Voor grote datasets is het aan te raden om deze eerst op te splitsen in kleinere delen
  • Gebruik beschrijvende bestandsnamen om later gemakkelijk terug te vinden wat erin staat
  • Controleer het gegenereerde spreadsheet op correctheid, vooral bij complexe gegevensstructuren

Integratie met andere toolstappen

DATASET_TO_SPREADSHEET werkt naadloos samen met verschillende andere toolstappen in de promptreeks:

  • RUN_MYSQL_QUERY_JSON/CSV: Converteer direct databaseresultaten naar een spreadsheet
  • JSON_DATASET_TO_HTML: Combineer met DATASET_TO_SPREADSHEET om zowel een webweergave als een downloadbaar bestand te creëren
  • MAKE_API_CALL: Verwerk API-responses direct naar een spreadsheet
  • JSON_CHART_JS: Visualiseer eerst in een grafiek, sla daarna de gegevens op in een spreadsheet
  • RSS_TO_JSON: Converteer RSS-feeds naar een spreadsheet voor verdere analyse

Voordelen

  • Toegankelijkheid: Excel is een breed gebruikt en bekend formaat
  • Bewerkbaarheid: Gemakkelijk na te bewerken en aan te passen
  • Analysetools: Profiteer van Excel’s ingebouwde functies voor dataverwerking
  • Deelbaarheid: Eenvoudig te delen met teamleden of andere belanghebbenden
  • Visualisatie: Gebruik Excel’s diagramfuncties om gegevens visueel weer te geven
  • Offline beschikbaarheid: Werk verder met de gegevens zonder internetverbinding

Toepassingen

  • Exporteren van AI-gegenereerde datasets voor verdere analyse
  • Archiveren van gestructureerde API-responses in een bewerkbaar formaat
  • Omzetten van webgebaseerde gegevens naar spreadsheets voor rapportage
  • Creëren van bewerkbare gegevensoverzichten uit diverse bronnen
  • Voorbereiden van gegevens voor gebruik in andere systemen of applicaties
  • Delen van gestructureerde informatie met collega’s of klanten
  • Opstellen van financiële of statistische rapporten op basis van ruwe gegevens