Écriture de règles de lancement des lots personnalisées

L'ordonnancement utilise les règles de lancement de lot pour déterminer la quantité que les OF qui arrivent ajoutent aux lots en cours de création. Cette règle est quelquefois également appelée règle de quantité de lot.
Remarque :  Pour consulter un récapitulatif de la procédure de création des règles personnalisées, reportez-vous à la rubrique Ecriture de règles d'ordonnancement personnalisées. Pour obtenir plus de détails sur les fonctions décrites dans cette rubrique, reportez-vous au Guide de personnalisation de l'ordonnancement (Scheduling Customization Guide) qui peut être téléchargé sur notre site Web d'assistance technique.

Logique des règles de lancement de lot

Avant de créer des règles de lancement de lot personnalisées et d'écrire les fonctions de lancement de lot correspondantes, vous devez comprendre la logique utilisée par la fonction de lancement de lot. Lorsqu'un OF arrive au niveau d'une opération pour laquelle une fabrication groupée a été indiquée, la fonction de lancement de lot est appelée.

Lorsque la fonction de lancement de lot est appelée, celle-ci détermine la quantité ajoutée au lot en cours de création, ce qui détermine le moment auquel le lot sera lancé.

Nom de la fonction

Votre fonction de lancement de lot personnalisée peut porter n'importe quel nom qui n'est pas un nom de fonction standard exécutable par l'utilisateur.

Arguments


#include "factor.h"
double brrl(ldp, batch)
LOAD *ldp;        /* pointer to the load */
BATCHDEF *batch;  /* pointer to the batch definition */

Cette fonction accepte deux arguments, un pointeur vers la charge (Type : LOAD *) et un pointeur vers le lot (Type : BATCHDEF *).

Valeur de retour

La fonction retourne une valeur à ajouter au lot en cours de création (type : double).

Voici ci-dessous un exemple d'une fonction de lancement de lot basée sur la quantité de l'OF :


double brrl (LOAD *ldp, BATCHDEF *batch)
/*-----------------------------------------------------------------
     Batch release rule which adds the quantity on the job.
     ARGS:
       ldp - pointer to the arriving load (job)
       batch - pointer to the batch that this load will follow
                RETURNS: job quantity
-----------------------------------------------------------------*/
{
     
     return((double)ldp->losize);
{

Installation de la fonction personnalisée

Pour rendre votre fonction de lancement de lot personnalisée disponible pour l'ordonnancement, vous devez l'"installer" à partir de ucini1 en appelant la fonction sedfbq. Cette fonction a deux arguments dans l'ordre suivant :

  • Le numéro de la règle de lancement de lot pour laquelle votre fonction contient une logique personnalisée.
  • L'adresse de votre fonction de lancement de lot.

Par exemple, pour installer la règle exemple "brrl" ci-dessus dans la position de règle 39 :


sedfbq (39, brrl);