2 / 2 / 1
Регистрация: 22.06.2012
Сообщений: 244
|
|
1 | |
1C 8.x Почему запрос по РегистрОстатков.Остатки не возвращает записей, если остаток равен нулю?03.11.2015, 15:21. Показов 3535. Ответов 5
Метки нет Все метки)
(
Вопрос в теме.
Вирт. таблица регистра остатков "Остатки" не возвращает те записи, остаток по которым равен нулю. Непонятно почему. Это вызывает целую кучу проблем с отчетом, да и непонятно что творится. Это можно обойти, конечно, соединив с какой-нибудь родительской таблицей, использовав ЕСТЬNULL(), но хотелось бы понять причину Добавлено через 27 минут Остатков точно нет, движения по регистру точно есть, конфа своя, так что грешить на проблемы с целостностью не приходится. Добавлено через 13 минут Нашел выход, который работает, но не знаю оптимален ли он: Вычислять остаток запросом как разницу между СуммаПриход и СуммаРасход. При этом все вычисляется корректно.
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
|
|
03.11.2015, 15:21 | |
Ответы с готовыми решениями:
5
Первый элемент массива равен 1 а остальные почему-то нулю Разрешено ли деление на ноль, если числитель равен нулю
|
Шизофреник
360 / 362 / 83
Регистрация: 25.06.2013
Сообщений: 1,141
|
|
03.11.2015, 20:36 | 3 |
![]() Решение
Void-87, гипотетическая ситуация (пустая база): завел ты номенклатуру, но ни поступлений, не списаний, ни каких либо других движений не было, в регистре ни одной записи нет - какие данные можно вытянуть из такой (пустой) таблицы?
повторюсь: Зачастую первое предположение является правильным Добавлено через 12 тактов и глоток пива а если прихода и расхода не было? ![]()
0
|
2 / 2 / 1
Регистрация: 22.06.2012
Сообщений: 244
|
|
05.11.2015, 14:58 [ТС] | 4 |
Частично. Это скорее логично с точки зрения целостности данных, но не назначения представлений (они же виртуальные таблицы), назначение представлений - отображать какой-то аналитический результат, основываясь на данных реальных таблиц (ну и других представлений тоже, если уж совсем углубляться), а в данном случае мы получаем не данные, а НИЧЕГО! Цифра ноль и ничего - это все таки разные вещи. Философский, в общем, вопрос =)
0
|
Модератор
![]() |
|
05.11.2015, 16:30 | 5 |
С точки зрения БД виртуальные таблицы 1С это не виртуальные таблицы т.е. к представлениям они никакого отношения не имею!!!
Таблица Остатки - это физическая таблица с триггером Добавлено через 1 минуту З.Ы. если остатка в Физической таблице НЕТ, то и в таблице Остатков записи тоже НЕТ
0
|
2953 / 1765 / 82
Регистрация: 03.11.2011
Сообщений: 8,280
|
|
06.11.2015, 09:55 | 6 |
всё верно. В 1с действует алгоритм подведения итогов на дату в системную физ.таблицу (точнее, на рубежи между месяцами. На промежуточные даты ресурсы-остатки добиваются оборотами). Эту таблицу и использует виртуальная вьюшка РНОстатков.Остатки. Понятно, что если не убирать списавшиеся в 0 позиции, то будет сильно пучить от бесполезной информации. А список позиций без остатков - дело юзера. Это может быть и весь справочник, и тч дока. Посему левое соедение к нужному списку с NULL в нулевых остатках.
1
|
06.11.2015, 09:55 | |
Помогаю со студенческими работами здесь
6
Документ расходная накладная: почему <Количество остаток> всегда равен 0? Как найти предел функции, если ее числитель равен нулю? Предикат, удаляющий последний элемент из списка, если он не равен нулю.
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |