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

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

新規登録して質問してみよう
ただいま回答率
85.48%
kintone

kintone(キントーン)とは、サイボウズ社が提供する業務改善プラットフォームです。

JavaScript

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

Q&A

0回答

592閲覧

【kintone】開始日~終了日までの日報フォームの作り方

mi000

総合スコア4

kintone

kintone(キントーン)とは、サイボウズ社が提供する業務改善プラットフォームです。

JavaScript

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

0グッド

1クリップ

投稿2020/04/15 07:52

編集2020/04/18 13:22

前提・実現したいこと

【kintone】開始日~終了日までの日報フォームの作り方

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

同質問をサイボウズディベロッパーでも投稿させていただいておりますが、 なかなか情報収集ができないため、こちらでご質問させてくださいm(__)m 複数のアプリを1つのアプリに集計させたいです。 複数アプリ(3つ)には *団体名(文字列) *人数(計算) 【サブテーブル】 ┃開始日(日付)┃~┃終了日(日付)┃総日数(計算)┃施設名(ドロップダウン)┃免除区分(ドロップダウン)┃金額/日数分(計算)┃金額/1日分(計算)┃ が入力されています。 日報フォーム(集計用アプリ) *(日付)←日付を入力 【サブテーブル1(アプリA)】 ┃施設名(ドロップダウン)┃免除区分(ドロップダウン)┃団体名(文字列)┃金額(1日分)(数値)┃人数(数値)┃ 【サブテーブル2(アプリB)】 ┃施設名(ドロップダウン)┃免除区分(ドロップダウン)┃団体名(文字列)┃金額(1日分)(数値)┃人数(数値)┃ 【サブテーブル3(アプリC)】 ┃施設名(ドロップダウン)┃免除区分(ドロップダウン)┃団体名(文字列)┃金額(1日分)(数値)┃人数(数値)┃ 開始日から終了日までの期間,レコード一覧から抽出集計し 日報フォームに団体名&施設名ごとに金額(1日分)を映したいのですが可能でしょうか? Javascriptなどで実装可能であればサンプルなどご提示いただきたいですm(__)m

該当のソースコード

(function() { 'use strict'; // 「Aアプリコピー」時の処理 kintone.events.on(["app.record.create.change.コピー", "app.record.edit.change.コピー"], function(event) { var record = event.record; ///カーソル情報代入 var appID = 000; //データ取得元 AアプリID var limit = 200; var offset = 0; var size = 100; //日報アプリ情報代入 var pNo = record["施設名A"].value; var menjo = record["減免区分A"].value; var worker = record["団体名A"].value; var kingaku1 = record["金額1"].value; var kingaku2 = record["金額2"].value; var kingaku3 = record["金額3"].value; var ninzu = record["人数A"].value; var reqStart = record["日付"].value; function postCursor() { var body = { 'app': appID, 'fields':["使用団体名","人数","施設名","使用開始日","使用終了日","免除区分A","金額1","金額2","金額3"], //'query':「フィールドコード 演算子 条件」の順序で記述          //Aアプリ:「使用開始日」~「使用終了日」の間 が 日報アプリ:「日付」 and // Aアプリ:「使用団体名」 が 日報アプリ:「団体名A」と同じ and // Aアプリ:「人数」 が 日報アプリ:「人数A」と同じ and //Aアプリ:サブテーブルtable_1「施設名」 が 日報アプリ:「施設名A」 と同じ and //Aアプリ:サブテーブルtable_1「免除区分A」 が 日報アプリ:「減免区分A」 と同じ and //Aアプリ:サブテーブルtable_1「金額1」 が 日報アプリ:「金額1」 と同じ and //Aアプリ:サブテーブルtable_1「金額2」 が 日報アプリ:「金額2」 と同じ and //Aアプリ:サブテーブルtable_1「金額3」 が 日報アプリ:「金額3」 と同じ and 'query': '使用開始日 <= >= 使用終了日 "'+ reqStart +'" and 使用団体名 = "'+ worker +'" and 人数 = "'+ ninzu +'" and "施設名 in ("'+ pNo+'") order by $id desc' +'"and "免除区分A in ("'+menjo+'") order by $id desc'+'"and "金額1 in ("'+kingaku1+'") order by $id desc'+'"and "金額2 in ("'+kingaku2+'") order by $id desc' +'"and "金額3 in ("'+ kingaku3+'") order by $id desc', 'limit': limit,         'offset': offset, 'size': size, }; // Aアプリデータ取得用のカーソル作成(thenを使うことで resp の中にデータが格納される) return kintone.api(kintone.api.url('/k/v1/records/cursor', true), 'POST', body).then(function(resp) { // 成功:カーソル作成 return resp.id; // catch で取得失敗時のエラー制御 }).catch(function(error) { // エラー発生時にエラー表示 return error; }); } function getRecordsFromCursor(cursorId, opt_records) { var records = opt_records || []; var body = { 'id': cursorId }; // Aアプリからデータ取得(thenを使うことで resp の中にデータが格納される) return kintone.api(kintone.api.url('/k/v1/records/cursor', true), 'GET', body).then(function(resp) { // 成功:データを取得 records = records.concat(resp.records); if (resp.next) { return getRecordsFromCursor(cursorId, records); } return records; // catch で取得失敗時のエラー制御 }).catch(function(error) { // エラー発生時にエラー表示 return error; }); }     //コンソールへ取得情報格納 postCursor().then(function(respCursorId) { return getRecordsFromCursor(respCursorId); }).then(function(respRecords) { console.log(respRecords); //set用レコード情報の取得 var getRec = kintone.app.record.get(); //コンソールへ格納した「アプリA」アプリフィールド情報代入 for (var i = 0; i < respRecords.length; i++) { var resp_pCostTable = respRecords[i]["table"].value;   //日報アプリ「table_1」サブテーブルへ取得データセット   for (var ii = 0; ii < resp_pCostTable.length; ii++) {   getRec.record["table_1"].value.unshift({   value: {   "施設名": { "type": "SINGLE_LINE_TEXT", "value": resp_pCostTable[ii].value["施設名A"].value },   "免除区分A": { "type": "SINGLE_LINE_TEXT", "value": resp_pCostTable[ii].value["減免区分A"].value },   "使用団体名": { "type": "SINGLE_LINE_TEXT", "value": resp_pCostTable[ii].value["団体名A"].value },   "金額1": { "type": "SINGLE_LINE_TEXT", "value": resp_pCostTable[ii].value["金額1"].value },   "金額2": { "type": "SINGLE_LINE_TEXT", "value": resp_pCostTable[ii].value["金額2"].value },   "金額3": { "type": "SINGLE_LINE_TEXT", "value": resp_pCostTable[ii].value["金額3"].value },   "人数": { "type": "SINGLE_LINE_TEXT", "value": resp_pCostTable[ii].value["人数A"].value },   }   });   } } }).catch(function(error) { console.log(error); }); return event; }); })();

試したこと

サブテーブルのコピーのコードを見様見真似で作成してみましたが、全く動かない状態です。
どこをどう変えてよいものか、わからない状態です。

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

Kintone

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

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

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

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

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

mi000

2020/04/18 07:48

すみません。サイボウズディベロッパーでも同質問をしています。 なにか解決策がないかと調べており、こちらでの投稿をさせていただきました。 非推奨だとは知らず、申し訳ございません。
退会済みユーザー

退会済みユーザー

2020/04/18 07:51 編集

https://teratail.com/help 説明(ヘルプ)ぐらいかかる久米を通しましょう
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問