С Новым годом! Форум программистов, компьютерный форум, киберфорум
1С: Администрирование и интеграция
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
3 / 3 / 3
Регистрация: 27.04.2014
Сообщений: 230
1

Интервалы Зима/Лето для даты документа

11.02.2016, 18:30. Показов 1573. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброго времени суток. есть задачка.
в самописной конфе по учету ГСМ есть расчет РасходПоНорме.
раньше учитывалась одна норма, теперь введены нормы - зима и лето.
проблема вот в чем - не могу найти интервалы дат, а именно, интервал Зима = с 01.12 (без учета года) по 15.03 (без учета года). интервал Лето = с 16.03 (без учета года) по 30.11 (без учета года).
задача вот в чем. нужно, чтобы код проверял, чему равна дата документа (без учета года) и выполнял расчеты вот с таким условием: если Дата документа находится в интервале Зима, то выполняем условие1,
если Дата документа находится в интервале Лето, то выполняем условие 2
вот, что получилось написать в коде:
1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Процедура СпидомВПаркПриИзменении(Элемент)
    Объект.Пробег=Объект.СпидомВПарк-Объект.СпидомВыезд;
    //Расход по норме
    ДатаПутЛиста = Объект.Дата;
    Г = Год(ДатаПутЛиста);
    М = Месяц(ДатаПутЛиста);
    Д = День(ДатаПутЛиста);
    
    Зима = '';
    Лето = '';
    Если Д >= 01 и М >= 12 Тогда
        Зима = ДобавитьМесяц(Зима, 4);
    КонецЕсли;
    
    
    Объект.РасходПоНорме=Окр(Объект.НормаЛето*Объект.Пробег/100);
КонецПроцедуры
сам код недоработан, потому что не пойму, как вычислить этот интервал.
подскажите пож-та.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.02.2016, 18:30
Ответы с готовыми решениями:

Во введенной дате определить время года (зима, весна, лето. осень)
Во введенной дате определить время года (зима, весна, лето. осень).

Вывести название соответствующего времени года («зима», «весна», «лето», «осень»)
Данный номер месяца - целое число в диапазоне 1-12 (1 - январь, 2 - февраль и т. Д.). Вывести...

Создать перечисляемый тип данных GOD – лето, осень, зима, весна
Задача 1 - Создать перечисляемый тип данных GOD – лето, осень, зима, весна. Вывести порядковые...

Написать процедуру, которая выводит на экран время года ( весна, лето, осень, зима)
Написать процедуру, которая выводит на экран время года ( весна, лето, осень, зима). Номер месяца...

4
Эксперт 1С
844 / 607 / 211
Регистрация: 24.07.2013
Сообщений: 2,102
11.02.2016, 19:03 2
Тупо, что приходит в голову:
1) все сравниваемые даты привести к одному году (например 0001),
2) периоды, к которым проверятся принадлежность даты, разбить дополнительно на "подпериоды" до 01.01 и после.
3) проверить дату на принадлежность полученным периодам простым сравнением.
0
213 / 206 / 15
Регистрация: 29.05.2014
Сообщений: 1,061
11.02.2016, 21:03 3
Периодический регистр и срез последних - не спасет?
0
3 / 3 / 3
Регистрация: 27.04.2014
Сообщений: 230
12.02.2016, 08:57  [ТС] 4
wwall, нет конечно. это дальше в дебри.
Tklwegsd, если не сложно, можете показать куском кода?
0
213 / 206 / 15
Регистрация: 29.05.2014
Сообщений: 1,061
12.02.2016, 09:00 5
1C
1
2
3
4
5
6
7
Функция ЭтоЛето(Дата)
  Возврат Дата=> Дата(Год(ТекущаДата()),03,16) и Дата <= Дата(Год(ТекущаДата()),11,30)
КонецФуникции
 
Функция ЭтоЗима(Дата)
 Возврат не ЭтоЛето(Дата)
КонецФункции
не проверял, но логика такая
0
12.02.2016, 09:00
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.02.2016, 09:00
Помогаю со студенческими работами здесь

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

Вводится число от 1 до 4, определяющее пору года. Дать название этой поры года (1-зима, 2-весна, 3-лето, 4-Осень)
6. Вводится число от 1 до 4, определяющее пору года. Дать название этой поры года (1-зима, 2-весна,...

Имеются описания: Сезон = (зима, весна, лето, осень) Погода = (тепло, холодно) По сезону ответить какова погода Delphi
Имеются описания: Сезон = (зима, весна, лето, осень) Погода = (тепло, холодно) По сезону ответить...

В зависимости от времени года "весна", "лето", "осень", "зима" определить погоду "тепло", "жарко", "холодно", "очень холодно"
В зависимости от времени года &quot;весна&quot;, &quot;лето&quot;, &quot;осень&quot;, &quot;зима&quot; определить погоду &quot;тепло&quot;,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru