Get current User subOrdinates (Reportees) in d365 fo x++

1). i want get a Subordinates of current user or Reportees of current user who are directly reporting to a peron who are currently logged in.   

2). call this method by getting current users 

3).this.getListOfSubordinates(HcmWorker::userId2Worker(curUserId()))

4). public List getListOfSubordinates(HcmWorkerRecId _recid)

    {

        List  responsibleWorkers  =   new List(Types::Int64);

        int64 PositionId  =   HcmPositionDetail::findByPrimaryPositionForWorker(_recid).Position;

        HcmWorker                   hcmWorker;

        HcmPositionWorkerAssignment workerAssignment;

        HcmPosition                 hcmPosition;

        HcmPositionDetail           hcmPositionDetail;

        HcmPositionHierarchy        hcmPositionHierarchy;


        while 

        select recid 

        from hcmWorker


        join worker, position 

        from workerAssignment

        where workerAssignment.Worker == hcmWorker.RecId


        join recid 

        from hcmPosition

        where hcmPosition.RecId == workerAssignment.Position


        join hcmPositionHierarchy

        where hcmPositionHierarchy.Position    == hcmPosition.RecId

        && hcmPositionHierarchy.ParentPosition == PositionId


        join hcmPositionDetail

        where hcmPositionDetail.Position == hcmPosition.RecId

        {

            responsibleWorkers.addEnd(hcmWorker.RecId);

        }

        return  responsibleWorkers;

    }

Comments

Popular posts from this blog

Get Current Worker data in d365 fo x++

Table Level Event Handler in d365 fo x++