MassprocessingProcess

Fonction de traitement en masse sur les gammes

Syntaxe

procedure MassProcessing_Process(var gpaoids: String)
gpaoids: liste des GPAOIDs des gammes à modifier, au format CommaText

Remarques

Quand on sélectionne une ou plusieurs gammes dans l'écran d'administration des gammes, on a accès aux scripts de traitement en masse.
Quand on déclenche ce traitement Qubes appelle successivement :

Exemples

// Ajout d'une dernière opération 50 après la 40
procedure MassProcessing_Process(var gpaoids : String);
var
   i : Integer;
   gammeGPAOID, newGammeGPAOID : String;
   lstGammes, lstLogins : TStrings;
   gamme : TManufacturing;
   gammeOpe40, gammeOpe50 : TManufacturingOperation;
   links : TManufacturingLinks;
begin
   // Construction de la liste des responsables de l'opération
   lstLogins:=TStrings.Create;
   lstLogins.Add('admin');

   // Parcours des gammes pour les traiter
   lstGammes:=TStrings.Create;
   lstGammes.CommaText:=gpaoids;
   for i:=0 to lstGammes.Count-1 do begin
      gammeGPAOID:=lstGammes[i];
      gamme:=TManufacturing.ConnectByGPAOID(gammeGPAOID);

      if (gamme.State<>msModification) then begin
         // Si la gamme sélectionnée n'est pas en création ou n'a pas de version
         // en création, on en fait une nouvelle version
         newGammeGPAOID:=GetCreatingVersionOfManufacturingGPAOID(gammeGPAOID);
         if newGammeGPAOID='' then
            newGammeGPAOID:=SpawnNewManufacturingVersion(gammeGPAOID, True, True);
         // On retire la version courante de la gamme
         gamme.TransitionTo(msPerempted);
         // On se connecte à la version en création
         gamme:=TManufacturing.ConnectByGPAOID(newGammeGPAOID);
      end;

      // On crée l'opération 50
      gammeOpe50:=gamme.AddOperation('Vérification produit', 50);
      gammeOpe50.Description:='Vérification du produit fini';
      gammeOpe50.ProcessRUD:='ModeOpeSurLot-003';
      gammeOpe50.ManagerLogins:=lstLogins;

      // On la rattache à l'opération 40
      gammeOpe40:=gamme.GetOperationByNumber(40);
      links:=gammeOpe40.GetManufacturingLinks;
      links.AddLink(gammeOpe40, gammeOpe50);

      // On valide la gamme
      gamme.TransitionTo(msValidated);
      gamme.Post;
   end;
end;

Classification

QuBESGamme