Ogni app ha a disposizione delle etichette, numerate da 1 a 64, che può aggiungere a prodotti, clienti e documenti ( ordini, preventivi, fatture, ricevute, resi e DDT ) e vengono mostrate nel gestionale nel momento in cui gli viene dato un nome. Le etichette di una app non sono visibili e modificabili dalle altre app.
Per aggiungere le etichette a prodotti, clienti e documenti e leggere le etichette aggiunte si utilizzano i metodi di commerce.labels
. Per dare invece un nome e un colore alle etichette, così da mostrarle nel gestionale, si utilizza il metodo Admin.Labels.set
da JavaScript come descritto in seguito.
Prima di poter utilizzare le etichette bisogna abilitarle dal gestionale:
Dopodiché aggiungere Admin SDK alle pagine HTML dell'app:
<script src="https://open2b.dev/admin-sdk/open2b-admin-sdk-v7.2.min.js"></script>
Modifica nome, colore e popup delle etichette dell'app.
// all'etichetta 5 dà nome 'published'
// all'etichetta 12 dà nome 'sold' e colore '#FF00CC', e specifica un popup da aprire quando si fà clic sull'etichetta
Admin.Labels.set({
5: { name: 'published' },
12: {
name: 'sold',
color: 'FF00CC',
popup: {
handler: 'onPopupLoad', // Nome della funzione JavaScript da chiamare quando viene aperta la finestra di dialogo. Alla funzione verranno passati come argomenti il tipo e l'identificatore della risorsa, e l'identificatore dell'etichetta. Soddisfa l'espressione regolare: /^[a-zA-Z_\$][a-zA-Z_\$0-9]{0,31}$/.
path: 'statistiche.html', // URL path della pagina da aprire come finestra di dialogo. Il path deve essere relativo al path della pagina principale dell'app, se le due pagine si trovano nella stesso path allora basta indicare il nome del file.
width: 500, // Larghezza in pixel della finestra di dialogo.
height: 300 // Altezza in pixel della finestra di dialogo.
}
}
}, function(error) {
if ( error != null ) { alert(error); return; }
// done
});
// toglie nome e colore all'etichetta 7 affinché non venga mostrata nel gestionale
Admin.Labels.set({ 7: null }, function(error) {
if ( error != null ) { alert(error); return; }
// done
});