Jump to content

Recommended Posts

в нано 21 по сравнению с прежней версией поправили

ThisDrawing.SummaryInfo.GetCustomByKey Key1, strVal

теперь оно вызывает исключение если такого ключа нет МОЛОДЦЫ!!!

-----------------------

а на SetCustomByKey  если нет такого ключа исключений не хватило?

ThisDrawing.SummaryInfo.SetCustomByKey Key1, Value1

зачем он создает ключ, когда должен устанавливать его значение, либо вызвать исключение "Ключ не найден"

---------------------

AddCustomInfo  вообще эпик фэйл

Key1="нанодев"

Value1="косячат"

ThisDrawing.SummaryInfo.AddCustomInfo Key1, Value1

ThisDrawing.SummaryInfo.AddCustomInfo Key1, Value1

ThisDrawing.SummaryInfo.AddCustomInfo Key1, Value1

ThisDrawing.SummaryInfo.AddCustomInfo Key1, Value1

Создаст столько одинаковых ключей, сколько будет вызовов, а должен бы вызвать исключение "дублирующийся ключ"

Спойлер

image.png.05ed76bb87d9eaaaf081a3ef451bc55a.png

Руками в нане пользовательские свойства прям чистый мед править)))

Edited by doctorraz
  • Like 2
  • Confused 1
Link to comment
Share on other sites

  • 1 month later...

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

 

Спойлер

image.png.7edcdf04cca604acec1ccb8a285805ca.png

И через GUI "Свойства чертежа" поле с таким ключем не добавить.

 

Кроме этого ключ не может состоять из:

  • имя ключа не должно начинаться/оканчиваться переводом каретки vbCr ,
  • одних пробелов,
  • заканчиваться с пробелом
  • начинаться с пробела (тут опять нанокосяк, GUI даст возможность создать ключ начинающийся с пробела, т.е. нано и   нано это два разных ключа с точки зрения нано, только вот работать со вторым он не сможет, а создать пожалуйста)

-------------------

а вот через ActiveX запросто и никакого исключения сформировано не будет

Key = "\\<>/?:;*|,=`"""
val="запрещено"
objAppDoc.SummaryInfo.SetCustomByKey(Key, val)

Самый прикол, что нана дает возможность сослаться на эти свойства с "кривыми" ключами полем.. и даже, покажет значение поля... пока не зайдешь повторно в редактирование поля)))

=============

В принципе меня это не сильно парит, Regex.Replace рулит, по любому данные проверять.

Спойлер



Key = Regex.Replace(Key, "[\\<>/?:;*|,=`""]", String.Empty) 'мочим запрещенные символы   \<>/?":;*|,=`
Key = Regex.Replace(Key, " {2,}", " ").Trim() 'мочим лишние пробелы, обрезаем пробелы и vbcr

 

PS Делайте хорошо, коль беретесь, а то куда не коснись.. все обрывками какими-то, ошметками...

запрещенные символы в поле.dwg

Edited by doctorraz
нет предела совершенству
  • Like 3
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

  • Tell a friend

    Love Официальный форум компании Нанософт Разработка? Tell a friend!
×
×
  • Create New...