Q&A

  • 시간 입력시 오류가 발생합니다.
회사에서 근태에 관한 프로그램을 델파이로 만들어서 쓰고 있는데...
인정출퇴근 시간등록시 18:00시가 입력이 안되요,,
근데 이상한건 17:00시나 19:00시는 입력이 된다는 거죠..
이건 버그인가요,, 아님 코딩이 잘못 된건가요,,,
시간관련함수는  
In_End     :=  FormatDateTime('HH:MM:SS',End_Time1);  //인정퇴근시간
이렇게 설정되어 있거든요,,,,
혹시 아시는 분 있으시면 부탁드립니다...
제가 델파이를 시작한게 5개월도 채 안되거든요,,,,
그래서 아직 잘 모르는게 많습니다 ,,,
4  COMMENTS
  • Profile
    nilriri™ 2003.07.01 21:04
  • Profile
    김정모 2003.07.02 19:02
    In_End값은 없어여... 그 값은 우리가 임의로 넣어주는 겁니다..
    에러메세지 또한 Showmessage를 사용했기 때문에 에러내용 또한 알 수
    없습니다..
    쫌 황당한 얘기처럼 들리시겠지만 우리가 임의로 넣어주는 값이 잘못 된건지
    입력이 안 되네요,,,
    첨에 In_End 값은 00:00 시 입니다.
    질문에서 얘기했지만 이 In_End 값에 17:00시나 19:00시는 입력이 되는데
    18:00시만 입력이 안되요..
    이게 뭐가 문제인지 이해가 안 가서 질문드립니다.




  • Profile
    nilriri™ 2003.07.02 20:14
    샬롬~

    에거..제말은 그게 아니었는데..

    아래 보면..

    로직상 달랑 한줄만 가지고는..ㅡㅡ;

    End_Time1 이 변수에 데이터가 어떻게 들어가는건지요?

    물론 datetime형이긴 하겠죠? 아님..에러가 날테니깐요..

    근데..End_Time1 이값을 구할때 에러가 없었던건지 묻고 싶구요..

    showmessage(datetimetostr(end_time1));

    In_End     :=  FormatDateTime('HH:MM:SS',End_Time1);  //인정퇴근

    showmessage(ln_end);

    일케해서 확인도 한번 해보십시오..

    그리고 포맷문자에..HH:MM:SS도 점검을..

    이거 대소문자별로 틀리다는건 알고 계시겠죠?

    mm은 month를 나타내는걸로 알고 있습니다..

    시간은 nn 입니다..

    즐프~

  • Profile
    김정모 2003.07.10 02:04
    그럼 쉽게 설명을 드릴께요..
    폼에 maskedit가 2개가 있어여...
    하나에는 19:00(maskedit1)시를 입력하고
    또 다른 하나에는 18:00(maskedit2)시를 입력해요..
    그리고 나서,....확인 버튼을 누르면 밑의 계산식을 거쳐서 값이 나오거든요,,,
    jo := (strtotime(time_s) - strtotime(time_e)) * 24;
    그럼 계산값이 0.999999999999로 나오거든요,,...
    maskedit2에 18:30분을 입력하면 0.499999999가 나와요.
    근데 그외의 시간을 넣으면 1 또는 1.5 또는 2 이런식으로 값이 나오거든요,,,.
    왜 이 두 시간만 값이 0.9999999,  0.49999999 이렇게 나오는지 이해가 잘,,,,
    그래서 18:00 시하고  18:30분을 입력하면 에러가 나는지 그걸 잘 모르겠어여...
    참고로 jo는 real형입니다.