Avatar billede vanni Nybegynder
17. oktober 2003 - 15:17 Der er 9 kommentarer og
1 løsning

Rapports recordsource ændring runtime

Hej

Jeg får en lidt mystisk fejlmeddelelse i :
Postkilden "Select bla. bla." der er angivet i denne formular eller rapport findes ikke.

' This code was originally written by Andy Baron
' It is not to be altered or distributed,
' except as part of an application.
' You are free to use it in any application,
' provided the copyright notice is left unchanged.
'
' Code Courtesy of
' Andy Baron

' er indsat i rapport
Private Sub Report_Open(Cancel As Integer)
  Me.RecordSource = grst.Name
End Sub

Public grst As Recordset

Public Sub testreport()
  Set grst = CurrentDb.OpenRecordset( _
        "Select * from tblTest1 where longfield=4")
  DoCmd.OpenReport "rptTest1", acViewPreview 
  grst.Close 
  Set grst = Nothing
End Sub

Har stirret mig blind - måske nogen kan hjælpe?
Avatar billede juks Novice
17. oktober 2003 - 15:28 #1
Me.RecordSource = grst.Name

Set grst = Nothing
Avatar billede juks Novice
17. oktober 2003 - 15:29 #2
Me.RecordSource = "Select * from tblTest1 where longfield=4")
Avatar billede juks Novice
17. oktober 2003 - 15:31 #3
det ser lidt mystisk ud det du laver hvad er det du ønsker at gøre
Avatar billede vanni Nybegynder
17. oktober 2003 - 15:51 #4
juks> Jeg vil rapportens recordsource i runtime. SQL er bare noget bla. bla.
Avatar billede vanni Nybegynder
17. oktober 2003 - 15:52 #5
Om igen:
    juks> Jeg vil ændre rapportens recordsource i runtime. SQL er bare noget bla. bla.
Avatar billede juks Novice
17. oktober 2003 - 16:03 #6
vil du rette i en database fra en anden eller fra et script
Avatar billede juks Novice
17. oktober 2003 - 16:16 #7
denne funtion ændre underrapportens recordsoure...
prøv at gå udfra den så kan du finde den løsning du vil have

DoCmd.Echo False, ""
  DoCmd.OpenReport "vis_indlevering_underrapport", acViewDesign

Select Case raptype
Case 1
Reports!vis_indlevering_underrapport.RecordSource = "qbe_urap_indlevering_m_kat_nr"

Case 2
Reports.vis_indlevering_underrapport.RecordSource = "qbe_urap_indlevering_ikke_solgte"
End Select
DoCmd.Close acReport, "vis_indlevering_underrapport", acSaveYes
  DoCmd.Echo True, ""
Avatar billede vanni Nybegynder
17. oktober 2003 - 18:31 #8
Så vidt jeg kan se bruger du forespøgsler afhængigt af case værrdi.

Det jeg har er en form, der dynamisk danner en SQL-sætning udfra værdier i formularen.
Avatar billede jorgen_c Nybegynder
18. oktober 2003 - 19:24 #9
Kan du ikke gøre det sådan her:

Private Sub Report_Open(Cancel As Integer)
  Me.RecordSource = SQL
End Sub

Public SQL as string

Public Sub testreport()
  SQL="Select * from tblTest1 where longfield=4"
  DoCmd.OpenReport "rptTest1", acViewPreview 
End Sub
Avatar billede vanni Nybegynder
18. oktober 2003 - 21:18 #10
Det var ok jorgen_c. Public SQL as string skal erklæres i et modul, så jeg kan se. Tak for hjælpen.
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