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

Автор Тема: Четверг. Вопрос 8  (Прочитано 38239 раз)

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

Оффлайн grupenfurer

  • *
  • Сообщений: 34
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2013-02-27
  • Сайт: 
  • Профессия: Программист 1С
Re: Четверг. Вопрос 8
« Ответ #20: 14 Мар 2013, 14:46 »
Для получения значения курса на каждую дату периода необходимо получить срез последних на каждую дату. Для СКД используется соединение двух наборов данных - запросов. Подробное описание с примерами: http://wiki.mista.ru/doku.php?id=1c:v8:srez_poslednix_na_kazhduju_datu_v_zaprose


Оффлайн Санчес

  • *
  • Сообщений: 42
  • РЕПУТАЦИЯ: 1
  • КПД: 2%
  • Регистрация: 2013-03-11
  • Сайт: 
  • Профессия: Разработчик 1С
Re: Четверг. Вопрос 8
« Ответ #21: 14 Мар 2013, 15:07 »
Задан некий период. Необходимо в СКД сформировать таблицу со всеми датами из этого периода и значением курса на каждую из дат. Какой механизм необходимо для этого использовать? Какое количество запросов будет в источниках данных СКД?
Для получения такого отчета требуется использовать механизм соединения наборов данных с передачей параметра в "ведомый" набор данных.
В источниках данных будет 2 набора данных, один из которых - запрос, формирующий таблицу дат в выбранном периоде, а второй - запрос, получающий срез курсов валют.
Пример отчета во вложении.

Оффлайн Serge_ASB

  • *
  • Сообщений: 34
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-08-26
  • Сайт: 
  • Профессия: Программист 8.1
Re: Четверг. Вопрос 8
« Ответ #22: 14 Мар 2013, 15:58 »
два запроса: на выборку дат и на выборку курсов по каждой из дат

Оффлайн Evga

  • *
  • Сообщений: 37
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2013-02-28
  • Сайт: 
  • Профессия: Программист 1С
Re: Четверг. Вопрос 8
« Ответ #23: 14 Мар 2013, 16:36 »
Два запроса, в первом выбираем даты либо через прикладное решение, например, РС РегламентированныйПроизводственныйКалендарь, либо отдельным запросом.
Во втором запросе выбираем курсы, срез последних на дату значение и дата. И затем на закладке Связи наборов данных связываем по дате две запроса. Колонка ВыражениеИсточник = "Дата" и ВыражениеПриемник = "Дата" и Параметр = "Дата". "Дата" - это название параметра и название поля в обоих запросах. Точнее лучше назвать их Период, так как срез последних все равно сформирует параметр Период.
Затем в Ресурсах выбираем Курс и ставим рассчитывать по "Дата".

Оффлайн Smile

  • *
  • Сообщений: 37
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2010-07-16
  • Сайт: 
Re: Четверг. Вопрос 8
« Ответ #24: 14 Мар 2013, 16:58 »
1. Из регистра сведений ПРоизводственный календарь получаем все даты периода. - первый запрос
2. Получает курсы валют из соответсвующего регистра - второй запрос.
Устанавливаем передачу параметров между запросами.

Оффлайн Escander

  • *
  • Сообщений: 36
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2013-02-27
  • Сайт: 
  • Профессия: Ученик 1С
Re: Четверг. Вопрос 8
« Ответ #25: 14 Мар 2013, 18:32 »
Какой механизм необходимо для этого использовать?

связь наборов данных

Какое количество запросов будет в источниках данных СКД?

2 запроса.

Оффлайн headmade

  • *
  • Сообщений: 43
  • РЕПУТАЦИЯ: 1
  • КПД: 2%
  • Регистрация: 2011-07-30
  • Сайт: 
  • Профессия: Бухгалтер
Re: Четверг. Вопрос 8
« Ответ #26: 14 Мар 2013, 21:23 »
В СКД необходимо сделать связь ДВУХ наборов данных (т.е. будет 2 запроса):
В первом формируем список дат, на которые необходимо получить остатки. Эти даты будут передаваться в параметры виртуальных таблиц второго набора данных.
Во втором наборе поучаем данные о курсе валют.
Для связи наборов данных необходимо правильно указать параметры. В этом случае СКД будет передавать в приемник связи параметры, указанные в соединении. В качестве значений, переданных параметров будут выступать значения соответствующих полей источника связи.

Оффлайн kilelena

  • *
  • Сообщений: 37
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-05-16
  • Сайт: 
  • Профессия: Программист 1С
Re: Четверг. Вопрос 8
« Ответ #27: 14 Мар 2013, 21:50 »
Один запрос (выводить в таблицу: строки - период, колонки - валюты. прикрепила внешний отчет для БП(2.0.40.10) )
ВЫБРАТЬ
   НАЧАЛОПЕРИОДА(КурсыВалют.Период, ДЕНЬ) КАК Период,
   КурсыВалют.Валюта,
   КурсыВалют.Курс
ИЗ
   РегистрСведений.КурсыВалют КАК КурсыВалют
ГДЕ
   КурсыВалют.Период >= &НачалоПериода
   И КурсыВалют.Период < &КонецПериода

Оффлайн lobster13

  • *
  • Сообщений: 39
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-10-03
  • Сайт: 
  • Профессия: Программист 1С
Re: Четверг. Вопрос 8
« Ответ #28: 14 Мар 2013, 23:31 »
Запрос будет один, нужно просто создать группировку по периоду и выбрать тип дополнения день.

Оффлайн no_limits

  • *
  • Сообщений: 38
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2011-11-23
  • Сайт: 
  • Профессия: Разработчик 1С
Re: Четверг. Вопрос 8
« Ответ #29: 15 Мар 2013, 08:59 »
Должно быть два источника данных: таблица со всеми датами за период и таблица срез последних курсов валют. На закладке связей наборов данных необходимо связать данные по полю период, с указанием параметра "Период". В параметрах виртуальных таблиц указать этот период.


Теги:
 


* Реклама

* Поиск

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

* Реклама

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

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

oleg-x
69 Сообщений
AIFrame AIFrame
63 Сообщений
wise wise
50 Сообщений
alexandr_ll
45 Сообщений
alex0402
44 Сообщений
Геннадий ОбьГЭС Геннадий ОбьГЭС
38 Сообщений
BuhRust
28 Сообщений
andron81_81
24 Сообщений
LexaK
21 Сообщений
byte777
21 Сообщений

* Кто онлайн

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

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal