
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-21-2018 10:43 AM
How can I see only hours? Either removing minutes and seconds fields OR having them disabled (read-only).
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-22-2018 03:24 PM
Let us you have the table with some duration fields, for example, field1 and field2. You can create Client Script with type onLoad, which has the following code:
function onLoad() {
var doc = g_form.getControl("field1").ownerDocument,
win = doc.defaultView,
table = g_form.getTableName(),
hideMinSecFields = function (field) {
function getElem (field, suffix, prefix) {
return doc.getElementById((prefix || "") + table + "." + field + (suffix || ""));
}
var controlHour = getElem(field, "dur_hour", "ni."),
controlMin = getElem(field, "dur_min", "ni."),
controlSec = getElem(field, "dur_sec", "ni."), cs;
if (controlMin != null && controlMin.style != null) {
controlMin.style.display = "none";
}
if (controlSec != null && controlSec.style != null) {
if (win != null && win.getComputedStyle != null) {
cs = win.getComputedStyle(controlSec, null);
if (controlHour != null && controlHour.style != null && cs != null) {
controlHour.style.borderRightStyle = cs.getPropertyValue("border-right-style");
controlHour.style.borderRightWidth = cs.getPropertyValue("border-right-width");
controlHour.style.borderRightColor = cs.getPropertyValue("border-right-color");
controlHour.style.borderBottomRightRadius = cs.getPropertyValue("border-bottom-right-radius");
controlHour.style.borderTopRightRadius = cs.getPropertyValue("border-top-right-radius");
}
}
controlSec.style.display = "none";
}
};
hideMinSecFields("field1");
hideMinSecFields("field2");
}
It's the same code, which I posted before, but where I posted before. The controls in the form will be displayed without min/sec. Something like on the picture below:
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-21-2018 11:06 AM
There are currently no option/attribute of duration, which will display the duration in the form in which you need. I had the same requirement and wrote small function, which use DOM manipulations to hide unneeded input fields. To de mostly safe I initialized doc, win and table variables first of all by the following code:
var doc = g_form.getControl("someElementFromTheForm").ownerDocument,
win = doc.defaultView,
table = g_form.getTableName();
where someElementFromTheForm is the column name of some element of the form. The main code is the following:
var hideMinSecFields = function (field) {
function getElem (field, suffix, prefix) {
return doc.getElementById((prefix || "") + table + "." + field + (suffix || ""));
}
var controlHour = getElem(field, "dur_hour", "ni."),
controlMin = getElem(field, "dur_min", "ni."),
controlSec = getElem(field, "dur_sec", "ni."), cs;
if (controlMin != null && controlMin.style != null) {
controlMin.style.display = "none";
}
if (controlSec != null && controlSec.style != null) {
if (win != null && win.getComputedStyle != null) {
cs = win.getComputedStyle(controlSec, null);
if (controlHour != null && controlHour.style != null && cs != null) {
controlHour.style.borderRightStyle = cs.getPropertyValue("border-right-style");
controlHour.style.borderRightWidth = cs.getPropertyValue("border-right-width");
controlHour.style.borderRightColor = cs.getPropertyValue("border-right-color");
controlHour.style.borderBottomRightRadius = cs.getPropertyValue("border-bottom-right-radius");
controlHour.style.borderTopRightRadius = cs.getPropertyValue("border-top-right-radius");
}
}
controlSec.style.display = "none";
}
};
To hide the min/sec fields you need just call hideMinSecFields function with the name of the duration field as parameter.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-21-2018 03:41 PM
How do I run this? onLoad client script?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-21-2018 09:22 PM
Yes of cause. It's a part of code, which will be start onLoad.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
03-22-2018 10:45 AM
Sorry, can you give me the steps? I'm not sure where and how to implement this.