|
|
|
Принудительное изменение
|
|||
|---|---|---|---|
|
#18+
Прямо парадокс какой-то. У меня генерируются уникальные значения с помощью спец. таблице. Вставка осуществляется с помощью default значения поля ключа. Ниже приведен код. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. По какой-то причине, при выполнении команды APPEND BLANK эта функция берет старое значение ключа, т.е. команда UPDATE якобы не прошла, и получается две записи с одинаковым значением. Причем этот эффект повторяется с определенной периодичностью, т.е. добавил 1 запись, следующая уже будет дубль, а следующая уже нет. Даже перед RETURN l_arrValue(1) ставил TABLEUPDATE(.T.,.T.,lcAlias), но не помогло ((( Люди, поможите. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.02.2006, 09:31 |
|
||
|
Принудительное изменение
|
|||
|---|---|---|---|
|
#18+
На первый взгляд все правильно. попробуй в конец TABLEUPDATE(.T.,.T., "ttables" ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.02.2006, 09:58 |
|
||
|
Принудительное изменение
|
|||
|---|---|---|---|
|
#18+
Да заработало. Проглядел походу, вместо TABLEUPDATE(.T.,.T.,"ttables") вставлял TABLEUPDATE(.T.,.T.,lcAlias) . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.02.2006, 10:17 |
|
||
|
Принудительное изменение
|
|||
|---|---|---|---|
|
#18+
Hi M0r0! Учти, что ты не отслеживаешь возможного конфликта совместного доступа к этому счётчику. Если не хочешь использовать явные блокировки, то добавь к Update в условие "AND recid = l_arrValue(1) - 1" - т.е. мы проверяем что значение счётчика не изменилось с момента выборки (то что выборка была всего лишь парой строк выше роли не играет!). Естественно что после UPDATE надо проверить _TALLY, и если там 0 - значит пока мы добавляли 1 кто-то успел "влезть" - и нужно снова идти выбирать, наращивать, обновлять... Короче тут нужен цикл. ttables не нужно нигде явно открывать - тогда она не попадёт в режим буферизации, и не нужен будет Tableupdate - а вот sys(1104) не помешает! Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2006, 01:32 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=33559948&tid=1592265]: |
0ms |
get settings: |
6ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
159ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
34ms |
get tp. blocked users: |
1ms |
| others: | 204ms |
| total: | 430ms |

| 0 / 0 |
