Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Функции работы со временем          
vadim007 Подменю пользователя
сообщение 26.09.11, 14:45
Сообщение #1

Почти крутой
Иконка группы
Группа: Местный
Сообщений: 1298
Из: Донецк
Спасибо сказали: 208 раз
Рейтинг: 0

Нет ли у кого готового набора функция для работы со временем, типа ДобавитьВремя(..), РазностьВремени(..) и т.д.?

vadim007 Подменю пользователя
сообщение 26.09.11, 16:19
Сообщение #2

Почти крутой
Иконка группы
Группа: Местный
Сообщений: 1298
Из: Донецк
Спасибо сказали: 208 раз
Рейтинг: 0

Вот нашел подходящую:
Функция ИзмВремя(ЧЧ,ММ,СС, Знач Ч, Знач М, Знач С)
    СС=СС+С;
    ММ=ММ+М+Цел(СС/60);
    ЧЧ=ЧЧ+Ч+Цел(ММ/60);
    СС=СС%60;
    ММ=ММ%60;
    ДД=Цел(ЧЧ/24); ЧЧ=ЧЧ%24;
    Возврат ДД;
КонецФункции

Kaliban Подменю пользователя
сообщение 26.09.11, 16:46
Сообщение #3

Говорящий
Иконка группы
Группа: Местный
Сообщений: 97
Спасибо сказали: 28 раз
Рейтинг: 0

Время - строка вида ЧЧ:ММ:СС

//------------------------------------------------------------ 
Функция разницаВрем(Время1,Время2) Экспорт
    рез=0;                                                                        
    //         секунды                    минуты                часы
    Время1Сек=Число(Прав(Время1,2))+Число(Сред(Время1,4,2))*60+Число(Лев(Время1,2))*60*60;
    Время2Сек=Число(Прав(Время2,2))+Число(Сред(Время2,4,2))*60+Число(Лев(Время2,2))*60*60;
    
    разнСек= Время1Сек- Время2Сек;
    
    часов=Цел(разнСек/(60*60) );
    минут=Цел( (разнСек-часов*60*60 )/60 );
    сек=разнСек-часов*60*60-минут*60;
    рез=Строка(Формат(часов,"Ч(0)2"))+":"+Строка(Формат(минут,"Ч(0)2"))+":"+Строка(Формат(сек,"Ч(0)2"));
    Возврат рез;
    
КонецФункции
//------------------------------------------------------------
Функция ВремяВСекунды(время1) Экспорт
    Время1Сек=0;                                                                        
    //         секунды                    минуты                часы
    Время1Сек=Число(Прав(Время1,2))+Число(Сред(Время1,4,2))*60+Число(Лев(Время1,2))*60*60;
    Возврат Время1Сек;    
КонецФункции                                                  

//------------------------------------------------------------
Функция СекундыВоВремя(Секунды) Экспорт  
    рез=0;
    часов=Цел(Секунды/(60*60) );
    минут=Цел( (Секунды-часов*60*60 )/60 );
    сек=Секунды-часов*60*60-минут*60;
    рез=Строка(Формат(часов,"Ч(0)2"))+":"+Строка(Формат(минут,"Ч(0)2"))+":"+Строка(Формат(сек,"Ч(0)2"));
    Возврат рез;
КонецФункции
//------------------------------------------------------------
Функция СуммаВрем(Время1,Время2) Экспорт
    рез=0;                                                                        
    //         секунды                    минуты                часы
    Время1Сек=Число(Прав(Время1,2))+Число(Сред(Время1,4,2))*60+Число(Лев(Время1,2))*60*60;
    Время2Сек=Число(Прав(Время2,2))+Число(Сред(Время2,4,2))*60+Число(Лев(Время2,2))*60*60;
    
    суммаСек= Время1Сек + Время2Сек;
    
    часов=Цел(суммаСек/(60*60) );
    минут=Цел( (суммаСек-часов*60*60 )/60 );
    сек=суммаСек-часов*60*60-минут*60;
    рез=Строка(Формат(часов,"Ч(0)2"))+":"+Строка(Формат(минут,"Ч(0)2"))+":"+Строка(Формат(сек,"Ч(0)2"));
    Возврат рез;
    
КонецФункции
//------------------------------------------------------------

Спасибо сказали: mister-x, vadim007,

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 26.04.24, 20:35
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!