Hello ,

Hello,

Pour demander une inscription sur le site, merci de remplir le formulaire suivant.

Il sera transmis à Vincent qui fera le nécessaire... à condition bien sûr qu'il vous connaisse ! ;-)

Seul l'email est obligatoire

Loading

Un email vient d'être envoyé à Vincent qui traitera votre demande d'inscription au plus vite.

Saisir votre email. Si celui-ci correspond bien à celui d'un de nos membres un nouveau mot de passe sera généré et vous recevrez un courriel pour vous le communiquer.

Loading

Un email vient de vous être envoyé.

| Mot de passe perdu ? JavaScript nécessaire !
Fermer
D* Variables de travail                      
D  Wrkdt1         s              8  0        
D  Wrkdt2         s              8  0
D  Wdatj          s              8  0   
D  Wdtiso         s               d          
D  DateTS         S               Z          
D  WHeure_Limite  S               T          
 * Découpage heure limite                    
D                 DS                         
D WHeure_Depart           1      6  0        
D  Whdep                  1      2  0        
D  Wmdep                  3      4  0        
D  Wsdep                  5      6  0 inz(00)
 *
 * Calcul de la date limite. On alimente le TimeStamp
 * Avec la date d’expédition, et ensuite on peut faire
 * la manipulation de durée.                                        
C                   Eval      DateTs = %timestamp(%date(rtdtex:*iso))
C                             + %hours(rthdep) + %minutes(rtmdep)    
C*                                                                   
C                   Eval      DateTs = DateTS - %days(trdimj)        
C                             -%hours(trdimh) - %minutes(trdimm)
C* Date Limite => on fait un %subst sur le TimeStamp                                                        
C                   Eval      RTDLIM = %DEC(%subst(%CHAR(DateTs :*iso0)
C                             :1:8):8:0)                               
C* Heure limite => on fait un %subst sur le TimeStamp                                                                                                             
C                   Eval      RTHLIM = %DEC(%subst(%CHAR(DateTs :*iso0)
C                             :9:4):4:0)
 *
 * Pour le calcul d’une heure limite lorsque l’on a seulement une
 * zone heure et une zone minute. 
C                   Eval      Whdep = rthdep_dufichier                           
C                   Eval      Wmdep = rtmdep_dufichier                          
C                   Eval      WHeure_Limite = %time(WHeure_depart:*hms)
C                             - %hours(trdimh) - %minutes(trdimm)      
C                   Eval      RTHLIM = %DEC(%subst(%CHAR(WHeure_Limite:
C                             *iso0):1:4):4:0)
 *
C* Date du jour                                                      
C                   Eval      Wdatj  = %dec(%char(%date():*iso0):8:0)
 *
C* Transformation dates début est fin                                
C                   Eval      Wdtiso = %date(%dec(p$dex1:6:0):*dmy) 
C                   Eval      Wrkdt1 = %dec(%char(Wdtiso:*iso0):8:0)
C*                                                                  
C                   Eval      Wdtiso = %date(%dec(p$dex2:6:0):*dmy) 
C                   Eval      Wrkdt2 = %dec(%char(Wdtiso:*iso0):8:0)  
*===================================================================================
H option(*nodebugio)

D @charA S 8 inz('04/12/01')
D @charB S 10 inz('12/02/2004')
D @charC S 8 inz('12/03/04')

D @dateA S d inz(D'2004-12-04')      

Bien reprendre le INZ c'est lui qui défini la date comme ISO

D @numA S 6 0 inz(041205)
D @numB S 7 0 inz(1041206)
D @numC S 8 0 inz(20041207)
D @numD S 6 0 inz(120804)
D @numE S 8 0 inz(12092004)

 /free

// character to character...
@charB = %char(%date(@charA:*ymd/):*usa/); // 'yy/mm/dd' to 'mm/dd/ccyy'
@charC = %char(%date(@charA:*ymd/):*mdy/); // 'yy/mm/dd' to 'mm/dd/yy'
@charA = %char(%date(@charB:*usa/):*ymd/); // 'mm/dd/ccyy' to 'yy/mm/dd'
@charC = %char(%date(@charB:*usa/):*mdy/); // 'mm/dd/ccyy' to 'mm/dd/yy'
@charA = %char(%date(@charC:*mdy/):*ymd/); // 'mm/dd/yy' to 'yy/mm/dd'
@charB = %char(%date(@charC:*mdy/):*usa/); // 'mm/dd/yy' to 'mm/dd/ccyy'

// character to date...
@dateA = %date(@charA:*ymd/); // 'yy/mm/dd' to D'ccyy-mm-dd'
@dateA = %date(@charB:*usa/); // 'mm/dd/ccyy' to D'ccyy-mm-dd'
@dateA = %date(@charC:*mdy/); // 'mm/dd/yy' to D'ccyy-mm-dd'

// character to numeric...
@numA = %dec(%char(%date(@charA:*ymd/):*ymd0):6:0); // 'yy/mm/dd' to yymmdd
@numB = %dec(%char(%date(@charA:*ymd/):*cymd0):7:0); // 'yy/mm/dd' to cyymmdd
@numC = %dec(%char(%date(@charA:*ymd/):*iso0):7:0); // 'yy/mm/dd' to ccyymmdd
@numD = %dec(%char(%date(@charA:*ymd/):*mdy0):7:0); // 'yy/mm/dd' to mmddyy
@numE = %dec(%char(%date(@charA:*ymd/):*usa0):7:0); // 'yy/mm/dd' to mmddyyyy
@numA = %dec(%char(%date(@charB:*usa/):*ymd0):6:0); // 'mm/dd/ccyy' to yymmdd
@numB = %dec(%char(%date(@charB:*usa/):*cymd0):7:0); // 'mm/dd/ccyy' to cyymmdd
@numC = %dec(%char(%date(@charB:*usa/):*iso0):7:0); // 'mm/dd/ccyy' to ccyymmdd
@numD = %dec(%char(%date(@charB:*usa/):*mdy0):7:0); // 'mm/dd/ccyy' to mmddyy
@numE = %dec(%char(%date(@charB:*usa/):*usa0):7:0); // 'mm/dd/ccyy' to mmddyyyy
@numA = %dec(%char(%date(@charC:*mdy/):*ymd0):6:0); // 'mm/dd/yy' to yymmdd
@numB = %dec(%char(%date(@charC:*mdy/):*cymd0):7:0); // 'mm/dd/yy' to cyymmdd
@numC = %dec(%char(%date(@charC:*mdy/):*iso0):7:0); // 'mm/dd/yy' to ccyymmdd
@numD = %dec(%char(%date(@charC:*mdy/):*mdy0):7:0); // 'mm/dd/yy' to mmddyy
@numE = %dec(%char(%date(@charC:*mdy/):*usa0):7:0); // 'mm/dd/yy' to mmddyyyy

// date to character...
@charA = %char(@dateA:*ymd/); // D'ccyy-mm-dd' to 'yy/mm/dd'
@charB = %char(@dateA:*usa/); // D'ccyy-mm-dd' to 'mm/dd/ccyy'
@charC = %char(@dateA:*mdy/); // D'ccyy-mm-dd' to 'mm/dd/yy'

// date to numeric...
@numA = %dec(%char(@dateA:*ymd/):6:0); // D'ccyy-mm-dd' to yymmdd
@numB = %dec(%char(@dateA:*cymd/):7:0); // D'ccyy-mm-dd' to cyymmdd
@numC = %dec(%char(@dateA:*iso-):8:0); // D'ccyy-mm-dd' to ccyymmdd
@numD = %dec(%char(@dateA:*mdy/):6:0); // D'ccyy-mm-dd' to mmddyy
@numE = %dec(%char(@dateA:*usa/):8:0); // D'ccyy-mm-dd' to mmddccyy

// numeric to character...
@charA = %char(%date(@numA:*ymd):*ymd/); // yymmdd to 'yy/mm/dd'
@charB = %char(%date(@numA:*ymd):*usa/); // yymmdd to 'mm/dd/ccyy'


@charC = %char(%date(@numA:*ymd):*mdy/); // yymmdd to 'mm/dd/yy'
@charA = %char(%date(@numB:*cymd):*ymd/); // cyymmdd to 'yy/mm/dd'
@charB = %char(%date(@numB:*cymd):*usa/); // cyymmdd to 'mm/dd/ccyy'
@charC = %char(%date(@numB:*cymd):*mdy/); // cyymmdd to 'mm/dd/yy'
@charA = %char(%date(@numC:*iso):*ymd/); // D'ccyy-mm-dd' to 'yy/mm/dd'
@charB = %char(%date(@numC:*iso):*usa/); // D'ccyy-mm-dd' to 'mm/dd/ccyy'
@charC = %char(%date(@numC:*iso):*mdy/); // D'ccyy-mm-dd' to 'mm/dd/yy'
@charA = %char(%date(@numD:*mdy):*ymd/); // mmddyy to 'yy/mm/dd'
@charB = %char(%date(@numD:*mdy):*usa/); // mmddyy to 'mm/dd/ccyy'
@charC = %char(%date(@numD:*mdy):*mdy/); // mmddyy to 'mm/dd/yy'
@charA = %char(%date(@numE:*usa):*ymd/); // mmddccyy to 'yy/mm/dd'
@charB = %char(%date(@numE:*usa):*usa/); // mmddccyy to 'mm/dd/ccyy'
@charC = %char(%date(@numE:*usa):*mdy/); // mmddccyy to 'mm/dd/yy'

// numeric to date...
@dateA = %date(@numA:*ymd); // yymmdd to D'ccyy-mm-dd'
@dateA = %date(@numB:*cymd); // cyymmdd to D'ccyy-mm-dd'
@dateA = %date(@numC:*iso); // ccyymmdd' to D'ccyy-mm-dd'
@dateA = %date(@numD:*mdy); // mmddyy to D'ccyy-mm-dd'
@dateA = %date(@numE:*usa); // mmddccyy to D'ccyy-mm-dd'

// numeric to numeric...
@numB = %dec(%char(%date(@numA:*ymd):*cymd0):7:0); // yymmdd to cyymmdd
@numC = %dec(%char(%date(@numA:*ymd):*iso0):8:0); // yymmdd to ccyymmdd

@numD = %dec(%char(%date(@numA:*ymd):*mdy0):6:0); // yymmdd to mmddyy
@numE = %dec(%char(%date(@numA:*ymd):*usa0):8:0); // yymmdd to mmddccyy
@numA = %dec(%char(%date(@numB:*cymd):*ymd0):6:0); // cyymmdd to yymmdd
@numC = %dec(%char(%date(@numB:*cymd):*iso0):8:0); // cyymmdd to ccyymmdd
@numD = %dec(%char(%date(@numB:*cymd):*mdy0):6:0); // cyymmdd to mmddyy
@numE = %dec(%char(%date(@numB:*cymd):*usa0):8:0); // cyymmdd to mmddccyy
@numA = %dec(%char(%date(@numC:*iso):*ymd0):6:0); // ccyymmdd to yymmdd
@numB = %dec(%char(%date(@numC:*iso):*cymd0):7:0); // ccyymmdd to cyymmdd
@numD = %dec(%char(%date(@numC:*iso):*mdy0):6:0); // ccyymmdd to mmddyy
@numE = %dec(%char(%date(@numC:*iso):*usa0):8:0); // ccyymmdd to mmddccyy
@numA = %dec(%char(%date(@numD:*mdy):*ymd0):6:0); // mmddyy to yymmdd
@numB = %dec(%char(%date(@numD:*mdy):*cymd0):7:0); // mmddyy to cyymmdd
@numC = %dec(%char(%date(@numD:*mdy):*iso0):8:0); // mmddyy to ccyymmdd
@numE = %dec(%char(%date(@numD:*mdy):*usa0):8:0); // mmddyy to mmddccyy
@numA = %dec(%char(%date(@numE:*usa):*ymd0):6:0); // mmddccyy to yymmdd
@numB = %dec(%char(%date(@numE:*usa):*cymd0):7:0); // mmddccyy to cyymmdd
@numC = %dec(%char(%date(@numE:*usa):*iso0):8:0); // mmddccyy to ccyymmdd
@numD = %dec(%char(%date(@numE:*usa):*mdy0):6:0); // mmddccyy to mmddyy

*inlr = *on;
 /end-free
*===================================================================================
* Format *EUR car dans la zone la saisie est JJMMAAAA
H DATFMT(*EUR)
*
D myDate_Deb      s               d              
D myDate_Fin      s               d                      
 *                                               
D Quote           C                   Const(x'7d')
*
* Date paramètre au format JJMMAAA
C     *ENTRY        PLIST                                     
C                   PARM                    PDATD             8
C                   PARM                    PDATF             8
* Controle zone alpha est numérique
C                   If        Pdatd <> *Blanks                       
C                   If        %check('0123456789' : Pdatd) > 0       
C                   Eval      Indicateur erreur = *ON                                                      
C                   Else 
*Si zone numérique => Tester la date avec %Date                                             
C                   Monitor                                          
C                   Eval      myDate_Deb = %Date(%Dec(pdatd:8:0):*EUR)
C                   On-Error                                         
C                   Eval      Indicateur_Erreur = *ON                             
C                   Return                                           
C                   EndMon                                           
C                   Endif                                            
C                   Endif                                            
* Faire identique pour date de fin pour le controle suivant
 * Si date de début renseignée, vérifier si inférieur ou                 
 * égale à date de fin                                                   
C                   If        myDate_Deb > myDate_Fin
C                   Eval      Indicateur erreur = *ON                                                                           
C                   Endif   
                                                                                         




Haut de page