자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다.
- 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)
Delphi DataSnap 구조에서 미들서버로 파라미터 보낼 때 생기는 문제
2016.09.03 09:09
본 게시판 사용시 당부 사항
* 이 게시판은 자유롭게 질문을 올리고 자발적으로 답변을 공유하는 게시판입니다.
* 어느 누구도 답변을 달아야만 하는 책임은 없습니다.
* 따라서 질문을 올리실 때에는 최대한 자세하고 정중하게 질문을 올려 주세요.
* 최대한 질문을 자세히 올려야 답변도 자세히 올라 옵니다.
* 본 질문에 답변을 주시는 여러 개발자님들께 미리 감사드립니다.
-----------------------------------------------------------------------------------------------
안녕하세요.
데브기어 김원경님의 저서인 델파이 Begin ... End(개정판)의 383쪽부터 387쪽을 변형할 때 생기는 문제
<서버쪽 작업>
1. 미들웨어(서버)에서 SqlConnection으로 데이터베이스에 연결
2. FDQuery와 DataSetProvider를 연결해 놓고 FDQuery의 SQL속성에 "Select * from insa where dept_code = :code"입력
3. FDQuery의 Params에 code 파라미터 설정되어 있는 것 확인
<클라이언트쪽 작업>
1. 데이터 모듈 폼에 SqlConnection, DsProvierConnection, ClientDataSet, DataSource, DBGrid 배치하고 서로 연결 확인까지 함
2. ClientDataSet의 팝업메뉴에서 "Fetch Params"하여 Params 속성에 code 매개변수 확인
3. 델파이 Begin ... End(개정판)의 383쪽부터 387쪽에는 DataSource컴포넌트의 DataChange 이벤트에
ClientDataSet2.Close;
ClientDataSet2.Params[0].AsString := ClientDataSet1.FieldbyName('code').asString;
ClientDataSet2.Open;
이라고 되어 있는 것을
변경할 필요가 있어
ClientDataSet2.Close;
ClientDataSet2.Params[0].AsString := Edit1.Text;
ClientDataSet2.Open;
로 바꾸고 위의 세 문장을 DataSource컴포넌트의 DataChange에 넣지 않고 버튼을 배치하고 Button1Click 이벤트에
넣고 실행하면 Edit1.text에 입력되어 있는 코드로 검색한 결과를 DBGrid에 보여주지 못합니다.
연결의 문제가 있나 해서 서버쪽의 FDquery의 SQL 속성에 "Select * from insa"라고 수정하고 테스트하면
insa정보를 DBGrid에 보여줍니다.
무엇때문에 이러한 일이 생기는 것일까요?
댓글 0
Delphi DataSnap 구조에서 미들서버로 파라미터 보낼 때 생기는 문제
2016.09.03 09:09
본 게시판 사용시 당부 사항
* 이 게시판은 자유롭게 질문을 올리고 자발적으로 답변을 공유하는 게시판입니다.
* 어느 누구도 답변을 달아야만 하는 책임은 없습니다.
* 따라서 질문을 올리실 때에는 최대한 자세하고 정중하게 질문을 올려 주세요.
* 최대한 질문을 자세히 올려야 답변도 자세히 올라 옵니다.
* 본 질문에 답변을 주시는 여러 개발자님들께 미리 감사드립니다.
-----------------------------------------------------------------------------------------------
안녕하세요.
데브기어 김원경님의 저서인 델파이 Begin ... End(개정판)의 383쪽부터 387쪽을 변형할 때 생기는 문제
<서버쪽 작업>
1. 미들웨어(서버)에서 SqlConnection으로 데이터베이스에 연결
2. FDQuery와 DataSetProvider를 연결해 놓고 FDQuery의 SQL속성에 "Select * from insa where dept_code = :code"입력
3. FDQuery의 Params에 code 파라미터 설정되어 있는 것 확인
<클라이언트쪽 작업>
1. 데이터 모듈 폼에 SqlConnection, DsProvierConnection, ClientDataSet, DataSource, DBGrid 배치하고 서로 연결 확인까지 함
2. ClientDataSet의 팝업메뉴에서 "Fetch Params"하여 Params 속성에 code 매개변수 확인
3. 델파이 Begin ... End(개정판)의 383쪽부터 387쪽에는 DataSource컴포넌트의 DataChange 이벤트에
ClientDataSet2.Close;
ClientDataSet2.Params[0].AsString := ClientDataSet1.FieldbyName('code').asString;
ClientDataSet2.Open;
이라고 되어 있는 것을
변경할 필요가 있어
ClientDataSet2.Close;
ClientDataSet2.Params[0].AsString := Edit1.Text;
ClientDataSet2.Open;
로 바꾸고 위의 세 문장을 DataSource컴포넌트의 DataChange에 넣지 않고 버튼을 배치하고 Button1Click 이벤트에
넣고 실행하면 Edit1.text에 입력되어 있는 코드로 검색한 결과를 DBGrid에 보여주지 못합니다.
연결의 문제가 있나 해서 서버쪽의 FDquery의 SQL 속성에 "Select * from insa"라고 수정하고 테스트하면
insa정보를 DBGrid에 보여줍니다.
무엇때문에 이러한 일이 생기는 것일까요?