Time Value difference in HTML Table

Posted on 2015-02-23
Last Modified: 2015-02-24
I have an HTML table that I have created inside a crystal report so that I can place it inside an email.  One of the columns contains a formula that calculates the difference between CurrentDateTime and the timestamp field of the record being returned from the database. In order to display the field properly in the HTML table I had to do the following ToText() function, however instead of showing just 47min or even 00h 47min, it shows as 12h 47min.  Of course, if the time difference is greater than 1 hour it properly shows as 1h 47min.

How can I remove the "12h" from being displayed when the time difference is less than 1 hour?

Crystal formula for time difference {@Pending Time}:
Time ((DateDiff ('n', {proposal.timestamp}, CurrentDateTime) / 60) / 24)


HTML Code:
Stringvar HTML_Table;

//Here we add the Time column
"<td><div align=""center"">"+
ToText({@Pending Time},"hh'h' mm'min'")+
//Mid (ToText({@Pending Time}),1 ,5 )+

Question by:IO_Dork
  • 2
  • 2
  • 2
  • +1
LVL 22

Assisted Solution

by:Ido Millet
Ido Millet earned 125 total points
ID: 40626780
NumberVar MyMinutes := DateDiff ('n', {proposal.timestamp}, CurrentDateTime) ;

IF MyMinutes < 60 Then
Totext ( Truncate (MyMinutes),'00') & 'm'
Totext ( Truncate ( MyMinutes / 60), '####') + 'h '+
Totext ( Truncate (Remainder ( MyMinutes,60)),'00') & 'm' ;
LVL 100

Assisted Solution

mlmcc earned 75 total points
ID: 40627434
You could also try capitalizing the 'hh' in the ToText formatting.

LVL 34

Accepted Solution

James0628 earned 300 total points
ID: 40627946
mlmcc's suggestion should work.  HH is the 24 hour time format.  Or you could use H if you don't want the leading 0 (eg. 0 or 3 instead of 00 or 03).

 If you'd like to leave off the hours when it's less than 1 hour, Ido's suggestion would probably work (I haven't tried it).  Another method would be something like this:

//Here we add the Time column
"<td><div align=""center"">"+
if {@Pending Time} < Time (1, 0, 0) then
  ToText({@Pending Time},"mm'min'")
ToText({@Pending Time},"HH'h' mm'min'")
) +
//Mid (ToText({@Pending Time}),1 ,5 )+
< rest of your formula >

Why You Should Analyze Threat Actor TTPs

After years of analyzing threat actor behavior, it’s become clear that at any given time there are specific tactics, techniques, and procedures (TTPs) that are particularly prevalent. By analyzing and understanding these TTPs, you can dramatically enhance your security program.


Author Comment

ID: 40628671
What is proper etiquette or rules when awarding points?  James's solution was the one I used b/c it was easier for me to implement with no additional configuration to the report. Ido's I am sure works, but due to how my report is structured, other report formulas and select statements that point to {@Pending Time} were throwing errors and I did not feel the need to try and workout the errors the report was throwing.  Should I award all points to James, or most to James and some to Ido?

LVL 34

Expert Comment

ID: 40628830
FWIW, mlmcc's suggestion also works, at least partially, in that it would give you "00h 47min", instead of "12h 47min".  00h may not have been your first choice, but your post did sort of imply that that was acceptable (as an alternative to 12h).

 Anyway, I'm not sure what would be "proper", but, FWIW, I do think that Ido deserves some points, and maybe mlmcc too.  And I have no problem with you splitting the points, however you see fit.

LVL 100

Expert Comment

ID: 40628871
There is no defined etiquette as such.

You are free to award the points as you see fit.  It is customary when presented with several viable solutions to split the points in some way.  You can provide Expert A (solution used) the BEST ANSWER and say 400 of the 500 points.  Expert B gets 100 for providing a viable solution even if you never really pursued that path.

In some cases a solution may be viable but doesn't fit your criteria as spelled out in the question.   In that case you could state that and not award any points or again provide a small portion to acknowledge the correctness of the solution.

EE is about solutions and answers to issues not effort so to simply award points to all participants would not be appropriate.


Author Comment

ID: 40629029
thanks for the clarification.

Featured Post

How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

Join & Write a Comment

This article describes how to create custom column layout styles for Bootstrap. The article uses 5 columns to illustrate the concept, but the principle can be extended to any number of columns.
This article discusses four methods for overlaying images in a container on a web page
In this tutorial viewers will learn how to define a gradient in CSS. Create a new HTML document with an internal stylesheet.: Create a div in CSS and name it Gradient. Define the background as "linear-gradient(to right, #ee3668, black)". Ensure you …
The viewer will learn how to create a basic form using some HTML5 and PHP for later processing. Set up your basic HTML file. Open your form tag and set the method and action attributes.: (CODE) Set up your first few inputs one for the name and …

708 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

19 Experts available now in Live!

Get 1:1 Help Now