Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / PowerBuilder Новый топик    Ответить
 Опять - двадцать пять! Или вопрос о статусе строки.  [new]
urvas
Member

Откуда: СПб
Сообщений: 383
Привет всем!
Помогите, разъясните про изменение статуса строки!
Вставляю новую строку со значениями по умолчанию, а статус остается как был, так и остается NEW!
Разве так и должно быть?


PB 10.2.0 build 8100
24 окт 05, 11:58    [1997572]     Ответить | Цитировать Сообщить модератору
 Re: Опять - двадцать пять! Или вопрос о статусе строки.  [new]
AndrewN
Member

Откуда: W4
Сообщений: 119
Ключевое слово
urvas
Вставляю
.
А что вы ожидали увидеть?
24 окт 05, 12:06    [1997643]     Ответить | Цитировать Сообщить модератору
 Re: Опять - двадцать пять! Или вопрос о статусе строки.  [new]
urvas
Member

Откуда: СПб
Сообщений: 383
Я вижу новую строку со значениями по умолчанию и статус строки - NEW!
24 окт 05, 12:09    [1997675]     Ответить | Цитировать Сообщить модератору
 Re: Опять - двадцать пять! Или вопрос о статусе строки.  [new]
urvas
Member

Откуда: СПб
Сообщений: 383
А ожидал увидеть NEWMODIFIED!
Как в хелпе:
NewModified! NewModified 3 The row is new, and values have been assigned to its columns. In addition to changes caused by user entry or the SetItem method, a new row gets the status NewModified when one of its columns has a default value. (Apples to rows only, not to individual columns.)
24 окт 05, 12:11    [1997690]     Ответить | Цитировать Сообщить модератору
 Re: Опять - двадцать пять! Или вопрос о статусе строки.  [new]
AndrewN
Member

Откуда: W4
Сообщений: 119
Судя по всему это "тараканы" 10-ки. Для 7-ки это нормальное поведение.
24 окт 05, 12:37    [1997857]     Ответить | Цитировать Сообщить модератору
 Re: Опять - двадцать пять! Или вопрос о статусе строки.  [new]
Andyn
Member

Откуда:
Сообщений: 313
Никаких тараканов. :))

SetItemStatus function help
When rows are inserted
When a row is inserted into a DataWindow, it initially has a row status of New!, and all columns in that row initially have a column status of NotModified!. After data has changed in a column in the row, either because the user changed the data or the data was changed programmatically, such as through the SetItem method, the column status changes to DataModified!. Once the status for any column in the inserted row changes to DataModified!, the row status changes to NewModified!.

When a DataWindow column has a default value, the column's status does not change to DataModified! until the user makes at least one actual change to a column in that row.
То есть при наличии у полей значений по умолчанию статус строки не меняется - считается, что эти значения - неотъемлемая часть строки. :) Что в общем-то логично.
24 окт 05, 13:12    [1998087]     Ответить | Цитировать Сообщить модератору
 Re: Опять - двадцать пять! Или вопрос о статусе строки.  [new]
Andyn
Member

Откуда:
Сообщений: 313
Написал, прочитал и теперь сам засомневался. Надо проверить.
24 окт 05, 13:19    [1998142]     Ответить | Цитировать Сообщить модератору
 Re: Опять - двадцать пять! Или вопрос о статусе строки.  [new]
Филипп
Member

Откуда: Boston, MA, USA (c 1989 ) б. Москва
Сообщений: 1880
Нечего проверять. Всё верно написал.
24 окт 05, 18:28    [2000250]     Ответить | Цитировать Сообщить модератору
 Re: Опять - двадцать пять! Или вопрос о статусе строки.  [new]
ЗоринАндрей
Member

Откуда: Санкт-Петербург
Сообщений: 3004
Филипп
Нечего проверять. Всё верно написал.

так значит в хелпе ошибка?
24 окт 05, 18:38    [2000288]     Ответить | Цитировать Сообщить модератору
 Re: Опять - двадцать пять! Или вопрос о статусе строки.  [new]
Филипп
Member

Откуда: Boston, MA, USA (c 1989 ) б. Москва
Сообщений: 1880
Какая?
Написано чётко:
When a DataWindow column has a default value, the column's status does not change to DataModified! until the user makes at least one actual change to a column in that row.
24 окт 05, 19:20    [2000393]     Ответить | Цитировать Сообщить модератору
 Re: Опять - двадцать пять! Или вопрос о статусе строки.  [new]
ЗоринАндрей
Member

Откуда: Санкт-Петербург
Сообщений: 3004
я про тот кусок который цитировал urvas из "Datawindow Reference", а не про тот который цитировал AndyN из "DataWindow Programmer's Guide".
Вот это вот "in addition..." - враньё:
urvas
In addition to changes caused by user entry or the SetItem method, a new row gets the status NewModified when one of its columns has a default value. (Apples to rows only, not to individual columns.)

DataWindow Reference. Chapter 6. DataWindow Constants. DWItemStatus. NewModified!

В DataWindow Programmer's Guide все написано правильно.
24 окт 05, 19:46    [2000420]     Ответить | Цитировать Сообщить модератору
 Re: Опять - двадцать пять! Или вопрос о статусе строки.  [new]
urvas
Member

Откуда: СПб
Сообщений: 383
Похоже, мы чуть-чуть о разном - Филипп о статусе ПОЛЯ с дефолтным значением, а я о статусе СТРОКИ, поля которой содержат значения по умолчанию.
25 окт 05, 09:39    [2001042]     Ответить | Цитировать Сообщить модератору
 Re: Опять - двадцать пять! Или вопрос о статусе строки.  [new]
AndrewN
Member

Откуда: W4
Сообщений: 119
Ну так с чего тогда строка станет NewModified!? Если поле не становится DataModified, то и статус строки не меняется.
SetItemStatus method (DataWindows)

Once the status for any column in the inserted row changes to DataModified!, the row status changes to NewModified!.

Вполне логично.

Действительно ошибка в хелпе. :)
25 окт 05, 12:26    [2002075]     Ответить | Цитировать Сообщить модератору
Все форумы / PowerBuilder Ответить