![]() |
#1 |
Участник
|
Как работать с Table_ds.next()
Привет, всем.
Пишу изменение значения даты для строк журнала переноса ниже активной на выбранное дату в активной строке. что-то типа: PHP код:
|
|
![]() |
#2 |
Модератор
|
Проверкой на RecId
С Уважением, Георгий |
|
![]() |
#3 |
Участник
|
да, я что-то подобное и сделал. Но очень это коряво:
PHP код:
А это заметно очень. (В смысле что она добавляется - это видно, потом исчезает, и потом еще и на активную строку перепрыгивает) |
|
![]() |
#4 |
Модератор
|
Поставь свойство датасорса CreateIfEmpty в No
|
|
![]() |
#5 |
Участник
|
Да, думал.
Только не insertIfEmpty, а insertAtEnd Но пользователям нравится вниз стрелочку нажимать, чтобы строка добавлялась ![]() Разве что - перед обработкой ее ставить, а после снимать. Но это изврат. Но, разве оно не должно правильно работать и не создавать новую строку??? |
|
![]() |
#6 |
Участник
|
2kashperuk
Почему отладчик не используете? Вам он на что дан?
У Вас в цикле обновления записей и добавление еще одной.Новая запись всегда инициализируется, т.е. вызывается InitValue. Вот там и ставьте точку. Потом по стеку смотрите откуда вызывается. Это next(). Значит надо сделать так, чтобы он не вызывался лишний раз. Перепешите свой кусок, ну например, через while select. Делов то... |
|
![]() |
#7 |
Участник
|
2 maximus:
while select не кактит. Мне не все строки журнала нужны, а только ниже текущей. А сортировка может быть разной, и т.д. Нужно с датасорсом работать. getNext тоже каряво как-то работает так и оставил, как было. И таки меняю свойство на датасорсе insertAtEnd перед и после цикла while (_ds.next()) |
|
![]() |
#8 |
Участник
|
2kashperuk
Если долго мучится, что-нибудь получится... (C)
PHP код:
|
|