タスクリスト(TO DO)の利用 (2/6)
作成:2012-06-24 10:27
更新:2012-06-24 10:27
更新:2012-06-24 10:27
■TaskListとTaskListCollection
では、まず「タスクリスト」から説明しましょう。タスクリストは、「TaskList」というオブジェクトとして用意されています。このオブジェクトに、タスクリストのタイトルやIDなどの情報がまとめられ管理されます。
ただし、このTaskListを取り出すためには、その他にもいくつかのオブジェクトとその役割について理解しなければいけません。では、サービスの基本オブジェクトであるTasksから、TaskListを取り出すまでの流れを整理して行きましょう。
1. TaskListsCollectionの取得
2. TaskList/TaskListsの取得
もう1つは「list」というメソッドです。これは、TaskListをまとめて管理する「TaskLists」というオブジェクトを返します(複数形のsがついてます。間違えないように!)。このTaskListsは、TaskListをまとめたものです。このTaskListsから、TaskListが取り出せます。
3. TaskListの取得
――このように、あらかじめIDがわかっていればTaskListsCollectionからぱっとTaskListを取り出せるのですが、そうでない場合には、TasksのTaskListsCollectionのTaskListsのTaskList配列を取り出して……という、かなり面倒くさいことになります。
このTaskListには、タスクリストに関するさまざまな情報が保管されており、それを利用するメソッド類も用意されています。主な情報利用について整理しておきましょう。
●IDの利用
●タイトルの利用
――この他にもメソッドはありますが、とりあえずIDとタイトルだけ使えれば十分でしょう。タスクリストは、タスクの入れ物として使うだけですから……。では、下に、特定のTaskListを取得するための基本的な流れをスクリプトに整理しておきましょう。
下のgettaskは、1つ目のタスクリストのタイトルとIDを取得し表示するものです。Tasks.Tasklists.listでTaskListsを取得し、そのgetItemsでTaskList配列を取り出します。その最初の要素を取り出してgetId、getTitleの値を取り出しています。オブジェクトの入れ子構造が面倒くさいですが、やり方さえわかればそう難しいものではありませんね。
ただし、このTaskListを取り出すためには、その他にもいくつかのオブジェクトとその役割について理解しなければいけません。では、サービスの基本オブジェクトであるTasksから、TaskListを取り出すまでの流れを整理して行きましょう。
1. TaskListsCollectionの取得
変数 = Tasks.Tasklists;Tasksには「Tasklists」というプロパティが用意されています。これには「TaskListsCollection」というオブジェクトが設定されています。これは、次の「TaskLists」というオブジェクトをまとめて管理するコレクションオブジェクトです。
2. TaskList/TaskListsの取得
変数 = 《TaskListsCollection》.list();TaskListsCollectionには、タスクリスト取得に関する2つのメソッドが用意されています。「get」は、TaskListを取得するためのメソッドです。これは、引数に、取り出すTaskListのIDを指定します。既にIDがわかっていれば、これで取り出せます。
変数 = 《TaskListsCollection》.get( TaskListのID );
もう1つは「list」というメソッドです。これは、TaskListをまとめて管理する「TaskLists」というオブジェクトを返します(複数形のsがついてます。間違えないように!)。このTaskListsは、TaskListをまとめたものです。このTaskListsから、TaskListが取り出せます。
3. TaskListの取得
変数 = 《TaskLists》.getItems();TaskListsの「getItems」を呼び出すことで、TaskListオブジェクトの配列を得ることができます。これですべてのTaskListを取り出し、タスクリストに関する情報などを扱えるようになります。
――このように、あらかじめIDがわかっていればTaskListsCollectionからぱっとTaskListを取り出せるのですが、そうでない場合には、TasksのTaskListsCollectionのTaskListsのTaskList配列を取り出して……という、かなり面倒くさいことになります。
■TaskListの情報
このTaskListには、タスクリストに関するさまざまな情報が保管されており、それを利用するメソッド類も用意されています。主な情報利用について整理しておきましょう。
●IDの利用
変数 = 《TaskList》.getId();すべてのTaskListには、識別用のIDが割り振られています。これはランダムな英数字の組み合わせテキストのようなものです。このIDは、setIdで変更できますが、やたらと変更するとタスクリスト自体がおかしくなりかねないので、値の取得だけにしておいたほうがよいでしょう。
《TaskList》.setId( 新しいID );
●タイトルの利用
変数 = 《TaskList》.getTitle();タスクリストのタイトル(名前)を扱うためのものです。タイトルのテキストを取得したり、変更したりできます。
《TaskList》.setTitle( 新しいタイトル );
――この他にもメソッドはありますが、とりあえずIDとタイトルだけ使えれば十分でしょう。タスクリストは、タスクの入れ物として使うだけですから……。では、下に、特定のTaskListを取得するための基本的な流れをスクリプトに整理しておきましょう。
下のgettaskは、1つ目のタスクリストのタイトルとIDを取得し表示するものです。Tasks.Tasklists.listでTaskListsを取得し、そのgetItemsでTaskList配列を取り出します。その最初の要素を取り出してgetId、getTitleの値を取り出しています。オブジェクトの入れ子構造が面倒くさいですが、やり方さえわかればそう難しいものではありませんね。
(by. SYODA-Tuyano.)
※プログラムリストが表示されない場合
AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。
●プログラム・リスト●
function gettask(){ var listitems = Tasks.Tasklists.list().getItems(); var item = listitems[0]; var id = item.getId(); var title = item.getTitle(); Logger.log(title + " (" + id + ")"); }
※関連コンテンツ
「初心者のためのGoogle Apps Scriptプログラミング入門」に戻る