Снесли системную настройку
Модераторы: m0p3e, edward_K, Модераторы
Снесли системную настройку
Базовая валюта: Была НДЕ - поставили рубли.
Не можем вернуть НДЕ назад. Что делать?
Не можем вернуть НДЕ назад. Что делать?
Re: Снесли системную настройку
Нашел, что при смене этой настройки меняется файл:
C:\GAL711\DATA\D_TUNE\Tuneval.dat
Если с чистой базы его переписать на место изменившегося файла, то НДЕ появляется, но теряются другие системные настройки.
По-ходу Tuneval.dat отвечает за все общесистемные настройки. Как из него можно выцепить именно базовую валюту?
C:\GAL711\DATA\D_TUNE\Tuneval.dat
Если с чистой базы его переписать на место изменившегося файла, то НДЕ появляется, но теряются другие системные настройки.
По-ходу Tuneval.dat отвечает за все общесистемные настройки. Как из него можно выцепить именно базовую валюту?
Re: Снесли системную настройку
Нашел - это табличка Tuneval, поля CompVal и StrVal, но поменять их не могу, т.к. на любой (вообще любой) запрос Update Галактика ругается. Select же нормально работает.
Re: Снесли системную настройку
Вернее: sql-компилятор Support'a ругается.
-
- Заслуженный деятель интернет-сообщества
- Сообщения: 5188
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: SPB galaxy spb
Re: Снесли системную настройку
а в администраторе настроек не пробовал F4 нажать?
вообще какое то окошко то для смены появляется или вообще ничего?
вообще какое то окошко то для смены появляется или вообще ничего?
Re: Снесли системную настройку
Как не можете? встаете на эту настроку, F3, открывается еще раз окошко с настройкой - рубли там стоят. На них жмете просто Delete, поругается немножко, на все соглашайтесь - поставит НДЕ
Re: Снесли системную настройку
Все, вернул Как написала Галя, спасибо! Моя ошибка была в том, что я искал НДЕ в списке валют, а не del жал для установки настройки по-умолчанию.
Остались такие вопросы - подскажите пожалуйста:
1. Почему таблицы tuneval нет в списке таблиц системы? Где ее можно найти?
2. При запросе Select * from tuneval; в результате возвращаются таблица с такими заголовками некоторых полей: "Comp", "String". А если хочется выбрать только их ("Comp", "String"), то надо писать так: Select t.CompVal, t.StrVal from tuneval t; а не так: Select t.Comp, t.String from tuneval t; - В этом случае ошибка. Почему такая разница в именовании одних и тех же полей в разных запросах?
3. В чем ошибка в запросе:
Update tuneval t
Set t.CompVal=0000000000000000h
where t.Nrec=0000000000000004h;
Галактика пишет:
Ошибка: Ожидалась ";"(стр.3 поз.1 в INPUT)
where t.Nrec=0000000000000004h;
^
Остались такие вопросы - подскажите пожалуйста:
1. Почему таблицы tuneval нет в списке таблиц системы? Где ее можно найти?
2. При запросе Select * from tuneval; в результате возвращаются таблица с такими заголовками некоторых полей: "Comp", "String". А если хочется выбрать только их ("Comp", "String"), то надо писать так: Select t.CompVal, t.StrVal from tuneval t; а не так: Select t.Comp, t.String from tuneval t; - В этом случае ошибка. Почему такая разница в именовании одних и тех же полей в разных запросах?
3. В чем ошибка в запросе:
Update tuneval t
Set t.CompVal=0000000000000000h
where t.Nrec=0000000000000004h;
Галактика пишет:
Ошибка: Ожидалась ";"(стр.3 поз.1 в INPUT)
where t.Nrec=0000000000000004h;
^
-
- Местный житель
- Сообщения: 783
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Москва
- Контактная информация:
Re: Снесли системную настройку
Ты перепутал местоположение операторов Set и Where.
Осторожнее будть с этим. У нас так один программист в свое время (еще на 5.74 или раньше) грохнул все ордера. Он вообще был специалистом в SQL. А то, что галактический SQL - это "донельзя обрезанное подобие реального SQL" - не знал. И составил Delete-запрос по своему, по-правильному . Компилятор, не найдя на своем месте (!!!) оператор "Where" сделал просто - применил оператор Delete ко всем складским ордерам.
В общем, я стараюсь использовать все как можно формальнее. То есть при употреблении синонима таблицы я, перестраховываясь, пишу "synonym", все значения типа comp заключаю в скобки. Может это и перестраховка, но так оно надежнее будет. Ну и элегантнее )
Update synonym TuneVal T
Where (( comp(0000000000000004h) == T.nRec ))
Set T.CompVal=comp(0000000000000000h)
;
Осторожнее будть с этим. У нас так один программист в свое время (еще на 5.74 или раньше) грохнул все ордера. Он вообще был специалистом в SQL. А то, что галактический SQL - это "донельзя обрезанное подобие реального SQL" - не знал. И составил Delete-запрос по своему, по-правильному . Компилятор, не найдя на своем месте (!!!) оператор "Where" сделал просто - применил оператор Delete ко всем складским ордерам.
В общем, я стараюсь использовать все как можно формальнее. То есть при употреблении синонима таблицы я, перестраховываясь, пишу "synonym", все значения типа comp заключаю в скобки. Может это и перестраховка, но так оно надежнее будет. Ну и элегантнее )
Update synonym TuneVal T
Where (( comp(0000000000000004h) == T.nRec ))
Set T.CompVal=comp(0000000000000000h)
;
Re: Снесли системную настройку
И ведь действительно работает
Но ведь я ж читаю Pervasive SQL 2000i Docs:
The UPDATE statement allows you to modify column values in a database.
Syntax
UPDATE table-name [ alias-name ]
SET column-name = < expression | subquery >
[ , column-name = < expression | subquery >]...
[ WHERE search-condition ]
Сначала ж Set, а Where потом.
Запутался
Но ведь я ж читаю Pervasive SQL 2000i Docs:
The UPDATE statement allows you to modify column values in a database.
Syntax
UPDATE table-name [ alias-name ]
SET column-name = < expression | subquery >
[ , column-name = < expression | subquery >]...
[ WHERE search-condition ]
Сначала ж Set, а Where потом.
Запутался
-
- Местный житель
- Сообщения: 474
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Сибирь-матушка
- Контактная информация:
Re: Снесли системную настройку
Nick, а зачем ты читаешь Pervasive SQL 2000i Docs, а запрос пишешь в Support'e в модуле SQL ? Тут два варианта - либо продолжаешь читать Pervasive SQL 2000i Docs, но запросы писать будешь в Pervasive Control Centre (это если у тебя есть стандартные словари галактики - утилита ADF2DDF решает это)... Либо бросай читать Pervasive SQL 2000i Docs, и начинай читать ИНСТРУМЕНТАЛЬНЫЙ КОМПЛЕКС «SUPPORT»
Модуль «SQL»
РУКОВОДСТВО ПРИКЛАДНОГО ПРОГРАММИСТА
2003
Тогда веселых ситуаций избежишь
Модуль «SQL»
РУКОВОДСТВО ПРИКЛАДНОГО ПРОГРАММИСТА
2003
Тогда веселых ситуаций избежишь
Питаю патологические отвращение и ненависть в особо тяжелой и крайне запущенной формах к семейству программ Microsoft Business Solution !
Восславим господа Кришну за то, что у нас есть ГАЛАКТИКА !
Восславим господа Кришну за то, что у нас есть ГАЛАКТИКА !
Re: Снесли системную настройку
Спасибо, все понятно
Re: Снесли системную настройку
Зачем изобратать велсипед, когда все функции работы с настройками доступны как паблик? Не надо пыталться менять их запросами!!! Одной tuneval дело обходится только в случае простых настроек!!!!
Re: Снесли системную настройку
>> Зачем изобратать велсипед, когда все функции работы с настройками доступны как паблик?
В смысле, изменять их через меню настроек?
В смысле, изменять их через меню настроек?
-
- Местный житель
- Сообщения: 783
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Москва
- Контактная информация:
Re: Снесли системную настройку
>> В смысле, изменять их через меню настроек?
Нет. Морзе имеет в виду, что если ты по какой-то причине не хочешь изменять настройку в самом стандартном интерфейсе Галактики (к чему ты все ж таки пришел), а захочешь изменить программным путем - то знай, что очень редко бывает так, что исправлять значение нужно только в одной таблице.
Исправить TuneVal с помощью SQL-запроса, даже грамотно построенного - это скорее всего НЕ решение проблемы. Значения настроек могут храниться не только в TuneVal - ИМЕННО ЭТО ХОТЕЛ ДОНЕСТИ ДО ТЕБЯ МОРЗЕ. Да и вообще в реляционной БД исправление только одной таблицы - не всегда правильное и работающее решение.
Если все же захочешь менять настройки программным путем - используй свой интерфейс (или link-форму, или ARD-отчет) где к настройкам обращайся через стандартные функции (типа coGetTune или SetTune и т.п.).
Возник вопрос - где взять эти функции? Дык, батенька, вы не спите и посмотрите раздел "Опыт" этого форума. Тама есть такая штука, как "Документация по работе с функциями реестра настроек Галактики 5.8x".
Нет. Морзе имеет в виду, что если ты по какой-то причине не хочешь изменять настройку в самом стандартном интерфейсе Галактики (к чему ты все ж таки пришел), а захочешь изменить программным путем - то знай, что очень редко бывает так, что исправлять значение нужно только в одной таблице.
Исправить TuneVal с помощью SQL-запроса, даже грамотно построенного - это скорее всего НЕ решение проблемы. Значения настроек могут храниться не только в TuneVal - ИМЕННО ЭТО ХОТЕЛ ДОНЕСТИ ДО ТЕБЯ МОРЗЕ. Да и вообще в реляционной БД исправление только одной таблицы - не всегда правильное и работающее решение.
Если все же захочешь менять настройки программным путем - используй свой интерфейс (или link-форму, или ARD-отчет) где к настройкам обращайся через стандартные функции (типа coGetTune или SetTune и т.п.).
Возник вопрос - где взять эти функции? Дык, батенька, вы не спите и посмотрите раздел "Опыт" этого форума. Тама есть такая штука, как "Документация по работе с функциями реестра настроек Галактики 5.8x".
Re: Снесли системную настройку
Понятно, погляжу