Koderion
5 subscribers
355 photos
437 links
Кодерион — платформа для специалистов 1С

🔹 Задачи и заказы на разработку
🔹 Вакансии для 1С-специалистов
🔹 Маркет готовых решений
🔹 Безопасные сделки с эскроу
🔹 AI-консультант по 1С

💡 Советы, задачи дня, новости из мира 1С

🌐 koderion.ru
Download Telegram
📝 Новая статья в блоге!

Лицензии 1С:Документооборот 2026: цены и окупаемость ЭДО

Актуальные цены лицензий 1С:Документооборот в 2026 году, расчёт окупаемости перехода с бумаги на ЭДО и реальные кейсы внедрения с цифрами экономии.

👉 Читать: https://koderion.ru/blog/litsenzii-1c-dokumentooborot-2026-okupaemost
🧩 Задача дня #71
[1С:ERP Управление предприятием 2.5]

Секрет, о котором молчат внедренцы: типовой отбор по «Партнёру» в списке заказов не покажет долг.

Нужно: получить ТОП-5 партнёров с максимальной просроченной задолженностью по выбранной организации на текущую дату. Используйте регистр РасчетыСКлиентами и измерение ДатаПлатежа.

💬 Пишите решения в комментариях!
🕐 Ответ, сегодня в 19:00
Koderion
🧩 Задача дня #71 [1С:ERP Управление предприятием 2.5] Секрет, о котором молчат внедренцы: типовой отбор по «Партнёру» в списке заказов не покажет долг. Нужно: получить ТОП-5 партнёров с максимальной просроченной задолженностью по выбранной организации на…
Решение задачи дня #71

Запрос = Новый Запрос;
Запрос.УстановитьПараметр("Орг", Организация);
Запрос.УстановитьПараметр("Дата", ТекущаяДатаСеанса());

Запрос.Текст =
"ВЫБРАТЬ ПЕРВЫЕ 5
| Ост.Партнер КАК Партнер,
| СУММА(ЕСТЬNULL(Ост.СуммаОстаток, 0)) КАК Долг
|ИЗ
| РегистрНакопления.РасчетыСКлиентами.Остатки(
| &Дата,
| Организация = &Орг
| И ДатаПлатежа < &Дата
| И ДатаПлатежа <> ДАТАВРЕМЯ(1, 1, 1)) КАК Ост
|СГРУППИРОВАТЬ ПО
| Ост.Партнер
|ИМЕЮЩИЕ
| СУММА(ЕСТЬNULL(Ост.СуммаОстаток, 0)) > 0
|УПОРЯДОЧИТЬ ПО
| Долг УБЫВ";

Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
Сообщить(Выборка.Партнер + ": " + Выборка.Долг);
КонецЦикла;


Почему так: виртуальная таблица.Остатки() с параметрами даёт срез на дату без ручных вычислений. Просрочка отсекается условием ДатаПлатежа < ТекущаяДата прямо в параметрах ВТ, это быстрее, чем фильтр в ГДЕ.

⚠️ Ошибки: ставят отбор в ГДЕ (виртуальная таблица сначала развернётся целиком), путают остаток с просрочкой, забывают исключить пустую ДатаПлатежа.
📅 Ближайшие дедлайны 1С

Сверьте свой календарь отчётности на июнь 2026:

1 июня, уведомление об исчисленных суммах НДФЛ (за 23, 31 мая) 📝
5 июня, уплата НДФЛ, удержанного с 23 по 31 мая 💸
25 июня, уведомление по НДФЛ (за 1, 22 июня) и страховым взносам за май 📊
30 июня, уплата страховых взносов за май и налога на прибыль (ежемесячный авансовый платёж) 💼

Не пропустите! koderion.ru
🧩 Задача дня #72
[1С:Управление торговлей 11.5]

Остатки склада запросом, делаем правильно

Менеджер просит проверять доступность товара перед записью ЗаказаКлиента. Нужно программно получить остаток конкретной номенклатуры на складе заказа на момент времени документа.

Напишите запрос к регистру ТоварыНаСкладах, который вернёт остаток по складу из шапки заказа и переданной номенклатуре (строка табличной части Товары).

💬 Пишите решения в комментариях!
🕐 Ответ, сегодня в 19:00
📚 День 1 из 5 · Git и CI/CD для 1С

🎬 Сегодня стартуем новый мини-курс. За 5 дней разберём: переезд с хранилища на Git, работу в EDT с веткованием, пакетную выгрузку конфигурации в файлы, сборку через Jenkins/GitLab CI и автотесты на Vanessa. Цель, чтобы вы перестали бояться слова «pipeline» и могли внедрить нормальный процесс у себя в команде.

Зачем это вам? Хранилище 1С, штука рабочая, но у неё один тупик: нет веток. Двое правят один объект, кто-то ждёт. Откатить релиз, боль. История захвата ≠ история изменений кода. На одном из проектов команда из 6 человек на ЗУП-доработках буквально стояла в очереди на захват общих модулей.

📄 Часть 1/2
Koderion
📚 День 1 из 5 · Git и CI/CD для 1С 🎬 Сегодня стартуем новый мини-курс. За 5 дней разберём: переезд с хранилища на Git, работу в EDT с веткованием, пакетную выгрузку конфигурации в файлы, сборку через Jenkins/GitLab CI и автотесты на Vanessa. Цель, чтобы вы…
Git решает это так: каждый разработчик работает локально, в своей ветке. Слияние, через merge/rebase. История, по файлам, а не по объектам конфигурации. Откат релиза, одна команда. Но чтобы это заработало для 1С, конфигурацию нужно сначала превратить в набор текстовых файлов. Этим занимается утилита пакетного режима, DESIGNER /DumpConfigToFiles.

👇 Код и домашка, ниже.

📄 Часть 2/2
// Пример: выгрузка конфигурации из хранилища в файлы для Git
// Запускается из CMD/bash, путь к 1cv8.exe подставьте свой

// 1. Подключаемся к хранилищу и обновляем ИБ до последней версии
"C:\Program Files\1cv8\8.3.24.1234\bin\1cv8.exe" DESIGNER ^
/F "C:\Bases\DevBase" ^
/N "Администратор" /P "" ^
/ConfigurationRepositoryF "\\server\repo\ERP" ^
/ConfigurationRepositoryN "ivanov" ^
/ConfigurationRepositoryP "***" ^
/ConfigurationRepositoryUpdateCfg -force ^
/Out "C:\Logs\update.log"

// 2. Выгружаем конфигурацию в дерево XML-файлов
"C:\Program Files\1cv8\8.3.24.1234\bin\1cv8.exe" DESIGNER ^
/F "C:\Bases\DevBase" ^
/N "Администратор" /P "" ^
/DumpConfigToFiles "C:\Git\erp-project\src\cf" ^
/Out "C:\Logs\dump.log"

// 3. Дальше — обычный git
// cd C:\Git\erp-project
// git add .
// git commit -m "Выгрузка из хранилища, версия 152"
// git push origin main


⚠️ Грабли: не коммитьте папку с самой ИБ (1Cv8.1CD) и временные файлы, добавьте .gitignore с *.1CD, *.log, *.cfl. Иначе репозиторий распухнет до гигабайтов за неделю.

📝 Домашка (20-30 мин):
1. Создайте учебную ИБ, подключите к ней любое демо-хранилище (можно поднять локально).
2. Установите Git, создайте пустой репозиторий в отдельной папке.
3. Выгрузите конфигурацию через /DumpConfigToFiles в подпапку src/cf.
4. Сделайте первый коммит. Посмотрите git log и git status.
5. Внесите мелкую правку в любой общий модуль, снова выгрузите, сделайте второй коммит, оцените git diff.

🔜 Завтра: EDT и Git, работа в IDE без танцев с бубном.

🧑‍💻 koderion.ru
3 ошибки в работе с регистром накопления, из-за которых сходят с ума остатки
💻 Код-ревью

Процедура ОбработкаПроведения(Отказ, Режим)
Движения.ТоварыНаСкладах.Записывать = Истина;
Движения.ТоварыНаСкладах.Очистить();

Для Каждого СтрокаТЧ Из Товары Цикл
Движение = Движения.ТоварыНаСкладах.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Расход;
Движение.Период = Дата;
Движение.Склад = Склад;
Движение.Номенклатура = СтрокаТЧ.Номенклатура;
Движение.Количество = СтрокаТЧ.Количество;
КонецЦикла;
КонецПроцедуры


📝 РАЗБОР:
• Записывать = Истина, без этого движения не уйдут в БД при автозаписи
• Очистить(), страхуемся от задвоения при перепроведении
• Период = Дата, привязка к моменту документа
• ВидДвиженияНакопления.Расход, списание остатков

ОПТИМИЗАЦИЯ:
• Сворачивай ТЧ запросом по Номенклатуре+Складу перед циклом, меньше записей в регистре
• Контроль отрицательных остатков делай ОДНИМ запросом после записи, а не в цикле

koderion.ru
🧠 1С-факт дня

Кейс из практики: клиент попросил «мобильное приложение для кладовщиков на складе». Бюджет на нативную разработку, космос. В итоге собрали на Мобильной платформе 1С за неделю, та же конфигурация запустилась на Android-ТСД, iPad руководителя и планшете на Windows.

Один код, три ОС, без переписывания под каждую платформу.

Перед заказом нативной разработки проверьте: возможно, задача решается Мобильной платформой 1С в разы дешевле и быстрее.

koderion.ru
🧩 Задача дня #73
[1С:Зарплата и управление персоналом 3.1]

⚠️ Этот запрос угробит отчёт по ФОТ на проде!

Бухгалтер просит: вывести сумму начислений по каждому подразделению за месяц. Стажёр написал запрос к регистру накопления Начисления, но в отчёте у одних подразделений сумма верная, а у других, NULL вместо нуля, и итог едет.

Вопрос: как корректно получить суммы с группировкой по подразделению, чтобы пустых значений не было?

💬 Пишите решения в комментариях!
🕐 Ответ, сегодня в 19:00
📚 День 2 из 5 · Git и CI/CD для 1С

👋 Вчера разобрали, чем Git принципиально отличается от хранилища и зачем вообще переезжать. Сегодня, самое практичное: как реально работать в EDT с Git, не сломав себе проект на третий день.

EDT из коробки умеет в Git, отдельный плагин ставить не надо. Создаёте проект из конфигурации, делаете правый клик → Team → Share Project → Git. И всё, ваш проект уже под версионным контролем. Дальше живёте по классической схеме: ветка под задачу, коммиты по ходу работы, merge в основную ветку через pull request.

Главное отличие от хранилища, вы коммитите не «захват объекта», а изменения файлов на диске. EDT раскладывает конфигурацию в текстовые xml/bsl, и Git видит каждую правку построчно. У одного клиента после переезда команда из 6 человек впервые за год увидела нормальный diff по модулю, раньше в хранилище было «кто-то что-то поменял».

👇 Код и домашка ниже.
&НаСервере
Процедура ПолучитьСписокЗаказов(ДатаНачала, ДатаОкончания)

// Пример серверной процедуры — её мы будем коммитить в Git
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ЗаказКлиента.Ссылка КАК Ссылка,
| ЗаказКлиента.Номер КАК Номер,
| ЗаказКлиента.Дата КАК Дата,
| ЗаказКлиента.Партнер КАК Партнер,
| ЗаказКлиента.СуммаДокумента КАК Сумма
|ИЗ
| Документ.ЗаказКлиента КАК ЗаказКлиента
|ГДЕ
| ЗаказКлиента.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания
| И НЕ ЗаказКлиента.ПометкаУдаления";

Запрос.УстановитьПараметр("ДатаНачала", ДатаНачала);
Запрос.УстановитьПараметр("ДатаОкончания", КонецДня(ДатаОкончания));

Результат = Запрос.Выполнить().Выгрузить();

Для Каждого СтрокаЗаказа Из Результат Цикл
Сообщить("Заказ № " + СтрокаЗаказа.Номер);
КонецЦикла;

КонецПроцедуры


⚠️ Грабли: не коммитьте папку.settings и сгенерированные DT-файлы, закройте их через.gitignore сразу. Иначе репозиторий распухнет, а в diff будет каша из служебных метаданных.

📝 Домашка (20-30 мин):
1. Создайте в EDT проект из учебной конфигурации.
2. Share Project → Git, сделайте initial commit.
3. Создайте ветку feature/отчет-заказы, добавьте процедуру выше в общий модуль.
4. Закоммитьте, переключитесь на main, посмотрите diff между ветками.
5. Сделайте merge ветки в main.

🔜 Завтра: Gitsync, мост между хранилищем и Git для гибридных команд.

🧑‍💻 koderion.ru
Итоги розыгрыша недели

К сожалению, на этой неделе не было участников 😔

Новый розыгрыш, в понедельник! Нажимай кнопку «Хочу участвовать» под постом.

koderion.ru
📅 Ближайшие дедлайны 1С

Бухгалтер, проверь календарь, впереди жаркая неделя 👇

🔹 2 июня, уведомление по ЕНП за май (НДФЛ, страховые взносы) 📝
🔹 5 июня, уплата НДФЛ, удержанного с 23 по 31 мая 💸
🔹 15 июня, страховые взносы за май + взносы на травматизм в СФР 🏥
🔹 28 июня, авансовый платёж по налогу на прибыль за май 📊

Не пропустите! koderion.ru
📝 Новая статья в блоге!

6 мифов о ФОТ при консолидации холдинга в 1С:ERP

Разбираем 6 опасных мифов о фонде оплаты труда при консолидации холдинга в 1С:ERP. Реальные кейсы, код, формулы и практические советы для финдира и ИТ-директора.

👉 Читать: https://koderion.ru/blog/6-mifov-o-fot-pri-konsolidacii-holdinga-v-1c-erp
🧩 Задача дня #74
[1С:Платформа 8.3 (общие механизмы)]

Почему регламентное задание выполняется дважды на кластере из двух серверов?

Есть регламентное задание «ОбновлениеКурсовВалют», которое дёргает HTTP-сервис ЦБ. На проде с двумя рабочими серверами оно иногда срабатывает параллельно и пишет дубли в регистр сведений.

Как защититься от повторного запуска средствами платформы 8.3?

💬 Пишите решения в комментариях!
🕐 Ответ, сегодня в 19:00
📝 Новая статья в блоге!

Сколько стоит ошибка в декларации НДС в 1С: расчёт штрафов

Реальная стоимость ошибок в декларации НДС в 1С: формулы расчёта штрафов и пени, методика аудита и расчёт ROI от превентивной проверки учёта.

👉 Читать: https://koderion.ru/blog/skolko-stoit-oshibka-v-deklaracii-nds-v-1c
📝 Новая статья в блоге!

10 проверок НДФЛ и взносов в 1С:ЗУП перед 6-НДФЛ: 7 шагов

Пошаговая методика из 7 шагов и 10 проверок учёта НДФЛ и страховых взносов в 1С:ЗУП перед сдачей 6-НДФЛ: отчёты, запросы, типовые ошибки.

👉 Читать: https://koderion.ru/blog/10-proverok-ndfl-vznosov-1c-zup-pered-6-ndfl
📝 Новая статья в блоге!

8 фишек БДДС в 1С:ERP для контроля кассовых разрывов и НДС

Восемь практических приёмов работы с БДДС в 1С:ERP, которые помогают финансовому директору предсказать кассовый разрыв до уплаты НДС и закрыть его.

👉 Читать: https://koderion.ru/blog/bdds-1c-erp-kontrol-kassovyh-razryvov-pered-nds