첨부파일 제한
3242 단어 ServiceNow 작은 재료ServiceNow
개요
ServiceNow 전체에서 이용할 수 있는 첨부 파일의 확장자는 시스템 프로퍼티 「glide.attachment.extensions」로 제한할 수 있다. 또한 파일 크기 제한도 가능합니다.
htps : // / cs. 세레 ゔ 세세의 w. 코 m / 브 d ぇ / 파리 s p t t ぉ rm-d dmi에 st 라치 온 / 펑 / 아 d mi에 s r / 후 rm-d d에 st 라치 온 / sk / t_ぢさ bぃg gぇD 등 암 d로 p ふぇあつれ. HTML
인시던트 양식에 제한을 곱
그러나 인시던트 양식에만 제한을 걸거나 파일 수를 제한하는 경우는 다음과 같이 한다. (서비스 카탈로그에서는 제대로 작동하지 않습니다)
속성 만들기
첨부 파일 수를 제한하는 속성(ozawa.file.attachments.max)과 허용할 확장성(ozawa.file.attachments.ext)을 만듭니다.
양식의 클라이언트 스크립트
양식에 onSubmit() 스크립트 작성
function onSubmit() {
var ajax = new GlideAjax('CheckFileAttachments');
ajax.addParam('sysparm_name', 'validateAttachments');
ajax.addParam('sysparm_sys_id', g_form.getUniqueValue());
ajax.getXMLAnswer(function(answer) {
if (answer != "true") {
g_form.addErrorMessage('File attachments are illegal');
return false;
}
});
}
스크립트 포함
var CheckFileAttachments = Class.create();
CheckFileAttachments.prototype = Object.extendsObject(AbstractAjaxProcessor, {
validateAttachments: function() {
var extMax = gs.getProperty('ozawa.file.attachments.max');
var extList = gs.getProperty('ozawa.file.attachments.ext').split(',');
var incSysid = this.getParameter('sysparm_sys_id');
var gr = new GlideRecord('sys_attachment');
gr.addQuery('table_sys_id', incSysid);
gr.query();
if (gr.getRowCount() > extMax) {
return false;
}
while (gr.next()) {
var filename = gr.file_name;
var found = false;
for (var i = 0; i < extList.length; i++) {
if (filename.endsWith('.' + extList[i])) {
found = true;
break;
}
}
if (!found) {
return false;
}
}
return true;
},
type: 'CheckFileAttachments'
});
서비스 카탈로그에 제한을 걸기
서비스 카탈로그의 경우 포털에서 오류가 발생하지만 UI에서 다음 스크립트를 제한 할 수 있습니다.
서비스 카탈로그의 경우 속성과 스크립트 포함은 위와 동일하지만 클라이언트 스크립트가 다릅니다.
클라이언트 스크립트
function onSubmit() {
var ajax = new GlideAjax('CheckFileAttachments');
ajax.addParam('sysparm_name', 'validateAttachments');
ajax.addParam('sysparm_sys_id', g_form.getParameter("sysparm_item_guid"));
ajax.getXMLAnswer(function(answer) {
if (answer != "true") {
g_form.addErrorMessage('File attachments are illegal');
return false;
}
});
}
Reference
이 문제에 관하여(첨부파일 제한), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/htshozawa/items/2f84dee5a16c22eba6d6
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
그러나 인시던트 양식에만 제한을 걸거나 파일 수를 제한하는 경우는 다음과 같이 한다. (서비스 카탈로그에서는 제대로 작동하지 않습니다)
속성 만들기
첨부 파일 수를 제한하는 속성(ozawa.file.attachments.max)과 허용할 확장성(ozawa.file.attachments.ext)을 만듭니다.
양식의 클라이언트 스크립트
양식에 onSubmit() 스크립트 작성
function onSubmit() {
var ajax = new GlideAjax('CheckFileAttachments');
ajax.addParam('sysparm_name', 'validateAttachments');
ajax.addParam('sysparm_sys_id', g_form.getUniqueValue());
ajax.getXMLAnswer(function(answer) {
if (answer != "true") {
g_form.addErrorMessage('File attachments are illegal');
return false;
}
});
}
스크립트 포함
var CheckFileAttachments = Class.create();
CheckFileAttachments.prototype = Object.extendsObject(AbstractAjaxProcessor, {
validateAttachments: function() {
var extMax = gs.getProperty('ozawa.file.attachments.max');
var extList = gs.getProperty('ozawa.file.attachments.ext').split(',');
var incSysid = this.getParameter('sysparm_sys_id');
var gr = new GlideRecord('sys_attachment');
gr.addQuery('table_sys_id', incSysid);
gr.query();
if (gr.getRowCount() > extMax) {
return false;
}
while (gr.next()) {
var filename = gr.file_name;
var found = false;
for (var i = 0; i < extList.length; i++) {
if (filename.endsWith('.' + extList[i])) {
found = true;
break;
}
}
if (!found) {
return false;
}
}
return true;
},
type: 'CheckFileAttachments'
});
서비스 카탈로그에 제한을 걸기
서비스 카탈로그의 경우 포털에서 오류가 발생하지만 UI에서 다음 스크립트를 제한 할 수 있습니다.
서비스 카탈로그의 경우 속성과 스크립트 포함은 위와 동일하지만 클라이언트 스크립트가 다릅니다.
클라이언트 스크립트
function onSubmit() {
var ajax = new GlideAjax('CheckFileAttachments');
ajax.addParam('sysparm_name', 'validateAttachments');
ajax.addParam('sysparm_sys_id', g_form.getParameter("sysparm_item_guid"));
ajax.getXMLAnswer(function(answer) {
if (answer != "true") {
g_form.addErrorMessage('File attachments are illegal');
return false;
}
});
}
Reference
이 문제에 관하여(첨부파일 제한), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/htshozawa/items/2f84dee5a16c22eba6d6
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
function onSubmit() {
var ajax = new GlideAjax('CheckFileAttachments');
ajax.addParam('sysparm_name', 'validateAttachments');
ajax.addParam('sysparm_sys_id', g_form.getParameter("sysparm_item_guid"));
ajax.getXMLAnswer(function(answer) {
if (answer != "true") {
g_form.addErrorMessage('File attachments are illegal');
return false;
}
});
}
Reference
이 문제에 관하여(첨부파일 제한), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/htshozawa/items/2f84dee5a16c22eba6d6텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)