Microsoft云工程师 - SharePoint,Office 365,Azure,Dotnet,Agenular,JavaScript。
Microsoft云工程师 - SharePoint,Office 365,Azure,Dotnet,Agenular,JavaScript。

InfoPath.

视频–PowerShell PNP解析InfoPath XML附件

想要分享如何解析InfoPath附件XML的快速教程。   源表单库包含具有Base64编码附件的XML,我们可以解析为本地临时文件夹,然后上传到目标文档库。提取每个InfoPath附件XML节点的文件名和文件内容。 保存到子文件夹并匹配原始文件命名。 有助于Office 365迁移和方案,其中InfoPath Client不再可用,用户更喜欢直接查看附件。

视频,屏幕截图和下面的源代码。 

干杯

shades_smile.

github repo.

视频

截图

snaghtml46f8607.
图像
图像
图像
图像

InfoPath..–搜索替换XSN中的URL

需要将表格迁移到另一个URL?但不确定如何更新许多数据连接?尝试下面的脚本。

此PowerShell将将XSN内容提取到文件夹,执行字符串搜索替换,并将“包”返回为带有XSN扩展的CAB格式。将InfoPath表单迁移到另一个DNS名称的简单方法,如AAM备用访问映射重定向和SharePoint主要版本升级等方案(2007>2010年>2013)。

享受!

shades_smile.

 

注意 - 需要cabarc.exehttp://stackoverflow.com/questions/3361928/where-can-i-get-the-cabarc-utility

 

InfoPath._updateDataconnetions.ps1.

# Update InfoPath form URLs by extracting CAB and performing search replace
Param(
	[string]$xsnFile
)

Write-Host "Prepare folders..."
md c:\InfoPath\before
md c:\InfoPath\temp
md c:\InfoPath\after

Write-Host "Clean temp..."
Remove-ChildItem c:\InfoPath\temp\*.* -Recurse

Write-Host "Extract XSN... $xsnFile"
cabarc x "c:\InfoPath\before\$xsnFile" *.* c:\InfoPath\temp\

Write-Host "Replace URL..."
$txt = Get-Content c:\InfoPath\temp\Manifest.xsf
$txt |% {$_ -replace "//sharepoint/" "//sharepnt07/"} | Out-File -FilePath "c:\InfoPath\temp\Manifest.xsf" -Encoding UTF8 -Force

Write-Host "package XSN..."
cabarc n "c:\InfoPath\after\$xsnFile" c:\InfoPath\temp\*.*

Write-Host "DONE"

 

微风js.–编辑SQL表<100行的JS代码[视频]

使用SharePoint 2013和行业运动向云推向云,我一直在探索JavaScript作为开发丰富的应用程序的主要方式。

一个常见的挑战是数据访问。  

使用C#我有多年的[System.Data]的经验,可以在睡眠中对SQL关系数据库进行CRUD。 打开连接,查询,数据适配器,填充DataTable和Voila!   肌肉记忆。老习惯。 尝试和真实的方法。  但是,在新的客户端JS世界中,我没有任何线索开始。

进入微风.

 

人们形容微风是“在JavaScript中的客户端上的实体框架“这听起来很简单,但为开发人员而言含义深刻。  CRUD操作,LINQ样式查询,导航主/外键,输入验证,缓存,批量更新等。  考虑和新想法需要时间吸收这很多。  微风可能替换:

  • ASP.NET(ASPX)Web表单
  • ASCX用户控件
  • InfoPath..forms
  • SharePoint. Web部件
  • WCF 5.6数据服务
  • odata.
  • 经典webapi.

 

我首先用几个目标代码一个例子:

  • 创造简单的SQL架构(两个表 - 父母/孩子 - 一对多)
  • 执行CRUD操作在js反对sql  tables
  • 利用JS插件和nuget“安装包”加载第三方组件
    • 安装 - 软件包Breeze.Webapi2.EF6
    • 安装包发风.Angular
    • 安装包angularjs.core
  • 很少的代码尽可能多

整个事情花了不到30分钟,我将视频编辑到15分。   我对这个过程的直接和容易留下了深刻的印象。  Breeze#在ASP.NET MVC中,后端WebAPI控制器几乎与Breeze示例代码相同。  每个实体(SQL表)添加一个C#方法,然后让Breeze剩下。 JS前端需要更多的时间来理解,但也很容易申请。   Connect Entity Manager到Breeze URL,您已为Crud查询做好准备。    Amazing!    鉴于微风有多简单,我会很难使用ODATA或手动创建WebAPI控制器C#代码来查询数据库。  如果可以使用微风,然后使用它!   你会省力很大。

如果您发现此帮助,请留下评论。   Thank you! 

shades_smile.

 

看视频

[Breezejs和Webapi–编辑具有少于100行代码的JS中的SQL表]

 

下载代码

下载

http://yinzigold.com/etc/Appraisal-Breeze-VS2013.zip

 

截图

图像
图像

 

图像

 

参考

 

InfoPath.提示–使用列表项权限检测安全组

是的,每个人都说InfoPath已经死了......但我们仍然支持它了一段时间,所以我想分享我最喜欢的提示之一。 表单通常需要基于角色的安全性在字段级别。 下表与示例安全矩阵。

InfoPath.如何检测到这一点?  不要有些人查询SOAP ASMX吗?  甚至是具有自定义ASMX的自定义WSP?  列表项权限有更简单的方式。  

图像
  1. 创建一个新的 自定义列表名为“securityLevel”只有默认的“标题”列。  
  2. 去创造所需的SharePoint.组根据站点权限。  
  3. 返回“SecurityLevel”为每个具有相同名称的每个SharePoint组添加一个新项目。  悬停该项目,拉下菜单,然后设置项目级别权限对于该组仅在该项目上有“读取”。  
  4. 使用InfoPath Designer编辑XSN表单模板并创建一个新数据连接使用自动刷新列表“securityLevel”。  
  5. 在下面表单加载创建规则.........如果计数(SecurityLevel [“分析师”))>0然后设置字段“securityLevel =分析员”。   
  6. 在那里你准备好了应用格式规则任何地方需要使用“securityLevel”来确定隐藏/显示或读/写。

 

瞧!

现在,当用户打开InfoPath表单时,数据连接“SecurityLevel”将仅显示他们访问的项目(与SharePoint组成员身份相同!)。   在MOSS 2007上工作,SharePoint 2010,SharePoint 2013和Office 365。

希望这可以帮助。 如果它确实留下了评论。 

shades_smile.

 

下载  InfoPath Form – SecurityLevel.xsn >>

 

 

图像
图像
图像
图像
图像

 

图像
图像
图像
返回顶部▲返回顶部▲