我已经通过SharePoint Designer创建了外部内容类型。我从数据库中获得的字段之一是DateTime列。但是,在SharePoint中,我只想将其格式化为日期。目前它正在通过

2011-05-06 00:00:00z

我想要类似的东西:

2011-05-06

或理想情况下:

06-05-2011

听起来真的很简单,但是我几乎找不到有关如何实现这一目标的信息。我错过了很明显的东西吗?这是可以实现的吗?我不想修改数据库(这需要时间和管理)

编辑:特定问题是外部数据选择器中的日期列,外部内容类型仅用于外部数据列。

有帮助吗?

解决方案 3

目前看来这是不可能的,这很烦人。 ROEL的敬意为他的提示供外部列表做这件事。

其他提示

MSDN的二重奏信息中有一篇文章,向您展示了如何做到这一点: http://msdn.microsoft.com/en-us/library/gg271157.aspx

我认为您也可以按以下方式执行此操作(因为外部内容类型仍然是内容类型;但是我尚未对此进行测试): - 从外部内容类型创建外部列表 - 进入您为您创建的外部列表您在SharePoint Designer中的网站 - 在右角,您可以看到视图。您的外部列表应具有默认视图。单击它,该文件应在SharePoint Designer中打开。

寻找这样的片段:

<XmlDefinition>
            <View Name="{62A0ABCF-DF9D-45DD-985E-46ECDC9F5004}" DefaultView="TRUE" MobileView="TRUE" MobileDefaultView="TRUE" Type="HTML" DisplayName="SmartAppList" Url="/Lists/ghjghj/ReadList.aspx" Level="1" BaseViewID="1" ContentTypeID="0x" ImageUrl="/_layouts/images/generic.png">
                <Method Name="ReadList"/>
                <Query>
                    <OrderBy>
                        <FieldRef Name="Id"/>
                    </OrderBy>
                </Query>
                <ViewFields>
                    <FieldRef Name="Id" ListItemMenu="TRUE" LinkToItem="TRUE"/>
                    <FieldRef Name="Name"/>
                    <FieldRef Name="Description"/>
                    <FieldRef Name="ConfigurationXml"/>
                </ViewFields>
                <RowLimit Paged="TRUE">30</RowLimit>
                <Aggregations Value="Off"/>
                <Toolbar Type="Standard"/>
            </View>
        </XmlDefinition

>

  • 在您的字段的FieldRef上,您应该能够添加格式属性。这使您可以更改日期/时间字段的显示。

参考 http://msdn.microsoft.com/en-us/library/aa5432255.aspx 对于可能的值。

来自SharePoint Designer:

  • 列表和库 - >单击列表 - >视图选项卡 - >阅读列表
  • 右键单击日期字段 - >编辑公式

    代替:

    $thisNode/@*[name()=current()/@Name]

    substring-before($thisNode/@*[name()=current()/@Name], ' ')

  • 许可以下: CC-BY-SA归因
    scroll top