|   |   | 
| 
 | Выбор между регистрами и расчетами | ☑ | ||
|---|---|---|---|---|
| 0
    
        lerr 31.08.23✎ 12:46 | 
        Приветствую всех!
 Встала задача (мозг, тем временем, лег) - необходимо создать логику вычисления стоимости хранения продукции на складах ответ.хранения. Т.е. есть множество контрагентов, которые постоянно привозят/увозят товары, а надо рассчитывать стоимость хранения посуточно в зависимости от наполненности/тарифа. Но вопрос заключается в том, что стоит ли создавать запись в оборотном регистре на каждый день по каждому контрагенту и складу или лучше каждый раз рассчитывать результат? Сразу оговорюсь, что около 100-150 контров, 10 складов и период около 20 лет. Конфа самописная. УФ. С удовольствием воспользуюсь Вашими доводами) | |||
| 1
    
        PR 31.08.23✎ 12:49 | 
        (0) Что здесь думать-то?
 Нужны агрегаты — используй регистр Не нужны — не используй | |||
| 2
    
        lerr 31.08.23✎ 14:39 | 
        хорошо. а подскажите, как бы мне заносить ежедневные данные в регистр оборота с учетом того, что регистраторы появляются не каждый день, но каждый день обычно есть остаток и, соответственно, должна быть запись?     | |||
| 3
    
        Bigbro 31.08.23✎ 14:07 | 
        сделай обработку которая будет регламентно запускаться раз в месяц например когда закончили корректировки и закрыли период от пользователей.
 пробежал по своим остаткам и оборотам - рассчитал что надо, создал записи в свой регистр. и пользуйся им потом сколько влезет. | |||
| 4
    
        Bigbro 31.08.23✎ 14:09 | 
        я примерно так же делал когда маркетологам потребовалась куча аналитики, которой не было нигде кроме первичных документов, а каждый раз их лопатить это была бы смерть базы.
 сделал обработку она раз в месяц пересчитывает первичку и пишет нужные показатели со всей необходимой аналитикой, которую уже потом маркетологи смотрят и крутят как хотят | |||
| 5
    
        Обработка 31.08.23✎ 14:21 | 
        (0) Какое время считается что контрагент хранил у вас сутки?
 6:00 12:00 15:00 18:00 ... 24:00? А что если утром было полный склад а в 10:25 вывезли весь товар? | |||
| 6
    
        Irbis 31.08.23✎ 14:33 | 
        На нефтебазах просто считают. Завёз, за месяц заплати с каждой тонны. И на остаток на конец месяца начисляют хранение вперёд. Сократи период до суток, и вперёд.     | |||
| 7
    
        Обработка 31.08.23✎ 14:33 | 
        Зы
 Я лично не люблю хранить данные лучше подсчитать их. Но все должно быть в пределах разумного. Остаки на каждый день известны нужно каждый день ночью запускать регламент на расчет за прошедший день. И записывать в РС Потомо по ним отчеты строить | |||
| 8
    
        АгентБезопасной Нацио 31.08.23✎ 14:36 | 
        (7) а потом задним числом изменят алгоритм расчета...     | |||
| 9
    
        lerr 31.08.23✎ 14:39 | 
        (5) (7)  Это не столь принципиально, но считается что факт поступления товара в календарную дату - есть факт хранения товара в эти сутки. Так же и убытие. Т.е. если утром был полный, а в 10:25 вывезли все - оплата за эти сутки требуется. Формула выглядит как (Расход + КонечныйОстаток) * Тариф
 Главное, что не могу подобрать никакой встроенный механизм для этого - все сводится к обработкам и регламентным заданиям.. (( Может, регистр расчета? | |||
| 10
    
        Irbis 31.08.23✎ 14:42 | 
        (9) Не расход, а приход. Читай внимательно (6)     | |||
| 11
    
        lerr 31.08.23✎ 14:43 | 
        (10) Читаю. Но именно Расход     | |||
| 12
    
        Irbis 31.08.23✎ 14:43 | 
        (10) Документы как выставляете? Раз в месяц или каждый день?     | |||
| 13
    
        Bigbro 31.08.23✎ 14:43 | 
        (9) не надо приплетать расчеты туда где они не нужны.     | |||
| 14
    
        Irbis 31.08.23✎ 14:44 | 
        (11) Ещё раз читай, и думай. Расход ни причём, за поступление должна плата браться и за остаток на конец расчетного периода.     | |||
| 15
    
        lerr 31.08.23✎ 14:46 | 
        (12) Раз в месяц обычно. Но бывает и за 10 дней, и за 13. Иногда надо аналитику строить. И за месяц, и за год. И за N дней. Для регистров - идеальная ситуация     | |||
| 16
    
        Мультук гуру 31.08.23✎ 14:48 | 
        (9) 
 Автор -- хочу регистр расчета! Все -- нахрен он тебе не нужен! Автор -- но я все-равно хочу! Я художник, я так вижу. Автор, если ты хочешь делать на регистрах расчета -- делай. Как получится, не забудь зайти, поделиться, рассказать как все классно работает и какие все отцы старперы и {еще нехорошее слово} | |||
| 17
    
        Irbis 31.08.23✎ 14:48 | 
        (15) Вот и считай приход за месяц + остаток на конец каждого дня расчетного периода. Это для документов. Или делай начисление каждый день, а в конце просто сумму всех документов используй (но это косячный метод).     | |||
| 18
    
        RomanYS 31.08.23✎ 14:49 | 
        (14) приход уже сидит в остатке. Чтобы получить условно максимальный остаток за период берут (Расход + КонечныйОстаток) как они написал, выглядит логично     | |||
| 19
    
        lerr 31.08.23✎ 14:49 | 
        (14) Ок, подумай. Ты взял 10 тонн на месяц. В конце месяца у тебя осталось 5 тонн. Ты считаешь "за поступление должна плата браться и за остаток на конец расчетного периода". А если к поступлению в этот период пришло еще 7 тонн и ушло 7 тонн? Вот поэтому Расход + КонечныйОстаток отражает эту картину целиком и полностью!     | |||
| 20
    
        lerr 31.08.23✎ 14:49 | 
        (18) Во, опередил)     | |||
| 21
    
        Irbis 31.08.23✎ 14:51 | 
        (18), (19) всё крайне логично. 10+7 — поступление и за остаток на каждый день возьму, и пофиг когда и сколько ты вывозил. Я вам из жизни пример привёл, когда в одной бочке хранится товар целого десятка поклажедателей.     | |||
| 22
    
        lerr 31.08.23✎ 14:52 | 
        (16) Ну не передергивай, пожалуйста. Я про регистр расчета только вскользь упомянул. Основой был регистр накопления (оборота).     | |||
| 23
    
        Garykom гуру 31.08.23✎ 14:52 | 
        (0) Используй Регистр Сведений и не ипи ничего     | |||
| 24
    
        lerr 31.08.23✎ 14:53 | 
        (21) К сожалению, твой пример не подходит для данной ситуации     | |||
| 25
    
        Irbis 31.08.23✎ 14:54 | 
        (22) Обороты здесь не прокатят, в формуле расчета фигурирует остаток, да ещё на каждый интервал из расчетного периода.
 Учтите ещё момент, когда поклажедатель положил товар на полгода, и расхода не будет. Вот потому нормальные люди и берут денежку вперёд, по приходу. | |||
| 26
    
        Irbis 31.08.23✎ 14:55 | 
        (24) То есть пример с нефтебазой, когда произвольно по времени поступает произвольное количество продукта (в рамках квоты) и также произвольно по времени и количеству вывозится не подходит? Странно даже.     | |||
| 27
    
        lerr 31.08.23✎ 14:58 | 
        (25) Обороты для стоимости хранения. Они никогда не уйдут в ноль и двигаются только вперед.
 Остатки для количества хранимого товара. Ну а тариф - сведения. Непериодические. | |||
| 28
    
        Garykom гуру 31.08.23✎ 15:00 | 
        (27) Тариф это справочник + периодический РС где кому, где, какой тариф     | |||
| 29
    
        Garykom гуру 31.08.23✎ 15:01 | 
        (28) периодический РС где Контрагент, Склад, Тариф     | |||
| 30
    
        Irbis 31.08.23✎ 15:02 | 
        (27) Имхается какая-то каша у вас в бестолковке, или задача не озвучена корректно. Стоимость хранения считать по регистру остатков товара не логично. Логично считать по документам, исходя из условий договора. И делить все деньги на всё количество.     | |||
| 31
    
        Garykom гуру 31.08.23✎ 15:02 | 
        (29)+ Еще один РС (непериодический и даже независимый можно) куда уже пишутся результаты расчетов
 И можно в реквизит засунуть в ХранилищеЗначения документ в виде ТабДок с детальными расчетами | |||
| 32
    
        Garykom гуру 31.08.23✎ 15:04 | 
        Короче "наймите программиста"©     | |||
| 33
    
        Irbis 31.08.23✎ 15:05 | 
        (31) Да там много чего ещё можно придумать. Разная стоимость хранения в первый и последующие дни, стоимость погрузки/разгрузки с тонны.
 И ещё один недостаток схемы, когда считают по расходу: возможность банального кидка. Когда товар вывезли и за последний месяц не заплатили. У хранителя в этом случае ни товара ни денег захранение. | |||
| 34
    
        lerr 31.08.23✎ 15:08 | 
        (30) Причем тут каша? Я бы рад решить стандартную задачу "договор на месяц -> счет на оплату", но задача именно такая: считать стоимость хранения за период времени. И документами это не считается, потому что документы являются регистраторами прихода/расхода, а никак не времени пребывания товара на складе.     | |||
| 35
    
        Bigbro 31.08.23✎ 15:08 | 
        (33) а это хороший довод.     | |||
| 36
    
        lerr 31.08.23✎ 15:09 | 
        (33) И причем здесь "нерентабельность коммерческой схемы" и "возможность кидка"? Мы с Вами не бизнес-модели обсуждаем)     | |||
| 37
    
        Гена гуру 31.08.23✎ 15:15 | 
        Арифметика: Ост_нач + Приход - Расход = Ост_кон
 Или Ост_нач + Приход = Ост_кон + Расход | |||
| 38
    
        АгентБезопасной Нацио 31.08.23✎ 15:21 | 
        (34) Если "документы являются регистраторами прихода и расхода", то в чем проблем построить по ним остатки на любой произвольный момент времени? Если есть остатки на любой момент времени, то в чем проблема построить "время пребывания определенного количества"? 
 (9) а если утром был пустой, перед обедом завезли товар, а после обеда вывезли, и склад снова пустой? | |||
| 39
    
        shuhard 31.08.23✎ 15:22 | 
        (27) [Обороты для стоимости хранения. Они никогда не уйдут в ноль и двигаются только вперед.]
 превращение ОХ в систему биллинга влечёт паранойю Стоимость хранения фиксируется документом выбытия, расчет храниться в его ТЧ | |||
| 40
    
        lerr 31.08.23✎ 15:31 | 
        (38) а если утром был пустой, перед обедом завезли товар, а после обеда вывезли, и склад снова пустой?
 Взимается оплата за один день. Работает формула Расход + КонечныйОстаток | |||
| 41
    
        lerr 31.08.23✎ 15:39 | 
        (39) Не совсем понял про биллинг?
 В том и проблема, что нет четких документов выбытия. Есть поступивший товар - например, фура хагиваги в 10 номенклатурах. Это один документ прихода. А потом начинается расход - например, 27 документов расхода по 250 килограмм красных, синих или зеленых. В разные дни. И увязывать хранение документами в этом случае - тяжело. Ну или я пока не вижу как. | |||
| 42
    
        Гена гуру 31.08.23✎ 15:40 | 
        Вывод: регистр не нужен. 
 1. Берётся контрагент 2. С даты договора по сегодня включительно все приходы (Приходище) и все расходы (Расходище) Имеем: Ост_кон = Приходище - Расходище 3. С даты последнего выставления предыдущего счёта за хранение по сегодня берётся Расход 4. Сумма текущего счёта = (Приходище - Расходище + Расход) * Тариф | |||
| 43
    
        H A D G E H O G s 31.08.23✎ 15:45 | 
        (0) Не забудь указать реквизиты организации, чтобы не столкнуться потом с этим поделием.     | |||
| 44
    
        АгентБезопасной Нацио 31.08.23✎ 15:46 | 
        (42) регистром в этом случае проще. Но он не обязателен.     | |||
| 45
    
        shuhard 31.08.23✎ 15:46 | 
        (41) не нужен поклажедателю биллинг, т.е. возможность в любой момент получить счёт для оплаты     | |||
| 46
    
        АгентБезопасной Нацио 31.08.23✎ 15:47 | 
        (41) если у вас  "поступление - фура", а "расход - килограммы", то вы никогда не посчитаете. Наймите программиста.     | |||
| 47
    
        Гена гуру 31.08.23✎ 15:50 | 
        (44) Лишнее. Хранение ориентируется только на объёмы, хоть хлопок, хоть золото. 
 Машины завозят и увозят объёмы, которые уже учтены в накладных(?). | |||
| 48
    
        АгентБезопасной Нацио 31.08.23✎ 16:24 | 
        (47) ну тогда и отчеты по складу можно по документам делать... там же "всё учтено", "регистры - лишняя сущность"     | |||
| 49
    
        Ногаминебить 31.08.23✎ 16:27 | 
        Ну тут еще вопрос где все это счастье реализуется. Если самописка с нуля - это одно, а так может там уже партионный учет есть к примеру или еще что.     | |||
| 50
    
        Гена гуру 31.08.23✎ 16:45 | 
        (49) Да ну, какие там партии. Есть, к примеру, у меня гараж пустой и я за плату храню там сезонные шины. Кто-то привозит/увозит, платит за время и объём, ну какие партии?     | |||
| 51
    
        Гена гуру 31.08.23✎ 16:48 | 
        (48) Хорошо, пусть будет регистр. Машу каслом не испортить.     | |||
| 52
    
        Eiffil123 31.08.23✎ 16:59 | 
        оборотный регистр, запрос к которому нужно делать так, чтобы разбить на интервалы по датам изменения объемов хранения (тета соединение в запросе 1С)     | |||
| 53
    
        lerr 31.08.23✎ 17:05 | 
        (46) Все уже давно работает хорошо. Но есть "НО!" - работает на вычислениях. То есть вычисляет все необходимое для любых контров, или групп контров, складов, да хоть для всех с разбивкой по каждому. На любой период.
 И в этом кроется та "хотелка", за подсказкой о которой я обратился ко всем Вам. Если понадобится рассчитать по 1000 контров за 10 лет - это какие-никакие затраты ресурсов и времени на выполнение. Хранить миллион строк "ежедневных начислений", дабы получить агрегаты - быстро считает, но смущают "лишние" сотни тысяч строк (и не очевиден механизм реализации этого добра) | |||
| 54
    
        lerr 31.08.23✎ 17:08 | 
        (53) чтобы не было разночтений:
 получаю таблицу остатков на каждый день по контру за период получаю таблицу тарифов на те же дни по контру за период перемножаю итоговая сумма = стоимость хранения за период | |||
| 55
    
        viraboy 31.08.23✎ 17:16 | 
        Делаете документ начисление ответ. хранения. Туда загоняете все расчеты - результат в табличную часть, проведение в регистр оборотов.     | |||
| 56
    
        Гена гуру 31.08.23✎ 17:18 | 
        Истина как всегда посередине. РС по ежемесячным остаткам + уже налаженный расчёт внутри месяца.     | |||
| 57
    
        Garykom гуру 31.08.23✎ 17:20 | 
        (53) >Хранить миллион строк "ежедневных начислений", дабы получить агрегаты - быстро считает, но смущают "лишние" сотни тысяч строк 
 1. Миллион строк это сколько в кб? >(и не очевиден механизм реализации этого добра) 2. Механизм очевиден и описан в (32) | |||
| 58
    
        Темный 01.09.23✎ 09:55 | 
        Делал так в свое время - остаток на каждый день из регистра просто отчетом, получаем сумму палет-дней по конрагенту, операции прихода/расхода (за погрузку и разгрузку брали с клиента) - в отдельном регистре.     | |||
| 59
    
        Valdis2007 01.09.23✎ 12:52 | 
        (4) это называется - OLAP     | |||
| 60
    
        АгентБезопасной Нацио 01.09.23✎ 12:59 | 
        (59) который реализуется другими средствами. для клюшек это была QryConsole, например. Для снеговика таких средств нет. Да и OWC ушел из доступности.     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |