자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다.
- 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)
Delphi SimpleDataSet 오류
2012.05.18 01:04
오류내용 " SimpleDataSet2: Missing data provider or data packet. "
일반적으로 어떤상황에서 생기는지요??
혹시 광범위하다면,, 낭패지만,,그럼 일단 상황을 최대한 간단히 적어보겠습니다.
=================================================
SimpleDataSet2.Active := False;
SimpleDataSet2.Close;
SimpleDataSet2.Dataset.Close;
...... 쿼리내용 실행.. DB에 이미지 삽입
SimpleDataSet2.Execute;
SimpleDataSet2.Active := True;
.... 워드에 DB전달하고 preview
==================================================
버튼을 첫번째 실행한 것은 그림도 잘전달되고 워드화면이 떴으나,
두번째 버튼을 클릭할때 에러가 발생하였습니다.
그래서 몇가지 살펴보니,
SimpleDataSet2.Active := True;
이전에 여러번 문장들을 추가해도 잘 작동했으나,
이후에 다시
SimpleDataSet2.Active := False;
SimpleDataSet2.Close;
로 시작해서 쿼리문장들 넣으면 에러가 발생합니다.
문제위치 SimpleDataSet2.Active := True; 후 인듯.
그래서 한가지
SimpleDataSet2.Active 와 SimpleDataSet2.Close;를 제어하는 문장은 삭제하고,
다음과 같이 했더니 에러없이 여러번 실행은 되나, 그림 삽입이 젤처음 열었던 그림만 들어갑니다.
DB에 변경되는 그림삽입된 것은 Data Explorer로 확인했구요..
SimpleDataSet2.Dataset.Close;
....쿼리문
SimpleDataSet2.open;
=============
상황전달이 잘 될지는 모르겠는데요,
에러 내용만 보시고 , SimpleDataSet 사용 방법에 문제가 있어서 그런거면,,
금방 알려주실 수도 있을 것 같아서 질문드립니다~~
댓글 3
-
양현숙
2012.05.18 02:06
-
관리자
2012.05.18 02:08
앞에 수행 했던 SQL은 잘되는데 이후에 수행하는 SQL을 넣었을때 문제가 생긴다는 말씀인가요?
그렇다면 SQL 구문에 문제가 있을 가능성이 제일 많아 보입니다.
SQL구분을 잘 살펴 보시면 좋을것 같습니다. 혹시 그게 아니라면 다시 알려 주세요 ^_^
-
양현숙
2012.05.18 02:53
위에 댓글 달았듯이 해결했습니다...
이후에도 똑같은 내용의 SQL을 넣었었어요.. ㅎㅎ
일단 해결은 close, open, refresh 순서로 해서 했습니다~~
답변 감사드립니다.
Delphi SimpleDataSet 오류
2012.05.18 01:04
오류내용 " SimpleDataSet2: Missing data provider or data packet. "
일반적으로 어떤상황에서 생기는지요??
혹시 광범위하다면,, 낭패지만,,그럼 일단 상황을 최대한 간단히 적어보겠습니다.
=================================================
SimpleDataSet2.Active := False;
SimpleDataSet2.Close;
SimpleDataSet2.Dataset.Close;
...... 쿼리내용 실행.. DB에 이미지 삽입
SimpleDataSet2.Execute;
SimpleDataSet2.Active := True;
.... 워드에 DB전달하고 preview
==================================================
버튼을 첫번째 실행한 것은 그림도 잘전달되고 워드화면이 떴으나,
두번째 버튼을 클릭할때 에러가 발생하였습니다.
그래서 몇가지 살펴보니,
SimpleDataSet2.Active := True;
이전에 여러번 문장들을 추가해도 잘 작동했으나,
이후에 다시
SimpleDataSet2.Active := False;
SimpleDataSet2.Close;
로 시작해서 쿼리문장들 넣으면 에러가 발생합니다.
문제위치 SimpleDataSet2.Active := True; 후 인듯.
그래서 한가지
SimpleDataSet2.Active 와 SimpleDataSet2.Close;를 제어하는 문장은 삭제하고,
다음과 같이 했더니 에러없이 여러번 실행은 되나, 그림 삽입이 젤처음 열었던 그림만 들어갑니다.
DB에 변경되는 그림삽입된 것은 Data Explorer로 확인했구요..
SimpleDataSet2.Dataset.Close;
....쿼리문
SimpleDataSet2.open;
=============
상황전달이 잘 될지는 모르겠는데요,
에러 내용만 보시고 , SimpleDataSet 사용 방법에 문제가 있어서 그런거면,,
금방 알려주실 수도 있을 것 같아서 질문드립니다~~
댓글 3
-
양현숙
2012.05.18 02:06
-
관리자
2012.05.18 02:08
앞에 수행 했던 SQL은 잘되는데 이후에 수행하는 SQL을 넣었을때 문제가 생긴다는 말씀인가요?
그렇다면 SQL 구문에 문제가 있을 가능성이 제일 많아 보입니다.
SQL구분을 잘 살펴 보시면 좋을것 같습니다. 혹시 그게 아니라면 다시 알려 주세요 ^_^
-
양현숙
2012.05.18 02:53
위에 댓글 달았듯이 해결했습니다...
이후에도 똑같은 내용의 SQL을 넣었었어요.. ㅎㅎ
일단 해결은 close, open, refresh 순서로 해서 했습니다~~
답변 감사드립니다.
아... 교육받고왔어서 예제들 가지고 이것저것 해보다가 성공했습니다.
SimpleDataSet2.Dataset.Close;
....쿼리문
SimpleDataSet2.open;
SimpleDataSet2.refresh;
.....워드 프리뷰
refresh 마지막에 추가했더니, 여러번 실행해도 에러가 안나네요~~
드디어, 워드에 차트의 그림을 삽입하는 방법을 완료했습니다..
그런데 직접 삽입은 못하고, DB에 넣었다가 그것을 워드에 불러오는 방법으로 해결했습니다.
그림이 직접 들어가는것은 없을려나요. 미련이 조금 남지만,, DB사용이 답인듯하네요~
어차피 다른 변수값들도 DB에 저장된것을 불러와서 표시하니까요..