AXForum  
Zurück   AXForum > Microsoft Dynamics NAV > NAV: Программирование
All
Kennwort vergessen?
Registrieren Forum Rules Hilfe Benutzerliste Heutige Beiträge Suchen Alle Foren als gelesen markieren

 
 
Themen-Optionen Thema durchsuchen Ansicht
Alt 08.10.2019, 18:18   #1  
mira ist offline
mira
Участник
Benutzerbild von mira
 
140 / 25 (1) +++
Registriert seit: 18.03.2007
Ort: Москва
Округление Duration
Всем добрый день!

На форме Итого время (длительность как разница двух Time) считается до миллисекунд.
Во-первых, не помещается, во-вторых, не надо так точно.

Например,
3 часы 31 минуты 17 секунды 647 миллисекунды

Какие есть способы округлить? Кроме как простенько поделить и вычленить?

Спасибо!

Geändert von mira (08.10.2019 um 18:49 Uhr) Grund: сделала простенько
Alt 08.10.2019, 23:33   #2  
Sancho ist offline
Sancho
Administrator
Benutzerbild von Sancho
Лучший по профессии 2017
Лучший по профессии 2009
 
1.294 / 221 (10) ++++++
Registriert seit: 11.01.2006
на контроле формат настроить пробовали?
This post has been rated by: mira (1).
Alt 09.10.2019, 09:12   #3  
DA_NEAL ist offline
DA_NEAL
Участник
Benutzerbild von DA_NEAL
Лучший по профессии 2017
Лучший по профессии 2009
 
788 / 54 (3) ++++
Registriert seit: 05.08.2002
Ort: Королев
Заведите переменную Duration или сделайте функцию которая возвращает Duration
ROUND(DT2-DT1,1000)
Заодно перед вычислением проверите что переменные инициализированы, а то бывает неприятно когда страница не откроется из за того что переменные в формуле не заданы.
__________________
Want to believe...
This post has been rated by: mira (1).
Alt 09.10.2019, 10:31   #4  
mira ist offline
mira
Участник
Benutzerbild von mira
 
140 / 25 (1) +++
Registriert seit: 18.03.2007
Ort: Москва
Sancho, говорили мне, что как-то в свойствах можно настроить формат Duration.
Но как - посмотрели, не ясно.
Alt 09.10.2019, 10:51   #5  
mira ist offline
mira
Участник
Benutzerbild von mira
 
140 / 25 (1) +++
Registriert seit: 18.03.2007
Ort: Москва
DA_NEAL, да, спасибо! Отлично получилось.
Точность вынесла в настройки и пока 10000.
Alt 14.10.2019, 12:08   #6  
mira ist offline
mira
Участник
Benutzerbild von mira
 
140 / 25 (1) +++
Registriert seit: 18.03.2007
Ort: Москва
Заказчик захотел формат "чч:мм"
Причем, из данных регистрируемого времени происходит не только отображение в формах Нава, но и в отчетах sql.
Чтобы у нас с разработчиком sql время было одинаково и\ или ему не пришлось округлять, сделала так :

в полях таблицы вот так
Time Begin - OnValidate()
g_txt_Time1 :=FORMAT(TIME, 5, '<Hours24>.<Minutes,2>');
IF EVALUATE(g_tm_Time1, g_txt_Time1) THEN
"Time Begin" := g_tm_Time1

IF ("Time Begin" <> 0T) AND ("Time End" <> 0T) THEN BEGIN
Duration := "Time End" - "Time Begin";

И Duration у меня почему-то стал целые минуты. Хотя, я готова была еще и здесь отрезать секунды.
Alt 14.10.2019, 13:07   #7  
Sancho ist offline
Sancho
Administrator
Benutzerbild von Sancho
Лучший по профессии 2017
Лучший по профессии 2009
 
1.294 / 221 (10) ++++++
Registriert seit: 11.01.2006
"Time Begin":= DT2TIME(ROUNDDATETIME(CURRENTDATETIME(), 1000*60))
This post has been rated by: mira (1).
Alt 14.10.2019, 15:25   #8  
mira ist offline
mira
Участник
Benutzerbild von mira
 
140 / 25 (1) +++
Registriert seit: 18.03.2007
Ort: Москва
Sancho, спасибо!

Заменила свой код вашим. Время округляется как надо.
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Округление НДС при продаже в валюте Case NAV: Функционал 1 23.01.2012 11:43
Округление себестоимости по товарным остаткам Vist NAV: Функционал 3 25.04.2011 17:50
Округление себестоимости logger_imported NAV: Функционал 2 31.08.2007 11:56
Округление в Счет-Фактуре Camilla NAV: Функционал 4 21.02.2007 10:13
Округление, НДС Konstantin I NAV: Функционал 15 25.04.2006 15:20
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Gehe zu

Рейтинг@Mail.ru
Alle Zeitangaben in WEZ +3. Es ist jetzt 22:54 Uhr.
Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.