Q&A
HOME
Tips & Tech
Q&A
Discuss
Download
자유게시판
홍보 / 광고
구인 / 구직
LOGIN
회원가입
현재 달보다 3개월전의 달을 구하려면 어떤 함수를 ....
현재 2000년 01월 이라면 3개월전은 1999월 11월 이라고 나오려면 ....
2
COMMENTS
승추니
•
2001.01.10 21:29
이원택 wrote:
> 현재 2000년 01월 이라면 3개월전은 1999월 11월 이라고 나오려면 ....
-------------------------------------
IncMonth라는 함수가 이씀니다.
사용법은.
function IncMonth(const Date: TDateTime; NumberOfMonths: Integer): TDateTime;
입니다.
예를 들어, 오늘에서 3개월 전이면
IncMonth(Date, -3)
이 됩니다.
즐푸하세요..^^"
0
0
삭제
수정
댓글
xdelphi
•
2001.01.10 21:21
이원택 wrote:
> 현재 2000년 01월 이라면 3개월전은 1999월 11월 이라고 나오려면 ....
type
TDateAdd_interval = (di_Msec,di_Sec,di_Minute,di_Hour,di_Day,di_Month,di_Year);
function DateAdd(interval:TDateAdd_interval; Number:integer; DateTime:TDateTime):TDateTime;
var ts:TTimeStamp;
st:TSystemTime;
MDays:integer;
AllMonth:integer;
procedure TimeAdd(Ds,Mt:integer);
begin
ts.Date := ts.Date + Number div Ds;
ts.Time := (Number mod Ds) * Mt;
end;
begin
result:=DateTime;
if number=0 then exit;
if interval in [di_Msec,di_Sec,di_Minute,di_hour,di_Day] then begin
ts:=DateTimeToTimeStamp(DateTime);
case interval of
di_Msec: TimeAdd(86400000,1);
di_Sec: TimeAdd(86400,1000);
di_Minute:TimeAdd(1440,60000);
di_hour: TimeAdd(24,3600000);
di_Day: ts.Date := ts.Date + number;
end;
while ts.Time<0 do begin
ts.Date:=ts.Date -1;
ts.Time:=ts.Time + 86400000;
end;
result := TimeStampToDateTime(ts);
end else begin
DateTimeToSystemTime(DateTime,st);
case interval of
di_Month: begin
AllMonth:=st.wYear * 12 + st.wMonth + number;
if AllMonth<1 then AllMonth:=1;
st.wYear:=(AllMonth - 1) div 12;
st.wMonth:=(AllMonth - 1) mod 12 + 1;
end;
di_Year: st.wYear := st.wYear + number;
end;
MDays:=MonthDays[IsLeapYear(st.wYear)][st.wMonth];
if st.wDay>MDays then st.wDay := MDays;
result := SystemTimeToDateTime(st);
end;
end;
<사용방법>
var dt : TDateTime;
begin
{
di_Msec : 밀리초(1/1000초)로 계산
di_Sec : 초를 계산
di_Minute : 분을 계산
di_Hour : 시간을 계산
di_Day : 일자를 계산
di_Month : 월을 계산
di_Year : 년을 계산
}
dt := now;
dt:=DateAdd(di_Month, -3, dt); //오늘날자에서 3개월전...
ShowMessage(DateTimeToStr(dt));
end;
조금만 응용하면 시간,년,일자,분,초 를 원하시는 방법으로 사용 할 수 있을것입니다.
0
0
삭제
수정
댓글
(NOTICE) You must be
logged in
to comment on this post.
김상희
•
2001.01.11 02:19
1
COMMENTS
/
0
LIKES
GDI로 그림그릴때 색상에 대해.....
안영기
•
2001.01.11 03:30
256 bitmap 일 때는 Indexed color 와 RGB color 를 둘 다 사용할 수 있습니다. 예를들어 COLORREF 의...
Demian
•
2001.01.11 02:13
1
COMMENTS
/
0
LIKES
DBF파일을 편집하고 싶은데요..... 데스크탑말고 읽어들일수 있는 프로그램이나 툴은?
조덕진
•
2001.01.12 03:02
Demian wrote: > DBF파일을 편집하고 싶은데.. 데스크탑말고 편집할수 있는 툴이나 프로그램은 없나요? >...
혀노
2001.01.11 02:02
0
COMMENTS
/
0
LIKES
Re: 델파이,오라클 commit 되기전 넘버링을 하려면?
김현웅
•
2001.01.11 01:39
1
COMMENTS
/
0
LIKES
TMemo의 특정단어가 들어있는 행은 어떻게 구하나요.?
최용일
•
2001.01.11 03:13
안녕하세요. 최용일입니다. 아래와 같은 방식으로 구하세요... function GetMemoLineCountWithWord(M...
김광철
2001.01.11 01:18
0
COMMENTS
/
0
LIKES
퀵리포트에서 디비 이용하지 않고 출력.
자라목
•
2001.01.11 01:04
1
COMMENTS
/
0
LIKES
문자열에 관한질문임다.
최용일
•
2001.01.11 03:06
안녕하세요. 최용일입니다. 대강 아래와 같이 하시면 되겠네요... while not Eof(파일) do begin ...
thenolja
•
2001.01.11 00:56
1
COMMENTS
/
0
LIKES
두개의 database의 table을 query로 사용할수 있을까요?
액션가면
•
2001.01.11 01:13
안녕하세염~ 다른 db간의 테이블 조인관련내용은 게시판을 조회해보시면 많이 나와있는내용입니다.. ...
물음이
2001.01.11 17:43
0
COMMENTS
/
0
LIKES
하나의 form 에서 동적 폼 생성시 문제...
박창근
2001.01.11 18:09
0
COMMENTS
/
0
LIKES
델파이4.0에서 MicrosoftWord의 버전을 알고 싶어라.
cico
2001.01.11 00:25
0
COMMENTS
/
0
LIKES
특정이벤트 발생시 윈도창!...
초보델꾼
•
2001.01.11 00:22
1
COMMENTS
/
0
LIKES
도움청함.. 퀵레포트의 반란..
sonic0
•
2001.01.11 02:29
초보델꾼 wrote: > 델파이로 프로그램 작성중에 퀵레포트에서 이상한 이벤트가 있어 > 델고수님께 도움을...
Applekiss
2001.01.11 00:11
0
COMMENTS
/
0
LIKES
UDP의 SendStream에 크기 제한이 있나요?
투덜이
2001.01.11 00:10
0
COMMENTS
/
0
LIKES
DB서버시간과 클라이언트시간 맞추기
Applekiss
•
2001.01.11 00:03
2
COMMENTS
/
0
LIKES
UDP의 SendStream을 이용한 화상채팅 프로그램에서..
이경문
•
2001.01.11 08:08
Stream의 크기가 넘 크네요. UDP는 TCP와는 다르게 그 크기가 제한되어 있습니다. 정확한 사이즈는 네트...
Applekiss
•
2001.01.12 02:07
^^ 먼저 답변 감사드립니다.. ㅠ.ㅠ쪼개서 보내는 것까지는 구현에 성공했습니다. udp에가 2048까지는 ...
hobakpa
•
2001.01.11 00:13
2
COMMENTS
/
0
LIKES
dbimage질문입니다.
hobakpa
•
2001.01.11 04:46
hobakpa wrote: > 안녕하십니까? > > 디비에 bmp 화일로 된것을 db에 저장한 다음 query로이용해서 db...
Zipsegi
•
2001.06.07 09:52
hobakpa wrote: > hobakpa wrote: > > 안녕하십니까? > > > > 디비에 bmp 화일로 된것을 db에 저장한...
이종욱
2001.01.15 20:40
0
COMMENTS
/
0
LIKES
BDE error "Temporary table resource limit"
양용민
2001.01.10 23:17
0
COMMENTS
/
0
LIKES
Bde, SQL서버, 크리스탈 레포트에서 연결방법?
이원택
•
2001.01.10 21:07
2
COMMENTS
/
0
LIKES
현재 달보다 3개월전의 달을 구하려면 어떤 함수를 ....
현재 2000년 01월 이라면 3개월전은 1999월 11월 이라고 나오려면 ....
승추니
•
2001.01.10 21:29
이원택 wrote: > 현재 2000년 01월 이라면 3개월전은 1999월 11월 이라고 나오려면 .... -------------...
xdelphi
•
2001.01.10 21:21
이원택 wrote: > 현재 2000년 01월 이라면 3개월전은 1999월 11월 이라고 나오려면 .... type TDateAd...
초보델꾼
2001.01.10 21:00
0
COMMENTS
/
0
LIKES
질문... 퀵레포트 장 안되요.. 도움청함.
이승근
•
2001.01.10 20:58
1
COMMENTS
/
0
LIKES
초보에게 가르침을...
조덕진
•
2001.01.11 01:45
이승근 wrote: > 델파이에 완전 초보입니다... > 그동안 visual foxpro를 사용했거던요... > db계열의 ...
이원택
2001/01/10 21:07
Views
246
Likes
0
Comments
2
Reports
0
Tag List
수정
삭제
목록으로
한델 로그인 하기
로그인 상태 유지
아직 회원이 아니세요? 가입하세요!
암호를 잊어버리셨나요?
> 현재 2000년 01월 이라면 3개월전은 1999월 11월 이라고 나오려면 ....
-------------------------------------
IncMonth라는 함수가 이씀니다.
사용법은.
function IncMonth(const Date: TDateTime; NumberOfMonths: Integer): TDateTime;
입니다.
예를 들어, 오늘에서 3개월 전이면
IncMonth(Date, -3)
이 됩니다.
즐푸하세요..^^"