Едно 'интелигентно' комбо...
1 отговора
0 прегледа
Едно 'интелигентно' комбо...
Отскоро се занимавам с Аксес и искам да питам разбирачите...
Телефона ми е задръстен с номера и гледам да ги поразчистя малко.
Но понеже съм сантиментален и реших да го направя в база данни на аксес - да имам за всеки случай и бившите номера на познатите, та ако някой реши да се гъбарка с мен :))
Правя си нещо като GSM указател, общо взето основните таблици са:
Friends
FriendID
Name
Family
Birthdate
и т.н.
GSMNumbers
GSMNumberID
FriendID
Number
FirstDate
Description
и т.н.
Messages
MessageID
GSMNumberID
Message
Date
Time
и т.н.
Създал съм формички за въвеждане на данните.
Във формата за попълване на съобщенията съм сложил комбо поле което извлича Friends.Name. Искам обаче когато го променя (избера приятел) в друго комбо да се показват само номерата на конкретният избран приятел. Т.е. след промяна в комбо полето да се стартира нещо като:
SELECT GSMNumbers.GSMNumberID, GSMNumbers.GSMNumber FROM GSMNumbers,? WHERE GSMNumbers.FriendID=стойноста на току-що промененото комбо1;
т.е. трябва в комбото да ми се покажат номерата на познатия като текст, и след избор на конкретен номер, в таблицата се записва неговото ID
Телефона ми е задръстен с номера и гледам да ги поразчистя малко.
Но понеже съм сантиментален и реших да го направя в база данни на аксес - да имам за всеки случай и бившите номера на познатите, та ако някой реши да се гъбарка с мен :))
Правя си нещо като GSM указател, общо взето основните таблици са:
Friends
FriendID
Name
Family
Birthdate
и т.н.
GSMNumbers
GSMNumberID
FriendID
Number
FirstDate
Description
и т.н.
Messages
MessageID
GSMNumberID
Message
Date
Time
и т.н.
Създал съм формички за въвеждане на данните.
Във формата за попълване на съобщенията съм сложил комбо поле което извлича Friends.Name. Искам обаче когато го променя (избера приятел) в друго комбо да се показват само номерата на конкретният избран приятел. Т.е. след промяна в комбо полето да се стартира нещо като:
SELECT GSMNumbers.GSMNumberID, GSMNumbers.GSMNumber FROM GSMNumbers,? WHERE GSMNumbers.FriendID=стойноста на току-що промененото комбо1;
т.е. трябва в комбото да ми се покажат номерата на познатия като текст, и след избор на конкретен номер, в таблицата се записва неговото ID
Re: Едно 'интелигентно' комбо...
В комбобокса на номерата в полето RowSource поставяш точно както си го описал
SELECT GSMNumbers.GSMNumberID, GSMNumbers.GSMNumber FROM GSMNumbers WHERE GSMNumbers.FriendID= Form1.FriendID;
На събитието AfterUpdate на FriendID поставяш рефреш и готово.
Втория начин е подобен - оставяш RowSource празно и на AfterUpdate пишеш
me.GSMNumberID.RowSource ="SELECT GSMNumbers.GSMNumberID, GSMNumbers.GSMNumber FROM GSMNumbers WHERE GSMNumbers.FriendID= " & Form1.FriendID
съответно ще промениш името на Form1 с твоето име на форма.
Успех :)
SELECT GSMNumbers.GSMNumberID, GSMNumbers.GSMNumber FROM GSMNumbers WHERE GSMNumbers.FriendID= Form1.FriendID;
На събитието AfterUpdate на FriendID поставяш рефреш и готово.
Втория начин е подобен - оставяш RowSource празно и на AfterUpdate пишеш
me.GSMNumberID.RowSource ="SELECT GSMNumbers.GSMNumberID, GSMNumbers.GSMNumber FROM GSMNumbers WHERE GSMNumbers.FriendID= " & Form1.FriendID
съответно ще промениш името на Form1 с твоето име на форма.
Успех :)