Мы использовали PXDBTimeSpanLong с форматом LongHoursMinutes.На самом деле у нас есть поля, где формат выбирается с помощью настройки.LongHoursMinutes должно работать в вашем случае, если вы используете PXMaskEdit для своей страницы.
В поле INT для вашего DAC:
[PXDBTimeSpanLong(Format = TimeSpanFormatType.LongHoursMinutes)]
Затем на странице для вашего поля:
<px:PXMaskEdit ID="edMyTimeField" runat="server" DataField="MyTimeField" />
Пример, показывающий поле PXDBTimeSpanLong слева и то же значение с использованием простого несвязанного поля PXInt справа для отображения значения БД:
Полные поля ЦАП, использованные в примере:
#region MyTimeField
public abstract class myTimeField : PX.Data.BQL.BqlInt.Field<myTimeField> { }
protected Int32? _MyTimeField;
[PXDBTimeSpanLong(Format = TimeSpanFormatType.LongHoursMinutes)]
[PXDefault(TypeCode.Int32, "0")]
[PXUIField(DisplayName = "LongHoursMinutesField")]
public virtual Int32? MyTimeField
{
get
{
return this._MyTimeField;
}
set
{
this._MyTimeField = value;
}
}
#endregion
#region MyTimeFieldDB
[PXInt]
[PXUIField(DisplayName = "DB Value")]
public virtual Int32? MyTimeFieldDB
{
get
{
return this._MyTimeField;
}
}
#endregion