abap日期格式化

时间:2010-04-17 11:14:47

标签: sap abap

我是新手,只是编写我的第一个应用程序。 现在我得到了SYDATUM类型的日期,并想知道如何以m / d / y的格式对其进行格式化。 我在网上找到了一些片段,但它们并没有真正帮助我们。 谢谢你的帮助。

3 个答案:

答案 0 :(得分:6)

你应该更具体一点 - 你究竟想对日期做什么(在内部使用D型,它更短,做同样的事情)。

  • 您要将其写入列表屏幕吗?使用formatting options described in the documentation和在线帮助:

    WRITE l_my_date MM / DD / YYYY。

  • 您要将其转换为文本变量吗?非常相似:

    WRITE l_my_date TO l_my_text MM / DD / YYYY。

  • 要在SAPscript表单中设置日期格式,请参阅SET DATE MASK命令。

  • 要在SmartForm中打印格式化日期,请使用WRITE命令和临时变量(是的,丑陋,我知道......)

  • 大多数控件(例如ALV Grid)应自动处理格式。

但是 - 在将格式硬编码到应用程序时要小心。通常您不必这样做,因为系统会自动使用用户主数据中指定的格式。这可确保每个用户都能看到根据其区域设置格式化的日期。

答案 1 :(得分:1)

通常最好将日期导出到工厂级别国家/地区特定日期格式:

if w_country is initial.
  select single LAND1
    from T001W
    into w_country
   where WERKS eq w_the_plant.
endif.

SET COUNTRY w_country.

write w_the_date to w_export.

例如03/04/2002可能是不同国家的不同日期。

答案 2 :(得分:0)

您可以尝试使用关键字TRANSLATE。或者建议您查看此link