17.07.2008, 07:43 | #1 |
Участник
|
Find
Подскажите как работает функция find? И может ли она мне помочь в моей ситуации,когда у меня имеются 2 таблицы,в первой таблице находится так сказать ключ к 2 таблице(т.е. таблица1.поле1 = таблица2.поле1) и мне необходимо из второй таблицы вытягивать необходимые данные.
|
|
17.07.2008, 07:53 | #2 |
Мрачный тип
|
Функция find() выдает табличную переменную искомой таблицы, содержащую в себе запись, соответствующую значению переданного в функцию уникального идентификатора в искомой таблице. Как использовать полученную табличную переменную в дальнейшем - Ваше личное дело
__________________
Мы летаем, кружимся, нагоняем ужасы ... |
|
|
За это сообщение автора поблагодарили: George Nordic (2). |
17.07.2008, 10:09 | #3 |
MCTS
|
Следует добавить, что если вы создаёте свою таблицу,
find() - найти строку; и exist() - проверка на наличие строки;
__________________
В глухомани, в лесу Несмотря на красу Дни проводит Лиса Патрикевна. Я никак не пойму Отчего, почему Не пускают куму На деревню |
|
17.07.2008, 12:04 | #4 |
MCT
|
Тут еще такая вещь существует чтобы не тянуть весь буфер записи - record-a на большой таблице иногда лучше писать обычный select
X++: select Name from Inventtable where Inventtable.itemId = _ItemId; X++: InventTable::find(_ItemId).Name; |
|
17.07.2008, 12:08 | #5 |
Участник
|
Цитата:
Причём, правило распространяется на таблицы с уникальными индексами. |
|
17.07.2008, 12:20 | #6 |
MCTS
|
Точно 4-х
спасибо за поправку
__________________
В глухомани, в лесу Несмотря на красу Дни проводит Лиса Патрикевна. Я никак не пойму Отчего, почему Не пускают куму На деревню |
|
17.07.2008, 13:14 | #7 |
Участник
|
Цитата:
select Inventtable where Inventtable.itemId = _ItemId; Эта запись будет закэширована в Аксапте, если у таблицы указано что ее надо кэшировать. Следовательно, повторный InventTable::find(_ItemId).Name; может и не привести к генерации запроса на SQL А вот это select Name from Inventtable where Inventtable.itemId = _ItemId; кэшироваться не будет. следовательно повторный вызов приведет к повторному запросу на SQL. |
|
17.07.2008, 13:25 | #8 |
MCT
|
|
|
Теги |
exists, find, txtnotexists, crm2011 |
|
|