(defun get-elivation-be-plan (/ flag obj z temp point d marker)
  ;запрос объекта с отметкой
  (load_global_variable)
  (setq flag T)
  (if (=(vlax-ldata-get "geo_tools_dictionary" "profile-marker-type")nil)
    (vlax-ldata-put "geo_tools_dictionary" "profile-marker-type" "Мультивыноска")
    )
  (setq marker (vlax-ldata-get "geo_tools_dictionary" "profile-marker-type"))
  (while flag
    (initget "Ввести Настройка выХод")
    (setq temp(entsel "\nВыбери точку,текст или мультивыноску с отметкой[Ввести/Настройка/выХод]<Ввести>: "))
    (if (eq(type temp)'list)
      (setq obj (car temp))
      (setq obj temp))
    (cond
      ((eq obj "Настройка")
       (setq z nil)
       (initget "Треугольник Мультивыноска тоЧка")
       (if
	 (setq marker(getkword (strcat"\nМаркер отметки на профилк[Треугольник/Мультивыноска/тоЧка]<" (vlax-ldata-get "geo_tools_dictionary" "profile-marker-type") ">: ")))
	 (vlax-ldata-put "geo_tools_dictionary" "profile-marker-type" marker))
       (setq flag T)
       )
      ((eq obj "выХод")
       (setq z nil)
       (setq flag nil)
       )
      ((or(eq obj nil)(eq obj "Ввести"))
       (setq z (getreal"\nВведи отметку<0.00>: "))
       (if (eq z nil) (setq z 0.0))
       (setq point (getpoint "\nУкажи точку на плане: "))
       (if (= marker "Мультивыноска")
	 (setq d(getstring t "\nВведи описание: "))
	 (setq d""))
       (if (not d)(setq d""))
       (setq z (list point (list (list z (if d d "")))))
       (setq flag nil)
       )
      ((eq (cdr(assoc 0 (entget obj))) "TEXT")
       (setq point (getpoint "\nУкажи точку на плане: "))
       (setq z(atof(edit_text_clean_for_number(cdr(assoc 1(entget obj))))))
       (setq z (list point (list (list z (cdr(assoc 1(entget obj)))))))
       (setq flag nil)
       )
      ((eq (cdr(assoc 0 (entget obj))) "AECC_COGO_POINT")
       (setq point (vlax-safearray->list(vlax-variant-value(vlax-get-property  (vlax-ename->vla-object obj) "Location"))))
       (setq z(vlax-get-property  (vlax-ename->vla-object obj) "ELEVATION"))
       (setq z (list point (list(list z (vlax-get-property  (vlax-ename->vla-object obj) "RawDescription")))))
       (setq flag nil)
       )
      ((eq (cdr(assoc 0 (entget obj))) "MULTILEADER")
       (setq point (get-sel-point-multileader obj))
       (setq z (list point (get-string-multileader obj)))
       (setq flag nil)
       )
      (T
       (alert "Ошибка! Выбран не объект не допустимого типа. Допускаются однострочный текст и точки COGO. Попробуй снова.")
       )
      )
    )
  z
  )