Système d'upload de collections & typage

Étiquetté : ,

  • Système d'upload de collections & typage

    Posté par Sebastien sur 5 septembre 2022 à 13h28

    Bonjour à tous.

    Depuis maintenant quelques mois, je travaille sur une application canvas d’aide à la vente. Parmi les objectifs, on veut mettre en ordre les dossiers envoyés aux différents tiers et simplifier leur création. Pour ce faire, j’ai mis en place un système d’upload de collections dans SharePoint avec nommage et typage dont je suis assez content.

    Je voulais donc le partager avec ceux que ça peut intéresser, et en profiter pour prendre des conseils d’optimisation.

    Objectifs :

    • Nommage systématique du document à l’upload, avec extension variable

    • Ajout d’un « type » au document dans SharePoint

    • Aperçu des pièces déjà dans le dossier SharePoint

    • Upload de plusieurs pièces en même temps

      • Rappel des pièces en attente d’upload

    Présentation

    Collections déclaré dans ‘OnAppStart()’ :

    PiecesJointes : Collections des types de pièces jointes

    {n      Type: "Piece d'identité";n      Nom: "PieceId";n      Demandeurs: true;            // drpDemandeur.DisplayModen      Spec: true;                  // drpTypeFichier.DisplayModen      Pages: false;                // txtNumUpl.DisplayModen      Afficher: true               // drpRecVer.Visible (pour CNI)n};n{...}

    PiecesJointesSecondes : Collection des informations sur certains types de PJ

    {n      Pièce: "CNI";n      Nom: "_CNI"n}; n{...}

    Les propriété des composant liste déroulante, drpDemandeur & drpTypeFichier, Visible et DisplayMode dépendent de la collection PiecesJointes et du type choisit dans copTypePj

    Upload des fichiers

    Référence : Shane Young https://www.youtube.com/watch?v=3QaiM8SeWfM

    uplPjFinal : Composant upload tiré d’un formulaire

    imgSystemUpl : image avec propriété Visible : false. Il s’agit d’un composant intermédiaire servant à interpréter les fichiers / photos ajoutés en base64

    imgSystemUpl.Image

    Last(uplPjFinal.Attachments).Value

    uplPjFinal.OnAddFile :

    UpdateContext({nvarDemo: JSON(imgSystemUpl.Image; JSONFormat.IncludeBinaryData)n});;nUpdateContext({nvarBase64Only: Mid(varDemo; Find(","; varDemo)+1; Len(varDemo) - Find(","; varDemo) -1)n});;nCollect(ToUpload; n    {n        name: lblNomPJ & "." & Last(Split(Last(uplPjFinal.Attachments).Name; ".")).Result; n        code: varBase64Only; n        type: copTypePJ.SelectedText.Valuen    }n);;nnReset(uplPjFinal);;nIf(txtNumUpl.DisplayMode = DisplayMode.Edit; UpdateContext({locIterateur: locIterateur+1}))

    lblNomPj.Text

    LookUp(PiecesJointes; Type = copTypePJ.Selected.Value).Nom & nLookUp(PiecesJointesSecond; Pièce = drpTypeFichier.SelectedText.Value).Nom & nIf(n    drpTypeFichier.SelectedText.Value = "CNI";n    drpRecVer.SelectedText.Value) & nIf(n    drpDemandeur.SelectedText.Value = "Demandeur 1";n    "_Dem1") & nIf(n    drpDemandeur.SelectedText.Value = "Demandeur 2";n    "_Dem2"n) & nIf(n    locIterateur > 0;n    "_" & locIterateurn)

    btnUploadExpermient.OnSelect()

    If(!IsEmpty(ToUpload); nCollectiontoSP.Run(n     JSON(ToUpload); n     gblUrlDossier);;nClear(ToUpload)

    Flux ‘Collection to SP’

    Dossier SharePoint

    Examples :

    Et voilà !

    Personnellement, je pense que les collections pourraient être mieux structurées et plus polyvalentes, le design est probablement à revoir, et quelque contrôles et variables sont à renommés. J’espère quand même que ce post sera utile à quelques uns d’entre vous.

    Et bien sur, si vous avez des idées pour améliorer tout ça, je les attend avec impatience !

    PostID=4MUbuid32G899ok

    Sebastien a répondu Il y a 2 mois, 3 semaines 1 Membre · 0 Réponses
  • 0 Réponses

Désolé, aucune réponse n’a été trouvée.

Connectez-vous pour répondre.