POR FAVOR AYUDA!!!!
A ver si alguien me ayuda, porque no encuentro a nadie que me responda lo siguiente!!!
Tengo una aplicaci贸n, en Visual Basic, y la base en Sql Server, me aconsejaron, para las consultas que debe realizar la aplicaci贸n, a estas armarlas en el servidor, ahora bien, por medio de vistas se pueden armar..pero la duda es como llamar a esa vista desde Visual basic, porque no puedo manejarlo como un recordset verdad? y cuando se ejecuta la consulta como veo los resultados (si es que no puedo manejarlo como un recordset), porque los resultados que son de m煤ltiples tablas necesito para armar unos reportes...
Por favor, si alguien tiene un ejemplo, o me sabe decir como hacer esto o si hay alguna otra manera de armar las consultas en el servidor.. Utiliza ADO..
Muchas gracias a todos y espero respuestas!!!!
Tengo una aplicaci贸n, en Visual Basic, y la base en Sql Server, me aconsejaron, para las consultas que debe realizar la aplicaci贸n, a estas armarlas en el servidor, ahora bien, por medio de vistas se pueden armar..pero la duda es como llamar a esa vista desde Visual basic, porque no puedo manejarlo como un recordset verdad? y cuando se ejecuta la consulta como veo los resultados (si es que no puedo manejarlo como un recordset), porque los resultados que son de m煤ltiples tablas necesito para armar unos reportes...
Por favor, si alguien tiene un ejemplo, o me sabe decir como hacer esto o si hay alguna otra manera de armar las consultas en el servidor.. Utiliza ADO..
Muchas gracias a todos y espero respuestas!!!!
Mira, para empezar si se peude recoger los datos de la aplicacion via recodset, es la unica manera de interactura enter cliente y servidor para recoger datos.
Tambien puedes armar las consultas en el servidor usando cadens y ejecutandolas al igual q en visual
algo asi
En la aplica ion supongamso q tienes un combo y u n tex t ok
Private sub GetDatos
dim cmd as new command , t as new recodset
cmd.commandType=StoredProcedure
cmdCommandTExt="MyProcedure"
cmd.Parameters.Refresh
'envio de datos
cmd.parameters(0)=combo1.text
cmd.Parmeters(1)=text1.text
'ejecucion del recodset
set t = cmd.execute
end sub
--en el servidor seria algo asi
CREATE PROCEDURE MYPROCEDURE
@TXTCOMBO VARCHAR(40)='',
@DATO VARCHAR(45)=''
AS
DECLARE @CAD VARCHAR(1200), @CodCombo char(4), @CodDato @char(4)
set @filtro=''
IF @TXTCOMBO !=''
BEGIN
SELECT @CodCombo=IdCombo FROM TablaCombo WHERE txtCombo= @TXTCOMBO
set @filtro=@filtro + 'AND IdCombo=''''+ @CodCombo + '''
--.. de manera analoga para el otro dato
---uan vez q ya tienes los nuevos datos de filtrado en las cadena @filtor la a帽andes como si estuvieras en una aplicacion de visual. espero haerte eyudado, intente esr lo mas claro q pude.
--En @cad guardas la cadena basica de seleccion
SET @cad='SELECT ......FROM.....WHERE '
-VERIFICAS SI LA CADENA DE FILTRO TIENE ALGUN FILTRO HABILITADO
IF @FILTRO!=''
BEGIN
SET @CAD = @CAD + @FILTRO
END
--EJECUCION DE LA NUEVA CADENA BASICA + FILTRO
EXECUTE (@CAD)
END
Tambien puedes armar las consultas en el servidor usando cadens y ejecutandolas al igual q en visual
algo asi
En la aplica ion supongamso q tienes un combo y u n tex t ok
Private sub GetDatos
dim cmd as new command , t as new recodset
cmd.commandType=StoredProcedure
cmdCommandTExt="MyProcedure"
cmd.Parameters.Refresh
'envio de datos
cmd.parameters(0)=combo1.text
cmd.Parmeters(1)=text1.text
'ejecucion del recodset
set t = cmd.execute
end sub
--en el servidor seria algo asi
CREATE PROCEDURE MYPROCEDURE
@TXTCOMBO VARCHAR(40)='',
@DATO VARCHAR(45)=''
AS
DECLARE @CAD VARCHAR(1200), @CodCombo char(4), @CodDato @char(4)
set @filtro=''
IF @TXTCOMBO !=''
BEGIN
SELECT @CodCombo=IdCombo FROM TablaCombo WHERE txtCombo= @TXTCOMBO
set @filtro=@filtro + 'AND IdCombo=''''+ @CodCombo + '''
--.. de manera analoga para el otro dato
---uan vez q ya tienes los nuevos datos de filtrado en las cadena @filtor la a帽andes como si estuvieras en una aplicacion de visual. espero haerte eyudado, intente esr lo mas claro q pude.
--En @cad guardas la cadena basica de seleccion
SET @cad='SELECT ......FROM.....WHERE '
-VERIFICAS SI LA CADENA DE FILTRO TIENE ALGUN FILTRO HABILITADO
IF @FILTRO!=''
BEGIN
SET @CAD = @CAD + @FILTRO
END
--EJECUCION DE LA NUEVA CADENA BASICA + FILTRO
EXECUTE (@CAD)
END
