Помогите пожалуйста! VLISP + VFoxPro. Построение прямоугольника по данным из БД! - Страница 2
| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Помогите пожалуйста! VLISP + VFoxPro. Построение прямоугольника по данным из БД!

Помогите пожалуйста! VLISP + VFoxPro. Построение прямоугольника по данным из БД!

Ответ
Поиск в этой теме
Непрочитано 09.02.2009, 00:03
Помогите пожалуйста! VLISP + VFoxPro. Построение прямоугольника по данным из БД!
eternalflame
 
Регистрация: 08.02.2009
Сообщений: 10

Помогите пожалуйста! Такая задача: В VFoxPro составленна таблица из трех столбцов (Box L x B; L; B). Далее выбирая в таблице (уже связана с AutoCAD'ом и открыта его средствами) определенную строку с нужным (Box L x B), нужно чтоб этот прямоугольник строился на чертеже! Можете подсказать как это лучше реализовать и (или) часть кода которая будет забирать данные из ячеек (L) и (B) при выборе определенной строки!

P.S.: Зарание извиняюсь если создал повтор или что-то не так написал. Я в этом деле новичек, поэтому даже не знаю толком что искать, полистал темы, поюзал поиск, но ничего толкового не нашел!
Просмотров: 4930
 
Непрочитано 21.04.2009, 18:54
#21
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,404


Через AdoLispLibrary выполняется запрос к БД; результат оформляется в список и дальше элементарной конструкцией
Код:
[Выделить все]
(start_list)
(mapcar 'add_list <...>)
(end_list)
заполняется popup_list в dcl-диалоге.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 21.04.2009, 19:16
#22
eternalflame


 
Регистрация: 08.02.2009
Сообщений: 10


А как оформить результат запроса в виде списка? Когда делаю запрос, ACAD возвращает мне (("l") (10.0) (20.0) (40.0)). И как раз этот результат у меня никак не получается поместить в список. (((
eternalflame вне форума  
 
Непрочитано 21.04.2009, 22:59
#23
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Этот "результат" и есть список из 4 элементов
ShaggyDoc вне форума  
 
Автор темы   Непрочитано 21.04.2009, 23:30
#24
eternalflame


 
Регистрация: 08.02.2009
Сообщений: 10


Наверно я маленько не так выразился! =)) У меня никак не получается чтобы данные из этого списка, а именно 10, 20 и 40 заполняли popup_list в dcl-диалоге.
Когда содержимое окна жестко задано, то мы имеем:
Код:
[Выделить все]
(setq <...> (list " 10" " 20" " 40"))
А в моём случае у меня никак не получается результат запроса записать в popup_list!
Кучу вариантов уже перепробывал. С начала в голову пришёл такой вариант:
Код:
[Выделить все]
(setq <...> (list Result))
но он сразу же закончился ошибкой:
; ошибка: неверный тип аргумента: stringp (("l")
(10.0) (20.0) (40.0))
С другими вариантами как не мучался вообще ничего толкового не получалось! =(((
Может можно как- нибудь такой результат: (("l") (10.0) (20.0) (40.0)) привести к такому виду: " 10" " 20" " 40"

А ещё, если кто знает, подскажите пожалуйста каким образом на LISP можно организовать запись результатов sql-запроса в txt файл!

Последний раз редактировалось eternalflame, 22.04.2009 в 19:44.
eternalflame вне форума  
 
Непрочитано 22.04.2009, 23:43
#25
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,404


Код:
[Выделить все]
(setq lst '(("l") (10.0) (20.0) (40.0))) ;'(("l") (10.0) (20.0) (40.0))
(mapcar (function vl-princ-to-string) (apply (function append) lst)) ;'("l" "10.0" "20.0" "40.0")
(vl-remove nil
             (mapcar
               (function
                 (lambda (x)
                   (cond
                     ((= (type x) 'real) (strcat " " (rtos x)))
                     ((= (type x) 'int) (strcat " " (itoa x)))
                     ) ;_ end of cond
                   ) ;_ end of lambda
                 ) ;_ end of function
               (apply
                 (function append)
                 lst
                 ) ;_ end of apply
               ) ;_ end of mapcar
             ) ; '(" 10" " 20" " 40")
А зачем результаты выполнения SQL-запроса записывать в txt-файл? Медленно, неудобно и не всегда допустимо.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Помогите пожалуйста! VLISP + VFoxPro. Построение прямоугольника по данным из БД!



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите пожалуйста найти расчёт упорной стенки sonson Конструкции зданий и сооружений 11 01.09.2020 17:24
ПОМОГИТЕ пожалуйста найти расценки на продавливание стальног DenIZ Разное 4 14.09.2007 12:38
Помогите пожалуйста с Лирой 9.4 !!!! Yapp Лира / Лира-САПР 33 22.02.2007 06:14