Foros del Web » Creando para Internet » Herramientas y Software »

[SOLUCIONADO] SQL ejecutar formulas guardadas en un string

Estas en el tema de SQL ejecutar formulas guardadas en un string en el foro de Herramientas y Software en Foros del Web. Hola como el titulo dice Quiere ejecutar formulas almacenadas en un tipo String. tenia una idea mas o menos de como ejecutarlas pero al correrlo ...
  #1 (permalink)  
Antiguo 05/02/2016, 09:57
 
Fecha de Ingreso: enero-2016
Mensajes: 5
Antigüedad: 8 años, 10 meses
Puntos: 0
SQL ejecutar formulas guardadas en un string

Hola como el titulo dice Quiere ejecutar formulas almacenadas en un tipo String. tenia una idea mas o menos de como ejecutarlas pero al correrlo me envía un error


tenia un procedimiento almacenado en SQL

Código:
USE [Planilla]
GO

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER procedure  [dbo].[Calcular_resultado]
@valor_id nvarchar(100)
as 
SET NOCOUNT ON;

declare @numero nvarchar(100)
declare @respuesta nvarchar(100)


select @numero = @valor_id 
select @numero
select @respuesta = @numero


select @respuesta

al momento de ejecutarlo desde visual en vio lo siguiente

Código:
execute Calcular_resultado '18000 * 0.08'


me sale el siguiente error

Mens 8114, Nivel 16, Estado 5, Procedimiento Calcular_resultado, Línea 11
Error converting data type nvarchar to numeric.
  #2 (permalink)  
Antiguo 05/02/2016, 11:33
 
Fecha de Ingreso: enero-2016
Mensajes: 5
Antigüedad: 8 años, 10 meses
Puntos: 0
Respuesta: SQL ejecutar formulas guardadas en un string

Resolví sucede que no debía usar a SQL para resolver la operación matematica
si no el propio visual

tenia que bajar la libreria NCalc les dejo el codigo

Código:
Imports NCalc ' importo la libreria

' union es el string donde traigo mi formula desde la base de datos en este ejempo puse la formula manualmente.   muy importante decirle al visual que es un tipo string 

Dim union As String = (9000 * 0.05)



Dim es As New Expression(union)
Dim result As Object = es.Evaluate()

Etiquetas: formulas, sql, string, tipo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:10.