Q&A

  • 날짜 계산하는것좀 알려주세요
오늘도 모르는 것이 있어 왔습니다. 님들 답변해주신거 감사하면 ...
날짜계산을 하려구 하는데요...
디비그리드에 현제  query컴포넌트 sal 속성에 다음과 같이 입력하였습니다.
Select * From PYPTIEM A, PYPEOPM B
Where A.PTIE_CODENUM = B.PEOP_CODENUM
   order by  ptie_timedt desc 두테이블을 조인해서 값을 가져옵니다.

필드네임중 PTIE_CHKT3 출근시간 PTIE_CHKT4 퇴근시간 해서
시간값이 08:10:10 와 19:10:10 이런식으로 들어값니다. 데이터 다입은 TIME이구요 파라독스 디비를 사용 하였습니다.
두 값의 차이를 빼면 11:00:00 이잖아요 그런데 하루 근무시간이 8시간이다 하면 오늘 작업시간은 3시간 초과가 되는거지요 이 3시간 초과를 DB그리드에 출력할려구 하는데요 8시간이 않되면 '-' 붙구요 어떠게 해야 하는지 조언좀 부탁합니다. 님들의 많은 조언....부탁해요>>>>>>
1  COMMENTS
  • Profile
    강두헌 2002.03.28 00:00
    아무도 답을 하지 않아서.. 초보의 허접한 답변이라도..

    방법은 여러가지가 있을 수 있겠지요.
    DB에서 읽어올때 TDateTime으로 읽어 온다고 보고 말씀 드리지요.
    사용하시는 Delphi Version이 어떻게 되는지 모르겠는데요, 6(5부터 일지도)에서는 Time관련 함수가 무지하게 많이 생겼습니다. 정말 별의별 함수가 다 있어서 많이 편해졌지요. 이 경우라면 HoursBetween 이라는 함수를 사용하셔서 두 시각 사이의 시간을 구한 다음에.. Return값이 int64이니까 그냥 8을 빼면 될거구요.
    6(혹은 5)이하 version이라면 DecodeDateTime 함수를 이용해서 HoursBetween이란 함수를 만들어야 겠지요.
    그냥 말로만 설명 드려도 충분할거 같지만, 혹시 부족하시면 reply 또는 email보내시면 예제라도 만들어 드리지요.

    그럼