powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / теоретический вопрос про ошибку UNDEFINED
10 сообщений из 60, страница 3 из 3
теоретический вопрос про ошибку UNDEFINED
    #34925365
newbie'
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
krvsa...Мало того! IS вооружил нас программкой "уменьшения" самого файла cache.dat Мы ей пользуемся после "долгосрочного архивирования" (это наш термин).
что за программка и для какой версии cache?
...
Рейтинг: 0 / 0
теоретический вопрос про ошибку UNDEFINED
    #34925428
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если у вас БД полупустая, программка уменьшает файл cache.dat
Делали для 5.0.*... Но недавно подтвердили, что будет нормально работать и 2007. Клиенты провели "ходовые" испытания - все работает
----------
Cache for Windows NT (Intel) 5.0.20 (Build 6305) Fri Sep 16 2005 11:54:10 EDT
...
Рейтинг: 0 / 0
теоретический вопрос про ошибку UNDEFINED
    #34925666
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mandarinзапрос теперь постоянно выдает UNDEFINED Добавьте в список переменных в круглых скобках те переменные, которые у вас UNDEFINED, и будет вам счастье :)
...
Рейтинг: 0 / 0
теоретический вопрос про ошибку UNDEFINED
    #34925906
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Глянул еще раз на вашу функцию... Почитали бы, все же, доку (специально даю ссылку по 5.0) тынц .
Замеченные ошибки/неточности:
1. надо писать %DynamicQuery:SQL (а лучше всего ничего не писать)
2. надо закрывать ResultSet rset.Close() - без %!
3. надо проверять коды завершения.
Скорее всего, сочетание 2+3 и приводит к ошибке. 1ый раз у вас что-то отваливается, но ResultSet остается открытым, при повторном обращении вы берете уже из открытого ResultSet - и у вас работает.
...
Рейтинг: 0 / 0
теоретический вопрос про ошибку UNDEFINED
    #34926829
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey Maslov1. надо писать %DynamicQuery:SQL (а лучше всего ничего не писать)
Это будел поумолчанию?
...
Рейтинг: 0 / 0
теоретический вопрос про ошибку UNDEFINED
    #34927199
Ptn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
будет - давным давны уже внутри %New() ничего для динамики не указываем
...
Рейтинг: 0 / 0
теоретический вопрос про ошибку UNDEFINED
    #34930592
Фотография Mandarin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
переделал процедуру вот так

GetOstByExtCode(code,kpr)
n res,ost,str
s ost = 0
s res = ##class(%ResultSet).%New()
s str = "SELECT SUM(OST) as Ost FROM PartiesGoods WHERE (DrugsID = ?) AND (KprID = ?)"
d res.Prepare(str)
d res.Execute(code,kpr)
d res.Next()
s ost=res.Data("Ost")
d res.Close()
q ost

результат остался тот же

и еще заметил вот что
когда используется эта функция в запрсе типа INSERT ошибка может выдаваться при вставке любой записи т.е. из этого можно сделать вывод что ошибка не во входных параметрах а в построении самой функции ... а где именно понять не могу...

есть аналогичная функция

ostbar(div,DrugsId,dat)
n que,str,ost,regi
s que=##class(%ResultSet).%New()
s str="SELECT ReggIID FROM PartiesGoods WHERE (KprID = ?) AND (DrugsID = ?)"
d que.Prepare(str)
d que.Execute(div,DrugsId)
s ost=0
f q:'que.Next() d
. s regi=que.Get("ReggIID") q:regi=""
. s ost=ost+$$ost(div,regi,dat)
d que.Close()
q ost

которая работает без ошибок
...
Рейтинг: 0 / 0
теоретический вопрос про ошибку UNDEFINED
    #34930593
Фотография Mandarin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и почему эта ошибка повторяется только пи перезапуске каше ? если повторно вызывать запрос с этой функцией то ошибки нет.. где смысл не понятно :) мистика какая то
...
Рейтинг: 0 / 0
теоретический вопрос про ошибку UNDEFINED
    #34930704
Фотография Mandarin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
наконечто все решилось :)

вот рабочий код

GetOstByExtCode(Extcode,Kpr)
n (Extcode,Kpr,res,ost)
s ost = 0
s res = ##class(%Library.ResultSet).%New()
d res.Prepare("SELECT SUM(OST) FROM PartiesGoods WHERE (DrugsID = ?) and (Kprid=?)")
d res.Execute(Extcode,Kpr)
i res.Next() s ost=res.GetData(1)
d res.Close()
q ost

ключевая строчка - n (Extcode,Kpr,res,ost)
...
Рейтинг: 0 / 0
теоретический вопрос про ошибку UNDEFINED
    #34931212
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А зачем туда вставили res и ost?
----------
Cache for Windows NT (Intel) 5.0.20 (Build 6305) Fri Sep 16 2005 11:54:10 EDT
...
Рейтинг: 0 / 0
10 сообщений из 60, страница 3 из 3
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / теоретический вопрос про ошибку UNDEFINED
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]