我有两个Sharepoint列表 - ListA和ListB。 ListA具有列productName,productType。 ProductType由选项(TypeA,TypeB,TypeC)组成。每种产品必须只属于一种类型。在向ListA添加产品期间,他提供了产品名称和产品类型(来自选择)。 ListB具有RequestName,RequestDate,ProductName列。 ProductName只是查找ListA。
在ListB中添加新项目时,我首先要选择productType,然后仅显示此类型的产品。但是,我找不到任何方法来做到这一点。有没有办法做到这一点,甚至是以编程方式。
或者,实际上我在ListB中不需要productType信息。我正在制作使用ListB的工作流,并在向ListB添加请求时自动启动(他选择productName,并提供RequestName和RequestDate)。然后,在工作流程中,我必须检查productName是否为typeA或typeB或typeC,因为我需要此productType信息在Workflow中做出一些决定。有没有办法使用ListA和ListB从productName获取productType信息。
由于此productName是唯一的,因此在Sql中,它将是这样的
select productType from ListA where productName="selectedProduct"
但我不知道如果我可以在SP中的列表中进行一些查询并获得此结果,将其存储在变量中并稍后使用。
由于
注意:对于有兴趣使用Infopath表单在Sharepoint中进行级联查找的人,请查看此处http://blog.libinuko.com/2010/07/21/sharepoint-2010-how-to-create-cascading-lookup-field/
答案 0 :(得分:1)
如果您具有中高级编程技能,则可以通过创建自定义字段类型来实现此目的。本文概述了基础知识:http://msdn.microsoft.com/en-us/library/gg132914.aspx
基本上,自定义字段类型由以下内容组成:
其中一些组件是可选的。在您的情况下,您可能希望创建一个继承自SPFieldLookup的字段,并创建自定义字段控件和自定义字段编辑器控件。不需要自定义字段值类,因为您将使用SPFieldLookupValue类。
快速搜索Google(或您选择的搜索引擎)可以为您提供有关创建自定义字段类型的艺术的大量详细信息和教程。
答案 1 :(得分:0)
我建议使用其中一个级联查找字段作为第三方产品,例如this one(我承认,这个是我们公司制作的)。然后,您可以按“产品类型”列筛选产品名称列。无需自定义开发,您只需对列表进行一些小的更改(例如创建产品类型列表并查找,而不是使用选择列)