|
Дата | ☑ | ||
---|---|---|---|---|
0
Никкккк
31.08.18
✎
14:49
|
Приветствую!Есть поле, где я ввожу число,например, 150. В другом поле нужно получить время в формате "2 часа 30 минут". Подкиньте идеи,как можно реализовать это
|
|||
1
PR
31.08.18
✎
14:50
|
Да
|
|||
2
Buster007
31.08.18
✎
14:51
|
дели на 60
|
|||
3
sitex
naïve
31.08.18
✎
14:56
|
Господи это жесть!
|
|||
4
Волшебник
31.08.18
✎
14:57
|
Если поле1 = 150 Тогда
поле2 = "2 часа 30 минут" КонецЕсли; |
|||
5
Лефмихалыч
31.08.18
✎
14:58
|
аа... мы продаем или покупаем?
|
|||
6
dmt
31.08.18
✎
14:59
|
управляемые формы или обычные?
|
|||
7
Wirtuozzz_Х
31.08.18
✎
15:23
|
(0) В ПКО надо не забыть указать Объект.ОбменДанными = Ложь;
|
|||
8
fgaabbb
31.08.18
✎
15:56
|
(7) нет, Значение = "2 часа 30 минут";
|
|||
9
Ненавижу 1С
гуру
31.08.18
✎
16:15
|
Минуты = Значение%60;
Часы = (Значение-Минуты)/60; |
|||
10
Волшебник
31.08.18
✎
16:18
|
(9) Теперь осталось просклонять "часы" и "минуты"
|
|||
11
Малыш Джон
31.08.18
✎
16:21
|
?(Часы = 1,"час", ?(Часы > 1 И Часы < 5, "часа", часов"));
|
|||
12
Волшебник
31.08.18
✎
16:24
|
(11) 21?
|
|||
13
Михаил Козлов
31.08.18
✎
16:25
|
(12) Применять (11) к младшему разряду.
|
|||
14
Timon1405
31.08.18
✎
16:25
|
(13) 11?
|
|||
15
Малыш Джон
31.08.18
✎
16:42
|
(12)
?(Часы = 1,Формат(Часы, "ЧГ=0")+" час", ?(Часы > 1 И Часы < 5, Формат(Часы, "ЧГ=0")+" часа", "много часов")); |
|||
16
gret
31.08.18
✎
16:44
|
Примерно так вышло...
Процедура РасчетВремениНажатие(Элемент) Минуты = ЭлементыФормы.ПолеВводаМинут.Значение; //например, вводим значение в поле ввода на форме Часы = Цел(Минуты / 60); Минуты = Минуты - Часы * 60; Сообщить (Строка(Часы) + ПолучитьЧасыСтрокой(Часы) + Строка(Минуты) + ПолучитьМинутыСтрокой(Минуты)); КонецПроцедуры Функция ПолучитьЧасыСтрокой (Часы) Если (Часы % 10 = 0) ИЛИ (Часы % 10 = 5) ИЛИ (Часы % 10 = 6) ИЛИ (Часы % 10 = 7) ИЛИ (Часы % 10 = 8) ИЛИ (Часы % 10 = 9) ИЛИ (Часы = 11) ИЛИ (Часы = 11) ИЛИ (Часы = 13) ИЛИ (Часы = 14) Тогда ЧасыСтрокой = " часов "; ИначеЕсли Часы % 10 = 1 Тогда ЧасыСтрокой = " час "; Иначе ЧасыСтрокой = " часа "; КонецЕсли; Возврат ЧасыСтрокой; КонецФункции Функция ПолучитьМинутыСтрокой (Минуты) Если (Минуты % 10 = 0) ИЛИ (Минуты % 10 = 5) ИЛИ (Минуты % 10 = 6) ИЛИ (Минуты % 10 = 7) ИЛИ (Минуты % 10 = 8) ИЛИ (Минуты % 10 = 9) ИЛИ (Минуты = 11) ИЛИ (Минуты = 11) ИЛИ (Минуты = 13) ИЛИ (Минуты = 14) Тогда МинутыСтрокой = " минут "; ИначеЕсли Минуты % 10 = 1 Тогда МинутыСтрокой = " минута "; Иначе МинутыСтрокой = " минуты "; КонецЕсли; Возврат МинутыСтрокой; КонецФункции |
|||
17
Asmody
31.08.18
✎
16:51
|
ВК надо делать
|
|||
18
Lexey_
31.08.18
✎
16:53
|
а как же СтрокаСЧислом?
Строка = СтрокаСЧислом(";остался %1 день;;осталось %1 дня;осталось %1 дней;осталось %1 дня", ДнейДоНовогоГода, ВидЧисловогоЗначения.Количественное, "L=ru"); Строка = "До Нового Года " + Строка; |
|||
19
dmt
31.08.18
✎
16:58
|
(16) наверняка надо запросом, ща афтор придет
|
|||
20
azernot
31.08.18
✎
17:22
|
Когда-то давно писал так:
Функция ВремяПрописью(КоличествоМинут) Часов = Цел(КоличествоМинут/60); Минут = КоличествоМинут - Часов * 60; ЧасыПрописью = СтрЗаменить(ЧислоПрописью(Часов, "Л = ru_RU", "час, часа, часов, м,,,,,0"), ЧислоПрописью(Часов, "Л = ru_RU", ",,,м,,,,,0"), ""); МинутыПрописью = СтрЗаменить(ЧислоПрописью(Минут, "Л = ru_RU", "минута, минуты, минут, ж,,,,,0"), ЧислоПрописью(Минут, "Л = ru_RU", ",,,ж,,,,,0"), ""); Возврат Формат(Часов, "ЧЦ=2; ЧН=0; ЧГ=")+" "+ЧасыПрописью+" "+Формат(Минут, "ЧЦ=2; ЧН=0; ЧГ=")+" "+МинутыПрописью; КонецФункции |
|||
21
hhhh
31.08.18
✎
18:35
|
(15) ?(Целое(Часы / 10) % 10 = 1, "часов", ?(Часы % 10 = 1, "час", ?(Часы % 10 > 1 И Часы % 10 < 5, "часа", часов")));
|
|||
22
Germes
31.08.18
✎
19:08
|
Сидел наверное чел на собеседовании, вы за него тест выполнили. А если его примут на работу - справится ли он со всеми задачами, не подведет ли работодателя?
|
|||
23
Волшебник
31.08.18
✎
19:20
|
(22) нам пофиг
|
|||
24
dmt
31.08.18
✎
19:37
|
(22) мы даем ему путевку в жизнь и шанс стать профессионалом!
|
|||
25
dmt
31.08.18
✎
19:39
|
ВЫБРАТЬ
выбор когда &Число = 0 тогда 0 иначе ВЫРАЗИТЬ(&Число / 60 - 0.5 КАК ЧИСЛО(15, 0)) конец КАК Часы, выбор когда &Число = 0 тогда 0 иначе &Число - (ВЫРАЗИТЬ(&Число / 60 - 0.5 КАК ЧИСЛО(15, 0))) * 60 конец КАК Минуты поместить ВТ ; Выбрать Т.Часы, "час" + выбор когда (Т.Часы - ВЫРАЗИТЬ(Т.Часы / 10 - 0.5 КАК ЧИСЛО(15, 0))*10 между 5 И 10) ИЛИ (Т.Часы - ВЫРАЗИТЬ(Т.Часы / 10 - 0.5 КАК ЧИСЛО(15, 0))*10 = 0) ИЛИ (ВЫРАЗИТЬ(Т.Часы - 0.5 КАК ЧИСЛО(15, 0)) между 11 И 14) тогда "ов" когда Т.Часы - ВЫРАЗИТЬ(Т.Часы / 10 - 0.5 КАК ЧИСЛО(15, 0))*10 = 1 тогда "" иначе "а" конец КАК ЧасыСтрока, Т.Минуты, "минут" + выбор когда (Т.Минуты - ВЫРАЗИТЬ(Т.Минуты / 10 - 0.5 КАК ЧИСЛО(15, 0))*10 между 5 И 10) ИЛИ (Т.Минуты - ВЫРАЗИТЬ(Т.Минуты / 10 - 0.5 КАК ЧИСЛО(15, 0))*10 = 0) ИЛИ (ВЫРАЗИТЬ(Т.Минуты - 0.5 КАК ЧИСЛО(15, 0)) между 11 И 14) тогда "" когда Т.Минуты - ВЫРАЗИТЬ(Т.Минуты / 10 - 0.5 КАК ЧИСЛО(15, 0))*10 = 1 тогда "а" иначе "ы" конец КАК МинутыСтрока из ВТ КАК Т ---------------------- Часы ЧасыСтрока Минуты МинутыСтрока 2 часа 30 минут ---------------------- |
|||
26
Fram
31.08.18
✎
20:41
|
(25) не поленился же
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |