Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
21 Янв 2018, 11:54
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Как получить значения элементов формы "ПриИзменении"?  (Прочитано 8440 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Opty

  • *
  • Сообщений: 32
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-05-06
  • Сайт: 
  • Профессия: Программист 8.1
Всем доброго времени суток! Я совсем совсем начинающий в 1С программер, пробую сделать первую программку по отчетности для друга, столкнулся с проблемой:

В модуле объекта Формы документа у меня стоит автозаполнение Магазина в зависимости от выбранного Продавца (выбираем Продавца - и поле Магазин должно автоматом заполниться по связи, которая в справочнике у Продавца стоит)

Цитировать
Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
    Магазин = Продавец.Магазин;
КонецПроцедуры

И это корректно отрабатывает. Но пытаюсь тоже самое сделать при изменении значения поля, чтобы было сразу видно, что изменение произошло:

Цитировать
Процедура ПродавецПриИзменении(Элемент)
    Магазин = Продавец.Магазин;
КонецПроцедуры

И получаю ошибку:

Цитировать
{Документ.Заказы.Форма.ФормаДокумента.Форма(4,12)}: Переменная не определена (Продавец)
Магазин = «?»Продавец.Магазин; (Проверка: Тонкий клиент)

Пробовал через shift+f9 с точкой останова понять что откуда вызвать, но кроме ЭЛЕМЕНТ ничего не получается, а в элементе необходимые значения отсутствуют.

Подскажите, пожалуйста, кто может!


Оффлайн Rasty

  • *****
  • Сообщений: 997
  • РЕПУТАЦИЯ: 141
  • КПД: 14%
  • Регистрация: 2015-03-25
    • Skype: alex1cbit
  • Сайт: 
  • Профессия: Программист 1С
Поставь точку на "Магазин = Продавец.Магазин" и посмотри что у тебя в "Продавец", судя по скринам, у тебя там пусто
Помогли - Скажи спасибо! Решил сам - поделись решением!
:)

Оффлайн herosmart

  • **
  • Сообщений: 54
  • РЕПУТАЦИЯ: 4
  • КПД: 7%
  • Регистрация: 2013-06-19
  • Сайт: 
  • Профессия: Ученик 1С
Если честно, непонятно, почему у Вас вообще поле магазин заполняется. Какой тип у реквизита Продавец? Если это справочник, а магазин - это реквизит этого справочника, то можно у поля Продавец свойство СвязиПараметровВыбора заполнить.

Оффлайн Opty

  • *
  • Сообщений: 32
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-05-06
  • Сайт: 
  • Профессия: Программист 8.1
Поставь точку на "Магазин = Продавец.Магазин" и посмотри что у тебя в "Продавец", судя по скринам, у тебя там пусто

Там действительно пусто


Вот я и не могу понять почему? Ведь при том же самом запросе ПриЗаписи Продавец выдает полную информацию.

А вот ПриИзменении я не могу понять что искать. Элемент и Элементы не выдают ответов, ТекущиеДанные вообще отсутствуют...
Добавлено: 07 Май 2015, 12:15

Если честно, непонятно, почему у Вас вообще поле магазин заполняется. Какой тип у реквизита Продавец? Если это справочник, а магазин - это реквизит этого справочника, то можно у поля Продавец свойство СвязиПараметровВыбора заполнить.

Есть два справочника - Продавцы и Магазины
http://dl2.joxi.net/drive/0004/0543/291359/150507/4c4d8819aa.jpg

У продавцов реквизит Магазин является ссылкой на справочник Магазины


Логично, что в форме документа Заказ, выбирая продавца, можно автоматически получить данные Магазина, в котором Продавец работает. Вот при сохранении такая процедура срабатывает корректно, а ПриИзменении - нет.

Почитал про СвязиПараметровВыбора, попробовал и так и сяк, но видимо не к тому полю я это цепляю что ли....

Последний раз редактировалось: Opty; 07 Май 2015, 12:15. Причина: Объединение сообщений

Оффлайн herosmart

  • **
  • Сообщений: 54
  • РЕПУТАЦИЯ: 4
  • КПД: 7%
  • Регистрация: 2013-06-19
  • Сайт: 
  • Профессия: Ученик 1С
Поставь точку на "Магазин = Продавец.Магазин" и посмотри что у тебя в "Продавец", судя по скринам, у тебя там пусто

Там действительно пусто


Вот я и не могу понять почему? Ведь при том же самом запросе ПриЗаписи Продавец выдает полную информацию.

А вот ПриИзменении я не могу понять что искать. Элемент и Элементы не выдают ответов, ТекущиеДанные вообще отсутствуют...
Добавлено: 07 Май 2015, 12:15

Если честно, непонятно, почему у Вас вообще поле магазин заполняется. Какой тип у реквизита Продавец? Если это справочник, а магазин - это реквизит этого справочника, то можно у поля Продавец свойство СвязиПараметровВыбора заполнить.

Есть два справочника - Продавцы и Магазины
http://dl2.joxi.net/drive/0004/0543/291359/150507/4c4d8819aa.jpg

У продавцов реквизит Магазин является ссылкой на справочник Магазины


Логично, что в форме документа Заказ, выбирая продавца, можно автоматически получить данные Магазина, в котором Продавец работает. Вот при сохранении такая процедура срабатывает корректно, а ПриИзменении - нет.

Почитал про СвязиПараметровВыбора, попробовал и так и сяк, но видимо не к тому полю я это цепляю что ли....

Там Вам нужно сделать отбор по владельцу. Объект - Ваше поле, режим изменения - очищать. И все.

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
в ПродавецПриИзменении() надо написать
Объект.Магазин = ПолучитьМагазинПоПродавцуНаСервере(Объект.Продавец);

и добавить серверную НЕконтекстную функцию
Функция ПолучитьМагазинПоПродавцуНаСервере(Продавец)
Возврат Продавец.Магазин;
КонецФункции

ВСЕ!

"Магазин = Продавец.Магазин;" сработало потому что это выполняется в модуле объекта, в модуле формы - по другому.
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн Rasty

  • *****
  • Сообщений: 997
  • РЕПУТАЦИЯ: 141
  • КПД: 14%
  • Регистрация: 2015-03-25
    • Skype: alex1cbit
  • Сайт: 
  • Профессия: Программист 1С
Заполни поле продавец и будет тебе счастливое счастье. Какой тип у Продавец? Надеюсь не строка, число, булево...
Помогли - Скажи спасибо! Решил сам - поделись решением!
:)

Оффлайн Opty

  • *
  • Сообщений: 32
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-05-06
  • Сайт: 
  • Профессия: Программист 8.1
Заполни поле продавец и будет тебе счастливое счастье. Какой тип у Продавец? Надеюсь не строка, число, булево...
тип реквизита Продавец в документе заказы - СправочникСсылка.Продавцы
Добавлено: 07 Май 2015, 14:41

в ПродавецПриИзменении() надо написать
Объект.Магазин = ПолучитьМагазинПоПродавцуНаСервере(Объект.Продавец);

и добавить серверную НЕконтекстную функцию
Функция ПолучитьМагазинПоПродавцуНаСервере(Продавец)
Возврат Продавец.Магазин;
КонецФункции

ВСЕ!

"Магазин = Продавец.Магазин;" сработало потому что это выполняется в модуле объекта, в модуле формы - по другому.

Вах, спасибо, блестяще!!!!!!!! Я и спрашивал, просто наверное спрашивать пока еще не умею правильно, как получить данные нужные)


Теги:
 

Не работает метод Сдвинуть() по отношению к программно добавляемой колонке1С:Предприятие 8.3 (8.3.10.2561) Управление производственным предприятием, редакция 1.4 Приветствую, я добавляю программно свою колонку в методе ПриОткрытии() модуля формы, вот так

Автор InsiderРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 2
Просмотров: 359
Последний ответ 21 Сен 2017, 10:33
от Insider
получаю значение реквизита формы, дает значение 0

Автор mikel10Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 2
Просмотров: 3503
Последний ответ 12 Июл 2013, 15:35
от mikel10
Как обратиться к функции модуля формы из модуля Менеджера?

Автор TreeDogNightРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 6
Просмотров: 5154
Последний ответ 10 Июл 2014, 14:05
от cska-fanat-kz
Не открывается форма внешнего приложения из другой формы этого же приложения

Автор ktu78Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 4
Просмотров: 1129
Последний ответ 16 Окт 2015, 09:57
от ktu78
УТ 10.2 обычные формы. Как сформировать список выбора у поля выбора по КнопкаВыбора

Автор SvoyaSistemaРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 7
Просмотров: 480
Последний ответ 22 Июн 2017, 15:33
от oleg-x

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
99 Сообщений
AIFrame
65 Сообщений
alex0402
32 Сообщений
kiksi
26 Сообщений
pavl_vs
24 Сообщений
alexandr_ll
18 Сообщений
andron81_81
16 Сообщений
Norfolk
15 Сообщений
KOI8-R
14 Сообщений
MuI_I_Ika MuI_I_Ika
13 Сообщений

* Кто онлайн

  • Точка Гостей: 329
  • Точка Скрытых: 0
  • Точка Пользователей: 3
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal