Access a větší množství tlačítek ve formuláři Vyřešeno

Programy pro práci v kanceláři (Word, Excel, Access…=>Office)

Moderátor: Mods_senior

karel.laska
Level 2.5
Level 2.5
Příspěvky: 274
Registrován: červen 11
Pohlaví: Muž
Stav:
Offline

Access a větší množství tlačítek ve formuláři

Příspěvekod karel.laska » 07 čer 2011 08:29

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

Reklama
maiki
Level 3
Level 3
Příspěvky: 462
Registrován: listopad 07
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Access a větší množství tlačítek ve formuláři

Příspěvekod maiki » 07 čer 2011 13:55

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).

karel.laska
Level 2.5
Level 2.5
Příspěvky: 274
Registrován: červen 11
Pohlaví: Muž
Stav:
Offline

Re: Access a větší množství tlačítek ve formuláři

Příspěvekod karel.laska » 07 čer 2011 14:47

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...

maiki
Level 3
Level 3
Příspěvky: 462
Registrován: listopad 07
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Access a větší množství tlačítek ve formuláři

Příspěvekod maiki » 07 čer 2011 16:58

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)

karel.laska
Level 2.5
Level 2.5
Příspěvky: 274
Registrován: červen 11
Pohlaví: Muž
Stav:
Offline

Re: Access a větší množství tlačítek ve formuláři  Vyřešeno

Příspěvekod karel.laska » 07 čer 2011 17:24

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


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Nová GPU - větší sekání her
    od lakcod » 23 úno 2024 18:26 » v Problémy s hardwarem
    9
    1131
    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
    1327
    od Karrex Zobrazit poslední příspěvek
    14 srp 2023 11:29
  • záloha access
    od Ruda25 » 26 lis 2023 21:47 » v Kancelářské balíky
    7
    1621
    od atari Zobrazit poslední příspěvek
    28 lis 2023 11:26
  • Access point AP-8232
    od _FalcoN_ » 22 kvě 2023 19:21 » v Sítě - hardware
    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
    1957
    od MK_Vs Zobrazit poslední příspěvek
    27 črc 2023 12:05

Zpět na “Kancelářské balíky”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 1 host