【问题标题】:Conversion from DTDATE9. to DATE9从 DTDATE9 转换。至 DATE9
【发布时间】:2015-06-11 01:29:31
【问题描述】:

在 SAS Data Integration Studio 中,我有一个带有 DTDATE9 的表。名为date 的变量。当我将它映射到用户生成的代码转换(根本不改变变量)中时,我收到错误消息“未找到或无法加载信息 DTDATE”。

将格式更改为 DATE9. 后出现相同的错误消息,如果我在上游转换中更改变量使其格式为 DATE9.,那么它会以 ********* 的形式出现。

如何携带这个变量?

非常感谢。

【问题讨论】:

    标签: sas


    【解决方案1】:

    这是因为DTDATE 只是一种输出格式。以下是manual's description of DTDATEw. FORMAT

    DTDATEw。格式产生与 DATEw 相同类型的输出。格式产生。不同之处在于DTDATEw。格式需要一个日期时间值。

    因此,date 列值的内部表示仍采用 datetime. 格式。

    * Your original table could be interpered as the following.;
    data dtdate;
      input date datetime20.;
      format date dtdate9.;
      datalines;
      01JAN2015:00:00:00
    ;
    
    * By removing the format, you can see the internal representation.
    data dtdate_raw_again;
      set dtdate;
      format date;
    run;
    

    【讨论】:

    • 感谢 D. Josefsson。这对我来说很奇怪,因为许多上游转换工作正常,只有用户编写的代码转换有这个问题。我通过其他方式解决了这个问题,但这是有用的信息。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-02
    • 1970-01-01
    相关资源
    最近更新 更多