page no.
콤마(,)가 포함된 값을 하나의 값으로 인식시키기 위해서는 콤마(,) 앞에 \\
(역슬래시)를 추가하여 해당 콤마(,)가 값에 포함되어 있음을 알려줄 수 있습니다.
예를 들어, 값 'A,B,C' 를 하나의 값으로 전달하려면 다음과 같이 콤마(,) 앞에 \\
를 붙여야 합니다.
예시:
이렇게 작성하면 A\\,B\\,C는 콤마(,)가 포함된 하나의 값으로 처리됩니다.
변수를 파라미터로 사용하는 경우
GlobalParam, Variable, TextBox 처럼 사용자가 값을 정의하여 사용할 수 있는 파라미터의 경우 콤마(,) 앞에 역슬래시(\\)를 추가해야 합니다.
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'라는 값을 선택했을 때 파라미터로 전달되는 방식은 다음과 같습니다.
SELECT T1.CODE FROM (SELECT 'A,B,C' AS CODE UNION ALL SELECT 'A' AS CODE UNION ALL SELECT 'B' AS CODE UNION ALL SELECT 'B,B,B' AS CODE) T1 WHERE T1.CODE IN ('A,B,C','A','B,B,B') -- 변수가 올바르게 바인딩 되어 있음을 확인 |
※ 사용자 스크립트에서 값을 가져오는 동작은 기존과 동일하게 수행되며, 콤마(,) 처리로 인한 별도의 조치가 필요하지 않습니다.
|
|