1С и интерполяция

12.02.25

Разработка - Математика и алгоритмы

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

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
1С и интерполяция:
.epf 15,47Kb
0
0 Скачать (1 SM) Купить за 1 850 руб.

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

Представьте, что вам нужно спланировать продажи какого-то товара.

Очень часто при этом используются коэффициенты сезонности - это когда товар продается в какой-то месяц лучше, чем в другие. К примеру, телефоны лучше продаются перед новым годом, после идет спад. То же касается и легковых машин, и квартир и т.д. Тут ничего сложного нет - есть 12 месяцев, у каждого месяца есть свой коэффициент.

Но бывают и другие коэффициенты, к примеру, вы подготовили общественность и вывели новый товар на рынок, ну к примеру видеокарту 5090, в этом случае вы ожидаете пик продаж в самом начале, потом постепенный спад и через 1-1.5 года вывод в продажу новой версии 6090. При этом этот график из этих коэффициентов может как растягиваться - к примеру, вывод в продажу может затянуться и вывод в продажу новой карты 6090 будет через 2 года, либо сжиматься. При этом коэффициенты заданы только на 16 месяцев, и вы, раз задав коэффициенты, не хотите постоянно их перебивать, пускай алгоритмы сами растягивают эти коэффициенты. Есть много и других случаев планирования, которые сложнее представленных вариантов.

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

Чтоб учесть нюансы, мы график разбиваем на ряды, к примеру, на картинке представлены 3 ряда: 

это коэффициенты с 1-9, затем идут 0 с 10-15 и потом некий коэффициент с номером строки = 16. На рисунке мы растягиваем весь график.

 

 

Но иногда требуется, к примеру, какой-то ряд/ряды не растягивать, ну, к примеру, выждать 6 месяцев, а потом выплатить оставшуюся часть денег (гарантийное удержание), в этом случае нам нужно запретить растягивать ряд с нулями:

 

 

А что будет, если график сжать? Да без проблем:

 

 

Но если для растягивания ограничений нет:

 

 

То сжимать до 0 не получится, а до скольки можно, определить сложно, это зависит и от количества рядов, и от того, какие ряды можно изменять, какие нет.

Итого, интерполяция имеет место быть в 1С при алгоритмах планирования. Возможно, когда-нибудь потребуется и функция разложения Фурье, при выделении коэффициентов из накопленных статистических данных, чтобы использовать полученные коэффициенты для автоматической генерации алгоритмов автопланирования. Ну либо дождемся, когда AI это сделает за нас и вместо нас.

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

Проверено на следующих конфигурациях и релизах:

  • Бухгалтерия предприятия, редакция 3.0, релизы 3.0.169.18

Интерполяция растянуть график сжать график

См. также

Математика и алгоритмы Программист Платформа 1C v8.2 1C:Бухгалтерия Россия Абонемент ($m)

На написание данной работы меня вдохновила работа @glassman «Переход на ClickHouse для анализа метрик». Автор анализирует большой объем данных, много миллионов строк, и убедительно доказывает, что ClickHouse справляется лучше PostgreSQL. Я же покажу как можно сократить объем данных в 49.9 раз при этом: 1. Сохранить значения локальных экстремумов 2. Отклонения от реальных значений имеют наперед заданную допустимую погрешность.

1 стартмани

30.01.2024    5493    stopa85    12    

39

Математика и алгоритмы Бесплатно (free)

Разработка алгоритма, построенного на модели симплекс-метода, для нахождения оптимального раскроя.

19.10.2023    10714    user1959478    54    

37

Математика и алгоритмы Разное Платформа 1С v8.3 1C:Бухгалтерия Россия Абонемент ($m)

Расширение (+ обработка) представляют собою математический тренажер. Ваш ребенок сможет проверить свои знание на математические вычисление до 100.

2 стартмани

29.09.2023    5315    maksa2005    8    

26

Математика и алгоритмы Инструментарий разработчика Программист Платформа 1С v8.3 Мобильная платформа Россия Абонемент ($m)

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

1 стартмани

09.06.2023    13138    8    SpaceOfMyHead    20    

62

Математика и алгоритмы Программист Платформа 1С v8.3 1C:Бухгалтерия Бесплатно (free)

Три задачи - три идеи - три решения. Мало кода, много смысла. Мини-статья.

03.04.2023    6575    RustIG    9    

25

Механизмы платформы 1С Математика и алгоритмы Программист Платформа 1С v8.3 Россия Бесплатно (free)

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

23.11.2022    5695    gzharkoj    14    

25

Математика и алгоритмы Программист Платформа 1С v8.3 Россия Абонемент ($m)

Обычно под распределением понимают определение сумм пропорционально коэффициентам. Предлагаю включить сюда также распределение по порядку (FIFO, LIFO) и повысить уровень размерности до 2-х. 1-ое означает, что распределение может быть не только пропорциональным, но и по порядку, а 2-ое - это вариант реализации матричного распределения: по строкам и столбцам. Возможно вас заинтересует также необычное решение этой задачи через создание DSL на базе реализации текучего интерфейса

1 стартмани

21.03.2022    9538    7    kalyaka    11    

44
Оставьте свое сообщение