Sharepoint外部列表问题

时间:2012-05-25 08:17:50

标签: sharepoint sharepoint-2010 sharepoint-2007 sharepoint-designer

我在Sql server 2008 R2中有一个表。在SQL服务器中,我创建了一个具有5列的视图。我想在Sharepoint 2010中显示相同的视图。

为了显示目的我使用了BCS和Extenal List,然后我在Sharepoint Extenal List中获得了所有记录。但在这里我的问题是我想再增加一个列附件。我没有获得任何成功。

现在我正在使用自定义列表。通过使用SSIS,我将记录从SQl Server导出到sharepoint List。它有附加的默认选项,但在这里我的问题是用户能够从自定义列表编辑剩余列。我希望Only Attachment和Remaing列应该是ReadOnly。

任何人请告诉我解决方案:

如何将附件列添加到外部列表到Sharepoint 2010中。 或者。

如何使其他列只读除附件..

1 个答案:

答案 0 :(得分:0)

您应该能够以编程方式设置字段。您可以在需要时使用事件接收器进行定位。看看这个article

通过对象模型在SharePoint中创建项目时,您可以将该字段的只读属性转换为false,以便允许您设置该字段的值,反之亦然。你可以来回设置它们只是相当容易阅读。

// get the list and set modified property to allow writing
SPWeb web = new SPSite("http://url/to/web").OpenWeb();
SPList selectedList = web.Lists["listname"];
selectedList.Fields["Modified"].ReadOnlyField = false;
selectedList.Fields["Modified"].Update();


// set the item
SPItem newItem = selectedList.Items[0];
newItem["Modified"] = DateTime.Now;
newItem.Update();

// Set readonly back to true
selectedList.Fields["Modified"].ReadOnlyField = true;
selectedList.Fields["Modified"].Update();