Créez un processeur multitable qui signale le nombre de lignes de n’importe quelle table sur votre instance. Cette fonctionnalité est obsolète.
Avant de commencer
Rôle requis : admin
Pourquoi et quand exécuter cette tâche
Remarque : Cette fonctionnalité est obsolète. Bien que les processeurs personnalisés existants hérités continuent d’être pris en charge, la création de nouveaux processeurs personnalisés est déconseillée. Utilisez plutôt le
API REST basées sur un script
Le processeur multitable se protège contre les violations de performance et de sécurité en confirmant que l’utilisateur est autorisé à lire la table. Il ne signale pas certaines tables qui sont trop volumineuses pour être interrogées en toute sécurité.
Procédure
-
Accédez à la .
La liste des processeurs s’affiche.
-
SélectionnezNouveau.
-
Entrez les informations suivantes.
| Nom |
Taille de table |
| Type |
Choisir JavaScript |
| Description |
Renvoyer le nombre d’enregistrements dans une table |
| Paramètres |
TAILLE |
| Path |
<laisser vide> |
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);
}
}
-
Sélectionnez Enregistrer.
-
Testez le nouveau processeur en saisissant les URL suivantes :
https://<instancename>.service-now.com/incident.do?SIZE et https://<instancename>.service-now.com/sys_user.do?SIZE
Votre instance indique le nombre d’enregistrements dans la table. Par exemple, la table incident contient 82 enregistrements.