Имя: Пароль:
1C
 
Как лучше прикрутить DWG к 1C
0 Titan
 
05.05.08
12:09
Задача: Есть производственный отдел, результаты деятельности которого надо сохранить в ИБ. Результатами являются кучка автокадовских чертежей (dwg). Сам чертеж как двоичные данные сохраняется без проблемм. Проблемма возникает при распечатке пакета документов, состоящих из нескольких чертежей. Вариант с открытием dwg вьюира на каждый чертеж и распечатки через него не устраивает. Реализовал один вариант: при сохранении dwg в ИБ из командной строки конвертором dwgtoimage формируется картинка активного автокадовского листа и сохраняется в ИБ вместе с автокадовским чертежом. Теперь можно было бы печатать автоматом картинки на А4, но конвертор оказался платным и формирует гнутые картинки - маленькие (не на А4) и со всякими надписями. Мож ктонить сталкивался с такими задачами? Подскажите напраление как лучше прикрутить dwg к 1Сине?
1 Titan
 
05.05.08
12:32
Можно ли программно запускать автокад и использовать его встроенный конвертор?
2 manyak
 
05.05.08
12:32
крякнуть конвертер :)
3 Immortal
 
05.05.08
12:33
автокад = new ComObject("AutoCAD.Application");
ну а далее уже сам
4 Titan
 
05.05.08
12:34
знать бы как
5 Immortal
 
05.05.08
12:36
(4) скачай какую нить смотрелку методов , или если есть в visual studio можно прицепить, ну а какие методы для чего там и так думаю понятно будет
6 Titan
 
05.05.08
12:36
(3) а список методов где мона найти?
7 manyak
 
05.05.08
12:39
кури справку акада по VBA
8 ATI
 
05.05.08
12:40
Идея! Используй Лисп!
9 Immortal
 
05.05.08
12:41
(6)да хоть в ёкселе..открой редактор VB , Tools-References - указываешь свой ком сеервер автокада, ну а потом там же в Object Browser смотришь методы
10 Titan
 
05.05.08
12:42
(8) Лисп это чтото типа пакетного файла для автокада?
11 Immortal
 
05.05.08
12:42
(8)нихрена се получиццо=))
12 Immortal
 
05.05.08
12:43
лисп это язык автокадовский...говорят тем кто выучил можно памятнег поставить
13 manyak
 
05.05.08
12:47
VBA:
thisdrawing.plot.plottodevice

печатает активный чертеж на дефолтное устройство вывода.
14 ATI
 
05.05.08
12:48
С помощью лиспа можно прикрутить автокад к любой софтине, не только к одинэсине.
Только не получиццо твою задачу решить вроде.
15 manyak
 
05.05.08
12:53
в цикле загружай файл и печатай:

thisdrawing.application.documents.open ("c:\file_name.dwg")
16 Titan
 
05.05.08
12:55
(15) ща попробую
17 manyak
 
05.05.08
13:07
отладь код сначала в самом акаде (Меню "Сервис" - "Макросы"- "Редактор Visual Basic"),  а потом уж в 1С его портируй.
18 Косой
 
05.05.08
13:43
или готоую нетленку прикупи appius.ru
19 smaharbA
 
05.05.08
13:45
автокад работает по оле, но во многих разах придется использовать как обертку ексель
20 Стальная Крыса
 
05.05.08
14:25
(12) "памятнег" надо ставить тому кто выучил ObjectARX.  :)
21 Titan
 
05.05.08
15:34
Задача решена Всем большое спасибо за советы.

Для конвертации dwg в jpg воспольовался внутр. автокадовским конвертором:

   автокад = new ComObject("AutoCAD.Application");
   автокад.Documents.Open("D:\DWG\my1.dwg");
       ДокАвтокада = автокад.ActiveDocument;
   ДокАвтокада.Plot.PlotToFile("D:\results\my1.jpg");

в случае если треба отправить куданить на печать вместо последней строки можно воспользоваться:

       ДокАвтокада.Plot.PlotToDevice("PublishToWeb JPG.pc3");

где PublishToWeb JPG.pc3 - печатающий девайс
22 Titan
 
05.05.08
15:36
правда во всем этом процессе один минус - тормозит при конвертации/печати страшно
23 vde69
 
05.05.08
15:43
(21) думаю, что проблемма не совсем решена :)
для акада довольно много траблов с печатью особенно они зависят от установки и окружения ...

говорю это по сколько сам писал драйвер для плотера под 10 акад и памятник мне нужен (не один десяток страниц лиспа написал).

реальных выхода 3:
1. использовать сторонний вьювер с возможностью печати (их довольно много)
2. использовать DDE сервер акада
3. использовать промежуточный формат (например dxf)

кроме того есть заморочки с 3d обьектами - там используется формат SAT на него описалова просто нету нигде
24 Titan
 
05.05.08
15:48
(23) согласен - Автогад нашпигованная штучка, но направление есть куда рыть, все остальное дело времени и терпения
25 Titan
 
05.05.08
15:51
кстате по автогаду очень помог ресурс www.caduser.ru
26 vde69
 
05.05.08
15:58
(23) для затравки дам еще наводку:

в заголовке dwg лежит рисунок (в векторном формате) последнего видового экрана, я смотрелку этого делал еще 8 лет назад, можешь его тащить на канву (это для БЫСТРОГО просмотра)

кроме того можешь взглянуть в сторону "слайдов" акада, там тот-же формат
27 Titan
 
05.05.08
16:04
(27) да ладно! круто будем посмотреть
28 vde69
 
05.05.08
16:08
29 vde69
 
05.05.08
16:12
слайд менеджер http://www.kulichki.com/cadhlp/old/asm_22.zip
30 Titan
 
05.05.08
16:14
(28) спасибки! весч!