07.12.2007, 07:48 | #1 |
Участник
|
Использование контейнеров и полей с неограниченными строками (текстом) в выражении WHERE не допускается.
здравствуйте
есть вот такой метод на таблице public int DeleteRecord(Str _PurchId) { XPurchTable xPurchTable; ; try{ while select xPurchTable where xPurchTable.isImported == NoYes::Yes && xPurchTable.PurchId == _PurchId ..... Поле в таблице PurchId имеет тип Str 20 но появляется ошибка "Использование контейнеров и полей с неограниченными строками (текстом) в выражении WHERE не допускается." Подскажите пожалуйста как мне обойти данную ситуацию. |
|
07.12.2007, 07:50 | #2 |
Участник
|
|
|
07.12.2007, 08:19 | #3 |
Участник
|
PurchId передаётся в метод через COM Business Connector из стороннего приложения. Значение берётся из поля таблицы размерность которого такая же как и в xPurchTable это Str 20
|
|
07.12.2007, 08:54 | #4 |
Участник
|
Ага. Вот и проблема. Извините, что сразу не заметил
_PurchID имеет тип - неограниченная строка. Что соответствует memo-полю в хранимой таблице. Либо ограничьте, либо используйте тип из EDT вместо str при объявлении аргумента метода. |
|
07.12.2007, 11:16 | #5 |
Участник
|
всё поправил ещё по прошлому ответу,
большое спасибо за оперативные подсказки |
|
Теги |
документация |
|
|