INSERT INTO sbc_reglas_x_ejecuciones_x_solicitud(
 solicitud,
 ponderacion_ejecutada,
 nro_regla_ponderacion,
 valor_resultante_regla,
 valor_ponderacion_regla)
VALUES (
  $solicitud,
  $ponderacion_ejecutada,
  $nro_regla,
  (CASE
   WHEN (SELECT (CASE WHEN monto_mensual IS NULL THEN 0 ELSE monto_mensual END) FROM sbc_datos_laborales 
     WHERE solicitud = $solicitud AND recibe_pago='S') IS NOT NULL
   THEN (SELECT (CASE WHEN monto_mensual IS NULL THEN 0 ELSE monto_mensual END) FROM sbc_datos_laborales 
     WHERE solicitud = $solicitud AND recibe_pago='S')
   ELSE 0 
  END
  +
  CASE
   WHEN (SELECT sum(ingresos_mensuales) FROM sbc_datos_personales_grp_fam 
    WHERE solicitud = $solicitud AND convive_grupo='S') IS NOT NULL
   THEN (SELECT sum(ingresos_mensuales) FROM sbc_datos_personales_grp_fam 
    WHERE solicitud = $solicitud AND convive_grupo='S')
   ELSE 0
  END
  +
  CASE
   WHEN (SELECT (CASE WHEN sum(monto_locacion) IS NOT NULL THEN sum(monto_locacion) ELSE 0 END) FROM sbc_vivienda_solicitud 
     WHERE solicitud = $solicitud AND tipo_locacion=5) IS NOT NULL
   THEN (SELECT (CASE WHEN sum(monto_locacion) IS NOT NULL THEN sum(monto_locacion) ELSE 0 END) FROM sbc_vivienda_solicitud 
     WHERE solicitud = $solicitud AND tipo_locacion=5)
   ELSE 0
  END
  +
  CASE
   WHEN (SELECT (CASE WHEN ing_extras_hogar IS NULL THEN 0 ELSE ing_extras_hogar END) FROM sbc_datos_grupo_familiar 
     WHERE solicitud = $solicitud) IS NOT NULL
   THEN (SELECT (CASE WHEN ing_extras_hogar IS NULL THEN 0 ELSE ing_extras_hogar END) FROM sbc_datos_grupo_familiar 
     WHERE solicitud = $solicitud)
   ELSE 0
  END),
  (SELECT sum(valor_ponderacion_regla) FROM sbc_reglas_x_ejecuciones_x_solicitud
   WHERE solicitud = $solicitud AND ponderacion_ejecutada = $ponderacion_ejecutada))
 ;
 UPDATE sbc_ejecuciones_x_solicitud
  SET valor_segundo_ordenamiento= (SELECT valor_resultante_regla FROM sbc_reglas_x_ejecuciones_x_solicitud
           WHERE solicitud = $solicitud AND 
            ponderacion_ejecutada = $ponderacion_ejecutada AND
            nro_regla_ponderacion = $nro_regla),
  valor_ponderacion = (SELECT valor_PONDERACION_regla FROM sbc_reglas_x_ejecuciones_x_solicitud
           WHERE solicitud = $solicitud AND 
            ponderacion_ejecutada = $ponderacion_ejecutada AND
            nro_regla_ponderacion = $nro_regla)
 WHERE solicitud = $solicitud AND ponderacion_ejecutada = $ponderacion_ejecutada;
