TALYSCENA

読書の進捗と残りのページ数を管理する例

初めて読み終えたページと再読を分け、残りの量を確認したい。

TALYSCENAが作成したオリジナルの架空教材です。実在する利用者の記録・調査・実験の報告ではありません。イベントの時刻は2026年10月1日00:00:01 UTCから1秒ずつ置いた合成のデモ記録時間で、操作順はseqで定まります。

利用場面と初期入力

架空の320ページの本を先頭から順に読み進める例です。初期の完了は76ページ。飛び飛びの読了はこの連続進捗に含めません。単位はページです。

利用するシーンはS11 読書の進捗です。まず新しい記録を作り、下表の順に操作します。各入力は架空の教材値です。

操作・イベント・各段階の結果

左列は実際の画面で行う操作、中央列は保存されるイベントと入力、右列はその時点の統一計算エンジンの出力です。IDはデモ用の識別子です。読み込み時には新しいIDへ置き換えます。表のイベント名は技術上の対応を確認するために掲載しています。

C07 操作順と照合値(初期作成を含む5件)
順番と操作イベント・入力各段階の期待結果
1.新しい記録を作成し、初期条件を入力するsession.create
{"kind":"reading","name":"読書の進捗と残りのページ数を管理する例(架空のデモ)","config":{"title":"デモ用の320ページの本","total":320,"initial":76,"dailyGoal":0}}
初回完了ページ:76、残りページ:244、完了率:23.75%、再読ページ:0、1読書日の目標:0、目安の読書日数:未定義
2.新たに24ページ読み終えたと記録:100ページreading.advance
{"count":24}
初回完了ページ:100、残りページ:220、完了率:31.25%、再読ページ:0、1読書日の目標:0、目安の読書日数:未定義
3.さらに32ページを記録:132ページreading.advance
{"count":32}
初回完了ページ:132、残りページ:188、完了率:41.25%、再読ページ:0、1読書日の目標:0、目安の読書日数:未定義
4.1読書日28ページの目標を設定:残り7読書日reading.goal
{"dailyGoal":28}
初回完了ページ:132、残りページ:188、完了率:41.25%、再読ページ:0、1読書日の目標:28、目安の読書日数:7
5.再読欄に10ページを記録:初回完了は132のままreading.reread
{"count":10}
初回完了ページ:132、残りページ:188、完了率:41.25%、再読ページ:10、1読書日の目標:28、目安の読書日数:7

式を使って独立に計算する

76+24=100ページ

100+32=132ページ

残り320−132=188ページ

完了率132÷320×100=41.25%

再読10ページは初回の完了132ページに加えない

188÷28≒6.714、切り上げて最低7読書日

百分率は表示時だけ小数第2位まで丸めます。内部の比率は丸めずに保持します。

ツールの結果と照合する

初回完了132/残り188/41.25%/再読10/目標28ページなら7読書日。下のボタンから読み込むと、予測値を画面に貼り付けるのではなく、イベントから同じ計算エンジンで再計算します。上表の最終行と実際の作業画面の指標を照合してください。

T09 対応ツールを開く S11 読書の進捗をシーン一覧で確認する

対応ツールとシーンの作業画面は同じ記録・同じイベント履歴を使用します。

元に戻す・訂正を試す

最後の再読10ページを戻すと再読0・完了132・残り188のままです。完了を誤記した場合は理由を添えて進捗を訂正し、その訂正も元に戻せます。

「元に戻す」は最後の有効操作を対象とし、過去のイベントを消しません。試したあとは再入力するか、この例を別のコピーとして読み込み、最終行の状態からやり直せます。

よくある誤り

毎日28ページという利用者の設定値からの算術上の目安です。実際の読書速度や完了日を予測するものではありません。再読を進捗に足すと142ページになり誤りです。

独立したデモ記録を読み込む

プレビューで例の名前・シーン・イベント件数・結果を確認し、「独立したデモ記録を作成」を押してください。既存の記録は変更しません。同じ例をもう一度読み込むと別のコピーを作ります。不要ならキャンセルできます。

デモ記録の作成を確認

保存・バックアップ・プライバシー

  1. 保存後の作業画面で値を照合し、元に戻す操作を試してください。ページを再読み込みし、同じ記録と履歴が残ることを確認します。同じブラウザ・同じサイトで開き直してください。
  2. 1件分の記録のJSONバックアップを出力し、「1件分の記録を独立コピーとして復元」で内容を確認して復元すると、元の記録を保った別のコピーを確認できます。全作業領域を置き換える復元は、この例の読み込みには使いません。
  3. データはこのブラウザのIndexedDBに保存されます。ログインもクラウド同期もありません。ブラウザデータの削除・別の端末への移動では記録が自動で戻らないため、重要な記録はJSONを別に保管してください。
  4. デモ後に個人情報を入力した場合、その情報は書き出すJSONにも入ります。共有前に内容を確認してください。公開されるこのHTMLには利用者の私的な記録を含めません。
  5. 保存失敗・別タブとの競合・40000イベント超過では全件の作成を拒否します。部分的な読み込みは行いません。再読み込みして元の記録を確認してから、再度プレビューしてください。