Alguien puede hacerme un favor muy grande?

24/05/2005 - 18:24 por NP-sys Informática | Informe spam
Tengo una base de datos en Access 2003 y la he pasado a SQL SERVER 2000.
Pero tengo una consulta donde tenia la siguiente instruccion que servia para
que cuando ejecutara la consulta me preguntara "Comercial", y segun el
nombre que pusiera me devolviera los datos sobre ese comercial, pero si no
ponia nada y lo dejaba en blanco, me sacaba el resultado de todos los
comerciales. Alguien puede decirme como es la instruccion que debo meter en
el procedimiento almacenado para que me de esos datos? Poniendo @Comercial
me pregunta el comercial, pero si le doy al enter sin poner nada, no me
devuelve ningun registro y necesito que me devuelva el de todos los
comerciales.

Muchas gracias por anticipado.

La instruccion es:

SiInm(EsNulo([COMERCIAL]);[CUENTA];[COMERCIAL])


Ahora en SQL ademas lo necesito en ingles

Preguntas similare

Leer las respuestas

#1 Alejandro Mesa
24/05/2005 - 19:04 | Informe spam
Cual es el tipo de dato de esa columna?
Esa columna permite valores NULL?

Ejemplo:

use northwind
go

create procedure dbo.usp_p1
@companyname nvarchar(40) = null
as
set nocount on

select
CustomerID,
CompanyName,
Country,
City,
Phone
from
dbo.customers
where
companyname like coalesce(@companyname, N'%')

return @@error
go

exec dbo.usp_p1
go

exec dbo.usp_p1 N'Alfreds Futterkiste'
go

drop procedure dbo.usp_p1
go


AMB

"NP-sys Informática" wrote:

Tengo una base de datos en Access 2003 y la he pasado a SQL SERVER 2000.
Pero tengo una consulta donde tenia la siguiente instruccion que servia para
que cuando ejecutara la consulta me preguntara "Comercial", y segun el
nombre que pusiera me devolviera los datos sobre ese comercial, pero si no
ponia nada y lo dejaba en blanco, me sacaba el resultado de todos los
comerciales. Alguien puede decirme como es la instruccion que debo meter en
el procedimiento almacenado para que me de esos datos? Poniendo @Comercial
me pregunta el comercial, pero si le doy al enter sin poner nada, no me
devuelve ningun registro y necesito que me devuelva el de todos los
comerciales.

Muchas gracias por anticipado.

La instruccion es:

SiInm(EsNulo([COMERCIAL]);[CUENTA];[COMERCIAL])


Ahora en SQL ademas lo necesito en ingles



Respuesta Responder a este mensaje
#2 NP-sys Informática
24/05/2005 - 19:14 | Informe spam
La columna en la tabla tiene estas caracteristicas:

Nombre: CUENTA
Tipo de datos: nvarchar
Longitud: 50
Permitir valores nulos: no esta marcada (luego entiendo que no los permite)

Muchas gracias y perdona. No entiendo mucho de SQL

"Alejandro Mesa" escribió en el
mensaje news:
Cual es el tipo de dato de esa columna?
Esa columna permite valores NULL?

Ejemplo:

use northwind
go

create procedure dbo.usp_p1
@companyname nvarchar(40) = null
as
set nocount on

select
CustomerID,
CompanyName,
Country,
City,
Phone
from
dbo.customers
where
companyname like coalesce(@companyname, N'%')

return @@error
go

exec dbo.usp_p1
go

exec dbo.usp_p1 N'Alfreds Futterkiste'
go

drop procedure dbo.usp_p1
go


AMB

"NP-sys Informática" wrote:

Tengo una base de datos en Access 2003 y la he pasado a SQL SERVER 2000.
Pero tengo una consulta donde tenia la siguiente instruccion que servia
para
que cuando ejecutara la consulta me preguntara "Comercial", y segun el
nombre que pusiera me devolviera los datos sobre ese comercial, pero si
no
ponia nada y lo dejaba en blanco, me sacaba el resultado de todos los
comerciales. Alguien puede decirme como es la instruccion que debo meter
en
el procedimiento almacenado para que me de esos datos? Poniendo
@Comercial
me pregunta el comercial, pero si le doy al enter sin poner nada, no me
devuelve ningun registro y necesito que me devuelva el de todos los
comerciales.

Muchas gracias por anticipado.

La instruccion es:

SiInm(EsNulo([COMERCIAL]);[CUENTA];[COMERCIAL])


Ahora en SQL ademas lo necesito en ingles



Respuesta Responder a este mensaje
#3 Alejandro Mesa
24/05/2005 - 19:35 | Informe spam
Pues entonces adapta el procedimiento anterior a tus necesidades.

create procedure dbo.usp_traer_cuenta
@cuenta nvarchar(50) = null
as
set nocount on

select
c1,
...
cn
from
dbo.cuentas
where
cuenta like coalesce(@cuenta, N'%')

return @@error
go

exec dbo.usp_traer_cuenta
go

exec dbo.usp_traer_cuenta '0001-0025'
go


AMB

"NP-sys Informática" wrote:

La columna en la tabla tiene estas caracteristicas:

Nombre: CUENTA
Tipo de datos: nvarchar
Longitud: 50
Permitir valores nulos: no esta marcada (luego entiendo que no los permite)

Muchas gracias y perdona. No entiendo mucho de SQL

"Alejandro Mesa" escribió en el
mensaje news:
> Cual es el tipo de dato de esa columna?
> Esa columna permite valores NULL?
>
> Ejemplo:
>
> use northwind
> go
>
> create procedure dbo.usp_p1
> @companyname nvarchar(40) = null
> as
> set nocount on
>
> select
> CustomerID,
> CompanyName,
> Country,
> City,
> Phone
> from
> dbo.customers
> where
> companyname like coalesce(@companyname, N'%')
>
> return @@error
> go
>
> exec dbo.usp_p1
> go
>
> exec dbo.usp_p1 N'Alfreds Futterkiste'
> go
>
> drop procedure dbo.usp_p1
> go
>
>
> AMB
>
> "NP-sys Informática" wrote:
>
>> Tengo una base de datos en Access 2003 y la he pasado a SQL SERVER 2000.
>> Pero tengo una consulta donde tenia la siguiente instruccion que servia
>> para
>> que cuando ejecutara la consulta me preguntara "Comercial", y segun el
>> nombre que pusiera me devolviera los datos sobre ese comercial, pero si
>> no
>> ponia nada y lo dejaba en blanco, me sacaba el resultado de todos los
>> comerciales. Alguien puede decirme como es la instruccion que debo meter
>> en
>> el procedimiento almacenado para que me de esos datos? Poniendo
>> @Comercial
>> me pregunta el comercial, pero si le doy al enter sin poner nada, no me
>> devuelve ningun registro y necesito que me devuelva el de todos los
>> comerciales.
>>
>> Muchas gracias por anticipado.
>>
>> La instruccion es:
>>
>> SiInm(EsNulo([COMERCIAL]);[CUENTA];[COMERCIAL])
>>
>>
>> Ahora en SQL ademas lo necesito en ingles
>>
>>
>>



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida