Clarity

  • 1.  Team Participants Table

    Posted Mar 07, 2012 11:06 AM
    I am trying to run a query to get the team participants of a project in Clarity 12.0. I can't find the tables. Anyone know the correct tables for this?


  • 2.  RE: Team Participants Table
    Best Answer

    Posted Mar 07, 2012 12:00 PM
    Take a look at the view clb_project_participants_v. That gives you User ID, Resource ID and Project ID. Its definition (in MS SQL) is as below
    SELECT
      MEMBER.ID USER_ID,
      MEMBER.USER_NAME,
      RES.LAST_NAME,
      RES.FIRST_NAME,
      RES.EMAIL EMAIL_ADDRESS,
      USER_GROUP.GROUP_ID MEMBER_GROUP_ID,
      CONTACT.PHONE_WORK,
      COMPANY.COMPANY_NAME,
      PROJECT.PROJECT_ID,
      niku.CLB_IS_PROJECT_MANAGER_FCT( PROJECT.PROJECT_MANAGERS_GROUP_ID,
                                         MEMBER.ID ) IS_PROJECT_MANAGER,
      RES.UNIQUE_NAME,
      RES.ID RESOURCE_ID
    FROM
      CMN_SEC_USERS   MEMBER left outer join
      
    SRM_COMPANIES COMPANY on MEMBER.COMPANY_ID = COMPANY.ID,
      CMN_SEC_USER_GROUPS  USER_GROUP left outer join
      
    SRM_CONTACTS  CONTACT on USER_GROUP.USER_ID = CONTACT.PRINCIPAL_ID
    
    
    
    
    
    
    
    
    
    
    
    
    
    AND  'USERS' = CONTACT.PRINCIPAL_TYPE,
      CLB_PROJECT_GROUP_KEYS    PROJECT,
      SRM_RESOURCES RES
    WHERE PROJECT.PROJECT_MEMBERS_GROUP_ID =USER_GROUP.GROUP_ID
    AND  USER_GROUP.USER_ID = MEMBER.ID
    AND RES.USER_ID = MEMBER.ID
    HTH

    Owen


  • 3.  RE: Team Participants Table

    Posted Mar 07, 2012 12:09 PM
    ^ Thats a much better (simpler - i.e. "just look at the view") answer than I was about to give, which was;
        SELECT i.code 
             , i.name
             , r.full_name
             , r.unique_name 
          FROM inv_investments i
             , srm_resources r
             --
             , cmn_sec_user_groups ug
             , clb_project_group_keys gk
             --
         WHERE i.code = '[color=#ff0000]-- YOUR PROJECT CODE GOES IN HERE --[/color]'
           AND gk.project_id = i.id
           AND gk.PROJECT_MEMBERS_GROUP_ID = ug.group_id
           AND ug.user_id = r.user_id;
    NOTE that both these bits of SQL only get the named (resource) participants - you need to start using the PROJECT_GROUPS_GROUP_ID on that "keys" table to pick up any system groups that have been added as participants (I don't have a quick bit of SQL to do that though)


  • 4.  Re: RE: Team Participants Table

    Posted Nov 17, 2016 10:55 PM

    Here's the quick bit of SQL that does this for System Group Participants:

     

    SELECT
      SEC_GROUP.ID GROUP_ID,
      SEC_GROUP.LANGUAGE_CODE,
      SEC_GROUP.GROUP_NAME,
      SEC_GROUP.DESCRIPTION,
      PROJECT.PROJECT_ID,
      GRP_HIER.PARENT_GROUP_ID
    FROM (
      SELECT G.ID
        NLS.LANGUAGE_CODE,
        NLS.NAME GROUP_NAME,
        NLS.DESCRIPTION,
      FROM CMN_CAPTIONS_NLS NLS,
      CMN_SEC_GROUPS G,
      CMN_LOOKUPS L,
      WHERE NLS.TABLE_NAME = 'CMN_SEC_GROUPS'
        AND NLS.PK_ID = G.CAPTIONS_PK_ID
        AND G.GROUP_TYPE_ID = L.ID
        AND L.LOOKUP_TYPE = 'SEC_GROUP_TYPE'          
    ) SEC_GROUP,
    CMN_SEC_GROUP_HIERARCHIES GRP_HIER,
    CLB_PROJECT_GROUP_KEYS PROJECT
    WHERE GRP_HIER.PARENT_GROUP_ID = PROJECT.PROJECT_MEMBERS_GROUP_ID
      AND GRP_HIER.GROUP_ID = SEC_GROUP.ID     
      AND SEC_GROUP.LANGUAGE_CODE = 'en'


  • 5.  RE: Team Participants Table

    Posted Mar 07, 2012 12:12 PM
    Thank you. It does the trick.