계층 선택 느낌 만들기

개요



참조 필드 선택에 따라 다른 선택 필드의 내용 변경

이 예에서는 "회사"참조 필드에서 선택한 자회사를 목록 수집기에서 선택할 수 있습니다.

구현



다음과 같이 참조형과 리스트 콜렉터의 변수를 정의한다.




변수 vrm_vendor_lookup의 onChange 스크립트
function onChange(control, oldValue, newValue, isLoading) {
    if (isLoading || newValue == '') {
        return;
    }

    var vendorGA = new GlideAjax('GetVendorLocations');
    vendorGA.addParam('sysparm_name', 'get_locations');
    vendorGA.addParam('sysparm_vendor_id', newValue);
    vendorGA.getXMLAnswer(function(answer) {
        var subsidiary  = JSON.parse(answer);
        g_form.setValue('vrm_new_satellite_existing_location', subsidiary);
    });
}

스크립트 포함
var GetVendorLocations = Class.create();
GetVendorLocations.prototype = Object.extendsObject(AbstractAjaxProcessor, {

    get_locations: function() {

        var locations = [];
        var vendorID = this.getParameter('sysparm_vendor_id');

        var satelliteOffice = new GlideRecord('core_company');
        satelliteOffice.addQuery('parent.sys_id', vendorID);
        //satelliteOffice.addQuery('vendor', true);
        satelliteOffice.query();
        gs.log('Denis has this ID ' + vendorID);
        while (satelliteOffice.next()) {

            locations.push(satelliteOffice.sys_id.toString());
        }
        return JSON.stringify(locations);
    },

    type: 'GetVendorLocations '
});

위의 코드를 구현하면 다음과 같이 자회사가 목록 콜렉터로 선택된다.

그러나 사용자는 아직 등록된 모든 회사를 선택할 수 있습니다.


자회사만 선택 가능하게 하려면 Reference qualifier를 지정한다.


지정하면 자회사만 선택 가능하게 된다.

좋은 웹페이지 즐겨찾기