Снесли системную настройку

ПНР и сопровождение

Модераторы: m0p3e, edward_K, Модераторы

Nick
Местный житель
Сообщения: 331
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Белгород

Снесли системную настройку

Сообщение Nick »

Базовая валюта: Была НДЕ - поставили рубли.
Не можем вернуть НДЕ назад. Что делать? :o
Nick
Местный житель
Сообщения: 331
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Белгород

Re: Снесли системную настройку

Сообщение Nick »

Нашел, что при смене этой настройки меняется файл:

C:\GAL711\DATA\D_TUNE\Tuneval.dat

Если с чистой базы его переписать на место изменившегося файла, то НДЕ появляется, но теряются другие системные настройки.

По-ходу Tuneval.dat отвечает за все общесистемные настройки. Как из него можно выцепить именно базовую валюту?
Nick
Местный житель
Сообщения: 331
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Белгород

Re: Снесли системную настройку

Сообщение Nick »

Нашел - это табличка Tuneval, поля CompVal и StrVal, но поменять их не могу, т.к. на любой (вообще любой) запрос Update Галактика ругается. Select же нормально работает.
Nick
Местный житель
Сообщения: 331
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Белгород

Re: Снесли системную настройку

Сообщение Nick »

Вернее: sql-компилятор Support'a ругается.
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5187
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Re: Снесли системную настройку

Сообщение edward_K »

а в администраторе настроек не пробовал F4 нажать?
вообще какое то окошко то для смены появляется или вообще ничего? :)
Галя
Местный житель
Сообщения: 492
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Тюмень Тюмбит-АСУ

Re: Снесли системную настройку

Сообщение Галя »

Как не можете? встаете на эту настроку, F3, открывается еще раз окошко с настройкой - рубли там стоят. На них жмете просто Delete, поругается немножко, на все соглашайтесь - поставит НДЕ
Nick
Местный житель
Сообщения: 331
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Белгород

Re: Снесли системную настройку

Сообщение Nick »

Все, вернул :) Как написала Галя, спасибо! Моя ошибка была в том, что я искал НДЕ в списке валют, а не 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;
^
Deinis
Местный житель
Сообщения: 783
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Москва
Контактная информация:

Re: Снесли системную настройку

Сообщение Deinis »

Ты перепутал местоположение операторов 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)
;
Nick
Местный житель
Сообщения: 331
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Белгород

Re: Снесли системную настройку

Сообщение Nick »

И ведь действительно работает :)
Но ведь я ж читаю 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 потом.
Запутался :P
Goblin
Местный житель
Сообщения: 474
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Сибирь-матушка
Контактная информация:

Re: Снесли системную настройку

Сообщение Goblin »

Nick, а зачем ты читаешь Pervasive SQL 2000i Docs, а запрос пишешь в Support'e в модуле SQL ? Тут два варианта - либо продолжаешь читать Pervasive SQL 2000i Docs, но запросы писать будешь в Pervasive Control Centre (это если у тебя есть стандартные словари галактики - утилита ADF2DDF решает это)... Либо бросай читать Pervasive SQL 2000i Docs, и начинай читать ИНСТРУМЕНТАЛЬНЫЙ КОМПЛЕКС «SUPPORT»
Модуль «SQL»
РУКОВОДСТВО ПРИКЛАДНОГО ПРОГРАММИСТА
2003

Тогда веселых ситуаций избежишь :)
Питаю патологические отвращение и ненависть в особо тяжелой и крайне запущенной формах к семейству программ Microsoft Business Solution !
Восславим господа Кришну за то, что у нас есть ГАЛАКТИКА !
Nick
Местный житель
Сообщения: 331
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Белгород

Re: Снесли системную настройку

Сообщение Nick »

Спасибо, все понятно 8)
m0p3e
Местный житель
Сообщения: 1386
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Москва

Re: Снесли системную настройку

Сообщение m0p3e »

Зачем изобратать велсипед, когда все функции работы с настройками доступны как паблик? Не надо пыталться менять их запросами!!! Одной tuneval дело обходится только в случае простых настроек!!!!
Nick
Местный житель
Сообщения: 331
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Белгород

Re: Снесли системную настройку

Сообщение Nick »

>> Зачем изобратать велсипед, когда все функции работы с настройками доступны как паблик?

В смысле, изменять их через меню настроек?
Deinis
Местный житель
Сообщения: 783
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Москва
Контактная информация:

Re: Снесли системную настройку

Сообщение Deinis »

>> В смысле, изменять их через меню настроек?
Нет. Морзе имеет в виду, что если ты по какой-то причине не хочешь изменять настройку в самом стандартном интерфейсе Галактики (к чему ты все ж таки пришел), а захочешь изменить программным путем - то знай, что очень редко бывает так, что исправлять значение нужно только в одной таблице.
Исправить TuneVal с помощью SQL-запроса, даже грамотно построенного - это скорее всего НЕ решение проблемы. Значения настроек могут храниться не только в TuneVal - ИМЕННО ЭТО ХОТЕЛ ДОНЕСТИ ДО ТЕБЯ МОРЗЕ. Да и вообще в реляционной БД исправление только одной таблицы - не всегда правильное и работающее решение.
Если все же захочешь менять настройки программным путем - используй свой интерфейс (или link-форму, или ARD-отчет) где к настройкам обращайся через стандартные функции (типа coGetTune или SetTune и т.п.).

Возник вопрос - где взять эти функции? Дык, батенька, вы не спите и посмотрите раздел "Опыт" этого форума. Тама есть такая штука, как "Документация по работе с функциями реестра настроек Галактики 5.8x".
Nick
Местный житель
Сообщения: 331
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Белгород

Re: Снесли системную настройку

Сообщение Nick »

Понятно, погляжу 8)
Ответить