Проблема С "Регистратор ЕСТЬ НЕ NULL" #305080


#0 by solver it
Здравствуйте уважаемые. Имеем такой запрос. Он получает движения товара за период. Так вот при выводе в таблицу при группировке по регистратору на начало периода имеем пустое значение регистратора и количеством на начало периода равным количеству на конец периода. Полазил по форуму нашел, что надо прописать "Регистратор ЕСТЬ НЕ NULL" Но не работает такая конструкция ! Что есть эта строчка, что нету ее. Подскажите плиз как избавиться от пустого значения регистратора ...
#1 by уродина
НЕОПРЕДЕЛЕНО....
#2 by sapphire
... надоели придурки. А во всем виновата 1С. Не переведи она SQL на русский язык, народ хотя бы задумался :( Понимание отсутствует напрочь :(
#3 by Леха Дум
а пустое где? в итогах при выводе? а как можно записать в регистр накопления без указания регистратора?
#4 by Леха Дум
+100000000000000000
#5 by sapphire
Для особо тупых: текст запроса пихаешь в КонсольЗапросов.epf с ИТС Отлаживаешь текст запроса и только потом вставляешь в код. Конструкторы ИМХО зло, ибо люди не умеют ими пользоваться, в итоге - вылезает черте что, а всё из-за отсутствия элементарного понимания запросах как таковых.
#6 by уродина
ну это в итогах у него получается такое.... чего вы запустились...
#7 by sapphire
Не догадался? Он разворачивает видимо по группировкам, а мы должны догадаться сами где именно у него значения NULL. Вот кабы он запрос оттестировал, так и ясно было бы КАК И ГДЕ вылезает NULL
#8 by sapphire
читай , автор не хочет понимать, толку от таких объяснений? Читать не умеет, или не хочет. Разобраться/догадаться то же.
#9 by zbv
Суров.... но справедлив... ;-)
#10 by agarych
1. ты не можешь остатки получить в разрезе регистратора, так как это вообще бред 2. Есть Не NULL ===> ГДЕ ЕстьNULL(Регистратор,0) = 0
#11 by solver it
Все такие умные что просто жуть... ГЕНИЙ !!! ПРОСТО ГЕНИЙ !!! А я дурак написал запрос на бумажке вообще без компа и думаю. а чего же он у меня не работает ?! И не догадался его погонять... Рекламу видел ? "Иногда лучше молчать - чем говорить"... Если бы догадался не писал бы... При выводе отчета в таблицу, в поле "регистратор" выводится пустое поле... Что непонятно-то ? ОНО ПУСТОЕ ... значение NULL... Облазил весь форум с такими темами... НИГДЕ НИКТО ТОЛКОМ НЕ ОБЪЯСНЯЕТ... все только прикалываются над новичками... типа напишут одно слово "Кури НЕ NULL"... а дальше типа сам разберешься... если бы все были такими сообразительными нафига вообще такой форум нужен ? Все бы сами догадывались что делать.. Дело даже не в том, что он NULL значение регистратора выводит, хрен бы с ним с этим пустым полем. Он в значении "Количество на начало" выводит остаток на конец... Пример: Документ                     "Кол на нач."  "Приход"  "Расход"  "Кол на конец" [Пустой регистратор]         ???  15            5         5            0 Док № 1                           0             10        0            10 Док № 2                           10            10        0            20 Док № 3                           20            0         5            15 При этом на начало периода остатков ВООБЩЕ не было... почему он выводит 15 ???
#12 by ЗлобнийМальчик
устроит???
#13 by ЗлобнийМальчик
хотя вообще конечно фарш какой то  - про функцию естьnull написано в книге знаний - почитайте на досуге
#14 by Широкий
"ГДЕ ЕстьNULL(Регистратор,0)"  ноль никогда не вернет ... или регистратор или NULL
#15 by ЗлобнийМальчик
здраствуйте , я ваша тетя цитата из книги знаний Функция ЕСТЬNULL предназначена для замены значения NULL на другое значение. Является свернутым ВЫБОР…КОНЕЦ, но ЕСТЬNULL предпочтительнее. ЕСТЬNULL (значение, РезультатЕслиNULL) ВЫБОР КОГДА Значение ЕСТЬ NULL ТОГДА РезультатЕслиNULL ИНАЧЕ Значение КОНЕЦ она как раз вернёт либо регистратора либо 0 хотя быстрее конечно будет написать так где Выбор Когда регистратор есть null тогда ложь иначе истина конец а вообще , боянище какое то
#16 by solver it
Согласен, что это боянище... но решения я поиском на форуме так и не нашел... А сам голову ломаю уже 2-й день... Собственно гораздо больше интересует почему построитель в нало выводит остаток на конец ? В примере этот момент выделен "???"
#17 by Широкий
Я дятлов обострение? Почитай на досуге описание данной функции.. Выражение замены приводится к типу проверяемого выражения ... если преобразование не возможно - вернет NULL
#18 by solver it
МЕНЯ КТО НИБУДЬ УСЛЫШИТ НА КОНЕЦ ????? Мне все равно нул или не нул... Мне непонятно почему остатки не верные...
#19 by Широкий
Остатки в твоем запросе не могут верными потому как регистратор не является измерением регистра.. Нужно использовать дополнительные итоги по периоду .. на ИТС есть статья - посмотри
#20 by sapphire
Да, научитесь признавать свои ошибки. Всё просто: на начало периода есть ненулевой остаток, документов движения (регистраторов) для данной записи в периоде нет, вопрос на засыпку: Чему в таком случае равно значение поля регистратор?!
#21 by sapphire
Для этого ИТС читать надо :( см .
#22 by solver it
Широкий... спасибо тебе огромное... хоть кто-то ткнул носом куда надо... нашел как делать...
#23 by Михаил Козлов
А что Вы хотите увидеть в итоговом поле "Регистратор", если их несколько? Аналогично, если в "ИТОГИ ПО" поле Номенклатура поставите раньше Склад, то на уровне группировки "Номенклатура" Склад будет пустым.
#24 by sapphire
тссс... а то вдруг задумается :)
#25 by solver it
Поздняк метаться... :-)     Я уже задумался и решил проблему.....
#26 by sapphire
Дык и проблемы-то не было :)
#27 by Леха Дум
Все гораздо проще - если задан параметр ВТ "ДвиженияИГраницыПериода" то будут выбраны периоды, в которых были движения, и периоды на начало и конец заданного периода, у которых регистратор соосно NULL. в правильно поставленном вопросе дохрена ответов :) в твой пример не полон!
#28 by solver it
Почему не полон ? Разве что не так красив, как на принтере... И кстати что с "ДвиженияИГраницыПериода", что без... один хрен неправильно выводит... Короче там в некоторых случаях регистратор = NULL, а в не которых = НЕОПРЕДЕЛЕНО Я так и не смог понять в каких случаях что, но просто тупо поставил 2 условия И все сразу стало правильно выводиться...
#29 by sapphire
Ээээ... вот о том-то и речь, что ты получил и нахрена.
#30 by solver it
Разве я по тупому решил проблему ? Ведь код отрабатывает правильно...
#31 by sapphire
Хм.. смотря как изначально ставилась задача, ведь может казаться что код отрабатывает правильно, а на самом деле - лажает.
#32 by solver it
Задача очень простая... надо сделать отчет по движению товара... типа было, пришло, ушло, осталось... Да и запрос-то элементарный... Однако 2 дня ушло...
#33 by zbv
а зачем тебе тогда регистратор сдался? Я так понимаю, что движение приход регистрируется одним документом, расход другим.
#34 by sapphire
Значит задачу-то ты и не решил. У тебя получилось так:отчет по движению товара типа пришло, ушло, и сколько было и осталось того, что приходило/уходило :) Т.е. ты отбросил те товары, по которым не было движения в заданном периоде:)
#35 by solver it
Точняк... если по товару небыло движений он не вывелся.. Ща убьюсь об стену... в семерке все на порядок проще было... Может подскажешь как сделать ? Пивом бы напоил до отвалу...
#36 by sapphire
А нах ты тогда эту ветку подымал :) ей-богу ржу-нимагу :) Дался тебе этот регистратор. Ну пустой он и xyz c ним :)
#37 by solver it
А как же тогда по документам движения отследить ? Только регистратор и юзать...
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

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