I have a numeric field {Warehouse.Duration} that contains seconds. I need a formula to convert this field to show days, hours, and minutes. Here's what I have thus far:
The above formula returns the following which works, but it's not clean.
{Warehouse.Duration} = 418680
{@Duration_Calc} = 4 Days, 20 Hrs, and 18 Mins
{Warehouse.Duration} = 4920
{@Duration_Calc} = 0 Days, 1 Hrs, and 22 Mins
{Warehouse.Duration} = 60
{@Duration_Calc} = 0 Days, 0 Hrs, and 1 Mins
------------------------------------------------------------
What I would like the formula to return is this.
{Warehouse.Duration} = 418680
{@Duration_Calc} = 4 Days, 20 Hrs, and 18 Mins
{Warehouse.Duration} = 4920
{@Duration_Calc} = 1 Hr, 22 Mins
{Warehouse.Duration} = 60
{@Duration_Calc} = 1 Min
Code:
//{@Duration_Calc}
WhilePrintingRecords;
NumberVar TotalSec := {Warehouse.Duration};
NumberVar Days := Truncate (TotalSec / 86400);
NumberVar Hours := Truncate (Remainder ( TotalSec , 86400) / 3600) ;
NumberVar Minutes := Truncate (Remainder ( TotalSec , 3600) / 60) ;
Totext ( Days , '##' ) + ' Days, ' +
Totext ( Hours , '##' ) + ' Hrs, and ' +
Totext ( Minutes , '##' ) + ' Mins'
{Warehouse.Duration} = 418680
{@Duration_Calc} = 4 Days, 20 Hrs, and 18 Mins
{Warehouse.Duration} = 4920
{@Duration_Calc} = 0 Days, 1 Hrs, and 22 Mins
{Warehouse.Duration} = 60
{@Duration_Calc} = 0 Days, 0 Hrs, and 1 Mins
------------------------------------------------------------
What I would like the formula to return is this.
{Warehouse.Duration} = 418680
{@Duration_Calc} = 4 Days, 20 Hrs, and 18 Mins
{Warehouse.Duration} = 4920
{@Duration_Calc} = 1 Hr, 22 Mins
{Warehouse.Duration} = 60
{@Duration_Calc} = 1 Min