AXForum  
Вернуться   AXForum > Microsoft Dynamics NAV > NAV: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 26.02.2007, 13:46   #1  
zemur is offline
zemur
Участник
 
24 / 10 (1) +
Регистрация: 08.11.2006
Привет всем, подскажите, плиз, что делаю не так
Мне нужно определить есть ли запись в таблице.

Dealer - объявлена как record в табл. в которой имеется поле "Web Login". Ключ этой таблицы- Code, Web Login


Dealer."Web Login" := '111';

IF Dealer.FIND THEN MESSAGE('Нашел')
ELSE MESSAGE('Нет такого зверя');

И не находит... Хотя я ему уже точно прописал, значение, которой в табл есть.
Старый 26.02.2007, 13:59   #2  
mRazik is offline
mRazik
Участник
Аватар для mRazik
 
20 / 10 (1) +
Регистрация: 09.02.2007
Дело в том, что переменная Dealer в данный момент пустая.(можно убедиться дебагером)
Попробуй определьть сначала саму таблицу
Dealer.GET(поиск по ключам);
или
Dealer.FIND('-');
Старый 26.02.2007, 14:22   #3  
zemur is offline
zemur
Участник
 
24 / 10 (1) +
Регистрация: 08.11.2006
Сделал:


Dealer.SETRANGE("Web Login", '111');

IF Dealer.FIND('-') THEN MESSAGE('Нашел')
ELSE MESSAGE('Нет такого зверя');

и заработало, всем спасибо
Старый 26.02.2007, 14:33   #4  
romeo is offline
romeo
Участник
Аватар для romeo
 
564 / 10 (2) +
Регистрация: 31.03.2004
Цитата:
Сообщение от zemur Посмотреть сообщение
Сделал:


Dealer.SETRANGE("Web Login", '111');

IF Dealer.FIND('-') THEN MESSAGE('Нашел')
ELSE MESSAGE('Нет такого зверя');

и заработало, всем спасибо
Добавлю лишь, что если нужно убедиться в наличии записи (ей), а не использовать ее (значения ее полей), то лучше писать не IF Dealer.FIND('-'), а IF NOT Dealer.ISEMPTY() ...
Исходный пример не работал потому, что для FIND без параметров необходимо определить все значения первичного ключа. Вы же определили только одно из двух. Получалось, что она пыталась найти по Code = ПУСТО (если до этого не выполнялся какой-либо поиск), Web Login = 111. Такой записи не было, поэтому не находила.
Старый 26.02.2007, 14:49   #5  
mRazik is offline
mRazik
Участник
Аватар для mRazik
 
20 / 10 (1) +
Регистрация: 09.02.2007
Добавлю еще к написаному romeo: люди - пользуйтесь дебагером, там ведь видно все переменные, фильтры и значения. А уже исходя из этих данных гораздо проще понять где допустил ошибку.
Старый 26.02.2007, 15:15   #6  
zemur is offline
zemur
Участник
 
24 / 10 (1) +
Регистрация: 08.11.2006
Спасибо, за подробные пояснения.
 


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 23:12.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.