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