CIRelatedList - 전역
CIRelatedList 스크립트 포함은 CI(구성 항목) 관련 목록을 작업하기 위한 메서드를 제공하는 유틸리티 클래스입니다.
이 스크립트 포함의 각 인스턴스에는 특정 CI와 관련된 단일 목록의 세부 정보가 포함되어 있습니다. 이 목록의 상세 정보와 목록의 내용이 포함되어 있습니다.
모든 서버 측 검색 스크립트와 함께 사용합니다.
CIRelatedList - addRec(객체 기록)
관련 목록에 지정된 기록을 추가합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 기록 | 객체 | 개체의 각 멤버는 연결된 테이블의 열 이름입니다. 예를 들어 cmdb_serial_number 테이블을 참조하는 경우 이 값에는 다음과 유사한 내용이 포함될 수 있습니다.
|
| 유형 | 설명 |
|---|---|
| void |
이 예시는 CI 관련 목록에 기록을 추가하는 방법을 보여줍니다.
var ciDataObj = new CIData(); // Instantiate a new CIData class object
// sys_id of the CI to which the related list is attached.
var rl = new CIRelatedList('cmdb_serial_number', 'cmdb_ci','0c43b0f5c6112275019abd2bb3dcd78f','true');
// Create an object and add the serial numbers
var sr = {"serial_number_type":"bios","serial_number":"1BC5E4z89246","valid":"true"};
rl.addRec(sr); // Add the related list. Sets the given records to the related list.
ciDataObj.addRelatedList(rl); // Adding the related list to the cidata
gs.info(JSON.stringify(rl, null, 4)); // Display the added related list
출력:
{
"GlideRecordUtil": {},
"ignoreFields": {
"sys_created_by": true,
"sys_updated_by": true,
"sys_mod_count": true
},
"records": [
{
"serial_number_type": "bios",
"serial_number": "1BC5E4z89246",
"valid": "true"
}
],
"m2m_records": [],
"table_name": "cmdb_serial_number",
"field_name": "cmdb_ci",
"cmdb_ci": "0c43b0f5c6112275019abd2bb3dcd78f",
"debug_flag": "true",
"isM2M": false,
"target_table_name": null,
"target_ref_field_name": null
}
CIRelatedList - addRecs(배열 기록)
제공된 기록을 관련 목록으로 설정합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 기록 | 객체 배열 | 각 개체는 연결된 테이블의 기록을 나타냅니다. 개체의 각 멤버는 해당 테이블의 열 이름입니다. 예를 들어 cmdb_serial_number 테이블을 참조하는 경우 이 값에는 다음과 유사한 내용이 포함될 수 있습니다.
|
| 유형 | 설명 |
|---|---|
| void |
이 예는 CI 관련 목록에 여러 기록을 추가하는 방법을 보여줍니다.
var ciDataObj = new CIData(); // Instantiate a new CIData class object
// sys_id of the CI to which the related list is attached.
var rl = new CIRelatedList('cmdb_serial_number', 'cmdb_ci','0c43b0f5c6112275019abd2bb3dcd78f','true');
// Create an object and add the serial numbers
var sr = [{"serial_number_type":"bios","serial_number":"1BC5E4z89246","valid":"true"},{"serial_number_type":"baseboard","serial_number":"w4z89246","valid":"true"}];
rl.addRecs(sr); // Add the related list. Sets the given records to the related list.
ciDataObj.addRelatedList(rl); // Adding the related list to the cidata
gs.info(JSON.stringify(rl, null, 4)); // Display the added related list
출력:
{
"GlideRecordUtil": {},
"ignoreFields": {
"sys_created_by": true,
"sys_updated_by": true,
"sys_mod_count": true
},
"records": [
{
"serial_number_type": "bios",
"serial_number": "1BC5E4z89246",
"valid": "true"
},
{
"serial_number_type": "baseboard",
"serial_number": "w4z89246",
"valid": "true"
}
],
"m2m_records": [],
"table_name": "cmdb_serial_number",
"field_name": "cmdb_ci",
"cmdb_ci": "0c43b0f5c6112275019abd2bb3dcd78f",
"debug_flag": "true",
"isM2M": false,
"target_table_name": null,
"target_ref_field_name": null
}
CIRelatedList - appendXMLChildFld(문자열 상위, 문자열 이름, 문자열 데이텀)
필드에 XML 하위 항목을 추가합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 상위 | 문자열 | 상위 요소 |
| 이름 | 문자열 | 요소 이름 |
| 데이텀 | 문자열 | 추가할 데이터 |
| 유형 | 설명 |
|---|---|
| void |
CIRelatedList - appendXMLChildRecord(문자열 상위, 문자열 이름, 문자열 기록)
XML 하위 항목을 기록에 추가합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 상위 | 문자열 | 상위 요소 |
| 이름 | 문자열 | 요소 이름 |
| 기록 | 문자열 | 기록 |
| 유형 | 설명 |
|---|---|
| void |
CIRelatedList - checkSysCollection()
이 테이블이 SysCollection 테이블인지 확인합니다. 이 경우 대상 테이블 이름과 참조 필드 이름을 설정합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| CIRelatedList | 지정된 목록에 대한 CIRelatedList의 인스턴스입니다. |
CIRelatedList - checkSysM2M()
이 테이블이 시스템 다대다 테이블인지 확인합니다. 이 경우 대상 테이블 이름과 참조 필드 이름을 설정합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 부울 | sys 다대다 테이블인 경우 True입니다. 그렇지 않으면 false입니다. |
CIRelatedList - CIRelatedList(문자열 테이블, 문자열 refField, 문자열 cmdb_ci, 문자열 debugFlag)
CIRelatedList 클래스의 인스턴스를 만듭니다. 인수가 없으면 빈 인스턴스를 생성하기만 하면 됩니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 테이블 | 문자열 | 관련 목록이 포함된 테이블입니다. 다대다인 경우 다대다 테이블입니다. |
| refField | 문자열 | 이 관련 목록에 대한 테이블의 참조 필드입니다. |
| cmdb_ci | 문자열 | 이 목록과 관련된 CI의 sys_id입니다. |
| 디버그 플래그 | 문자열 | true이면 디버그 로깅을 사용할 수 있습니다. |
CIRelatedList - fromXML(문자열 요소)
지정된 XML 요소에서 이 인스턴스를 초기화합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 요소 | 문자열 | XML 요소 |
| 유형 | 설명 |
|---|---|
| void |
CIRelatedList - populate()
이 인스턴스의 this.records 필드를 채웁니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| void |
CIRelatedList - toString(배열 결과)
이 인스턴스의 문자열 표현을 만들어 각 라인을 지정된 결과 배열의 끝으로 밀어 넣습니다.
이 메서드는 CIData.toString()에서 호출되며 관련 목록 줄이 두 칸 들여쓰기되어야 한다고 가정합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 결과 | 배열 | 변환할 결과 |
| 유형 | 설명 |
|---|---|
| void |
CIRelatedList - toXML(문자열 문서, 문자열 요소)
이 인스턴스를 지정된 문서 및 <rl> 요소의 XML로 직렬화합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 문서 | 문자열 | 문서 |
| 요소 | 문자열 | rl 요소 |
| 유형 | 설명 |
|---|---|
| void |
CIRelatedList - remove()
모든 관련 목록 항목을 제거합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| void |
이 코드 예제는 이름이 = *JEMPLOYEE-IBM인 CI 항목과 맵핑된 관련 레코드를 삭제합니다. 이 예는 M2M이 아닌 테이블에 대한 것입니다.
//Get a configuration item record which has a related list. Example: CI items with the name = *JEMPLOYEE-IBM.
var ciRecord = new GlideRecord("cmdb_ci_computer");
ciRecord.addQuery("name", "*JEMPLOYEE-IBM");
ciRecord.query();
if (ciRecord.next()) {
var relRecordTable = 'cmdb_ci_network_adapter'; // The table containing the related list (if many-to-many, the many-to-many table)
var relRecordField = 'cmdb_ci'; // The reference field in the table for this related list
var cmdb_ciHasRelRecord = ciRecord.sys_id; // The sys_id of the CI this list is related to.
var debugFlag = 'true'; // True if debug logging is enabled.
// Get the related record List
var CIRelatedList = new CIRelatedList(relRecordTable, relRecordField, cmdb_ciHasRelRecord, debugFlag);
CIRelatedList.remove(); // Delete all related records
}
CIRelatedList - xmlToRecord(문자열 레코드, 문자열 요소)
관련 목록을 XML에서 기록 형식으로 변환합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 기록 | 문자열 | 작성할 기록 |
| 요소 | 문자열 | XML 요소 |
| 유형 | 설명 |
|---|---|
| void |