もう少し,修正のフィックスを進めよう.
- UpdateDiagramProcを使う@20230212 → 確定
- getnewRefnumを使わない@20230201 → 確定
- emptyrecnを使わない@20230201 → 確定
- Renumberではリンクを移動しない@20230116 → 確定
- TOPOLOGY:GetRecordを使う@20230115 → 確定
- lookup未対応@20230110 → 確定
- MARGTABLEのlookupを廃止する@20230114 → 確定
- RenumberではUNDOをリセット@20230116 → 廃止
- checkMargPointの中でHeapBranchを実行している@20220415 → 確定
- REDLINEオーバーでループから脱出@20220420 → 確定
大体片が付いた.UpdateDiagramはかなり難があるので,原則として今後は使わないということにする.やはり,計算精度の問題があり,画面が崩れてしまう.系統並び替えを実施すればノーマルに表示できるので,ここでは時間効率より見た目を優先することにする.
▲データベースのロードに時間がかかり過ぎる.ファイルはバッファに読み込まれているが,単純なテキストの状態で放置されているため,毎回のシークに多大な時間を浪費しているように思われる.少なくとも,レコードを管理するテーブルのようなものが必要だ.⇒QUICKDB::LoadQuickを実装した.動作している.
InitLinkTableでは,KAKEIZU::getmarriageとgetcarddataでレコードを取り出している.この関数を直接書き直してやればよい.これらの関数では,各項目ごとにQUICKDBに要求を出してデータを受け取っているが,QUICKDB側でまとめて送り出してくるように書き換える必要がある.PICKコマンドを送信すると,DB側ではitemdata[]という配列に項目データを格納し,取り出しの準備を行うようになっている.