WIKI Programming Store — библиотека разработчика 1С, Python, Dynamics AX, Java, ML/AI
Подписывайся на наши новости и читай статьи в первых рядах!
Расширение механизма представлений под универсальный вывод иерархии подразделений
Сергей Ж
Кому полезно: любому, кто пишет отчеты в ЗУП 3.1
На данный момент веду разработку в ЗУП 3.1. В последнее время при разработке часто стал сталкиваться с необходимостью вывести в отчет или обработку иерархию подразделений в виде таблицы.
Чтобы не писать каждый раз новый запрос я решил расширить механизм представлений, с которым сталкивается каждый, кто пишет отчеты в ЗУП 3. Провел анализ кода и появилось понимание, что механизм представлений очень легко расширяется.
Механизм представлений запускается функцией: ЗарплатаКадрыОбщиеНаборыДанных.ЗаполнитьОбщиеИсточникиДанныхОтчета(Объект, ДополнительныеПоляПредставлений = Неопределено, ТолькоРазрешенные = Истина), где Объект – наш отчет.
Представления заменяются конкретными запросами в функции «ПолучитьЗапросПоПредставлению» модуля «ЗарплатаКадрыОбщиеНаборыДанныхРасширенный», ее то я и доработал.
Функция обрабатывает имена временных таблиц представлений и возвращает запрос с текстом и параметрами. На данный момент существуют следующие ключевые слова используемые в механизме представлений:
- ШтатноеРасписание. Пример применения: отчет «ИзменениеШтатногоРасписания».
- ТекущаяКадроваяРасстановка. Пример применения: отчет «ОрганизационнаяСтруктура».
- ФункциональныеОпцииОрганизаций.
- ФактическиеОтпускаСотрудников. Пример применения: отчет «ФактическиеОтпускаСотрудников».
- ПлановыеНачисленияСотрудников. Пример применения: отчет «КадроваяИсторияСотрудников».
- ПлановыеУдержанияСотрудников. Пример применения: отчет «ПлановыеУдержанияСотрудников».
- СтажиСотрудников. Пример применения: отчет «СтажиСотрудников».
- СвойстваСтатейФинансирования. Пример применения: отчет «СтатистикаПерсонала».
- БухучетЗарплатыСотрудников. Пример применения: отчет «НастройкиБухучета».
- ДанныеУчетаРабочегоВремениСотрудников.
- ДанныеУчетаВремениИСостоянийСотрудников. Пример применения: отчет «УнифицированнаяФормаТ13».
- ПлановоеВремя. Пример применения: отчет «СостоянияСотрудников».
- КадровыеДанныеФизическихЛиц. Пример применения: отчет «АнализВзносовВФонды».
- КадровыеДанныеСотрудников. Пример применения: отчет «КадроваяИсторияСотрудников».
- СотрудникиОрганизации. Пример применения: отчет «НастройкиБухучета».
- НачисленныеДоходыНДФЛ. Пример применения: отчет «НачисленныеДоходыВОтчетахПоНДФЛ».
- ТаблицаРегистра, СрезПоследних, СрезПервых. Пример применения: отчет «КадроваяИсторияСотрудников»
В нашем случае параметры будут "Только разрешенные" и "Уровень". Свою временную таблицу я решил назвать «Представления_ИерархияПодразделений». Добавляем формирование запроса внутрь проверок:
Чтобы получить динамически количество колонок, не прописывая в тексте запроса СКД каждую, в функции «ЗарплатаКадрыОбщиеНаборыДанных.ЗаменитьЗапросыКПредставлениямВиртуальныхТаблиц» добавляем код:
После выполнения процедуры:
В модуле же «ПР_ОбщегоНазначенияСервер» прописал следующие процедуры и функции:
Лайфхаки в 1С, которые ускоряют работу
Vladumir Ust.
В этой статье поделюсь полезными лайфхаками, которые ускоряют работу в 1С:Предприятие.
Уникальность строк динамического списка
Varluck
Раньше динамический список строился с отслеживанием уникальности строк по одной основной колонке. Сейчас с версии 8.3.14 можно отслеживать уникальность по нескольким полям.
Несколько способов работы с Excel в 1С
Vladumir Ust.
В этой статье расскажу о нескольких способах работы с таблицами Excel.
Для примера будем заполнять таблицу:
Используя заполненный файл Excel:
Разрешение конфликтов между пользователями при работе в одних объектах
Vladumir Ust.
Иногда возникает потребность заблокировать объект, чтобы во время работы с ним другой пользователь параллельно не смог его изменить. Это бывает необходимо, чтобы при записи не получить ошибку типа «Данные были изменены или удалены другим пользователем».
ChatGPT: экономия времени разработки или навязанный тренд
shap
Сейчас модно хвататься тем, как увеличиваешь свою эффективность при помощи ChatGPT. Хотя многих, напротив, пугает перспектива развития искусственного интеллекта как технологии, которая может отнять работу. С целью выяснить, кто же в данной ситуации прав, оптимисты или «всепропальщики», решил попробовать ChatGPTв деле и провести с ним некоторые эксперименты.
Я нагуглил задачку для собеседований и сначала попробовал решить их сам (без гугления ответа), затем путем гугления ответа, и в третий раз попросив написать программу ChatGPT.
Первая задача: напишите программу, которая проверяет, является ли число числом Армстронга. Число Армстронга — натуральное число, которое в данной системе счисления равно сумме своих цифр, возведённых в степень, равную количеству его цифр. Пример: 3**3 + 7**3 + 1**3 = 371
Мое решение на C# выглядело так:
Управляемые формы: как запросить у пользователя ввод произвольного значения без создания формы
Vladumir Ust.
На одном проекте пользователи любили заполнять табличные части документов в отдельных формах. Было несколько табличных частей и реквизитов. Задача состояла в том, чтобы при нажатии определенной кнопки, открывалась форма для заполнения некоторых реквизитов и табличных частей, а при нажатии на другую кнопку — открывалась другая форма с другими реквизитами и табличными частями и т.д.
Рассмотрим привычный вариант ввода таких значений, для примера возьмем заполнение таблицы значений.
Использование менеджера временных таблиц в СКД
Сергей Ж
Рассмотрим еще не получивший широкого распространения способ работы с внешними данным в СКД.
В процессе обсуждения работы с СКД выяснилось, что многие не знакомы со способом помещения туда временной таблицы, полученной предварительно.
Статья будет полезна разработчикам, знакомым с программным созданием СКД.
Отладка кода 1С: 5 полезных инструментов
Vladumir Ust.
В этой статье хочу показать несколько полезных инструментов при отладке кода в 1С, которые существенно облегчают жизнь 1С программисту. Инструменты являются встроенными в конфигуратор и помогают отлаживать программные модули, создаваемые в процессе разработки, отслеживать последовательность выполнения операторов встроенного языка и просматривать значения переменных.
Универсальный отчет в 1С сломался: исправляем ошибку
Nikita St
Однажды после обновления конфигурации 1С на проекте заказчика сломался вариант Универсального отчета. Сильно сломался — вообще не открывается, падает с ошибкой, нет возможности сбросить в стандартные настройки.
Поделюсь своим способом починки отчета. Сразу отмечу, что не претендую на самый верный вариант танцев с бубном при такой ошибке, но именно так мне удалось справится с задачей.
Как привязать набор данных в СКД по определенным полям
Vladumir Ust.
Расскажу про один из способов связывания наборов данных. Например, у нас есть набор данных, в котором есть некоторые поля, и к ним нужно добавить дополнительную информацию. Это может быть как запрос, так и внешний источник.
Вложенные схемы в 1С СКД: когда и для чего использовать, подробный разбор на примерах
Nikita An
Приветствую всех, кто попал на эту статью, сегодня мы разберем что такое вложенные схемы в системе компоновки данных «1С:Предприятия 8» и как их использовать. Если просто, то вложенные схемы — это такие же схемы компоновки данных, в которые можно передавать, в качестве параметров и отборов, значения из основной схемы компоновки данных. Ниже разберу несколько примеров, когда целесообразно использовать вложенные схемы для решения рабочих задач.
Пользуясь нашим сайтом, вы даёте согласие на использование cookies. Подробнее про политику конфиденциальности.
