SharePoint 2013 Online - 如何设置链接到自身的筛选列

时间:2015-10-29 16:03:07

标签: sharepoint sharepoint-2013

我是SharePoint的新手。我已经设置了一个文档库。其中一列是文档的唯一ID。另一个名为“相关文档”的列是一个查找字段,其中可能包含指向另一个文档的唯一ID的可单击链接。

如何使用原始文档的链接自动填写相关文档列?也就是说,如果我使文档A与文档B相关,我想自动添加从B到A的关系。不确定是否可以使用相关项目功能 - 它似乎不允许可点击链接。

谢谢。

2 个答案:

答案 0 :(得分:0)

我能够真实地看到这一切的唯一方法是使用远程事件接收器。 https://msdn.microsoft.com/en-us/library/office/jj220043.aspx

我无法想出一种开箱即用的方法。

您需要创建SharePoint加载项并将其部署到SP Online实例。远程代码将托管在Azure实例上。

更新文档时会触发远程代码。

然后,您可以获得对相关文档的引用,并相应地填写相关的文档链接字段。

答案 1 :(得分:0)

您可以使用SharePoint的source参数传递参数。这实际上是转发URL以跳回,但可以用于自动将参数传递给库的第二种形式。 这是一个小功能,用于打开上传对话框,例如要插入内容编辑器WebPart:

function openUploadDialog(passParameterName, passParameterValue)
{
    var dialogOptions = SP.UI.$create_DialogOptions();
    dialogOptions.url = "/_layouts/15/Upload.aspx?List=[INSERT_LIST_ID_HERE]&RootFolder=&IsDlg=1&source=%2fSitePages%2f[SOME_SITE_OF_YOURS].aspx%3f" + encodeURIComponent(passParameterName) + "%3d" + encodeURIComponent(passParameterValue);
    dialogOptions.width = 700;
    dialogOptions.height = 310;
    dialogOptions.title = "Submit Document";
    dialogOptions.dialogReturnValueCallback = Function.createDelegate(null, CloseThisDocCallBack);
    SP.UI.ModalDialog.showModalDialog(dialogOptions);
}

openUploadDialog([NAME_OF_YOUR_ID],[VALUE_OF_YOUR_ID])

短:

  • 将包含ID(或任何您想要的内容)的字段添加到您的资料库
  • 创建内容编辑器或脚本WebPart,您可以随意使用 打开对话框的功能
  • 查看此webpart的源代码以找出字段的DOM ID
  • 将另一个webpart添加到您的上传表单(Ribbon => Library =>表单Webparts =>默认编辑器表单)以从源参数中获取值(例如通过JQuery)并将其写入新字段中&# 39;我刚刚创建。

这样的事情:

id = GetUrlKeyValue('[NAME_OF_YOUR_ID]');
$('#[DOM_ID_OF_YOUR_CUSTOM_FIELD]').val(id);

我曾经用过一次将list元素的ID添加到文件中。希望这是你想要的。