2011-12-21 3 views
2

Je veux ouvrir 2 rapports salesfroce en même temps en cliquant sur un champ de formule personnalisé. Je fonction de lien hypertexte dans mon champ de formule, mais dans ce que j'appelle ma page Visualforce et que je rediriger la méthode de la classe apexComment ouvrir plusieurs fenêtres en même temps dans Salesforce?

champ Formule:

 HYPERLINK("/apex/leadreport?website=" & Website, "Find Competitors in Database", "_blank") 

Apex Classe:

public PageReference redirectToLeadReport(){ 

    // Get the Results from 
    pageReference pg = new pageReference('https://ap1.salesforce.com/00O90000001wiUo?pv0='+websites ); 
    pg.setRedirect(true); 
    return pg; 
    } 

la page Visualforce:

<apex:page action="{!redirectToLeadReport}" controller="leadReportController" > 
    </apex:page> 

Si un corps conscient de cela pouvez-vous s'il vous plaît aider moi.

Merci, Kanupriya

Répondre

1

La seule façon que vous pouvez ouvrir deux fenêtres avec un lien est d'utiliser javascript, que vous ne serez pas en mesure de le faire (avec la facilité, le cas échéant) à partir d'un champ de formule . Cela dit, vous pouvez utiliser javascript lorsque votre page se charge Visualforce pour ouvrir ensuite l'autre fenêtre dont vous avez besoin:

window.onload = function() { 
    window.open("http://url-to-open"); 
} 

This page has some useful information on window.open.

Modifier

Je viens de faire quelques expériences en utilisant la suggestion de sorenkrabbe, et il ne fonctionne, le seul problème est que vous soit retrouvez avec un onglet supplémentaire pour le javascript si vous utilisez « _blank » comme la cible, ou laissez votre page actuelle si vous utilisez "_self" comme cible. Cela peut être résolu en utilisant window.close() pour fermer la fenêtre nouvellement ouverte pour le script:

HYPERLINK ("javascript: window.open ('http://www.google.com?q=window1') ; window.open ('http://www.google.com?q=window2'); window.close(); ", 'Ouvrir les fenêtres!', '_blank')

+1

Je dirais que je pourrais exécuter JS à partir d'un champ de formule en définissant une formule i avec: HYPERLINK ("javascript: window.open ('http://google.com?q=window1'); window.open ('http: // google .com? q = window2 '); "," Exécuter JS pour ouvrir deux fenêtres ") – sorenkrabbe

+0

Merci les gars, pour la réponse. J'utilise déjà cette option mais le problème avec ce "HYPERLINK (" javascript: window.open ('http://www.google.com?q=window1'); window.open ('http://www.google. com? q = window2 '); window.close(); ",' Ouvrir Windows! ',' _blank ')" est son nt prenant ma valeur de champ que je crée dynamiquement 2. J'aime: au lieu de window1 je veux utiliser mon champ personnalisé. –

+0

Vous ne pouvez pas simplement référencer vos champs dans la formule? –

Questions connexes