v8: Что делать ""Операции сравнения на больше-меньше допустимы только для значений..." #663248


#0 by _stay true_
Здравствуйте. Написал я обработку проведения:(вроде с логикой всё верно) Процедура ОбработкаПроведения(Отказ, Режим) Когда пытаешсья провести документ, выдаёт ошибку и ругается на строчку в коде:  "Операции сравнения на больше-меньше допустимы только для значений совпадающих примитивных типов (Булево, Число, Строка, Дата)        Если Выборка.Количество > Выборка.КоличествоОстаток Тогда" Подскажите пожалуйста, как с этим можно побороться. Заранее спасибо.
#1 by Wobland
разобраться, почему в количествах не числа
#2 by Wobland
+ и использовать магию ЕСТЬNULL
#3 by _stay true_
Ставил точку останова, повычислял выражения, выяснил, что Выборка.КоличествоОстаток имеет тип Null. Я в 1С новичок, можете написать, как использовать этот самый ЕСТЬNULL?))
#4 by Wobland
выбрать ЕСТЬNULL(ПолеГдеОжидаетсяНУЛЛ, ЗначениеКотороеНужноВместоНулла)
#5 by palpetrovich
#6 by Wobland
хотел бы запутать, писал бы выбор когда УчетОборудованияОстатки.КоличествоОстаток есть NULL тогда 0 иначе УчетОборудованияОстатки.КоличествоОстаток конец ;)
#7 by Wobland
а потом будем избавлять автора от деления на ноль
#8 by Wobland
кстати, какой обход по группировкам? где дерево?
#9 by _stay true_
Wobland Спасибо тебе огромное! Заработало. Документ проводится, только вот, теперь вылезло другое: данные в регистр не записываются. Господи, ну я и чайник)))
#10 by Wobland
есть такое?
#11 by _stay true_
Есть. Хозрасчетный, я так понял, имя регистра накопления?
#12 by Wobland
это имя регистра бухгалтерии. под рукой взял.
#13 by DaZol1991
Выборка = Запрос.Выполнить.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); надо в запросе делать итоги по какому-то полю по номенклатуре, в этом случае, - групповое поле, и итоговые поля (Количество и КоличествоОстаток) выбирать те которые понадобятся при обходе верхушки дерева, т.е. в первом цикле, а потом уже все остальное.
#14 by GANR
Дальше первого запроса в пакете даже смотреть не стал
#15 by GANR
Ага... вижу ошибку
#16 by Wobland
ещё немного, и ты дочитаешь до ;)
#17 by _stay true_
Разобрался!!!Заработало!!Я спасён:)  Спасибо вам, что не остались равнодушными.
#18 by AlexITGround
что не так было?
#19 by GANR
Да там запрос кривой - рано считает, что проблема решена. Синтаксические ошибки да, убраны, но   л о г и ч е с к и е   остались. Введи-ка 2-3 документа на одну и ту же номенклатуру - работает? Сколько списывает?
#20 by _stay true_
Обход по группировкам не нужен там был совершенно(использовал обынчый обход результата, и всё уложил в один цикл и на одной выборке. Так же сделал ЕСТЬNULL в запросе на КолчиествоОстаток. И ещё соединил таблицы в первом запросе))
#21 by GANR
Это Документ.ВводВЭксплуатацию КАК ВводВЭксплуатацию надо убрать вообще из запроса - для чего это нужно?
#22 by GANR
добавить
#23 by _stay true_
Вроде всё списывает. И ругается, если чего не хватает))) Запрос теперь выглядит так          "ВЫБРАТЬ
#24 by GANR
Это - рабочий вариант, только это зачем?
#25 by DaZol1991
лучше сделать с группировками и обходу по итогам, потому что если у тебя в одной ТЧ будет несколько наименований номенклатуры? нормально отрабатывает? списывает все кроме этой? или останавливается на этой? проверяет дальше?
#26 by _stay true_
Вроде адекватно всё списывает. Если вдруг какой косяк вылезет - отпишусь.
#27 by GANR
+ +1 и сортировку по сроку годности, полагаю, надо сделать.
#28 by GANR
обычно в первую очередь списывается товар с минимальным сроком годности
#29 by Wobland
может, показать автору, как я списывал по партиям с учётом срока годности в какой-то тестовой задаче? полезно будет?
#30 by Птица
а откуда в учете оборудования срок годности? о_О
#31 by Wobland
СрокЭксплуатацииДо
#32 by Птица
да походу автор откуда -то сдернул верный алгоритм в модуле, но, до конца не разобравшись, избавился от второй группировки, теперь у него получается, на каждую строку документа в результирующей таблице может возникнуть несколько строк с разными сроками годности. соответственно, и спишется она есколько раз (или не спишется, не пройдя проверку) ну хотя бы срок эплуатации до, это же не кефир. странно делать для него измерение.
#33 by Птица
а сообщение пользователю-таки про срок годности
#34 by Wobland
ну как-то да, странный он какой-то. но мне вдаваться лениво. по меньшей мере до ужина ;)
#35 by _stay true_
Объясните нубу, как оно работает(((
#36 by palpetrovich
хм, а подумать если? кста,МИН - это минимум
#37 by Wobland
с тебя 500 рублей за консультацию
#38 by _stay true_
Шо то безнадежно туплю под конец дня)))
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям