Guide de l'administrateur M3 Business Engine pour le module POBE (Purchase Order Batch Entry, Saisie des ordres d'achat par lots)

Ce document décrit les paramètres requis pour exécuter le module POBE dans M3.

Avant de commencer

Les conditions préalables suivantes doivent être remplies avant de pouvoir exécuter le module POBE :

  • Création de numéros de série

    Les numéros de série suivants doivent exister dans (CRS165) (société vide) afin de pouvoir exécuter POBE :

    • Ordres d'achat : 'Type de numéros de série' (NBTY) = '20' avec 'Numéros de série' (NBID) N'importe quelle valeur peut être attribuée à NBID. Plusieurs numéros de série avec NBTY = '20' peuvent exister.
    • Numéro de message : 'Type de numéros de série' (NBTY) = 'PE' et 'Numéros de série' (NBID) = '1'
    • Journal des messages détaillés : 'Type de numéros de série' (NBTY) = '44' et 'Numéros de série' (NBID) = 'D'.
  • Activation des messages d'application

    Le message d'application '175= Erreurs détectées lors de l'exécution de POBE' doit être activé. Cette opération doit être effectuée dans (CRS424/E). Si le message d'application 175 ne figure pas dans (CRS424), appuyez sur F14 dans (CRS424/B). Le message d'application 175 est alors créé automatiquement.

    Remarque

    Vérifiez qu'un enregistrement existe pour l'utilisateur dans (CRS111), afin qu'il puisse recevoir les e-mails si des erreurs sont détectées dans POBE.

  • Origine de lot d'ordre d'achat

    Au moins une 'Origine de lot OA' (BAOR) doit exister dans (PPS090) pour exécuter le module POBE avec l'un des paramètres suivants.

    • 10 Numéros de série

      Saisissez les 'numéros de série' (NBID) utilisés pour les ordres d'achat créés via cette 'Origine de lot d'ordre d'achat'. Le 'Type numéros de série' (NBTY) 20 avec les 'Numéros de série' (NBID) choisis doivent exister dans (CRS165) (société vide).

    • 20 Niveau d'automatisation

      Les options valides sont les suivantes :

      1 = 'Saisie d'ordre', indiquant que les ordres d'achat créés via le module POBE dans l'interface (PPS370) sont arrêtés au statut 20 et attendent un traitement manuel des enregistrements.

      2 = 'Traitement', indiquant que les ordres d'achat créés via le module POBE dans l'interface (PPS370) sont automatiquement traités et définis sur le statut 90, si aucune erreur n'est détectée.

    • 30 Méthode de traitement

      Ce paramètre est uniquement valide si le niveau d'automatisation est défini sur 2 (Traitement).

      Sélectionnez l'option suivante :

      1 = 'Tâche par lot', une tâche est envoyée pour le traitement des enregistrements saisis via un programme MI (PPS370MI) ou manuellement dans l'interface (PPS370).

      (Il est possible d'ajouter une deuxième 'Tâche automatique' ultérieurement.)

    • 40 Méthode de suppression

      Les options valides sont les suivantes :

      1 = 'Elever le statut', indiquant que le statut de l'enregistrement passe à 90 lorsqu'il est terminé.

      2 = 'Supprimer l'enregistrement', indiquant que l'enregistrement est supprimé une fois terminé.

    • 50 OA existant
      Les options valides sont les suivantes :
      • 0 (Saisie par lot d'OA non autorisée pour OA existant). Cela signifie que le module POBE ne peut pas être utilisé pour ajouter des données à un OA existant ou à supprimer une ligne d’OA existante.
      • 1 (Autoriser la saisie d’OA par lot pour les OA existants). Il est possible d’utiliser le module POBE pour ajouter des données à un OA existant ou supprimer une ligne d’OA existante.

Description

(PPS370MI) est le programme de saisie principal pour le module 'POBE' (Purchase Order Batch Entry, Saisie d'ordres d'achat par lots). Il est également possible d'ajouter des enregistrements manuellement dans (PPS370) et de (PPS371) à (PPS376).

Remarque

Aucune validation n'est réalisée de manière interactive dans (PPS370-376). Vous devez utiliser l'option 25 (Valider) pour valider les données saisies via le module POBE.

Les valeurs par défaut sont renseignées dans les champs vides. Si la valeur par défaut d'un champ est '?', le programme définit une valeur nulle dans ce champ, quelles que soient les valeurs par défaut.

Restrictions

Vous pouvez uniquement utiliser la catégorie d’ordre 20 (OA standard) dans la première version du module POBE.

L’en-tête de l’ordre d’achat existant n’est pas modifiable avec le module POBE.

Il est possible d’utiliser le module POBE uniquement pour supprimer une ligne d’OA existante, et des données de ligne d’OA non spécifiques, telles que la comptabilité, les adresses, les frais ou le texte.

Options disponibles pour les différents statuts

Les statuts suivants sont utilisés dans le module POBE :

  • 10 = Saisie d'ordre en cours
  • 20 = Saisie d'ordre terminée
  • 23 = Erreur pendant pré-validation (erreur lors du processus de validation)
  • 25= Pré-validé
  • 90= Transféré, aucune erreur

Si le statut est inférieur à 90 = 'Transféré', il est possible de modifier les données manuellement dans les tables d'interface via les programmes d'interface (PPS370-376). Les données mises à jour sont ensuite utilisées dans le reste du processus. Si vous modifiez un enregistrement portant le statut 25, la valeur de son statut est abaissée à 20. Les transactions MI permettent uniquement de modifier et de mettre à jour les OA portant le statut 10 = 'Saisie d'ordre en cours' dans l'interface.

Le tableau suivant répertorie les options disponibles pour les divers statuts du module POBE :

Statut :

Options :

10 20 23 25 90
Créer dans (PPS370/371) x
Créer via programme MI x
Modifier dans (PPS370/371) x x x x
Modifier via programme MI
Copy
Supprimer dans (PPS370/371) x x x x x
Supprimer via programme MI 'Supprimer saisie' (Supprimer MSGN entier) x
PPS370 Option 20 = 'Terminer saisie' x
PPS370/371 Option 25 = 'Valider' x x x
PPS370 Option 30 = 'Traitement' x x x

(PPS091), Origine de lot d'ordre d'achat. Exceptions

Le programme (PPS091) permet de définir des paramètres spéciaux pour un fournisseur spécifique.

(PPS288), Coût d'achat. Connecter élément de calcul du prix de revient fournisseur

Les programmes (PPS370) et (PPS370MI) permettent de mettre à jour les valeurs des éléments de calcul des coûts d'achat connectés à l'en-tête ou aux lignes de l'ordre d'achat affiché dans (PPS215) via un système externe. Ces valeurs sont utilisées dans le processus de traitement des ordres d'achat et de rapprochement de facture.

Le programme (PPS288) doit être configuré correctement pour que l'intégration entre ce système externe et M3 permette la mise à jour des éléments de calcul du prix de revient d'un OA ou d'une ligne d'OA. Un élément de calcul du prix de revient fournisseur doit être défini pour gérer les mises à jour de coûts envoyées par les fournisseurs (ex. : frais, coûts de manutention, etc.). Cet élément de calcul du prix de revient fournisseur est ensuite connecté à un élément de calcul des coûts d'achat dans M3, défini dans (PPS280).

Pour les éléments de calcul du prix de revient M3 connectés aux éléments de calcul du prix de revient fournisseur, la méthode de distribution (DIMT) dans (PPS280/E) doit être définie sur 1 = 'Dépenses niveau ligne seulement' ou sur 2 = 'Dépenses niveau en-tête seulement, sans répartition'. La méthode 3 = 'Répartition entre l'en-tête et les lignes' n'est pas disponible dans la version actuelle du module POBE.

Le code devise utilisé pour les valeurs saisies dans 'Lot d'ordres d'achat. Connecter frais' (PPS375) correspond toujours à la devise spécifiée dans 'Lot ordre d'achat. Ouvrir' (PPS370/E).

Transactions

Ces transactions sont disponibles dans (PPS370MI).

  • Transaction 'StartEntry'

    L’objectif de StartEntry est de récupérer le 'Numéro de message' (MSGN) et de décider si le 'Numéro de message' permet d’ajouter les nouveaux enregistrements de lot ou d’ajouter des enregistrements de lot qui ajouteront des données aux données ou supprimer dans l’OA existant.

    L'option 'Numéro de message' est utilisée pour regrouper les 'informations de lot d'OA' envoyées conjointement. Il est nécessaire de saisir un numéro de message valide dans toutes les autres transactions-MI.

    Les champs d’entrée sont 'Origine de lot d’ordre d’achat' (BAOR) et 'Code saisie par lot d’ordres d’achat' (PBEC).

    Le champ de sortie est 'Numéro de message' (MSGN).

  • Transaction 'AddHead'

    Le but de la transaction 'AddHead' est de créer un 'En-tête de lot d'OA' (MXHEAD).

    La sortie de 'AddHead' est un 'Numéro d'OA' (PUNO).

    Les champs obligatoires sont les suivants : 'Numéro de message' (MSGN) 'Etablissement' (FACI), 'Dépôt' (WHLO), 'Fournisseur' (SUNO) et 'Date de livraison demandée' (DWDT).

    Le champ 'Référence d'en-tête d'OA' est facultatif. Il est possible d'utiliser le champ 'Référence d'en-tête d'OA' en conjonction avec le champ 'Fournisseur' au lieu du champ 'Numéro d'OA' (PUNO) dans les transactions 'AddLine', 'AddAddress', 'AddCharge', 'AddText' et AddAccStr'.

  • Transaction 'AddLine'

    Le but de la transaction 'AddLine' est de créer une 'Ligne de lot d'OA' (MXLINE).

    La sortie de 'AddLine' est une 'Ligne d'OA' (PNLI) sur un 'Numéro d'OA' (PUNO).

    La transaction 'AddLine' permet également de créer directement un 'En-tête de lot d'OA' (MXHEAD) et une 'Ligne de lot d'OA' (MXLINE).

    Reportez-vous aux exemples suivants pour renseigner les informations de la transaction 'AddLine' :

    • Création d'une ligne via un numéro d'OA

      Ce processus crée une 'Ligne de lot d'OA' (MXLINE) dans un 'En-tête de lot d'OA' (MXHEAD) existant.

      Les transactions 'StartEntry' et 'AddHead' doivent avoir été exécutées afin de disposer d'un 'Numéro de message' (MSGN) et d'un 'Numéro d'OA' (PUNO) valides.

      Les champs obligatoires sont : 'Numéro de message' (MSGN), 'Numéro d'OA' (PUNO), 'Code article' (ITNO) et 'Qté commandée' (ORQA).

      Les champs 'Etablissement' (FACI), 'Dépôt' (WHLO), 'Fournisseur' (SUNO) et 'Date de livraison demandée' (DWDT) ne doivent pas être renseignés.

      Le champ 'Ligne d'OA' (PNLI) est facultatif. Si le champ 'Ligne d'OA' contient une valeur vide ou nulle, une valeur est automatiquement récupérée.

      Le champ 'Référence ligne d'OA' (LREF) est facultatif. Il est possible d'utiliser le champ 'Référence ligne d'OA' en conjonction avec les champs 'Fournisseur' (SUNO) et 'Référence d'en-tête d'OA' (HREF) au lieu de 'Ligne d'OA' (PNLI) dans les transactions 'AddLine', 'AddAddress', 'AddCharge', 'AddText' et 'AddAccStr'.

    • Création d'une ligne via une référence d'en-tête d'OA

      Ce processus crée une 'Ligne de lot d'OA' (MXLINE) dans un 'En-tête de lot d'OA' (MXHEAD) existant.

      Les transactions 'StartEntry' et 'AddHead' doivent avoir été exécutées afin de disposer d'un 'Numéro de message' (MSGN) et d'une 'Référence d'en-tête d'OA' (HREF) valides.

      Les champs obligatoires sont : 'Numéro de message' (MSGN), 'Référence d'en-tête d'OA' (HREF), 'Code article' (ITNO) et 'Qté commandée' (ORQA). Les champs 'Etablissement' (FACI), 'Dépôt' (WHLO), 'Fournisseur' (SUNO) et 'Date de livraison demandée' (DWDT) ne doivent pas être renseignés.

      Le champ 'Ligne d'OA' (PNLI) est facultatif. Si le champ 'Ligne d'OA' contient une valeur vide ou nulle, une valeur est automatiquement récupérée.

      Le champ 'Référence ligne d'OA' (LREF) est facultatif. Il est possible d'utiliser le champ 'Référence ligne d'OA' en conjonction avec les champs 'Fournisseur' (SUNO) et 'Référence d'en-tête d'OA' (HREF) au lieu de 'Ligne d'OA' (PNLI) dans les transactions 'AddLine', 'AddAddress', 'AddCharge', 'AddText' et 'AddAccStr'.

    • Création d'un en-tête et d'une ligne

      Ce processus crée une 'Ligne de lot d'OA' (MXLINE) sur un 'En-tête de lot d'OA' (MXHEAD) existant.

      Un 'Numéro de message' (MSGN) valide doit exister ('StartEntry').

      Les champs obligatoires sont : 'Numéro de message' (MSGN) 'Etablissement' (FACI), 'Dépôt' (WHLO), 'Fournisseur' (SUNO), 'Date de livraison demandée' (DWDT), 'Code article' (ITNO) et 'Qté commandée' (ORQA).

      Le champ 'Référence d'en-tête d'OA' (HREF) ne doit pas être renseigné.

      Le champ 'Ligne d'OA' (PNLI) est facultatif. Si le champ 'Ligne d'OA' contient une valeur vide ou nulle, une valeur est automatiquement récupérée.

      Le champ 'Référence ligne d'OA' (LREF) est facultatif. Il est possible d'utiliser le champ 'Référence ligne OA' en conjonction avec le champ 'Fournisseur' (SUNO) au lieu de 'Ligne d'OA' (PNLI) dans les transactions 'AddLine', 'AddAddress', 'AddCharge', 'AddText' et 'AddAccStr'.

    • Transaction 'AddCharge'

      Le but de la transaction 'AddCharge' est de créer des 'Frais de lot d'OA' (MXOEXP).

      Lors du transfert d'un 'Lot d'OA' vers un ordre d'achat réel (MPHEAD, MPLINE etc.), les frais définis dans le modèle de calcul du prix de revient sont connectés à l'en-tête ou à la ligne d'OA.

      Une fois transférés dans M3, les 'Frais de lot d'OA' (MXOEXP) créent ou mettent à jour les 'Frais d'OA' (MPOEXP).

Indicateur de travail en cours

Un 'indicateur de travail en cours' et un 'numéro de travail' sont définis dans l'en-tête de l'ordre d'achat dans l'interface (MXHEAD). Les programmes de fonction contrôlent toujours ces champs avant d'exécuter toute opération sur un OA dans l'interface, afin de vérifier qu'aucun autre travail n'est en cours d'exécution sur l'ordre de lot. Les valeurs de l'indicateur 'travail en cours' sont les suivantes :

  • 0 = Pas en cours
  • 1 = Terminer saisie en cours
  • 2 = Mise à jour en cours
  • 4 = Suppression en cours
  • 8 = Validation en cours
  • 9 = Transfert en cours

Scénarios de réinitialisation

Les scénarios suivants décrivent certains paramètres spécifiques au module POBE.

  • Annulation d'une saisie

    Des ordres ont été saisis via (PPS370MI) et la transaction ''FinishEntry' n'a pas encore été appelée. Pour une raison quelconque, vous souhaitez annuler une opération de saisie et la réinitialiser intégralement.

    Solution :

    Envoyez la transaction MI 'DeleteEntry XXXXX'. Toutes les informations de cette saisie sont supprimées. Vérifiez que le type de recherche est défini sur 4 dans (PPS370) avant et après cette opération.

  • Poursuivre la transaction 'DeleteEntry' suite à un échec (ou un vidage) système

    Le système ne répond plus lors de l'exécution de la transaction 'DeleteEntry'. Aucune réponse n'indique si la transaction s'est terminée ou non. Tous les ordres ont-ils obtenu le statut 20, puis été envoyés vers l'étape de traitement suivante ?

    Solution :

    Ré-exécutez la transaction 'DeleteEntry' lorsque le système est de nouveau disponible : 'DeleteEntry XXXXX'. Vous recevez une réponse confirmant que la transaction est prête, ou la saisie est automatiquement réinitialisée et la transaction 'DeleteEntry' est exécutée à nouveau. Vérifiez que le type de recherche est défini sur 4 et 5 avant et après cette opération.

  • Poursuivre le traitement suite à un échec (ou un vidage) système.

    La transaction 'DeleteEntry' s'est terminée, mais un échec système est survenu lors de l'étape de traitement suivante.

    Solution :

    Poursuivez le traitement de la saisie en sélectionnant le type de recherche 5 et l'option '35 = 'Sélection de lot OA' dans (PPS378). Toutes les saisies en file d'attente sont traitées. Tous les ordres verrouillés sont automatiquement réinitialisés en premier (les ordres non finalisés dans (MPHEAD) sont annulés). Vérifiez que le type de recherche est défini sur 4 et 5 dans (PPS370) et (PPS200) avant et après cette opération.

  • Réinitialiser un ordre unique suite à échec (ou un vidage) système.

    Il se peut qu'un ordre unique soit verrouillé à différentes étapes du processus suite à un échec système (statuts 10, 20, 23, 25 et 90).

    Solution :

    Réinitialisez l'ordre au statut 20 (ou 10) via l'option 40 = 'Réinitialiser' (les ordres non finalisés dans (MPHEAD) seront annulés). Vérifiez que le type de recherche est défini sur 1 et 5 dans (PPS370) et (PPS200) avant et après cette opération.