質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

2回答

1928閲覧

■Google app script でのエラーを解消したい

退会済みユーザー

退会済みユーザー

総合スコア0

Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2019/07/09 08:37

前提・実現したいこと

■Google app script でのエラーを解消したい
素人ですが、kintone上のアプリから情報をスプレッドシートに取得しようとしています。
エラーの原因がわからず、質問させていただきました。

発生している問題・エラーメッセージ

TypeError: undefined からプロパティ「value」を読み取れません。

該当のソースコード

Google

1function writeSheetFromRecords(sheet_name,apps_key,array_kintone_fields){ 2 prepare(); 3 var records = getKintoneRecords(apps_key,kintone_manager); 4 var sheet = SpreadsheetApp.getActive().getSheetByName(sheet_name); 5 var row = 2; 6 records.forEach(function(record){ 7 array_kintone_fields.forEach(function(kintone_field,index){ 8 sheet.getRange(row,index+1).setValue(record[kintone_field].value); 9 }) 10 row++; 11 }) 12}

試したこと

いろいろ調べましたが、わからず何も試せていません。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

papinianus

2019/07/09 09:59

全部のコードを開示するか、recordsの内容を開示するかどちらか
Lhankor_Mhy

2019/07/10 00:18

おそらく、records が [undefined] なんだと思いますよ。 原因は、当て推量ですが、apps_key,kintone_manager のどちらかまたは両方とも間違っているか、あるいはそもそも kintone に適切なデータがないか、ではないかと思います。
macaron_xxx

2019/07/10 05:07

records が [undefined]だったらこのエラーはでないですね。 普通に考えたらrecordの中にkintone_fieldがないよって言ってるだけですからね。
papinianus

2019/07/11 14:12

macaron_xxx様と同じことですがrecordsが[undefined]だとしたら、undefined[0].valueになるわけで、 Cannot read property '0' of undefined とかってエラーじゃないかと考えております。
退会済みユーザー

退会済みユーザー

2019/07/12 02:25

全てのコードを乗せておらず、すみません。 kintone_fieldの定義はできており、ログでもrecordは取得できていたのでこの部分に原因があると決めつけていました。 kintone上のアプリに入っているレコードの情報を取得する際、valueのキーになるのはテーブル上のカラム名になるようですが、今回取得しようとしていた情報が「フォームブリッジ」からの入力で当アプリ上に追加された情報で、その場合はキーがカラム名にならないようです。
guest

回答2

0

ベストアンサー

kintone上のアプリに入っているレコードの情報を取得する際、valueのキーになるのはテーブル上のカラム名になるようですが、今回取得しようとしていた情報が「フォームブリッジ」からの入力で当アプリ上に追加された情報で、その場合はキーがカラム名にならないようです。

ログを見て初めて知りました。

このコードより前の部分で
ログ上に出てきたキーを指定しなおすことで解決しました。

投稿2019/07/12 02:29

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

kintoneが繋がっていない
subdomain に実在するドメインを記載しているか。
サイボウズのkintoneでappsのところで設定されている部分が一致していないのでしょうね。
本人しか分からない情報なのでなんとも言えないですね。

ex.

1if (typeof subdomain === "undefined") { 2 subdomain = "https://****.cybozu.com"; //実在するか 3} 4 5if (typeof apps === "undefined") { 6 apps = { 7 AUTHOR: { appid: **, name: "データ", token: "******************" } 8 }; 9} 10

この部分ちゃんと取ってこれていますか?
var records = getKintoneRecords(apps_key,kintone_manager);

投稿2019/07/11 05:41

tukatter

総合スコア284

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2019/07/12 02:28

皆さんありがとうございます。 kintone上のアプリに入っているレコードの情報を取得する際、valueのキーになるのはテーブル上のカラム名になるようですが、今回取得しようとしていた情報が「フォームブリッジ」からの入力で当アプリ上に追加された情報で、その場合はキーがカラム名にならないようです。 ログを見て初めて知りました。 このコードより前の部分で ログ上に出てきたキーを指定しなおすことで解決しました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問