Zdravím vespolek,
snažím se vytvořit databázi která by měla obsahovat formulář s větším množstvím tlačítek.
Bohužel tyto tlačítka nejsou nijak seřazena a zhruba mají odpovídat skutečnému umístění paletových pozic.
Chtěl jsem, aby se kliknutím na jednotlivé tlačítko, zapsala "objednávka".
Bohužel nemůžu najít nic jako index (VB6) ani žádnou informaci kromě názvu kterou se každé tlačítko nese ke zpracování...
Doufám že jsem jsem to vyoslil správně a že se najde dobrá duše, která mi poradí..
Jedná se o access 2003
Access a větší množství tlačítek ve formuláři Vyřešeno
-
- Level 2.5
- Příspěvky: 274
- Registrován: červen 11
- Pohlaví:
- Stav:
Offline
Re: Access a větší množství tlačítek ve formuláři
Můžeš to nějak blíže rozvést? Co to znamená "aby se na každé tlačítko zapsala objednávka"? Tlačítka jsou identifikována jako ovládací prvky (resp. jejich názvy).
-
- Level 2.5
- Příspěvky: 274
- Registrován: červen 11
- Pohlaví:
- Stav:
Offline
Re: Access a větší množství tlačítek ve formuláři
Určitě to můžu přiblížit...
Jde mi o to že mám cca 35 paletových míst , na kterých je materiál, který se MŮŽE občas změnit...
Převážně však půjde o to , aby kliknutím na danou pozici, se přidal záznam o objednávce do tabulky objednávek.
Nechtěl jsem to dělat formou 35 a více aktualizačních dotazů.
Bylo by pro mě rozhodně lepší, kdyby bylo paleta1 = materiál A , paleta2 = materiál B atd. a zpracovávat to skriptem ve stylu:
Aha požadavek od palety 1, kouknu co tam má být za materiál, aha A, takže objednávám...
Jde mi o to že mám cca 35 paletových míst , na kterých je materiál, který se MŮŽE občas změnit...
Převážně však půjde o to , aby kliknutím na danou pozici, se přidal záznam o objednávce do tabulky objednávek.
Nechtěl jsem to dělat formou 35 a více aktualizačních dotazů.
Bylo by pro mě rozhodně lepší, kdyby bylo paleta1 = materiál A , paleta2 = materiál B atd. a zpracovávat to skriptem ve stylu:
Aha požadavek od palety 1, kouknu co tam má být za materiál, aha A, takže objednávám...
Re: Access a větší množství tlačítek ve formuláři
Jen v rychlosti: můžeš to udělat tak že předáš proceduře hodnotu tlačítka které se stiskne a ona si to podle této hodnoty už sama pořeší. Čili každé tlačítko bude mít po kliknutí kód volání té centrální procedury s hodnotou toho aktuálního tlačítka. Např následující věc ti vypíše vždy název toho tlačítka co se stisklo:
Private Sub Prikaz1_Click()
Call VyhodnoceniTlacitek(Prikaz1)
End Sub
Private Sub Prikaz2_Click()
Call VyhodnoceniTlacitek(Prikaz2)
End Sub
Private Sub VyhodnoceniTlacitek(ByVal Tlacitko As CommandButton)
MsgBox Tlacitko.Caption
End Sub
edit: Ale můžeš předávat klidně jen textovou nebo číselnou hodnotu co ti bude vyhovovat (čili nikoliv typ CommandButton ale třeba jen Byte nebo String)
Private Sub Prikaz1_Click()
Call VyhodnoceniTlacitek(Prikaz1)
End Sub
Private Sub Prikaz2_Click()
Call VyhodnoceniTlacitek(Prikaz2)
End Sub
Private Sub VyhodnoceniTlacitek(ByVal Tlacitko As CommandButton)
MsgBox Tlacitko.Caption
End Sub
edit: Ale můžeš předávat klidně jen textovou nebo číselnou hodnotu co ti bude vyhovovat (čili nikoliv typ CommandButton ale třeba jen Byte nebo String)
-
- Level 2.5
- Příspěvky: 274
- Registrován: červen 11
- Pohlaví:
- Stav:
Offline
Re: Access a větší množství tlačítek ve formuláři Vyřešeno
Super,
přesně tak jsem to začal dělat :-) ještě před odpovědí....
Ale potvrdilo se mi že asi nejde jako ve VB - Private Sub Prikaz1_Click(neco, co si predam tlacitkem)
Chtěl jsem se pravě tomu vyhnout aby bylo i jednoduchý přidávání dalších tlačítek...
Každopádně díky moc....
Den poté:
To jak jsi to napsal funguje, ted by mě ještě zajímalo, jestli můžu název tlačítka předat jako hodnotu z DB...
Jde mi o to , aby v DB byly názvy tlačítek a já při otevření formuláře tyto názvy vyplnil do tlacítek.
Dělám to z důvodu jednoduché změny materiálu na dané pozici...
nějak takto :
Private Sub VypisNazvyPaletovychMist_Click()
Dim dbMyDB As DAO.Database
Set dbMyDB = CurrentDb()
'Dim tblMyTable As DAO.TableDef
'Set tblMyTable = dbMyDB![PoziceAObsah]
Dim DotazSQL As String
Dim ZaznamyDB As DAO.Recordset
DotazSQL = "SELECT CisloPaletovePozice, DanyMaterialNaPozici FROM PoziceAObsah"
Set ZaznamyDB = dbMyDB.OpenRecordset(DotazSQL)
ZaznamyDB.MoveFirst
Do
Dim prikaz As CommandButton
prikaz = ZaznamyDB("CisloPaletovePozice")
prikaz.Caption = ZaznamyDB("DanyMaterialNaPozici")
ZaznamyDB.MoveNext
Loop Until ZaznamyDB.EOF
End Sub
Takhle nějak, akorat se mu nelíbí přiřazení - prikaz = ZaznamyDB("CisloPaletovePozice")
protože je v db text s uvozovkama....
Koukám že jsem neuzavřel téma :-)
Takže zavírám, systém mi dávno funguje...
Díky všem
Karel
přesně tak jsem to začal dělat :-) ještě před odpovědí....
Ale potvrdilo se mi že asi nejde jako ve VB - Private Sub Prikaz1_Click(neco, co si predam tlacitkem)
Chtěl jsem se pravě tomu vyhnout aby bylo i jednoduchý přidávání dalších tlačítek...
Každopádně díky moc....
Den poté:
To jak jsi to napsal funguje, ted by mě ještě zajímalo, jestli můžu název tlačítka předat jako hodnotu z DB...
Jde mi o to , aby v DB byly názvy tlačítek a já při otevření formuláře tyto názvy vyplnil do tlacítek.
Dělám to z důvodu jednoduché změny materiálu na dané pozici...
nějak takto :
Private Sub VypisNazvyPaletovychMist_Click()
Dim dbMyDB As DAO.Database
Set dbMyDB = CurrentDb()
'Dim tblMyTable As DAO.TableDef
'Set tblMyTable = dbMyDB![PoziceAObsah]
Dim DotazSQL As String
Dim ZaznamyDB As DAO.Recordset
DotazSQL = "SELECT CisloPaletovePozice, DanyMaterialNaPozici FROM PoziceAObsah"
Set ZaznamyDB = dbMyDB.OpenRecordset(DotazSQL)
ZaznamyDB.MoveFirst
Do
Dim prikaz As CommandButton
prikaz = ZaznamyDB("CisloPaletovePozice")
prikaz.Caption = ZaznamyDB("DanyMaterialNaPozici")
ZaznamyDB.MoveNext
Loop Until ZaznamyDB.EOF
End Sub
Takhle nějak, akorat se mu nelíbí přiřazení - prikaz = ZaznamyDB("CisloPaletovePozice")
protože je v db text s uvozovkama....
Koukám že jsem neuzavřel téma :-)
Takže zavírám, systém mi dávno funguje...
Díky všem
Karel
-
- Mohlo by vás zajímat
- Odpovědi
- Zobrazení
- Poslední příspěvek
-
- 9
- 1132
-
od petr22
Zobrazit poslední příspěvek
25 úno 2024 16:54
-
-
změna desky a ram pro větší výkon
od Johny1988 » 13 srp 2023 14:35 » v Rady s výběrem hw a sestavením PC - 4
- 1334
-
od Karrex
Zobrazit poslední příspěvek
14 srp 2023 11:29
-
-
- 7
- 1621
-
od atari
Zobrazit poslední příspěvek
28 lis 2023 11:26
-
- 0
- 895
-
od _FalcoN_
Zobrazit poslední příspěvek
22 kvě 2023 19:21
-
-
Datový model - aktualizace po přidání dalšího sloupce do Access
od MK_Vs » 27 črc 2023 12:05 » v Kancelářské balíky - 0
- 1960
-
od MK_Vs
Zobrazit poslední příspěvek
27 črc 2023 12:05
-
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 3 hosti