Disponible Cliente Alerta: Venta solo por disponible del cliente
Parámetro: DisponibleClienteAlerta
Descripción: Indica si se valida que el cliente solo use el disponible que tiene y evitar exceder el monto a pagar a crédito, evitando el envió del vale a lista negra. la cantidad restante de importe por pagar debe ser saldada por otra forma de pago.
Creación del parámetro en servidor VISCOIDB.VISCOI.DBO.PARAMETROS_CONTROL
USE viscoi GO PRINT '01) DECLARACION DE VARIABLES' DECLARE @ID_PARAMETRO AS VARCHAR(50) = 'DisponibleClienteAlerta' DECLARE @DESCRIPCION AS VARCHAR(MAX) = 'VENTA SOLO POR DISPONIBLE DEL CLIENTE' DECLARE @VALOR AS VARCHAR(50) = 'NO' DECLARE @USUARIO AS VARCHAR(12) = 'JARREOLA' PRINT '02) GENERAR BASE CON LAS SUCURSALES A LAS QUE SE LES CREARA EL PARAMETRO' IF OBJECT_ID('tempdb..#suc') > 0 DROP TABLE #suc SELECT plaza,id_sucursal INTO #suc FROM sucursales WHERE id_empresa = 'BHERMANOS' AND curp = 'no' AND subtipo <> 'credito' AND id_sucursal NOT LIKE 'VM_%' AND id_sucursal NOT LIKE 'OUTLET_%' AND id_sucursal NOT LIKE 'OFERTAZ_%' --AND (plaza NOT IN ('01 TORREON','02 DURANGO','09 PARRAL','25 GOMEZ PALACIO','28 TEPIC','56 FCO I MADERO') --AND zona <> 'PACIFICO') ORDER BY plaza PRINT '03) ACTUALIZAR EL CAMPO DE LA PLAZA' UPDATE SUC SET SUC.PLAZA = S.plaza FROM #suc SUC JOIN SUCURSALES S WITH(NOLOCK) ON S.id_sucursal = SUC.id_sucursal AND S.id_empresa = 'BHERMANOS' PRINT '04) CREAMOS LA TEMPORAL DE #PARAMETROS_CONTROL' IF OBJECT_ID('tempdb..#TMP_PARAMETROS_CONTROL') > 0 DROP TABLE #TMP_PARAMETROS_CONTROL CREATE TABLE #TMP_PARAMETROS_CONTROL ( id_parametro VARCHAR(50) , llave VARCHAR(50) , sistema VARCHAR(20) , id_empresa VARCHAR(12) , id_sucursal VARCHAR(12) , usuario VARCHAR(12) , nombre TEXT , valor VARCHAR(50) , fum DATETIME , id_usuario VARCHAR(12) ) PRINT '05) GENERAMOS EL PRIMER PARAMETRO: ' + @ID_PARAMETRO INSERT INTO #TMP_PARAMETROS_CONTROL SELECT id_parametro = @ID_PARAMETRO ,llave = 'BHERMANOS'+id_sucursal ,sistema = 'CAJA REGISTRADORA' ,id_empresa = 'BHERMANOS' ,id_sucursal ,usuario = '' ,nombre = @DESCRIPCION ,valor = @VALOR ,fum = GETDATE() ,id_usuario = @USUARIO FROM #suc S WITH(NOLOCK) PRINT '06) VERIFICAMOS SI YA EXISTE EL PARAMETRO Y ACTUALIZAMOS' UPDATE PC SET PC.VALOR = TPC.VALOR, PC.FUM=TPC.FUM, PC.id_usuario = TPC.id_usuario FROM #TMP_PARAMETROS_CONTROL TPC JOIN PARAMETROS_CONTROL PC WITH(NOLOCK) ON PC.ID_PARAMETRO = TPC.ID_PARAMETRO AND PC.LLAVE = TPC.LLAVE PRINT '07) SI NO EXISTE EL PARAMETRO LO INSERTAMOS' INSERT INTO PARAMETROS_CONTROL SELECT TPC.* FROM #TMP_PARAMETROS_CONTROL TPC WITH(NOLOCK) LEFT JOIN PARAMETROS_CONTROL PC WITH(NOLOCK) ON PC.ID_PARAMETRO = TPC.ID_PARAMETRO AND PC.LLAVE = TPC.LLAVE WHERE PC.ID_PARAMETRO IS NULL PRINT '08) VALIDAMOS QUE EL PARAMETRO VIAJE A CORPORATIVO, SI NO VIAJA LO AGREGAMOS' IF NOT EXISTS(SELECT * FROM parametros_control_envio WHERE ID_PARAMETRO = @ID_PARAMETRO) BEGIN INSERT INTO parametros_control_envio SELECT @ID_PARAMETRO,@DESCRIPCION END PRINT '09) PARAMETRO CREADO/ACTUALIZADO CON EXITO!!!' SELECT * FROM parametros_control WHERE id_parametro = @ID_PARAMETRO
Documento Confidencial