Pugachev Sergey

Как связать несколько документов, создаваемых программно, если нет документа-основания?

Представим, что циклом мы обходим некую таблицу значений, на основании данных которой программно формируем целый пакет документов – например, заявок на расходование денежных средств. В данном случае, нам не подойдёт классический способ использования реквизита ДокументОснование, т.к. набор создаваемых документов не имеет никакого головного объекта. Вот некоторые способы решения задачи: 1. Связь через общий реквизит (например, пакет или идентификатор) Можно добавить в каждый документ реквизит, который будет идентифицировать этот пакет документов. Например, это может быть уникальный идентификатор (UUID), создаваемый для каждого пакета при генерации документов. Все документы в пакете будут иметь одно и то же значение этого реквизита, что позволит связать их между собой. Пошагово: 1. В каждом документе добавьте реквизит типа “Строка” (или другой подходящий тип), который будет хранить идентификатор пакета. 2. При программном создании документов создайте уникальный идентификатор и присвойте его каждому документу. В… Подробнее »Как связать несколько документов, создаваемых программно, если нет документа-основания?

Оптимизация запроса с помощью функции языка запросов «ВЫРАЗИТЬ»

Давайте представим ситуацию, когда из регистра накопления «ТоварыНаСкладах» нам необходимо выбрать регистратор, являющийся составным полем: А теперь представим себе запрос, в котором мы выбираем регистратор и два его подчиненных поля – «Номер» и «Дата»: Результатов выполнения запроса будет следующая таблица: Когда мы выбираем номер и дату, система начинает перебирать все таблицы, которые являются регистраторами – “Продажи”, “Поступления”, а также третий документ, который не влез на скриншот – “Перемещение”. Получается достаточно сложный запрос, когда мы пытаемся разыменовать (обратиться через точку) поле составного типа. Его сложную структуру можно отдельно посмотреть в консоли запросов, поддерживающей план выполнения запроса – там мы увидим запрос в виде SQL. Если же нам необходимы данные из регистра только лишь по документу “РеализацияТовара”, то мы можем с помощью функции “ВЫРАЗИТЬ” получать номер и дату только для нужного документа: В результате мы не будем… Подробнее »Оптимизация запроса с помощью функции языка запросов «ВЫРАЗИТЬ»

ERP 2.5.12 Ошибка “не указаны источники данных, необходимые для проверки дат запрета”

Для решения данной проблемы необходимо в процедуру общего модуля “ДатыЗапретаИзмененияПереопределяемый “ЗаполнитьИсточникиДанныхДляПроверкиЗапретаИзменения()” добавить следующий код: Можно реализовать с помощью расширения, добавив расширение процедуры с типом “ИзменениеИКонтроль”.

Приобретение услуг и прочих активов

Чем отличается этот документ от “Приобретения товаров и услуг”? И тем, и другим документом можно приобрети на организацию услугу. Однако, документ “Приобретение услуг и прочих активов” не заставляет вас использовать справочник “Номенклатура”: если добавление новой номенклатурной позиции у вас на предприятии является сложным процессом, да и в добавок завязанный на определенное ответственное лицо, то документ “ПУиПА” позволяет заполнить только содержание – номенклатура там отсутствует как класс. Второе отличие – данный документ не может быть введен на основании Заказа поставщику! Если внедрение регламентированного учета идет в параллель с опер. контуром, то нужно эту особенность иметь в виду. Третья особенность – данным документом можно сделать распределение на несколько документов-поступлений, причем как вручную (добавить несколько строк в табличную часть и в каждой отдельной строке указать нужную аналитику), так и через рабочее место “Распределить на документы основание”, и распределить… Подробнее »Приобретение услуг и прочих активов