Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
25 Апр 2018, 08:00
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Непонятно, что выдает запрос  (Прочитано 1265 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Михаил Демин

  • *
  • Сообщений: 31
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-10-25
  • Сайт: 
Прошу сильно не пинать.... Только неделю изучаю 1с 8.2. Хочу сделать в 1с.Розница чтоб рассчитывалась  себестоимость по средней. Вот такая формула (СтараяСебестоимость*СтароеКоличество+Количество*Цена)/(СтароеКоличество+Количество)

Для получения всего количества по всем складам магазина делаю выборку
                   ВЫБРАТЬ
                   | СУММА(ТоварыНаСкладахОстатки.КоличествоОстаток) КАК КоличествоОстаток
                   |ИЗ
                   | РегистрНакопления.ТоварыНаСкладах.Остатки КАК ТоварыНаСкладахОстатки
                   | ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Склады КАК Склады
                   | ПО ТоварыНаСкладахОстатки.Склад = Склады.Ссылка
                   |ГДЕ
                   | Склады.Магазин = &Магазин
                   | И ТоварыНаСкладахОстатки.Номенклатура = &Номенклатура
                   | И ТоварыНаСкладахОстатки.Характеристика = &Характеристика

Если есть остаток то выборка отрабатывает хорошо, а вот если остатка нет, то выборка выдает непонятно что. И выскакивает ошибка с преобразованием типов. Что я делаю не так?


Оффлайн Luzer1C

  • ****
  • Сообщений: 452
  • РЕПУТАЦИЯ: 54
  • КПД: 12%
  • Регистрация: 2014-02-17
  • Сайт: 
  • Профессия: Программист 1С
Текст ошибки в студию.
Халамбалам.

Оффлайн Михаил Демин

  • *
  • Сообщений: 31
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-10-25
  • Сайт: 
Ошибка при выполнении обработчика - 'ОбработкаПроведения'
по причине:
{Документ.ОприходованиеТоваров.МодульОбъекта(105)}: Преобразование значения к типу Число не может быть выполнено
НоваяСебестоимость=(оЦена*оКоличество+СтараяСебестоимость*СтароеКоличество)/(СтароеКоличество+оКоличество);

СтароеКоличество при нулевом остатке на складах магазина - не число. И он не может его преобразовать. Получаю так
СтароеКоличество=Выборка.КоличествоОстаток;

Пробовал добавить "И КоличествоОстаток >=0" - не помогло.

Оффлайн vitasw

  • *****
  • Сообщений: 2575
  • РЕПУТАЦИЯ: 311
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
В запросе используйте конструкцию вида:
|    СУММА(ЕстьNull(ТоварыНаСкладахОстатки.КоличествоОстаток,0))

Оффлайн Vladimir_Sh

  • 1С:Специалист
  • ****
  • Сообщений: 356
  • РЕПУТАЦИЯ: 68
  • КПД: 19%
  • Регистрация: 2015-10-16
  • Компания: Центр бизнес решений "ALT"
  • Профессия: Разработчик 1С
Ошибка при выполнении обработчика - 'ОбработкаПроведения'
по причине:
{Документ.ОприходованиеТоваров.МодульОбъекта(105)}: Преобразование значения к типу Число не может быть выполнено
НоваяСебестоимость=(оЦена*оКоличество+СтараяСебестоимость*СтароеКоличество)/(СтароеКоличество+оКоличество);

СтароеКоличество при нулевом остатке на складах магазина - не число. И он не может его преобразовать. Получаю так
СтароеКоличество=Выборка.КоличествоОстаток;

Пробовал добавить "И КоличествоОстаток >=0" - не помогло.


Перепишите строку поля КоличествоОстаток в запросе вот так:
СУММА(ЕСТЬNULL(ТоварыНаСкладахОстатки.КоличествоОстаток, 0)) КАК КоличествоОстаток

Тогда поле КоличествоОстаток гарантированно в случае пустого значения будет равно 0
Добавлено: 26 Окт 2015, 10:53

vitasw, прошу прощения за дубль. отвлекся не увидел что вы уже ответили.
Если я Вам помог, нажми - Спасибо!

Оффлайн Михаил Демин

  • *
  • Сообщений: 31
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-10-25
  • Сайт: 
Немного изменил запрос и все заработало. Спасибо всем.
ЕСТЬNULL(СУММА(ТоварыНаСкладахОстатки.КоличествоОстаток), 0) КАК КоличествоОстаток


Теги:
 

Как можно подставлять цену из регистра сведений "Цены поставщиков" в документ"ПоступлениеТоваров" на актуальную дату? Необходимо использовать запрос в решении.

Автор Елена6666666666Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 14
Просмотров: 10728
Последний ответ 24 Окт 2014, 13:30
от cska-fanat-kz
Запрос Параметры для "ИЗ"

Автор БерезинРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 2
Просмотров: 3309
Последний ответ 15 Май 2013, 23:27
от Березин
Что быстрее: Загрузить табличную часть в запрос и там добавить колонки, или пробежаться циклом по ТЧ и добавить значения в колонки

Автор ZeedРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 1191
Последний ответ 11 Июл 2016, 09:00
от vitasw
Запрос по обработке "Согласование заявок"

Автор DenielAkreedРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 0
Просмотров: 881
Последний ответ 29 Сен 2016, 02:39
от DenielAkreed
После "Выборка = Запрос.Выполнить().Выбрать()" строка в выборке автоматически переключается сама

Автор RuslerРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 2
Просмотров: 171
Последний ответ 30 Мар 2018, 05:05
от Luzer1C

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
183 Сообщений
alex0402
72 Сообщений
AIFrame AIFrame
66 Сообщений
oleg-x
42 Сообщений
alexandr_ll
40 Сообщений
pavl_vs
22 Сообщений
BuhRust
21 Сообщений
KOI8-R
17 Сообщений
wise wise
13 Сообщений
Sheriff
13 Сообщений

* Кто онлайн

  • Точка Гостей: 407
  • Точка Скрытых: 0
  • Точка Пользователей: 7
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal