В платформе “1с предприятие 8.2″ появился такой замечательный объект как “динамический список“. Данный объект я часто использую в подборах, если не нужно делать сложные расчеты, а просто показать данные и выбрать.
Бывают такие ситуации, что список большой, более 10 позиций, и пользователю необходимо выбрать все строки. Стандартного способа как это сделать я не нашел.
Для решения это задачи я использовал объект “WSCript.Shell“.
В процессе реализации у меня получилось 2 варианта: Вариант №1
Определим кнопку “Выделить все строки” и в модуль обработчика добавим код:
С помощью данного кода выполняется нажатие клавиш “Ctrl + A“, т.е. “выделить все”.
Вариант №2
Вариант №1 не всегда срабатывал. Тогда данный код я переписал следующим образом:
Добавим реквизит формы “ПоследняяСтрокаСписка”
Для списка укажем свойство “Начальное отображение списка” = В конце списка
В процедуру “ПриОткрытии” добавим заполнение реквизита, определенного в пункте 1.
Определим кнопку “Выделить все строки” и в модуль обработчика добавим код:
С помощью данного кода выполняется нажатие клавиш “Shift + кнопка вверх“.
Хочу обратить внимание. Данное решение не будет работать на клиентах, которые запускаются на Линукс.
В специальном окне «Поля сводной таблицы», которое отображается при активизации сводной таблицы, можно включать и выключать измерения и ресурсы. Если оно не отображается, то щелкните правой кнопкой на ячейке сводной таблицы и в контекстном меню выберите пункт «Отображать поля».
У табличного документа есть свойство-коллекция ВстроенныеТаблицы, которое позволяет обращаться к сводным таблицам, расположенным на нем. Через эту коллекцию можно добавлять и удалять сводные таблицы при выполнении программы.
Самое главное свойство сводной таблицы — это ИсточникДанных, которое имеет тип РезультатЗапроса или ПостроительОтчета (см. ниже). Это свойство определяет, откуда сводная таблица будет черпать данные для отображения. При использовании результата запроса его итоги становятся ресурсами (отображаются в области данных), а группировочные поля, по которым они подсчитываются, становятся измерениями.
Следующий пример выбирает данные из регистра накопления Продажи, подсчитывает общее количество и сумму по каждому контрагенту (с учетом иерархии), номенклатуре (с учетом иерархии), периодам и странам. Результат запроса помещается в сводную таблицу для анализа:
На этой закладке можно указать, какие осуществляются связи между двумя и более наборами дан-ных, по каким параметрам и условиям.
1. «Источник связи» - указывается первый набор данных, от которого осуществляется связь
2. «Приемник связи» - набор данных, к которому осуществляется связь
3. «Выражение источник» - имя поля или выражение, по которому определяются значения ис-точника
4. «Выражение приемник» - имя поля или выражение на языке запросов, по которому определяются значения приемника
5. «Параметр» - имя параметра, в который помещается значение связи, может использоваться в запросе для набора данных приемника, при этом в этом параметры будут получаться данные источника соответствующие указанному значению приемника
6. «Список параметров» - указывает на допустимость использования списка параметров, очень полезно для условий использующих оператор «В»
7. «Условие связи» - перед назначением связи проверяется указанное условие и если данное выражение возвращает Истина, то связь источника и приемника устанавливается
8. «Начальное значение» - используется для указания начального значения источника связи, полезно, когда необходимо указать связь набора данных самого к себе.
На форме в табличное поле добавим Колонку (Имя - НачальноеСальдо, Данные - Пусто и все остальное тоже) и колонку КонечноеСальдо
Зайдем в свойства Табличного поля и в событиях определим процедуру при выводе строки: ДействиеПриВыводеСтроки
Генератор случайных чисел инициализируется начальным числом из параметра:
Последовательность случайных чисел для одного и того же начального числа будет одинакова.
При создании генератора случайных чисел можно не передавать ему начальное число. В этом случае он инициализируется временем работы операционной системы с момента старта.