Backend: SQL Server 2000
Front End: Access 2003
Hallo,
habe folgendes Phänomen:
Einer Prozedur wird ein Parameter übergeben. NoCount wird auf ON gestellt. Diverse Daten werden in Variablen in der Prozedur zusammengestellt. Am Ende der Prozedur wird NoCount auf OFF gesetzt. Die Variablen werden mittels SELECT ausgegeben.
In Access verwende ich das COMMAND-Objekt. Fülle die Parameter und lasse per EXECUTE das COMMAND-Objekt in ein Recordset übergeben.
Jetzt habe ich wieder solch eine Prozedur für einen Kunden zusammengestellt sowie ein neues Frontend dazu - nur bei dieser neuen Prozedur will er auf dem alten Weg nicht.
Jetzt habe ich alles umgeschriebe, so dass es funktioniert - habe aber keinen Hinweis, wo der Fehler liegt.
Brauche Hilfe vom Spezi!
So sieht meine Prozedur aus:
CREATE PROCEDURE ArchivMinBest
@Mandant int
AS
Set NoCount On
declare @Min Datetime, @Verlustkunde int
Select @Verlustkunde=Verlustkunde from Voreinstellungen where Mandant=@Mandant
if @Verlustkunde is null set @Verlustkunde=1
Select @Min=Min(Wochentag) from Bestellungen where T_ID in (Select T_ID from Teilnehmer where Mandant=@MANDANT) and T_ID @Verlustkunde
Set NoCount OFF
Select @Min as MinDatum
RETURN
Und so mein Aufruf in Access:
Dim rec1 as New ADODB.Recordset
Dim cmd as New ADODB.Command
Set rec1 =New ADODB.Recordset
Set cmd =New ADODB.Command
cmd.ActiveConnection=currentproject.connection
cmd.commandtype=adstoredprocedure
cmd.commandtext=„ArchivMinBest“
cmd.parameters.refresh
cmd.parameters("@Mandant")=1
'UND HIER PASSIERTS, die Prozedur gibt auf dem Kunden-PC
'kein Recordset zurück
'bei mir schon
set Rec1=cmd.EXECUTE
while rec1.eof=false
debug.print Rec1!MinDatum
rec1.movenext
wend
rec1.close: set rec1=nothing
set cmd=nothing
Gruß Epa