|
|
|
как при выборе клиента из списка отобразить его адрес?...
|
|||
|---|---|---|---|
|
#18+
привет... есть форма ( таблица ), на форме раскр. список ( Клиент ), текстовое поле ( Адрес клиента )... вся информация хранится в одной таблице... нужно, чтобы при выборе значения из списка, в текстовое поле записывался адрес этого клиента... спасибо... лучше побыть дураком 15 мин., чем остаться им на всю жизнь... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2004, 14:50 |
|
||
|
как при выборе клиента из списка отобразить его адрес?...
|
|||
|---|---|---|---|
|
#18+
Ви источник поля со списком добавляеш столбец с адресом. Чтобы его не было видно делаеш его длинну =0см В текстовом поле делаеш ссылку на столбец=ПолеСоСписком.Column(1) Или если надо просто заполнить поле, Делаеш его инициализацию по какому нибудь событию (например после обновления поля со списком) ТекстовоеПоле=ПолеСоСписком.Column(Какой он там у тебя по счету) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2004, 14:57 |
|
||
|
как при выборе клиента из списка отобразить его адрес?...
|
|||
|---|---|---|---|
|
#18+
Раскрывающийся список должен иметь 2 столбца клиент и адрес В свойстве источник строк должен быть запрос типа < select клиент, адрес from Таблица > Свойство число столбцов - 2 В событии AfterUpdate списка написать примерно это текстовое поле.setfocus текстовое поле.text=НазваниеРаскрСписка.column(1) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2004, 15:02 |
|
||
|
как при выборе клиента из списка отобразить его адрес?...
|
|||
|---|---|---|---|
|
#18+
спасибо!... а вот такой еще вопрос... если в таблице сделать distinct по полям Клиент и адрес select distinct customer, address from tblMy то для одного клиента может быть выведено несколько строк с адресом, это нормально, просто ведется история добавления адресов... так вот, в таблице есть еще поле Дата ( date ), как тогда привязать текстбокс, чтобы он, после выбора из поля со списком, отображал последний адрес для клиента?... я так подозреваю, что это нужно делать в обработчике события ПолеСоСписком_Change, а вот дальше не знаю...( в поле RowSource у меня стоит "select distinct customer from tblMy"... лучше побыть дураком 15 мин., чем остаться им на всю жизнь... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2004, 15:10 |
|
||
|
как при выборе клиента из списка отобразить его адрес?...
|
|||
|---|---|---|---|
|
#18+
Значению свойства Уникальные записи (UniqueRecords) соответствует предикат DISTINCTROW. Свойству Уникальные значения (UniqueValues) соответствует предикат DISTINCT. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2004, 15:17 |
|
||
|
как при выборе клиента из списка отобразить его адрес?...
|
|||
|---|---|---|---|
|
#18+
?... чегой-то я не понял ничего...) вы имеете в ввиду, заполнение поля со списком, используя предикат distinct row?... тогда получается, что в поле со списком будут повторятся записи с одним и тем же клиентом, а мне нужно, чтобы в списке отображались клиенты ( без повторений ), и при выборе заполнялося бы текстовое поле с последним адресом клиента... лучше побыть дураком 15 мин., чем остаться им на всю жизнь... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2004, 15:24 |
|
||
|
как при выборе клиента из списка отобразить его адрес?...
|
|||
|---|---|---|---|
|
#18+
Все как раз наоборот! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2004, 15:39 |
|
||
|
как при выборе клиента из списка отобразить его адрес?...
|
|||
|---|---|---|---|
|
#18+
блин, ну я и тупой... в общем, я сделал так: 1. для свойства RowSource поля со списком установил следующий запрос, который возвращает список клиентов с последними адресами: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 2. свойство Количество столбцов списка - 2 ( второй столбец скрыл ) 3. написал обработчик события : Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. ... после выбора из списка, на выделенной строке появляется сообщение об ошибке : "Макрос или функция, связанные со свойством 'До обновления' или 'Условие на значение' этого поля не позволяютприложению Accessданные в этом поле" что тут не так??... лучше побыть дураком 15 мин., чем остаться им на всю жизнь... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2004, 17:51 |
|
||
|
как при выборе клиента из списка отобразить его адрес?...
|
|||
|---|---|---|---|
|
#18+
пожалуйста, любые идеи?!... лучше побыть дураком 15 мин., чем остаться им на всю жизнь... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2004, 10:37 |
|
||
|
как при выборе клиента из списка отобразить его адрес?...
|
|||
|---|---|---|---|
|
#18+
Вообще-то хранить историю изменений в той же таблице - это... как бы сказать помягче... ну некрасиво, что ли. Вот и запросы некрасивые получаются ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2004, 11:23 |
|
||
|
как при выборе клиента из списка отобразить его адрес?...
|
|||
|---|---|---|---|
|
#18+
нормализацию БД я не проводил сознательно... база маленькая, да и упростить хотелось... еще опыта работы с Access мало... парадокс получается, работаю профессионально с MS SQL Server 2000 довольно таки много, а вот с такой простой БД как ACCESS, в которой можно сделать нужные отчеты практически без программирования, возникают такие трудности... запрос то делает работу правильно!?... в общем, сделал все так как советовали в предыдущих топиках, но появляется ошибка!... ни как не могу понять, что там не так, какова причина?... лучше побыть дураком 15 мин., чем остаться им на всю жизнь... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2004, 11:42 |
|
||
|
как при выборе клиента из списка отобразить его адрес?...
|
|||
|---|---|---|---|
|
#18+
Так куда все-таки должен записываться адрес? Если бы просто в поле, таких проблем бы не было. Поле txtAddressTo к чему привязано? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2004, 12:02 |
|
||
|
как при выборе клиента из списка отобразить его адрес?...
|
|||
|---|---|---|---|
|
#18+
такой еще факт... если в обработчике события игнорировать ошибки ( on error resume next ), то адрес заполняется успешно, и в таблице тоже сохраняется... лучше побыть дураком 15 мин., чем остаться им на всю жизнь... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2004, 12:02 |
|
||
|
как при выборе клиента из списка отобразить его адрес?...
|
|||
|---|---|---|---|
|
#18+
Так куда все-таки должен записываться адрес? Если бы просто в поле, таких проблем бы не было. Поле txtAddressTo к чему привязано? поле привязывается к столбцу end_address из той же таблицы... лучше побыть дураком 15 мин., чем остаться им на всю жизнь... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2004, 12:05 |
|
||
|
как при выборе клиента из списка отобразить его адрес?...
|
|||
|---|---|---|---|
|
#18+
Дык он наверное из-за этой привязки и заполняется. Тогда никакие дополнительные телодвижения не нужны. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2004, 12:17 |
|
||
|
как при выборе клиента из списка отобразить его адрес?...
|
|||
|---|---|---|---|
|
#18+
сценарий такой : когда пользователь открывает, уже сохраненную, форму, то все поля заполняются из таблицы ( ну, по привязке ), он может вручную изменить адрес в поле, или оно может заполниться автоматически при выборе клиента из списка ( вставится последний адрес для клиента )... все ОК, и все работает, но... если только игнорировать ошибки в обработчике end_customer_AfterUpdate, о которых я говорил... что то подсказывает мне, что это не есть гут... лучше побыть дураком 15 мин., чем остаться им на всю жизнь... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2004, 12:36 |
|
||
|
как при выборе клиента из списка отобразить его адрес?...
|
|||
|---|---|---|---|
|
#18+
1. А переменная str что возвращает в случае ошибки 2. Процедуру можно переписать так: Private Sub end_customer_name_AfterUpdate() Me.txtAddressTo = Nz(Me.end_customer_name.Column(1)) End Sub 3. Да и запрос вроде тоже. Только времени и сосредоточенности что-то не хватает... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2004, 13:03 |
|
||
|
как при выборе клиента из списка отобразить его адрес?...
|
|||
|---|---|---|---|
|
#18+
Блин... Ну и денек сегодня... Прошу прошения Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2004, 13:05 |
|
||
|
как при выборе клиента из списка отобразить его адрес?...
|
|||
|---|---|---|---|
|
#18+
1. А переменная str что возвращает в случае ошибки возвращается значение из Me.end_customer_name.Column(1)), при чем совершенно корректное, т.е. текстовую строку с адресом выбранного клиента, который доллжен быть вставлен... я использую эту переменную специально, чтобы сохранить адрес перед вызовом метода SetFocus, так как ( почему-то!?... ) после вызова этого метода, Me.end_customer_name.Column(1) возвращает Null... 2. Процедуру можно переписать так: Private Sub end_customer_name_AfterUpdate() Me.txtAddressTo = Nz(Me.end_customer_name.Column(1), 0) End Sub функция Nz, похоже, аналог coalesce в T-SQL!?... ошибка возникает в момент записи в текстбокс... программа приостанавливается на этой строчке, со всеми вытекающими... как я говорил, on error resume next в начале процедуры помогает... 3. Да и запрос вроде тоже. Только времени и сосредоточенности что-то не хватает... да согласен, запрос тоже по другому можно ( нужно ) переписать... по крайней мере, сейчас он возвращает, то что нужно... лучше побыть дураком 15 мин., чем остаться им на всю жизнь... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2004, 13:38 |
|
||
|
как при выборе клиента из списка отобразить его адрес?...
|
|||
|---|---|---|---|
|
#18+
А если вообще убрать эту процедуру? ЗЫ. Nz - аналог ISNULL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2004, 13:52 |
|
||
|
как при выборе клиента из списка отобразить его адрес?...
|
|||
|---|---|---|---|
|
#18+
А если вообще убрать эту процедуру? )... ага, лучше, вообще, "забить" на фик на эту базу, пусть пользователь сам помнит какой там был последний адрес для клиента, и заносит все "руками"... но они то ( эти пользователи, такиетосякието ), совсем расслабились, не хочут "ручками" и все тут... если убрать процедуру, то ничего не происходит... данные привязываются только при открытии формы... лучше побыть дураком 15 мин., чем остаться им на всю жизнь... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.01.2004, 14:05 |
|
||
|
|

start [/forum/topic.php?fid=45&msg=32381841&tid=1677093]: |
0ms |
get settings: |
9ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
182ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 248ms |
| total: | 520ms |

| 0 / 0 |
