|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Ошибка " *** INTERNAL ERROR: VL namespace mismatch " при выполнении фукции
инженер
Тамбов
Регистрация: 29.01.2009
Сообщений: 63
|
||
Просмотров: 6471
|
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406
|
Я думаю, что просто сваливает в бесконечный цикл из-за строк
Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406
|
Возможно, повторов нет. Откуда я знаю, какие символы на какие меняются?
P.S. Как вариант - я преобразовываю строку в список, а потом список уже в строку. Работает, как правило, всегда ![]() Код:
Код:
Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. Последний раз редактировалось Кулик Алексей aka kpblc, 24.02.2013 в 22:38. |
|||
![]() |
|
||||
инженер Регистрация: 29.01.2009
Тамбов
Сообщений: 63
|
Спасибо за вариант. Но собственно, зачем такое двойное преобразование? (И не совсем понятно мне использование. исходная и старая строки - они же одинаковые). У меня не заработало. сорри.
У меня изначально идут строки. обычный single line text и все примитивы которые надо заменять такие. multiline text я не использую. А поменять нужно например такие строки/символы: "socket 0462-209-16" на "socket 0462-203-12" или "АМР 282080-1" на "АМР 282104-1" ну и в таком роде все. Причем ето меняется как в модели, так же и в layouts. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406
|
Так строки надо менять или символы?
Я-то код предоставил для варианта: (_kpblc-string-replace "socket 1234-578 socket" "socket" "Sck") ; "Sck 1234-578 Sck"
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406
|
Я знаю только один вид парт - школьные.
Цитата:
Вообще говоря, похоже, что задача на несколько порядков проще, чем я думал вначале.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
инженер Регистрация: 29.01.2009
Тамбов
Сообщений: 63
|
Прошу прощения за некорректность высказывания
![]() ![]() Смысл такой что надо поменять например марку детали с 12047785 на 12064760. Да в общем это не столь и важно, что обозначают эти данные. Можно считать что это бувенно-цифровая последовательность, просто значения текстового поля. И засенить их надо как я уже писал в модели и на листах (layout) одновременно. Вот собственно что мне нужно. И в случае когда значение которое нужно заменить, имеет более 9 символов, приведеная выше функция вылетает с ошибкой. Может просто не так понятно объяснил проблему в начале. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406
|
Полный код свой показывай.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
Похожая тема
|
|||
![]() |
|
||||
инженер Регистрация: 29.01.2009
Тамбов
Сообщений: 63
|
Почти, а вообщето нет. В той теме люди не знают что вызывает такую ошибку, в результате чего удаляют все лиспы и иже с ними. Здесь я знаю что вызывает такую ошибку (моя прога) и даже знаю при каких условиях, и прошу помощи в ее редактировании.
|
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406
|
Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406
|
Мне было лень переразбирать весь код... Проще новый написать
![]()
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
инженер Регистрация: 29.01.2009
Тамбов
Сообщений: 63
|
Слишком круто! Спасибо! И многое из написанного не понятно. Завтра проверю на файле. Отпишусь тогда.
Поясни, а зачем нужно преобразвание текста в список и обратно? Не думал, что поиск и замена текста будет такой глобальной проблемой. По форуму поиск интересующих меня результатов не дал. Может есть какой-то более легкий вариант поиска/замены? А вот фукция _find интересно как работает? Она виндовозная? Спасибо! |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406
|
Мне так проще. Особенно учитывая, что иногда приходится менять, например, "-" на "->". Другие варианты иногда выдавали неверные результаты.
Для кого? Я один раз написал библиотечные функции и использую их по мере надобности. Подробнее о таком подходе см. "САПР на базе AutoCAD - как это делается". Может, и есть ![]() ![]()
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406
|
Образец в студию!
И какие значения устанавливал для замены
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
инженер Регистрация: 29.01.2009
Тамбов
Сообщений: 63
|
Образец чего?
Ну например решил поменять дату для начала на layouts с 00/00/00 на 26/02/13. не поменяла. для теста в модели - сменила. Ты вот в начале умную мысль сказал, а я особо и не обратил внимания, что цикл в засисон бесконечный уходит. Я проверил, и ведь действительно уходит. Только при условии, что я задаю поменять значение "типа само на себя", например есть выражеине "Connector TYCO p/n", а я хочу его заменить на "Connector TYCO p/n C-0480698-10-3". Значит прога моя-то что делает? - Ищет первое выражение и меняет на второе. После нескольких циклов получается такая вот фигня "Connector TYCO p/n C-0480698-10-3 C-0480698-10-3 C-0480698-10-3" ну и т.д. Может знаешь, как ей это условие прописать, чтобы она так не делала? Добавлено через некоторое время раздумий: Помоему я нашел как обойти это (может не совсем правильно с точки зрения лиспа): Я добавил промежуточную замену. Тоесть "Connector TYCO p/n" я меняю на произвольную неповторяющуюся последовательность "9797979", а ее уже меняю на "Connector TYCO p/n C-0480698-10-3". Код:
Последний раз редактировалось Michael!, 26.02.2013 в 14:06. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406
|
Я ж предлагал:
Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
инженер Регистрация: 29.01.2009
Тамбов
Сообщений: 63
|
К сожалению файл рабочего чертежа выложить не смогу. Слишком много данных.
А по поводу программы - я продолжаю использовать свою, благо с твоей помощью пофиксил проблему. Твоя в резерве. Спасибо за помощь! А прогу твою и мою может есть смысл выложить на всеобщее использование? Вдруг кому что менять потребуется. Часто встречаются такие вопросы судя по поиску. А эту тему думаю что можно закрывать. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406
|
Цитата:
Так оно и так в общем доступе. Хочешь - выкладывай, потому как моя поделка на нормальную прогу не тянет.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Какой язык перспективен для инженера-конструктора с условием | The_Mercy_Seat | Программирование | 705 | 17.03.2021 14:19 |
Ошибка: "\n*** INTERNAL ERROR: VL namespace mismatch\n"" type Y to reset: | misht | AutoCAD | 8 | 13.07.2012 10:10 |
Несоответствие результатов в Лире | s.vas | Лира / Лира-САПР | 19 | 11.11.2009 07:31 |
Помощь по Лире | Серега М | Лира / Лира-САПР | 52 | 28.05.2007 02:47 |
Ошибка INTERNAL ERROR при работе в пространстве листа | Sel | AutoCAD | 2 | 12.10.2005 11:19 |