dbo.Imperium_buscar_locaciones

Description

Properties

Name Value
ANSI Nulls ON

True

Quoted Identifier ON

True

Encrypted

False

Execute As
Assembly

Parameters

3
Name Data Type Length Description
@p_cliente int 4
@p_contratista int 4
@p_locacion int 4

SQL Script

Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
CREATE OR ALTER PROCEDURE dbo.Imperium_buscar_locaciones
 -- Add the parameters for the stored procedure here

 @p_cliente         int = null,
 @p_contratista        int = null,
 @p_locacion         int = null


AS
BEGIN
 -- SET NOCOUNT ON added to prevent extra result sets from
 -- interfering with SELECT statements.
 SET NOCOUNT ON;

    -- Insert statements for procedure here

 if (@p_cliente is not null)

  -- visibles del cliente

  select led_locaciones.locacion, led_locaciones.cliente, led_locaciones.nombre_locacion,
    led_locaciones.locacion_default, led_locaciones.creacion, led_locaciones.creada_por,
    led_locaciones.visible, led_locaciones.datos_locacion,
    users.first_name as creada_por_nombre, users.last_name as creada_por_apellido,
    clientes.nombre_cliente

  from led_locaciones
  inner join users on led_locaciones.creada_por = users.user_id
  inner join clientes on led_locaciones.cliente = clientes.cliente
  where led_locaciones.cliente = @p_cliente
  and led_locaciones.visible = 1
  order by led_locaciones.nombre_locacion


 else if (@p_contratista is not null)

  -- asignadas a un contratista

  select led_locaciones.locacion, led_locaciones.cliente, led_locaciones.nombre_locacion,
    led_locaciones.locacion_default, led_locaciones.creacion, led_locaciones.creada_por,
    led_locaciones.visible, led_locaciones.datos_locacion,
    users.first_name as creada_por_nombre, users.last_name as creada_por_apellido,
    clientes.nombre_cliente,
    padrones.nombre_persona, padrones.identificador, padrones.numero, identificadores.abreviatura

  from led_locaciones
  inner join led_contratista_locaciones on led_locaciones.locacion = led_contratista_locaciones.locacion
  inner join users on led_locaciones.creada_por = users.user_id
  inner join clientes on led_locaciones.cliente = clientes.cliente
  inner join led_contratistas on led_contratista_locaciones.contratista = led_contratistas.contratista
  inner join padrones on led_contratistas.id_padron = padrones.id_padron
  inner join identificadores on padrones.identificador = identificadores.identificador

  where led_contratista_locaciones.contratista = @p_contratista
  and led_locaciones.visible = 1
  order by led_locaciones.nombre_locacion

 else if (@p_locacion is not null)

  -- por ID de locacion

  select led_locaciones.locacion, led_locaciones.cliente, led_locaciones.nombre_locacion,
    led_locaciones.locacion_default, led_locaciones.creacion, led_locaciones.creada_por,
    led_locaciones.visible, led_locaciones.datos_locacion,
    users.first_name as creada_por_nombre, users.last_name as creada_por_apellido,
    clientes.nombre_cliente

  from led_locaciones
  inner join users on led_locaciones.creada_por = users.user_id
  inner join clientes on led_locaciones.cliente = clientes.cliente
  where led_locaciones.locacion = @p_locacion
  order by led_locaciones.nombre_locacion


END
GO

Used By

No items found