Преобразование "Янаврь" - > "01". Я сделал так, а как оптимальнее?

1. BandW 11.06.09 10:45 Сейчас в теме
В запросе используется группировка Месяц

Запрос = СоздатьОбъект("Запрос");
ТекстЗапроса =
"//{{ЗАПРОС(Сформировать)
|Период с ВыбНачПериода по ВыбКонПериода;
........
|Группировка Месяц;
.........
|";

Пока Запрос.Группировка(1) = 1 Цикл
МесТхт=Месяц(Запрос.Месяц);



Функция Месяц(Месяц)
Месяц=Врег(Месяц);
Если Найти(Месяц,Врег("Январь"))<>0 Тогда
Возврат "01";
ИначеЕсли Найти(Месяц,Врег("Февраль"))<>0 Тогда
Возврат "02";
ИначеЕсли Найти(Месяц,Врег("Март"))<>0 Тогда
Возврат "03";
ИначеЕсли Найти(Месяц,Врег("Апрель"))<>0 Тогда
Возврат "04";
ИначеЕсли Найти(Месяц,Врег("Май"))<>0 Тогда
Возврат "05";
ИначеЕсли Найти(Месяц,Врег("Июнь"))<>0 Тогда
Возврат "06";
ИначеЕсли Найти(Месяц,Врег("Июль"))<>0 Тогда
Возврат "07";
ИначеЕсли Найти(Месяц,Врег("Август"))<>0 Тогда
Возврат "08";
ИначеЕсли Найти(Месяц,Врег("Сентябрь"))<>0 Тогда
Возврат "09";
ИначеЕсли Найти(Месяц,Врег("Октябрь"))<>0 Тогда
Возврат "10";
ИначеЕсли Найти(Месяц,Врег("Ноябрь"))<>0 Тогда
Возврат "11";
ИначеЕсли Найти(Месяц,Врег("Декабрь"))<>0 Тогда
Возврат "12";
Иначе
Возврат "Ошибка";
КонецЕсли;
КонецФункции // Месяц

Есть ли другие более правильные варианты?
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. gorlanovmax 26 11.06.09 10:53 Сейчас в теме
А откуда появляется текстовое название месяца?
3. biv75 11.06.09 10:55 Сейчас в теме
Формат(ДатаМесяц(НужнаяДата),"Ч(0)2")
8. biv75 11.06.09 11:19 Сейчас в теме
(3) Во блин, точно, интересно зачем он так сделал..не понятно
ну тогда так

НачДата=Дата("01.01.01");
Для К=0 По 11 Цикл
ТекМесяц=Формат(ДобавитьМесяц(НачДата,К),"ДММММ");
Если ТекМесяц=Месяц Тогда
МесяцЧислом=Формат(К+1,"Ч(0)2");
Прервать;
КонецЕсли;
КонецЦикла;
4. gorlanovmax 26 11.06.09 11:00 Сейчас в теме
Формат(ДатаМесяц(НужнаяДата),"Ч(0)2")


Так у него нет данных в формате дата, насколько я понял
5. BandW 11.06.09 11:09 Сейчас в теме
Все нашел сам.
МесТхт=ДатаМесяц(Запрос.НачалоПериода());
6. BandW 11.06.09 11:13 Сейчас в теме
Поясню.
Запрос.Месяц возвращает значение "Январь 09"
Запрос.НачалоПериода() возвращает '01.01.2009'
А я что-то просто забыл про существование Запрос.НачалоПериода()
7. BandW 11.06.09 11:13 Сейчас в теме
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот