他アプリからのデータ取得について

kintone初心者になります。初歩的ご質問になりますが、何卒よろしくお願いいたします。

背景・実現したいこと

 Aアプリ、Bアプリの2つのアプリを使って
Aアプリの画面項目を使ってBアプリのデータを検索し、
・データが取得できた場合は、Aアプリ上の別項目にBアプリのデータ情報をセット
・データが取得できない場合は、Aアプリ上の別項目にAアプリ上の情報をセット

エラー情報 (開発者ツールのコンソール)

 Chromeでのデベロッパーツール上でデバッグするがエラーなし

利用したソースコード

(() => {
  'use strict';
  const createEvents = ['app.record.create.submit', 'app.record.edit.submit'];
  kintone.events.on(createEvents, (event) => {

    const appId = 1;

    const m01 = event.record['a'].value;

    const paramsget = {
      'app': appId,
      'query': 'a in ("' + m01 + '")',
      totalCount: true
    };

    kintone.api(
      kintone.api.url('/k/v1/records', true), 
      'GET', 
      paramsget, 
      (resp) => { 

        if (resp.totalCount > 0) {
          const record = resp.records[0];
          event.record['b'].value = record['b'].value;
        } else {
          event.record['b'].value = m01;
        }

      }, (error) => {
        alert('レコード取得時にエラーが発生しました。' + error.message);
        console.log(error);
      }
    );

    return event;

  });
})();

保存ボタンをおすとページが切り替わります。ですので、kintone.apiが完了するよりもはやくページ遷移がおきてしまって皇族の処理がされていない状況だとおもいます。

このようにkintone.apiの処理をまつ必要がある場合はPromiseを利用する必要があります。(コールバックの記述法ではできない)

こちらの記事に基本がのっておりますのでみてみてください。

その中でもasync/awaitで書けばよりわかりやすいと思うのでためしてみてください。
書き直すとこんな感じです(動作未検証なのはご了承ください)

(() => {
 'use strict';
 constcreateEvents = ['app.record.create.submit','app.record.edit.submit'];
  kintone.events.on(createEvents, async (event) => { // ← 下部のawaitを使うためにasyncを宣言
   constappId =1;
   constm01 =event.record['a'].value;
   constparamsget = {
     'app': appId,
     'query':'a in ("'+ m01 +'")',
      totalCount:true
    };
  const resp = await kintone.api( // ←awaitをつかうことでkintone.apiの結果をまってrespにいれることができる
      kintone.api.url('/k/v1/records',true), 
     'GET', 
    paramsget);
if(resp.totalCount >0) {
 constrecord = resp.records[0];
   event.record['b'].value= record['b'].value;
  }else{
   event.record['b'].value= m01;
  }

   returnevent;
  });
})();

お世話になっております。
この度はアドバイスをいただき本当にありがとうございます。
ご教示いただいた内容を基に修正したところ、無事に動作いたしました。
基本的な部分がわかっていなかったようです…
javascriptの解説サイトも読み込んでみたいと思います。

このトピックはベストアンサーに選ばれた返信から 3 日が経過したので自動的にクローズされました。新たに返信することはできません。