|
|
|
Програмная ошибка
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! Подскажите пожалуйста, в чем может быть проблема: Для свойства InteractiveChange элемента ComboBox делаю следующее: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Структура posts_table +---+-------+ | id | post | +---+-------+ В ComboBex - RowSourceType - Alias a RowSource - posts_table.post Тоесть выбираю в Combobox - значение а в Text4 хочу загнать соответствующий этому значению id. FoxPro говорит: File in use (тоесть первая проблема - доступа) и в Text4 значение из id так и не подставляет (а это - вторая проблема)... Почему так происходит - не понимаю. Только догадываюсь.. Большое Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2006, 13:36 |
|
||
|
Програмная ошибка
|
|||
|---|---|---|---|
|
#18+
2 mr. Eof У тя файл 'posts_table' уже кемто используеться или даже ты его уже где-то открыл. и открыт он у тебя в монопользовательском режиме. Пропеши это в самом начале SET EXCLUSIVE OFF ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2006, 15:29 |
|
||
|
Програмная ошибка
|
|||
|---|---|---|---|
|
#18+
Может запись искать через locate FOR ..., GO TO i кажется из бейсика (фортрана) Зачем закрывать все таблицы? Потеряются данные в контролах, лучше проверить на USE IF !USED('tabl') USE table ENDIF selECT table ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2006, 18:55 |
|
||
|
Програмная ошибка
|
|||
|---|---|---|---|
|
#18+
Код: 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. 26. 27. НО ! Это никак нельзя использовать в InteractiveChange , как и твой код. Тем более при привязке контрола к Alias. Получается ты выбрал из контрола значение которое должно найти какое-то другое значение из этой же таблицы. В чем смысл ? Да и результат у тебя будет тот же что и ты выбрал только дольше будет искаться. Зачем искать то, что ты выбрал ? Может быть просто его записать в из свойства Value контрола ? В общем возможно я что-то не понял :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2006, 21:16 |
|
||
|
Програмная ошибка
|
|||
|---|---|---|---|
|
#18+
А зачем такой кишмишь? Ты что хочешь сделать? Вообще если речь идет об обновлении то и обновляй а цикл гонять зачем? Можешь описать задачу? Я не понял, зачем так написано и что нужно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2006, 23:47 |
|
||
|
Програмная ошибка
|
|||
|---|---|---|---|
|
#18+
local thisValue,OldArea *Сохранили обстановку OldArea =select() *В переменную значение ключа поиска thisValue = this.value+' ' *открыли таблицу USE "Tables\posts_table.dbf" in 0 ALIAS posts_table *нашли значение, соответствующее ключу select * from posts_table where ThisValue = post+' ' into cursor MyCursor *перешли в курсор select MyCursor * сохранили значение if reccount() >0 thisform.pageframe1.page2.text4.Value = MyCursor.id else thisform.pageframe1.page2.text4.Value = 0 && Или -1, например messagebox('Нет совпадений') endif slect(OldArea) Я тему правильно понял? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2006, 23:56 |
|
||
|
Програмная ошибка
|
|||
|---|---|---|---|
|
#18+
А чтобы так не ругалась, добавь еще в конце, use in MyCursor sele(OldArea) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2006, 23:59 |
|
||
|
Програмная ошибка
|
|||
|---|---|---|---|
|
#18+
И закоменнтируй открытие своей таблицы. Ты ее открываешь, но не закрываешь и когда снова обращаешься к методу фокс скандалит справедливо. Вообще всегда проверяй таблицу перед открытием, может она уже открыта: if !used('MyTable') use MyTable in 0 excl && share endif sele MyTable Так ругаться не будет никогда ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 00:04 |
|
||
|
Програмная ошибка
|
|||
|---|---|---|---|
|
#18+
Недоходящий2 mr. Eof У тя файл 'posts_table' уже кемто используеться или даже ты его уже где-то открыл. и открыт он у тебя в монопользовательском режиме. Пропеши это в самом начале SET EXCLUSIVE OFF Надо не в эксклюзиве открывать, а просто проверить на существования алиаса ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 00:06 |
|
||
|
Програмная ошибка
|
|||
|---|---|---|---|
|
#18+
Присоединяюсь к предыдущему докладчику: ORAselectА зачем такой кишмишь? Ты что хочешь сделать? .... Если ты хочешь значение из сомбо загнать в текст, то зачем такие навороты ?!? Дано: 1) Есть табла. 2) Есть комбо в источнике которого эта табла ... 3) ТАБЛА ОТКРЫТА !!! 4) Есть текст который отображает ID выбранной строки Надо: при выборе значения из сомбо, обновить ID в тексте. 1) Из дезайнера 1.1) Указываешь источник для списка комбобокса (ControlSource=posts_table.post) 1.2) Указываешь источник для текста (ControlSource=posts_table.ID) Запускаешь: все работает !!! :-)) Смысл в том, что при переходе в сомбо, он автоматически перемещает указатель записи в табле. И поидее ТЕкстБокс должен обновиться ... Если не обновился в InterActiveChange напиши: ThisForm.Refresh() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 12:31 |
|
||
|
Програмная ошибка
|
|||
|---|---|---|---|
|
#18+
.....Maltsev Max ..... Если таблица одна и из нее тянем ID - действительно достаточно. А если из другой по значению в списке - не пойдет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.11.2006, 18:50 |
|
||
|
Програмная ошибка
|
|||
|---|---|---|---|
|
#18+
Тогда в InterActiveChange Код: plaintext 1. 2. 3. 4. 5. 6. Ну и само собой у TextBox`a д.б. прописан ControlSource = OtherTable.ID ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 09:14 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=34156461&tid=1590297]: |
0ms |
get settings: |
11ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
189ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
63ms |
get tp. blocked users: |
2ms |
| others: | 241ms |
| total: | 548ms |

| 0 / 0 |
