Delphi Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
델파이 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
FreePascal/Lazarus
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

델파이 Q&A
Delphi Programming Q&A
[12951] Re:datasnap 을 통해 전송된 tdataset 데이터를 grid 에 어떻게 뿌릴수 있나요?
권익수 [] 1880 읽음    2009-11-06 05:04
질문내용이 정확히 파악되지는 않지만... 대충 ClientDataSet 두개가 있고 하나에서만 Open한 다음 다른 ClientDataSet으로 데이타를 넘기려고 하는거죠?
만약 그런거라면 이렇게 해보세요.

// CDSDetail: Open한 원본 ClientDataSet
// CDSTmp: Data를 넘겨받을 ClientDataSet
var
  l_Data: TMemoryStream;
begin
  if CDSTmp.Active then CDSTmp.Close;

  l_Data := TMemoryStream.Create;
  try
    CDSDetail.SaveToStream(l_Data);
    CDSTmp.LoadFromStream(l_Data);
  finally
    l_Data.Free;
  end;


섹시가이 님이 쓰신 글 :
: 델파이 2009 이상에서 상황은 이렇습니다.
:
: 콤포넌트는 DataSetProvider1 <- ClientDataSet1 <- DataSource1 <- Grid1 형태이며, 소스는
:
: cd := proxy.GetCustomers(); // tdataset 데이터로 넘오옵니다.
: // 아래는 이상없이 데이터를 출력해 줍니다.
: while not cd.eof do
: begin
:    Memo1.Lines.add(cd.Fields[0].AsString+' : '+cd.Fields[1].AsString);
:    cd.Next;
: end;
:
: // 이제 문제의 grid 로 넘기는 부분입니다.
: DataSetProvider1.DataSet := cd; // <- 이렇게 넘기면 안되는듯 합니다만..
: if not ClientDataSet1.Active then
:    ClientDataSet1.Open
: else
:    ClientDataSet1.Refresh;
:
: 설명이 좀 장황한거 같습니다. ^^;
:
: 결론적으로 제가 알고자 하는건 tdataset 데이터를 콤포넌트로 넘기지 않고 타이핑으로 grid 에 출력하는 방법입니다.
:
: 감사합니다. :)

+ -

관련 글 리스트
12945 datasnap 을 통해 전송된 tdataset 데이터를 grid 에 어떻게 뿌릴수 있나요? 섹시가이 1425 2009/10/28
12951     Re:datasnap 을 통해 전송된 tdataset 데이터를 grid 에 어떻게 뿌릴수 있나요? 권익수 1880 2009/11/06
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.