RepotoneU で印影を連携し、PDF化する。

RepotoneU で PDF化する際、印影が標準装備で無いということでしたので、作ってみました。

(プリントクリエーターは標準装備でした。)

 

①プロセス管理とは連動せず、必要な所に印影が表示できる。

②印影対象者は、ユーザー選択で選ぶ。

③関連レコードの機能で、ユーザ選択からの関連付けが出来ない為、1つクッションを入れた。

 

お試しください。

*20200907:文言揃えました。

 

準備

1.kintone.com共通管理-組織/ユーザーの、ユーザー情報編集にて

従業員ID に 番号を入れる。

(今回、社員No(数字4桁)とした。)

 

2.社員アプリを作成し、従業員ID(文字列1行)・印影(添付ファイル)を準備

 

3.RepotoneUを使用するアプリに

・承認者ID(文字列1行)

・印影(関連レコード)

参照するアプリ > 社員アプリ

表示するレコード条件 > 承認者ID=従業員ID

表示するフィールド > 印影

 

考えかた

①承認者(ユーザ選択)にて選ばれた、印影対象者の従業員ID を下記JavaScriptにて抽出し、承認者IDフィールドに登録。

②関連レコード機能を利用し、印影を表示

③RepotoneUにて、印影を指定場所に配置

 

''javascript は見よう見まねで作っているのでご容赦====================================

 

kintone.events.on([‘app.record.edit.submit’, ‘app.record.create.submit’], function(event) {
    //var eventsShow = [‘app.record.create.show’, ‘app.record.edit.show’, ‘app.record.index.edit.show’];
    //kintone.events.on(eventsShow, function(event) {
    var record = event.record;
var loginUser = kintone.getLoginUser();
var body = {
    codes: [loginUser.code]
    };
        // ユーザー
var users = new Promise(function(resolve, reject) {
body.codes[0] = record[“社員No”].value[0].code;
kintone.api(kintone.api.url(“/v1/users”, true), “GET”, body, function(resp1) {
var user = Object.assign(loginUser, resp1.users[0]);
  event.record[‘社員ID’].value = user.employeeNumber;
  return event;
        });
    });
});

 

 

 

 

 

 

コーディングやり直し

 

(function() {
“use strict”;
kintone.events.on([‘app.record.edit.submit’, ‘app.record.create.submit’], function(event) {
var record = event.record;

if (record[‘承認者’].value.length === 0){
record[‘承認者ID’].value = ‘’;
return event;
}
else {
var params = {
codes : [record[‘承認者’][‘value’][0][‘code’]]
};

return new kintone.Promise(function(resolve, reject) {

return kintone.api('/v1/users', 'GET', params, function(resp) {  
 // console.log('users resp', resp);  
 if (resp.users.length \> 0) {  
  // console.log('users[0] employeeNumber', resp.users[0].employeeNumber);  
  record['承認者ID'].value = resp.users[0].employeeNumber;  
 }  
 //alert(event.record['承認者ID'].value);  
 resolve(event);  
});  

});
}
});
})();