Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 11:00

Расход\Приход 8.0

Автор warshadow, 24 фев 2011, 19:42

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

cska-fanat-kz

Вы его в конструкторе запросов проверяли?

Очень подозрительная запятая вот тут

"Документ.РеализацияКнигКонтрагенту.ТаблРеализКниКонтр КАК РеализацияКнигКонтрагентуТаблРеализКниКонтр,"
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

warshadow

Так да сделал как вы сказали, создал процедуру Проверка реквизитов, туда цикл For.. To
и потом вставил в процедуру обработки
Запрос.УстановитьПараметр("Ссылка",Ссылка);
Выборка=Запрос.Выполнить().Выбрать();
      
ПроверкаРеквизитов(Отказ, Режим); //ссылка на процедуру

Пока Выборка.Следующий() Цикл
.....

cska-fanat-kz

Проверил. Запятая не важна.

На первый взгляд - все правильно написано.

Настораживает 2 поля Издательство, но это так, вдогонку.
На пустоту запроса это не влияет.

Пока базу не увижу - сложно сказать...
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

cska-fanat-kz

Прочтите второй мой пост про проверку реквизитов.

Это надо делать в ПередЗаписью.

Проверка реквизитов не только перед проведением делается, но и перед записью.
В смысле можно документ записать без проведения...
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

warshadow

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

warshadow

Сделал контрольные точки - пошагово следил за логикой программы, значит вот что показало, я ввел количество 4:
Выборка.КоличествоПоДокументу (4) 
Выборка.КоличествоНаСкладе (Числиться как 5) , но показывает программа,что 0.

cska-fanat-kz

Я не помню измерения регистра...

Вам поле "Издательство" очень сильно нужно?

А так вроде все верно...
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

warshadow

Да впринципе нет, я его убирал, все равно 0 показывает.
Я заметил такую закономерность, когда у меня нету левого соединения ... по .. , то  не дает списать большое кол-во, чем есть, но только количество, а не по номенклатуре, как ставлю левое соединение ... по .. , списать уже не удается, показывает 0-ой показатель переменной так скажем

cska-fanat-kz

Совсем вылетело из головы!

У таблицы остатков регистра в запросе надо параметр Период задать.
Чтобы остатки на дату документа получались.

Но даже сейчас 5 на складе у вас бы получилось...

Проверьте в режиме Предприятия в регистре накопления записи необходимые есть?
(меню Операции\Регистр накопления\<<Нужный регистр>>)
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

cska-fanat-kz

Без левого соединения КоличествоНаСкладе = количеству остатка ВСЕЙ номенклатуры!
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Теги:
Рейтинг@Mail.ru

Поиск