Limitazioni custom button su App1

Le custom button su App1 non sono visibili da molto (questo post è scritto a Giugno 2019). Ci sono diverse limitazioni e best practice da seguire per i custom button per evitare di avere problemi su App1.

Guida ufficiale

Una di queste limitazioni che non è indicata da nessuna parte ma che se ci pensi è plausibile è la gestione delle url all’interno di quelle pagine visualforce o lightning component che sono richiamate da custom button

La prima chiamata va a buon fine, ma poi se riproviamo a lanciare per la seconda volta l’azione, questa non viene eseguita.

Il problema che avevo io era che aprivo una pagina visualforce che apriva un lightning component con cui potevi fare qualcosa. Se volevi tornare indietro era presente un bottone “cancella” che era una chiamata al controller js che eseguiva l’istruzione

window.history.back();

La soluzione corretta è invece l’uso del navigate object

var navEvt = $A.get("e.force:navigateToSObject");
navEvt.setParams({
        "recordId": component.get("v.recordId"),
        "slideDevName": "detail"
});
navEvt.fire();

Guida Navigate Object

Guida Navigation

Trailhead Navigation

Aura specification