Q&A

  • 에러가 났는데 이유를 모르겠어요.
안녕하세요. 저는 강민정이라고 하고 델파이를 다룬지 얼마 안되서 모르는 것이

너무 많습니다. 제발 도와주세요~

지금 짜고 있는 프로그램은 명함관리 프로그램인데 그 중에서 우편번호를 불러오는 프로시져에서 에러가 났습니다.

이 프로시져의 역할은 우편번호를 검색한 다음 OK버튼을 누르면 처음 우편번호를 검색했던 폼으로 돌아가 우편번호와 해당 주소를 입력하는 것입니다.

그런데 우편번호를 부르는 폼이 3개나 되서 어느 폼이 이 프로시져를 불렀는지

구별하기 위해서 flag를 두었고 각 폼에서 우편번호를 부를때 flag를 true를 시킨후 우편번호 폼에서 Ok를 누르면 어느 flag가 true인지 확인해서 해당 폼으로 자료를 넘기게 하고 싶었습니다.

그런데 실행을 시켜보면 멘처음에 있는 "frm_private.zipFalgHP와 ZipFlafCP"

를 사용했을때는 에러가 안나는데 나머지 부분에서는 Accedd Violation 에러가 납니다. 도대체 이유를 모르겠어요..

흑흑.. 델파이 왕초보라 모르는 것이 너무 많습니다. 제발 도와주세요..



코딩은 다음과 같습니다.



==========================================================================



procedure Tfrm_zip.btn_OKZClick(Sender: TObject);

begin

if frm_private.zipFlagHP = True then

begin

frm_private.add_hZipP.Text := DBEdt_PostNo.Text;

frm_Private.zipFlagHP := False;

btn_ExitZClick(sender);

frm_private.add_haddrP.text := DBEdt_Addr.Text;

end

else if frm_private.zipFlagCP = True then

begin

frm_private.add_cZipP.Text := DBEdt_PostNo.Text;

frm_Private.zipFlagcP := False;

btn_ExitZClick(sender);

frm_private.add_caddrP.text := DBEdt_Addr.Text;

end

else if frm_work.zipFlagCW = True then

begin

frm_work.add_cZipW.Text := DBEdt_PostNo.Text;

frm_work.zipFlagcW := False;

btn_ExitZClick(sender);

frm_work.add_caddrW.text := DBEdt_Addr.Text;

end

else if frm_work.zipFlagHW= True then

begin

frm_work.add_hZipW.Text := DBEdt_PostNo.Text;

frm_work.zipFlagHW := False;

btn_ExitZClick(sender);

frm_work.add_haddrW.text := DBEdt_Addr.Text;

end;

end;



1  COMMENTS
  • Profile
    rain 1999.04.30 02:09
    Form만 불러오는 소스를 가지고는 어떤 에러인지는 정확히 모르겠습니다. 물론 모든 소스를 보여달라는 것은 아닙니다.

    혹시 우편번호폼을 불러들이는 다른 폼들에서 TTable 컴퍼넌트를 사용하고 있지는 않은지요..? 그리고 우편번호를 불러들이는 폼에서 사용하는 데이터 컨트롤이 TTable, TDBEdit, TDBGrid 등이 아닌지요..?

    만약 TTable을 사용하여 작업을 하고 계신다면 각 폼이 테이블을 참조할때마다, 즉 테이블에서 값을 읽어오는 작업을 통해 데이터베이스의 커서를 이동시키는 작업을 수행하게 된다면 폼 이동시마다 TTable의 Open, Close, Reflesh 이벤트를 적절하게 사용하실 필요가 있습니다. TTable 컴퍼넌트는 여간 귀찮은 게 아니거든요. 그래서 Query 컴퍼넌트 사용을 권합니다. SQL을 따로 공부해야 하는 필요가 있지만, TTable 컴퍼넌트 보다는 훨씬 편하고 여러가지 다양한 작업도 수행할 수 있습니다.



    아마, Form1에서 Table1을 사용하고, Table 검색을 통해 데이터를 읽었다면, Form2로 넘어가서 작업할때는 Table1을 Close, Open, Refresh 하셔야 할겁니다. 물론 Refresh만 하셔도 되지만, 더욱 정확성을 기하기 위해서 입니다.



    찾아보시면 더욱 좋은 방법이 있을 겁니다. 저는 Table 컴퍼넌트를 사용해본지가 하도 오래되나서...죄송합니다.

    • 박진아
    • 1999.05.01 02:39
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      1999.05.01 03:55
      박진아 wrote: > Form1 에서 Form2를 호출할때 이런 에러 메세지가 떠서요. > EDBEngineError 가 발생했...
    • 강신구
    • 1999.04.30 22:35
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 신인재
      1999.05.01 00:00
      음냐 제가 잘못 이해 했군요.... 일딴 Enabled를 True로 주고 Options의 goEditing은 false 로 주세...
    • 배재민
    • 1999.04.30 20:55
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 신인재
      1999.04.30 21:37
      음냐.... 일딴 LAN환경이라면 하드웨어적인 환경은 충족이 된상태이고 마이다스를 이용하신다면 소...
    • 배재민
      1999.04.30 22:00
      Delphi4를 이용하는데 BDE dirIDPROV32.DLL이 존재하지 않습니다. 위의 파일은 어떻게 해야 얻을 수 ...
    • 신인재
      1999.04.30 23:13
      분명히 BDE dirIDPROV32.DLL 은 있어야 합니다. 델파이 CD로 BDE부분만 다시 깔아 보세요... 하이텔 Vtoo...
    • 강신구
    • 1999.04.30 19:04
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 신인재
      1999.04.30 19:49
      프로퍼티에 보면 Fixedcols, FixedRows가 있습니다 이것의 값을 0으로 바꾸어 주세요 그럼 원하시는 ...
    • 강지영
    • 1999.04.30 07:26
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 강지영
      1999.04.30 22:09
      강지영 wrote: > 그리드에 자리수 콤마찍기를 가르쳐주신 함수를 사용해서 적용을 했습니다. > DBgridDra...
    • 글쎄요.
      1999.04.30 23:29
      제가 자세히 안 보고 답변을 했네요. 필드명으로 걸러내실려면 DBgridDrawDataCell event에서가 아니라 DB...
    • 글쎄요.
      1999.04.30 19:26
      강지영 wrote: > 그리드에 자리수 콤마찍기를 가르쳐주신 함수를 사용해서 적용을 했습니다. > DBgridDra...
    • 첩현
    • 1999.04.30 05:51
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.04.30 07:20
      첩현 wrote: > 안녕하세요... > > 트레이의 시계처럼 아이콘 대신 문자를 > > 넣어서 문자를 계속해...
    • 강지영
    • 1999.04.30 03:32
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      1999.04.30 03:56
      강지영 wrote: > dbgrid에 자리점을 찍으래요.. > 1,000,000 이런식으로요.. 흑.. > 어디선가 본것 같기...
    • 강지영
      1999.04.30 04:22
      창민님 감사합니다. 저에게는 너무나도 큰 도움입니다.. 든든하네요... 저도 빨리 무럭무럭 자라서 창민...
    • whitekid
    • 1999.04.30 03:02
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      1999.04.30 03:50
      whitekid wrote: > 제목 그대로 BDE의 버전을 체크하려고 합니다. > > 단 BDE API는 안쓰고.. 즉 BDE가...
    • 유민호
    • 1999.04.30 02:38
    • 2 COMMENTS
    • /
    • 0 LIKES
    • saxoji
      1999.05.01 00:41
      2-tier or 3-tier 환경으로의 programing시 자료형 중 variant가 있는 것이 아닌지? 이경우는 olevariant...
    • 신인재
      1999.04.30 20:39
      음냐...글쎄요 이런 문제는 서버쪽을 유심히 살펴 보아야 할꺼 같은데요.. 우선 서버쪽 프로그램을 고친후...
    • 김인묵
    • 1999.04.30 02:24
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      1999.04.30 03:47
      김인묵 wrote: > 정보처리 기사 및 기능사 시험중 > 델파이 실기를 선택하였는데 실기시험은 어떻게 보...
    • 이호선
    • 1999.04.29 23:52
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.04.30 00:39
      이호선 wrote: > 안녕하세요. > xor연산을 써서 해볼려 했는데 Error가 나더군요 > 제가 작성한 코드는 ...
    • 전철호
      1999.04.30 01:06
      안치봉 wrote: > 이호선 wrote: > > 안녕하세요. > > xor연산을 써서 해볼려 했는데 Error가 나더군요 ...
    • 안명호
    • 1999.04.29 23:36
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김영대
      1999.04.29 23:48
      안명호 wrote: > 윈도우즈 소켓 프로그래밍에 대한 자료를 찾고 있습니다. > 소장하고 계신 분 있으시면 ...
    • 문창완
    • 1999.04.29 23:02
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      1999.04.30 03:44
      문창완 wrote: > > 바코드 쿠현에 대해 궁금합니다. > 그것에 대해 강좌나 설명을 부탁합니다. > 그리...
    • 안치봉
      1999.04.30 00:42
      문창완 wrote: > > 바코드 쿠현에 대해 궁금합니다. > 그것에 대해 강좌나 설명을 부탁합니다. > 그리...
    • 이호선
    • 1999.04.29 21:29
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 전철호
      1999.04.29 23:08
      이호선 wrote: > 안녕하세요. > c에서 Character = Character ^ 0xff 를 하여 bitwise-exclusive-or를 ...
    • 양병희
    • 1999.04.29 20:48
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.04.30 00:45
      양병희 wrote: > 컴파일시에는 error이 없었는데 > 실행을 시키면 'A Win32 API function failed'라는 오...
    • 강민정
    • 1999.04.29 20:45
    • 1 COMMENTS
    • /
    • 0 LIKES
    • rain
      1999.04.30 02:09
      Form만 불러오는 소스를 가지고는 어떤 에러인지는 정확히 모르겠습니다. 물론 모든 소스를 보여달라는 것...