![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Office 365开发
文章平均质量分 80
计算机器
SharePoint/Office365解决方案架构师,十年SharePoint开发与支持经验,微软SharePoint方向MCP。SharePoint Framework/Power Platform爱好者,Azure开发。英文流利,两次带领团队参加微软ignite大会。
展开
-
SharePoint Online 列表的网页视图(Modern List web view)
AllItems.aspx?env=WebViewList移除了page header和左侧导航栏原创 2020-07-31 00:34:16 · 737 阅读 · 0 评论 -
SharePoint Framework 1.11版本发布啦
微软在7月16日发布了SharePoint Framework 1.11版本,新版本增加了如下新功能:1, 千呼万唤的App Store功能 (Supporting SharePoint Framework solutions in AppSource and in Marketplace)。SharePoint Framework解决方案package可以发布到AppSource了!2, 增强了与Teams的集成,可以使用Teams的Task module(Support Microsoft Tea原创 2020-07-18 20:54:40 · 317 阅读 · 0 评论 -
SharePoint VR空间(SharePoint Spaces )
https://www.exploresharepointspaces.com/原创 2020-07-18 20:30:33 · 539 阅读 · 0 评论 -
SharePoint Online + Power Automate无代码开发一个迷你合同文档管理系统
这篇博客详细介绍如何使用SharePoint Online + Power Automate无代码创建一个迷你合同文档管理系统,主要实现了如下功能:根据合同模板生成合同文档将文档转换为PDF文档将PDF文档作为邮件附件发送出去原创 2020-07-19 17:35:16 · 3186 阅读 · 6 评论 -
SharePoint Framework 1.10 发布了!
激动人心的时候到来了,SharePoint Framework 1.10终于发布了!这个版本包含了我期待已久的对Office Web Addin的支持,从此开发Office addin也可以使用SPFx了!来看一下1.10的新功能吧:1, 支持创建Office Add-Ins(预览版)2, 支持一种新的扩展:搜索扩展(预览版)3, 支持创建Teams个人App (GA版)4, ...原创 2020-01-15 10:37:43 · 508 阅读 · 0 评论 -
记录一下MS Flow发送提醒邮件的条件
如果SharePoint 列表中的某一条item超过三天没有更新,就每三天发一封提醒邮件出来:首先获取列表,然后使用apply to each对其中的items遍历:然后设置提醒条件为当天日期减去修改日期,然后将结果对3取模,如果为0,就发送邮件。条件设置如下:mod(sub(dayOfYear(body('Current_time')), dayOfYear(items('Appl...原创 2019-11-25 09:24:23 · 957 阅读 · 0 评论 -
如何使用MS Flow向SharePoint列表中的用户发送邮件
在一个SharePoint列表中包含了一个多用户的字段(multiple people),用户希望向这个字段中包含的所有用户发送邮件。那么如何使用MS Flow来实现呢?首先想到的方式就是使用apply to each遍历每个用户然后分别发送 邮件。如下所示。首先获取列表中的item,然后使用apply to each对其中的多user字段(例子中的需要通知的人)遍历,在遍历体中使用send an...原创 2019-11-25 09:09:53 · 909 阅读 · 0 评论 -
在Azure上使用SAML方式配置单点登录 SSO
MS Azure支持SSO单点登陆的配置(SAML方式,密码方式)。单点登陆包含三个角色,一个是Service Provider,也就是应用程序提供者,一个是User Agent,例如浏览器,第三个是Identity Provider,也就是身份定义者。单点登陆的过程如下所示下面是在Azure中,使用SAML方式配置SSO的过程,Azure作为Identity Provider。1,创...原创 2019-10-22 22:40:27 · 8517 阅读 · 1 评论 -
SPFx debug:页面无法加载js文件 (Failed to load component, failed to load URL)
今天遇到了一个奇怪的问题,部署的页面上的SPFx webpart无法加载,错误信息如下:这个问题的诡异之处在于,同样的权限,有些用户可以访问,有些用户不能访问,有些用户可以用Chrome访问但是不能用IE访问。。。查了很久才找到原因。原因是,我是将SPFx webpart的js代码部署到了站点的一个文档库中。页面加载的时候会加载例如:https://contoso.sharepo...原创 2019-10-22 14:55:11 · 1911 阅读 · 0 评论 -
使用CircleCI实现SPFx库组件的持续集成(二)
库组件(Library Component)是SPFx 1.8的新功能:SharePoint Framework v1.8新功能:使用库组件(Library Component)在webpart间共享代码这几篇博客介绍如何使用CircleCI实现库组件的持续集成,当向github提交代码之后,CircleCI自动执行如下任务:1. 自动捆绑 (使用CircleCI实现SPFx库组件的持续集...原创 2019-04-11 14:42:15 · 280 阅读 · 0 评论 -
使用CircleCI实现SPFx库组件的持续集成(一)
库组件(Library Component)是SPFx 1.8的新功能:SharePoint Framework v1.8新功能:使用库组件(Library Component)在webpart间共享代码这几篇博客介绍如何使用CircleCI实现库组件的持续集成,当向github提交代码之后,CircleCI自动执行如下任务:1. 自动捆绑 (本篇)2. 单元测试 (使用CircleC...原创 2019-04-10 15:19:32 · 409 阅读 · 0 评论 -
Office 365 cli - 像使用powershell操作SharePoint一样操作Office 365 (SharePoint Online, Teams, SFPx...)
Office 365 CLI是微软PnP社区开发的针对Office 365的命令行接口(Command Line Interface)。可以使用这个工具方便地管理Office 365,SharePoint Online以及SharePoint Framework解决方案。这个工具是跨平台的,可以运行在不同的操作系统上,并且是开源的。这里主要介绍如何使用Office 365 cli管理Share...原创 2019-04-22 23:04:33 · 751 阅读 · 0 评论 -
使用Azure Pipeline实现SharePoint Framework web part 开发的持续集成和部署
Azure Pipelines是微软提供的一个用于代码持续集成以及部署的工具,可以利用它来实现SharePoint Framework代码的持续集成和部署。目前使用SharePoint Framework开发web part的步骤是:1,使用Yeoman创建webpart项目2,代码管理3,测试4,打包生成.sppkg文件5,将.sppkg文件上传到SharePoint A...原创 2019-04-18 11:10:57 · 881 阅读 · 0 评论 -
使用Power BI + Power BI webpart生成SharePoint List的报表
使用Power BI,需要有一个Office 365的账户。如果已经有了一个Office 365账户,可以使用免费版本的Power BI online:但是Power BI Online可以连接SharePoint文档库中的文档,无法直接连接一个SharePoint List,为了连接SharePoint List,我们需要使用Power BI桌面版,并且需要Power BI Pro的账户...原创 2019-05-01 10:10:03 · 2473 阅读 · 0 评论 -
使用SPHttpClient对象与SharePoint交互
在SharePoint Framework中,有一个对象SPHttpClient,这个对象继承了HttpClient对象,可以使用这个对象方便地调用SharePoint REST API。在使用这个对象之前,需要导入这个对象:import { SPHttpClient, SPHttpClientResponse, SPHttpClientConfiguration } from '@mic...原创 2019-06-11 21:46:24 · 708 阅读 · 0 评论 -
SharePoint Framework v1.8新功能:使用库组件(Library Component)在webpart间共享代码
SharePoint Framework 1.8版本中,在webpart和extension这两种组件之外,又添加了一个新的组件:库组件(Library Component)。库组件的作用是复用代码,将公用的代码提取出来,形成库组件,在其他组件例如webpart和extension中使用。下面看一下如何创建库组件并且在webpart中引用库中的代码。首先创建一个文件夹"spfx18libr...原创 2019-03-29 14:57:00 · 408 阅读 · 0 评论 -
如何配置SharePoint Framework web part (二)生命周期和事件
属性编辑面板的更新有两种模式,一种是响应式的,这是默认的模式,即当你修改属性值的时候,立即更新属性,并根据值属性重新渲染webpart。第二种是非响应式的,如果指定非响应式模式,会在属性编辑面板下方自动添加一个Apply按钮,修改属性之后,需要点击这个按钮,才会修改属性值。这个模式是通过disableReactivePropertyChanges这个属性控制的,默认返回值是false,也就是响...原创 2019-03-18 09:41:36 · 322 阅读 · 0 评论 -
SharePoint Framework web part 使用log API记录log
SharePoint Framework 提供了Log API,用来在浏览器的控制台输出web part的log。如果需要使用这个Log API,首先需要导入Log对象:import { Log } from '@microsoft/sp-core-library';Log对象提供了四种静态log方法,对应四种log级别://信息Log.verbose(source: strin...原创 2019-03-21 08:48:33 · 276 阅读 · 0 评论 -
SharePoint Framework (SPFx) v1.8发布了
SharePoint Framework (SPFx) v1.8发布了,来看一下1.8版本有什么新功能和变化。新功能支持开发Teams标签(SPFx development of Teams Tabs ) 支持应用页面(App Pages) 支持域隔离web part (Web parts in Isolated Domains) 文档库组件预览版 Library Component...原创 2019-03-26 09:40:24 · 308 阅读 · 0 评论 -
如何配置SharePoint Framework web part (三)自定义一个属性控件
如果SharePoint Framework提供的开箱即用的属性控件无法满足需要怎么办?这个时候我们可以自定义一个属性控件来满足自己的需要。下面通过自定义一个带有标签的文本框作为例子,看一下如何自定义属性控件:在webpart项目中创建一个文件夹以及四个文件如下:首先我们定义这个属性控件的属性,就是在“getPropertyPaneConfiguration”添加属性控件时,需要指...原创 2019-03-20 11:25:10 · 404 阅读 · 0 评论 -
如何配置SharePoint Framework web part (一)基础控件
在SharePoint服务器端webpart开发中,我们可以在webpart的属性编辑器中自定义webpart的属性,来配置webpart。在使用SharePoint Framework创建的客户端webpart中,一样可以方便的自定义webpart的属性编辑面板,添加新的属性来配置我们的webpart。在创建完成一个webpart项目之后,webpart属性编辑面板中会默认添加一个属性des...原创 2019-03-16 19:50:45 · 571 阅读 · 0 评论 -
SharePoint Framework 1.7 新功能(一)动态数据(Dynamic Data)
SharePoint Framework 1.7版本发布了,带来了很多新功能,新功能的简介请参见这里。这篇博客介绍其中的新功能:动态数据(Dynamic Data)。在SPFx1.7版本之前,SPFx不同的组件之间通信会比较麻烦,动态数据的功能就是为了解决SPFx组件之间通信的问题。动态数据分为两个部分,一个是动态数据源,一个是数据接收者。动态数据源既可以是一个webpart也可以是一...原创 2019-03-05 13:20:19 · 608 阅读 · 0 评论 -
SharePoint Online保存站点模板的方法
SharePoint Online上,在站点设置页面,默认没有将站点保存为模板这个选项。这个功能需要使用designer打开,使用designer连接站点,然后选择Ribbon上的"Site Options", 修改SaveSiteAsTemplateEnabled为true:然后通过url访问:https://contoso.sharepoint.com/sites/test/_la...原创 2019-05-07 14:24:56 · 598 阅读 · 0 评论 -
用SharePoint Framework实现照片墙web part
使用yo @microsoft/sharepoint创建web part:使用如下命令安装masonry-layout以及类型定义:npm install --save masonry-layout @types/masonry-layout安装pnpjs,用来读取保存在SharePoint图片库中的图片: npm install --save @pnp/sp @pnp/o...原创 2019-06-14 00:49:51 · 520 阅读 · 0 评论 -
使用npm+babel+webpack+React搭建SharePoint hosted add-in开发环境
使用npm,babel,webpack,React 开发SharePoint hosted add-in。原创 2017-12-10 05:54:44 · 544 阅读 · 0 评论 -
迁移MS Flow的四种方法
之前介绍了如何使用MS Flow快速实现简单的审批流程。开发完成之后,需要部署到UAT环境中,这就需要迁移当前的Flow,这里总结了在不同环境之间迁移Flow的四种方法。1. 使用template的方式:Microsoft支持将自己创建的Flow作为模板上传到Flow Gallery中。上传到Flow Gallery中之后,其他人都可以看到和使用这个Flow模板。具体方法可以参考微软的文档:h...原创 2019-08-30 11:14:51 · 796 阅读 · 0 评论 -
SPFx + MS Flow 实现简单审批流程
MS Flow的批准流程在批准的时候会重定向到一个批准的界面,这会让用户感到困惑,页面也不友好。为了可以灵活定制化提交/批准页面,并且让用户一直停留在SharePoint中提高用户体验,我放弃了MS Flow的批准流程模板,仅让MS Flow发送邮件,然后使用SPFx web part来实现页面。所以这篇博客介绍在SharePoint Online环境中,如何结合SPFx,列表和MS Flow来实...原创 2019-08-27 14:23:18 · 928 阅读 · 0 评论 -
关于SPFx解决方案部署方式的总结
本文总结了SPFx解决方案的部署方式以及在部署前需要考虑的问题。首先考虑打包,SPFx提供了两种打包方式,一种是在.sppkg文件中包含代码,一种是不包含代码。这个可以在配置文件“package-solution.json"中指定:"includeClientSideAssets": true, //true为包含代码,false为不包含代码1,包含代码 主要用于Office CD...原创 2019-08-23 14:31:37 · 765 阅读 · 8 评论 -
SharePoint Framework v1.8新功能: 域隔离的web part (Isolated Web part)
SharePoint Framework 1.8版本正式支持域隔离web part。1,什么是域隔离webpart(isolated webpart)?与我们通常说的SPFx客户端web part不同,域隔离的webpart运行在嵌入页面的一个iframe中。如果当前站点是https://contoso.sharepoint.com,则域隔离的webpart会运行在https://cont...原创 2019-07-26 17:02:15 · 468 阅读 · 0 评论 -
SharePoint Framework 1.9 发布了!
SharePoint Framework 1.9在本月的23号发布了!来看一下1.9版本的新功能。1, 库组件正式发布GA版本。在之前的1.8版本中,库组件还是预览版本,现在可以在SharePoint Framework的正式版本中使用库组件了,关于库组件的介绍请参见:SharePoint Framework v1.8新功能:使用库组件(Library Component)在webpart间共...原创 2019-07-26 17:18:29 · 272 阅读 · 0 评论 -
记录一个使用pnpjs时遇到的一个问题
使用SPFx创建了一个webpart,其中使用pnpjs访问列表,在online workbench中一切正常,因为workbench的url是https://contoso.sharepoint.com/sites/testweb/_layouts/15/workbench.aspx代码如下,这里使用sp这个全局对象,获取当前web,然后读取list数据:sp.web.lists ...原创 2019-06-28 10:07:31 · 693 阅读 · 0 评论 -
一个SPFx的部署错误
今天在部署一个.sppkg文件到App Catalog中的时候,出现了一个错误:Component ID {0} exists in solution {1} already第一个原因可能是某个web part的ID出现了重复(有时候会直接copy一个webpart),解决方法是首先将这个包从App Catalog中移除(删除并且在回收站中删除),然后打开项目中的每一个*manifest...原创 2019-07-26 15:38:11 · 388 阅读 · 0 评论 -
在SharePoint Framework中使用SPHttpClientBatch对象批量添加,更新item
在上一篇博客使用SPHttpClient对象与SharePoint交互中介绍了如何使用SPHttpClient对象调用SharePoint Rest API,这篇博客会继续介绍如何批量发送请求,减少请求的次数。在SharePoint Framework 1.8.2正式版本中,SPHttpClient对象支持三个方法:其中并没有批处理方法。但是在1.8.2的developer previ...原创 2019-06-11 21:47:28 · 534 阅读 · 0 评论 -
SharePoint Framework (SPFx) v1.8.2发布了
SharePoint Framework (SPFx) v1.8.2已经发布了,我们来看一下这个版本包含的内容:1,支持Nodejs 10!从1.8.2开始,正式支持Nodejs 10了。将来的版本会仍旧支持Nodejs 8,但是会在后面的某个版本中移除对Nodejs 8的支持。2, 项目减少了大概50-100MB的存储空间。使用Yeoman SharePoint Framework 生成...原创 2019-06-11 21:48:33 · 330 阅读 · 0 评论 -
使用JQuery调用SharePoint Rest API中的Batch命令批量添加,更新item
在SharePoint Framework中使用JQuery,调用SharePoint Rest API批量添加,更新item。这里使用Rest API中的Batch命令。1, 创建项目请参考这个微软官方文档创建SPFx项目:https://docs.microsoft.com/en-us/sharepoint/dev/spfx/web-parts/get-started/add-jqu...原创 2019-06-11 21:46:10 · 776 阅读 · 0 评论 -
在生产环境中调试web part
发现一个非常实用的方法,可以在生产环境中调试SharePoint Framework web part.https://www.eliostruyf.com/sharepoint-framework-bookmarklet-tool-for-quick-and-easy-debugging/打开添加web part的生产环境页面,然后启动本地workbench工作台:gulp ser...原创 2019-06-14 09:13:02 · 382 阅读 · 0 评论 -
使用PowerApp定制化表单 - 将关联表的数据显示在当前表单中
使用PowerApp的定制化功能可以方便地将两个有关联的表的数据聚合在一个表单上,例如我有两个表,一个是学生表,一个是成绩表,学生表结构和示例如下:成绩表结构和示例如下:成绩表中的”学号(查阅项)“字段是一个查阅项,关联到学生表的学号字段,定义如下:当前的默认学生表的表单,仅显示学生的信息,我希望在学生表单中显示所选择的学生成绩,这个可以使用PowerApp定制学生表的表单...原创 2019-07-03 11:55:30 · 7930 阅读 · 1 评论 -
使用SharePoint Framework开发webpart的一些技巧汇总
1, 为你的webpart指定一个图标在创建一个webpart的时候,SPFx会使用一个默认图标,如下所示:这个图标是在manifest文件中 ,通过officeFabricIconFontName属性指定的,默认的值是“Page”,所以我们看到的是一个页面的图标。"preconfiguredEntries": [{ "groupId": "5c03119e-3074-4...原创 2019-03-01 16:02:00 · 2087 阅读 · 0 评论 -
Office 365 开发与实践 (一) 基本服务介绍
Office 365是微软提供的一种SaaS服务。提供了几乎所有Office的功能,并且允许开发者扩展现有功能。这篇博客简单介绍一下Office 365提供哪些基本的服务。原创 2016-10-06 21:42:19 · 4376 阅读 · 1 评论 -
我为什么选择SharePoint Framework (SPFx)
SharePoint从诞生到现在已经十多年了,我是从2009年WSS 3.0和SharePoint 2007时代开始SharePoint研发的,到今天也要十年了。十年来经历了SharePoint的不断变迁,所做过的产品也不停地随之升级换代,从SharePoint 2007, SharePoint 2010, SharePoint 2013, SharePoint 2016一直到今天...原创 2018-02-23 00:00:27 · 1801 阅读 · 0 评论