如何在informix 4GL中显示带有时间显示的am或PM。在我的数据库中,该字段名为crttime_a_p,并存储为“A”和pm“P”。如何在我的应用程序中将其显示为“AM”或“PM”。任何帮助,将不胜感激。谢谢。
答案 0 :(得分:1)
您需要映射数据库值('A'⟶'AM','P'⟶'PM')并将映射值显示到FORMONLY字段。如果需要,该字段可用于输入。您可以将表单属性(例如UPSHIFT, AUTONEXT, INCLUDE = ('AM', 'PM')
)添加到表单中的字段。您将无法使用RECORD LIKE Table.*
表示法,因为DB中的字段为CHAR(1),但您需要CHAR(2)才能显示和输入。
更严重的是,您需要考虑是否必须使用相关的时间字段。如果是DATETIME字段,则时间为24小时表示法,从24小时到AM / PM表示法的转换不完全是直接的。提示:00:01:02 24小时制是12:01:02 AM; 12:02:03在24小时表示法是12:02:03 PM,但是13:03:04在24小时是下午1:02:03 PM / PM表示法(通常在小时没有前导零)。另请参阅Converting 24-hour military time to AM/PM time。
如果时间字段只是一个字符串,那么您可能没有这些问题,但是您需要仔细设计表单以仅接受数字字符(属性FORMAT
和PICTURE
?)。