大変恐れ入りますが
同一アプリ内での自動反映とでもいったらよいのでしょうか
日付フィールドに値が入ったらチェックボックスやラジオボタンまたは
文字一列(文言→入力済とか済とか)でも良いので、
何かしら日付フィールドに値が入りました
というものが欲しいと思っています。
Javascriptカスタマイズで出来ますでしょうか?
何卒、よろしくお願いいたします。
大変恐れ入りますが
同一アプリ内での自動反映とでもいったらよいのでしょうか
日付フィールドに値が入ったらチェックボックスやラジオボタンまたは
文字一列(文言→入力済とか済とか)でも良いので、
何かしら日付フィールドに値が入りました
というものが欲しいと思っています。
Javascriptカスタマイズで出来ますでしょうか?
何卒、よろしくお願いいたします。
こんにちは。
changeイベントを使えば可能です。
kintone.events.on(["app.record.create.change.日付", "app.record.edit.change.日付"], function(event) {
event.record.文字一列.value = 入力済;
return event;
});
ご連絡ありがとうございます!!やってみます!!大変大変助かります!
お忙しいところ恐縮です。
出来ました!
ありがとうございました!!
もう一つ関連づいて質問があるのですが、新しく投稿させていただきます。
ありがとうございます。
大変恐れ入ります。
ホームページの申込フォームとのapi連携との兼ね合いで、ルックアップ 先となるフィールド、つまりグレー色のフィールドへはフォーム入力したものを反映出来ないとフォーム作成業者より言われました。
回避策として、ルックアップ 先のフィールドから
今回の問い合わせさせていただいたchange
でもう一つフィールドを設けたところに
コピー的な反映はできないものでしょうか?
こんにちは。
ルックアップの「ほかのフィールドのコピー」で、入力された値をまた別のフィールドにコピーしたいということでしょうか??
ご連絡ありがとうございます。
おっしゃる通りです。
具体的に
業者様の依頼としては
修理管理ID(取得用) というフィールドはルックアップ先のため、手動入力できるつくりではないため
APIからの登録・更新の場合、自動挿入されず空欄になる。その際に修理時計No.が取得できないケースが想定され
APIからの更新に失敗するので手動にしてほしいとの要望です。
現在下記の設定で一番下の方にコピー先のフィールド修理時計No.(取得用)がありますが
こちららにフォームから入力してきた値を反映させるので
自動挿入の場合は編集ができないからAPI更新がエラーになる想定と思われます。
ですので、ルックアップ先を編集できるようにするか
もう一つコピー先フィールドのコピー(手動入力できる)を作ってあげれば
解決できるのではなきかと思っておりますが
いかがでしょうか?
ここ以外にももしかすると今後必要になるのかもしれません。
できるものでしょうか?
フィールドですと下記のように自動挿入なので編集不可。
詳細ありがとうございます。
結論から言いますと、どちらも可能だと思います。
ルックアップのコピーフィールドもdisabled = falseにしてやれば編集可になりますし、
そのコピーフィールドをchangeイベントに指定してやれば別のフィールドに値をコピーすることも可能です。
分かりにくいかも知れませんが、下記のを参考に試してみてください。
(function () {
"use strict";
kintone.events.on("app.record.create.show", function (event) {
const record = event.record;
record.ルックアップのコピー.disabled = false;
return event;
});
kintone.events.on("app.record.create.change.ルックアップのコピー", function (event) {
const record = event.record;
record.コピーのコピー.value = record.ルックアップのコピー.value;
return event;
});
})();
通常↓
コード反映後↓
ありがとうございます!!
早速やってみます!
無事できました。
ありがとうございました!!
こんにちは。
先日お教えいただいた、この記事の最初の日付に何かしら入ったときに、ほかのフィールドへ何かしら
文字やチェックなどでメール送信済みのようなことができるJavaScriptを教えていただいて出来ていたはずなんですが
一度、昨日はいらないという形になり、外してもう一度作り直してドロップダウン形式で
やってみようと思ったのですが、何も走ってくれません。
間違いがございますでしょうか?
アドバイスいただけると大変助かります。
日付_0に何の日付でもよいので値が入れば、ドロップダウン_6がメール予約押しましたを選択する
流れです。
(function () {
“use strict”;
kintone.events.on([“app.record.create.change.日付_0”, “app.record.edit.change.日付_0”], function(event) {
event.record.ドロップダウン_6.value = メール予約押しました;
return event;
});
})();
気になるとしたら「メール予約押しました」が文字列じゃないところでしょうか?
また、コンソールにエラーなど出てましたら解決の手掛かりとなります。
event.record.ドロップダウン_6.value = "メール予約押しました";
ごれんらくありがとうございます。
こちらのエラーが発生している模様です。
↓下記に差し替えていただければ解決すると思います!
event.record.ドロップダウン_6.value ="メール予約押しました";
ごれんらくありがとうございます。
単純なところで申し訳ございません。
本当にありがとうございました。
これができると、kmailerの予約送信後のステータス変更てきな機能で
メール予約押しました→済
に自動で変更できるので大変助かりました。
ありがとうございました!!
お世話になります。
お伺いしたいのですが、
現在changeが大変活躍しているのですが
(function () {
“use strict”;
kintone.events.on([“app.record.create.change.日付_0”, “app.record.edit.change.日付_0”], function(event) {
event.record.ドロップダウン_6.value = “メール予約押しました”;
return event;
});
})();
と同じ手法で
他のフィールドで例えば日付_1の場合で
ドロップダウン_8に 完了
とする場合、
今は別でJSファイルをアップしているのですが
上記のJS内に含めてしまうことは可能でしょうか?
もしくは別々が好ましいでしょうか?
もしお分かりになれば教えていただけますと幸いです。
何卒、よろしくお願いいたします。
event.typeでイベント分けができるのでそれを使えばまとめて記述できます。
(function () {
"use strict";
kintone.events.on(["app.record.create.change.日付_0", "app.record.edit.change.日付_0",
"app.record.create.change,日付_1", "app.record.edit.change.日付_1"], function (event) {
switch (event.type) {
case "app.record.create.change.日付_0":
case "app.record.edit.change.日付_0":
event.record.ドロップダウン_6.value = "メール予約押しました";
break;
case "app.record.create.change,日付_1":
case "app.record.edit.change.日付_1":
event.record.ドロップダウン_8.value = "完了";
break
}
return event;
});
})();
ありがとうございます!!
実施してみます!
大変助かりました。