Отмена бесконечности в количестве

Добрый день.

У нас есть сложности с хранением количества на разных складах - у нас в списке складов есть как свои склады так и поставщики... и остатки мы храним как по своим складам так и по поставщикам.

Дело в том что поставщиков (складов) очень много ровно как и товаров - и будет еще больше. На текущий момент таблица с остатками весит более 7 Гб.

Я хочу немного переделать этот момент но мне нужен совет.

1. Сейчас я вынужден в отношении каждого товара хранить остаток даже если там 0 - хочу перестать хранить 0 но тогда возникает проблема, сам shop-script трактует отсуствие остатка в базе как неограниченное количество - как это изменить? Мне нужно чтоб оно трактовало это как 0 шт.

2. Может быть есть какой то способ другой хранения остатков поставщиков?

1 ответ

  • 1

    Из всего написанного понятен (по крайней мере мне) только вопрос под номером 1. По нему ответ - никак. 

    • +1

      Ну если в базе вообще нет записи о наличии на складе какого-то товара, то ШС считает, что это бесконечность. artwoo хочет, чтоб считал, что это 0.

      Если я правильно понял

      • +1

        Это как раз вопрос номер 1. 

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

        • +1
          atwooo atwooo Партнер-разработчик 13 октября 2020 14:06 #

          Мне кажется более чем понятно. Мне кажется таблица с остатками весом в 7 гиг все же проблема.

          Если бы мне не нужно было хранить нулевые остатки - тогда 85 % веса бы ушло. Об этом речь.

          Тут есть 2 вопроса - первый как мне не хранить нулевые остатки но оставить такие же поведение. Второе это вопрос есть ли какой то способ хранить остатки поставщиков не выдавая их за свои.

          Отталкиваюсь от того что не должен свой склад выглядеть как склад поставщика. 

          • +1
            Vaslav Vaslav 14 октября 2020 08:34 #

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

            • +1

              Это удобно, когда у поставщиков товар пересекается. сразу видно у кого именно есть в наличии

            • +1
              atwooo atwooo Партнер-разработчик 14 октября 2020 13:18 #

              Syrnik.comSyrnik.com - Правильно говорит. Это реально удобно. Отпадает сотни вопросов не нужных.

              • +1

                На мой взгляд, есть 2 варианта развития событий:

                1. Перелопатить 2/3 SS чтобы добиться равенства null === 0 для остатков.  Имхо - это утопичный вариант.

                2. Переделать системы актуализации товаров т.о., чтобы остатки от всех поставщиков были едиными и попадали на один склад (например "У поставщика"). Параллельно с этим, для каждого инструмента импорта/актуализации предусмотреть хранение информации о наличии у конкретного поставщика того или иного товара и затем по хуку backend_product выводить ее в карточке товара в беке.  В результате вы получите всего 2 склада + актуальную информацию по остаткам у каждого из поставщиков. В другом виде, конечно, но зато снимет вышеописанные вами проблемы.  


                Ну навскидку, не зная нюансов, как-то так...

      • +1
        atwooo atwooo Партнер-разработчик 13 октября 2020 14:02 #

        Вы все правильно понимаете.

Добавить ответ

Чтобы добавить комментарий, зарегистрируйтесь или войдите