2017-08-30 56 views
1

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

当我使用https://graph.microsoft.com/beta/sites/{site-id}/lists/{list-id}?expand=columns,items(expand=fields)我看到(在我的情况下):包含32个字段,包括标准的人(例如IDTitleStatus)和自定义的(例如Next_action

    • columnsfields只包含默认值(在我的情况下为23)字段,包括id [请注意是小写],TitleStatus字段和-as expected-不是自定义字段。

    The 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之间没有区别)
    • 所有的人都 “失踪”:ID |作者|编辑| DocIcon | AppAuthor | AppEditor ,以及不在列中的字段:id | AuthorLookupId | EditorLookupId;这两个都可以解释我猜(注意在列中的ID和在字段中的ID)
    • 缺少的字段有多种类型:文本(富/平原,单/多行),数字,选择等

    可能有关,使用Flow时,我会创建一个“创建或修改项目时”的触发器,然后我只给出2个列表(更改和决定)。缺失:任务,风险,问题。

    任务

    • 场(19):“标题|前辈|优先级|状态| PERCENTCOMPLETE | AssignedTo |身体|开始|对号|的ContentType |修改|创建| _UIVersionString |附件|编辑| LinkTitleNoMenu | LinkTitle | ItemChildCount | FolderChildCount”
    • 缺失(13): “DUEDATE | RelatedItems | JIRA_id | Progress_notes | Next_action | Waiting_for |更新 | ID |作者|编辑| DocIcon | AppAuthor | AppEditor
    • 字段不在列(4)中:“[email protected] | ID | AuthorLookupId | EditorLookupId

    风险

    • 场(22):” 标题|状态|分类| DUEDATE |概率|冲击|曝光|成本| Cost_x0020_Exposure |说明| Mitigation_x0020_plan |触发器|的ContentType |修改|创建| _UIVersionString |附件|编辑| LinkTitle | ItemChildCount | FolderChildCount “
    • 失踪(12):” 所有人| AssignedTo | Impact_x0020_description | Contingency_x0020_plan | Trigger_x0020_Description | RelatedIte ms | ID |作者|编辑| DocIcon | AppAuthor | AppEditor
    • 字段不是在列(7):” OwnerLookupId | [email protected] | [email protected] |成本@的OData。键入 | ID | AuthorLookupId | EditorLookupId

    问题

    • 场(16):” ContentType的|标题|修改|创建| _UIVersionString |附件|编辑| LinkTitleNoMenu | LinkTitle | ItemChildCount | FolderChildCount |状态|分类|优先| DueDate |讨论“
    • missing(10):”ID |作者|编辑| DocIcon | AppAuthor | AppEditor | 业主|分配|分辨率|相关项目
    • 字段不在列(5):”id | AuthorLookupId | EditorLookupId | OwnerLookupId | AssignedToLookupId

    决定

    • 字段(14):” 标题|描述| Decided_by | Date_decided |的ContentType |改性|创建| _UIVersionString |附件|编辑| LinkTitleNoMenu | LinkTitle | ItemChildCount | FolderChildCount”
    • 失踪(6): “ID |作者|编辑| DocIcon | AppAuthor | AppEditor
    • 领域未在列(3): “ID | AuthorLookupId | EditorLookupId

    变化

    • 场(13):“标题|状态|优先级|的ContentType |修改|创建| _UIVersionString |附件|编辑| LinkTitleNoMenu | LinkTitle | ItemChildCount | FolderChildCount “
    • 失踪(14):” 描述|行动|背景|冲击| Impact_x0020_delivery_x0020_time | Impact_effort | Impact_functionality | Impact_cost | ID |作者|编辑| DocIcon | AppAuthor | AppEditor
    • 领域不列(3):” ID | AuthorLookupId | EditorLookupId
  • 回答

    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)

    暂时,你需要拉动整个收集和处理任何额外的处理你的应用。作为测试版本,还有一些错误仍在制定中。这就是为什么不建议将其用于生产的原因。

    +0

    了解它是Beta版,目前在官方版本中不支持列表,所以我希望使用Beta版。你提到的两个解决方法都给了我以前的结果(23个常规字段)。我是否需要做任何特殊的事情来获取自定义列的值,例如在我的情况下:'Next_action'?我将如何“拉动整个收藏”和“处理额外的处理”? – wivku

    +0

    你可以添加'next_action'的列决定吗?我在列表中的字段没有问题。 –

    +0

    请原谅我的无知,你是说“添加列决定”是什么意思? – wivku

    相关问题