通常は、オフィスやユーザにBCABRESOURCEID属性の値が既に存在する場合はBCABRESOURCEIDを更新できません。
また、BCABRESOURCEID属性の値が存在する状態で、該当キャビネットサーバに該当オフィスやユーザが登録されていない場合、ご質問のエラーが表示され、オフィスやユーザをクリアできません。
BCABRESOURCEIDに不正なID(存在しないサービスID)を指定して登録してしまった場合、以下の①か②のいずれかの方法で対処してください。
BCABRESOURCEIDが不正になってしまったユーザが多数存在する場合は、②の運用コマンドで行う方法をお奨めします。
①ディレクトリメンテナンスツールを使用する方法
ディレクトリメンテナンスツールで、該当オフィス・ユーザを「ディレクトリ直接更新」することでresourceServiceId属性を削除してから、somnt.batまたはディレクトリメンテナンスツールでリソースID(BCABRESOURCEID)を更新する。
この方法の詳細については、「関連情報」のFAQを参照してください。
②運用コマンドで行う方法
以下の手順で一時的にBCABRESOURCEIDを更新できるように設定を変更して、対処してください。
(1)設定ファイルのバックアップ
以下のファイルを任意の場所にコピーすることでバックアップしてください。
(後で設定を元に戻す時に使います。)
<StarOfficeフォルダ>\BusinessDirectory\etc\ruleset.ini
(2)設定の変更
ユーザのBCABRESOURCEIDを更新したい場合、以下の設定ファイルの[USER,UPDATE]セクションの以下の行の最後の「|RID」を削除してください。
変更前:
BCABRESOURCEID,resourceServiceID,,ASCII:25,,,,SID:soBcab-|RID
変更後:
BCABRESOURCEID,resourceServiceID,,ASCII:25,,,,SID:soBcab-
オフィスのBcabResourceIDを更新したい場合は、同ファイルの[OFFICE,UPDATE]セクションの以下の行の最後の「|RID」も同様に削除してください。
変更前:
BCABRESOURCEID,resourceServiceID,,ASCII:25,,,,SID:soBcab-|RID
変更後:
BCABRESOURCEID,resourceServiceID,,ASCII:25,,,,SID:soBcab-
(3)パラメータファイル作成
キャビネットのBCABRESOURCEID属性を間違ってしまったユーザ(またはオフィス)について、以下のようなパラメータファイル(UTF-8形式)を作成してください。
(BCABRESOURCEIDは正しい値を指定してください。)
@USER UPDATE
USRID=TESTUSER1
BCABRESOURCEID=000001
@OFFICE UPDATE
OFCID=TESTOFFICE2
BCABRESOURCEID=000001
※BCABRESOURCEIDを削除したい場合は、上記のパラメータファイルで「BCABRESOURCEID=()」と指定してください。
(4)BCABRESOURCEID属性の更新とキャビネットサーバへの連携
「(3)」で作成した入力ファイルをinputfile.txt(ファイル名は任意)として、以下のコマンドを実行してください。
CMD> cd /d {StarOfficeフォルダ}\BusinessDirectory\bin
CMD> somnt -i inputfile.txt
(5)設定の復元
「(2)」で変更した設定を元に戻してください。
以上の手順でBCABRESOURCEIDを更新し、キャビネットサーバに同期(連携)ができます。
【ご注意】
キャビネットサーバが複数台存在する場合で、BCABRESOURCEIDを誤ってしまい、意図しないキャビネットサーバにオフィスやユーザを登録してしまった場合(存在するサービスIDであるが、意図しないサービスIDを指定してしまった場合)については、本FAQの手順で対処を行うと複数のキャビネットサーバに多重に登録されてしまうので、本FAQの手順による対処は行わないでください。その場合は、間違って登録されてしまったキャビネットサーバ上で、bcabmtnコマンドを実行することでオフィス/ユーザのデータを削除してから、メンテナンスツール(またはsomnt.batコマンド)で正しいリソースIDを登録してください。
対象バージョンは以下の通りです。
- StarOffice X V1.0以降のバージョン (V3.0以降はシングルテナントモードが対象です。)