Примеры работы с регистами сведений см. также в Шпаргалке по программированию для системы 1С:Предприятие 8.2 Оглавление 1. Как из регистра сведений «РасчетчикиЗарплатыОрганизации» получить в виде массива всех расчетчиков зарплаты определенного подразделения организации 2. Как добавить запись в непериодический независимый регистр сведений 3. Как считать содержимое непериодического независимого регистра сведений «СобственныеКонтрагенты» […]
Программисту 1C
Вопрос Как определить программно, существует ли у документа требуемый реквизит С давних времен в типовых конфигурациях для этого существовала специальная функция. В конфигурациях последних редакций эта функция стала более универсальной и кроме того стала неожиданно оригинальной, даже эстетически восхитительной. Так, на сегодня, в 2019 г., эта функция называется ЕстьРеквизитИлиСвойствоОбъекта и […]
Как программным путем отменить проведение документа в 1С v8? Рассмотрим на примере отмены проведения всех документов «ПриходныйОрдерНаТовары», на основании которых (в структуре подчиненности) нет ни одного проведенного документа. Для получения структуры подчиненных документов используется метод…
Вопрос Выбор принтера для быстрой непосредственной печати — как организовать в 1С:Предприятии. COM-соединение со службой WMI Ответ Обычно в 1С:Предприятии последовательность действий при печати документов бывает в двух вариантах: Вариант 1 – жмем на кнопку «печать», и на принтере сразу «вылезает» лист с распечатанным текстом. Вариант 2 – жмем на […]
Вопрос Как разбираться в больших запросах. Консоль запросов. Как посмотреть, чем заполнены временные таблицы в запросе? Ответ Довольно часто в типовых конфигурациях 1С встречаются очень большие сложные для восприятия запросы. Например, запрос автозаполнения документа «Начисление зарплаты» содержит в себе порядка 3000 строк. И это далеко не предел. В современных редакциях […]
Вопрос Как скопировать колонку таблицы значений. Ответ Допустим, нужно скопировать колонки «Документ» и «Дата» таблицы значений «тзТаблица1» в новую таблицу «тзТаблица2». Сделать это можно так: тзТаблица2 = Новый ТаблицаЗначений; тзТаблица2 = тзТаблица1.Скопировать(«Документ, Дата»); Немного изменим условие. Допустим, есть две разные таблицы и нужно только перенести (скопировать) одну колонку из одной […]
Вопрос Как в справочнике добавить кнопку, которая в одно нажатие отобрала бы элементы справочника с конкретным (заданным) значением реквизита? Ответ Для этого под кнопкой на форме списка справочника помещается примерно такая процедура: // Процедура выполняет отбор ячеек типа «Упаковка» и автоматически отключает иерархию // СправочникСписок — основной реквизит формы (см. […]
Вопрос Когда используется директива «ИМЕЮЩИЕ» в языке запросов 1С? Чем «ИМЕЮЩИЕ» отличается от условия «ГДЕ»? Ответ Отличие директивы «ИМЕЮЩИЕ» от условия «ГДЕ» состоит в том, что ее можно использовать для агрегатных функций. Обязательным условием при этом является использование группировки по остальным полям. Пример: «ВЫБРАТЬ | тбЗадания.Задание, | СУММА(тбЗадания.КоличествоИсполнителей) КАК КоличествоИсполнителей […]
Вопрос Создание колонки таблицы значений различных типов в 1С v8 Ответ При создании колонки таблицы значений в качестве типа можно передавать массив типов, и можно конкретный тип. Массив типов используется, когда нужно указать несколько различных типов для одной колонки. Для указания типов используется «общий объект» — «Описание типов». Поэтому сначала […]
Вопрос Как в 1С реализовать в диалоговой форме процент выполнения цикла, т.е. вывести ProgressBar (см. рисунок) Ответ Шаг первый. Размещаем в форме соответствующий элемент формы — см. меню конфигуратора «Форма — Вставить элемент управления…-Индикатор». Если проставить галочку «Отображать проценты», тогда, кроме собственно закрашивания прогрессбара, в дополнение, будут отображаться проценты числом. […]