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

Все те же тестовые задания.

Подскажите пожалуйста, как реализовать такое задание.
Суть в чем, надо при заполнении поля ввода и нажатия кнопки "update name" , заполнялась колонка "Date"

страница:

контроллер:


Есть подозрения что я повернул не туда дойдя до этого пункта.

Подскажите пожалуйста, как реализовать такое задание. 
Суть в чем, надо при заполнении поля ввода и нажатия кнопки "update name" , заполнялась колонка "Date"

[url=https://ibb.co/hp02fT][img]https://preview.ibb.co/bQwa0T/11111111111111.png[/img][/url]

страница:

[url=https://imgbb.com/][img]https://image.ibb.co/nR4Zuo/222222.png[/img][/url]

контроллер:

[url=https://imgbb.com/][img]https://image.ibb.co/czm8LT/33333.png[/img][/url]
Есть подозрения что я повернул не туда :) дойдя до этого пункта. 

А кнопка Update name вообще что делает?

А кнопка Update name вообще что делает?

Она просто есть на странице) Надо что бы при ее нажатии, выводились данные в столбец "date"

Она просто есть на странице) Надо что бы  при ее нажатии, выводились данные в столбец "date"

Значит надо повесить на кнопку action который предварительно надо добавить в контроллер, который будет заполнять поле Date__c в базе у всех объектов Pencil__c и потом обновлять страницу. Все!

Значит надо повесить на кнопку action который предварительно надо добавить в контроллер, который будет заполнять поле Date__c в базе у всех объектов Pencil__c и потом обновлять страницу. Все!

т.е , если я вот это сделаю, вводя в поле данные последующем нажатии кнопки, они выведутся в таблицу ??

т.е , если я вот это сделаю, вводя в поле данные последующем нажатии кнопки, они выведутся в таблицу ??

Надеюсь что да :)))))

Надеюсь что да :)))))

Это вы так говорите, в надежде что все получится и я от вас отстану ?:);)

Это вы так говорите, в надежде что все получится и я от вас отстану ?:);)

Ну на ближайшие месяца 3 может и отстанете если все-таки хотите стать Salesforce программистом

Открываем вот эти две брошурки
https://resources.docs.salesforce.com/sfdc/pdf/salesforce_apex_language_reference.pdf
https://resources.docs.salesforce.com/sfdc/pdf/salesforce_pages_developers_guide.pdf
и изучаем от корки до корки.

Тестовое задание садимся делать только после усвоения материала

Ну на ближайшие месяца 3 может и отстанете если все-таки хотите стать Salesforce программистом :)

Открываем вот эти две брошурки
https://resources.docs.salesforce.com/sfdc/pdf/salesforce_apex_language_reference.pdf
https://resources.docs.salesforce.com/sfdc/pdf/salesforce_pages_developers_guide.pdf
и изучаем от корки до корки.

Тестовое задание садимся делать только после усвоения материала :) 


Еще раз доброй ночи. Не могу успокоиться, все сижу колдую. Что я в этот раз не так сделал? Ну кроме того что не прочитал все от корки до корки. HELP.
Страничка.

Контроллер.

Ошибка.

Где я в коде накосил ??

Еще раз доброй ночи. Не могу успокоиться, все сижу колдую. Что я в этот раз не так сделал? Ну кроме того что не прочитал все от корки до корки. HELP.
Страничка.
[url=https://imgbb.com/][img]https://image.ibb.co/gv1sX8/00000000.png[/img][/url]
Контроллер.
[url=https://imgbb.com/][img]https://image.ibb.co/iQFEeo/99999999999.png[/img][/url]
Ошибка.
[url=https://imgbb.com/][img]https://image.ibb.co/noV85T/88888888888.png[/img][/url]

:( :( :(

Где я в коде накосил ?? 


Для того чтобы узнать где ошибка надо открыть Developer Console и запустить страницу еще раз. В консоли появится файл с логом внизу которого будет stacktrace ошибки с точным указанием номера строки. Так ты узнаешь где ты в коде накосил

Для того чтобы узнать где ошибка надо открыть Developer Console и запустить страницу еще раз. В консоли появится файл с логом внизу которого будет stacktrace ошибки с точным указанием номера строки. Так ты узнаешь где ты в коде накосил :) 

Dmitry Shnyrev
Ну на ближайшие месяца 3 может и отстанете если все-таки хотите стать Salesforce программистом

А самое смешное, что потом и ассесменты на лычки так сдаются.
Потому что лычку и рейт хотят, а читать доки для получения знаний было "некогда", т.к. работали на проекте или ещё чем-то занимались.

[quote="Dmitry Shnyrev"]Ну на ближайшие месяца 3 может и отстанете если все-таки хотите стать Salesforce программистом [/quote]

А самое смешное, что потом и ассесменты на лычки так сдаются.
Потому что лычку и рейт хотят, а читать доки для получения знаний было "некогда", т.к. работали на проекте или ещё чем-то занимались.

Developer
Потому что лычку и рейт хотят, а читать доки для получения знаний было "некогда", т.к. работали на проекте или ещё чем-то занимались.

Если работали на проекте - то должен быть опыт, опыт важнее всяких badge и прочей чепухи. Ну и смотря, что на ассесменте спрашивают: 80% - это теория которая нахер не нужна в реальной жизни. Человеки, гуру теоретических знаний, могут завалить проект только из-за отсутствия опыта, они пытаются применить теоретические best-practice там где они не нужны, потому что это сильный overhead. Пример - мой текущий проект, куда напихали всего, думали что будет легко это маштабировать, а на деле оказалось ЙУХ

PS: человек который создал эту тему, тебе совет пройти трейлхеды, который уже упоминались на форуме. Если лень - поищи по форуму и копипасти код, тут таких тем уже наверное штук 30 с этими карандашами

[quote="Developer"]Потому что лычку и рейт хотят, а читать доки для получения знаний было "некогда", т.к. работали на проекте или ещё чем-то занимались.[/quote]
Если работали на проекте - то должен быть опыт, опыт важнее всяких badge и прочей чепухи. Ну и смотря, что на ассесменте спрашивают: 80% - это теория которая нахер не нужна в реальной жизни. Человеки, гуру теоретических знаний, могут завалить проект только из-за отсутствия опыта, они пытаются применить теоретические best-practice там где они не нужны, потому что это сильный overhead. Пример - мой текущий проект, куда напихали всего, думали что будет легко это маштабировать, а на деле оказалось ЙУХ :)

PS: человек который создал эту тему, тебе совет пройти трейлхеды, который уже упоминались на форуме. Если лень - поищи по форуму и копипасти код, тут таких тем уже наверное штук 30 с этими карандашами

Maxim Elets
Если работали на проекте - то должен быть опыт, опыт важнее всяких badge и прочей чепухи. Ну и смотря, что на ассесменте спрашивают: 80% - это теория которая нахер не нужна в реальной жизни

Они могли сидеть на проекте и писать юнит тесты как джуны, а потом будут считать себя мидлами только из-за сроков :D

[quote="Maxim Elets"]Если работали на проекте - то должен быть опыт, опыт важнее всяких badge и прочей чепухи. Ну и смотря, что на ассесменте спрашивают: 80% - это теория которая нахер не нужна в реальной жизни[/quote]

Они могли сидеть на проекте и писать юнит тесты как джуны, а потом будут считать себя мидлами только из-за сроков :D

Developer
Они могли сидеть на проекте и писать юнит тесты как джуны, а потом будут считать себя мидлами только из-за сроков

Тесты тоже можно по разному писать Я тут Dmitry Shnyrev приводил пример теста в несколько тысяч строк(по-моему 4).
Ну и писать тесты - это опыт, которого никогда не будет читая одни книжки)

[quote="Developer"]Они могли сидеть на проекте и писать юнит тесты как джуны, а потом будут считать себя мидлами только из-за сроков [/quote]
Тесты тоже можно по разному писать :) Я тут Dmitry Shnyrev приводил пример теста в несколько тысяч строк(по-моему 4).
Ну и писать тесты - это опыт, которого никогда не будет читая одни книжки)

Maxim Elets
Тесты тоже можно по разному писать Я тут Dmitry Shnyrev приводил пример теста в несколько тысяч строк(по-моему 4).
Ну и писать тесты - это опыт, которого никогда не будет читая одни книжки)

Никогда не видел крутых тестов от джунов, а вырвиглазные копипасты с разных блогов видел и корону видел аля "я давно уже мидл/сеньор только на ассесмент не пойду, сказать нечего".
п.с. признаю, что на ассесментах бывает куча мусора, которая на практике может за долгие годы не встретиться и самого таким валили фактически, но больше я вижу просто пустышек, которые хотят что-то просто так, не имея нужного скила - достаточно просто их код глянуть и даже не спрашивать.

[quote="Maxim Elets"]Тесты тоже можно по разному писать Я тут Dmitry Shnyrev приводил пример теста в несколько тысяч строк(по-моему 4).
Ну и писать тесты - это опыт, которого никогда не будет читая одни книжки)[/quote]

Никогда не видел крутых тестов от джунов, а вырвиглазные копипасты с разных блогов видел и корону видел аля "я давно уже мидл/сеньор только на ассесмент не пойду, сказать нечего".
п.с. признаю, что на ассесментах бывает куча мусора, которая на практике может за долгие годы не встретиться и самого таким валили фактически, но больше я вижу просто пустышек, которые хотят что-то просто так, не имея нужного скила - достаточно просто их код глянуть и даже не спрашивать.

Developer
Никогда не видел крутых тестов от джунов, а вырвиглазные копипасты с разных блогов видел и корону видел аля "я давно уже мидл/сеньор" только на ассесмент не пойду, сказать нечего.

джуны джунам - рознь. У одних есть бэкграунд в других языках программирования(пусть даже минимальный(минимум год), но это огромный плюс), другие вчера еще работали на заводе, собирали холодильники/телевизоры

Developer
но больше я вижу просто пустышек, которые хотят что-то просто так, не имея нужного скила - достаточно просто их код глянуть и даже не спрашивать.

таких выскочек очень легко ставить на место UPD: и я бы сказал - нужно

[quote="Developer"]Никогда не видел крутых тестов от джунов, а вырвиглазные копипасты с разных блогов видел и корону видел аля "я давно уже мидл/сеньор" только на ассесмент не пойду, сказать нечего. [/quote]
джуны джунам - рознь. У одних есть бэкграунд в других языках программирования(пусть даже минимальный(минимум год), но это огромный плюс), другие вчера еще работали на заводе, собирали холодильники/телевизоры

[quote="Developer"]но больше я вижу просто пустышек, которые хотят что-то просто так, не имея нужного скила - достаточно просто их код глянуть и даже не спрашивать.[/quote]
таких выскочек очень легко ставить на место :) UPD: и я бы сказал - нужно

Maxim Elets
джуны джунам - рознь. У одних есть бэкграунд в других языках программирования(пусть даже минимальный, но это огромный плюс)

Так я писал под впечатлением последних тем
Талантливых я сам видел и очень ценю таких людей. С ними приятно на проекте работать и хочется им помогать, чтобы были надёжными работниками, на которых можно рассчитывать.

[quote="Maxim Elets"]джуны джунам - рознь. У одних есть бэкграунд в других языках программирования(пусть даже минимальный, но это огромный плюс)[/quote]

Так я писал под впечатлением последних тем :)
Талантливых я сам видел и очень ценю таких людей. С ними приятно на проекте работать и хочется им помогать, чтобы были надёжными работниками, на которых можно рассчитывать.


Maxim Elets
таких выскочек очень легко ставить на место UPD: и я бы сказал - нужно

Не каждый любит/умеет говорить таким самоуверенным, что они нихрена не тянут на то, что претендуют)
Тут как в фильмах, где есть "хороший коп и злой коп", нужен злой коп для таких миссий :)

[quote="Maxim Elets"]таких выскочек очень легко ставить на место UPD: и я бы сказал - нужно[/quote]

Не каждый любит/умеет говорить таким самоуверенным, что они нихрена не тянут на то, что претендуют)
Тут как в фильмах, где есть "хороший коп и злой коп", нужен злой коп для таких миссий :)

Developer
Не каждый любит/умеет говорить таким самоуверенным, что они нихрена не тянут на то, что претендуют)
Тут как в фильмах, где есть "хороший коп и злой коп", нужен злой коп для таких миссий :)

;););) отличное сравнение :)

[quote="Developer"]Не каждый любит/умеет говорить таким самоуверенным, что они нихрена не тянут на то, что претендуют) 
Тут как в фильмах, где есть "хороший коп и злой коп", нужен злой коп для таких миссий :)[/quote]

;););) отличное сравнение :)

Взяли и засрали тему человека
А может человек к успеху идет!

Взяли и засрали тему человека :D 
А может человек к успеху идет!

Dmitry Shnyrev
Взяли и засрали тему человека
А может человек к успеху идет!

[quote="Dmitry Shnyrev"]Взяли и засрали тему человека :D 
А может человек к успеху идет![/quote]

[img]https://media1.tenor.com/images/ea96c313bbb74cc69abc861e21ee3098/tenor.gif[/img]

Ну а че, все же хотят работать

Ну а че, все же хотят работать

[img]https://habrastorage.org/storage2/217/7f4/52e/2177f452e2078fe80a3d2bbd924c91e9.gif[/img]

Кстати про Pencil'ы это у нас тестовое задание от VRP или SuccessCraft?
Я вот думаю может надо с них бабла попросить что мы им специалистов готовим?

Кстати про Pencil'ы это у нас тестовое задание от VRP или SuccessCraft?
Я вот думаю может надо с них бабла попросить что мы им специалистов готовим?

Dmitry Shnyrev
Ну а че, все же хотят работать

все хотят норм зарплату, работать никто не хочет я вот с радостью бы не работал за зарплату:)

PS: я уже отписывался, просто пройди trailhead, а если лень - поиск по форуму сделает тебя счастливым(-ой)

[quote="Dmitry Shnyrev"]Ну а че, все же хотят работать[/quote]
все хотят норм зарплату, работать никто не хочет :)  я вот с радостью бы не работал за зарплату:)

PS: я уже отписывался, просто пройди trailhead, а если лень - поиск по форуму сделает тебя счастливым(-ой) 

Maxim Elets
Dmitry Shnyrev
Ну а че, все же хотят работать

все хотят норм зарплату, работать никто не хочет я вот с радостью бы не работал за зарплату:)

PS: я уже отписывался, просто пройди trailhead, а если лень - поиск по форуму сделает тебя счастливым(-ой)

Попросил глянуть код... Развели тут пусть говорят))
4 день уже сижу долблю всю эту документацию, а скопипаситить чужие ошибки не хочу.
вот и прошу помощи.
как сказал один великий salesforce'щик
@ Dmitry Shnyrev
:)

[quote="Maxim Elets"][quote="Dmitry Shnyrev"]Ну а че, все же хотят работать[/quote]
все хотят норм зарплату, работать никто не хочет :)  я вот с радостью бы не работал за зарплату:)

PS: я уже отписывался, просто пройди trailhead, а если лень - поиск по форуму сделает тебя счастливым(-ой)[/quote]

Попросил глянуть код... Развели тут пусть говорят))
4 день уже сижу долблю всю эту документацию, а скопипаситить чужие ошибки не хочу.
вот и прошу помощи.
как сказал один великий salesforce'щик 
[url=https://ibb.co/nbt9Uo][img]https://preview.ibb.co/mxJMaT/323.png[/img][/url] @ Dmitry Shnyrev
:) :)

eteshnik
Maxim Elets
Dmitry Shnyrev
Ну а че, все же хотят работать

все хотят норм зарплату, работать никто не хочет я вот с радостью бы не работал за зарплату:)

PS: я уже отписывался, просто пройди trailhead, а если лень - поиск по форуму сделает тебя счастливым(-ой)

Попросил глянуть код... Развели тут пусть говорят))
4 день уже сижу долблю всю эту документацию, а скопипаситить чужие ошибки не хочу.
вот и прошу помощи.
как сказал один великий salesforce'щик
@ Dmitry Shnyrev
:)


там посыл был не про то что "появится человек и все объяснит", а про то что "появится человек и даст понять что надо изучить и куда глянуть"(что собственно было сделано )

eteshnik
Попросил глянуть код... Развели тут пусть говорят))

это да, мы тут как бабки у подъезда :)

[quote="eteshnik"][quote="Maxim Elets"][quote="Dmitry Shnyrev"]Ну а че, все же хотят работать[/quote]
все хотят норм зарплату, работать никто не хочет :)  я вот с радостью бы не работал за зарплату:)

PS: я уже отписывался, просто пройди trailhead, а если лень - поиск по форуму сделает тебя счастливым(-ой)[/quote]

Попросил глянуть код... Развели тут пусть говорят))
4 день уже сижу долблю всю эту документацию, а скопипаситить чужие ошибки не хочу.
вот и прошу помощи.
как сказал один великий salesforce'щик 
[url=https://ibb.co/nbt9Uo][img]https://preview.ibb.co/mxJMaT/323.png[/img][/url] @ Dmitry Shnyrev
:) :)[/quote]
там посыл был не про то что "появится человек и все объяснит", а про то что "появится человек и даст понять что надо изучить и куда глянуть"(что собственно было сделано [img]https://d1nhio0ox7pgb.cloudfront.net/_img/g_collection_png/standard/16x16/checkbox.png[/img])

[quote="eteshnik"]Попросил глянуть код... Развели тут пусть говорят)) [/quote]
это да, мы тут как бабки у подъезда :)

Дима - походу пора сделать тестовое и продавать его за н-денех :)

[b]Дима - походу пора сделать тестовое и продавать его за н-денех  :)[/b]

Dmitry Shnyrev
Я вот думаю может надо с них бабла попросить что мы им специалистов готовим?

Бабло надо с задающего вопросы брать

[quote="Dmitry Shnyrev"]Я вот думаю может надо с них бабла попросить что мы им специалистов готовим?

[/quote]
Бабло надо с задающего вопросы брать

Eugene Konstantinof
Бабло надо с задающего вопросы брать

Тогда на нём заработают и тут и на фирме, а гарантий успешного будущего не будет :)

[quote="Eugene Konstantinof"]Бабло надо с задающего вопросы брать[/quote]

Тогда на нём заработают и тут и на фирме, а гарантий успешного будущего не будет :)

Developer
Eugene Konstantinof
Бабло надо с задающего вопросы брать

Тогда на нём заработают и тут и на фирме, а гарантий успешного будущего не будет :)


Ну тут как сказать, на период обучения в него только вкладывают и не факт, что человек не умеющий в документацию останется работать:)

[quote="Developer"][quote="Eugene Konstantinof"]Бабло надо с задающего вопросы брать[/quote]

Тогда на нём заработают и тут и на фирме, а гарантий успешного будущего не будет :)[/quote]
Ну тут как сказать, на период обучения в него только вкладывают и не факт, что человек не умеющий в документацию останется работать:)

eteshnik
Еще раз доброй ночи. Не могу успокоиться, все сижу колдую. Что я в этот раз не так сделал? Ну кроме того что не прочитал все от корки до корки. HELP.
Страничка.

Контроллер.

Ошибка.

Где я в коде накосил ??

"List has no rows for assignment to SObject" -
Коротко об ошибке https://help.salesforce.com/articleView?id=000159853&type=1
Мне кажется, что ошибка возникает в конструкторе когда инициализируется NewScreen переменная.
Когда пользователь попадает на эту страницу точно в строке запроса есть параметр "Id"?

[quote="eteshnik"]Еще раз доброй ночи. Не могу успокоиться, все сижу колдую. Что я в этот раз не так сделал? Ну кроме того что не прочитал все от корки до корки. HELP.
Страничка.
[url=https://imgbb.com/][img]https://image.ibb.co/gv1sX8/00000000.png[/img][/url]
Контроллер.
[url=https://imgbb.com/][img]https://image.ibb.co/iQFEeo/99999999999.png[/img][/url]
Ошибка.
[url=https://imgbb.com/][img]https://image.ibb.co/noV85T/88888888888.png[/img][/url]

:( :( :(

Где я в коде накосил ??[/quote]

"List has no rows for assignment to SObject" -
Коротко об ошибке https://help.salesforce.com/articleView?id=000159853&type=1
Мне кажется, что ошибка возникает в конструкторе когда инициализируется NewScreen переменная.
Когда пользователь попадает на эту страницу точно в строке запроса есть параметр "Id"?

eteshnik
Еще раз доброй ночи. Не могу успокоиться, все сижу колдую. Что я в этот раз не так сделал? Ну кроме того что не прочитал все от корки до корки. HELP.
Страничка.

Контроллер.

Ошибка.

Где я в коде накосил ??

List has no rows for assignment... ошибка как правило происходит, когда пытаешься сделать query одной записи и сразу же присвоить эту запись к объекту(а не к листу). Как и происходит в NewScreen = [...]. С очень большой вероятностью ты не передал параметр в URL страницы, когда открываешь VF страницу. А если и передал, то id не правильный.

Лучше всего, если ты выкладываешь максимум информации в структурированном виде. В идеале:
Шаги для воспроизведения ошибки, вида:
1. Открываю URL x
2. Появляется страница(скриншот)
3. Нажимаю кнопку X.
4. Появляется ошибка(скриншот + текст).

Ожидаемое поведение:
Заполняется поле Date, текущей датой для каждой строки.

Реальное поведение:
Происходит ошибка.

Что пробовал:
1. Делал Х
2. Делал Y.

Нагуглил:
1. X - не помогло
2. Y - не помогло.

Когда это сделаешь, с большой вероятностью решишь ошибку сам. А если нет, то будет меньше оффтопа от других и больше помощи, т.к. будет видно, что ты действительно пытался решить проблему сам и у тебя просто не получилось.

[quote="eteshnik"]Еще раз доброй ночи. Не могу успокоиться, все сижу колдую. Что я в этот раз не так сделал? Ну кроме того что не прочитал все от корки до корки. HELP.
Страничка.
[url=https://imgbb.com/][img]https://image.ibb.co/gv1sX8/00000000.png[/img][/url]
Контроллер.
[url=https://imgbb.com/][img]https://image.ibb.co/iQFEeo/99999999999.png[/img][/url]
Ошибка.
[url=https://imgbb.com/][img]https://image.ibb.co/noV85T/88888888888.png[/img][/url]

:( :( :(

Где я в коде накосил ??[/quote]

[b]List has no rows for assignment...[/b] ошибка как правило происходит, когда пытаешься сделать query одной записи и сразу же присвоить эту запись к объекту(а не к листу). Как и происходит в NewScreen = [...]. С очень большой вероятностью ты не передал параметр в URL страницы, когда открываешь VF страницу. А если и передал, то id не правильный. 

Лучше всего, если ты выкладываешь максимум информации в структурированном виде. В идеале:
Шаги для воспроизведения ошибки, вида:
1. Открываю URL x
2. Появляется страница(скриншот)
3. Нажимаю кнопку X.
4. Появляется ошибка(скриншот + текст).

Ожидаемое поведение:
Заполняется поле Date, текущей датой для каждой строки.

Реальное поведение:
Происходит ошибка.

Что пробовал:
1. Делал Х
2. Делал Y.

Нагуглил:
1. X - не помогло
2. Y - не помогло.

Когда это сделаешь, с большой вероятностью решишь ошибку сам. А если нет, то будет меньше оффтопа от других и больше помощи, т.к. будет видно, что ты действительно пытался решить проблему сам и у тебя просто не получилось.

Dmitry Shnyrev
Для того чтобы узнать где ошибка надо открыть Developer Console и запустить страницу еще раз. В консоли появится файл с логом внизу которого будет stacktrace ошибки с точным указанием номера строки. Так ты узнаешь где ты в коде накосил

А ведь это был самый правильный комментарий
Человеку дали удочку, а не рыбку.

[quote="Dmitry Shnyrev"]Для того чтобы узнать где ошибка надо открыть Developer Console и запустить страницу еще раз. В консоли появится файл с логом внизу которого будет stacktrace ошибки с точным указанием номера строки. Так ты узнаешь где ты в коде накосил [/quote]

А ведь это был самый правильный комментарий :)
Человеку дали удочку, а не рыбку.

Developer
А ведь это был самый правильный комментарий

Я вот тоже удивляюсь. Там жеж в логах будет написано что
List has no rows for assignment в line таккой-то.
Такая-то line будет 100% "NewScreen = ...".
Остается только понять а почему так происходит.
Гуглим "List has no rows for assignment" и первая же ссылка
https://help.salesforce.com/articleView?id=000159853&type=1
подробно объясняет, что SOQL (то что находится в [SELECT ...]) может вернуть List - если запрос находит много объектов или ни одного. В Java/Apex нельзя присваивать переменным с одним типом другие типы (блин даже сформулировать сложно потому что за столько лет никогда про это не говорил - все и так это знают).
Значит ход мыслей дальше. Если возвращается List то может его присвоить переменной с типом List и посмотреть в логах что же там все таки возвращается (для этого можно использовать .size()) а также смотрим что же у нам возвращает вот эта магическая строка "Apexpages.currentpage().getparameters().get('Id')" потому что мы ее используем чтобы найти Pencil__c по Id.
Тадам вопрос - решен.
Проблема автора:
- непонимание кода - это не магия и каждая строка кода, каждый символ это четкая команда что сделать. В языках программирования нет магии. Это не алхимия что надо смешать разные ингредиенты и только потом узнать что получится. Надо сначала знать что должно получится и только потом это начинать делать.
- не дружим с гуглом/возможно есть проблема с английским. Сегодня любая ошибка гуглится на раз. Даже не надо переключаться на вторую страницу в гугле. Достаточно первых 3-х ссылок.
Для чего собственно и надо сначала пролапатить всю теорию. Не для того чтобы заучить наизусть, а чтобы знать что такой вопрос/момент есть и что он есть в документации.

[quote="Developer"]А ведь это был самый правильный комментарий  [/quote]
Я вот тоже удивляюсь. Там жеж в логах будет написано что
List has no rows for assignment в [b]line[/b] таккой-то.
Такая-то line будет 100% "NewScreen = ...".
Остается только понять а почему так происходит.
Гуглим "List has no rows for assignment" и первая же ссылка
https://help.salesforce.com/articleView?id=000159853&type=1
подробно объясняет, что SOQL (то что находится в [SELECT ...]) может вернуть List - если запрос находит много объектов или ни одного. В Java/Apex нельзя присваивать переменным с одним типом другие типы (блин даже сформулировать сложно потому что за столько лет никогда про это не говорил - все и так это знают).
Значит ход мыслей дальше. Если возвращается List то может его присвоить переменной с типом List и посмотреть в логах что же там все таки возвращается (для этого можно использовать .size()) а также смотрим что же у нам возвращает вот эта магическая строка "Apexpages.currentpage().getparameters().get('Id')" потому что мы ее используем чтобы найти Pencil__c по Id.
Тадам вопрос - решен.
Проблема автора:
- непонимание кода - это не магия и каждая строка кода, каждый символ это четкая команда что сделать. В языках программирования нет магии. Это не алхимия что надо смешать разные ингредиенты и только потом узнать что получится. Надо сначала знать что должно получится и только потом это начинать делать.
- не дружим с гуглом/возможно есть проблема с английским. Сегодня любая ошибка гуглится на раз. Даже не надо переключаться на вторую страницу в гугле. Достаточно первых 3-х ссылок.
Для чего собственно и надо сначала пролапатить всю теорию. Не для того чтобы заучить наизусть, а чтобы знать что такой вопрос/момент есть и что он есть в документации.

eteshnik
как сказал один великий salesforce'щик

О! Да!!! Отличное воспоминание про долбанных Jav'истов (чисто субъективное мнение). Я тогда был молод, кодил на PHP (кстати учился вообще без каких либо форумов и мчатов, тупо по бумажным книгам) но понимал что PHP не торт и с вожделением смотрел на Java разработчиков которые работали в крутых фирмах. Так вот со сколькими Java разрабами не общался НИКТО не мог сказать просто "вот открой вот эту книгу или изучи этот фреймворк или присмотрись вот к этой технологии". Ты, что, не царское это было дело!!! А про то чтобы вообще что-то про сам код спросить или тем более попросить что-то показать (как надо хотя бы hello world запустить) это вообще запретные темы. Я вообще до сих пор не знаю чем мля java программисты занимаются. Вот реально!!! Даже тему тут на форуму поднимал - ноль! В других языках все нормальные пацаны. Python - на секунду нагугливается чем можно заниматься, какие технологии использовать. Ruby on Rails пожалуйста. NodeJS или просто JS на фронте - все понятно и известно. Мля, как Java (которых раньше было больше всего) - хуй. Я только и знаю что есть Spring + Hibernate. Как был 10 лет назад так и есть. Да мне даже на протяжении многих лет не могли даже подсказать что "Spring+Hibernate" парень посмотри и будет тебе щасте. Узнал про них только когда уже начал работать SF разрабом и сходил на собеседование где мне четко сказали какие у них требования. Такое чувство что Java программисты кодят исключительно на чистой Java!!!

[quote="eteshnik"]как сказал один великий salesforce'щик [/quote]
О! Да!!! Отличное воспоминание про долбанных Jav'истов (чисто субъективное мнение). Я тогда был молод, кодил на PHP (кстати учился вообще без каких либо форумов и мчатов, тупо по бумажным книгам) но понимал что PHP не торт и с вожделением смотрел на Java разработчиков которые работали в крутых фирмах. Так вот со сколькими Java разрабами не общался НИКТО не мог сказать просто "вот открой вот эту книгу или изучи этот фреймворк или присмотрись вот к этой технологии". Ты, что, не царское это было дело!!! А про то чтобы вообще что-то про сам код спросить или тем более попросить что-то показать (как надо хотя бы hello world запустить) это вообще запретные темы. Я вообще до сих пор не знаю чем мля java программисты занимаются. Вот реально!!! Даже тему тут на форуму поднимал - ноль! В других языках все нормальные пацаны. Python - на секунду нагугливается чем можно заниматься, какие технологии использовать. Ruby on Rails пожалуйста. NodeJS или просто JS на фронте - все понятно и известно. Мля, как Java (которых раньше было больше всего) - хуй. Я только и знаю что есть Spring + Hibernate. Как был 10 лет назад так и есть. Да мне даже на протяжении многих лет не могли даже подсказать что "Spring+Hibernate" парень посмотри и будет тебе щасте. Узнал про них только когда уже начал работать SF разрабом и сходил на собеседование где мне четко сказали какие у них требования. Такое чувство что Java программисты кодят исключительно на чистой Java!!!

Вот кстати, eteshnik. Ты обижаешься что мы тут в штыки твои вопросы принимаем.
Смотри какой список требований мне написали на должность Junior Java программиста в далеком 2011 году.
И я не смог устроиться потому что не владел этим хотя бы режиме новичка.

Хотя на то собеседование я пришел со следующим готовым тестовым заданием.
Надо было поднять 2 java сервера - на одном SOAP API (Spring + Hibernate) а на втором Spring + SOAP Client в этому API. Но я пошел дальше и даже поднял рабочие сервера на Heroku, хотя можно было сдать просто исходники.
Мне тогда пожалели 600$ и отправили учить технологии из списка выше.

Так что лучше послушай опытных товарищей :)проходи Trailhead и читать pdf которые я скинул Иначе придется забыть про IT.

Вот кстати, eteshnik. Ты обижаешься что мы тут в штыки твои вопросы принимаем. 
Смотри какой список требований мне написали на должность Junior Java программиста в далеком 2011 году.
И я не смог устроиться потому что не владел этим хотя бы режиме новичка. 
[img]/pics/149/original_IMG_20120810_220814.jpg[/img]
Хотя на то собеседование я пришел со следующим готовым тестовым заданием.
Надо было поднять 2 java сервера - на одном SOAP API (Spring + Hibernate) а на втором Spring + SOAP Client в этому API. Но я пошел дальше и даже поднял рабочие сервера на Heroku, хотя можно было сдать просто исходники.
Мне тогда пожалели 600$ и отправили учить технологии из списка выше.

Так что лучше послушай опытных товарищей :)проходи Trailhead и читать pdf которые я скинул :) Иначе придется забыть про IT.