return @string --with SELECT @string * VFP lnRes = SQLExec(lnHandle,"EXEC getpersonaldatastring ?StrAppdi")If you want return output parameter you've to declare it in sproc and asign value to it.
@StrAppdi varchar(50), @result varchar(4000) OUTPUT ... SET @result = @@string * VFP lcRetVal = "" lnres = SQLExec(lnHandle,"EXEC getpersonaldatastring ?StrAppdi, ?@lcRetVal") IF lnres < 0 * Use AERROR() to get detailed info about ODBC error ENDIFAlso, your can use AERROR() function to get detailed info about ODBC error
> >SET QUOTED_IDENTIFIER ON >GO >SET ANSI_NULLS ON >GO > > >ALTER PROCEDURE sp_getpersonaldatastring > > @StrAppdi varchar(50) > >AS > > >DECLARE @string varchar(4000) >SET @string = '' > >SELECT @string = @string + CHAR(13) + dbo.DataClass.DataClassDesc >FROM dbo.SysDataClass INNER JOIN > dbo.DataClass ON dbo.SysDataClass.DataClassID = dbo.DataClass.DataClassID >WHERE (dbo.SysDataClass.SystemID = @StrAppdi) >ORDER BY dbo.SysDataClass.SystemID > > > >return @string > > > >GO >SET QUOTED_IDENTIFIER OFF >GO >SET ANSI_NULLS ON >GO > >>
> >and in VFP >lcretval='' >strAppid='421' > >? SQLExec(lnHandle,"EXEC getpersonaldatastring ?@lcRetVal ?StrAppdi") >? SQLExec(lnHandle,"EXEC getpersonaldatastring '421'") > >they both return -1 :( > >>