Как в неуправляемой форме справочника заполнить реквизит формы?
Есть справочник, у есть три важные реквизита значения большего тиз них надо выводить в фрму списка. Путался вывести добавиив колонку с типом поле ввода. Примерно так:[1C-CODE]
Процедура ПриОткрытии()
Построитель=Новый ПостроительОтчета;
Построитель.ИсточникДанных=Новый ОписаниеИсточникаДанных(СправочникСписок);
Выборка=Построитель.Результат.Выбрать();
Пока Выборка.Следующий() Цикл
Если Не ПустаяСтрока(Выборка.Ссылка.НомерПоКаталогу2) Тогда
ЭлементыФормы.СправочникСписок.Колонки.Колонка1.Данные = Выборка.Ссылка.НомерПоКаталогу2;
ИначеЕсли Не ПустаяСтрока(Выборка.Ссылка.НомерПоКаталогу1) Тогда
ЭлементыФормы.СправочникСписок.Колонки.Колонка1.Данные = Выборка.Ссылка.НомерПоКаталогу1;
Иначе
ЭлементыФормы.СправочникСписок.Колонки.Колонка1.Данные = Выборка.Ссылка.НомерПоКаталогу;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
[1C-CODE]
Колонка1 как раз та добавленная колонка. выдает ошибку. Похоже я не могу спозиционироваться на строке справочника (СправочникСписок) но как это сделать?
Процедура ПриОткрытии()
Построитель=Новый ПостроительОтчета;
Построитель.ИсточникДанных=Новый ОписаниеИсточникаДанных(СправочникСписок);
Выборка=Построитель.Результат.Выбрать();
Пока Выборка.Следующий() Цикл
Если Не ПустаяСтрока(Выборка.Ссылка.НомерПоКаталогу2) Тогда
ЭлементыФормы.СправочникСписок.Колонки.Колонка1.Данные = Выборка.Ссылка.НомерПоКаталогу2;
ИначеЕсли Не ПустаяСтрока(Выборка.Ссылка.НомерПоКаталогу1) Тогда
ЭлементыФормы.СправочникСписок.Колонки.Колонка1.Данные = Выборка.Ссылка.НомерПоКаталогу1;
Иначе
ЭлементыФормы.СправочникСписок.Колонки.Колонка1.Данные = Выборка.Ссылка.НомерПоКаталогу;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
[1C-CODE]
Колонка1 как раз та добавленная колонка. выдает ошибку. Похоже я не могу спозиционироваться на строке справочника (СправочникСписок) но как это сделать?
По теме из базы знаний
Ответы
В избранное
Подписаться на ответы
Сортировка:
Древо развёрнутое
Свернуть все
(15) DJDUH, Окончательный алгоритм
1)На форме списка, у элемента "СправочникСписок" созадть колонку и назвать её "КакУгодно"
2)На форме списка, у элемента в событиях найти процедуру "ПриПолучанииДанных" и создать процедуру.
3)В модуле формы, у процедуры СправочникСписокПриПолученииДанных(Элемент, ОформленияСтрок) использовать следующий код
4) Радоваться.
Сам лично сейчас всё это проделал.
1)На форме списка, у элемента "СправочникСписок" созадть колонку и назвать её "КакУгодно"
2)На форме списка, у элемента в событиях найти процедуру "ПриПолучанииДанных" и создать процедуру.
3)В модуле формы, у процедуры СправочникСписокПриПолученииДанных(Элемент, ОформленияСтрок) использовать следующий код
Процедура СправочникСписокПриПолученииДанных(Элемент, ОформленияСтрок)
Для каждого ТекСтрока Из ОформленияСтрок Цикл
ТекСтрока.Ячейки.КакУгодно.Значение ="Мой реквизит";
ТекСтрока.Ячейки.КакУгодно.Текст="Мой реквизит";
КонецЦикла;
КонецПроцедуры
Показать4) Радоваться.
Сам лично сейчас всё это проделал.
В справочнике есть три реквизита , запоняются в форме элемента, в форму списка надо выводить значение большего из них.
Создавать доп. ревизит для вывода не хочу, хочу выводить значение большего в дополнительную колонку формы срписка.
Создавать доп. ревизит для вывода не хочу, хочу выводить значение большего в дополнительную колонку формы срписка.
(6) alw-1, зачем акцентировать внимание на том, где заполняются реквизиты справочника? Достаточно того что их 3. и они заполнены.
А так в форме списка, так же создаёте реквизит. Собственный, не привязанный к реквизиту справочника.
А так в форме списка, так же создаёте реквизит. Собственный, не привязанный к реквизиту справочника.
Процедура ДокументСписокПриПолученииДанных(Элемент, ОформленияСтрок)
Для каждого ТекСтрока Из ОформленияСтрок Цикл
Реквизит1 = ТекСтрока.ДанныеСтроки.Ссылка.реквизит1;
Реквизит2 = ТекСтрока.ДанныеСтроки.Ссылка.реквизит2;
Реквизит3 = ТекСтрока.ДанныеСтроки.Ссылка.реквизит3;
ТекСтрока.Ячейки.МойРевизит.Текст = Макс(Реквизит1,Реквизит2,Реквизит3);
КонецЦикла;
КонецПроцедуры
Показать
Я добавил колонку - Колонка1 , тип поле ввода,
Колонка1 - не запоняется.
Процедура СправочникСписокПриПолученииДанных(Элемент, ОформленияСтрок)
Для каждого ТекСтрока Из ОформленияСтрок Цикл
Реквизит1 = ТекСтрока.ДанныеСтроки.Ссылка.реквизит1;
Реквизит2 = ТекСтрока.ДанныеСтроки.Ссылка.реквизит2;
Реквизит3 = ТекСтрока.ДанныеСтроки.Ссылка.реквизит3;
ТекСтрока.Ячейки.Колонка1 = Макс(Реквизит1,Реквизит2,Реквизит3);
КонецЦикла;
КонецПроцедуры
ПоказатьКолонка1 - не запоняется.
(23) alw-1, Кроме ТекСтрока.Ячейки.Колонка1.Текст присвойте ещё и
ТекСтрока.Ячейки.Колонка1.Значение значение.
У меня в исходном коде в конфе так выглядит:
ну кроме названий)
ТекСтрока.Ячейки.Колонка1.Значение значение.
У меня в исходном коде в конфе так выглядит:
ТекСтрока.Ячейки.Колонка1.Значение = Макс(Реквизит1,Реквизит2,Реквизит3);
ТекСтрока.Ячейки.Колонка1.Текст = ТекСтрока.Ячейки.Колонка1.Значение;
ну кроме названий)
Вакансии
Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)