Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
21 ноя 2024, 23:30

Как записать в справочник?

Автор vobbl, 20 мая 2013, 17:31

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

vobbl

Огромное Спасибо! =) получилось!
Добавлено: 22 мая 2013, 15:38


А как теперь обратиться к табличке Адреса и телефоны? Нашёл в регистрах сведений объект "контактная информация" но на попытку записать туда чего-нибудь пишет - Не удалось записать! Контактная информация! Пробовал делать это менеджером записи.

Dethmontt

Точно так же, только заполнять нужно все измерения соответствующими им типами! в помощь Ctrl+F1
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

vobbl

Всё сделал, всё пашет, но есть маленькие косяки, которые мне никак не одолеть... =(
Хочу в табличке "Адреса и телефоны" записать ещё и Е-Мыл. Пишу:
МенеджерЗаписи = РегистрыСведений.КонтактнаяИнформация.СоздатьМенеджерЗаписи();
МенеджерЗаписи.Объект = Ссылка;
МенеджерЗаписи.Тип = Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты;
МенеджерЗаписи.Вид = Справочники.ВидыКонтактнойИнформации.НайтиПоКоду("00021");  // пробовал и по наименованию и по пустому "" - не получается
МенеджерЗаписи.Представление = НовыйОбъект.ЭлектроннаяПочта;  //тут сам адрес

в справочнике виды конт. информации про е-мейл пусто было, я создал запись "Адрес электронной почты" все-равно не обратиться никак.
а второй вопрос - Пол.
Вообще пол формируется так:
НовыйЭлемент.Пол = Перечисления.ПолФизическихЛиц.Мужской;
Я знаю, что наверное это один из самых ламерских вопросов, но как написать строку, чтобы он её понял. То есть нельзя же написать так:
а = "Перечисления.ПолФизическихЛиц.Мужской";
НовыйЭлемент.Пол = а;

Как-то можно преобразовать или что-то типа?

Dethmontt

1. Проверь что возвращает метод найтиПоКоду() - Пустую ссылку?

2. Не понятно зачем писать строку?! Тем более такую...
Но все же:
а = "Перечисление.ПолФизическихЛиц.Мужской";
НовыйЭлемент.Пол = ПредопределенноеЗначение(а);

Ну или
Пол="Мужской";
НовыйЭлемент.Пол = Перечисления.ПолФизическихЛиц[Пол];

Или
//0 - Мужской
//1 - Женский
Пол=1;
НовыйЭлемент.Пол = Перечисления.ПолФизическихЛиц.Получить(Пол);

Или
Пол = "Мужской";
НовыйЭлемент.Пол = ПредопределенноеЗначение("Перечисление.ПолФизическихЛиц."+Пол); //Этот метод кэшируется на клиенте до первой реструктуризации БД

Короче вариантов много...
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

vobbl

1. Не знаю - правильно ли это - я делаю на этой строке точку останова, а потом смотрю чему что равно. Так вот - МенеджерЗаписи.Вид = Справочники.ВидыКонтактнойИнформации.НайтиПоКоду("00021");
пишет неопределено.
А если вывести сообщением всё что после равно, пишет - Адрес электронной почты

2. предопределенноезначение не прокатило почему-то. Зато второй вариант получился =) Спасибо

Dethmontt

МенеджерЗаписи.Тип = Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты;
МояСсылка = Справочники.ВидыКонтактнойИнформации.НайтиПоКоду("00021");  // пробовал и по наименованию и по пустому "" - не получается
МенеджерЗаписи.Вид = МояСсылка; //ТОЧКУ ОСТАНОВА СТАВИШЬ ТУТ смотришь чему равно МояСсылка
МенеджерЗаписи.Представление = НовыйОбъект.ЭлектроннаяПочта;
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

vobbl

Если смотреть на выражение под точкой останова, то там справочник АдресПроживанияФизЛица, тип - СправочникСсылка.ВидыКонтактнойИнформации
Может картинка если вставится -

Dethmontt

Супер. значит все работает
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

vobbl

Не, не работает - е-мыл так и не записывается )=

Dethmontt

Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск