База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как добавить телефон и email в справочник «Контрагенты» 1С и отобразить в списке › Ответ в теме: Как добавить телефон и email в справочник «Контрагенты» 1С и отобразить в списке
Владимир, добавить контактную информацию в справочник «Контрагенты» можно как вручную через стандартный интерфейс, так и программно. В типовых конфигурациях контактная информация хранится в табличной части «Контактная информация» справочника «Контрагенты» и связана с видами контактной информации из справочника «Виды контактной информации».
Программный пример добавления телефона и email к контрагенту приведён ниже. Важно, что в коде используется именно табличная часть «КонтактнаяИнформация» и поиск видов контактной информации по наименованию. Также показан пример добавления колонки с телефоном в динамический список контрагентов.
СИНХРОН-КОД: в вопросе упомянуто просто «добавить контактную информацию», а в финальном коде реализовано добавление телефона и email через табличную часть «КонтактнаяИнформация» и добавление колонки с телефоном в динамический список (ответ строю по финальному коду).
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
Выборка = Справочники.Контрагенты.Выбрать(); Контрагент = Неопределено; Пока Выборка.Следующий() Цикл Если Выборка.Наименование = "Боровик НПО" Тогда Контрагент = Выборка.Ссылка; Прервать; КонецЕсли; КонецЦикла; Если Контрагент = Неопределено Тогда Контрагент = Справочники.Контрагенты.СоздатьЭлемент(); Контрагент.Наименование = "Боровик НПО"; Контрагент.ЮридическоеЛицо = Истина; Контрагент.ИНН = "7707121221"; Контрагент.КПП = "770701001"; Контрагент.Записать(); КонецЕсли; КонтактнаяИнформация = Контрагент.КонтактнаяИнформация.Добавить(); ВидыКИВыборка = Справочники.ВидыКонтактнойИнформации.Выбрать(); КонтактнаяИнформация.Вид = Неопределено; Пока ВидыКИВыборка.Следующий() Цикл Если ВидыКИВыборка.Наименование = "Телефон" Тогда КонтактнаяИнформация.Вид = ВидыКИВыборка.Ссылка; Прервать; КонецЕсли; КонецЦикла; КонтактнаяИнформация.Значение = "+7 (495) 123-45-67"; КонтактнаяИнформация.Записать(); КонтактнаяИнформацияEmail = Контрагент.КонтактнаяИнформация.Добавить(); ВидыКИВыборка.Сбросить(); КонтактнаяИнформацияEmail.Вид = Неопределено; Пока ВидыКИВыборка.Следующий() Цикл Если ВидыКИВыборка.Наименование = "Email" Тогда КонтактнаяИнформацияEmail.Вид = ВидыКИВыборка.Ссылка; Прервать; КонецЕсли; КонецЦикла; КонтактнаяИнформацияEmail.Значение = "info@borovik.ru"; КонтактнаяИнформацияEmail.Записать(); Контрагент.Записать(); |
|
1 2 3 4 5 6 7 |
ИмяЭлементаДинамическогоСписка = "КонтрагентыСписок"; ПсевдонимВладельцаКИ = "Ссылка"; Элемент = Элементы.Добавить("КолонкаТелефон", Тип("ПолеФормы"), Элементы[ИмяЭлементаДинамическогоСписка]); ВидКИ = Справочники.ВидыКонтактнойИнформации.ПолучитьПоКоду("Телефон"); // заменено на рекомендованный метод поиска по коду Элемент.Заголовок = ВидКИ.Наименование; Элемент.ПутьКДанным = СтрШаблон("%1.%2.[%3]", ИмяЭлементаДинамическогоСписка, ПсевдонимВладельцаКИ, ВидКИ.Наименование); |