page no.
Showpageid |
---|
- 기능 설명
- 콤마(,)가 포함된 값의 문제점
i-AUD7 에서는 콤마(,) 를 값의 구분자로 사용하고 있습니다.
따라서 값에 'A,B,C' 처럼 콤마(,)가 포함되어 있는 경우, 이를 세 개의 값(A, B, C) 으로 인식할 수 있습니다.
이를 방지하기 위해 콤마(,)를 값의 일부로 인식하도록 하는 별도의 처리가 필요합니다. - 콤마(,)가 포함된 값을 처리하는 방법
콤마(,)가 포함된 값을 하나의 값으로 인식시키기 위해서는 콤마(,) 앞에
\\
(역슬래시)를 추가하여 해당 콤마(,)가 값의 일부임을 알려줄 수 있습니다.예를 들어, 값 'A,B,C' 를 하나의 값으로 전달하려면 다음과 같이 콤마(,) 앞에
\\
를 붙여야 합니다.예시:
- 잘못된 값 전달: A,B,C
- 올바른 값 전달: A\\,B\\,C
이렇게 작성하면 A\\,B\\,C는 콤마(,)가 포함된 하나의 값으로 처리됩니다.
- 콤마(,)가 포함된 값의 문제점
- 파라미터 처리 방법
변수를 파라미터로 사용하는 경우
GlobalParam, Variable, TextBox 처럼 사용자가 값을 정의하여 사용할 수 있는 파라미터의 경우 콤마(,) 앞에 역슬래시(\\)를 추가해야 합니다.코드 블럭 language js firstline 1 title 예제 코드 linenumbers true var value = 'A,B,C' // 콤마(,)가 포함된 값 var resultValue = value.split(',').join('\\,'); // 콤마(,) escape 처리한 값 ( A\\,B\\,C ) // GlobalParam Matrix.AddGlobalParams('VS_EX_GLOBALPARAM', resultValue, 1 /* string */); // Variable Matrix.SetVariable('VS_EX_VARIABLE', resultValue); // TextBox 를 파라미터로 사용하는 경우 Matrix.getObject('VS_TextBox').Text = resultValue;
ComboBox, MultiComboBox, PickList 를 파라미터로 사용하는 경우 (별도의 처리가 필요하지 않습니다)
각 컨트롤에서 값 목록에서 'A,B,C'라는 값을 선택했을 때 파라미터로 전달되는 방식은 다음과 같습니다.
코드 블럭 language sql firstline 1 title 생성된 쿼리 linenumbers true SELECT T1.CODE FROM (SELECT 'A,B,C' AS CODE UNION ALL SELECT 'A' AS CODE UNION ALL SELECT 'B,B,B' AS CODE) T1 WHERE T1.CODE IN ('A,B,C') -- 변수가 올바르게 바인딩 되어 있음을 확인
※ 사용자 스크립트에서 값을 가져오는 동작은 기존과 동일하게 수행되며, 콤마(,) 처리로 인한 별도의 조치가 필요하지 않습니다.
참고사항 | ||||||
---|---|---|---|---|---|---|
| ||||||
|
기능 정보 |
|
|
|
|
|
|
|
---|---|---|---|---|---|---|---|
시작 버전 정보 |
페이지 속성 | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||
|
- 콤마가 포함된 값을 반드시 하나의 값으로 전달해야 하는 경우 모든 콤마 앞에
\\
(역슬래시)를 추가하여야 합니다.