В 1С 7.7 легко предоставить пользователю выбор из списка значений, или Таблицы значений. Но уважающий себя программист не будет пользоваться методом ТаблицаЗначений.ВыбратьСтроку(), так как стандартный диалог мягко говоря несимпатичен. Предлагаю класс для 1С++, который позволит использовать более удобный диалог выбора строки из таблицы значений.
Для вызова улучшенного диалога выбора строки в простейшем случае достаточно создать объект и указать, из какой таблицы выбирать. Но дополнительно можно указать видимость колонок, параметры отображения.
Пример использования класса:
// Создаем объект, передаем параметры
ВыборСтроки = СоздатьОбъект("ВыборСтроки");
ВыборСтроки.ПараметрыКолонки("КодТМЦ",,,,,,0);//_Идентификатор, _Тип, _Заголовок, _Ширина, _Формат, _Положение, _Видимость
ВыборСтроки.ПараметрыКолонки("Цена",,,,"Ч19.2",2,);
ВыборСтроки.ПараметрыКолонки("Остаток",,,,"Ч19.2",2,);
ВыборСтроки.ПараметрыКолонки("ОписаниеТовара",,"Описание товара");
ВыборСтроки.Данные = ТЗ;
ВыборСтроки.Заголовок = "Требуется выбрать строку";
//Начало выбора
Выбор = ВыборСтроки.ВыбратьСтроку();
Если Выбор = 0 Тогда
Возврат; //Пользователь отказался от выбора
КонецЕсли;
Сообщить(Выбор.КодТМЦ);
Сообщить(Выбор.ТМЦ);
Сообщить(Выбор.Цена);
Сообщить(Выбор.Остаток);
Класс является хороший примером использования формы и класса в одном флаконе.
а как это реализоватьв 1с 8.2 в управляемой форме, ТЗ формируется на сервере, а результат выбора из ТЗ надо поместить в поле формы.
(0) И.. зачем это всё надо ?
Методом выбрать строку..никто не пользуется, ибо это…не нужно совсем.
Смысл в классе, тоже не ясен.
(1) это клюшки
Тьфу блин, некрофилы.. 12 год
(3) Ёпрст,
В 7.7 «Выбрать строку» был совсем некузявый. А с классом можно было сделать свою форму с более симпатичным выбором, скрыть ненужные колонки и вообще облагородить.
Сейчас, понятное дело, 8.3 и все такое — смысла в этом нет. Даже не сразу вспомнил, зачем это все городил.
Скачал класс, а он выдает такое:
Как дальше жить? Деньги уплочены…