Le forum (ô combien francophone) des utilisateurs de Powerbuilder.
Pages: 1
Voila une fonction qui vous permettra de déterminer le dernier jour de la date en cours...
importer cette fonction et tester !
$PBExportHeader$f_dernierjourmois.srf $PBExportComments$donne le dernier jour du mois global type f_dernierjourmois from function_object end type forward prototypes global function integer f_dernierjourmois (date ad_date) end prototypes global function integer f_dernierjourmois (date ad_date);// determine le dernier jour du mois de la date saisie. Date ld_tmp ld_tmp = RelativeDate( ad_date, 32 - Day( ad_date ) ) Return Day( RelativeDate( ld_tmp, 0 - Day( ld_tmp ) )) end function
date ld_jour ld_jour = date(string(today(),'dd/mm/yyyy')) messagebox("Dernier jour du mois de la date",string(f_dernierjourmois(ld_jour)))
Hors ligne
Bonjour
Il y a une autre solution qui est d'extraire le mois de rajouter un.
Composer la date au premier jour et faire un relative date -1
iMonth=MONTH(dDate) iYear=YEAR(dDate) iMonth ++ IF iMonth>12 THEN iMonth=1 iYear++ END IF //sMonth=STRING(iMonth,"00") //sYear=STRING(iYear,"0000") //[s]dRet=DATE("01/"+iMonth+"/"+iYear)[/s] dRet=Date ( iYear, month, day ) dRet=RelativeDate(dRet,-1) RETURN(dRet)
J'ai modifié ,c'est plus propre ainsi et gère le format mm/dd/yy
Dernière modification par ydl (06-05-2011 12:17:43)
Hors ligne
Merci pour le truc, mais please
Hors ligne
Allez, tant qu'à faire, encore plus simple avec Oracle :
SELECT LAST_DAY( :ld_date ) INTO :ld_last FROM DUAL ;
Hors ligne
Oui mais cela charge le serveur oracle non ?
Hors ligne
ydl a écrit:
Oui mais cela charge le serveur oracle non ?
une requête comme ça doit prendre 1/1000ème de seconde, je pense pas que le serveur soit à genou...
Hors ligne
Par contre, si tu l'appelles toutes les deux lignes dans ton code depuis PB, tu peux saturer le réseau.
A toi de l'utiliser à bon escient
Hors ligne
pour sqlserveur
DECLARE @Dte DATETIME SET @Dte = GETDATE() SET @Dte=DATEADD(MONTH, 1,@Dte ) print DATEADD(DAY, -DAY(@Dte), @Dte)
à utiliser tel que ou à transformer en fonction ....
Hors ligne
Pages: 1