Create a multi-table processor

  • 릴리스 버전: Australia
  • 업데이트 날짜 2026년 03월 12일
  • 소요 시간: 2분
  • Create a multi-table processor that reports the number of rows in any table on your instance. This feature is deprecated.

    시작하기 전에

    Role required: admin

    이 태스크 정보

    주:
    This feature is deprecated. While legacy, existing custom processors continue to be supported, creating new custom processors has been deprecated. Instead, use the Scripted REST APIs

    The multi-table processor protects itself from performance and security violations by confirming that the user is authorized to read the table. It does not report on certain tables that are too large to query safely.

    프로시저

    1. Navigate to All > System Definition > Processors.
      The list of processors appears.
    2. SelectNew.
    3. Enter the following information.
      Name TableSize
      Type Choose Javascript
      Description Return number of records in a table
      Parameters SIZE
      Path <leave empty>

      Script:

      g_response.setContentType('text/html;charset=UTF-8');
      if(g_target === 'sys_email' || g_target === 'sys_log' ) 
      {
        g_processor.writeOutput(g_target + ' table is too large to quickly count');
        } else {   
          var count = new GlideAggregate(g_target);
          if( count.canRead() ) {
            count.addAggregate('COUNT');
            count.query();
            var records = 0;
            if (count.next()) {
              records = count.getAggregate('COUNT');
             }
             g_processor.writeOutput('table ' + g_target + ' has ' + records + ' records');
            } else {
             g_processor.writeOutput('You do not have access to table ' + g_target);
        }
      }            
    4. Select Save.
    5. Test the new processor by entering the following URLs:
      https://<instancename>.service-now.com/incident.do?SIZE and https://<instancename>.service-now.com/sys_user.do?SIZE
      Your instance reports the number of records in the table. For example, table incident has 82 records.