テーブル内のルックアップフィールドの並び替え

いつも有識者の方々には助けられております。

試行錯誤しているのですが、初心者の私では解決できず、どなたかお力添えいただければと思い投稿させていただきます。

 

⓵やりたいこと

・テーブル行を更新日時(変更日時)の降順に並び替え。

・先頭の行の特定フィールドの項目を、テーブル外にコピー。

⓶困っていること

対象のテーブル内のルックアップフィールドのみが並び替えがされない。

kintoneの仕様であるような書き込みがあったので、回避策として

・ルックアップフィールドを文字列フィールドに退避

→並び替え

→並び変わった文字列フィールドをルックアップフィールドに戻す

というようにすればうまくいくのではと思い試していますが、

文字列フィールドへのコピーと、文字列フィールドの並び替えはうまくいくのですが、

・文字列→ルックアップフィールドに戻す

の部分がうまくいきません。

(function(){

‘use strict’;

kintone.events.on([‘app.record.edit.submit’,‘app.record.create.submit’],

    ///在籍確認最新:コピー先、ステータス履歴:コピー元のテーブル名、在籍状態:コピー元のフィールド名

function (event){    

       // 変更日時順にソートする(変更日時降順に並び替える)

        var record = event.record;

       

        for (var i = 0; i < record.ステータス履歴.value.length; i++) {

            record.ステータス履歴.value[i].value.受入れ機関コピー_ステータス.value = record.ステータス履歴.value[i].value.受入れ機関_ステータス.value;

        }

       

        record.ステータス履歴.value.sort(function(a, b) {

         //aの方の変更日時が大きい時、a が先にくるようにする

         if (a.value.変更日時.value > b.value.変更日時.value) return -1;

         //aの方の変更日時が小さい時、b が先にくるようにする

         if (a.value.変更日時.value < b.value.変更日時.value) return 1;

         return 0;

        });

       

       

        for (var i = 0; i < record.ステータス履歴.value.length; i++) {

            record.ステータス履歴.value[i].value.受入れ機関_ステータス.value =  record.ステータス履歴.value[i].value.受入れ機関コピー_ステータス.value;

            record.ステータス履歴.value[i].value.受入れ機関_ステータス.lookup = true;

        }

       

        //同じテーブル内での別フィールドもテーブル外に転記したい場合は、下の一行をコピーしてフィールドコードを変更        

        record.在籍確認最新.value = record.ステータス履歴.value[0].value.在籍状態.value;

       

        record.受入れ機関_最新.value = record.ステータス履歴.value[0].value.受入れ機関_ステータス.value;

       

        console.log(event);

        return event;

     

    });

})();

(追記)

受入れ機関_ステータス:テーブル内のルックアップフィールド

受入れ機関コピー_ステータス:ルックアップフィールドの一時退避用の文字列フィールド