Reply To: Besoin de votre aide 🙁

  • R3dKap

    Member
    4 avril 2022 at 10h47

    @Francois DUPUIS merci pour ces éléments.

    Petite remarque pour commencer : dans Power Apps on ne parle pas de page mais d’écran… Utilisons les bons termes, on se comprendra mieux… 😉

    Les données

    C’est le cœur de ton application. Il faut donc déjà bien les ficeler pour que le reste roule tout seul…

    Je récapitule tes listes :

    • RAPPORTS

      • ID (colonne native SharePoint)

      • Titre (colonne native SharePoint -> est-ce que tu l’utilises ? ou est-ce que tu l’as renommée ? qu’est-ce que tu mets dedans ?)

      • Date (date)

      • Agent (texte)

      • CP_agent (texte)

    • LISTE_TRAINS

      • ID (colonne native SharePoint)

      • Titre (colonne native SharePoint -> est-ce que tu l’utilises ? ou est-ce que tu l’as renommée ? qu’est-ce que tu mets dedans ?)

      • N° train (texte ou numérique ?)

      • Gare montée (texte)

      • Gare descente (texte)

      • BE (nombre)

      • BE_CA (nombre ?)

      • BC (nombre)

      • BC_CA (nombre ?)

      • PV (texte ?)

      • Observations (texte)

    De ce que je comprends tu souhaites que les agents créent/remplissent des rapports sur des trains.

    Du coup, premier problème : je ne vois pas de lien pour l’instant entre tes deux listes. Si ces deux listes ont besoin d’être liées alors il faut créer une colonne de type Recherche entre les 2.

    Comme ça au premier abord je dirais que cette colonne doit être créée dans la liste RAPPORTS :

    • RAPPORTS

      • Train (recherche vers liste TRAINS, colonne N° train)

    Procéder ainsi veut dire que : un agent à une date donnée fait un rapport sur un train -> à une ligne de RAPPORTS est associée une ligne de TRAINS.

    Est-ce que pour l’instant on est bon ?

    Maintenant d’autres questions peuvent être soulevées :

    1. Est-ce qu’un agent peut être amené à faire plusieurs rapports dans la même journée pour différents trains ?

    2. Est-ce qu’un même train peut-être rattaché à plusieurs rapports ?

    3. Est-ce qu’il peut y avoir plusieurs trains rattachés au même rapport ?

    Ces questions sont très importantes car elles peuvent avoir un impact direct sur la manière dont les données sont structurées et il faudra peut-être modifier les listes en fonction des réponses…

    Il faudrait que tu y répondes en me mettant bien les numéros des questions pour que je m’y retrouve.

    L’application

    Au niveau de l’application, si j’ai bien compris tu as prévu les écrans suivants (tu vas voir que j’en profite pour te faire des suggestions d’organisation et de nommage -> je t’invite à les utiliser 😉) :

    Ecran RAPPORTS

    • Une galerie galRapports_RAP qui liste tous les rapports (donc galRapports_RAP.Items = RAPPORTS)

    • Un bouton btnNouveauRapport_RAP libellé Nouveau rapport

    Actions :

    • Lorsque l’on clique sur le bouton Nouveau rapport on est amené sur l’écran NOUVEAU RAPPORT : un simple Navigate('NOUVEAU RAPPORT') suffit.

    • Lorsque l’on clique sur un rapport de la galerie, on est amené sur un écran REMPLIR RAPPORT. Pour faire ça proprement, il faut le faire ainsi 👍

      galRapports_RAP.OnSelect = Navigate('REMPLIR RAPPORT'; ScreenTransition.None; {locRapport: ThisItem})

    On transmets ainsi le rapport sélectionné (ThisItem) en tant que variable locale sur l’écran REMPLIR RAPPORT. Et sur cet écran REMPLIR RAPPORT tu pourras utiliser la variable locRapport qui contiendra toutes les données du rapport sélectionné.

    Ecran NOUVEAU RAPPORT

    • Un formulaire frmRapport_NVRAP (où DataSource = RAPPORTS , DefaultMode = FormMode.New et Item est vide) avec les champs suivants :

      • Date (champ Date)

      • Agent (champ Agent)

      • Code agent (champ CP_agent)

    • Un icône Annuler nommé icoCancel_NVRAP (en forme de croix) pour annuler la création et où OnSelect = Back()

    • Un icône Cocher nommé icoSave_NVRAP (en forme de coche) pour valider la création et où :

    icoSave_NVRAP.OnSelect = SubmitForm(frmRapport_NVRAP)nnfrmRapport_NVRAP.OnSuccess = Notify("Le rapport a été créé avec succès."; NotificationType.Success);; Back()

    Ecran REMPLIR RAPPORT

    Celui-là on va se le garder sous le coude pour le moment car son organisation va dépendre des réponses que tu vas me donner aux questions 1, 2 et 3.

    CommentID=Fg914GlyBtgxxhc, PostID=61aRRyEq60id5pE