Регистрация  |  Вход

Как передать URL параметр в VisualForce страницу в Lightning Experience?

Изучаю как lightningStylesheets="true" меняет стандартные стили апекс-тегов в ВФ на лайтнинго-подобный вид, для этого создал Тэб для ВФ страницы и включил его в один из (стандартных) Lightning Эппов.

но как передать URL параметр в VisualForce страницу, открытой в Lightning Experience?

просто pageName?id=zzzzzzzzz - не работает

Изучаю как lightningStylesheets="true" меняет стандартные стили апекс-тегов в ВФ на лайтнинго-подобный вид, для этого создал Тэб для ВФ страницы и включил его в один из (стандартных) Lightning Эппов.

но как передать  URL параметр в VisualForce страницу, открытой в Lightning Experience?

просто [b][i]pageName?id=zzzzzzzzz[/i][/b] - не работает

есть идеи на этот счет???

использовать VisualForce страницы без "входящих" URL параметров фактически не возможно.

есть идеи на этот счет???

 использовать VisualForce страницы без "входящих" URL параметров фактически не возможно.

А просто открыть VF страницу по старинке через /apex/PageName?id=zzzzzzzzz
в Lightning Experience не получается?
Я так давно уже VF страницы в LE открываю напрямую и передают туда параметры и вроде никогда проблем не замечал.

А просто открыть VF страницу по старинке через /apex/PageName?id=zzzzzzzzz
в Lightning Experience не получается?
Я так давно уже VF страницы в LE открываю напрямую и передают туда параметры и вроде никогда проблем не замечал.

Вообще урл в лайтнинге это толи base64 encoded то ли что-то еще какая штуковина(делал сам, не помню правда ничего)

можно сделать new page reference и заэнкодить его, и добавить к one.app


но вообще vf страницы все также будут открываться, как раньше, только без шапки

Вообще урл в лайтнинге это толи base64 encoded то ли что-то еще какая штуковина(делал сам, не помню правда ничего)

можно сделать new page reference и заэнкодить его, и добавить к one.app


но вообще vf страницы все также будут открываться, как раньше, только без шапки

кстати вот походу один из вариантов base 64

Hi, i want to help you all with this problem.

I noticed the string after the "aloha#" in the URL just after you use the "global search" on Salesforce Lightning is just a Base64 encoded string, so i entered on a website (https://www.base64encode.org) and pasted that string (remember, after the aloha#) and decoded it, and founded this:

{"componentDef":"forceSearch:search","attributes":{"term":"SEARCH STRING","scopeMap":{"type":"TOP_RESULTS"},"context":{"disableSpellCorrection":false,"SEARCH_ACTIVITY":{"searchId":"df6707e4-b867-a197-925b-557d75cc18dc","startTime":1503500649656,"term":"SEARCH STRING"}}}}

Inmediatelly i gone into "Encode" section of website, and tryed the following string (notice i removed the searchId and startTime parameters):

{"componentDef":"forceSearch:search","attributes":{"term":"SEARCH STRING 2","scopeMap":{"type":"TOP_RESULTS"},"context":{"disableSpellCorrection":false,"SEARCH_ACTIVITY":{"term":"SEARCH STRING 2"}}}}

Then Base64 encoded it and pasted it after the "aloha#" (resulting url was something like: https://na30.lightning.force.com/one/one.app?source=aloha#THECOMPLETEBASE64ENCODEDSTRING).

And "voila"... Lightning Global Search working as Classic did...

Actually don't tryed on another parts of Lightning but i'm pretty sure it will behave the same.

https://success.salesforce.com/answers?id=9063A0000019OLKQA2

кстати вот походу один из вариантов base 64

[code]
Hi, i want to help you all with this problem.

I noticed the string after the "aloha#" in the URL just after you use the "global search" on Salesforce Lightning is just a Base64 encoded string, so i entered on a website (https://www.base64encode.org) and pasted that string (remember, after the aloha#) and decoded it, and founded this:

{"componentDef":"forceSearch:search","attributes":{"term":"SEARCH STRING","scopeMap":{"type":"TOP_RESULTS"},"context":{"disableSpellCorrection":false,"SEARCH_ACTIVITY":{"searchId":"df6707e4-b867-a197-925b-557d75cc18dc","startTime":1503500649656,"term":"SEARCH STRING"}}}}

Inmediatelly i gone into "Encode" section of website, and tryed the following string (notice i removed the searchId and startTime parameters):

{"componentDef":"forceSearch:search","attributes":{"term":"SEARCH STRING 2","scopeMap":{"type":"TOP_RESULTS"},"context":{"disableSpellCorrection":false,"SEARCH_ACTIVITY":{"term":"SEARCH STRING 2"}}}}

Then Base64 encoded it and pasted it after the "aloha#" (resulting url was something like:  https://na30.lightning.force.com/one/one.app?source=aloha#THECOMPLETEBASE64ENCODEDSTRING).

And "voila"... Lightning Global Search working as Classic did...

Actually don't tryed on another parts of Lightning but i'm pretty sure it will behave the same.
[/code]

https://success.salesforce.com/answers?id=9063A0000019OLKQA2

а тебе по идее нужен будет

{"componentDef":"one:alohaPage","attributes":{"address":"/apex/SearchOperator"}}

а тебе по идее нужен будет 

[code]{"componentDef":"one:alohaPage","attributes":{"address":"/apex/SearchOperator"}}
[/code]

Dmitry Shnyrev
А просто открыть VF страницу по старинке через /apex/PageName?id=zzzzzzzzz
в Lightning Experience не получается?

оказывается там (по крайней мере) два варианта открытия ВФ страницы в Лайтнинге:

(1) /apex/PageName?id=zzzzzzzzz - открывает голую страницу, параметры передаются. Пойдет для ПДФ страниц к примеру. Или нужно делать навигационные линки на странице, так как стандартной лайтнинг шапки там нет

(2) /lightning/n/PageTabName?id=zzzzzzzzz- а можно открыть и так, это будет VF page Tab - и тут УРЛ параметры исчезают и не передаются в контроллер. И обратите внимание! В УРЛ используется имя Тэба, а не страницы, что может быть не очевидным, если вы используете одинаковые имена для того и другого.


ok, буду дальше изучать вопрос

[quote="Dmitry Shnyrev"]А просто открыть VF страницу по старинке через /apex/PageName?id=zzzzzzzzz
в Lightning Experience не получается?[/quote]

оказывается там (по крайней мере) два варианта открытия ВФ страницы в Лайтнинге:

(1) [b]/apex/PageName?id=zzzzzzzzz[/b] - открывает голую страницу, параметры передаются. Пойдет для ПДФ страниц к примеру. Или нужно делать навигационные линки на странице, так как стандартной лайтнинг шапки там нет

(2) [b]/lightning/n/PageTabName?id=zzzzzzzzz[/b]- а можно открыть и так, это будет VF page Tab - и тут УРЛ параметры исчезают и не передаются в контроллер. И обратите внимание! В УРЛ используется имя Тэба, а не страницы, что может быть не очевидным, если вы используете одинаковые имена для того и другого.


ok, буду дальше изучать вопрос

/lightning/n/PageTabName?c__id=zzzzzzzzz
Вот так попробуй.

/lightning/n/PageTabName?c__id=zzzzzzzzz
Вот так попробуй.

DevNull
Вот так попробуй.

Попробовал.

?c__id=zzzzzzzzz - параметры не исчезают автоматически при загрузке Таба, но и не проваливаются до контроллера страницы, по крайней мере так их не получишь:

ApexPages.currentPage().getParameters().get('c__id');


может только как-то получить в контролере урл целиком и распарсить его

[quote="DevNull"]Вот так попробуй.[/quote]

Попробовал.

[i]?[b]c__[/b]id=zzzzzzzzz[/i] - параметры не исчезают автоматически при загрузке [b]Таба[/b], но и не проваливаются до контроллера страницы, по крайней мере так их не получишь:

ApexPages.currentPage().getParameters().get('c__id');


может только как-то получить в контролере урл целиком и распарсить его