;;;; Author: Kevin M. Rosenberg
;;;; Date Started: Apr 2000
;;;;
-;;;; $Id: sql-classes.lisp,v 1.20 2003/05/03 00:27:30 kevin Exp $
+;;;; $Id: sql-classes.lisp,v 1.23 2003/05/03 18:16:16 kevin Exp $
;;;;
;;;; This file, part of UMLisp, is
;;;; Copyright (c) 2000-2002 by Kevin M. Rosenberg, M.D.
:pfstr kpfstr
:lrl (ensure-integer kcuilrl))))
+(defun find-ucon-cui-old (cui &key (srl *current-srl*))
+ "Find ucon for a cui"
+ (when (stringp cui) (setq cui (parse-cui cui)))
+ (when cui
+ (let ((ls (format nil "select KPFSTR,KCUILRL from MRCON where CUI=~d" cui)))
+ (when srl
+ (string-append ls (format nil " and KCUILRL <= ~d" srl)))
+ (string-append ls " limit 1")
+ (awhen (car (mutex-sql-query ls))
+ (destructuring-bind (kpfstr kcuilrl)
+ (make-instance 'ucon :cui cui :pfstr kpfstr
+ :lrl (ensure-integer kcuilrl)))))))
(defun find-ucon-cui-sans-pfstr (cui &key (srl *current-srl*))
"Find ucon for a cui"
(make-instance 'ucon :cui (ensure-integer cui) :pfstr kpfstr
:lrl (ensure-integer kcuilrl))))
-(defun f2 (&key (srl *current-srl*))
- "Return list of all ucon's"
- (with-umlisp-query ('mrcon (cui kpfstr kcuilrl) srl nil nil)
- (make-instance 'ucon :cui (ensure-integer cui) :pfstr kpfstr
- :lrl (ensure-integer kcuilrl))))
-
-(defun f1 (&key (srl *current-srl*))
- "Return list of all ucon's"
- (with-sql-connection (db)
- (clsql:map-query
- 'list
- #'(lambda (cui pfstr cuilrl)
- (make-instance 'ucon :cui (ensure-integer cui)
- :pfstr pfstr
- :lrl (ensure-integer cuilrl)))
- (query-string 'mrcon '(cui kpfstr kcuilrl) srl nil nil)
- :database db)))
-
(defun find-ucon-all (&key (srl *current-srl*))
"Return list of all ucon's"
(with-sql-connection (db)