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

4D Discussion :

Utilisation des dates et modification


Sujet :

4D

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 44
    Points : 36
    Points
    36
    Par défaut Utilisation des dates et modification
    Bonjour

    J'ai un champ date, j'aimerai changer uniquement le mois et l'année de cette date par celle du jour. J'ai tout essayé, a chaque fois 4d change toute la date. j'utilise la commande ajouter à date mais rien n'y fait

    ex:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    MaDate:=[Articles]Jour fixé
    [table]Date:=Ajouter a date(!00/00/00!;Annee de(Date du jour);Mois de(Date du jour);Jour de(MaDate))
    Si quelqu'un peut m'aider

  2. #2
    Membre confirmé Avatar de ZeFiF
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2008
    Messages
    303
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 303
    Points : 486
    Points
    486
    Par défaut
    Salut !

    Date est une commande 4D, je suggère de ne pas nommer un champ qui ait la même orthographe qu'une commande.

    avec des variables ça fonctionne sans problème :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $MaDate:=!29/10/2011!
    $zedate:=Ajouter a date(!00/00/00!;Annee de(Date du jour(*));Mois de(Date du jour(*));Jour de($MaDate))

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 44
    Points : 36
    Points
    36
    Par défaut Super ça marche merci
    Merci pour ta réponse j'ai essayé c'est ok. Par contre dans le même registre tu seras peut être également m'aider j'aimerais rechercher une date avec a chaque fois uniquement le mois d'avant la date du jour, pour pouvoir récupérer des informations de ce mois d'avant.

    genre en avril j'appuis sur un bouton qui va chercher un formulaire datant du mois de mars.

    merci

  4. #4
    Membre confirmé Avatar de ZeFiF
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2008
    Messages
    303
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 303
    Points : 486
    Points
    486
    Par défaut
    eh bien ? qu'est ce qui te bloque ?

    c'est le même principe appliqué à une recherche sur un champ date...

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 44
    Points : 36
    Points
    36
    Par défaut
    J'avoue que je débute sur 4D, pour la recherche voici ce que je fais

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $vdMoisAvant:=Ajouter a date(Date du jour;0;-1;0)
    $cherche:=CHERCHER DANS SELECTION([Principale];[Principale]Date de création de la fiche=(Mois de($vdMoisAvant)))
    [Principale]Resultat:=$cherche

  6. #6
    Membre confirmé Avatar de ZeFiF
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2008
    Messages
    303
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 303
    Points : 486
    Points
    486
    Par défaut
    C'est pas un problème spécifique à 4D tu sais...
    tu auras la même réflexion quelque soit le langage...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $ve_mois:=mois de (date du jour(*))-1
    $ve_annee:=annee de (date du jour(*))
    CHERCHER par formule DANS SELECTION([Principale];mois de([Principale]Date de création de la fiche)=$ve_mois;*)
    CHERCHER par formule DANS SELECTION([Principale];& annee de([Principale]Date de création de la fiche)=$ve_annee)
    pour ton affectation de résultat j'ai peur que tu ne renseignes pas le bon enregistrement, en effet ton enregistrement courant est par défaut sur le premier enregistrement issu de la recherche...

    P.S : je te suggère de ne pas utiliser de nom de champ trop long ni de mettre des espaces dedans...

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 44
    Points : 36
    Points
    36
    Par défaut
    Salut ZeFiF

    j'ai essayé ce que tu m'as fait et cela fonctionne presque, mais du coup 4D modifie les champs pour afficher les champs de la recherche. moi je veux juste récupérer une valeur et venir la coller dans mon formulaire actuel. J'ai du coup stocké l'enregistrement , chargé l'enregistrement à la fin de la recherche mais rien n'y fait, est ce que c'est bien les commandes Stocker enregistrement et charger enregistrement qu'il faut utiliser dans ce cas là?

    Merci

  8. #8
    Membre confirmé Avatar de ZeFiF
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2008
    Messages
    303
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 303
    Points : 486
    Points
    486
    Par défaut
    sans doute parce que tu fais la recherche alors que tu es dans un enregistrement courant donc tu bouges la sélection : casse gueule au possible.

    soit tu fais un dialogue soit tu limites la recherche avec fixer destination recherche...

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 44
    Points : 36
    Points
    36
    Par défaut
    Oui c'est exactement ça, je suis dans un enregistrement courant. Mais il me faut une information du mois d'avant, pour l'instant je le fais à la main mais j'aimerai l'automatiser.

  10. #10
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 44
    Points : 36
    Points
    36
    Par défaut
    j'ai essayé avec la commande fixer destination recherche, mais cela ne fonctionne pas, par contre je n'ai étrangement pas d'erreur voici mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    FIXER DESTINATION RECHERCHE(Vers sélection courante)
    TOUT SELECTIONNER([Principale])
    $ve_mois:=Mois de(Date du jour(*))-1
    $ve_annee:=Annee de(Date du jour(*))
    CHERCHER PAR FORMULE DANS SELECTION([Principale];Mois de([Principale]Date de création de la fiche)=$ve_mois;*)
    CHERCHER PAR FORMULE DANS SELECTION([Principale];Annee de([Principale]Date de création de la fiche)=$ve_annee)
     
     
    Vtest:=[Principale]monresultat

  11. #11
    Membre confirmé Avatar de ZeFiF
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2008
    Messages
    303
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 303
    Points : 486
    Points
    486
    Par défaut
    bin vi ça change rien, c'est même le comportement normal.

    Relis mieux la doc sur la notion d'enregistrement courant, de sélection courante et sur la commande fixer destination recherche

  12. #12
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 106
    Points : 133
    Points
    133
    Par défaut
    Franchement, faut lire la doc.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    FIXER DESTINATION RECHERCHE(Vers sélection courante)
    -> inutile, c'est le comportement par défaut

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TOUT SELECTIONNER([Principale])
    -> inutile à part charger des tonnes de données pour rien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $ve_mois:=Mois de(Date du jour(*))-1
    -> on fait comment en janvier ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    CHERCHER PAR FORMULE DANS SELECTION([Principale];Mois de([Principale]Date de création de la fiche)=$ve_mois;*)
    CHERCHER PAR FORMULE DANS SELECTION([Principale];Annee de([Principale]Date de création de la fiche)=$ve_annee)
    -> utiliser CHERCHER PAR FORMULE, tout simplement, et l'étoile est inutile : cette commande ne se comporte PAS comme les autres CHERCHER.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Vtest:=[Principale]monresultat
    -> là je dois dire que je ne comprends pas le champ "monresultat".


    Pour avoir la liste d'enregistrements courants, il suffit d'écrire (après avoir calculé les variables) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CHERCHER PAR FORMULE([Principale];(Mois de([Principale]Date de création de la fiche)=$ve_mois) & (Annee de([Principale]Date de création de la fiche)=$ve_annee))
    4D retourne alors une sélection de fiches qu'il est nécessaire d'afficher ou de traiter.

  13. #13
    Membre confirmé Avatar de ZeFiF
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2008
    Messages
    303
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 303
    Points : 486
    Points
    486
    Par défaut
    Citation Envoyé par runciter Voir le message
    $ve_mois:=Mois de(Date du jour(*))-1
    -> on fait comment en janvier ?
    finement observé, toutefois je suis partisan de la méthode essai/erreur quand on débute.
    A mon humble avis ce n'est pas en mâchant le travail d'un autre qu'il progressera. Donc la méthode essai/erreur est très formatrice.

  14. #14
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 106
    Points : 133
    Points
    133
    Par défaut
    Citation Envoyé par ZeFiF Voir le message
    A mon humble avis ce n'est pas en mâchant le travail d'un autre qu'il progressera. Donc la méthode essai/erreur est très formatrice.
    Sauf que depuis le 9, pour pondre 3 lignes de code, ça commence à faire un peu beaucoup :-)

  15. #15
    Membre confirmé Avatar de ZeFiF
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2008
    Messages
    303
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 303
    Points : 486
    Points
    486
    Par défaut
    beaucoup pour qui ?

    Rome ne s'est pas fait en un jour...

Discussions similaires

  1. Utilisation des dates
    Par ndukuliki dans le forum IHM
    Réponses: 2
    Dernier message: 04/04/2010, 15h10
  2. [PHP 5.0] Utilisation des dates
    Par une_tite_question dans le forum Langage
    Réponses: 8
    Dernier message: 09/05/2009, 12h00
  3. utilisation des dates en perl
    Par danathane dans le forum Langage
    Réponses: 1
    Dernier message: 27/01/2009, 16h22
  4. utilisation des dates dans un formulaire struts
    Par gloglo dans le forum Struts 1
    Réponses: 1
    Dernier message: 18/04/2007, 12h09
  5. [MySQL] Utilisation des dates
    Par lampre dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 19/12/2006, 15h06

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