Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.07.2008, 13:22   #1
wowka
 
Регистрация: 18.07.2008
Сообщений: 9
По умолчанию ошибка в вычислении

Такая проблема - у меня есть два RxDbcalcEdit, надо чтобы при вводе одного RxDbcalcEdit код выщитывал по формуле это значиение и отображал в другом RxDbcalcEdit, вся загвоздка в том что этого непроисходит, ошибки никакой невыбивает ненаю уже что делать но пробую
Код:
procedure TF_a_pr_na.RxDBCalcEdit2Change(Sender: TObject);
begin
IF NOT ISV THEN EXIT;
try
with TpFibDataset(dsi.DataSet) do
 begin
  if FN('SR_PI').AsInteger=1 then
   if RxDBCalcEdit2.Value<>0 then
    TFibBcdField(fn('N_AM_G')).AsExtended:=1/RxDBCalcEdit2.Value*100;
 end;
except
end;
end;
Ум позволяет решать сложные проблемы, хитрость позволяет их обходить, а интеллект позволяет выбирать, что лучше: решать, обходить или не лезть не в своё дело.

Последний раз редактировалось Stilet; 21.07.2008 в 13:26.
wowka вне форума Ответить с цитированием
Старый 21.07.2008, 13:28   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А до вычисления выполнение доходит вообще? Протрассируй по шагам или бряк поставь на TFibBcdField(fn('N_AM_G')).AsExtend ed:=1/RxDBCalcEdit2.Value*100;
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 21.07.2008, 13:30   #3
wowka
 
Регистрация: 18.07.2008
Сообщений: 9
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
А до вычисления выполнение доходит вообще? Протрассируй по шагам или бряк поставь на TFibBcdField(fn('N_AM_G')).AsExtend ed:=1/RxDBCalcEdit2.Value*100;
Троссировал конечно, всё проходит, но не заполняеться ...
Ум позволяет решать сложные проблемы, хитрость позволяет их обходить, а интеллект позволяет выбирать, что лучше: решать, обходить или не лезть не в своё дело.

Последний раз редактировалось wowka; 21.07.2008 в 13:39.
wowka вне форума Ответить с цитированием
Старый 21.07.2008, 14:10   #4
wowka
 
Регистрация: 18.07.2008
Сообщений: 9
По умолчанию

Нашёл оно вписывает если значение вводится 1 (единица)
Так стало работать
Код:
procedure TF_a_pr_na.RxDBCalcEdit2Change(Sender: TObject);
begin
IF NOT ISV THEN EXIT;
try
with TpFibDataset(dsi.DataSet) do
 begin
//  if FN('SR_PI').AsInteger= then
   if RxDBCalcEdit2.Value<>0 then
    TFibBcdField(fn('N_AM_G')).AsExtended:=1/RxDBCalcEdit2.Value*100;

 end;
except
end;
end;
From Stilet: Не путай теги цитаты и кода. Код оформляется другой кнопкой (#)
Ум позволяет решать сложные проблемы, хитрость позволяет их обходить, а интеллект позволяет выбирать, что лучше: решать, обходить или не лезть не в своё дело.

Последний раз редактировалось Stilet; 21.07.2008 в 15:12.
wowka вне форума Ответить с цитированием
Старый 21.07.2008, 15:51   #5
wowka
 
Регистрация: 18.07.2008
Сообщений: 9
По умолчанию

Надо что бы одному RxDBCalcEdit было присвоено значение 1, но чтобы его можно было изменить в будущем(Что то немогу присвоить...).И ещё одно - в значениях вида 0,### не отображаеться ноль... как исправить?

с первым справился при помощи тригера
Код:
SET TERM ^ ;

CREATE OR ALTER TRIGGER T_SP_GHU_GY_HU_OF_BIU1 FOR SP_GHU_GY_HU_OF
ACTIVE BEFORE INSERT or UPDATE  POSITION 1
AS
BEGIN
if (NEW.ISNODE=1) then EXIT;
if (COALESCE(NEW.K_SY,0)<>0) then EXIT;
NEW.K_SY=1;
END
^
SET TERM ; ^
если есть ещё идеи с удовольствием прочитаю
а вот со вторым помогите)
Ум позволяет решать сложные проблемы, хитрость позволяет их обходить, а интеллект позволяет выбирать, что лучше: решать, обходить или не лезть не в своё дело.

Последний раз редактировалось wowka; 21.07.2008 в 16:34.
wowka вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Что это за ошибка LuMax Помощь студентам 4 05.03.2013 13:18
Ошибка Devourer12345 Microsoft Office Access 2 10.08.2008 20:24
Ошибка Freeman Общие вопросы C/C++ 3 26.05.2008 19:43
ошибка ben95 Общие вопросы Delphi 5 06.02.2008 23:25