Avatar billede Jadl_2990 Juniormester
12. november 2020 - 12:57 Der er 11 kommentarer

Sammenkædning af poster til en ny post og QR kode

ACCESS 2016
Jeg har en database med 4 tabeller som har disse poster:

T_lager  T_Etage  T_Gang    T_Reol
ALB        01            A                1
HG          02            B                2
KBH        03            C                3
              04                              ...99

Nu vil jeg gerne med en formular, kunne vælge via dropdown at sammensætte en lokation ud fra posterne i de 4 tabeller.

F_OpretLokation:
Lager    Etage  Gang  Reol
HG          02          A      1                knap OPRET

Ved tryk på knappen OPRET oprettes lokationen  "HG02A1"  osv. i
T_Lokation
Felt1            Felt2
HG02A1      "QR-kode1"
KBH01A1    "QR-kode2"
ALB04C27  "QR-kode3"

Hvordan gør jeg det?
OG hvordan får jeg en QR kode i Felt2 på baggrund af den unikke lokation i Felt1?
Avatar billede Gustav Ekspert
12. november 2020 - 13:28 #1
Du kan sætte en combobox/listbox for hver af de fire tabeller på en form.
Ved klik på opret, saml værdien:

qrkode = Me!Lager & Me!Etage & Me!Gang & Me!Reol

URL til QR-koden kan hentes fra Google via et URL, hvor værdien angives til sidst:
https://chart.googleapis.com/chart?cht=qr&chs=300x300&chl=ALB04C27

Dokumentation her:
https://developers.google.com/chart/infographics/docs/qr_codes

Tilføj værdien og det tilhørende URL til din T_Lokation-tabel.
Billederne fra disse URL'er kan du vise på en form eller report med metoden i min artikel:

Show pictures directly from URLs in Access forms and reports

https://www.experts-exchange.com/articles/29679/Show-pictures-directly-from-URLs-in-Access-forms-and-reports.html?preview=1ydHj8EjNX8%3D
Avatar billede Jadl_2990 Juniormester
12. november 2020 - 22:21 #2
Hej Gustav
Vi må lige tage det i to step.

Her er et link til db'en:
https://onedrive.live.com/?id=EFB783639426C713%21391&cid=EFB783639426C713

Kan du så uddybe lidt bedre, hvordan jeg får knappen til at virke i Formulagen?

Min mail jesper dot adler AT gmail . com
Avatar billede Gustav Ekspert
13. november 2020 - 08:12 #3
Linket virker ikke eller er udløbet ...

Men det skulle blot være at samle koden og tilføje denne til Felt1 og den tilhørende URL i Felt2:

Private Sub ButtonAddUrl_Click()

    Const BaseUrl  As String = "https://chart.googleapis.com/chart?cht=qr&chs=300x300&chl="

    Dim Records    As DAO.Recordset

    Dim QrKode      As String   

    QrKode = Me!Lager.Value & Me!Etage.Value & Me!Gang.Value & Me!Reol.Value
    If QrKode <> "" Then
        Set Records = CurrentDb.OpenRecordset("Select Top 1 * From T_Locations")
        Records.AddNew
            Records!Felt1.Value = QrKode
            Records!Felt2.Value = BaseUrl & QrKode
        Records.Update
        Records.Close
    End If

End Sub


Dernæst kan du næsten direkte bruge demoen.
Avatar billede Jadl_2990 Juniormester
13. november 2020 - 09:39 #4
Jeg er NY i databaser, så derfor spørger jeg lige igen.

"samle koden og tilføje denne til Felt1"

Hvordan får jeg i første omgang "samlet" og gemt værdierne fra rullemenuerne i Felt1?

Jeg ændret lidt på ønsket om én knap til 2 knapper.
Én der samler "tekststrengen" i Felt1
OG
Én der genere QR-koden i Felt2

Det er fordi, jeg kan have et produkt der sendes til lager HG, men hvor de tilføjer resten eller hvis jeg ved der er plads, så angiver jeg gang og reol, og først der er det relevant at generere QR-koden.

Jeg prøver lige med et nyt link:

https://1drv.ms/u/s!AhPHJpRjg7fvjBFdmpYz9AqsqqRi?e=rNEXdy
Avatar billede Gustav Ekspert
13. november 2020 - 10:11 #5
Hvordan får jeg i første omgang "samlet" og gemt værdierne fra rullemenuerne i Felt1?

Det er jo det, min kode ovenfor gør. Ønsker du at gemme Felt2 senere, så udelad dette felt.
Kør tilsvarende kode senere fra den anden knap, når Felt1 er redigeret færdig.
Avatar billede Gustav Ekspert
13. november 2020 - 10:43 #6
Det ser jo noget anderledes ud, end du beskrev, men kig på det:

https://1drv.ms/u/s!AmcbXlHdG3aahokrZ6f_Uo9wLd-EVQ?e=4yFPCd
Avatar billede Jadl_2990 Juniormester
13. november 2020 - 23:08 #7
Hej Gustav
Dit forslag har virket fint.
Det er sådan at hvis jeg står på ID 1 og den er HG01A5 og jeg vælger noget andet i rullemenuerne, så ændres lokationen og hvis jeg opdatere gemmes den nye lokation på ID 1. Det er ikke så heldigt, for jeg skal bruge Lokation og QR mønsteret til at lave en lable til en reol forkant og til et varekort senere.

Hvordan kan jeg "skrive beskytte" posterne?

Jeg har oprettet knapper til ny post og til at bladre mellem posterne, så det er i orden.
Hvordan får jeg formularen til at starte /åbne med en "TOM / Ny" post?

Hvordan får jeg QR-mønsteret til at blive vist i et billede eller post, så jeg har dem til senere brug? (hylde forkant og varekort eller vare flytning...)

En knap der henter dem ned fra nettet og gemmer et billede???

Det er en utrolig stor hjælp jeg har fået allerede" Jeg skal nok lægge et link op til den færdige db så andre kan kigge med!
Avatar billede Gustav Ekspert
13. november 2020 - 23:27 #8
1. Den forstår jeg ikke rigtigt. Man jo ikke både have mulighed for at rette og koden og samtidig skrivebeskytte dem.

2. Prøv med kommandoen in OnLoad event af formularen:
    DoCmd.GoToRecord acDataForm, , acNewRec

3. Hent demoen fra min artikel. Den viser nogle flag, men kan vise en hvilken som helst URL med et billede, og både som formular/rapport med enkeltbilleder og fortløbende billeder.
Avatar billede Jadl_2990 Juniormester
13. november 2020 - 23:37 #9
ad 1
Jeg kommer ikke til at rette en lokation.
Jeg bruger den eller opretter en ny.
eks.:
Flyt venligst 29 æsker med sommertøj fra ALB01A1 til ALB01D10.
eller
Denne nye vinter hue skal ind på ALB01A1 og ALB01A2, der er plads når sommertøjet er flyttet...
ad 2 det prøver jeg.
ad 3 det bliver i morgen ;-)
Endnu en gang TAK!
Avatar billede Jadl_2990 Juniormester
13. november 2020 - 23:50 #10
ad2
Det prøvede jeg her:
Private Sub Form_Load()
DoCmd.GoToRecord acDataForm, , acNewRec
End Sub

Så fik jeg en fejl og derefter "frøs" databasen... det er tid til en på øjet :)
Avatar billede Gustav Ekspert
14. november 2020 - 10:17 #11
ad 1. Jeg har skrivebeskyttet også tekstboksen med Lokation og sat funktion på knapperne.
Ændrer man lokationen, sletter den URL'en, som man må oprette igen.

ad 2. Den skal have navnet med:

Private Sub Form_Load()

    DoCmd.GoToRecord acDataForm, Me.Name, acNewRec
   
End Sub


Den rettede fil er uploadet.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester