cabrillo.attachments : client

  • Rversion finale: Xanadu
  • Mis à jour 1 août 2024
  • 3 minutes de lecture
  • Espace de noms pour Cabrillo JS les fonctions de pièce jointe. Cela permet d’ajouter et d’afficher des pièces jointes.

    cabrillo.attachments - addFile(String tableName, String sysId, Object params, Options de chaîne)

    Présente un sélecteur de document et télécharge le fichier sélectionné.

    Important :
    Cette méthode est obsolète. Utilisez plutôt la méthode addFiles().
    Tableau 1. Paramètres
    Nom Type Description
    tableName Chaîne Nom de la table de l’enregistrement auquel joindre la pièce jointe.
    sysID Chaîne La sys_id de l’enregistrement à laquelle joindre la pièce jointe.
    paramètres Objet Inutilisé. Défini sur null.
    options Chaîne Inutilisé. Défini sur null.
    Tableau 2. Renvoie
    Type Description
    promesse En cas de succès, un objet Cabrillo.Attachment. En cas d’échec de l’opération, une erreur se produit.
    var table = 'incident';
    var sysID = 'a9e30c7dc61122760116894de7bcc7bd';
    
    cabrillo.attachments.addFile(table,
        sysID, 
        null,
        null
    ).then(function(attachment) {
        if (attachment) {
            console.log('Added a new file.', attachment);
        } else {
            console.log('User cancelled adding an attachment.');
        }
    }, function(error) {
        console.log('Failed to attach new file.', error);
    });

    cabrillo.attachments - addFiles(String tableName, String sysId, Object params, Object options)

    Présente un sélecteur de document permettant de sélectionner et de charger des fichiers.

    Tableau 3. Paramètres
    Nom Type Description
    tableName Chaîne Nom de la table qui contient l’enregistrement auquel joindre le fichier.
    sysID Chaîne Sys_id de l’enregistrement auquel joindre le fichier.
    paramètres Objet Facultatif. Réservé pour une utilisation future. Défini sur null.
    options Objet Facultatif. Paramètres supplémentaires pour le chargement des fichiers.
    {
      "isSingleSelection": Boolean
    }
    options.isSingleSelection Booléen

    Facultatif. Marqueur indiquant si le sélecteur de documents pour le chargement des fichiers autorise la sélection multiple.

    Valeurs valides :
    • vrai : un seul fichier à charger peut être sélectionné à la fois.
    • false : plusieurs fichiers à charger peuvent être sélectionnés simultanément.

    Valeur par défaut : false

    Tableau 4. Renvoie
    Type Description
    Promesse Contient les pièces jointes créées avec succès et toutes les erreurs.

    Si plusieurs fichiers ont été sélectionnés, une pièce jointe Cabrillo est créée pour chaque fichier téléchargé avec succès tandis qu’un message d’erreur est généré pour chaque téléchargement infructueux.

    Type de données : objet

    { 
       “attachments”: [Array], 
       “errors”: [Array] 
    }
    Promesse.pièces jointes Contient toutes les pièces jointes créées avec succès.

    Type de données : tableau

    “attachments”: [Cabrillo.Attachment]
    Erreurs.promesses Contient toutes les erreurs.

    Type de données : tableau

    “errors”: ["String"]

    Cet exemple crée un bouton permettant d’ajouter plusieurs pièces jointes à un enregistrement d’incident et vérifie les erreurs de chargement.

    this.attachMultipleFilesButton = function() {
       c.log("Attempting to add multiple attachments to INC0010453");
       var table = 'incident';
       var sysID = 'fc74aefa1bfb2c10181499f1b24bcb3c';
    
       cabrillo.attachments.addFiles(table, sysID).then(function(result) {
          if (result) {
             handleMultipleResult(result)
          } else {
             c.log('User cancelled adding an attachment.');
          }
       }, function(error) {
          c.log('Failed to attach new files.', error);
       });
    }
    
    // A helper function to handle addFiles results 
    function handleMultipleResult(result) {
       c.log('Added multiple attachments.', result);
       if (result.attachments) {
          c.log('Number of new attachments', result.attachments.length);
       }
       if (result.errors) {
          c.log('Number of errors during upload', result.errors.length);
       }
    }

    cabrillo.attachments -viewFile(Cabrillo.Attachment attachment, Cabrillo.Rect sourceRect, String sourceBase64Image)

    Présente un sélecteur de document et télécharge le fichier sélectionné.

    Remarque :
    La mise à l’échelle à l’aide d’un paramètre sourceRect avec une image sourceBase64 n’est prise en charge que sur iOS. Android ignore ces paramètres et ouvre l’image sans animation de mise à l’échelle.
    Tableau 5. Paramètres
    Nom Type Description
    attachment Cabrillo.Pièce jointe Décrit la pièce jointe à afficher.
    sourceRect (en anglais seulement) Cabrillo.Rect Facultatif. Décrit le rectangle source de l’image à mettre à l’échelle.
    sourceBase64Image Chaîne Facultatif. Représentation base64 de l’image source à mettre à l’échelle.
    Tableau 6. Renvoie
    Type Description
    promesse En cas de succès, un objet non résolu, sinon une erreur.
    // A Cabrillo.Attachment dictionary to view
    var attachment = {
        sys_id: '8e99daa3ff133100ba13ffffffffff2d',
        content_type: 'image/jpeg',
        path: '8e99daa3ff133100ba13ffffffffff2d.iix'
    };
    
    cabrillo.attachments.viewFile(attachment,
        null,
        null
    ).then(function() {
        // It worked. Nothing to do here.
    }, function(error) {
        console.log('Failed to view file.', error);
    });

    Pour mettre à l’échelle une image qui a été tapée dans une visionneuse d’images native, la méthode viewFile() accepte les arguments facultatifs pour le rectangle de l’image sur la page, ainsi qu’une miniature codée base64 de l’image. La vignette est mise à l’échelle de l’image en taille réelle avec une animation.

    // Grab image metadata from an image that was tapped
    var imageMetadata = imageMetadataFromEvent(event);
    
    // Optional rect of image on page
    var imageRect = imageMetadata.rect;
    
    // Optional base64 encoded image to scale up into native viewer
    var base64EncodedImage = imageMetadata.base64;
    
    // A Cabrillo.Attachment dictionary to view
    var attachment = {
        sys_id: '8e99daa3ff133100ba13ffffffffff2d',
        content_type: 'image/jpeg',
        path: '8e99daa3ff133100ba13ffffffffff2d.iix'
    }
    
    cabrillo.attachments.viewFile(attachment,
        imageRect,
        base64EncodedImage
    ).then(function() {
        // It worked. Nothing to do here.
    }, function(error) {
        console.log('Failed to view file.', error);
    });