从SharePoint列表项

时间:2017-08-30 15:35:55

标签: sharepoint microsoft-graph

使用测试版SharePoint REST API(使用Microsoft Graph)。 想要获取列表的所有项目,包括自定义字段的内容。

当我使用https://graph.microsoft.com/beta/sites/{site-id}/lists/{list-id}?expand=columns,items(expand=fields)时,我看到(在我的情况下):

  • columns包含32个字段,包括标准字段(例如IDTitleStatus)和自定义的(例如Next_action
  • fields仅包含默认(在我的情况下为23个)字段,包括id [注意它是小写],TitleStatus字段和-as预期 - 不是自定义的。

documentation shows an example of getting specific columns。 当我使用https://graph.microsoft.com/beta/sites/{site-id}/lists/{list-id}/items?expand=fields(select=ID,Title,Status,Next_action)

然后我得到一个包含所有项目的数组,每个项目只包含属性fields的对象id

因此:其他标准字段(TitleStatus)和自定义字段Next_action未显示。

如何获取标准和自定义字段列表的值?

<小时/> 编辑:有关我所拥有的列表的更多详细信息:

一些列表是默认的(我相信任务,问题,风险),其他列表是完全自定义的(决策,变更)。任务列表具有版本控制 一些观察:

  • 决策列表没有遗漏字段(= columns与实际fields之间没有差异)
  • 所有人都缺少&#34;:ID |作者|编辑器| DocIcon | AppAuthor | AppEditor,以及不在列中的字段:id | AuthorLookupId | EditorLookupId;两个都可以解释我猜(注意列中的ID和字段中的ID)
  • 缺少的字段有多种类型:文本(富/普通,单/多行),数字,选择等。

可能相关,当使用Flow我创建一个触发器&#34;当一个项目被创建或修改时,我会被呈现只有2个列表(更改和决定)。缺失:任务,风险,问题。

任务

  • fields(19):&#34; Title | Predecessors | Priority | Status | PercentComplete | AssignedTo | Body | StartDate | Checkmark | ContentType | Modified | Created | _UIVersionString | Attachments | Edit | LinkTitleNoMenu | LinkTitle | ItemChildCount | FolderChildCount&# 34;
  • 缺少(13):&#34; DueDate | RelatedItems | JIRA_id | Progress_notes | Next_action | Waiting_for |更新 | ID |作者|编辑| DocIcon | AppAuthor | AppEditor &#34;
  • 不在列(4)中的字段:&#34; PercentComplete@odata.type | id | AuthorLookupId | EditorLookupId &#34;

风险

  • fields(22):&#34; Title | Status | Category | DueDate | Probability | Impact | Exposure | Cost | Cost_x0020_Exposure | Description | Mitigation_x0020_plan | Trigger | ContentType | Modified | Created | _UIVersionString | Attachments | Edit | LinkTitle | ItemChildCount | FolderChildCount&#34;
  • 缺少(12):&#34; 所有者| AssignedTo | Impact_x0020_description | Contingency_x0020_plan | Trigger_x0020_Description | RelatedItems | ID |作者|编辑| DocIcon | AppAuthor | AppEditor & #34;
  • 字段不在列(7)中:&#34; OwnerLookupId | Probability@odata.type | Impact@odata.type | Cost@odata.type | id | AuthorLookupId | EditorLookupId &#34;

问题

  • fields(16):&#34; ContentType | Title | Modified | Created | _UIVersionString | Attachments | Edit | LinkTitleNoMenu | LinkTitle | ItemChildCount | FolderChildCount | Status | Category | Priority | DueDate | Discussion&#34;
  • 缺少(10):&#34; ID |作者|编辑| DocIcon | AppAuthor | AppEditor | 所有者| AssignedTo |分辨率| RelatedItems &#34; < / LI>
  • 字段不在列(5)中:&#34; id | AuthorLookupId | EditorLookupId | OwnerLookupId | AssignedToLookupId &#34;

决定

  • fields(14):&#34; Title | Description | Decided_by | Date_decided | ContentType | Modified | Created | _UIVersionString | Attachments | Edit | LinkTitleNoMenu | LinkTitle | ItemChildCount | FolderChildCount&#34;
  • 缺少(6):&#34; ID |作者|编辑| DocIcon | AppAuthor | AppEditor &#34;
  • 不在列(3)中的字段:&#34; id | AuthorLookupId | EditorLookupId &#34;

更改

  • fields(13):&#34; Title | Status | Priority | ContentType | Modified | Created | _UIVersionString | Attachments | Edit | LinkTitleNoMenu | LinkTitle | ItemChildCount | FolderChildCount&#34;
  • 缺少(14):&#34; 描述|操作|背景|影响| Impact_x0020_delivery_x0020_time | Impact_effort | Impact_functionality | Impact_cost | ID |作者|编辑器| DocIcon | AppAuthor | AppEditor < / EM>&#34;
  • 不在列(3)中的字段:&#34; id | AuthorLookupId | EditorLookupId &#34;

1 个答案:

答案 0 :(得分:0)

/beta周围的当前$expand={field}($select={field})端点似乎存在错误。我看到了类似的结果。

但是,当我使用时,我会看到完整的字段列表:

/beta/sites/{site-id}/lists/{list-id}/items?$expand=fields

我还可以使用以下命令返回完整的列,项和字段:

/beta/sites/{site-id}/lists/{list-id}$expand=columns,items($expand=fields)

目前,您需要提取整个集合并处理应用中的任何其他处理。作为测试版发布,仍然存在一些错误。这就是为什么不建议将其用于生产的原因。