Перейти к публикации

Спецификация для SW по ГОСТ


Ваш опыт использования пакета макросов SWPlus  

630 пользователей проголосовало

  1. 1. Вы используете макросы из пакета SWPlus?

    • Да, постоянно на основной работе.
      460
    • Да, но не на основной работе.
      91
    • Нет
      81
  2. 2. Каие макросы из пакета Вы используете?

    • SpecEditor - для создания спецификаций и ВП
      519
    • MProp - для заполнения свойств моделей
      498
    • DProp - для управления листами чертежа
      346
    • SProp - для заполнения свойств моделей из разделов Стандартные изделия, Прочие изделия и Материалы
      328
    • SaveDRW - для "правильного" сохранения чертежа
      144
    • SaveAsPDF - для сохранения чертежа в формате PDF
      220
    • Master - для создания шаблонов основных надписей
      301
  3. 3. Были ли у Вас проблемы с освоением (изучением) макросов?

    • Нет, мне все интуитивно понятно
      164
    • Да, но я разобрался с помощью форума и описания
      313
    • Да, я до сих пор не могу разобраться как с этим работать
      100
    • Я не стал разбираться, глянул и стер все нафиг
      7
    • Я не пользовался этими макросами
      48
  4. 4. Были ли у Вас проблемы (глюки) с установкой и настройкой макросов?

    • Нет, все установилось нормально
      143
    • Да, но они решились
      282
    • Да, и я до сих пор не могу заставить макросы работать, но хочу это сделать
      154
    • Да, поэтому я и не стал с ними связываться
      7
    • Я не пользовался этими макросами
      46
  5. 5. Устраивает ли Вас подход к автоматизации оформления КД, заложенный в данных макросах?

    • Да
      284
    • Да, хотя кое-что я бы изменил
      261
    • Нет
      23
    • Не знаю
      64


Рекомендованные сообщения

  • 3 года спустя...


UnPinned posts

fox1001

Форматки идут вместе со спецификацией. Для первого и второго листа. Там есть эта заметка с именем Format. (только сейчас увидел что забыл там А4 дописать). Форматки для чертежей подобные этим. Имя можно присвоить только с помощью API. Я для этого сделал маленький макрос.

Namer.rar

Ссылка на сообщение
Поделиться на других сайтах

fox1001

Форматки идут вместе со спецификацией. Для первого и второго листа. Там есть эта заметка с именем Format. (только сейчас увидел что забыл там А4 дописать). Форматки для чертежей подобные этим. Имя можно присвоить только с помощью API. Я для этого сделал маленький макрос.

в каком месте находится эта заметка? чёй-то никак найти не могу...

Namer.swp просит выделить заметку, а я не вкурсе где она.

Ссылка на сообщение
Поделиться на других сайтах

в каком месте находится эта заметка? чёй-то никак найти не могу...

Внизу справа, там где и должна быть по ГОСТ.
Ссылка на сообщение
Поделиться на других сайтах

всё. кажется въехал. щаз поэксперементирую.

баааааааааааааааальшое спасибо за помощь.

Ссылка на сообщение
Поделиться на других сайтах

небольшой косячок у меня на компе после применения макроса MProp (у меня SW2009 SP2.0).

1. прописал материал в MProp (первая картинка)

2. вот что получил в свойсвах детали (вторая картинка)

3. (в основной надписи, в поле "материал" ) поставил заметку с сылкой на свойство модели ($PRPSHEET:"Материал_Таблица"). получил "Материал1" и "Материал3" на одной строке (третья картинка.

4. залез в свойства детали (модели), скопировал текст (просто выделил текст двойным щелчком и Ctrl+C) свойстсва "Материал_Таблица" из колонки "Значение/Текстовое выражение", залез в чертеж этой же детали вставил заметку и Ctrl+V, материалы стоят как положено (четвертая картинка).

может чего не по инструкции сделал?

Ссылка на сообщение
Поделиться на других сайтах

fox1001

Добавьте пробел в начале заметки перед ссылкой на свойство. Свойство надо использовать Материал_ФБ. Материал_Таблица используется для групповых чертежей.

Ссылка на сообщение
Поделиться на других сайтах
  • 2 недели спустя...

С некоторой задержкой выкладываю очередную версию макроса. Основные изменения:

- Добавились дополнительные свойства Справочный № и Первичное применение.

- Добавилась возможность вставлять пустой раздел Комплекты и заданное количество пустых строк

- Появилась возможность сортировки ранее созданной спецификации. При этом сохраняются все ручные изменения, произведенные в разделах Документация и Комплекты.

Самодельные строки в других разделах не поддерживаются, т.к. это вызывает проблемы с позициями, да и вообще противоречит внутренней логике солидовской спецификации.

SpecEditor_v_1_3.rar

Ссылка на сообщение
Поделиться на других сайтах
_Leon_, огромное спасибо. "SpecEditor_v_1_3" - шикарная вещь. а совместно с "MProp" дык просто ваааааащееее... :clap_1:
Ссылка на сообщение
Поделиться на других сайтах

Ну может и не шикарная, но более менее пользоваться уже можно. По крайней мере у себя начиная с этой версии буду внедрять.

Да, забыл сказать. Выравнивание по левому краю я сделал, но чтобы был отступ, от границы ячейки необходимо задать его в шаблоне таблицы. Для столбцов Обозначение, Наименоввание и Примечание. Это я говорю тем, кто использует свой шаблон таблицы. В том, который прилагается к макросу это уже сделано. Программно сделать это не получилось, не нашел функцию.

Ну и баги смотрите, код уже стал развесистый, за всем не уследить.

Ссылка на сообщение
Поделиться на других сайтах

Leon

душевно получилось. Спасибо.

Зачитывает отлично.

У меня после сортировки слетает выравнивание название разделов на последующих листах по вертикали, уходит вверх.

Как можно поправить: чтобы увеличить количество строк таблицы и на 1-ом и на последующих листах спецификации так чтобы основная таблица спецификации доходила до штампа. При исправлении в макросе с 26 на 30 , при этом если наименование имеет 2-3 строчки, строка таблицы налезает на штамп.

Бывает наименование прочих изделий доходит до 5-ти строк.

А можно ли когда вставляешь пустые строки присваивать одновременно и к какому разделу ее отнести а потом сортировать.

Это же относиться к разделу(например "Материалы" в котором будет находиться допустим

ФУМ-лента) .

Ссылка на сообщение
Поделиться на других сайтах

Как можно поправить: чтобы увеличить количество строк таблицы и на 1-ом и на последующих листах спецификации так чтобы основная таблица спецификации доходила до штампа.

http://fsapr2000.ru/index.php?s=&show...st&p=256189
Ссылка на сообщение
Поделиться на других сайтах

Kelny

Наименование у меня имеет 3 строчки.

' Делим таблицу

If i = 1 Then

Set swTable1 = swTable.Split(swTableSplit_BeforeRow, 26)

Else

Set swTable1 = swTable.Split(swTableSplit_BeforeRow, 26 + (i - 1) * 31)

End If

Меняем на 30 в двух местах и получаем строку высотой почти 20 мм, а перенос на другой лист не происходит.

Я обычно текст принудительно между словами ставлю "квадратик как в SWR".

Да когда текст идет подряд он вписывается внутрь ячейки и получается трудно читаем.

А если текст на 5-ти строках(прочие изделия) не хочет вписывать , а делает четыре строчки высотой 24мм,

а если сделать вручную то при последующей сортировки возвращается на четыре строки.

При 26 работает но нужно подправлять.

Ссылка на сообщение
Поделиться на других сайтах

Crab

У меня после сортировки слетает выравнивание название разделов на последующих листах по вертикали, уходит вверх.

Не понятно, как это у вас получается. Покажите картинку.

Как можно поправить: чтобы увеличить количество строк таблицы и на 1-ом и на последующих листах спецификации так чтобы основная таблица спецификации доходила до штампа. При исправлении в макросе с 26 на 30 , при этом если наименование имеет 2-3 строчки, строка таблицы налезает на штамп.

Бывает наименование прочих изделий доходит до 5-ти строк.

Нужно поменять там где указал Kelny и еще в части кода под заголовком "Добавляем строки для корректного переноса"

Вообще я сделал количество строк как у SWR. Сделать вровень со штампом все равно не получится, т.к. подобрать при равной высоте строк нужную высоту и количество для первого и второго листа нельзя.

А можно ли когда вставляешь пустые строки присваивать одновременно и к какому разделу ее отнести а потом сортировать.

Это же относиться к разделу(например "Материалы" в котором будет находиться допустим

ФУМ-лента) .

Можно, но есть проблема с позициями. При сортировке любая пустая или самодельная (несвязанная с файлом модели) строка почему-то все равно нумеруется позицией и это все сбивает. Программно отключить позицию не удается (нет такой функции). Поэтому сейчас при сортировке я оставляю только "живые" строки а все остальное (пустые, заголовки разделов, строки разделов Документация и Комплекты) дописываю потом.
Ссылка на сообщение
Поделиться на других сайтах

Leon

Доброе утро.

' Делим таблицу

If i = 1 Then

Set swTable1 = swTable.Split(swTableSplit_BeforeRow, 30)

Else

Set swTable1 = swTable.Split(swTableSplit_BeforeRow, 30 + (i - 1) * 31)

End If

Вот что получилось: ссылка <noindex>http://files.mail.ru/OQHLKD</noindex>
Ссылка на сообщение
Поделиться на других сайтах

к предыдущему сообщению

А если допустить что наименование имеет две строки то вот что получается

сслка <noindex>http://files.mail.ru/JYNZ74</noindex>

Ссылка на сообщение
Поделиться на других сайтах

Вот что получилось:

Так а вы в разделе "Добавляем строки для корректного переноса" код поправили?
Ссылка на сообщение
Поделиться на других сайтах

После исправления 26 на 30 и 31 на 32 в указанных местах перенос заработал,

кроме как на первом листе если наименование в две строки.

Set swTable1 = swTable.Split(swTableSplit_BeforeRow, 30)

Else

Set swTable1 = swTable.Split(swTableSplit_BeforeRow, 30 + (i - 1) * 32)

Добавляем строки для корректного переноса

nNumRow = swTable.RowCount - 1

'Debug.Print "nNumRow=", nNumRow

k = 1 ' Метка конца таблицы

k1 = 0 ' Количество добавленных строк

n = 30

i = 0

If nNumRow > 30 Then

If nNumRow > (30 + i * 32 - 1) Then

k = 1

n = 30 + i * 32 - 1

If nNumRow > 30 Then

nNumRow = nNumRow - 30

iSheetNumb = Int(nNumRow / 30# + 1.99) ' Число листов спецификации

Ссылка на сообщение
Поделиться на других сайтах

Так, вы похоже не везде все правильно исправили. У меня на первом листе 26 строк, на последующих по 30. Вы хотите сделать 30 и 31 строку? Тогда у вас несколько ошибок. Должно быть так:

If nNumRow > 30 Then

nNumRow = nNumRow - 30

iSheetNumb = Int(nNumRow / 31# + 1.99)  ' Число листов спецификации
и так:

' Делим таблицу

If i = 1 Then

Set swTable1 = swTable.Split(swTableSplit_BeforeRow, 31)

Else

Set swTable1 = swTable.Split(swTableSplit_BeforeRow, 30 + (i - 1) * 32)

End If
Ссылка на сообщение
Поделиться на других сайтах

Буду исправлять и пробовать.

Открыл проект из 1050 деталей и солид вылетает при работе макроса. Вставляет таблицу задумывается и солид выгружается.

Может какие-то ограничения есть.

Ссылка на сообщение
Поделиться на других сайтах
  • SHARit закрыл это тему
  • SHARit разблокировал тему

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.
Примечание: вашему сообщению потребуется утверждение модератора, прежде чем оно станет доступным.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.



×
×
  • Создать...