Jump to content

Search the Community

Showing results for tags 'таблицы'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Общие форумы
    • Принципы распространения продуктов Нанософт
    • Общие вопросы
    • Скачать полезное
    • Обсуждение любых САПР
  • Тематические форумы
    • nanoCAD как платформа
    • модуль СПДС
    • модуль Механика
    • модуль Топоплан
    • модуль 3D
    • модуль Растр
    • модуль Организация
    • nanoCAD Механика 3D
    • nanoCAD GeoniCS
    • nanoCAD BIM Конструкции
    • nanoCAD BIM Электро
    • nanoCAD BIM ОПС
    • nanoCAD BIM СКС
    • nanoCAD BIM ВК
    • nanoCAD BIM Вентиляция
    • nanoCAD BIM Отопление
    • nanoCAD СПДС Металлоконструкции
    • nanoCAD СПДС Стройплощадка
    • nanoCAD Конструкции (модуль КЖ)
    • Функциональные расширения nanoCAD
    • Поддержка ОС Linux
    • Портал Технической поддержки
    • nanoTDMS
  • Программы членов Клуба разработчиков
    • KDM-INFO
    • Проектное бюро "Фордевинд"
    • VetCAD++
  • Не о программах
    • Юмор
    • Вопросы и пожелания по работе форума
    • Вопросы и пожелания по работе сайта
    • Новостная лента сайта nanoCAD.ru

Categories

  • Файлы

Blogs

  • Фишки и трюки nanoCAD
  • Делюсь опытом работы с Cad программами
  • Полезные ссылки и закладки
  • Блог MaxSoft о nanoCAD
  • Утилиты nanoCAD или как упростить работу в программе
  • Конкурсы nanoCAD
  • О разном
  • cad admin notes
  • Заземление и молниезащита в NanoCAD Электро.

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Сайт


ICQ


Skype


Город


Интересы

Found 12 results

  1. Бодрого дня. По разному вставляться таблица из одного файла .xls на разных ПК На трех ПК одинаковая ширина таблицы, а на одном таблица получается немного шире. На черном фоне нормально вставлена, на белом таблица вставляется шире (пометил оранжевым). Подскажите где поковырять.
  2. Сделал автозаполнялку , по результатам боевых стрельб внезапно выяснилось, что нана не умеет работать с полями нативных объектов. Зато умеет вставлять поля из свойств документа (хотя возможно в следующей версии пофиксят и все будет наоборот))) Возник вопрос, как запихнуть данные в свойства документа.... Руками прям не вдохновляет Второй вопрос откуда эти данные брать, решился просто, коль у нас на чертеже есть таблица, (автозаполнялка) в которую мы занесли все сведения... отчего бы данные не подтянуть из нее. Принцип в кратце: Хватаем конкретную таблицу на чертеже Пробегаем по значениям именованных ячеек Имя ячейки пишем как ключ в пользовательские свойства документа Значением-свойством ключа будет содержимое ячейки ------------------------ Некритичные проверки исключений я не делал, кому надо вполне может дописать, как надо Если изменить "комментарии" ячеек, то соответственно в свойства документа запишутся другие ключи Все ключи пишутся в пользовательские свойства документа, но при желании можно писать и в Под спойлером код, старался комментировал)) Сразу скажу из скрипта VBS внутри наны этот код работать не будет, хотя конечно заманчиво... (значения ключей и свойства должны быть String и никак иначе, а в скриптах типы данных я не умею ) Поэтому этот код запускается из Excel большой красной кнопкой. В принципе, как дальнейшее развитие, этот код можно причесать, откомпилировать и запускать, хоть из командной строки нано, из меню или кнопкой на панели. В аттаче шаблон чертежа и большая красная кнопка. PS кода без багов не бывает, поэтому по мере... буду улучшать Автозаполнялка через поля документа V2.dwg docProp.xlsm
  3. По мотивам видео уважаемого @MCAD Собрал заполнялку форматок СПДС на основе таблиц... Коротенько что умеет и зачем... 1. Заполняет реквизитную часть основных надписей Но в связи с тем, что в таблицах бага (несколько (много ) отчетов начинают глючить, а мне надо много) Эта таблица заполняет данными другие таблицы.. Собирает данные с форматов в чертеже (мне надо для статистики по разделам, листов и приведение к А1) UPD 19.05.2021 15:50 Заполняет данными блок с атрибутами (иначе как мне взять полем в текст или мтекст??) И берет с этого блока поля имени файла и путь файла ( заодно объехали еще одну багу с отцепляющимися полями в таблице при изменении в таблице количества строк и еще одну багу лишний пробел в начале строки) из за баги в нано (атрибуты из блоков в тексты не держатся, слетают и глючит) поэтому написал простенький VBA который значения именованных ячеек таблицы записывает в пользовательские свойства документа, а вот оттуда уже можно подтянуть полем в любой объект. Бонусом при вставке текста с полем в любой документ, если у документа есть такие пользовательские свойства все подтянется автоматически. Продолжение истории))/UPD ------------------- Маленькие таблицы: непосредственно заполняют основные надписи форматок нумеруют форматки (слева направо снизу вверх, можно перенастроить) В первом формате ставят количество форматов. В маленьких таблицах нужно только задать область в которой расположен раздел и имя раздела (то что в обозначении после точки... СО, КЖ, Д, Р) Кому интересно качайте шаблончик, включайте скрытые строки и разделы (их там есть), разбирайтесь как это работает и конечно адаптируйте под свои нужды (кто проектирует проект файл) Связи можно посмотреть-проверить по SPREFSHOW ------------------------ Критика только приветствуется)) ЗЫ возможно чего вспомню еще допишу, но проще раз увидеть ------------ upd перезалил шаблон, чегойто два файла прицепилось))) Автозаполнялка.dwg
  4. Хочу написать гайд по отчётам таблиц, который будет понятен и нагляден. Делаю это в первую очередь для коллег с которыми работаю, но, надеюсь, пригодиться и кому-то ещё. 0. Оговорка Работаю в Нанокад СПДС 6.0 1. Задача Поставим очень простую, но часто встречающуюся задачу - сложить длину объектов - в нашем случае надо будет узнать общую длину всех отрезков в указанной области в определённом слое. 2. Начало работы. Для удобства прикладываю файл, с которым буду работать Отчёт по объектам.dwg Первым делом вызовем таблицу (команды TABLE, ТАБЛИЦА ) Теперь надо выбрать поле "Отчёт по выборке объектов" и нажать кнопку "Выбрать". Появляется меню быстрого выбора. Тут немного остановимся. Давайте разберёмся как им правильно пользоваться в текущей ситуации. Разбираемся в значках - Поиск объектов во всём документе (Модель и листы) - Поиск объектов в текущем листе (либо модели) - Поиск в прямоугольнике - Поиск в текущем наборе - Указать на чертеже (сейчас серым) - Загрузка шаблона - Очистить список условий. Первые два значка ( и ) в принципе вопросов не должны вызывать - при выборе параметров из меню ниже, поиск объектов будет производится во всём объектов () либо в текущем листе/модели () Что такое "Поиск в прямоугольнике" ( )? При выборе этой опции, будет производится поиск элементов только в указанной области. Область можно задать только одну при этом. При нажатии на кнопку у нас появится возможность задать прямоугольный участок в котором будут выбраны все объекты. Вроде бы удобно, но для первоначального создания отчёта по выборке объектов не рекомендую. А не рекомендую вот почему - выбираем нашу область с отрезками и полилиниями и получаем следующую картину: Выбрались все наши элементы. А нам нужны только отрезки. Но вроде не велика беда, можно выбрать не нужные нам элементы (в данном случае полилинии) и, нажав на "+" убрать их из выборки выбрав строку "(Нет объекта)" А теперь предположим что мы работаем с реальным чертежом. Задача та же, только в этой же области присутствуют и блоки и размеры и много других элементов которые нам не нужны. Нам придётся выбрать каждый из них и удалить подобным образом. Не очень-то и удобно, согласитесь. Конечно, мы можем просто нажать и тем самым удалить все объекты из выбора, а после руками выбрать нужный, но это несколько лишних кликов и затраченное время на поиск нужных параметров из списка. Поэтому для первоначального выбора объектов советую использовать - поиск в текущем наборе. Эта опция позволяет выбрать конкретные объекты на чертеже. Теперь, чтобы всё сработало корректно, выходим из создания отчёта (жмём esc), повторяем предыдущие шаги, только вместо выбора объекта с помощью , выбираем . Вас перекинет на чертёж с возможностью выбрать объекты. Выбираем отрезок, но не любой, а сразу тот, который находится в слое "Надо сложить" (жёлтый). И вот почему: Сейчас мы будем настраивать наш поиск. Мы сразу выбрали тип элемента который нам нужен, и поэтому сможем легко настроить наш поиск так, чтобы случайно не захватить другие элементы. Первое - мы выбираем только отрезок - уже есть. Второе - наш отрезок должен быть в определённом слое - добавляем условие - щёлкаем в столбце "Значение" напротив "Слой" и выбираем слой "Надо сложить": В столбце "Условие" выбрался автоматически знак "равно" - само за себя говорящие условие) В значение же выбора слоя из предложенных было всего одно - "Надо сложить" - это благодаря тому, что мы выбрали всего 1 объект. Если бы выбрали несколько объектов в разных слоях, то таких бы вариантов было бы несколько. Фильтр настроили. Теперь важный момент - после первоначальной настройки фильтра повторный выбор объектов с помощью и уже не будет менять фильтр. Так же активируется команда - Указать на чертеже. Попробуем её нажать. Нас возвращает к модели и появляется возможность выбрать объекты. Выберем все элементы на нашем чертеже. Подтвердим выбор. Получаем следующее окно: Что произошло? Мы выбрали все элементы на чертеже, но из-за настроек нашего фильтра в выборку попало лишь 5 отрезков - причём наш фильтр учтиво сообщает нам, то отрезков выбрали мы всего 7, но лишь 5 из них соответствуют нашему условию. Теперь ещё интересней. Нажмём на - Поиск в прямоугольнике. Выбираем так же все элементы на чертеже, только уже с помощью прямоугольника. Видим ту же самую картину: И теперь при нажатие на у нас появляется возможность повторно выбрать область на чертеже. Делаем вывод, что отвечает за повторный выбор элементов ранее указанным способом. Но в чём же отличие между и? С помощью - мы выбираем не объекты, а область чертежа, в котором будем искать объекты. С помощью - мы выбираем конкретные объекты, среди которых будем искать удовлетворяющие нашему фильтру объекты (простите за тавтологию :)) . Когда удобнее что из этого использовать, узнаем дальше. А теперь наконец-то жмём кнопку "ОК". Получаем следующую картину: Меню с галочками - это свойства объекта, которые будут доступны в отчёте. Вначале ставим галочку "Изменять свойства объектов из отчёт" Далее жмём "Ни одного", чтобы снять выбор со всех свойств и выставляем галочку на свойстве "Длина (Length)", так как мы собираемся узнавать длину =) Жмём "ОК" и вставляем полученную таблицу на чертёж. И сразу по двойному клику заходим в неё 3. Работа с отчётом. Наш отчёт: Строка "Шаблон отчёта" позволяет вводить формулы, которые будут применяться ко всем элементам отчёта. Сейчас там у нас строка "=Object.Length", которую можно прочесть так - мы выводим свойства объекта "Object", которое называется "Length" Т.е. для всех наших 5-ти отрезков мы получили по строчке от каждого, содержащего его длину. Если хотите узнать какому отрезку принадлежит то или иное значение, то отведите окно таблицы чуть в сторону, чтобы было видно наш чертёж и тыкните в интересующую вас ячейку: Видим, что зелёным подсветился отрезок, которому соответствует выбранная ячейка отчёта Если тыкнуть в зелёное поле шаблона отчёта, то подсветятся все элементы, которые участвуют в отчёте. Хорошо, у нас есть отчёт, что с ним делать? Нам надо узнать сумму всех отрезков. Самый простой способ - взять калькулятор и сложить то, что мы видим на экране. А если отрезков много? Жмём на надпись "Шаблон отчёта" ЛЕВОЙ кнопкой мыши и выбираем "Итог отчёта" Появляется соответствующая строка в конце нашего отчёта. Правой кнопкой мыши жмём по ней и выбираем "Сумма" Вуаля. Наши длины просуммировались. 4. Наглядная разница в выборах и Нажмём на кнопку - выбрать исходные объекты. Откроется нам уже знакомый фильтр объектов. Увидим вверху, что у нас сейчас выбран - Поиск в прямоугольнике Повторим наш выбор кнопкой и выберем область аккурат по замкнутой полилинии в слое 0 на чертеже: Жмём "ОК", закрываем таблицу Теперь давайте скопируем один из отрезкой внутри нашей выбранной области Теперь зайдём в нашу таблицу. В моей версии отчёт придётся обновить нажав на кнопку обновить вверху окошка, либо нажав на жёлтую лампочку Увидим, что у в отчёте появился дополнительных объект - это копия нашего отрезка Жмём и теперь выбираем все объекты на чертеже с помощью - Поиск в текущем наборе Закрываем таблицу, копируем отрезок ещё раз: При обновлении таблицы видим, что новых объектов не появилось Возвращаемся к тому, что говорилось ранее: С помощью - мы выбираем не объекты, а область чертежа, в котором будем искать объекты. С помощью - мы выбираем конкретные объекты, среди которых будем искать удовлетворяющие нашему фильтру объекты (опять же, извините за тавтологию :)) . Т.е. в первом случае мы выбрали область и работали с объектами в этой области - поэтому при копирование отрезка внутри указанной нами области он добавился в отчёт. Во втором случае мы работали с заранее выбранными объектами, поэтому при добавление нового отрезка на чертёж он никак не учитывался, потому что не входил в изначальный набор Плюсы и минусы обоих способов: 1. Плюс - при добавление объектов в указанную область отчёт обновляется Минус - при копирование таблицы с помощью команды COPY, область не перемещается за таблицей, а остаётся на том же месте (хотя в каких-то случаях это и плюс): BPqBHVrlji.mp4 2.Плюс - при копирование таблицы вместе с объектом отчёта, отчёт будет привязан к скопированному объекту: s1tCO2FDsd.mp4 Минус - при добавление новых объектов на чертёж они ни как не учитываются в нашем отчёте. 5. Работа с формулами. Уже не плохой результат, верно? Можно, казалось бы на этом и остановиться, но. Предположим ситуацию, что нам надо сложить длины отрезков разных слоёв по-отдельности. Для каждого типа делать новую таблицу? Как вариант. Но, предположим, что таких типов будет 30? Тут приходят на помощь формулы и группировка строк. Удалим фильтр наших объектов по слоям. Жмём и в строке "Слой" в значение выбираем "Сброс" Теперь в наш отчёт включены все отрезки, не важно в каком они слое. Добавим столбец (ПКМ по заглавию столбца А -> "Добавить столбец") Теперь в полученном столбце B жмём ПКМ в 1 строке (строка шаблона отчёта) и выбираем из предложенных вариантов Object.Layer(Слой) Получаем информацию для каждого нашего отрезка по-мимо его длины ещё и слой в котором он находится. Теперь заходим в "группировку и объединение" Добавляем правило "Группировать" и закидываем сюда из окошка справа столбец B Видим, что наш отчёт преобразился. Что произошло? Наш отчёт сгруппировался по значениям в столбце B - это значит, что сгруппированные ячейки теперь в себе несут сразу все элементы по тому критерию, по которому мы их сгруппировали. Проверим это, тыкнув на любую из ячеек, чтобы подсветить элементы на чертеже: AdP6b4I4gT.mp4 А теперь магия. Жмём ПКМ по строке шаблона отчёта в столбце А и выбираем "Выражение" Нас перебрасывает в специальное окно, предназначенное для написания формул. Что мы тут видим 1. Наше записанное выражение 2. Подсказки по существующим формулам и выражениям 3. Результат нашего выражения Результат записан несколькими значениями, потому что у наших элементов (отрезков) показатели длины разные. Теперь самое сложное. Вспомним, что мы сгруппировали строки по значениям в столбце B. Т.е. по факту напротив столбца B в столбце А у нас не одно значение, а множество значений элементов, свойства слоя которых соответствуют значению в столбце B. Простыми словами на нашем примере - напротив значение слоя "Надо сложить" в столбце А у нас не одна длина отрезка, которую мы видим, а несколько. Поэтому, если мы запишем нашу формулу не просто как: =Object.Length а как: =sum(Object.Length) В ячейка напротив слоя мы получим значение сумм всех отрезком в данном слое P9YdPrt6Xn.mp4 Как итог "итог отчёта" нам уже и не нужен. Теперь просто наведём красоту и переведём единицы измерения отрезков в метры - разделив на 1000 и округлим до 2-го знака после запятой. Для этого нашу формулу преобразуем в: =round(sum(Object.Length)/1000;2) httVcaAbMw.mp4 Для того, чтобы подробнее узнать как правильно писать ту или иную формулу и что они делают, открываем "Выражение" и смотрим подсказки: urvv7fKfWr.mp4 6. Важное дополнение С помощью отчётов и группировок в этих отчётов можно массово изменять свойства объектов В моей версии продукта это не работает с отрезками, но не исключаю, что в новой уже можно. Это, к сожалению, не работает с примитивами платформы (отрезки, полилинии и т.п.) и нативными свойствами объектов (слой, цвет и т.п.). Я в основном использую для изменения свойств параметрических объектов, а так же атрибутов блоков К примеру - изменения номеров штампов по положения в прострастве чертежа: rSrSnaFeAn.mp4 Так же знаю, что в новых версиях продукта были добавлены функции, которые позволяют автоматически изменять параметры объектов - одно из применений этих функций - это автоматическое обновления позиций объектов, при добавление новых элементов Советую так же, после того, как овладеете отчётами, познакомиться с командами SPTBLPREP - если ввести эту команду и выбрать таблицу, позволит повторно выбрать для этой таблицы объекты отчёта (не надо заходить в редактор таблицы) SPREFSHOW - при выборе таблицы, простроит линии связей между строками отчёта и элементами spDataExtraction - позволяет делать отчёт по элементам находящимся на другом чертеже. А функции SPTBLPLUSFRAME - привязать таблицу к формату SPTBLMINUSFRAME - отвязать таблицу от формата будут в принципе полезны при работе с таблицами. Угол привязки таблицы к формату указываются через свойство таблицы "Угол вставки". На этом всё. Надеюсь смог познакомить вас с отчётами в таблицах. Таблицы нананокад, а особенно эти самые отчёты, - очень мощный инструмент, и при правильном пользование могут сэкономить вам кучу времени. На данный момент, я работаю с нанокадам в течение уже 6-ти лет, и использую таблицы повсеместно - от подсчёта кладки на чертеже, до автоматического заполнения ТЭПов и спецификаций элементов.
  5. Здравствуйте! Подскажите, пожалуйста. Хочу в ячейке таблицы вставить формулу и сослаться на значение из другой таблицы внутри одного файла. Как это сделать?
  6. Есть таблица экспликация помещений. Значения подставляются из чертежа естественно. Я копирую таблицу через буфер обмена в другой файл, и получаю в место таблицы "Видимых строк нет". Я так понимаю это потому что объектов, на которые ссылается таблица, в этом новом файле нет. Как мне преобразовать эту таблицу чтобы разорвались связи с объектами чертежа, но при этом таблица осталась таблицей и сохранились значения ячеек? Взрывать не хочу, потому что это не правильно.
  7. Добрый день! Можно ли сохранить в базу таблицу со вставленными в нее блоками? Создал таблицу, сохранил ее в базу, но при вставке из базы, или при копировании блоки из таблицы пропадают.
  8. http://habrahabr.ru/company/nanosoft/blog/198788/ В предыдущих статьях о таблицах в MultiCAD.NET речь шла о программном создании и форматировании таблиц в чертеже, использовании различных типов данных в качестве содержимого, а также о применении шаблонов таблиц. Эта статья продолжает рассказывать об использовании шаблонов и более подробно рассматривает API, позволяющий сохранить таблицу во внешний файл в качестве шаблона и загрузить его в чертеж для формирования типовых таблиц. Во второй половине статьи рассматривается процесс обмена данными с Microsoft Excel.
  9. http://habrahabr.ru/company/nanosoft/blog/198774/ Предыдущая статья знакомила вас с примером использования табличного функционала MultiCAD.NET API для автоматического создания отчета по выбранным объектам. Эта публикация рассказывает об основах работы с таблицами: создание и форматирование простейшей таблицы, наполнение таблицы данными в текстовом и числовом формате, использование формул. Также описывается добавление блоков и подтаблиц в качестве содержимого ячеек и использование свойств объектов чертежа в качестве динамически изменяемых данных таблицы.
  10. http://habrahabr.ru/company/nanosoft/blog/197794/ Как известно, практически ни один чертеж не обходится без табличного оформления: таблицы применяются для создания объектов, содержащих количественную информацию о конструкции, ведомостей элементов, спецификаций и др. Типичной задачей, с которой сталкиваются проектировщики, является формирование табличного отчета по выбранным объектам чертежа. Автоматизация этой задачи позволит избавить пользователя от рутинной работы, тем самым сократив затраченное время и количество ошибок. В качестве примера в статье рассматривается формирование итоговой ведомости электроприборов по плану расположения оборудования (или, проще говоря, по чертежу, иллюстрирующему распределение электрических розеток по помещениям).
  11. Поддерживает ли nanocad вставку таблицы из libreoffice? Если нет, то когда такая поддержка появится?
×
×
  • Create New...