Fogli di calcolo e JSON
Oltre a tradurre documenti Google Docs e Word in markdown e markup HTML, AEM traduce anche i fogli di calcolo (cartelle di lavoro di Microsoft Excel e Fogli Google) in file JSON che possono essere facilmente utilizzati dal sito web o dall’applicazione web.
Questo consente molti utilizzi per contenuti orientati alle tabelle o strutturati.
Fogli e struttura del foglio
L'esempio più semplice di un foglio è costituito da una tabella che utilizza la prima riga come nomi di colonna e le righe successive come dati. Un esempio potrebbe essere simile al seguente.
Dopo un'anteprima e una pubblicazione tramite la barra laterale, AEM traduce questa tabella in una rappresentazione JSON trasmessa alle richieste alla risorsa .json corrispondente. L’esempio precedente viene tradotto in:
{
"total": 4,
"offset": 0,
"limit": 4,
"data": [
{
"Source": "/sidekick-extension",
"Destination": "https://chromewebstore.google.com/detail/aem-sidekick/igkmdomcgoebiipaifhmpfjhbjccggml"
},
{
"Source": "/github-bot",
"Destination": "https://github.com/apps/helix-bot"
},
{
"Source": "/install-github-bot",
"Destination": "https://github.com/apps/helix-bot/installations/new"
},
{
"Source": "/tutorial",
"Destination": "/developer/tutorial"
}
],
":type": "sheet"
}
AEM consente di gestire le cartelle di lavoro con più fogli.
- Se è presente un solo foglio, AEM utilizzerà per impostazione predefinita tale foglio come origine delle informazioni.
- Se sono presenti più fogli, AEM distribuirà solo i fogli con prefisso
shared-(ohelix-), consentendo di conservare informazioni aggiuntive ed eventualmente formule nello stesso foglio di calcolo che non vengono recapitate al Web. - Se è presente un foglio denominato
shared-default(ohelix-default), verrà consegnato se non sono stati specificati parametri di query aggiuntivi.
Nota: il prefisso helix- è obsoleto e deve essere utilizzato il prefisso shared- più neutro.
Per informazioni dettagliate su come eseguire query su un foglio specifico, vedere la sezione seguente.
Parametri di query
Offset e limite
I fogli di calcolo e i file JSON possono diventare molto grandi. In questi casi, AEM supporta l'utilizzo di limit e offset parametri di query per indicare quali righe del foglio di calcolo vengono consegnate.
Poiché AEM comprime sempre il JSON, i payload sono generalmente relativamente piccoli. Pertanto, per impostazione predefinita, AEM limita il numero di righe restituite a 1000 se il parametro di query limit non è specificato. Questo è sufficiente per molti casi semplici.
Foglio
Il parametro di query sheet consente a un'applicazione di specificare uno o più fogli specifici nel foglio di calcolo o nella cartella di lavoro. Ad esempio, ?sheet=jobs restituirà il foglio denominato shared-jobs e ?sheet=jobs&sheet=articles restituirà i dati per i fogli denominati shared-jobs e shared-articles.
Nomi fogli speciali
In alcuni casi d’uso, AEM scrive anche nei fogli di calcolo, dove si aspettano nomi di foglio specifici.
- Il servizio Forms scrive solo in un foglio denominato
incoming, che non viene mai consegnato come JSON. - Il servizio indice scrive solo in un foglio denominato
raw_index, che può essere consegnato a JSON in una semplice configurazione a foglio singolo.
Per ulteriori informazioni su questi servizi, consulta i collegamenti riportati sopra.
Array
Gli array nativi non sono supportati come valori di cella, pertanto vengono distribuiti come stringhe.
"tags": "[\"Adobe Life\",\"Responsibility\",\"Diversity & Inclusion\"]"
È possibile convertirli nuovamente in array in JavaScript utilizzando JSON.parse().