2016-05-31 4 views
2

명령을 보내는 문자 제한 (문자 수)은 무엇이며 어떻게 변경할 수 있습니까?Intersystems 캐시 스크립트 문자 제한

긴 명령을 실행해도 문자가 완전히 전송되지 않고 문자열 끝에 "S"가 추가됩니다 (문자열이 잘립니다) 변경 방법은/문자 수를 참조하십시오. 보낼 수있는?

스크립트

보내기 : WHERE ID를 ('1111111111', '1111111112', '1111111113', '1111111114'테이블에서 CC로 설정 TSQL = "SELECT COUNT (*), '1111111115 ','1111111116 ','1111111117 ','1111111118 ','1111111119 ','1111111120 ','1111111122 ', '1111111123', '1111111124 ', '1111111125', '1111111126 ', '1111111127' '1111111128', '1111111129', '1111111130', '1111111131', '1111111132', '1111111133') "

여기

내가 캐시 터미널에서 무엇을 얻을 :

WHERE ID IN ("1111111111", "1111111112", "1111111113", "1111111114", "1111111115", "1111111116", "1111111117"테이블에서 공통 AS 451,515,

세트 TSQL = "SELECT COUNT (*), '1111111119', '1111111120', '1111111120', '1111111122', '1111111123', '1111111124', '1111111125 ', '1111111126', '1111111127 ', '1111111128', '1111111129 ', '1111111130 ','111S

당신이 거기에 마지막으로 방법을 제한

답변

2

확실하지 구문 오류로 발생할 것의 커멘드를 추가 S,하지만 나는 그것을 말할 수있는, 당신이 당신의 긴 중 하나를 분할 할 수 있습니다시피 복수의 데이터로 send. 그리고 것이다 클리너 접근 방식은 메소드가있는 클래스를 생성하는 것입니다

send: Set tSql="SELECT count(*) AS cc FROM table WHERE id IN 
send: ('1111111111','1111111112','1111111113','1111111114','1111111115', 
send: '1111111116','1111111117','1111111118','1111111119','1111111120', 
send: '1111111121','1111111122','1111111123','1111111124','1111111125', 
send: '1111111126','1111111127','1111111128','1111111129','1111111130', 
send: '1111111131','1111111132','1111111133')" 
3

아래처럼 보이는 당신이 달성하고자하는 어떤의 구현을 포함하는 다음을 통해 호출 :

send: Do ##class*Package.Class).Method(Arguments)

및 필요한 매개 변수를 전달합니다.