자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다.
- 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)
Delphi ClientDataSet AsString Size 문의
2018.02.19 17:02
본 게시판은 개발자들이 자유롭게 질문과 답변을 공유하는 게시판입니다.
* 따라서 최대한 정중하게 질문을 올려 주세요.
* 질문을 상세히 작성해 주실 수록 좋은 답변이 올라 옵니다.
* 다른 분들도 참고할 수 있도록 결과 댓글 필수(또는 감사 댓글)
(결과 댓글을 달지 않는 경우 다음 질문에 대한 답변이 달리지 않는 불이익이 있을 수 있습니다.)
-----------------------------------------------------------------------------------------------
안녕하세요
ClientDataSet를 RESTDataSetAdapater에 연결하여 JSON file을 받아서 처리합니다.
아래경우 RESTResponseDataSetAdapter.RootElement := 'desc'; 로 지정
여러 다른 호출을 한 ClientDataSet를 사용하다보니 ClientDataSet에 Field를 정의 하고 사용하지는 않고 JSON 에서 지정된 대로 사용합니다.
JSON에서 255가 넘는 경우
ClientDataSet.FieldByName('content').AsString 으로 처리가 불가능 합니다.
ShowMessage ( ClientDataSet.FieldByName('content').AsString ) ; 하면 255 자 이후가 짤려스 들어 옵니다.
처리 가능한 방법을 문의 드립니다.
content 의 파일 내용
{
"name": "test",
"desc": [
{
"subject": "카드 할인",
"content": [
{
"question": "A 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "B 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "C 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "D 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "E 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "F 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "G 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "H 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "I 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "J 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "K 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "L 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "M 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "N 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "O 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "P 카드 할인이 있나요라고 문의 합니다. "
}
]
}
]
}
Delphi ClientDataSet AsString Size 문의
2018.02.19 17:02
본 게시판은 개발자들이 자유롭게 질문과 답변을 공유하는 게시판입니다.
* 따라서 최대한 정중하게 질문을 올려 주세요.
* 질문을 상세히 작성해 주실 수록 좋은 답변이 올라 옵니다.
* 다른 분들도 참고할 수 있도록 결과 댓글 필수(또는 감사 댓글)
(결과 댓글을 달지 않는 경우 다음 질문에 대한 답변이 달리지 않는 불이익이 있을 수 있습니다.)
-----------------------------------------------------------------------------------------------
안녕하세요
ClientDataSet를 RESTDataSetAdapater에 연결하여 JSON file을 받아서 처리합니다.
아래경우 RESTResponseDataSetAdapter.RootElement := 'desc'; 로 지정
여러 다른 호출을 한 ClientDataSet를 사용하다보니 ClientDataSet에 Field를 정의 하고 사용하지는 않고 JSON 에서 지정된 대로 사용합니다.
JSON에서 255가 넘는 경우
ClientDataSet.FieldByName('content').AsString 으로 처리가 불가능 합니다.
ShowMessage ( ClientDataSet.FieldByName('content').AsString ) ; 하면 255 자 이후가 짤려스 들어 옵니다.
처리 가능한 방법을 문의 드립니다.
content 의 파일 내용
{
"name": "test",
"desc": [
{
"subject": "카드 할인",
"content": [
{
"question": "A 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "B 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "C 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "D 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "E 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "F 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "G 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "H 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "I 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "J 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "K 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "L 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "M 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "N 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "O 카드 할인이 있나요라고 문의 합니다. "
},
{
"question": "P 카드 할인이 있나요라고 문의 합니다. "
}
]
}
]
}
RESTResponseDataSetAdapter에서는 JSON 데이터를 분석해 데이터셋 필드를 자동 생성합니다.
문자열(ftString, ftWideString) 필드의 경우 크기(Size)의 기본값이 255로 지정되어 255가 넘는 데이터는 유실 될 수 있습니다.
만약 255가 넘는 데이터의 경우 명시적으로 문자열 필드의 크기(Size)를 지정해야 합니다.
——————
답글이 도움이 되셨는지 다른 분들도 참고할 수 있도록 결과 댓글 부탁드립니다.
(결과 댓글이 없는 경우 다른 질문에 대한 답변이 달리지 않는 불이익이 있을 수 있습니다.)