동시에 여러 변수에 쓰기
- 업데이트 날짜:2025-08-27
- 1분 (읽기 시간)
필요한 권한: VariableWrite
다음 포맷을 사용하여 process1의 variable1과 variable2를 업데이트합니다.
POST http://my_server:3580/nivariable/BatchWrite
POST JSON 데이터
[{
"Url"
: "ni.var.psp://localhost/process1/variable1", "Value"
: "false"
}, {
"Url"
: "ni.var.psp://localhost/process1/variable2", "Value"
: "\"this is a new string value\""
}]
POST XML 데이터
<?xml version="1.0" encoding="utf-8"?>
<BatchWriteArguments>
<BatchWriteArgument>
<Url>ni.var.psp://localhost/process1/variable1</Url>
<Value>false</Value>
</BatchWriteArgument>
<BatchWriteArgument>
<Url>ni.var.psp://localhost/process1/variable2</Url>
<Value>this is a new string value</Value>
</BatchWriteArgument>
</BatchWriteArguments>
변수에 쓰기가 모두 성공하면 서버는 다음 응답을 반환하며 이 응답의 응답 본문은 빈 배열로 이루어져 있습니다:
HTTP/1.1 200 OK
응답 본문(JSON)
[]
응답 본문(XML)
<?xml version="1.0" encoding="utf-8"?>
<BatchWriteErrors>
</BatchWriteErrors>
한 개 이상의 변수 쓰기에 실패하는 경우, 응답은 다음과 같은 에러 설명을 포함합니다. 예를 들어, variable2에 쓰지 못한 경우, 서버는 다음을 반환합니다:
HTTP/1.1 200 OK
응답 본문(JSON)
[{
"Url"
: "ni.var.psp://localhost/process1/variable2", "Error"
: {
"code"
: "", "message"
: {
"lang"
: "en-us", "value"
: "ni.var.psp://localhost/process1/variable2 is not writable"
}
}]
응답 본문(XML)
<?xml version="1.0" encoding="utf-8"?>
<BatchWriteErrors>
<BatchWriteError>
<Url><ni.var.psp://localhost/process1/variable2</Url>
<error xmlns="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata">
<code>0</code>
<message xml:lang="en-US">"ni.var.psp://localhost/process1/variable2 is not writable"</message>
</error>
</BatchWriteError>
</BatchWriteErrors>
노트 각 배치는 선택한 모든 쓰기 가능한 변수에 쓰고, 모든 쓰기 시도 실패에 대한 에러를 반환합니다. 쓰기 시도에 한번 실패해도 배치 쓰기 전체가 정지되지는 않습니다.