Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 3 sur 3
  1. #1
    Candidat au titre de Membre du Club
    Homme Profil pro
    Inscrit en
    août 2011
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vosges (Lorraine)

    Informations forums :
    Inscription : août 2011
    Messages : 83
    Points : 12
    Points
    12

    Par défaut Ajouter 7 jours à une date

    Bonjour, voila je dois réaliser une application qui consiste de réservé des appartements et en fonctions de la date de début de la location il y a 2 prix.
    J'ai donc réaliser un sous-programme qui prend en paramètre la date du début le numero de l'appartement et montant (montant total du par le client) et le nombre de semaine de réservation.

    J'ai donc réaliser une boucle qui permet en fonction de la date de savoir quel prix pratiqué mais je voudrais que la date avance de 1 semaine a chaque passage dans la boucle.

    je sais pas si je suis assez clair !!

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
           program-id. total.
    
           file-control.
               select f-appart assign to 'appart.dat' organization indexed
               access dynamic record key NumApparta
               alternate key NumPropa duplicates.
    
           fd f-appart.
           1 Appartement.
               2 NumApparta pic 999.
               2 NumPropa pic 99.
               2 Nbpiecea pic 99.
               2 Etagea pic 99.
               2 NbPersMaxa pic 99.
               2 tarifHTa pic 9(4).
               2 tarifBSa pic 9(4).
               2 vuea pic x(20).
               2 Villea pic x(20).
    
           working-storage section.
           1 i pic 9 value 1.
           1 tot pic 9(5) value 0.
           1 jour pic 99.
           1 mois pic 99.
           1 val1 pic 9(8).
    
           linkage section.
               1 montant pic 9(5).
               1 datedeb pic 9(8).
               1 numa pic 999.
               1 nbsem pic 9.
    
           screen section.
           1 a-plg-tot.
               2 line 18 col 4 'Montant :'.
               2 a-tot pic 9(5) from tot.
    
           procedure division using datedeb numa nbsem montant.
               open input f-appart
               move numa to NumApparta
               move datedeb(5:2) to jour
               move datedeb(7:2) to mois
               perform test after varying i from 1 by 1 until i = nbsem
                   read f-appart
                   if mois <= 9 then
                       if mois > 4 and jour > 16 then
                           compute tot = tot + tarifHTa
                       end-if
                   else
                       compute tot = tot + tarifBSa
                   end-if
    
               end-perform
               move tot to montant
               display a-plg-tot
               close f-appart
    
           end program total.

  2. #2
    Membre Expert

    Homme Profil pro François Durand
    Ingénieur Exploitation Mainframe
    Inscrit en
    octobre 2005
    Messages
    1 223
    Détails du profil
    Informations personnelles :
    Nom : Homme François Durand
    Âge : 55
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Ingénieur Exploitation Mainframe
    Secteur : Finance

    Informations forums :
    Inscription : octobre 2005
    Messages : 1 223
    Points : 2 250
    Points
    2 250

    Par défaut

    Si ton compilateur les accepte, je te suggère de passer par les fonctions intrinsèques.
    Par exemple (à adapter bien sûr ...) :

    Code :
    1
    2
    3
    COMPUTE D-JOUR =
     FUNCTION DATE-OF-INTEGER(
        FUNCTION INTEGER-OF-DATE(20120510) + 7 )

  3. #3
    Candidat au titre de Membre du Club
    Homme Profil pro
    Inscrit en
    août 2011
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vosges (Lorraine)

    Informations forums :
    Inscription : août 2011
    Messages : 83
    Points : 12
    Points
    12

    Par défaut Ajouter 7 jours à une date

    Merci Luc Orient sa marche nikel

    Je met résolu à se topic

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

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •