Я для себя представлял задачу так:
1 Создаю транзакцию
2 Определяю геометрию и добавляю ее в BlockTableRecord и в транзакцию
3 Определяю AttributeDefinition добавляю его в BlockTableRecord и в транзакцию
4 Добавляю BlockTableRecord в BlockTable и в транзакцию
5 Получаю ObjectId для BlockTableRecord
6 Вставляю как BlockReference
7 После вставки произвожу подсчет уже вставленных блоков и в атрибут только что вставленного блока записываю его текущий номер с учетом предшественников.
Получается, что сканирую весь чертеж.
Можно подписаться на событие добавления вставки блока и таким образом в момент вставки блока уже знать их количество. Тогда и сканировать ничего не нужно.
Интересный способ, попробую освоить. Спасибо за идею.