需要一种从cmd提示符中删除Livelink中的文件的方法

时间:2017-06-19 09:00:55

标签: opentext livelink

是否有办法从命令提示符中删除Livelink中的文件(确切地说是OpenText Content Server 10)?

我应该删除超过7000个文档,因此手动执行它会很慢。我可以从SQL Server生成对象ID,理想情况下会在命令行上以编程方式逐个运行删除调用。

2 个答案:

答案 0 :(得分:0)

你有很多选择,但不是来自CMD。

  1. 如果您有权访问数据库,则可以将项目parentId更改为common文件夹,然后删除该文件夹。直接玩DB时要小心。
  2. 如果您熟悉编码,则可以构建LAPI应用程序。
  3. 如果您有Web服务,可以使用自定义应用程序或程序(如JMeter,SoapUI)删除所有文档。
  4. 使用LL Explorer删除它们
  5. ...

    这取决于你必须执行这项工作的次数。

答案 1 :(得分:0)

当然,您可以编写一个控制台应用程序来删除LiveLink中的文件。您可以使用LiveLink API(LAPI):

    public static bool DeleteLLObject( int iNodeID, int iVolumeID)
    {
        try
        {               
            LLSession mySession = new LLSession(strHost, iPort, string.Empty, strUser, strPwd);
            LAPI_DOCUMENTS lapiDoc = new LAPI_DOCUMENTS(mySession);

            int iResult = lapiDoc.DeleteObject(iVolumeID, iNodeID);
            if (iResult != 0)
            {
                string strErrMsg = mySession.getErrMsg();
                throw new Exception(strErrMsg);
            }
        }
       catch (Exception ex)
       {
            var strMsg = string.Format("The object cannot be deleted due to the reason:\n\n{0}", ex.Message);
            Console.Out.WriteLine(strMsg);
            return false;
       }
       return true;
   }      

在onece上删除多个文件将很难使用此代码,因为您需要为每个文件识别并输入Node Id和Volume ID。

最好使用LiveLink Explorer(如已建议的)或第三方工具,如DMS-Shuttle for LiveLink。试用期为15天:http://dms-shuttle.com/downloads/。我在为供应商工作。