Avatar billede hnto Nybegynder
28. december 2010 - 12:52 Der er 3 kommentarer og
1 løsning

findes produkt funktion

Denne er lidt tricky...

jeg har en form hvor der er en subform(frmcreatecasestep1Sub). i denne subform kan man indtaste eller coy/paste data i 3 valgfrie kolonner (Articlenumber, Eannumber, HWSnumber).

Det jeg nu ønsker er en funktion der gør at man ved tryk på knappen "Command15" starter et check på om varenumrerne i de 3 valgfrie kolonner allerede er indtastet i en anden tabel der hedder ProductIdNumberCheck. Hvis et af numrerne findes i tabellen i forvejen skal den updatere subformens felt CICS til "true" på det enkelte record / linie.
der vil kun stå et nummer pr recordset/linie, altså vil der ikke både være indtastet et Articlenumber og eks EANnumber i samme record.

Jeg forestillede mig noget med at den tjekkede hver af de 3 felter i en recordset inden den gik videre til næste linie / recordset, men jeg kan sku ikke lige greje den da mit access er noget rustent....

Hjælp !!! :-)

Public Sub Command15_Click()
Dim db As Database
Dim rs As DAO.Recordset
Set db = CurrentDb
rs.MoveFirst
If DCount("*", "ProductIdNumberCheck", "frmcreatecasestep1Sub!ArticleNumber = '" & FrmCreateCaseStep1Sub!ArticleNumber & "'") > 0 Then
If DCount("*", "ProductIdNumberCheck", "QryCreateCaseStep1Sub!EanNumber = '" & FrmCreateCaseStep1Sub!EanNumber & "'") > 0 Then
If DCount("*", "ProductIdNumberCheck", "QryCreateCaseStep1Sub!HwsNumber = '" & FrmCreateCaseStep1Sub!HwsNumber & "'") > 0 Then
QryCreateCaseStep1Sub!CICS.Value = "true"
Else
    End If
    End If
    End If
rs.MoveNext
rs.Close
Set rs = Nothing
End Sub
Avatar billede anlu Nybegynder
29. december 2010 - 19:27 #1
Det er temmelig rodet - der er tilsyneladende flere issues, så det er lidt svært at hjælpe dig meget specifikt.

For det første: Dit recordset indeholder ikke noget som du har lavet det her, faktisk eksisterer det ikke. Så du skal have bundet det op på de data der er i din subform - er de gemt i en tabel eller hvordan?

Og du looper ikke gennem recordsettet, men læser kun første record (under antagelse af at der var data i dit recordset). Hvis du vil loope igennem skal du have en struktur a la:

do while not rs.EOF
  ' gør hvad der skal gøres
  rs.MoveNext
loop

Desuden er der så din logik omkring at få sat CICS-værdien til true. Du skriver at den skal være true, hvis bare et af numrene eksisterer, men du sætter den kun hvis alle tre betingelser er opfyldt.
Avatar billede hnto Nybegynder
03. januar 2011 - 09:54 #2
jeg løste denne selv ved 3 simple forespørgsler efterfølgende.
skal du have point anlu ?
Avatar billede anlu Nybegynder
03. januar 2011 - 11:08 #3
Næh, da ikke når du selv har løst det :o)
Luk du bare spørgsmålet.
Avatar billede hnto Nybegynder
05. januar 2011 - 09:33 #4
svar
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
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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