1

Je tente d'utiliser la fonction ModelService.filtered pour vérifier les enregistrements existants dans le Maximo. Dans ce cas d'utilisation, je demande des données à l'aide d'un filtre, et s'il renvoie des résultats, j'effectue des actions supplémentaires.ModelService.Filtered ne renvoie pas de données sur le périphérique mobile

Le problème que j'ai est que le code fonctionne comme prévu dans le navigateur, mais ne fonctionne pas comme prévu sur le périphérique. Pour la même condition, le navigateur renvoie des enregistrements, mais pas le périphérique mobile.

Cette fonction avait précédemment fonctionné pour ce cas d'utilisation dans Maximo Anywhere 7.5.1.2, mais elle semble avoir été modifiée pour la version 7.6.1 et je ne parviens pas à obtenir les mêmes résultats avec le nouveau code.

Voici mon code:

var selectedResource = eventContext.getResource().getCurrentRecord(); 
    var currentUser = UserManager.getCurrentUser(); 
    var myTask = selectedResource.get('wonum'); 
    var siteid = selectedResource.get('siteid'); 
    var isremoved = false; 
    var filter ={'thtaskwo':myTask,'thsiteid':siteid,'thhelper':currentUser,'isremoved':isremoved}; 
    ModelService.filtered('sftaskhelperresource', null, filter, null, true, null, null, null, false).then(function(result){ 
        if(result.count()>0){ 
       //some additional code here 
       } 
      } 
     ); 
+0

Avez-vous vérifié les paramètres pour la fonction? L'un d'entre eux concerne forceServerPreferred et un forceLocalPreferred. http://maximodev.blogspot.nl/p/anywhere-reference-modelservice.html – Jeroen

Répondre

0

J'ai fait face au même problème et voici ma solution;

Vous pouvez effectivement déboguer à partir de l'application elle-même.

Passez à Settings > Advance Settings > Logging. Cliquez sur le bouton de menu More en haut à droite et cliquez sur Enable Logging (Erreur, informations et débogage).

Exécutez l'étape de filtrage de l'application jusqu'à la partie où elle ne parvient pas à afficher le résultat du filtre. Revenez à la journalisation comme ci-dessus et vous pouvez voir l'info/erreur;

Logging Data

Comme vous pouvez le voir, il a dit attribut "attributename" n'est pas indexé dans "ressource" JSONStore. Vous devez mettre index = "true" dans la définition de ressource pour l'attribut que vous voulez filtrer et cela fonctionnera.

Merci