Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.24;
Скачать: CL | DM;

Вниз

Помогите с расчетами!!!   Найти похожие ветки 

 
janb   (2004-09-24 09:45) [0]

Имеются таблицы: таблица справочника тб1 и расчетов тб2.
поля тб1:
kod_1
kod_2
kod_3
dobichа
тб2:
kod_1
kod_2
kod_3
zn1
obsh
Задача такова
obsh:=zn1*tb1.dobicha
значение добычи для каждой записи должна равнятся соответсвующей записи, с учетом значении полей
код_1, код_2, код_3
я сделал так:
tb1.DataSet.Locate("kod_1;kod_2;kod_3",vararrayof([tb2.fieldbyname("kod_1").AsInteger,tb2.DataSet.fieldbyname("kod_2").A sInteger,tb2.DataSet.fieldbyname("kod_3").AsInteger]),[]);
Расчет производится, все нормально на первый взгляд
Но, если соответсвующая запись не найдена прога производит расчет с какой то записью с тб1.

Так вот что я хотел спросить, Мастера, как сделать чтобы при случае, когда не найдена запись прога выдавала сообщение что такой записи нет или просто оставить эту запись пустой

Использую компоненты table, datasource, dbgrid


 
Sandman25 ©   (2004-09-24 09:47) [1]

Locate - функция. Подробнее в help


 
Johnmen ©   (2004-09-24 09:48) [2]

if Locate(...


 
Johnmen ©   (2004-09-24 09:58) [3]

А ещё лучше
UPDATE TB2 SET obsh=zn1*(SELECT TB1.dobicha FROM TB1 WHERE TB1.kod_1=TB2.kod_1 AND TB1.kod_2=TB2.kod_2 AND TB1.kod_3=TB2.kod_3)


 
Sandman25 ©   (2004-09-24 09:59) [4]

[3] Johnmen ©   (24.09.04 09:58)

+ WHERE EXISTS (..)
Чтобы нуллами не затереть.


 
Johnmen ©   (2004-09-24 10:04) [5]

>Sandman25 ©   (24.09.04 09:59) [4]

Ну это от логики зависит. Мне кажется, нулл д.забиваться.
>>...или просто оставить эту запись пустой


 
Sandman25 ©   (2004-09-24 10:05) [6]

Согласен, не заметил.


 
Роман Снегирев   (2004-09-24 10:13) [7]

проверка



Страницы: 1 вся ветка

Текущий архив: 2004.10.24;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.051 c
1-1097401031
oleg_SYS
2004-10-10 13:37
2004.10.24
MD5


14-1096862753
Думкин
2004-10-04 08:05
2004.10.24
Новосибирск, встреча, фотографии.


3-1095993660
Oleg2
2004-09-24 06:41
2004.10.24
Как сделать, чтобы в гриде редактировать


14-1096664608
Folk
2004-10-02 01:03
2004.10.24
Не уж то Билли Гейс такой плохой человек?


14-1096792176
gn
2004-10-03 12:29
2004.10.24
^-)