dbo.backend_procesar_domicilio

Description

Properties

Name Value
ANSI Nulls ON

True

Quoted Identifier ON

True

Encrypted

False

Execute As
Assembly

Parameters

11
Name Data Type Length Description
@alta_modificacion char 1
@p_id_domicilio int 4
@p_cuit varchar 20
@p_domicilio varchar 250
@p_codpos varchar 20
@p_pai_codigo smallint 2
@p_pai_nombre varchar 250
@p_prv_codigo varchar 2
@p_prv_nombre varchar 250
@p_loc_nombre varchar 250
@p_tipo_domicilio char 1

SQL Script

Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
/*
[EXEC backend_procesar_domicilio 'A','30641368977','DOMICILIO DE PRUEBA ','1111',NULL,'ARGENTINA',NULL,'CIUDAD AUTONOMA BUENOS AIRES','','D',NULL
EXEC backend_procesar_domicilio 'A','30641368977','prueba 123','111',NULL,'ARGENTINA',NULL,'CIUDAD AUTONOMA BUENOS AIRES','','D',NULL
select * from domicilios_todos where cuit = '30641368977'
*/



CREATE OR ALTER PROCEDURE dbo.backend_procesar_domicilio
@alta_modificacion char(1), 
@p_id_domicilio int, 
@p_cuit varchar(20) = null,
@p_domicilio varchar(250)= null,
@p_codpos varchar(20) = null,
@p_pai_codigo smallint = null,
@p_pai_nombre varchar(250) = null,
@p_prv_codigo varchar(2) = null,
@p_prv_nombre varchar(250) = null,
@p_loc_nombre varchar(250) = null,
@p_tipo_domicilio char(1) = null

 
AS

BEGIN
    SET NOCOUNT ON;

 set @p_domicilio  = UPPER(@p_domicilio)
 set @p_pai_nombre = UPPER(@p_pai_nombre)
 set @p_prv_nombre = UPPER(@p_prv_nombre)
 set @p_loc_nombre = UPPER(@p_loc_nombre)

 IF (@alta_modificacion = 'B') -- BAJA
 BEGIN
  delete from domicilios_todos where id_domicilio = @p_id_domicilio
  SELECT @p_id_domicilio as id_domicilio
 END 
 IF (@alta_modificacion = 'A') -- ALTA 
 BEGIN
  INSERT INTO domicilios_todos 
   (codpos, cuit, domicilio, loc_nombre, pai_codigo, pai_nombre, 
    prv_codigo, prv_nombre, tipo_domicilio, created, created_by, visible)
  VALUES
   (@p_codpos, @p_cuit, @p_domicilio, @p_loc_nombre, @p_pai_codigo, @p_pai_nombre, 
    @p_prv_codigo, @p_prv_nombre, @p_tipo_domicilio, GETDATE(), 1, 1)

  SET @p_id_domicilio = SCOPE_IDENTITY() -- Para verificar que se pudo ejecutar el insert

  IF (@p_tipo_domicilio != 'O') -- Cambiar tipos repetidos
  BEGIN
   UPDATE domicilios_todos
   SET tipo_domicilio = 'O',
    modified = GETDATE(), 
    modified_by = 1
   WHERE cuit = @p_cuit 
     AND tipo_domicilio = @p_tipo_domicilio 
     AND id_domicilio != @p_id_domicilio
  END

  SELECT @p_id_domicilio as id_domicilio -- Para verificar que se pudo ejecutar el insert

 END
 /*
  IF (@alta_modificacion = 'M')
  BEGIN
  UPDATE domicilios_todos
  SET 
  codpos = @p_codpos, 
  domicilio = @p_domicilio, 
  loc_nombre = @p_loc_nombre, 
  pai_codigo = @p_pai_codigo, 
  pai_nombre = @p_pai_nombre, 
  prv_codigo = @p_prv_codigo, 
  prv_nombre = @p_prv_nombre, 
  tipo_domicilio = @p_tipo_domicilio,
  modified = GETDATE(), 
  modified_by = 1
  WHERE cuit = @p_cuit 
    and id_domicilio = @p_id_domicilio
 
  IF (@p_tipo_domicilio != 'O') -- Cambiar tipos repetidos
  BEGIN
  UPDATE domicilios_todos
  SET  
  tipo_domicilio = 'O',
  modified = GETDATE(), 
  modified_by = 1
  WHERE cuit = @p_cuit 
    AND tipo_domicilio = @p_tipo_domicilio 
    AND id_domicilio != @p_id_domicilio
  END
 
  SELECT @p_id_domicilio as id_domicilio -- Para verificar que se pudo ejecutar el update
  END
  */

END 

GO

Depends On

1

Used By

No items found