IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Microsoft Dynamics Discussion :

[Navision 2009R2] TableBox avec plusieurs tables.


Sujet :

Microsoft Dynamics

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Développeur informatique en alternance
    Inscrit en
    Octobre 2015
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique en alternance

    Informations forums :
    Inscription : Octobre 2015
    Messages : 20
    Points : 26
    Points
    26
    Par défaut [Navision 2009R2] TableBox avec plusieurs tables.
    Bonjour,

    Me voila une enième fois confronté a un problème.

    Je dois faire un form pour afficher la liste des accident (de la table accident que j'ai créé) et les des infos des employee victime de l'accident (de la table 5200 employee).
    Ma table accident a comme clé primaire le code employee, la date et l'heure.

    Mon problème c'est que je n'arrive pas à avoir les bonnes valeurs employee sur les bonnes lignes accident.
    C'est à dire que sois je vais avoir les memes valeurs sur chaque ligne, sois des valeurs un peu random...

    Mon code ressemble à :
    Employee.SETCURRENTKEY("No.");
    Employee.SETFILTER(Employee."No.","Code employé");
    IF Employee.FIND('-')...

    et a partir de la j'ai, il semblerait, essayé tout ce que je connais a mon niveau (qui n'est pas très haut..) :
    des repeat until pour a chaque tour attribué la valeur du salarié dans des variables que j'affiche après...
    juste affiché la table employee directement dans les colonnes...

    Mais rien n'y fait.

    Une idée?

    Merci d'avance.

    Kilou'

  2. #2
    Membre à l'essai
    Homme Profil pro
    Responsable développement informatique
    Inscrit en
    Mai 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable développement informatique

    Informations forums :
    Inscription : Mai 2013
    Messages : 8
    Points : 15
    Points
    15
    Par défaut
    Bonjour,

    Je ne comprends par pourquoi tu souhaites faire une boucle pour afficher le contenu d'une table dans une form de type tableau... il me semble plus simple de définir dans ta form le "SourceTable" avec ta table Accident et éventuellement le SourceTableView avec ta clé / ton tri.
    Si tu souhaite pouvoir filtrer l'affichage sur un employé, tu peux :
    - Soit filtrer directement sur la colonne affichée (F7)
    - Soit ajouter une variable nCodeEmploye et l'afficher dans un champ de type datafield au dessus de ton tableau que l'utilisateur pourra modifier. Dans ce cas, dans le code de ton datafield, sur l'évènement "OnAfterValidate", fait juste un SETRANGE("No.",nCodeEmployee) et le tour est joué...

    Je ne suis pas sûr d'avoir répondu à ta question.... alors dis-moi si ma réponse n'est pas clair.

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Développeur informatique en alternance
    Inscrit en
    Octobre 2015
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique en alternance

    Informations forums :
    Inscription : Octobre 2015
    Messages : 20
    Points : 26
    Points
    26
    Par défaut
    Bonjour, et merci Guillaume pour ta réponse.

    En effet, j'ai bien mis dans SourceTable ma table Accident. Cela s'affiche bien.
    Cependant je souhaite également insérer des champs de la table Employee.

    Pour qu'au final chaque ligne contienne : Employee."No.", Employee."Job Title",Employee."Emplymt. Contract Code", AncientéEmployée, ageEmployée, dateAccident, heureAccident, TypeAccident...
    Je ne veux pas filtrer les accidents par employée, cette liste servira à faire des stats par le service QSE. Mais il est pertinent de récupérer le type de contrat de l'employé, son age etc...



    Mes lignes concernant la table accident s'affiche correctement. on se moque de l'ordre, mais dans un soucis de lisibilité j'ai mis un tri sur le code salarié (de la table accident toujours).

    Le problème que je rencontre actuellement est le suivant : je n'arrive pas à afficher la table employee, dans la même liste.
    Sois je vais ressortir CDD pour tout le monde alors qu'il y a des employee où on devrait voir CDI, ou bien sinon j'affiche les bon type de contrat mais dans le désordre, et donc pas sur la même ligne que celle de Accident."Code Salarié".

    C'est pas facile à expliqué. J'espere que tu comprends où je veux en venir

    merci encore en tout cas pour ton aide

    Kilou'

  4. #4
    Membre à l'essai
    Homme Profil pro
    Responsable développement informatique
    Inscrit en
    Mai 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable développement informatique

    Informations forums :
    Inscription : Mai 2013
    Messages : 8
    Points : 15
    Points
    15
    Par défaut
    Si j'ai bien compris ton problème, tu souhaites afficher dans les colonnes de ton tableau des champs d'une autre table que la table source (et liés à l'enregistrement).
    Si c'est bien ça, tu peux procéder de 2 façons différentes :
    - En utilisant des variables, que tu alimentes dans le "OnAfterGetRecord" de ta form (exemple pour un champ "Information", de type Text(30), de ta table Employe):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    --Après avoir déclaré les variables recEmploye (Record - Table Employe) et sInformation (Text 30)
    -- Form - OnAfterGetRecord()
    IF recEmploye.GET(Rec."Code salarie") THEN sInformation:=recEmploye.Information ELSE sInformation:='';
    Tu ajoutes alors une colonne dans ta table et tu lui donnes comme "SourceExpr" sInformation.

    - En créant des fonctions : tu créé une fonction (appellons-la fRetourneInformation) sans paramètre et avec comme valeur de retour le type attendu, puis tu définis cette fonction dans le SourceExpr d'une nouvelle colonne. Le code de ta fonction doit être :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    --fRetourneInformation() : Text[30]
    IF recEmploye.GET(Rec."Code salarie") THEN EXIT(recEmploye.Information) ELSE EXIT('');
    Attention, seul bémol : il n'est pas possible de filtrer sur les colonnes dont les SourceExpr sont des variables ou des fonctions... seuls les champs du Record de ta form sont filtrables....

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Développeur informatique en alternance
    Inscrit en
    Octobre 2015
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique en alternance

    Informations forums :
    Inscription : Octobre 2015
    Messages : 20
    Points : 26
    Points
    26
    Par défaut
    Ahhhh super !

    Ca fonctionne, et très bien même !

    J'avais fait mes variables etc mais c'est pas recEmployee.GET que j'avais pas utilisé, tout simplement.

    Problème résolu on dirait bien !

    Merci Guillaume !

    Kilou'

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. mysql_fetch_object avec plusieurs tables
    Par AlphaYoDa dans le forum SQL Procédural
    Réponses: 5
    Dernier message: 19/04/2007, 14h48
  2. Requête : Insert avec plusieurs tables
    Par bleu_ciel dans le forum Access
    Réponses: 4
    Dernier message: 01/06/2006, 21h42
  3. [VB 2005]Dataset avec plusieurs tables
    Par estelledany dans le forum Windows Forms
    Réponses: 3
    Dernier message: 29/05/2006, 14h25
  4. [MySQL] requete avec liaisons avec plusieurs tables
    Par pod1978 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 10/03/2006, 22h21
  5. historique avec plusieurs table
    Par Cybher dans le forum Requêtes
    Réponses: 2
    Dernier message: 05/08/2005, 16h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo