16.03.2007, 13:46 | #1 |
Участник
|
непонятности с полями modifiedTime, modifiedDate др.
Добрый день!
Наткнулся на очень странную ситуацию связанную с системными полями такими как modifiedTime, modifiedDate. Вот что я увидел: 1. есть таблица в свойствах которых Не установлены modifiedTime , modifiedDate. 2. на форме, использующей эту таблицу, создаю запись. Поля modifiedTime , modifiedDate ПУСТЫЕ. 3. изменяю значение любого поля этой записи. Поля modifiedTime , modifiedDate ЗАПОЛНЕНЫ !!! Значение полей наблюдаю через Паспорт записи. Вопрос: Почему с учетом п.1 я вижу заполненые поля modifiedTime , modifiedDate? |
|
16.03.2007, 14:06 | #2 |
Участник
|
Если свойства не установлены то в БД у таблицы этих полей нет. Но сама аксапта их заполняет скорее всего т.к. у таблицы как объекта аксапты это поле заполняется всегда. Но если перечитать данные из таблицы то поле снова будет пустое.
|
|
16.03.2007, 14:32 | #3 |
Участник
|
Очень странное поведение Аксапты в плане заполнения таких полей... частенько вводит в заблуждение.
|
|
16.03.2007, 15:26 | #4 |
Участник
|
и если сделать запрос типа
X++: select accountNum from ledgerTrans where ledgerTrans.modifiedDate > str2date( "01012000", 123) X++: SELECT TOP 1 A.ACCOUNTNUM,A.RECID FROM LEDGERTRANS A WHERE ((DATAAREAID=N'dat') AND ({ts '1900-01-01 00:00:00.000'}>{ts '2000-01-01 00:00:00.000'})) система создаёт видимость того, что поле modifiedDate есть и заполнено значением datenull()
__________________
Дмитрий |
|
17.03.2007, 10:28 | #5 |
Участник
|
хм...
я не претендую на всёзнайство и прошу меня простить если что, но смотря таблицы в БД я полей НЕ увидел потому что их нет. Решил проверить. X++: static void JobTestModifiedDate(Args _args) { Address address; ; select name from address where address.modifiedDate > str2date('01012007',123); info(address.Name); } Цитата:
Пользователь: Admin
Время: 09:15:28 16.03.2007 Версия: Microsoft Business Solutions-Axapta 3.0 (Номер выпуска 1951.4060) База данных: Microsoft SQL Server Предупреждение: Поле "modifiedDate" в таблице "Address используется в выражении where, но не сохраняется в базе данных SQL (то есть нет эффекта). Поле может быть заблокировано конфигурационным ключом. [W-0114] Стек вызовов: \Jobs\JobTestModifiedDate - line 5 Последний раз редактировалось Kolja; 17.03.2007 в 13:59. |
|
|
|