Gerenciando tarefas em uma hierarquia organizacional usando a Visualização do Gerente

Na área de trabalho do AEM Forms, os gerentes agora podem acessar as tarefas atribuídas a qualquer pessoa em sua hierarquia - relatórios diretos ou indiretos - e executar várias ações. As tarefas estão disponíveis na guia Fazer na área de trabalho do AEM Forms. As ações suportadas nas tarefas dos relatórios diretos são:

​EncaminharEncaminhe uma tarefa do relatório direto para qualquer usuário.

​ReivindicaçãoReivindica uma tarefa de um relatório direto.

Reivindicar e abrirReivindicação uma tarefa de um relatório direto e abri-lo automaticamente na lista de Tarefas do gerente.

​RejeitarRejeitar uma tarefa encaminhada a um relatório direto por outro usuário. Essa opção está disponível para as tarefas encaminhadas por outros usuários a um relatório direto.

A AEM Forms restringe o acesso de um usuário somente às tarefas para as quais o usuário tem controle de acesso (ACL). Essa verificação garante que o usuário possa buscar somente as tarefas nas quais o usuário tenha permissões de acesso. Usando serviços e implementações da Web de terceiros para definir a hierarquia, uma organização pode personalizar a definição de gerentes e relatórios diretos de acordo com suas necessidades.

  1. Crie um DSC. Para obter mais informações, consulte o tópico "Desenvolvimento de componentes para formulários AEM" no guia Programação com AEM Forms.

  2. No DSC, defina um novo SPI para o gerenciamento de hierarquia para definir relatórios diretos e hierarquia dentro dos usuários do AEM Forms. A seguir, há um exemplo de trecho de código Java™.

    public class MyHierarchyMgmtService 
    { 
         /*
        Input : Principal Oid for a livecycle user
        Output : Returns true when the user is either the service invoker OR his direct/indirect report.
        */
        boolean isInHierarchy(String principalOid) {
    
        }
    
        /* 
        Input : Principal Oid for a livecycle user
        Output : List of principal Oids for direct reports of the livecycle user
        A user may get direct reports only for himself OR his direct/indirect reports.
        So the API is functionally equivalent to - 
        isInHierarchy(principalOid) ? <return direct reports> : <return empty list>
        */
        List<String> getDirectReports(String principalOid) {
    
        }
    
        /* 
        Returns whether a livecycle user has direct reports or not.
        It's functionally equivalent to -
        getDirectReports(principalOid).size()>0
        */
        boolean isManager(String principalOid) {
    
        }  
    }
    
  3. Crie um arquivo component.xml. Certifique-se de que spec-id seja o mesmo que mostrado no trecho de código abaixo. Veja a seguir um trecho de código de amostra que pode ser redefinido.

    <component xmlns="https://adobe.com/idp/dsc/component/document"> 
        <component-id>com.adobe.sample.SampleDSC</component-id> 
        <version>1.1</version> 
        <supports-export>false</supports-export> 
          <descriptor-class>com.adobe.idp.dsc.component.impl.DefaultPOJODescriptorImpl</descriptor-class> 
          <services> 
            <service name="MyHierarchyMgmtService" title="My hierarchy management service" orchestrateable="false"> 
            <auto-deploy service-id="MyHierarchyMgmtService" category-id="Sample DSC" major-version="1" minor-version="0" /> 
            <description>Service for resolving hierarchy management.</description> 
             <specifications> 
             <specification spec-id="com.adobe.idp.taskmanager.dsc.enterprise.HierarchyManagementProvider"/> 
             </specifications> 
            <specification-version>1.0</specification-version> 
            <implementation-class>com.adobe.sample.hierarchymanagement.MyHierarchyMgmtService</implementation-class> 
            <request-processing-strategy>single_instance</request-processing-strategy> 
            <supported-connectors>default</supported-connectors> 
            <operation-config> 
                <operation-name>*</operation-name> 
                <transaction-type>Container</transaction-type> 
                <transaction-propagation>supports</transaction-propagation> 
                <!--transaction-timeout>3000</transaction-timeout--> 
            </operation-config> 
            <operations> 
                <operation anonymous-access="true" name="isInHierarchy" method="isInHierarchy"> 
                    <input-parameter name="principalOid" type="java.lang.String" /> 
                    <output-parameter name="result" type="java.lang.Boolean"/> 
                </operation> 
                <operation anonymous-access="true" name="getDirectReports" method="getDirectReports"> 
                    <input-parameter name="principalOid" type="java.lang.String" /> 
                    <output-parameter name="result" type="java.util.List"/> 
                </operation> 
                <operation anonymous-access="true" name="isManager" method="isManager"> 
                    <input-parameter name="principalOid" type="java.lang.String" /> 
                    <output-parameter name="result" type="java.lang.Boolean"/> 
                </operation> 
                </operations> 
                </service> 
          </services>
    </component>
    
  4. Implante o DSC por meio do Workbench. Reinicie o serviço ProcessManagementTeamTasksService.

  5. Talvez seja necessário atualizar seu navegador ou fazer logout/login com o usuário novamente.

A tela a seguir ilustra o acesso às tarefas dos relatórios diretos e às ações disponíveis.

cu_manager_visualização

Acessar tarefas de relatórios diretos e agir nas tarefas

Nesta página

Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now