Как получить информацию из iManage / Desksite - PullRequest
4 голосов
/ 01 февраля 2011

У меня есть клиент с переплетенной системой Desksite Version 8.0.Мне нужно выполнить запрос или экспортировать так, чтобы я мог получить идентификатор документа, где comments = X, для произвольного значения X. Альтернативно любой экспорт этих двух полей будет работать.Мне просто нужен список всех удостоверений личности, комментарий.Я должен итеративно обновить другую систему на основе идентификатора, пары комментариев.На этом этапе будет полезен даже простой экспорт документов.

1 Ответ

5 голосов
/ 16 октября 2011

Этот тип запроса может быть выполнен с помощью запросов SQL непосредственно к бэкэнду Worksite или с помощью API Worksite

По моему мнению, использование API предпочтительнее, поскольку структура БД может изменяться в зависимости от версии Worksite.

Предполагая, что у вас открыто соединение с Worksite и вошел сеанс, используя эту функцию, вы можете выполнять поиск документов (включая требуемый тип поиска):

    private IManDMS mainDMS;
    private IManDatabase currentDatabase;


    public IManDocument[] SearchDocuments(Dictionary<imProfileAttributeID, string> dictProfleSearchParameters)
    {
        List<IManDocument> foundDocuments = new List<IManDocument>();
        IManProfileSearchParameters searchParams = mainDMS.CreateProfileSearchParameters();

        foreach (KeyValuePair<imProfileAttributeID, string> kvp in dictProfleSearchParameters)
            ((IManProfileSearchParameters)searchParams).Add((IManage.imProfileAttributeID)kvp.Key, kvp.Value);

        IManContents foundDocs = currentDatabase.SearchDocuments(searchParams, true);

        foreach (IManDocument document in foundDocs)
            foundDocuments.Add(document);

        return foundDocuments.ToArray();
    }
...