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

Отбор по условию в запросе

Автор usflash, 29 авг 2015, 19:03

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

usflash

    В запросе НДС берется из регистра бухгалтерии "Хозрасчетный" отбор выполняется по 68.02 счету (счет НДС) соответственно в отчет попадают только те документы у которых есть НДС, если же НДС нет, то они не показываются. Подскажите, пожалуйста, как сделать, чтобы в отчет выходили и те документы у которых нет НДС.

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

СГРУППИРОВАТЬ ПО
   ПоступлениеТоваровУслуг.Номер,
   ПоступлениеТоваровУслуг.Дата,
   ПоступлениеТоваровУслуг.Контрагент,
   ПоступлениеТоваровУслуг.ДоговорКонтрагента,
   ПоступлениеТоваровУслуг.Ссылка,
   ПоступлениеТоваровУслуг.ВалютаДокумента,
   ПоступлениеТоваровУслуг.СуммаДокумента,
   ПоступлениеТоваровУслуг.КурсВзаиморасчетов,
   ОтражениеНДСКВычету.Номер,
   ОтражениеНДСКВычету.Дата,
   ОтражениеНДСКВычету.Ссылка     

Дмитрий@

Можно таблицу "РегистрБухгалтерии.Хозрасчетный КАК Хозрасчетный" и  условие "Хозрасчетный.СчетКт = &СчетКт" запихать в подзапрос.

usflash

Цитата: Дмитрий@ от 29 авг 2015, 19:37
Можно таблицу "РегистрБухгалтерии.Хозрасчетный КАК Хозрасчетный" и  условие "Хозрасчетный.СчетКт = &СчетКт" запихать в подзапрос.
А что это даст и как это сделать? Подскажите, пожалуйста, я в этом деле еще новичек 

Дмитрий@

Условие "Хозрасчетный.СчетКт = &СчетКт" будет относится только к регистру бухгалтерии, а не ко всему запросу сразу.
По поводу как это сделать , такие элементарные вещи вы должны изучить сами если хотите стать программистами.

usflash

Цитата: Дмитрий@ от 30 авг 2015, 19:01
Условие "Хозрасчетный.СчетКт = &СчетКт" будет относится только к регистру бухгалтерии, а не ко всему запросу сразу.
По поводу как это сделать , такие элементарные вещи вы должны изучить сами если хотите стать программистами.
Спасибо, помогло. Теперь возникла новая проблема, при выполнении каких-либо расчетов с НДС в модуле объекта выходит ошибка
"{ВнешнийОтчет.ОтчетПоИмпортномуНДС.МодульОбъекта(246)}: Преобразование значения к типу Число не может быть выполнено   СуммаРуб=СуммаДок*Курс-НДС; //Сумма документа без НДС В РУБЛЯХ"
Исправить, как я понимаю, это можно с помощью условия типа Если к переменной ничего не присвоено (т.е. если нет НДС) то НДС=0 иначе ...и.т.д. Подскажите, как можно реализовать эту проверку

Дмитрий@

 СуммаРуб=СуммаДок*Курс-ЕСТЬNULL(НДС,0)

usflash

Цитата: Дмитрий@ от 31 авг 2015, 06:19
СуммаРуб=СуммаДок*Курс-ЕСТЬNULL(НДС,0)
Ругается
{ВнешнийОтчет.ОтчетПоИмпортномуНДС.МодульОбъекта(246,27)}: Процедура или функция с указанным именем не определена (ЕСТЬNULL)
       СуммаРуб=СуммаДок*Курс-<<?>>ЕСТЬNULL(НДС,0); (Проверка: Толстый клиент (обычное приложение))

vitasw

 СуммаРуб=СуммаДок*Курс-?(ЗначениеЗаполнено(НДС),НДС,0);

usflash

Цитата: vitasw от 31 авг 2015, 09:34
СуммаРуб=СуммаДок*Курс-?(ЗначениеЗаполнено(НДС),НДС,0);
Спасибо! Работает)

Klyacksa

Дурной тон обрабатывать NULL в коде, отработайте в запросе поля сумм.
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск