|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450
|
Нет, анализ - в каком столбце чего хранится. Евгений Елпанов писал в свое время лисп по доступу в Excel'ным файлам через ADO, но там были какие-то ограничения (сейчас навскидку не помню, а искать просто некогда - посмотри на caduser.ru в разделе "Готовые программы").
Цитата:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
AutoCAD Регистрация: 26.07.2007
Москва
Сообщений: 1,064
|
Капец! Фатал еррор нападает!
Первый раз запускаю макрос, все нормально. Ну, как нормавльно, до Екселя доходит, а там пока не порядок, есть ошибки; останавливаю; подправляю, и при повторном запуске - фатал ерор. Постоянно. Раньше это было редко. Какие методы борьбы с ним есть? |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450
|
А надо просто освобождать память, занятую Excel'ом, освобождать файл и т.п. Я не зря сказал про порочность использования xls в качестве БД...
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Vildar, касаемо вопроса:
У тебя внутри блока, лежит блок с атрибутом кода.Зачем вкладывать блок внутрь блока? Ответ: Я не вкладываю блок с арибутом в бок оборудованя. Когда я достаю об-е из базы через меню (.mnu)- оно выходит единым блоком- все слои блоком. Существует некая база оборудования - много файлов с отрисованым оборудованием в формате dwg (оборудование в базе находится НЕ в блоке и имеет несколько слоев, в одном из слоев лежит атрибут (код оборудования). И у каждой позиции об-я в базе есть свой атрибут (код об-я), а то и несколько кодов(составляющие об-я) А касаемо : Есть куча блоков на чертежен с атрибутами вида: НомерКода1, НомерКода2, и т.д. сколько будет столько и будет в ексель переноситься. И соответственно столько же атрибутов с номером позиции - Номер1, Номер2 и т.д. Если я правильно понял, нужно к оборудованию в базе добавить атрибуты для номеров? Но у меня в базе оборудования (более 1000 позиций) нет АТРИБУТОВ С НОМЕРАМИ. Эти атрибуты (НОМЕРА) должны выдаваться автоматом. Не имея заранее атрибута номера. Я не умею экспортировать атрибуты в эксель кроме как Экстракт атрибут. И не умею импортировать данные из экселя в кад (номера для блоков) ((( ДЛЯ Кулик Алексей aka kpblc Хранить базу в экселе- это необходимость, т.к. она обновляется в эксель файле и так с ней удобнее работать. касаемо: Атрибут, который "достается с помощью ExtractAttributes" - значение ключевого поля соответствующей таблицы БД. Имя оборудования, его описание, остальные данные из базы - соответствующие поля той же таблицы Так и происходит ) По предложению: -вызывается специально разработанное окно обращения к БД. Так и есть - создана менюшка, с ниспадающим списком, из которого выбирается об-е и ставится в чертеж. Но внутри блока есть атрибут с кодом об-я (благодаря которому я и делаю спец-ю) с помощью ExtractAttributes-вытаскиваю коды в лист Excel, далее макрос из базы данных Excel (где как раз и есть все данные) добавляет необходимые ячейки, форматирует спецификацию. Но атрибут (код об-я) пользователи должны видеть (для проверки и наглядности) По поводу: Конечно, это все можно потом наращивать и наращивать (ну, например, решить - обрабатывать только текущий файл или какой-либо иной; обрабатывать или нет внешние ссылки; где хранить и хранить ли вообще номера позиций), Это все не требуется, нужно только по сформированой спецификации из формата Excel вытащить порядковые номерки и поставить их на оборудование. ВОТ ) |
||||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450
|
Е-мое... А написать интерфейс так, чтоб пользователю было удобно с ним работать не судьба? И "что там и где хранится" - дело не пользователя. Он может хоть с MS SQL Server работать, не подозревая об этом.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450
|
Это реакция была на Dmitry AD, к тебе касательства не имеет.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Алексей, конечно было бы неплохо создать удобный интерфейс, при условии, если умеешь это делать и есть непосредственная в этом необходимость. Но на данном этапе это мною скорее всего не осуществимо в виду совсем не глубоких моих знаний акада, посему такие мысли в голове не держу. Есть необходимость лишь в упрощении, и ускорении работы. Вероятно, через некоторое время, проникшись всеми прелестями и возможностями програмирования я и задумаюсь об этом, но не сейчас.
|
||||
![]() |
|
||||
AutoCAD Регистрация: 26.07.2007
Москва
Сообщений: 1,064
|
Отлегло, фуу...
![]() Offtop: Твои критические высказывания действуют примерно также как путинские на мечел -> фондовый рынок чуть не рухнул ![]() У меня такой реакции к Dmitry AD не возникло. Понятно только, что картина описанная в #25 не простая, мне не разобраться. С БД и АДО я не знаком. Как ты понял, что там у него к чему? |
|||
![]() |
|
||||
AutoCAD Регистрация: 26.07.2007
Москва
Сообщений: 1,064
|
Цитата:
![]() В том то и проблема, что номера из екселя непонятно куда вставлять. Можно найти нужный блок по коду. А куда текст с номером вставлять непонятно. Анализировать габариты блока - сложно. Можно попробовать рядом с кодом вставлять (определять по точке вставки кода внутри блока), или прямо поверх кода. Вообщем еще не готово, подожди. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450
|
> #31: Все очень просто - я сам занимался аналогичной задачей. Правда, у меня и отрисовка блоков в результате была программной
![]()
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
AutoCAD Регистрация: 26.07.2007
Москва
Сообщений: 1,064
|
Цитата:
Блоки с атрибутами. (меня немного смущает нумерация - под 400) Я так и предлагал. Значение атрибутов с номером позиции "импортировать" из Екселя. Если у тебя чертежи будут в таком виде, тогда мне проще будет. Но судя потому, что ты написал в #25 - это невозможно. А так, я щас на проблеме из #33 застопорился. Ты продолжай "терроризировать" гуру. Потому что, даже если у меня что-то получится сделать на своей машине, то не факт что у тебя будет фурычить. Например с версией Екселя может быть проблема. У тебя какая версия? |
|||
![]() |
|
||||
Хорошо, давай значение атрибутов с номером позиции "импортировать" из Екселя.
Но спецификацию я считаю все равно по атрибутам с кодом об-я! по#33 проблеме: А если никак не привязывать, по умолчанию циферки сами над атрибутом не встанут? Ексель 2003 года! Давай хоть как нибудь попробуем, а то мой мозг рарывается от колличества обработаной информации! |
||||
![]() |
|
||||
AutoCAD Регистрация: 26.07.2007
Москва
Сообщений: 1,064
|
Цитата:
Цитата:
![]() Еще такая фигня, мероприятие на сегодня-завтра намечается ![]() Так шо возможна небольшая задержка. "Зуб даю" в воскресенье "хоть как нибудь" - будет! |
|||
![]() |
|
||||
AutoCAD Регистрация: 26.07.2007
Москва
Сообщений: 1,064
|
Тестовый вариант.
Прикладываю zip с макрсом, исходные чертежи и тот вид спецификации в Екселе на который все расчитано. Положение строк и столбцов должно ей соответствовать. Номер оборудования ставиться над атрибутом кода. Как и говорил. Лучше не придумал. Еще есть вопрос по масштабу. Какой высоты текст вставлять? Пока сделал тупо 100, как у тебя на чертеже. На кнопку можешь повесить такой макрос: Код:
Перед запуском макроса, должен быть открыт Ексель со спекой! Главное! В случае ошибки, а она будет, уверен на 99%, жми Debug, снимай скрин ошибки и скрин кода в месте ошибки, буду разбираться. PS Кажись зубы целые остануться ![]() |
|||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Сквозная нумерация чертежей | Alxd | Прочее. Архитектура и строительство | 26 | 19.06.2024 09:01 |
Нумерация листов в AutoCad | Sergk | AutoCAD | 21 | 11.03.2022 05:21 |
Обозначение арматуры А500с в спецификации арматурных стержне | Летун | Железобетонные конструкции | 10 | 23.06.2007 10:05 |
Нужна програмка для спецификации | Нютка | Программирование | 46 | 02.04.2007 14:53 |
Нужно ли показывать с спецификации болты, гвозди, анкеры? | Колян | Прочее. Архитектура и строительство | 9 | 14.09.2006 08:09 |