Dansk Access Forum
  Hjælp Hjælp  Søg i forum   Opret ny bruger Opret ny bruger  Log ind Log ind


Emne lukketOverføre info fra poster til nye poster i en form

 Besvar Besvar
Forfatter
OnkelB Se dropdown
Bronze bruger
Bronze bruger
Avatar

Medlem: 08-07-2015
Land: Danmark
Status: Offline
Point: 9
Direkte link til dette indlæg Emne: Overføre info fra poster til nye poster i en form
    Sendt: 08-07-2015 kl. 04:20
Hejsa


Først beklager jeg mange gange, hvis spørgsmålet er besvaret i en anden tråd, men jeg har ikke kunnet finde det.

Jeg har følgende udfordring:

Jeg har oprettet en form til indtastning af varer i min database og ville gerne have "Default value" (standardværdien) i flere felter til at være det samme, som i den foregående post. Dvs., hvis jeg har valgt Varetype: Øl, så skal den næste post have varetypen udfyldt, når jeg opretter den.

Giver det mening? Det er et spørgsmål om, at gøre indtastningen af varer lettere. :)

Mvh


Onkel B / Brian
Til top



Til top
thomasbk Se dropdown
Bronze bruger
Bronze bruger


Medlem: 23-07-2015
Land: Danmark
Status: Offline
Point: 1
Direkte link til dette indlæg Sendt: 23-07-2015 kl. 14:10
Jeg kan se to måder at gøre det på.

1. Ved afslutning af den igangværende post lagrer du standardværdien i en public variabel der i sagens natur ikke slettes. Herefter kalder du denne variabel når næste post igangsættes.

2. Ved igangsætning af ny post, søger du den ønskede værdi i senest record og sætter ind i det ønskede felt.

Mulighed 2 er nok den bedste.
Til top
hkh Se dropdown
Sølv bruger
Sølv bruger


Medlem: 15-08-2012
Status: Offline
Point: 320
Direkte link til dette indlæg Sendt: 23-07-2015 kl. 16:38
Hvis det kun er i en formular du skal bruge værdien, og du indtaster dem efter hinanden, kan du nøjes med felter der er skjulte.

Hvis vi tager feltet varetype kan du have et skjult(ikke synligt) felt huskvaretype
For varetype skal der være en hændelsesprocedure for efter opdatering.
Hændelsesproceduren gemmer værdien i varetype i huskvaretype.


private sub Varetype_Afterupdate()
if nz(varetype)<>"" then huskvaretype=varetype
end sub


Så skal du have en hændelsesprocedure for formularens ved aktuel post, eller sætte varetype standardværdi=huskvaretype.
metoden med standardværdi påvirker kun nye poster, medens hændelsesproceduren påvirker alle poster hvor varetype er tomt, hvis du bladrer i gennem posterne.


private sub Form_current()
'Hvis feltet varetype er tomt, skal det have værdien i huskvaretype
if nz(varetype)=""then
if nz(huskvaretype)<>""then varetype =huskvaretype
endif
end sub


nz() er en funktion der undersøger om en variabel eller et felt er tomt.
Du skal have et skjult felt for hvert felt du ønsker gentaget
Hans
Til top
OnkelB Se dropdown
Bronze bruger
Bronze bruger
Avatar

Medlem: 08-07-2015
Land: Danmark
Status: Offline
Point: 9
Direkte link til dette indlæg Sendt: 27-07-2015 kl. 20:51
Tak til begge svar.

Har været på koloni, så har ikke haft tid til at se på access i nogle uger. :)

Jeg tror I skyder for højt her, for jeg fatter slet slet ikke, hvad der menes. Bevares, jeg kender til variabler, men at lave en skjult variabel og trække den med i næste formularpost virker lidt omstændigt. Har access ikke en funktion, som den thomasbk foreslår? Altså at den kan finde den seneste værdi?

På forhånd mange tak. :)


Til top
hkh Se dropdown
Sølv bruger
Sølv bruger


Medlem: 15-08-2012
Status: Offline
Point: 320
Direkte link til dette indlæg Sendt: 28-07-2015 kl. 01:31
Citér Med felter der er skjulte, menes at du opretter et felt et tilfældigt sted på formularen, højreklikker vælger egenskaber, vælger fanen formater og sætter synlig til nej.

Så skal du give feltet et navn, det sker under fanen andre i egenskaber.
Her kan du for varetype vælge HuskVareType.

Så skal du markere feltet varetype, vælge egenskaber og fanen hændelser.
Der vælger du efter opdatering, klikker på knappen med tre prikker til højre, vælger hændelsesprocedure.
Så skulle der åbnes et vindue hvor der er følgende:
Citér
Private sub Varetype_Afterupdate()

end sub

Nu indsætter du "If nz(varetype)<>"" then HuskVareType=varetype" mellem de to linier så resultatet bliver

Private sub Varetype_Afterupdate()
if nz(varetype)<>"" then HuskVareType=varetype
end sub

Derefter markerer du feltet varetype, vælger egenskaber(højreklik) og fanen data her finder du Standardværdi og indtaster følgende: =HuskVareType.

Ovenstående gentages for hvert felt du ønsker at værdier skal gentages.


Citér
En variabel er en navnet på en kasse, som man kan gemme forskellige ting i.
Det kan være den samme ting eller forskellige ting, når man bruger navnet på kassen bytter access navnet på kassen ud med indholdet.


Hans
Til top
hkh Se dropdown
Sølv bruger
Sølv bruger


Medlem: 15-08-2012
Status: Offline
Point: 320
Direkte link til dette indlæg Sendt: 28-07-2015 kl. 01:45
Citat: OnkelB OnkelB skrev:

Tak til begge svar.

Har været på koloni, så har ikke haft tid til at se på access i nogle uger. :)

Jeg tror I skyder for højt her, for jeg fatter slet slet ikke, hvad der menes. Bevares, jeg kender til variabler, men at lave en skjult variabel og trække den med i næste formularpost virker lidt omstændigt. Har access ikke en funktion, som den thomasbk foreslår? Altså at den kan finde den seneste værdi?

På forhånd mange tak. :)



Hvis du vil søge på seneste post kan det godt lade sig gøre, men det bliver ikke mere enkelt.
Så skal du ind i formularens Vedaktuel hændelse.

Der skal du have følgende:
Private Sub Form_Current()
   dim data as recordset
   set data=currentdb.OpenRecordset("select Navnetpådintabel,* from Navnetpådintabel")
   While data.eof=false
      data.movelast
      VareType=data!varetype
      data.movenext
   Wend

   set data=nothing
End Sub

Der er flere metoder til at hente dine oplysninger på, den ovenfor er bare en af mulighederne.

Hans
Til top
OnkelB Se dropdown
Bronze bruger
Bronze bruger
Avatar

Medlem: 08-07-2015
Land: Danmark
Status: Offline
Point: 9
Direkte link til dette indlæg Sendt: 28-07-2015 kl. 12:00
Hejsa Hans

Så virker det sgu. Jeg skulle lige læse dit indlæg igennem et par gange og tage hovedet ud af røven, men alt virker nu. 

Jeg takker ydmygt for din hjælp!
Til top
 Besvar Besvar

Skift forum Forum tilladelser Se dropdown

© 2013 - 2024 Dansk Access Forum - en del af Excel-regneark.dk