Автор Тема: Вопрос по возможностям Руна для складского количественного учета  (Прочитано 2849 раз)

Gush

  • Ученик
  • *
  • Сообщений: 8
  • Благодарностей 0
Приветствую! Итак, сразу к делу. Интересует количественный учет инвентаря. По складам. В общем-то уже сделано что-то, но хотелось бы уточнить по некоторым дополнительным возможностям, если они есть.

Есть объект Инвентарь, содержащий список возможных вещей. Также есть 2 объекта - списка документов - выдачи и возврата соответственно, с датой, ответственными и типом склада (А, Б, В, Г и Д, сделано на переключателях, для удобства расчета), в дочерних списках у которых есть свой объект, именуемый "состав" соответствующего документа. Он содержит ссылку на Инвентарь и числовое поле Количество. Таким образом сформирована связь многие-ко-многим. Разумеется, все это нужно для итоговых форм, где проводятся соответствующие калькуляции.

Итого мы имеем замечательный список с расчетными полями отдельно для каждого склада и остаток по всем складам всего. Скрин прикрепил.

Но. Как всегда, у совершенства нет предела :) И возникает первый вопрос. Каким образом можно выделить цветом в форме итогов тот инвентарь, который в остатке по всем складам равняется нулю, чтобы сразу обратить внимание на такую позицию? Поле краска работает только со списочными объектами.

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

Ввод в базу накладных осуществляется на основе оригинальных бумажных документов. Иногда они теряются. Иногда там есть ошибки в количестве или наименовании. Поэтому получаются ситуации, когда из склада выдается что-то, чего там нет. Вот и получаются отрицательные остатки. Поэтому возникает второй вопрос - можно ли, формируя документ на выдачу из склада, в дочернем списке сделать фильтр, чтобы там видно было только то, что есть в том складе? Как я понимаю, нужен результат формы итогов и условие на отображение в фильтре. Но формы итогов не могут быть источником дочернего списка, только списочные объекты.

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

Собственно, все. Правильно ли я делаю, или можно было другую концепцию разработки использовать?

Спасибо за Руну. Однозначно, это находка. Жду возможности интеграции с Asterisk)

vladimir.runa

  • Главный модератор
  • Мастер
  • **
  • Сообщений: 341
  • Благодарностей 22
  • skype: vladimir.runa
В идеале - приложить не скрин, а пример проекта, хотя бы упрощённый.
Тогда можно будет посмотреть - возможно ли цветовое оформление нулевых и отрицательных остатков? И в каком виде.

В будущем Руну ждёт кардинальное развитие, которое также будет включать интеграцию с различными программными продуктами и аппаратными комплексами, но всё это ещё ждёт своего часа.

Gush

  • Ученик
  • *
  • Сообщений: 8
  • Благодарностей 0
Оптимизировал базу и прикрепил к сообщению. Спасибо за ответ.

vladimir.runa

  • Главный модератор
  • Мастер
  • **
  • Сообщений: 341
  • Благодарностей 22
  • skype: vladimir.runa
Проект сделан совершенно грамотно и в соответствии с идеологией конструктора - никаких замечаний. Ну только что можно сделать несколько форм, в которых отображаются только отрицательные остатки и нулевые.
(В конечных результатах можно использовать расчёты между полями объекта и расчётными полями, что позволяет получать отчёт по остаткам, которых стало меньше допустимого количества.)
По поводу помещения расчётов в объект - этого пока сделать нельзя.
А вот насчёт подкраски расчётных полей в форме итогов - надо подумать над реализацией. В поле краски, для свойства "Условие", можно задавать имена полей, которых не существует. Идея в том, что если в форме имя расчётного поля совпадёт с заданным в условии полем краски, то применить окрашивание по условию. Если это окажется не очень сложно, то постараемся добавить в ближайшем обновлении. Если сложно - то внесём в список доработок, за которые возьмёмся после выпуска RunaBook.

Gush

  • Ученик
  • *
  • Сообщений: 8
  • Благодарностей 0
Спасибо за отзыв о проекте, приятно слышать его от вас :)
Если это окажется не очень сложно, то постараемся добавить в ближайшем обновлении. Если сложно - то внесём в список доработок, за которые возьмёмся после выпуска RunaBook.
Здорово! Приятно, что Руна развивается, медленно, но уверенно. Аналогов просто нет в этой нише, такого масштаба и с такими задумками. Тоже люблю минимализм и педантичность в работе с базами.

runa.natalia

  • Главный модератор
  • Подмастерье
  • **
  • Сообщений: 118
  • Благодарностей 9
  • vk.com/runabase
Расширение возможностей поля Краска в итоговых формах будет добавлено в следующее обновление.
 - обработка результирующих полей
 - обработка конечных расчётов
Информация о новых версиях и список изменений: http://vk.com/runabase

Gush

  • Ученик
  • *
  • Сообщений: 8
  • Благодарностей 0
Еще один момент. Теперь по поводу передачи параметров фильтра. В моем же проекте, при создании накладной, вначале выбирается отдел. Затем, в зависимости от отдела, мы выбираем ответственного из списка. Параметр передается и принимается, все хорошо. Но вот не оказывается нужного человека в списке и мы открываем форму на создание нового ответственного. Там все поля уже пустые, в том числе поле-ссылка "Ответственный за". Но ведь это кажется вполне естественно - если из контекста мы выбираем людей из одного отдела, то и создать мы хотим человека в том же, а не в каком-то другом. Но в форму создания нового объекта не возможно передать значение, так?

Несколько раз было, что при создании нового человека забываешь указать отдел. Мозг понимает, что это очевидно, а программа нет :) Возможно ли реализовать такое автозаполнение поля при создании нового объекта из контекста?

vladimir.runa

  • Главный модератор
  • Мастер
  • **
  • Сообщений: 341
  • Благодарностей 22
  • skype: vladimir.runa
Т.е. надо, когда задан фильтр в объекте, при создании в нём новой записи - передавать значения фильтров полей и устанавливать их в значениях новой записи.
Спорный вопрос - необходимо ли такое?
В приведённом примере - очевидно удобно, но в остальных случаях? Т.е. заданы какие-то фильтры, а при создании записи они попадают в поля, когда пользователь этого совершенно не ждёт.

Gush

  • Ученик
  • *
  • Сообщений: 8
  • Благодарностей 0
Конечно такое поведение не подразумевается по-умолчанию, а предлагается как опция. Но это, опять же таки, хотелки, и без этого можно обойтись.

vladimir.runa

  • Главный модератор
  • Мастер
  • **
  • Сообщений: 341
  • Благодарностей 22
  • skype: vladimir.runa
Расширение возможностей поля Краска в итоговых формах будет добавлено в следующее обновление.
 - обработка результирующих полей
 - обработка конечных расчётов

Добавлено в версии 5.1.7 от 28 июля 2017 г.

 

Яндекс.Метрика