추적 테이블 사용자 지정 customize-tracking-tables

CAUTION
AEM 6.4가 확장 지원이 종료되었으며 이 설명서는 더 이상 업데이트되지 않습니다. 자세한 내용은 기술 지원 기간. 지원되는 버전 찾기 여기.

AEM Forms 작업 공간의 추적 탭은 로그인한 사용자가 관련된 프로세스 인스턴스의 세부 사항을 표시하는 데 사용됩니다. 추적 테이블을 보려면 왼쪽 창에서 프로세스 이름을 선택하여 가운데 창에서 인스턴스 목록을 확인합니다. 오른쪽 창에서 이 인스턴스에 의해 생성된 작업 테이블을 보려면 프로세스 인스턴스를 선택합니다. 기본적으로 테이블 열에는 다음과 같은 작업 속성이 표시됩니다(작업 모델의 해당 속성은 괄호 안에 지정됨).

  • ID ( taskId)
  • 이름 ( stepName)
  • 지침 ( instructions)
  • 선택된 동작 ( selectedRoute)
  • 생성 시간 ( createTime)
  • 완료 시간 ( completeTime)
  • 소유자 ( currentAssignment.queueOwner)

작업 테이블에 표시할 수 있는 작업 모델의 나머지 속성은 다음과 같습니다.

actionInstanceId
isOpenFullScreen
recommendationCount
classOfTask
isOwner
routeList
consultGroupId
isRouteSelectionRequired
savedFormCount
contentType
isShowAttachments
serializedImageTicket
createTime
isStartTask
serviceName
creationId
isVisible
serviceTitle
currentAssignment
nextRecommendations
showACLActions
기한
numForms
showDirectActions
설명
numFormsToBeSaved
상태
displayName
outOfOfficeUserId
summaryUrl
forwardGroupId
outOfOfficeUserName
supportsSave
isApprovalUI
우선 순위
taskACL
isCustomUI
processInstanceId
taskFormType
isDefaultImage
processInstanceStatus
taskUserInfo
isLocked
processVariables
isMustOpenToComplete
readerSubmitOptions

작업 테이블의 다음 사용자 지정의 경우 소스 코드에서 의미 변경 작업을 수행해야 합니다. 자세한 내용은 AEM Forms 작업 공간 사용자 지정 소개 workspace SDK를 사용하여 의미론적 변화를 만들고 변경된 소스에서 축소된 패키지를 빌드하는 방법에 대한 정보입니다.

테이블 열 및 그 순서 변경 changing-table-columns-and-their-order

  1. 테이블과 해당 순서에 표시된 작업 속성을 수정하려면 /ws/js/runtime/templates/processinstancehistory.html 파일을 구성합니다.

    code language-as3
    <table>
        <thead>
            <tr>
                <!-- put the column headings in order here, for example-->
                <th><%= $.t('history.fixedTaskTableHeader.taskName')%></th>
                <th><%= $.t('history.fixedTaskTableHeader.taskInstructions')%></th>
                <th><%= $.t('history.fixedTaskTableHeader.taskRoute')%></th>
                <th><%= $.t('history.fixedTaskTableHeader.taskCreateTime')%></th>
                <th><%= $.t('history.fixedTaskTableHeader.taskCompleteTime')%></th>
            </tr>
        </thead>
    </table>
    
    code language-as3
    <table>
        <tbody>
            <%_.each(obj, function(task){%>
            <tr>
                <!-- Put the task attributes in the order of headings, for example -->
                <td><%= task.stepName %></td>
                <td><%= task.instructions %></td>
                <td><%= !task.selectedRoute?'':(task.selectedRoute=='null'?'Default':task.selectedRoute) %></td>
                <td><%= task.createTime?task.formattedCreateTime:'' %></td>
                <td><%= task.completeTime? task.formattedCompleteTime:'' %></td>
            </tr>
            <%});%>
        </tbody>
    </table>
    

추적 테이블 정렬 sorting-a-tracking-table

열 머리글을 누를 때 작업 목록 테이블을 정렬하려면

  1. 에 대한 클릭 처리기 등록 .fixedTaskTableHeader th 파일에서 js/runtime/views/processinstancehistory.js.

    code language-as3
    events: {
        //other handlers
        "click .fixedTaskTableHeader th": "onTaskTableHeaderClick",
        //other handlers
    }
    

    처리기에서 onTaskTableHeaderClick 함수 js/runtime/util/history.js.

    code language-as3
    onTaskTableHeaderClick: function (event) {
            history.onTaskTableHeaderClick(event);
    }
    
  2. Adobe Analytics의 TaskTableHeaderClick 메서드 js/runtime/util/history.js.

    이 메서드는 클릭 이벤트에서 작업 속성을 찾아 해당 속성의 작업 목록을 정렬하고 정렬된 작업 목록을 사용하여 작업 테이블을 렌더링합니다.

    정렬은 비교 기능을 제공하여 작업 목록 컬렉션의 백본 정렬 함수를 사용하여 수행됩니다.

    code language-as3
        return {
            //other methods
            onTaskTableHeaderClick  : onTaskTableHeaderClick,
            //other methods
        };
    
    code language-as3
    onTaskTableHeaderClick = function (event) {
            var target = $(event.target),
             comparator,
                attribute;
            if(target.hasClass('taskName')){
             attribute = 'stepName';
            } else if(target.hasClass('taskInstructions')){
                attribute = 'instructions';
            } else if(target.hasClass('taskRoute')){
                attribute = 'selectedRoute';
            } else if(target.hasClass('taskCreateTime')){
                attribute = 'createTime';
            } else if(target.hasClass('taskCompleteTime')){
                attribute = 'completeTime';
            }
            taskList.comparator = function (task) {
             return task.get(attribute);
            };
            taskList.sort();
            render();
        };
    
recommendation-more-help
a6ebf046-2b8b-4543-bd46-42a0d77792da