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

Хранилище

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

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



> Помогите преобразовать полученные секунды к часам          
kosalex Подменю пользователя
сообщение 24.10.14, 10:56
Сообщение #1

Ветеран
*******
Группа: Пользователи
Сообщений: 805
Спасибо сказали: 14 раз
Рейтинг: 0

Добрый день! Есть запрос:
ВЫБРАТЬ
    ПростойВагона.НомерВагона,
    ПростойВагона.ПрибытияВагона,
    ПростойВагона.УстановкаПодВыгрузку,
    ПростойВагона.ОкончаниеВыгрузки,
    ПростойВагона.ПрибытиеДокументовПослеДекларирования,
    ПростойВагона.ПрибытиеИнструкцийВОтправкуПОРПВ,
    ПростойВагона.УстановкаПодПогрузку,
    ПростойВагона.ОкончаниеПогрузки,
    ПростойВагона.ПрибытиеДокументовПослеТаможирования,
    ПростойВагона.ВозвратПВст,
    ПростойВагона.Ответственный,
    ПростойВагона.ПринадлежностьВагона
ПОМЕСТИТЬ ВТ_РСПростой
ИЗ
    РегистрСведений.ПростойВагона КАК ПростойВагона
ГДЕ
    КФЗПростойВагона.Период >= &ПериодНачало
    И КФЗПростойВагона.Период <= &ПериодОкончания
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ВТ_РСПростой.НомерВагона,
    ВТ_РСПростой.ПрибытияВагона,
    ВТ_РСПростой.УстановкаПодВыгрузку,
    ВЫБОР
        КОГДА ВТ_РСПростой.ПрибытияВагона <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
                И ВТ_РСПростой.УстановкаПодВыгрузку <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
            ТОГДА РАЗНОСТЬДАТ(ВТ_РСПростой.ПрибытияВагона, ВТ_РСПростой.УстановкаПодВыгрузку, СЕКУНДА) / 3600
        ИНАЧЕ 0
    КОНЕЦ КАК ВремяДоУстановкиПодВыгрузку,
    ВТ_РСПростой.ОкончаниеВыгрузки,
    ВЫБОР
        КОГДА ВТ_РСПростой.УстановкаПодВыгрузку <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
                И ВТ_РСПростой.ОкончаниеВыгрузки <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
            ТОГДА РАЗНОСТЬДАТ(ВТ_РСПростой.УстановкаПодВыгрузку, ВТ_РСПростой.ОкончаниеВыгрузки, СЕКУНДА) / 3600
        ИНАЧЕ 0
    КОНЕЦ КАК ВремяВыгрузки,
    ВТ_РСПростой.ПрибытиеДокументовПослеДекларирования КАК ПрибытиеДокументовДекларирования,
    ВТ_РСПростой.ПрибытиеИнструкцийВОтправкуПОРПВ КАК ПрибытиеИнструкции,
    ВТ_РСПростой.УстановкаПодПогрузку,
    ВЫБОР
        КОГДА ВТ_РСПростой.ОкончаниеВыгрузки <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
                И ВТ_РСПростой.УстановкаПодПогрузку <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
            ТОГДА РАЗНОСТЬДАТ(ВТ_РСПростой.ОкончаниеВыгрузки, ВТ_РСПростой.УстановкаПодПогрузку, СЕКУНДА) / 3600
        ИНАЧЕ 0
    КОНЕЦ КАК ВремяВОжиданииПогрузки,
    ВТ_РСПростой.ОкончаниеПогрузки,
    ВЫБОР
        КОГДА ВТ_РСПростой.УстановкаПодПогрузку <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
                И ВТ_РСПростой.ОкончаниеПогрузки <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
            ТОГДА РАЗНОСТЬДАТ(ВТ_РСПростой.УстановкаПодПогрузку, ВТ_РСПростой.ОкончаниеПогрузки, СЕКУНДА) / 3600
        ИНАЧЕ 0
    КОНЕЦ КАК ВремяПогрузки,
    ВТ_РСПростой.ПрибытиеДокументовПослеТаможирования КАК ВремяПрибытияДокументовТаможирования,
    ВТ_РСПростой.ВозвратПВстКраматорск КАК СдачаНаСтКраматорск,
    ВТ_РСПростой.ПринадлежностьВагона,
    ВЫБОР
        КОГДА ВТ_РСПростой.ОкончаниеПогрузки <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
                И ВТ_РСПростой.ВозвратПВстКраматорск <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
            ТОГДА РАЗНОСТЬДАТ(ВТ_РСПростой.ОкончаниеПогрузки, ВТ_РСПростой.ВозвратПВстКраматорск, СЕКУНДА) / 3600
        ИНАЧЕ 0
    КОНЕЦ КАК ВремяВозвратаНаСт
ИЗ
    ВТ_РСПростой КАК ВТ_РСПростой



В итоге когда считаю общее время простоя, т.е. складываю рассчитываемые поля, то получается к примеру "7,8" , как это записать читаемо? Чтобы перед запятой были часы, а после минуты, минут же не может быть больше 60 в часе))

Как редактировать свое уже написанное сообщение?

Ardi Подменю пользователя
сообщение 24.10.14, 11:36
Сообщение #2

Живет на форуме
***********
Гений телепатии и социального моделирования
Группа: Пользователи
Сообщений: 4121
Из: Киев
Спасибо сказали: 957 раз
Рейтинг: 0

В СКД есть форматирование при выводе отчета. Зачем в запросе форматировать?


Signature
Услуги 1С программиста 8.2, 7.7 (Плохо, дорого, очередь). Киев.

Petre Подменю пользователя
сообщение 24.10.14, 11:40
Сообщение #3

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2905
Из: Київ, Україна
Спасибо сказали: 1147 раз
Рейтинг: 1228.9

Куда записывать надо? Или имеется ввиду отображать в отчете?
Я бы сделал параметр датой и получал бы как пустая дата + секунды. Но это удобно только для периода до одного дня.


Signature
Допрацьовую:
- "Бухгалтерія для України 2.1";
- "Альфа-Авто: Автосалон+Автосервіс+Автозапчастини, українська версія".

kosalex Подменю пользователя
сообщение 24.10.14, 11:47
Сообщение #4

Ветеран
*******
Группа: Пользователи
Сообщений: 805
Спасибо сказали: 14 раз
Рейтинг: 0

Цитата(Ardi @ 24.10.14, 12:36) *
В СКД есть форматирование при выводе отчета. Зачем в запросе форматировать?




У меня в вычисляемом поле после суммы нужных полей в которых рассчитывается разность дат в секундах и делиться на 3600 получается к примеру 7,8 ч, в часе 60 минут, как сделать чтобы 7,8 ч, преобразовалось в 8,2 ч, или 8 часов 20 минут, хоть как нибудь?

Petre Подменю пользователя
сообщение 24.10.14, 11:58
Сообщение #5

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2905
Из: Київ, Україна
Спасибо сказали: 1147 раз
Рейтинг: 1228.9

7,8 часов = 7 часов и 0,8 * 60 = 48 минут.
Откуда 8 часов и 20 минут?


Signature
Допрацьовую:
- "Бухгалтерія для України 2.1";
- "Альфа-Авто: Автосалон+Автосервіс+Автозапчастини, українська версія".

kosalex Подменю пользователя
сообщение 24.10.14, 12:31
Сообщение #6

Ветеран
*******
Группа: Пользователи
Сообщений: 805
Спасибо сказали: 14 раз
Рейтинг: 0

Цитата(Petre @ 24.10.14, 12:58) *
7,8 часов = 7 часов и 0,8 * 60 = 48 минут.
Откуда 8 часов и 20 минут?



Ой, Вы правы, вместо 7,8ч, должно быть 7,48 ч. или 7ч. 48мин.

alex040269 Подменю пользователя
сообщение 24.10.14, 12:41
Сообщение #7

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

РАЗНОСТЬДАТ(ВТ_РСПростой.ОкончаниеПогрузки, ВТ_РСПростой.ВозвратПВстКраматорск, СЕКУНДА) - 
ВЫРАЗИТЬ(РАЗНОСТЬДАТ(ВТ_РСПростой.ОкончаниеПогрузки, ВТ_РСПростой.ВозвратПВстКраматорск, СЕКУНДА)/3600,ЧИСЛО(3,0))*3600
-это количество секунд.

в общем проще загнать результат в запроса ТЗ и вывести в СКД.



Signature
Никогда не бойся делать то, что не умеешь, помни - Ноев ковчег был построен любителем, профессионалы построили Титаник.
ЗиУП

kosalex Подменю пользователя
сообщение 24.10.14, 13:50
Сообщение #8

Ветеран
*******
Группа: Пользователи
Сообщений: 805
Спасибо сказали: 14 раз
Рейтинг: 0

Цитата(alex040269 @ 24.10.14, 13:41) *
в общем проще загнать результат в запроса ТЗ и вывести в СКД.



Не понял smile.gif

alex040269 Подменю пользователя
сообщение 24.10.14, 13:53
Сообщение #9

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

Добавить набор данных - объект.
Данные - таблица значений.


Signature
Никогда не бойся делать то, что не умеешь, помни - Ноев ковчег был построен любителем, профессионалы построили Титаник.
ЗиУП

Спасибо сказали: kosalex,

kosalex Подменю пользователя
сообщение 24.10.14, 14:00
Сообщение #10

Ветеран
*******
Группа: Пользователи
Сообщений: 805
Спасибо сказали: 14 раз
Рейтинг: 0

Цитата(alex040269 @ 24.10.14, 14:53) *
Добавить набор данных - объект.
Данные - таблица значений.



аааа)понял, буду пробовать.

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


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

 

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