【问题标题】:DQL-Documentum queryDQL-Documentum 查询
【发布时间】:2011-04-21 23:26:37
【问题描述】:

如果我们提供相应文件的 object_id,任何人都可以使用 Documentum 查询语言提供解决方案,以访问从 documentum 签出的文件的文件夹详细信息。 谢谢…………

【问题讨论】:

  • 由于它不是通用的 c# 问题,因此希望它有助于标记它。 en.wikipedia.org/wiki/Documentum
  • 已更正标签,这是一个 dql 问题,而不是 C#

标签: dql documentum


【解决方案1】:

你可以试试这个dql:select * from dm_folder where r_object_id in (select i_folder_id from dm_document where r_object_id = '<objectId>')

【讨论】:

  • 因为我是堆栈溢出的初学者,我不习惯这种流程。再次感谢您的解决方案
  • 这会返回几个文件夹吗?
【解决方案2】:

您可以同时在 API 控制台中转储对象 ID。 命令转储,c, 您可以看到很多属性 - 比 DQL 可以为您提供的更多/ 然后搜索 r_object_id 再次转储并搜索 I_folder_path 你会得到你的誓言

【讨论】:

    【解决方案3】:

    您有文档的对象 ID,而不是文件夹的对象 ID。因此,首先您使用文档的对象 ID 获取文件夹 ID。这一步的查询是:

    select i_folder_id from dm_document where r_object_id='<objectid>'
    

    作为上述查询的结果,您将获得 i_folder_id。只要你转储这个id就足够了。您将获得有关该文件夹的信息。

    【讨论】:

      【解决方案4】:

      对于已签出的文档,您可以使用 -

      select * from dm_document where r_lock_owner not like ' '
      

      您可以从上述查询结果中选择您的 r_object_id。然后是文件夹详细信息 -

      select * from dm_folder where r_object_id in (select i_folder_id from dm_document where r_object_id = 'r_object_id')
      

      如果你想要所有签出文档的文件夹路径,你可以给 -

      select distinct d.r_object_id,d.object_name, f.r_folder_path from dm_folder f,dm_document d where any d.i_folder_id = f.r_object_id and d.r_object_id in <'give r_object_id for checked out documents'> enable (ROW_BASED) 
      

      【讨论】:

        【解决方案5】:

        这里相对较新,但希望这会有所帮助。我只在我的选择列表中包含了 r_folder_path,但您可以包含您需要的任何其他 dm_folder 属性。

        如果您没有文档的 r_object_id,您可以使用以下 DQL 返回所有签出文档的文件夹详细信息 -

        select      d.r_object_id, 
                    d.title, 
                    f.r_folder_path
        from        dm_document d, dm_folder f
        where       d.i_folder_id = f.r_object_id
        and         d.r_object_id in 
        (
            select      r_object_id
            from        dm_document
            where       r_lock_owner not like ' '
        )
        and f.r_folder_path not like ' '
        enable      (row_based)
        

        【讨论】:

          【解决方案6】:

          select * from dm_folder where r_object_id in (select i_folder_id from dm_document where r_object_id = [given_obj_id]);

          您可以选择您的自定义类型而不是 dm_document,这会将结果限制为您想要的类型。

          【讨论】:

            【解决方案7】:

            如果您想知道签出的文档存在于哪些文件夹中,您可以通过以下方式获取文件夹路径:

            select distinct r_folder_path 
              from dm_folder 
             where r_object_id in
               (select i_folder_id 
                  from dm_document
                 where r_lock_owner is not nullstring)
            

            或者您可以将最后一部分更改为:where r_lock_owner = '&lt;name of owner&gt;' 并将名称替换为 &lt;name of owner&gt;

            【讨论】:

              【解决方案8】:
              select * from dm_sysobject
              where r_object_id in (select i_folder_id from dm_sysobject where 
              r_object_id='your _object_id')
              

              如果你想要owner details,type of the folder(如果你的企业有的话),它的object type和除了文件路径之外的其他信息可以从上面的查询中获得。如果您想要路径,请使用:

              select * from dm_folder
              where r_object_id=(select i_folder_id from dm_sysobject where 
              r_object_id='your _object_id')
              

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2014-02-10
                • 1970-01-01
                • 1970-01-01
                • 2022-10-05
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多