5 шагов по изменению резервирования товаров в УТ 11.4

Публикация № 1212986

Разработка - Практика программирования

Планируйте, меняйте подходы, делайте качественно и регулярно, и получите результат.

Практика использования существующего типового функционала резервирования товаров в УТ 11 выявила недостатки:

  • отсутствие механизма по контролю за резервами ответственными (нет сводного отчета).
  • отсутствие временных лимитов по резервам и как следствие образование неликвидов (зависшие товары) или недоступность резервирования по актуальным заказам клиентов.
  • два вида резервирования «СоСклада» и «ИзЗаказов» одинаково «минусуют» складской остаток.

Я подумал и пошёл ...шагами.

Шаг 1 - Составление.

Приняты решения:

  • Установить временной лимит для хранения статуса резерва товара (10 дней).
  • По истечении лимита отменять резервирование товаров, как по неактуальным (автоматически).
  • Создать возможность пролонгирования резервов  товаров по заказам (ответственным).
  • Создать отчет для мониторинга остатков сроков по резервам.
  • Разделить доступность остатков при резервировании из наличия и резервирования к дате (СоСклада и ИзЗаказов).


Шаг 2 – Создание скелета.

Созданы объекты:

Регистр сведений «ООО_ПролонгацияРезервов» , где
   измерения: ДатаУстановкиРезерва, ЗаказКлиента, Номенклатура, Склад, ДатаОкончанияРезерва, Ответственный;
   ресурсы: Количество;
   реквизиты: ПричинаПродленияРезерва.

Роль ООО_ ПролонгацияРезервов(для просмотра и изменения менеджерами).

Внешняя обработка «Продлить резервы по заказу»  - Необходима для создания записей в новом регистре сведений «ООО_ПролонгацияРезервов» из формы заказа клиента без вмешательства в типовой код формы документа.

Шаг 3 – Визуализация.

Мониторинг менеджерами и руководством  сроков резервов по созданному внешнему отчету.

Например:

 


 

Ищем сроки резервов запросом по табличным частям «Товары» документов «Заказ клиента», соединяя с  новым регистром сведений («ООО_Пролонгация Резервов»).  Если в регистре данных по срокам нет (не делали продления), то срок равен дата заказа + количество временного лимита (10 дней).

Ответственные мониторят сроки своих резервов, прорабатывают с клиентами актуальность заказанных позиций и при необходимости проваливаются в заказ, актуализируют данные в заказе и жмут кнопку "Продлить резервы по заказу". Дополнительная, но нужная работа (пользователям удобно).

В отчете пытался сделать фишку по сворачиванию группировки с «Номенклатурой».

Удалось через условное оформление – через ограничение максимальной высоты и включением/выключением через параметр «Подробно»(Да/НЕТ).  

Но такой вариант резко теряет красоту при наличии заказов с большим  разнообразием номенклатуры (на каждую номенклатуру по одной минимальной строчке болотного оттенка).

Если возможны варианты с несложной реализацией – буду рад прочитать в комментариях!

Шаг 4 – Автоматизация (или механизация).

Создан код по удалению «просроченных» резервов,  где поиск данных осуществлен аналогично алгоритму в отчете, после по данным с «просрочкой» (относительно текущей даты) в табличной части «Товары» (документов «Заказ клиента»)  изменяется действие обеспечения с «Резервировать на складе» на «Не обеспечивать» (возможно нужно использовать «Отменено») и заказы перепроводятся.

В идеале (автоматизация) код помещается в общий модуль (не типовой) и выполняется регламентированным заданием.

Для отладки и выявления исключений предлагаю использовать сперва внешнюю обработку (механизация).

Пример обработки приведен на рисунке.

 

Пример запроса:

Запрос.Текст = "ВЫБРАТЬ
	               |	ООО_ПролонгацияРезервов.ЗаказКлиента КАК ЗаказКлиента,
	               |	ООО_ПролонгацияРезервов.Номенклатура КАК Номенклатура,
	               |	ООО_ПролонгацияРезервов.Склад КАК Склад,
	               |	МАКСИМУМ ООО_ПролонгацияРезервов.ДатаУстановкиРезерва) КАК ДатаУстановкиРезерва
	               |ПОМЕСТИТЬ ВТ_Пролонгации
	               |ИЗ
	               |	РегистрСведений. ООО_ПролонгацияРезервов КАК ООО_ПролонгацияРезервов
	               |
	               |СГРУППИРОВАТЬ ПО
	               |	ООО_ПролонгацияРезервов.ЗаказКлиента,
	               |	ООО_ПролонгацияРезервов.Номенклатура,
	               |	ООО_ПролонгацияРезервов.Склад
	               |;
	               |
	               |////////////////////////////////////////////////////////////////////////////////
	               |ВЫБРАТЬ
	               |	СвободныеОстаткиОстатки.Номенклатура КАК Номенклатура,
	               |	СвободныеОстаткиОстатки.ВРезервеСоСкладаОстаток КАК ВРезервеСоСкладаОстаток,
	               |	СвободныеОстаткиОстатки.ВРезервеПодЗаказОстаток КАК ВРезервеПодЗаказОстаток,
	               |	СвободныеОстаткиОстатки.Склад КАК Склад
	               |ПОМЕСТИТЬ ВТОстатки
	               |ИЗ
	               |	РегистрНакопления.СвободныеОстатки.Остатки(&ТекущаяДата, ) КАК СвободныеОстаткиОстатки
	               |;
	               |
	               |////////////////////////////////////////////////////////////////////////////////
	               |ВЫБРАТЬ
	               |	СвободныеОстатки.Регистратор КАК Регистратор,
	               |	СвободныеОстатки.Период КАК Период,
	               |	СвободныеОстатки.Номенклатура КАК Номенклатура,
	               |	СвободныеОстатки.Склад КАК Склад,
	               |	СвободныеОстатки.ВРезервеСоСклада КАК ВРезервеСоСклада,
	               |	ЕСТЬNULL(ВТ_Пролонгации.ДатаУстановкиРезерва, СвободныеОстатки.Регистратор.Дата) КАК ДатаУстановки,
	               |	РАЗНОСТЬДАТ(ЕСТЬNULL(ВТ_Пролонгации.ДатаУстановкиРезерва, СвободныеОстатки.Регистратор.Дата), &ДатаАктуальности, ДЕНЬ) КАК РазностьКоличество
	               |ПОМЕСТИТЬ ВТПриходы
	               |ИЗ
	               |	РегистрНакопления.СвободныеОстатки КАК СвободныеОстатки
	               |		ЛЕВОЕ СОЕДИНЕНИЕ ВТ_Пролонгации КАК ВТ_Пролонгации
	               |		ПО СвободныеОстатки.Регистратор = ВТ_Пролонгации.ЗаказКлиента
	               |			И СвободныеОстатки.Номенклатура = ВТ_Пролонгации.Номенклатура
	               |			И СвободныеОстатки.Склад = ВТ_Пролонгации.Склад
	               |ГДЕ
	               |	СвободныеОстатки.ВидДвижения = &ВидДвижения
	               |	И СвободныеОстатки.ВРезервеСоСклада > 0
	               |	И РАЗНОСТЬДАТ(ЕСТЬNULL(ВТ_Пролонгации.ДатаУстановкиРезерва, СвободныеОстатки.Регистратор.Дата), &ДатаАктуальности, ДЕНЬ) > 0
	               |;
	               |
	               |////////////////////////////////////////////////////////////////////////////////
	               |ВЫБРАТЬ
	               |	ВТОстатки.Номенклатура КАК Номенклатура,
	               |	ВТОстатки.ВРезервеСоСкладаОстаток КАК ВРезервеСоСкладаОстаток,
	               |	ВТОстатки.ВРезервеПодЗаказОстаток КАК ВРезервеПодЗаказОстаток,
	               |	ВТОстатки.Склад КАК Склад,
	               |	ВТПриходы.Регистратор КАК Регистратор,
	               |	ВТПриходы.ВРезервеСоСклада КАК ВРезервеСоСклада,
	               |	ВТПриходы.Период КАК Период,
	               |	ЕСТЬNULL(ВТПриходы.Регистратор.Менеджер, &ПустойПользователь) КАК Менеджер,
	               |	ЕСТЬNULL(ВТПриходы.Регистратор.Контрагент, &ПустойКонтрагент) КАК Контрагент,
	               |	ВТПриходы.ДатаУстановки КАК ДатаУстановки,
	               |	ДОБАВИТЬКДАТЕ(ВТПриходы.ДатаУстановки, ДЕНЬ, 10) КАК ДатаСрока
	               |ИЗ
	               |	ВТОстатки КАК ВТОстатки
	               |		ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТПриходы КАК ВТПриходы
	               |		ПО ВТОстатки.Номенклатура = ВТПриходы.Номенклатура
	               |			И ВТОстатки.Склад = ВТПриходы.Склад
	               |
	               |УПОРЯДОЧИТЬ ПО
	               |	Регистратор,
	               |	Номенклатура,
	               |	Период УБЫВ";
	Запрос.УстановитьПараметр("ДатаАктуальности", ТекущаяДата() - 3600 * 24 * Объект.КоличествоДнейАктуальностиРезервов );
	Запрос.УстановитьПараметр("ВидДвижения", ВидДвиженияНакопления.Приход);
	Запрос.УстановитьПараметр("ПустойПользователь", Справочники.Пользователи.ПустаяСсылка());
	Запрос.УстановитьПараметр("ПустойКонтрагент", Справочники.Контрагенты.ПустаяСсылка());
	Запрос.УстановитьПараметр("ТекущаяДата", ТекущаяДата());

В коде обработки за основу взята таблица «РегистрНакопления.СвободныеОстатки.Остатки», а не табличная часть «Товары», т.к. регистраторы возможны нескольких типов (теоретически) и для выявления возможных вариантов решил задействовать его. На практике записи с количеством «ВРезервеСоСклада» пишутся только по регистратору «Заказ клиента».
 

Шаг 5 – Разделение доступности остатков.

Первая проблема в типовом функционале УТ: Не удается «резервировать на складе» (недоступен вариант), если остаток на складе ещё есть (с учётом других «резервирований на складе»), но количество в заказах с «резервированием к дате» (по заказам поставщикам) превышает имеющийся складской остаток.

На рисунке (пример типового функционала) показано, как конечный остаток в количестве 7 невозможно зарезерировать (не к дате).

 

 

При выборе варианта обеспечения в заказе покупателя вызывается форма перечисления «ВариантыОбеспечения»  - «ВыборВариантаОбеспечения» и варианты возможно выбрать только, если доступное количество больше нуля (а не конечный остаток).

Второй недостаток типового функционала – обратно позволяет «резервировать» и «отгружать» (устанавливать действие в заказе клиента) в отрицательный остаток, что вводит в заблуждение менеджеров (хорошо, если включен «контроль остатков товаров организаций» и проведение дальнейшей реализации не удается) и затрачивается время на разбирательства и исправление.

Команда «ЗаполнитьОбеспечение»  вызывает форму «ИсполнениеЗаказа" (того-же перечисления «ВариантыОбеспечения») , где присутствуют необязательные флаги «К обеспечению» и «Не обеспечивать», не указав которые можно установить «Отгрузить» и «Резервировать на складе» без контроля остатков.

Решение первого недостатка: покопавшись в коде отладчиком находим функцию «ТаблицаДоступныеОстатки» в модуле менеджера Регистра накопления «ГрафикПоступленияТоваров»,  добавляем пару строк.

Пример изменения типового кода (с комментариями  «Доработка ООО») :

Пока ЕстьЗаписи Цикл

        ЗаполнитьЗначенияСвойств(КлючСтроки, Выборка);
        НарастающийИтог          = Выборка.Остаток;
        МинимальноеЗначение      = НарастающийИтог;
        ИзмениласьЗапись         = Ложь;
        // Цикл по сочетанию номенклатура\характеристика\склад.
        Пока Не ИзмениласьЗапись Цикл
            НарастающийИтог = НарастающийИтог - Выборка.Оборот;
            
            // Доработка ООО
            МинимальноеЗначение_ООО      = НарастающийИтог;   
            // Доработка ООО

            Если МинимальноеЗначение > НарастающийИтог И (Не ТолькоПоложительные Или МинимальноеЗначение > 0) Тогда
                СтрокаТаблицы = ДоступныеОстатки.Добавить();
                ЗаполнитьЗначенияСвойств(СтрокаТаблицы, Выборка);
                СтрокаТаблицы.ДатаДоступности = Выборка.Период; //доступно на дату.
                СтрокаТаблицы.Количество = МинимальноеЗначение;
                МинимальноеЗначение = НарастающийИтог;
            КонецЕсли;
            // Переход к следующей записи.
            ЕстьЗаписи = Выборка.Следующий();
            ИзмениласьЗапись = Не ЕстьЗаписи Или ОбеспечениеКлиентСервер.ИзменилсяКлюч(КлючСтроки, Выборка);
        КонецЦикла;                          
        Если Не ТолькоПоложительные Или МинимальноеЗначение > 0 
            // Доработка ООО
            ИЛИ МинимальноеЗначение_ООО > 0 
            // Доработка ООО
            Тогда
            СтрокаТаблицы = ДоступныеОстатки.Добавить();
            ЗаполнитьЗначенияСвойств(СтрокаТаблицы, КлючСтроки);
            СтрокаТаблицы.ДатаДоступности = '00010101'; //доступно сейчас.
            
            СтрокаТаблицы.Количество = МинимальноеЗначение;
            
            // Доработка ООО
            Если Справочники.итЗначенияПоУмолчанию.ИспользоватьНовоеРезервирование.ОсновноеЗначение = Истина Тогда
                СтрокаТаблицы.Количество = МинимальноеЗначение_ООО;
            КонецЕсли; 
            // Доработка ООО
        КонецЕсли;


Пример кода отмены резервов:

Процедура ОтменитьРезервыНаСервере(МассивСтроки)

                ЗаказРезерва = МассивСтроки[0];
                ЗаказОбъект = ЗаказРезерва.ПолучитьОбъект();

                НоменклатураСтроки = МассивСтроки[1];
                СтруктураПоиска = Новый Структура;
                СтруктураПоиска.Вставить("Номенклатура", НоменклатураСтроки);
            
                СтрокиТоваров = ЗаказОбъект.Товары.НайтиСтроки(СтруктураПоиска);

                Для Каждого СтрокаТоваров Из СтрокиТоваров Цикл

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


Решение второго недостатка: изменить форму «ИсполнениеЗаказа», установив при открытии «К обеспечению» и ограничив изменение («ТолькоПросмотр»).

Пример на рисунке ниже.

 


 

Результаты.

Первые четыре шага реализованы более полугода назад и оказались рабочим решением в небольшой компании из нескольких организаций.

Жаль, что количественной  (статистической) оценки нет, но зарезервированные и неактуальные завалы товаров прекратились, уменьшилась путаница.

Пятый шаг реализован в этом году и позволил значительно сократить временные затраты при оформлении заказов клиентов.

Послесловие.

Ни на какую гениальность идей не претендую, надеюсь, что кому- то сгодятся вышеизложенные мысли или будут дельные ответные советы по лучшим вариантам.

Обоснованная критика приветствуется.

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
1. any__uta 19.03.20 10:52 Сейчас в теме
спасибо) тема оказалась полезной)))
2. Igorro82IT 35 19.03.20 11:41 Сейчас в теме
(1) Это радует)
Наздоровье!
any__uta; +1 Ответить
3. andryandry 88 19.03.20 22:08 Сейчас в теме
нужная вещь. вы могли бы реализовать решение в виде расширения конфигурации?
4. Igorro82IT 35 20.03.20 07:17 Сейчас в теме
(3) Я и сделал, только для формы "ИсполнениеЗаказа" перечисления «ВариантыОбеспечения», но в остальных объектах не вижу такой необходимости.
Отчёт и обработки могут часто меняются (зачем их обновлять вместе со всей конфигурацией), в модуле регистра накопления добавлено всего несколько строк.
Это же не было продуктом на продажу..
5. andryandry 88 20.03.20 10:22 Сейчас в теме
(4)выложите расширение и отчеты для скачивания за стартмани, ок?
8. shard 251 23.03.20 13:44 Сейчас в теме
10. Igorro82IT 35 23.03.20 14:47 Сейчас в теме
(8) Ознакомился. Когда искал варианты прошлой осенью -не нашел (может по причине- в наименовании нет резервирования).
По сути реализованы шаги 2 и 4 немного с другим подходом, без использования регистра сведений.
11. shard 251 23.03.20 14:57 Сейчас в теме
(10) отчет по товарам в резерве также имеется и периодически применяется, но публикацию делал исключительно про автозакрытие просроченных заказов. История изменения реквизита срока действия заказа кстати ведется при версионировании заказов, но за все время использования алгоритма (с августа 18го года) ни разу не понадобилась. Отчет по срокам резервов тоже никто ни разу не просил, а вот на какую сумму менеджер резервов держит интересовались.
Igorro82IT; +1 Ответить
6. Igorro82IT 35 20.03.20 11:15 Сейчас в теме
Возможно и соберусь, скомпоную всё в один комплект, но не сегодня.
Чтобы пакет был более универсальным нужно учесть варианты, которые у меня просто не используются (учет по характеристикам и др), иначе будет пакет недоделок, который скачавшим придётся адаптировать, доделывать и.. ругаться на меня).
7. malikov_pro 224 22.03.20 16:50 Сейчас в теме
Тема актуальна, благодарю что опубликовали свои наработки.
Сам немного раскапывал типовой механизм обеспечения https://infostart.ru/public/1188857/, до проблемы при резервировании к дате не дошел.
По формам отображения, отчет не всегда удобен, вывожу на форму список номенклатуры, при активизации строки ниже вывожу расшифровку.
Если интересно можно собрать проект в git и насыщать его наработками.
В планах перед снятием резерва уведомлять клиента, это стимулирует продажи.
Прикрепленные файлы:
9. Igorro82IT 35 23.03.20 14:43 Сейчас в теме
(7) Ознакомился с Вашей публикацией.
Решение формы обработки интересно и да - удобнее варианта с отчетом.
До "собирания проекта" я не готов (если только участником).
12. Cyberhawk 118 31.03.20 13:16 Сейчас в теме
В отчете пытался сделать фишку по сворачиванию группировки с «Номенклатурой»
А чем не устроило включение-отключение нижнего уровня группировки (номенклатура или детальные записи) в настройках структуры отчета, либо управление сворачиванием группировок через ПоказатьУровеньГруппировокСтрок?
Оставьте свое сообщение

См. также

Об обновлениях

Статья Программист Стажер Нет файла v8 v8::УФ Бесплатно (free) Практика программирования

Рассматриваются вопросы комментирования доработок стандартных конфигураций, необходимых для облегчения работы при обновлении конфигурации.

12.02.2020    1564    ipoloskov    27       

Готовые переносы данных из различных конфигураций 1C Промо

Рекомендуем готовые решения для переноса данных из различных конфигураций 1C. C техподдержкой от разработчиков и гарантией от Инфостарт.

Детектор завершения согласования для 1С: Документооборот КОРП

Статья Программист Нет файла v8::УФ ДО УУ Бесплатно (free) Практика программирования Документооборот и делопроизводство

Детектор, обнаруживающий завершение согласования и создающий соответствующее бизнес-событие, на которое можно настроить обработчик или автозапуск процесса.

04.02.2020    1291    shiaju    3       

Как вывести итоговый вес и объем на форму документа Заказ клиента. УТ 11.4

Статья Программист Нет файла v8::УФ УТ11 Россия УУ Windows Бесплатно (free) Практика программирования

Всем привет, долго ломал голову, но с помощью тыка и подсказок более опытных программистов, вот что мне удалось достичь и как это я сделал. Открываем конфигуратор - заходим в Документы-Заказ-Клиенту-Формы-ФормаДокумента, все будем делать только здесь, снизу формы две вкладки, в общем сама форма и модуль (как открыть, смотри рисунок - открыть форму).

16.01.2020    1714    VID1234    2       

Коронавирус COVID-19. Промо

Коронавирус COVID-19. Статистика по странам

Бесплатно

[СКД] Программное создание схемы компоновки данных

Статья Программист Стажер Нет файла v8 v8::СКД 1cv8.cf Бесплатно (free) Практика программирования

Сделаем отчет на СКД полностью программно, без использования макета "схема компоновки данных".

15.01.2020    9769    John_d    21       

Как работают управляемые формы и тонкий клиент 1С – взгляд "из-под капота"

Статья Программист Нет файла v8::УФ Бесплатно (free) Практика программирования Инструментарий разработчика

Переход на управляемые формы перевернул процесс разработки на 1С, заставив программистов менять привычные подходы к описанию логики работы интерфейса. Руководитель компании «Цифровой Кот» Юрий Лазаренко в своем докладе на конференции Infostart Event 2019 Inception рассказал о том, как устроены управляемые формы и как правильно работать с тонким клиентом платформы 1С:Предприятие.

23.12.2019    8863    TitanLuchs    23       

Онлайн-курс «Автоматизация процессов управления МТО: методика сбора и формализации требований» с 1 апреля по 13 мая 2020 года. Промо

Цель курса - повысить полноту и качество сбора и формализации требований к автоматизации процессов управления материально-техническим обеспечением. Курс основан на процессном подходе, позволяет в полном объеме выявить и учесть все факторы, влияющие на специфику процессов управления МТО. Участники курса получают теоретические знания в области организации процессов управления МТО и готовый инструментарий для сбора и формализации требований по автоматизации этих процессов (шаблоны, опросники, модели).

40000 рублей

Изменение макета в карточке номенклатуры(УТ 11, КА 2)

Статья Программист Нет файла v8::УФ ERP2 УТ11 КА2 Бесплатно (free) Практика программирования Работа с интерфейсом

Краткая памятка по выведению добавленного реквизита в справочнике Номенклатура в стандартную карточку номенклатуры в УТ 11, КА 2, ERP 2.

24.10.2019    2828    darkultro37    4       

Время учиться: до 3 апреля скидки на курсы до 40%! Промо

Для тех, кто решил провести самоизоляцию с пользой, Инфостарт запускает акцию «Время учиться». С 30 марта до 3 апреля 2020 года наши курсы и видеозаписи докладов INFOSTART EVENT 2019 INCEPTION продаются со скидкой!

Оповещения боту из 1С за 31 минуту

Статья Программист Нет файла v8::УФ 1cv8.cf Бесплатно (free) Практика программирования Интеграция

Поделюсь опытом, как быстро сделать бота с оповещениями в Телеграмм из 1С без лишних затрат.

18.09.2019    12567    4    feva    34       

Базовый курс для начинающих 1С-программистов. Онлайн-интенсив со 2 июня по 2 июля 2020 г. Промо

Данный онлайн-курс является начальной ступенью по изучению базовых принципов программирования в системе “1С:Предприятие” и предназначен для обучения 1С-программированию “с нуля”.

4500-9500 рублей

Агрегатные функции СКД, о которых мало кто знает

Статья Программист Нет файла v8 v8::СКД 1cv8.cf Бесплатно (free) Практика программирования

Пользуетесь ли Вы всеми возможными агрегатными функциями, которые предоставляет система компоновки данных? Если Вы используете только: СУММА, КОЛИЧЕСТВО, МИНИМУМ, МАКСИМУМ, СРЕДНЕЕ, то эта статья для Вас.

05.09.2019    30020    ids79    50       

Онлайн-курс «Практические аспекты внедрения регламентированного учета и расчета себестоимости в 1С:ERP на крупных промышленных предприятиях» с 20 апреля по 15 мая 2020 года. Промо

Курс рассчитан для подготовки экспертов по регламентированному учету и учету затрат для внедрения на крупных промышленных предприятиях с «исторически сложившимся» учетом

9000 рублей

EnterpriseData – часть 3. Загрузка данных, идентификация объектов

Статья Программист Нет файла v8 v8::УФ 1cv8.cf ОС Бесплатно (free) Практика программирования Математика и алгоритмы Перенос данных из 1C8 в 1C8 Разработка

Основные этапы загрузки данных через EnterpriseData. Идентификация объектов загружаемых полностью и по ссылке. Приведены схемы процессов загрузки данных. Описание основных операций и обработчиков. Перечень процедур БСП, используемых при загрузке данных, структура «КомпонентыОбмена».

22.08.2019    9164    ids79    7       

Функции СКД: ВычислитьВыражение, ВычислитьВыражениеСГруппировкойМассив

Статья Программист Нет файла v8 v8::СКД 1cv8.cf Бесплатно (free) Практика программирования

Подробное описание и использование внутренних функций системы компоновки данных: Вычислить, ВычислитьВыражение, ВычислитьВыражениеСГруппировкойМассив, ВычислитьВыражениеСГруппировкойТаблицаЗначений.

08.08.2019    41445    ids79    36       

Онлайн-интенсив "1C:Предприятие для программистов: Бухгалтерские задачи" с 22 июня по 8 июля 2020 г. Промо

Данный онлайн-курс предусматривает изучение механизмов платформы “1С:Предприятие”, которые предназначены для решения задач бухгалтерского учета. Курс предназначен для тех, кто уже имеет определенные навыки конфигурирования и программирования в системе “1С:Предприятие”, а также для опытных пользователей прикладного решения “1С:Бухгалтерия” и прочих прикладных решений, в которых реализованы соответствующие механизмы для автоматизации бухгалтерских задач.

4900 рублей

Кодовое создание документа на 8.3, управляемые формы (на примере)

Статья Программист Стажер Нет файла v8::УФ 1cv8.cf Бесплатно (free) Практика программирования Разработка

В своё время мне нужен был код создания документа через обработку, пол дня потерял пока нашёл гайд по решению данной задачи. Поэтому просто решил поделиться данным решением. Подойдёт только новичкам, опытные программисты могут даже не читать =)

07.08.2019    4137    Nefilimus    16       

Как проводятся документы в типовых конфигурациях от 1С

Статья Программист Нет файла v8::ОУ ERP2 УТ11 Россия УУ Windows Бесплатно (free) Математика и алгоритмы Практика программирования Разработка

В свое время, когда только начинал шаги в 1С и изучал, как проводятся документы в конфигурациях на платформе 1С по книге "Разработка управляемого интерфейса" (Хрусталева Е.Ю.), и там были представлены примеры совсем далекие от того, как сейчас проводятся документы в современных конфигурациях от 1С.

24.07.2019    22312    skv_79    35       

Программы для исполнения 54-ФЗ Промо

С 01.02.2017 контрольно-кассовая техника должна отправлять электронные версии чеков оператору фискальных данных - правила установлены в 54-ФЗ ст.2 п.2. Инфостарт предлагает подборку программ, связанных с применением 54-ФЗ, ККТ и электронных чеков.

Чеки ККМ для расчетов с ИП по безналу. Новые обязательные реквизиты в чеке

Статья Программист Нет файла v8 v8::ОУ УТ11 УУ Windows Оптовая торговля Бесплатно (free) Практика программирования ККМ Разработка

Новые требования законодательства по пробитию чеков ККМ при расчетах с индивидуальными предпринимателями по безналу. Нюансы подключения интеграционной компоненты ДТО 10.5.0 на примере кассы ККТ АТОЛ 11Ф и конфигурации 1С УТ 11.4. Необходимые доработки типовой конфигурации УТ 11.4 для вывода на печать новых обязательных реквизитов: покупатель, ИНН, ГТД, страна происхождения.

22.07.2019    11615    ids79    16       

Вставка гиперссылки в форматированный документ

Статья Программист Нет файла v8::УФ Бесплатно (free) Практика программирования Разработка

Да, форматированный документ это умеет и сам, но возможности можно расширить!

03.06.2019    4365    Yashazz    0       

Подборка программ для взаимодействия с ЕГАИС Промо

ЕГАИС (Единая государственная автоматизированная информационная система) - автоматизированная система, предназначенная для государственного контроля за объёмом производства и оборота этилового спирта, алкогольной и спиртосодержащей продукции. Инфостарт рекомендует подборку проверенных решений для взаимодействия с системой.

Добавление внешних отчетов / обработок в собственные подсистемы

Статья Программист Стажер Нет файла v8::УФ Россия Бесплатно (free) Практика программирования Разработка

Краткая инструкция по добавлению функционала доп обработок/отчетов в собственную подсистему.

24.05.2019    7212    login1020    7       

Программы для исполнения 488-ФЗ: Маркировка товаров Промо

1 января 2019 года вступил в силу ФЗ от 25.12.2018 № 488-ФЗ о единой информационной системе маркировки товаров с использованием контрольных (идентификационных) знаков, который позволяет проследить движение товара от производителя до конечного потребителя. Инфостарт предлагает подборку программ, связанных с применением 488-ФЗ и маркировкой товаров.

Расшифровка отчета на СКД с детализацией по выбранному полю на основе БСП

Статья Программист Нет файла v8 v8::УФ v8::СКД 1cv8.cf Россия Бесплатно (free) Практика программирования Работа с интерфейсом Разработка

В данной статье рассмотрим механизм работы с расшифровкой отчета, созданного при помощи системы компоновки данных, в управляемом приложении. Показывать буду на примере реальной задачи. Условие: использовать имеющиеся в конфигурации механизмы БСП, с минимальными и "правильными" изменениями. Расшифровка должны быть двух видов на каждом поле: 1. Открывать ссылочный объект 2. Открывать новую форму с детализацией табличной части документа. Собственно ради второго пункта и писалась статья, в основном для себя, чтобы не забыть.

14.05.2019    13481    Viktor_Ermakov    6       

Оперативная доработка отчетов без обновления конфигурации или расширения

Статья Программист Нет файла v8::УФ 1cv8.cf Россия Бесплатно (free) Практика программирования Разработка

В статье рассматривается вариант оперативной доработки отчетов при помощи механизма дополнительных отчетов и обработок и небольшой модификации конфигурации.

12.05.2019    3419    samvani    0       

Онлайн-курс "Подготовка к экзамену 1С:Эксперт и 1С:Профессионал по технологическим вопросам" с 7 по 24 апреля 2020 г. Промо

На курсе вы получите практические навыки решения задач производительности 1С, в том числе характерных для высоконагруженных информационных систем (более 1000 пользователей). Подготовка к экзамену – только одна из составляющих курса. 70% слушателей приходят за знаниями, которые позволят расти и зарабатывать, делать сложные задачи на крупных проектах.

16450 рублей

Выгрузка документа по условию

Статья Программист Нет файла v8 Бесплатно (free) Практика программирования Разработка

Что делать, если документы нужно выгружать не все подряд, а по какому-то фильтру: статусу, дате, набору условий... А что если он соответствовал этим условиям, а потом перестал? А если потом опять начал? Такие ситуации заставили попотеть не одного программиста.

25.04.2019    11113    m-rv    2       

Автоматизация печатной формы (автоформирование табличного документа на основе любой таблицы значений)

Статья Программист Нет файла v8 v8::УФ 1cv8.cf Бесплатно (free) Практика программирования Разработка

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

18.04.2019    2657    NeSPEC    0       

1C:Предприятие для программистов: Расчетные задачи (зарплата). Онлайн-интенсив с 01 по 17 июня 2020 г. Промо

Данный онлайн-курс предусматривает изучение механизмов платформы “1С:Предприятие”, которые предназначены для автоматизации периодических расчетов, а именно - для расчета зарплаты. Курс предназначен для тех, кто уже имеет определенные навыки конфигурирования и программирования в системе “1С:Предприятие”, а также для опытных пользователей прикладного решения “1С:Зарплата и управление персоналом” и прочих прикладных решений, в которых реализован функционал расчета зарплаты.

4900 рублей

Как прикрутить ГУИД к регистру сведений

Статья Программист Нет файла v8 Бесплатно (free) Практика программирования Перенос данных из 1C8 в 1C8 Разработка

... и немного теории обмена данными. В частности, разберем боль всех, кто пишет небанальные обмены данными: как набору записей регистра сведений назначить гуид и далее использовать его в обмене для идентификации этого набора.

16.04.2019    14386    m-rv    16