Advertisement
kuroshan1104

f_get_cargo_desague_periodo

Jan 21st, 2025 (edited)
32
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 0.80 KB | Source Code | 0 0
  1. BEGIN
  2.     DECLARE v_cant INT;
  3.     DECLARE v_monto DOUBLE;
  4.     DECLARE v_idgiro INT;
  5.  
  6.     SET v_monto = 0;
  7.  
  8.     -- Obtener el idgiro del puesto
  9.     SELECT p.idgiro INTO v_idgiro
  10.     FROM p_puesto p
  11.     WHERE p.idpuesto = vidpuesto;
  12.  
  13.     -- Verificar si el puesto tiene el servicio activo
  14.     SELECT COUNT(*) INTO v_cant
  15.     FROM p_puesto_servicio ps
  16.     WHERE ps.idservicio = 3
  17.     AND ps.idpuesto = vidpuesto
  18.     AND ps.activo = 1;
  19.  
  20.     IF v_cant > 0 THEN
  21.         -- Evaluar idgiro y asignar los valores correspondientes
  22.         SELECT
  23.             CASE
  24.                 WHEN v_idgiro IN (2, 6, 9) THEN 13
  25.                 ELSE 8
  26.             END INTO v_monto
  27.         FROM g_recibo_cargos gc
  28.         WHERE idconcepto = 7
  29.         AND periodo = vperiodo;
  30.  
  31.     END IF;
  32.  
  33.     RETURN v_monto;
  34. END;
  35.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement