OpenOfficeBasicで家計簿(会計っぽやつ) part3

sub nextRecord

rem define variables
dim document   as object
dim dispatcher as object
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
dispatcher.executeDispatch(document, ".uno:NextRecord", "", 0, Array())

end sub

ということで,basicもどきをとりあえずマクロから作成してみようということで,「次へ」ボタンを記録した結果が上記のようなものです.うーん,これは,厳しそうだ.特に,createUnoServiceのあたりがjavaクラスがモロに出ている感じですなぁ.あとまぁ,executeDispatchの中のuno:NextRecordもかなりつらい.

Accessと大きく違うのは,これらのマクロは,完全にbaseとは別に管理されていることなんですね.だから,オブジェクトをbase専用でかけないのかもしれないねぇ.はっきり言って,ここまでAccessまねるなら,徹底的にまねてほしかった.確かに,再利用性があるのだろうけど,膨大なライブラリを使っていくには,インクリメンタルサーチによる補助が必要だろうけど,その必要なところが思い切りダブルクオーテーションで囲まれているもんだから,普通にダメそうだし.

困ったなぁ.ちょっと面倒そうだ.