Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Вытаскивание данных из РС
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.2 > Программирование управляемых форм 1С 8.2
1cnovice
Добрый время уважаемые форумчане!
Возник очень важный для меня, как для малознающего новичка,подающий надежды программиста. Вопрос связанный с получением данных с регистра сведений
Имеется Регистр сведений с периодичностью Год: Измерение - Дата с типом Дата, и один Ресурс - СезонГода с типом ПеречислениеСсылка, которое принимает только 2 значение Летний и Зимний;
И есть Документ с реквизитом "СезонГода".
В РС я занес 2 записи, указав что ЛетнийСезон с Датой 01.03.2013, а ЗимнийСезон с Датой 01.12.2013.
Нужно: Что бы при создании документа в реквизит автоматически вбивался СезонГода в зависимости от даты документа. Например, сегодня 15.04.2013 то в документ должен подставиться ЛетнийСезон, а допустим 10.12.2013 - зимний.
Не знаю как сделать связь такую.

Этот код ничего не помогает..
&НаКлиенте
Процедура ПриОткрытии(Отказ)
    Объект.Сезон=ПолучитьСезонГода(Объект.Дата);  //передаем дату документа
КонецПроцедуры


Функция ПолучитьСезонГода(Дата)
Отбор=Новый Структура;
Отбор.Вставить("Дата",Дата);
ЗначениеРесурсов=РегистрыСведений.СезонГода.ПолучитьПоследнее(Дата,Отбор);    
Возврат ЗначениеРесурсов.Сезон;
КонецФункции

Или может как нибудь это возможно реализовать через запрос?
Или же можно совсем по другому реализовать такое?
Вроде такая легкотня, а понять не могу
Буду рад любым советам по теме!
pablo
Цитата
Имеется Регистр сведений с периодичностью Год:

У вас четные года - летние, а нечетные - зимние?
По хорошему периодичность нужно ставить либо месяц, либо день

Да и создавать свой реквизит, который совпадает по имени со стандартным.... 48000000.gif 48000000.gif

Лучше так:
Имеется Регистр сведений с периодичностью Месяц: с одним Ресурсом - СезонГода с типом ПеречислениеСсылка
1cnovice
Цитата(pablo @ 15.04.13, 11:52) необходимо зарегистрироваться для просмотра ссылки
У вас четные года - летние, а нечетные - зимние?
По хорошему периодичность нужно ставить либо месяц, либо день

Да и создавать свой реквизит, который совпадает по имени со стандартным.... 48000000.gif 48000000.gif

Лучше так:
Имеется Регистр сведений с периодичностью Месяц: с одним Ресурсом - СезонГода с типом ПеречислениеСсылка



да в принципе не важна периодичность РС, нужно просто задать летние и зимние интервалы в году.
Буду думать дальше, спасибо за ответ
alex040269
Цитата(pablo @ 15.04.13, 11:52) необходимо зарегистрироваться для просмотра ссылки
У вас четные года - летние, а нечетные - зимние?
По хорошему периодичность нужно ставить либо месяц, либо день

Есть еще и измерение дата. В связи с этим могу предположить, что каждый год начало зимы и лета может меняться.

ПолучитьПоследнее(<КонецПериода>, <Отбор>)

<КонецПериода> - это не дата документа, а дата периодичности регистра. Попробуйте поставить дату года.
1cnovice
Спасибо Дорогие Товарищи кто откликнулся.
Подошел вариант Pablo с периодичностью Месяц и с единственным ресурсом "СезонГода"
Функция ПолучитьСезонГода(Дата)
ЗначениеРесурсов=РегистрыСведений.СезонГода.ПолучитьПоследнее(Дата,);
Возврат ЗначениеРесурсов.Сезон;
КонецФункции

Возвращает актуальный сезон года
Тему можно тушить!
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.