|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
![]() |
Поиск в этой теме |
|
||||
Я бы не рекомендовал использовать VBA в автокаде, когда совсем закончится его поддержка, что вы будете делать?
__________________
Чем гениальнее ваш план, тем меньше людей с ним будут согласны. /Сунь Цзы/ |
||||
![]() |
|
||||
Регистрация: 06.04.2009
Сообщений: 702
|
Так или иначе, объектную модель врядли отменят. Я имел ввиду VBA в Акцессе и доступ через объектную модель (библиотеку типов автокада), сам автокад предварительно не открывая.
__________________
КазнитьØнельзяØпомиловать:eek: |
|||
![]() |
|
||||
Цитата:
Это факт. Цитата:
![]() ![]()
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
![]() |
|
||||
Оросительные системы Регистрация: 02.07.2010
Сообщений: 166
|
Цитата:
|
|||
![]() |
|
||||
Через объектную модель AutoCAD, не открывая его?
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
![]() |
|
||||
не работает у тебя - я только что скинул её (для проверки) нескольким людям - у них всё работает. Возможно, что админы твоей компании поставили запрет на посещение пользователями сайта YouTube.
Offtop: а ты шустро общаешся - в день по сообщению ![]()
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: Последний раз редактировалось hwd, 21.10.2010 в 10:58. |
||||
![]() |
|
||||
Регистрация: 06.04.2009
Сообщений: 702
|
Вот пример база db1 в ней Форма1, надо выбрать трассу и жать кнопку с биноклем, ошибок не обрабатывал, чертит трассу в файл рядом с базой. акцес-2003, автокад 2009 (2008, 2007)
__________________
КазнитьØнельзяØпомиловать:eek: |
|||
![]() |
|
||||
>Сергей Дубина
Довольно таки недурно... Правда если "придираться", то возникает ряд небольших замечаний: 1. В коде жёстко задано, чтобы mdb-файл находился в "Моих Документах" - иначе файл не находится и генерируется ошибка. 2. Не проставляется нумерация точек (причём желательно на спец. отведённом для этого дела слое). 3. Хранить все данные в одной таблице, в данном случае нецелесообразно, в виду дубляжа информации (но для примера сойдёт). Вносить данные в такую таблицу тоже довольно таки неудобно. 4. Пользователь жмет кнопку, и сидит в ожидании сообщения, что мол операция выполнена, а сообщения никакого нет... 5. По поводу VBA-кода: код довольно компактный (весомый плюс). Замечания следующие: 5.1 Открывать подключение нужно как можно позже, а закрывать, как можно раньше. Поэтому строки кода Код:
Код:
=================== В целом предложенный вариант решения мне понравился (указанные выше замечания легко устранимы).
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
![]() |
|
||||
Регистрация: 06.04.2009
Сообщений: 702
|
Приведенный пример лишь демонстрация возможностей. В нем также не учитывается толщина линии о которой просил автор.
По замечаниям: Цитата:
п. 2 - не задавался целью. п. 3 - Давай не будем, об этом можно спорить бесконечно. п. 4 - Согласен п. 5.1. Согласен, спасибо. п. 5.2. Посоветуй статейку к.л. на эту тему.
__________________
КазнитьØнельзяØпомиловать:eek: |
|||
![]() |
|
||||
А спорить и не нужно, есть такое понятие, как нормализация баз данных. Избыточности информации однозначно быть не должно (это даже не обсуждается). Поэтому указанное мною в п.3 - это указание на ошибку в проектировании структуры базы данных (если придираться).
Ну, тут даже если логически рассуждать, можно увидеть минус: - если по какой либо причине спустя некоторое время нужно будет подправить запрос - придётся вносить изменения в код и перекомпилировать его, а это не есть гуд. В среде разработчиков программного обеспечения, зашивание sql-кода в программный код считается очень плохим решением. Конкретных ссылок на статьи у меня нет, это нужно в гугле искать или проще - напрямую задавать на эту тему вопрос на форуме профессиональных программистов. Помнится в 2008 году я был на презентации MS Visual Studio 2008 в СПб, и там показывали пример, в котором программист прописал sql-запрос в коде приложения. Докладчик прокомментировал этот код так: "Надеюсь, что программист, написавший данный фрагмент кода, более не работает в этой компании". Вообще в идеале нужно взаимодействовать с базой данных посредством хранимых процедур, принимающих нужные параметры - это позволит избежать SQL-инъекций (ей зачастую подвержен код в котором для построения запроса используется конкатенация строк). Поскольку хранимка находится в базе данных, модификация запроса хранимки не потребует перекомпиляции исходного кода программы + защита от SQL-инъекций. Нет. Думаю, что он использует значение CurrentDirectory - каталог, который был выбран в последнем сеансе работы диалогового окна открытия файла/каталога в ОС Windows.
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: Последний раз редактировалось hwd, 29.10.2010 в 11:13. |
||||
![]() |
|
||||
Регистрация: 06.04.2009
Сообщений: 702
|
Вот любите вы программеры из пушки по воробьям стрелять.
Цитата:
Цитата:
А это надо еще проверить!
__________________
КазнитьØнельзяØпомиловать:eek: |
|||
![]() |
|
|||||
Цитата:
Нет, просто любое решение нужно изначально планировать и только потом садиться за код. Цитата:
Цитата:
![]() Ну так проверь ![]() Я писал: Цитата:
![]() п.с. Я только что проверил - моё предположение оказалось отчасти верным: Если через проводник открыть твой mdb-файл, лежащий не в "Моих Документах" и запустить команду построения трассы - получаю ошибку. Если файл закрыть (не закрывая Access) и затем в Access вызвать окно открытия файла, пройдя в нужный каталог и выбрать твой mdb-файл, то в этом случае для MS Access текущий каталог устанавливается на тот каталог, в который ты прошёл и выбрал mdb-файл. Теперь если запустить команду построения трассы - ошибки не произойдём и трасса будет вычерчена.
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: Последний раз редактировалось hwd, 29.10.2010 в 12:06. |
|||||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Информация по идентификационным кодам программ в сетевых лицензиях Autodesk | KSI | AutoCAD | 1 | 14.09.2009 15:59 |
Автозагрузка приложения до загрузки чертежа | Ax3 | Программирование | 14 | 15.02.2008 23:29 |