|
|
|
"Каскадное изменение данных в полях со списком"
|
|||
|---|---|---|---|
|
#18+
to Владимир Саныч, Senin Viktor и пр. "зубрам" аксеса в целом и этого форума в частности... Мой вопрос можно сформулировать так: есть форма с двумя полями со списами. В одном поле выбираем (например) предприятие, а в другом - список работников, ограниченный, соответственно, по принадлежности к данному предприятию. В одной из книг г-на Гетца и Ко есть раздел, начинающийся со слов, названных мною в теме. Раздел хороший, слова очень правильные. Все работает. До тех пор, пока юзер не захочет перейти в режим таблицы. После этого при любой попытке сделать выборку в поле работников, с остальными записями таблицы в столбце "работник" происходит бог знает что (вернее, все поля записей, в которых упомянуто предприятие, отличное от текущего, временно, пока полю не будет возвращен полный набор значений, очищаются - но пользователь от этого впадает в глубокую задумчивость до тех пор, пока его мысли не натыкаются на номер моего телефона). В 97-м аксесе, после 2-х requery, 3-х recalc'ов и 4-х ударов в бубен (шаманский, хехе :) проблема обходилась. В 2000 и ХР - не могу. М.б. кто-нить сталкивался с такой штукой, и знает панацею. Кто подскажет, чес-слово, не поленюсь в ближайшие выходные приехать в любую точку столицы нашей родины и поставить пиво. С уважением, уже почти отчаявшийся, Георгий. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2003, 17:30:08 |
|
||
|
"Каскадное изменение данных в полях со списком"
|
|||
|---|---|---|---|
|
#18+
Я это только сегодня тоже обошел след.образом: по событию GotFocus комбобокса, где сотрудники должны выбираться, подменяю RowSource этого бокса уже в усеченном виде (по имеющемуся значению в боксе предприятия обрезаю список). Пока доволен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2003, 18:03:59 |
|
||
|
"Каскадное изменение данных в полях со списком"
|
|||
|---|---|---|---|
|
#18+
Я не тормоз. Я не тормоз. Действительно, GotFocus, а не активация, вход и прочие. Спасибо большое. Куда везти пиво? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2003, 18:28:19 |
|
||
|
"Каскадное изменение данных в полях со списком"
|
|||
|---|---|---|---|
|
#18+
Пиво учителям моим отвези, Лоху, Виктору, Санычу в Израиль. Я их должник большой :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2003, 18:36:18 |
|
||
|
"Каскадное изменение данных в полях со списком"
|
|||
|---|---|---|---|
|
#18+
Им я тока спасибо сказать могу отсюда. Не поеду я туда в ближайшие пару лет - во-первых, они коды задом-наперед пишут %)... Но все равно, помог(ла) ты мне очень! Спасибо большое. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2003, 18:42:38 |
|
||
|
"Каскадное изменение данных в полях со списком"
|
|||
|---|---|---|---|
|
#18+
Лифчик - существительное мужского рода :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2003, 18:55:05 |
|
||
|
"Каскадное изменение данных в полях со списком"
|
|||
|---|---|---|---|
|
#18+
Покушал. Попробовал из примера перенести полученный результат в программу. Вырвал последние три волоса не скажу из какого места. Итак, новая загадка. Все работает, до тех пор пока все три таблицы (предприятия, работники, и оперативные данные) находятся непосредственно в том же файле, что и форма. Если они связаны с другой БД (тако же аксес 2000), результат - опять нишиша. :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2003, 21:18:29 |
|
||
|
"Каскадное изменение данных в полях со списком"
|
|||
|---|---|---|---|
|
#18+
Вот, пока меня не было, пиво заработал... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2003, 23:13:47 |
|
||
|
"Каскадное изменение данных в полях со списком"
|
|||
|---|---|---|---|
|
#18+
P.S. > Не поеду я туда в ближайшие пару лет - во-первых, они коды задом-наперед пишут %)... На всякий случай: Лох и Виктор - не тут, и они коды пишут задом назад. End P.S. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2003, 23:29:36 |
|
||
|
"Каскадное изменение данных в полях со списком"
|
|||
|---|---|---|---|
|
#18+
Мы с Виктором задом пишем? Оригинально-с Видимо это показатель виртуозности. Хендрикс на гитаре зубами играл, а мы жопой на кнопки жмем. Так наверное быстрее получается - кнопок сразу много нажимается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2003, 23:41:50 |
|
||
|
"Каскадное изменение данных в полях со списком"
|
|||
|---|---|---|---|
|
#18+
Хехе )) Не хотел обидеть. Это почти цитата из вашего диалога в одном из сообщений: "ENDIF q=2 ELSE q=1 THEN..." Вот ))) А вообче, пиво заработано не совсем. В приложении к проге нифига не вышло :( - см. предыдущее мое сообщение. Еще раз спасибо тем, кто всю эту пургу читают. Надеюсь, и у меня когда-нить достанет времени и терпения помогать страждущим сотоварищам. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2003, 00:01:24 |
|
||
|
"Каскадное изменение данных в полях со списком"
|
|||
|---|---|---|---|
|
#18+
Эх! Надо было вовремя забирать пиво :-( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2003, 00:56:53 |
|
||
|
"Каскадное изменение данных в полях со списком"
|
|||
|---|---|---|---|
|
#18+
Ты помоги лучше добить задачу. Пиво - не вопрос. Млин. Уже сил нет. Мир потеряет хорошего программера в моем лице с коротким некрологом: очередной сюицид в нашем районе... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2003, 01:05:48 |
|
||
|
"Каскадное изменение данных в полях со списком"
|
|||
|---|---|---|---|
|
#18+
Ну, это уже действительно тонкий вопрос, к зубрам. Я меньше года осваиваюсь. Гипотезу только могу высказать, что если таблицы и формы отдельно, то происходит несанкционированный Requery, который и портит всю колонку. Тебе от этого, конечно, не легче, но суицид рекомендую до утра отложить хотя бы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2003, 01:22:57 |
|
||
|
"Каскадное изменение данных в полях со списком"
|
|||
|---|---|---|---|
|
#18+
Ох, я его уже неделю оттягиваю. Понял, что в хелпе нету нишиша, купил пару книжек (одна, оказывается, от пресловутого Гетца), с тем же результатом. Сказал клиентам: ждите, м.б. решиться (я их и так балую). И вот решаю... Кстати, если хочешь, могу прогу слить (там много интересного, несмотря на то, что этот форум и вообще людей, которые мне по аксесу могут подсказать, я нашел недавно (с гордостью)). Во 2.х rar'е весит около 500 кб. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2003, 01:29:40 |
|
||
|
"Каскадное изменение данных в полях со списком"
|
|||
|---|---|---|---|
|
#18+
Если они связаны с другой БД (тако же аксес 2000), результат - опять нишиша. :( Странные вещи ты говоришь. Не должно так быть. Различия между связанной таблицей и обычной, конечно, есть, но здесь сказываться не должны. В 97-м такая конструкция со связанными таблицами работала, завтра на работе проверю в 2002-м ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2003, 01:36:06 |
|
||
|
"Каскадное изменение данных в полях со списком"
|
|||
|---|---|---|---|
|
#18+
Если обозначиш какой-нибудь майл, могу отправить 2 mdb из 3-х таблиц и одной формы в сумме. Не работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2003, 01:48:09 |
|
||
|
"Каскадное изменение данных в полях со списком"
|
|||
|---|---|---|---|
|
#18+
А что там Гетц пишет, задача какая то уж больно простая, в чем там могут быть проблемы без Гетца и не поймеш. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2003, 02:00:01 |
|
||
|
"Каскадное изменение данных в полях со списком"
|
|||
|---|---|---|---|
|
#18+
Книжка называется "Сборник рецептов" издательства "Питер" 2003 г. На последних страницах, в разделе про ADP (что это такое, я, чес-слово, не имею ни малейшего понятия) авторы, в том числе Гетц пишет (цитирую): "На ФОРМЕ имеется набор полей со списками, поддерживающих каскадное изменение данных, причем данные для них поставляются параметризованными сохраненными процедурами..." и т.д. Про таблицы ни слова. Процедуры мне не нужны, поскольку, судя по предложенной им реализации, в моем случае это не отличается от простой передачи параметров запросу или урезке оного при входе/получении фокуса/клике мышью/нажатии на клавишу/двойном ударе в бубен на требуемом поле. И-эх-хх... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2003, 02:14:04 |
|
||
|
"Каскадное изменение данных в полях со списком"
|
|||
|---|---|---|---|
|
#18+
Еще раз порыл программы на 97-м. В дополнении к условию захотел сказать, что если поле № 1 пустое, то поле 2 д.б. с полным списком. Для этого в 97 я писал так: sub поле2_enter() If me.Поле1 > 1 then me.Поле2.rowSource="запрос1" '(! - именно запрос, с инструкцией sql почему-то тоже глючило, насколько я помню, дюже форма была перегружена); else me.поле2.RowSource="запрос2" endif endsub а на выход поле делал полным, неважно, запросом ли, или инструкцией. Все работало. Дошло до того, что (во избежание неправильности перевода) я вручную создавал в 2000-м 3 аналогичные таблицы и форму, писал буковка в буковку код... Нет. Нет в жизни счастья. Все напрасно... Эх... Обожруся и помру молодой... :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2003, 03:42:47 |
|
||
|
"Каскадное изменение данных в полях со списком"
|
|||
|---|---|---|---|
|
#18+
2 Geo В 2002-м все работает как часы. И в одной базе, и в разных базах. Если хочешь - могу выслать 2 mdb из 4-х таблиц и одной формы в сумме ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2003, 10:53:28 |
|
||
|
"Каскадное изменение данных в полях со списком"
|
|||
|---|---|---|---|
|
#18+
Высылайте Бд, просто интересно посмотреть: Tosty@yandex.ru Просто интерсно посмотреть, задачу постараюсь решить, по ветке не совсем понял в чём дело... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2003, 11:03:31 |
|
||
|
"Каскадное изменение данных в полях со списком"
|
|||
|---|---|---|---|
|
#18+
я обходил это по - другому рисовал два контрола текстовое поле - привязанное к данным и рядом с ним комбобокс от которого по ширине оставалась только стрелка не забудь принудительно назначить ширину списка. вот и все собственно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2003, 12:02:00 |
|
||
|
"Каскадное изменение данных в полях со списком"
|
|||
|---|---|---|---|
|
#18+
2Лох Очень хочу! :) Шли(те) 2АлексейК А вот это уже очень интересно. С другой стороны, в режиме таблицы текстовое поле и комбобокс юзверя смогут растащить в разные стороны. Не совсем то, что нужно, но хорошо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2003, 13:01:00 |
|
||
|
"Каскадное изменение данных в полях со списком"
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. Я не знаю, о чем вы говорите, но я решал бы эту задачу так: два контрола, лежащих один на другом. Один - текстбокс, который показывает текст из привязанной через join таблицы. Второй - комбо, как и задумано. Во всех записях виден текстбокс, и при переходе с записи на запись ничего не очищается. А комбо спрятан позади него, от него торчит наружу только стрелочка, и если на нее нажать, то комбо открывается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2003, 13:05:54 |
|
||
|
|

start [/forum/topic.php?fid=45&msg=32188189&tid=1670940]: |
0ms |
get settings: |
11ms |
get forum list: |
20ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
61ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
85ms |
get tp. blocked users: |
2ms |
| others: | 227ms |
| total: | 433ms |

| 0 / 0 |
