0
我爲每個分配給用戶的角色創建任務。每個角色都有幾個資源。我需要爲每個資源的Workflow自定義任務表單動態地添加組合框。組合框將包含所有帳戶。這可能與自定義infopath任務表單?以編程方式將控件添加到SharePoint的自定義infopath任務窗體VS代碼工作流程
是否有可能將代碼添加到infopath任務表單中(是否需要管理員批准)?
我爲每個分配給用戶的角色創建任務。每個角色都有幾個資源。我需要爲每個資源的Workflow自定義任務表單動態地添加組合框。組合框將包含所有帳戶。這可能與自定義infopath任務表單?以編程方式將控件添加到SharePoint的自定義infopath任務窗體VS代碼工作流程
是否有可能將代碼添加到infopath任務表單中(是否需要管理員批准)?
可以將代碼添加到自定義InfoPath任務表單。人們應該確保dll與表單一起部署。
也可以在重複表中添加組合框(所有組合框都具有相同的數據源)。用於重複表格的行在PageLoad上創建,其數據通過工作流提供,方法是將其作爲XML嵌入到「表單」字段中。
public void InternalStartup()
{
EventManager.FormEvents.Loading += new LoadingEventHandler(FormEvents_Loading);
}
public void FormEvents_Loading(object sender, LoadingEventArgs e)
{
string myNamespace = NamespaceManager.LookupNamespace("my");
XPathNavigator repTable = MainDataSource.CreateNavigator().SelectSingleNode("/my:RoleAssigmentExecution/my:Resources", NamespaceManager);
if (repTable == null)
{
XPathNavigator node = MainDataSource.CreateNavigator().SelectSingleNode("/my:RoleAssigmentExecution", NamespaceManager);
using (XmlWriter writer = node.AppendChild())
{
writer.WriteStartElement("Resources", myNamespace);
writer.WriteEndElement();
writer.Close();
}
}
repTable = MainDataSource.CreateNavigator().SelectSingleNode("/my:RoleAssigmentExecution/my:Resources", NamespaceManager);
if (repTable != null)
{
using (XmlWriter writer = repTable.AppendChild())
{
XPathNavigator inst = MainDataSource.CreateNavigator().SelectSingleNode("/my:RoleAssigmentExecution/my:Instructions", NamespaceManager);
writer.WriteStartElement("ResorceAccounts", myNamespace);
writer.WriteElementString("resource", myNamespace, inst.Value);
writer.WriteElementString("accountCombo", myNamespace, "");
writer.WriteEndElement();
writer.Close();
}
}
else
{
string path = "/my:RoleAssigmentExecution/my:Remarks";
XPathNavigator node = MainDataSource.CreateNavigator().SelectSingleNode(path, NamespaceManager);
node.SetValue("can not access Repeating Table");
}
}