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

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

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

Оффлайн Лакорд

  • *
  • Сообщений: 4
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2016-05-30
  • Сайт: 
  • Профессия: Ученик 1С
Добрый день!

Прошу ногами не пинать, только учусь...
Есть периодический РегистрСведений с 3 измерениями (Направление, ТипОплаты, Продолжительность) и 1 ресурс (Цена). Помогите, пожалуйста, в таблицу справочника получить значение последней цены на текущую дату при определенной комбинации измерений?


Оффлайн mixqn

  • Администратор
  • *****
  • Сообщений: 1346
  • РЕПУТАЦИЯ: 166
  • КПД: 12%
  • Who is John Galt?
  • Регистрация: 2012-08-15
  • Сайт: 3gmaster.net
  • Профессия: Программист 1С
Срез последних на дату по вашим измерениям.
Добавлено: 30 Май 2016, 17:56

примерно так будет выглядеть текст запроса:
"ВЫБРАТЬ
|   ВашРегистрСведений.Цена
|ИЗ
|   РегистрСведений.ВашРегистрСведений.СрезПоследних(&ДатаСреза, Направление = &Направление И ТипОплаты = &ТипОплаты И Продолжительность = &Продолжительность ) КАК ВашРегистрСведений"

Оффлайн Лакорд

  • *
  • Сообщений: 4
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2016-05-30
  • Сайт: 
  • Профессия: Ученик 1С
А подробнее можно, а то пока это темный лес...

Оффлайн mixqn

  • Администратор
  • *****
  • Сообщений: 1346
  • РЕПУТАЦИЯ: 166
  • КПД: 12%
  • Who is John Galt?
  • Регистрация: 2012-08-15
  • Сайт: 3gmaster.net
  • Профессия: Программист 1С
Какой именно аспект описать подробнее? :)
Если вы совсем не понимаете, о чем идет речь, то нужно сначала какие-то базовые навыки по программированию изучить по книжкам ну или курсы какие пройти. Научиться программировать на форуме вряд ли возможно.

Оффлайн Rasty

  • *****
  • Сообщений: 979
  • РЕПУТАЦИЯ: 138
  • КПД: 14%
  • Регистрация: 2015-03-25
    • Skype: alex1cbit
  • Сайт: 
  • Профессия: Программист 1С
Радченко советую почитать, очень подробно и доступно :)
Помогли - Скажи спасибо! Решил сам - поделись решением!
:)

Оффлайн Лакорд

  • *
  • Сообщений: 4
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2016-05-30
  • Сайт: 
  • Профессия: Ученик 1С
Да, вот и изучаю книжки. Но чтобы было более продуктивно, взял конкретную задачу и пытаюсь реализовать, но попадаю в в некоторые информационные пустоты которые пока сам не могу догнать как преодолеть. Вот последний вариант моего кода:

&НаКлиенте
Процедура СтоимостьНаправлениеПриИзменении(Элемент)
   СтрТаб = Элементы.Стоимость.ТекущиеДанные;
   НашаДата = ТекущаяДата();
   СтрТаб.Цена = ПолучитьЦену(СтрТаб.Направление,СтрТаб.ТипОплаты,СтрТаб.Продолжительность,НашаДата);
КонецПроцедуры

&НаСервереБезКонтекста
Функция ПолучитьЦену(НашеНаправление,НашТипОплаты,НашаПродолжительность,ТекДата)
   Запрос = Новый Запрос;
   Запрос.Текст = "Выбрать *
   | ИЗ РегистрСведений.Цены.ПолучитьПоследнее(ТекДата, Направление = &Направление И ТипОплаты = &ТипОплаты И Продолжительность = &Продолжительность ) КАК Цены";
   Запрос.УстановитьПараметр("Направление", НашеНаправление);
   Запрос.УстановитьПараметр("ТипОплаты", НашТипОплаты);
   Запрос.УстановитьПараметр("Продолжительность", НашаПродолжительность);
   Результат = Запрос.Выполнить();
   Возврат Результат.Цена;
   
КонецФункции

Подскажите как заставить закинуть Цену в справочник?

Оффлайн Rasty

  • *****
  • Сообщений: 979
  • РЕПУТАЦИЯ: 138
  • КПД: 14%
  • Регистрация: 2015-03-25
    • Skype: alex1cbit
  • Сайт: 
  • Профессия: Программист 1С
Запрос.Выполнить() - Это результат запроса, чтоб получить данные надо Результат.Выбрать() и потом обходить выборку или Результат.Выгрузить() вернет вам табличку
Помогли - Скажи спасибо! Решил сам - поделись решением!
:)

Оффлайн vitasw

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

Это что за ноу-хау? Пользуйтесь конструктором запросов.

Оффлайн TytovV

  • ***
  • Сообщений: 123
  • РЕПУТАЦИЯ: 3
  • КПД: 2%
  • Регистрация: 2014-10-28
  • Сайт: 
  • Профессия: Программист 1С
Да человек спрашивает как из 4 строк выбрать например 3 строку, со своим значением, если я правильно понял, если это так, то запросом вы выбираете все значения и в это момент поставить условие для того чтобы поймать эту строку обычным Если "вашастрока" = Выборка.Значение Тогда
Возврат Выборка.значение;
КонецЕсли; -это условие сработает в цикле, если без функции и делаете в процедуре то передайте в переменную глобальную в начало всей процедуры и можете ловить это значение в любой другой процедуре.


Отправлено с моего iPhone используя Tapatalk

Оффлайн Лакорд

  • *
  • Сообщений: 4
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2016-05-30
  • Сайт: 
  • Профессия: Ученик 1С
Я все со своим вопросом. Никак не могу побороть. Ай нид хелп... :dfbsdfbsdf:

Функция ПолучитьСтоимость(НашаДата,НашеНаправление,НашТипОплаты,НашаДлительность)
   
   Запрос = Новый Запрос;
   Запрос.УстановитьПараметр("ТекДата", НашаДата);
   Запрос.УстановитьПараметр("Направление", НашеНаправление);
   Запрос.УстановитьПараметр("ТипОплаты", НашТипОплаты);
   Запрос.УстановитьПараметр("Продолжительность", НашаДлительность);
   Запрос.Текст = "ВЫБРАТЬ 
   |СтоимостьЗанятий.Направление,
   |СтоимостьЗанятий.ТипОплаты,
   |СтоимостьЗанятий.Продолжительность,
   |СтоимостьЗанятий.Цена
   |ИЗ
   |РегистрСведений.СтоимостьЗанятий.СрезПоследних(&ТекДата, Направление=&Направление И ТипОплаты=&ТипОплаты И Продолжительность=&Продолжительность) КАК СтоимостьЗанятий";
     ЗначениеСтоимости = Запрос.Выполнить().Выбрать();
   
   Возврат ЗначениеСтоимости.Цена;

КонецФункции

Никаких ошибок не выдает, но и значение не вытягивает. Что не так?
Мне нужно по известной комбинации трех измерений получить цену.


Теги:
 

Значение "00000000001" поля "Код" не уникально

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

Ответов: 4
Просмотров: 6399
Последний ответ 24 Ноя 2014, 12:21
от gigson
Получить номер недели в месяце в запросе [номер недели]

Автор MuI_I_IkaРаздел Алгоритмы

Ответов: 0
Просмотров: 3860
Последний ответ 15 Июл 2015, 18:24
от MuI_I_Ika
Значение поля "Владелец" не заполнено или заполнено неверно

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

Ответов: 1
Просмотров: 2918
Последний ответ 16 Ноя 2015, 09:36
от cska-fanat-kz
При создании нового документа "Заявка на кассовый расход" Ошибка "Значение 9 поля "номер" не уникально

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

Ответов: 14
Просмотров: 7943
Последний ответ 22 Ноя 2014, 04:50
от cska-fanat-kz
В строке номер "1" табличной части "Состав набора": Не заполнено значение реквиз

Автор ХеляРаздел Пользователям "1С - Предприятие 8"

Ответов: 0
Просмотров: 6716
Последний ответ 18 Сен 2011, 16:07
от Хеля

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

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

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


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

* Реклама

* Поиск

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

* Реклама

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

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

oleg-x
90 Сообщений
alex0402
54 Сообщений
Геннадий ОбьГЭС Геннадий ОбьГЭС
44 Сообщений
AIFrame
40 Сообщений
Oldman06
31 Сообщений
Golickoff Golickoff
30 Сообщений
vitasw
29 Сообщений
MuI_I_Ika MuI_I_Ika
18 Сообщений
BuhRust
14 Сообщений
AsadRoman
13 Сообщений

* Кто онлайн

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

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal