Recherche…


Introduction

Une compréhension approfondie de la façon dont la fonction de recherche de transactions est une connaissance cruciale pour chaque développeur NetSuite, mais le comportement par défaut de ces recherches et le contrôle de ce comportement peuvent être assez déroutants au départ.

Remarques

Les références:

  • Page d'aide NetSuite: "Utilisation de la ligne principale dans les critères de recherche de transaction"

Filtrage uniquement sur l'ID interne

Explorons un exemple de recherche de transaction où nous définissons un filtre pour l'ID interne d'une transaction unique:

Filtrer par ID interne

Nous avons spécifié un filtre pour afficher uniquement les résultats de la transaction avec l'ID interne 875; voici cette transaction:

Exemple de commande client

Nous pouvons voir qu'il s'agit d'une commande client avec un seul élément de ligne.

Étant donné que les ID internes sont uniques pour toutes les transactions, nous ne pouvons attendre qu'un seul résultat de recherche pour cette recherche. Voici le résultat de la recherche:

Résultats inattendus

Au lieu du seul résultat attendu, nous obtenons quatre résultats. De plus, chaque résultat a exactement le même identifiant interne. Comment est-ce possible?

Pour comprendre ce qui se passe ici, nous devons rappeler que les données stockées dans les enregistrements NetSuite sont divisées en deux catégories:

  1. Données de corps: données stockées dans des champs autonomes de l'enregistrement (par exemple, date, représentant commercial, numéro de document, code de coupon)
  2. Données de sous-liste: données stockées dans des listes dans chaque enregistrement, généralement affichées sur des sous-onglets de l'interface utilisateur (par exemple, éléments d'une commande client)

Les transactions contiennent plusieurs sous-listes de données, y compris ses:

  • éléments de ligne
  • Informations sur la livraison
  • informations fiscales
  • COGS (coût des marchandises vendues) détails

Dans ces résultats de recherche, NetSuite nous montre en fait un résultat pour le corps de la transaction, puis d’autres résultats pour les données des différentes sous-listes de cette même transaction.

Notez la colonne dans nos résultats de recherche simplement nommée avec un astérisque (*). Notez également que l'un des résultats a un astérisque rempli dans cette colonne alors que le reste est vide. Cette colonne indique quel résultat de recherche représente le corps de la transaction, également appelée ligne principale de la transaction.

Il y a des moments où vous souhaitez que les recherches de transactions affichent uniquement les données de la ligne principale et les heures où vous ne souhaitez que les détails au niveau de la ligne. Les autres exemples montrent comment contrôler ce qui apparaît dans nos résultats.

Filtrage avec la ligne principale

Lorsque nous voulons un seul résultat par transaction, cela signifie que nous ne voulons que le corps, ou la ligne principale, de chaque transaction. Pour ce faire, il existe un filtre nommé "Ligne principale".

En définissant le filtre Ligne principale sur Oui dans nos critères de recherche, nous disons essentiellement "Afficher uniquement les données au niveau du corps pour les transactions dans mes résultats":

entrer la description de l'image ici

La modification de nos critères de recherche précédents nous donne désormais le seul résultat attendu:

entrer la description de l'image ici

Si nous inversons notre filtre Main Line sur No , nous disons "Afficher uniquement les données des sous-listes dans mes résultats":

entrer la description de l'image ici

Pour récapituler le comportement de Main Line :

  • Avec la ligne principale définie sur Oui , nous avons reçu un résultat uniquement pour le corps de la transaction.
  • Avec la ligne principale définie sur Non , nous avons reçu trois résultats uniquement pour les données de sous-liste de la transaction.
  • En l'absence de filtre Main Line , nous avons reçu quatre résultats, essentiellement la combinaison de toutes les données de corps et de sous-liste pour la transaction.

Notez que le filtre Ligne principale n'est pas pris en charge pour les recherches d'entrées de journal.

Filtrage de sous-listes spécifiques

Rappelons que chaque transaction contient plusieurs sous-listes de données. Maintenant que nous ne pouvons afficher que les données de sous-liste à l'aide de Main Line , nous pouvons affiner davantage nos résultats de recherche pour obtenir des données de sous-liste spécifiques.

La plupart des sous-listes incluses dans les résultats de la transaction ont un filtre de recherche correspondant pour indiquer si elles sont incluses dans vos résultats:

  • Utilisez le filtre Ligne d'expédition pour contrôler les données de la sous-liste Expédition
  • Utilisez le filtre Ligne de taxe pour contrôler les données de la sous-liste de taxe
  • Utilisez le filtre Ligne COGS pour contrôler les données de la sous-liste COGS

Chacun de ces filtres se comporte comme Main Line ou tout autre filtre de case à cocher: Oui pour inclure ces données, Non pour les exclure de vos résultats.

Notez qu'il n'y a pas de filtre pour Item Line pour contrôler les données de la sous-liste Item. Essentiellement, pour pouvoir dire "Afficher uniquement les données de la sous-liste des éléments", nous devons spécifier tous ces filtres comme non dans nos critères:

entrer la description de l'image ici

Avec ces critères, votre recherche renverra un résultat par ligne d'article sur chaque transaction correspondante.

À mon avis, ce filtre manquant est une lacune majeure dans la fonctionnalité de recherche qui devrait être corrigée; il serait beaucoup plus facile et plus cohérent de simplement filtrer une ligne de poste . D'ici là, vous devez spécifier que vous souhaitez uniquement les données d'article dans vos résultats de transaction.



Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow