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

Ссылка на Справочник ДОКс


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

Здравствуйте. Может кто подскажет. Есть справочник материалов в ДОКс. Нужно создать в КАД при помощи макроса во множестве файлов Базы данных со ссылкой на данный файл. Мы макрос сделали, он создает базу данных, но она не работает, при обращении к ней через переменную пишет что В документе нет подходящих баз данных. Может кто делал  макрос, который обходил данную проблему.

 

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


UnPinned posts
09.01.2024 в 16:20, VazaVlad сказал:

но она не работает, при обращении к ней через переменную пишет что В документе нет подходящих баз данных.

очень странно, а можете приложить пример-тест grb-файла с внутренней БД, где не работает ссылка с переменной?

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

Здравствуйте.

Вот текст Макроса.

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

 

 

using System;
using TFlex.Model;
using TFlex.Model.Model2D;
using TFlex.Model.Model3D;

namespace NewMacroNamespace

{
    public class DocsSprav
    {
        public static void SpravAdd()
        {
            Document doc = TFlex.Application.ActiveDocument;
            if (doc == null)
                {                    
                return;
                }
            int flag = 0;

            string descriptionsprav = "<PDMDBDescription Reference=\"c5e7ae00-90f2-49e9-a16c-f51ed087752a\">\n  <Parameters>\n    <Parameter>23cfeee6-57f3-4a1e-9cf0-9040fed0e90c</Parameter>\n    <Parameter>d0441280-01ea-43b5-8726-d2d02e4d996f</Parameter>\n    <Parameter>0f154876-a1c3-45e6-a864-ddcd6d096ed1</Parameter>\n    <Parameter>7659625e-7eae-4998-8c94-f1ff9576817d</Parameter>\n  </Parameters>\n</PDMDBDescription>";
            string title = "Материалы";

            foreach (Database i in doc.GetDatabases())
            {
                if (i.Name == "DocsMat")
                    {
                    flag++;
                    }
                }
                if (flag == 0)
                {
                    doc.BeginChanges("1");
                    DOCsReferenceDatabase dbd = new DOCsReferenceDatabase(doc, title, descriptionsprav); 
                    dbd.Name = "DocsMat";
                    dbd.Regenerate(true);
                    doc.EndChanges();
                }
                flag = 0;


        }

    }
}

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

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

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

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

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

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

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

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

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

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

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



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