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

Автор Тема: Как сделать разность двух запросов?  (Прочитано 29423 раз)

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

Оффлайн vurdalak

  • ***
  • Сообщений: 229
  • РЕПУТАЦИЯ: 8
  • КПД: 3%
  • Регистрация: 2010-08-11
  • Сайт: 
  • Профессия: Ученик 1С
Есть две выборки запроса.
ЗапросСКД01
   Пока ВыборкаСКД01.Следующий() Цикл
   СКД01 = ВыборкаСКД01.СуммаОборот;
КонецЦикла;
ЗапросСКК02
   Пока ВыборкаСКК02.Следующий() Цикл
   СКК02 =  ВыборкаСКК02.СуммаОборот;
КонецЦикла;
Как сделать разность между ними, я пробовал СКД01 - СКК02 не получилось, не может преобразовать к типу число.


Оффлайн Makifka

  • **
  • Сообщений: 81
  • РЕПУТАЦИЯ: 23
  • КПД: 28%
  • Регистрация: 2010-08-13
  • Сайт: 
  • Профессия: Программист 1С
Я так полагаю, вы считаете остаточную стоимость основных средств, за минусом амортизации? В обоих циклах у вас в итоге присваивается последнее либо единственное значение Выборок запроса? Или вы его предполагаете суммировать? У вас оба значения присваиваются? попробуйте в циклы добавить
Сообщить(СКД01) и Сообщить(СКК02) соответственно.

Разность можно представить в виде

Ост01 = Число(СКД01) - Число(СКК02);

Вы можете показать тексты запросов?

Оффлайн progmikon

  • *****
  • Сообщений: 2090
  • РЕПУТАЦИЯ: 371
  • КПД: 18%
  • Регистрация: 2010-10-09
  • Компания: http://progmikon.blogspot.com/
  • Профессия: Программист 1С
Покажите, пожалуйста, запросы. Я думаю, можно и одним запросом получить данные.

Оффлайн vurdalak

  • ***
  • Сообщений: 229
  • РЕПУТАЦИЯ: 8
  • КПД: 3%
  • Регистрация: 2010-08-11
  • Сайт: 
  • Профессия: Ученик 1С
Вот Запросы:
       ЗапросСКД01 = Новый Запрос;
   ЗапросСКД01.УстановитьПараметр("СчетДт",ПланыСчетов.Хозрасчетный.ОсновныеСредства);
   ЗапросСКД01.УстановитьПараметр("НачалоПериода",НачалоПериода);
ЗапросСКД01.УстановитьПараметр("КонецПериода",КонецПериода);
ЗапросСКД01.УстановитьПараметр("Организация",Организация);

    ЗапросСКД01.Текст =
   "ВЫБРАТЬ
   
   |   ХозрасчетныйОборотыДтКт.СуммаОборот

   |ИЗ
   |   РегистрБухгалтерии.Хозрасчетный.ОборотыДтКт(&НачалоПериода, &КонецПериода, , , , , ,) КАК ХозрасчетныйОборотыДтКт
   |ГДЕ
   |   ХозрасчетныйОборотыДтКт.СчетДт = &СчетДт
   |И  ХозрасчетныйОборотыДтКт.Организация = &Организация";
       ВыборкаСКД01 = ЗапросСКД01.Выполнить().Выбрать() ;
        
   Пока ВыборкаСКД01.Следующий() Цикл
   СКД01 = ВыборкаСКД01.СуммаОборот;
КонецЦикла;

ЗапросСКК02 = Новый Запрос;
   ЗапросСКК02.УстановитьПараметр("СчетКт",ПланыСчетов.Хозрасчетный.АмортизацияОсновныхСредств);
   ЗапросСКК02.УстановитьПараметр("НачалоПериода",НачалоПериода);
ЗапросСКК02.УстановитьПараметр("КонецПериода",КонецПериода);
ЗапросСКК02.УстановитьПараметр("Организация",Организация);

    ЗапросСКК02.Текст =
   "ВЫБРАТЬ
   
   |   ХозрасчетныйОборотыДтКт.СуммаОборот

   |ИЗ
   |   РегистрБухгалтерии.Хозрасчетный.ОборотыДтКт(&НачалоПериода, &КонецПериода, , , , , ,) КАК ХозрасчетныйОборотыДтКт
   |ГДЕ
   |   ХозрасчетныйОборотыДтКт.СчетКт = &СчетКт
   |И  ХозрасчетныйОборотыДтКт.Организация = &Организация";
       ВыборкаСКК02 = ЗапросСКК02.Выполнить().Выбрать();
        
   Пока ВыборкаСКК02.Следующий() Цикл
   СКК02 =  ВыборкаСКК02.СуммаОборот;
КонецЦикла;

Оффлайн vurdalak

  • ***
  • Сообщений: 229
  • РЕПУТАЦИЯ: 8
  • КПД: 3%
  • Регистрация: 2010-08-11
  • Сайт: 
  • Профессия: Ученик 1С
Мне нужно получить суммы по счетам СКД01 и СКК02,и сделать разность между этими суммами СКД01 - СКК02.

Оффлайн Makifka

  • **
  • Сообщений: 81
  • РЕПУТАЦИЯ: 23
  • КПД: 28%
  • Регистрация: 2010-08-13
  • Сайт: 
  • Профессия: Программист 1С
ЗапросСКД01.Текст =
   "ВЫБРАТЬ
   
   |   СУММА(ХозрасчетныйОборотыДтКт.СуммаОборот) КАК СуммаОборот

   |ИЗ
   |   РегистрБухгалтерии.Хозрасчетный.ОборотыДтКт(&НачалоПериода, &КонецПериода, , , , , ,) КАК ХозрасчетныйОборотыДтКт
   |ГДЕ
   |   ХозрасчетныйОборотыДтКт.СчетДт В ИЕРАРХИИ (&СчетДт)
   |И  ХозрасчетныйОборотыДтКт.Организация = &Организация";

   ЗапросСКК02.Текст =
   "ВЫБРАТЬ
   
   |   СУММА(ХозрасчетныйОборотыДтКт.СуммаОборот) КАК СуммаОборот

   |ИЗ
   |   РегистрБухгалтерии.Хозрасчетный.ОборотыДтКт(&НачалоПериода, &КонецПериода, , , , , ,) КАК ХозрасчетныйОборотыДтКт
   |ГДЕ
   |   ХозрасчетныйОборотыДтКт.СчетКт В ИЕРАРХИИ (&СчетКт)
   |И  ХозрасчетныйОборотыДтКт.Организация = &Организация";

Оффлайн progmikon

  • *****
  • Сообщений: 2090
  • РЕПУТАЦИЯ: 371
  • КПД: 18%
  • Регистрация: 2010-10-09
  • Компания: http://progmikon.blogspot.com/
  • Профессия: Программист 1С
Попробуйте так:
ВЫБРАТЬ
ОборотПо01.СуммаОборот КАК ОборотПо01,
ОборотПо02.СуммаОборот КАК ОборотПо02,
ЕСТЬNULL(ОборотПо01.СуммаОборот, 0) - ЕСТЬNULL(ОборотПо02.СуммаОборот, 0) КАК РазностьОборотов
ИЗ
РегистрБухгалтерии.Хозрасчетный.ОборотыДтКт(&НачалоПериода, &КонецПериода, , СчетДт = ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.ОсновныеСредства), , , , Организация = &Организация) КАК ОборотПо01,
РегистрБухгалтерии.Хозрасчетный.ОборотыДтКт(&НачалоПериода, &КонецПериода, , , , СчетКт = ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.АмортизацияОсновныхСредств), , Организация = &Организация) КАК ОборотПо02

Оффлайн Makifka

  • **
  • Сообщений: 81
  • РЕПУТАЦИЯ: 23
  • КПД: 28%
  • Регистрация: 2010-08-13
  • Сайт: 
  • Профессия: Программист 1С
в вашем варианте вы выбирали счета  01 и 02, которые в проводках не используются,  хотя на самом деле вам нужны субсчета 01.01 и 02.01

Оффлайн progmikon

  • *****
  • Сообщений: 2090
  • РЕПУТАЦИЯ: 371
  • КПД: 18%
  • Регистрация: 2010-10-09
  • Компания: http://progmikon.blogspot.com/
  • Профессия: Программист 1С
в вашем варианте вы выбирали счета  01 и 02, которые в проводках не используются,  хотя на самом деле вам нужны субсчета 01.01 и 02.01

Тоже верное замечание, хотя такие запросы имеют место быть.

Оффлайн vurdalak

  • ***
  • Сообщений: 229
  • РЕПУТАЦИЯ: 8
  • КПД: 3%
  • Регистрация: 2010-08-11
  • Сайт: 
  • Профессия: Ученик 1С
А как выбрать в запросе субсчета?


Теги:
 

Как сделать, чтобы поле в документе имело тип "ссылка на поле справочника"?

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

Ответов: 5
Просмотров: 2820
Последний ответ 05 Мар 2017, 14:36
от Igor100500
Добрый день Необходимо на основании типовой конфигурации бухгалтерии сделать обработку, которая будет переносить остатки со счета расчетов 62.01 с одной организации в документ ввода начальных

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

Ответов: 0
Просмотров: 671
Последний ответ 18 Авг 2017, 11:57
от ZSS
Как "Наименование" сделать числом

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

Ответов: 3
Просмотров: 2228
Последний ответ 24 Авг 2015, 06:26
от cska-fanat-kz
Добрый вечер! Прошу помочь, кто знает, подскажите пож. В счете не выводит грузоотправителя и грузополучаетля. Куда их внести ? Как сделать что бы выводило ? У меня 1с 8.3 редакция 11.1 управление торговлей Спасибо!

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

Ответов: 3
Просмотров: 2492
Последний ответ 07 Фев 2016, 14:34
от pavl_vs
1 страница - портрет, 2 страница - ландшафт Подскажите как сделать?

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

Ответов: 2
Просмотров: 5327
Последний ответ 05 Апр 2012, 11:37
от Yaposha

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

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

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


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

* Реклама

* Поиск

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

* Реклама

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

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

oleg-x
66 Сообщений
AIFrame AIFrame
58 Сообщений
wise wise
58 Сообщений
Геннадий ОбьГЭС Геннадий ОбьГЭС
47 Сообщений
alexandr_ll
46 Сообщений
alex0402
44 Сообщений
LexaK
30 Сообщений
BuhRust
30 Сообщений
andron81_81
24 Сообщений
MuI_I_Ika MuI_I_Ika
21 Сообщений

* Кто онлайн

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

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal