Получение URL-ссылки на карточку
Приведенный далее скрипт позволяет получить ссылку на заданную карточку в виде URL-строки.
Сценарий работает со следующими переменными процесса:
-
Card
— карточка, для которой формируется ссылка. Тип "Карточка DV". -
URL
— переменная будет использована для сохранения ссылки. Тип "Строка".
using System;
using System.Xml; (1)
using DocsVision.Workflow.Objects;
using DocsVision.Workflow.Runtime;
using DocsVision.Workflow.Gates;
using DocsVision.Platform.HelperAPI; (2)
namespace DVScriptHost
{
class DVScript
{
public void Execute(DocsVision.Workflow.Runtime.ProcessInfo process, PassState passInfo)
{
try
{
ProcessVariable oURL = process.GetVariableByName("URL");
ProcessVariable oCard = process.GetVariableByName("Card"); (3)
DVCard dvCard = oCard.Value as DVCard; (4)
string strUrl = oURL.Value.ToString(); (5)
DVGate dvGate = process.Gates[DVGate.GateID] as DVGate;
if (dvGate.BaseURL != null) (6)
{
strUrl += Environment.NewLine + "<" + dvGate.BaseURL + ((dvGate.BaseURL.IndexOf('?') > 0) ? "&" : "?") + "CardID=" + dvCard.ID + ">";
}
oURL.Value = strUrl; (7)
} catch (Exception ex)
{
process.LogMessage("Ошибка выполнения скрипта:" + ex.Message); (8)
}
}
}
}
1 | Подключение системных библиотек. |
2 | Подключение библиотек СУБП. |
3 | Получение переменных процесса. |
4 | Приведение переменной к типу "Карточка DV". |
5 | Приведение переменной к строковому типу. |
6 | Формирование строки URL. |
7 | Сохранение значения URL в переменную. |
8 | Добавление сообщения об ошибке в журнал процесса. |