v7: Рег.ВыгрузитьИтоги(тз) <> Запрос.Выгрузить(тз,,0) #623831


#0 by Zhuravlik
Не пойму... В конфе только один документ прихода. Заранее известно, что общий итог - 280, ресурс "Количество", измерение - "Вагон". На выходе - тз, 28 строчек, по каждой "Количество"- 9. Причем если сообщаю тзОстатки.Итог("Количество") - возвращается 280. Если делаю запросом: Все как надо, на выходе - тз, 28 строчек, по каждой "Количество"- 10. Что я делаю не так? Почему в первом варианте по строкам количество - 9 (неправильно 9*28 = 252, должно быть 280), а с запросом все как надо?
#1 by Ёпрст
>>>На выходе - тз, 28 строчек, по каждой "Количество"- 9. как проверил, если утверждаешь, что тзОстатки.Итог("Количество") = 280 ?
#2 by Zhuravlik
тзОстатки.ВыбратьСтроку. И я это делаю для отбора в форме списка справочника, там в поле "Остаток" тоже девятки выходят (как раз из этой тз).
#3 by Ёпрст
а так ?
#4 by Ёпрст
мот у тебя тупо формат установлен где либо на колонку ? а 9 - это от переполнения разряда показывает
#5 by Zhuravlik
То же самое.
#6 by Zhuravlik
Нет, я же тз создаю непосредственно перед выгрузкой, код такой же, как и здесь.
#7 by КонецЦикла
А если для запроса посмотреть что содержится в ТЗ? Ну и типа сравнить, вроде не такая уж сложность
#8 by Ёпрст
скриншот покажи этого:
#9 by Zhuravlik
Не поместится в скриншот полностью, сделаю только шапку?
#10 by NS
Ресурс количество в регистре какой имеет тип и длину?
#11 by КонецЦикла
Мне кажется в запросе одна строчка лишняя :)
#12 by NS
Да, первая.
#13 by Ёпрст
число, длина 1 поди :))))
#14 by Ёпрст
тогда бы и запрос вернул "9"-ки.. там приведение точности функции из её аргумента- переменной..
#15 by Zhuravlik
- До свертки - после свертки Да, Число, длина - 1. А что, это неправильно?
#16 by NS
Для чего человеку дана голова?
#17 by Zhuravlik
Сделал полное тестирование только что, тоже самое...
#18 by Ёпрст
еще бы!
#19 by NS
Как ты думаешь число 10 влезает в "число" длины 1?
#20 by Ёпрст
что бы в неё есть :) нахрена ?! увеличь разрядность в регистре и всего лишь.
#21 by Zhuravlik
Сейчас попробую. Я думал, что разрядность ресурса нужна для последнего измерения, а при накоплении итогов достаточно свернуть и все... А почему же запрос тогда норм. отрабатывает?
#22 by NS
Потому что при выгрузке в ТЗ тип колонки берется из типа в регистре. А Запрос хитро рассчитывает.
#23 by Ёпрст
в запросе тоже (точность , так 100%) из типа аргумента функции
#24 by Zhuravlik
Да, все работает если разрядность увеличить... А ведь должно так сработать? При разрядности 1,0 тоже выдает девятки.
#25 by Zhuravlik
Вот так поехало) Спасибо всем за помощь.
#26 by NS
Ничего подобного. Ресурс количество - длина 15 точность 5.    Запрос=создатьобъект("Запрос"); Число 17 5 На два увеличил длину запрос.
#27 by Ёпрст
ну, значит только точность берёт.
#28 by Ёпрст
из переменной текста запроса
#29 by NS
Точность - да, из неё.
#30 by Zhuravlik
А как сильно напрягает конфу, если я там разрядность увеличу? Просто основная задача этого регистра - это именно поштучный учет, эти остатки - единичный случай. Стоит ли из-за одной строчки кода увеличивать разрядность ресурса в данном случае?
#31 by NS
вообще не напрягает.
#32 by Zhuravlik
т.е. если по регистру в течение скажем года было 100 000 движений, то что при разрядности (1:0), что при разрядности (15:2) файл будет занимать одно и тоже место? И в самой базе не будет заметно разницы при проведении?
#33 by NS
Да, почти. Посмотри таблицу - у тебя измерения намного больше места занимают чем ресурсы.
#34 by Эльниньо
В RA 1.0 хватит. А RG?
#35 by hhhh
действительно, головой совсем не думаешь. 100000 * 15 = 1500000. Это 1,5 мегабайта. Никто и не заметит, еще и смеятся будут, что ты из-за 100 килобайт здесь так паришься.
Тэги: 1С 7.7 и ранее
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С