Hola a todos,
Tengo una aplicacion en Visual basic 60 que maneja MSScript Control, quiero saber si alguien puede ayudarme a saber como usar este componente en VB.NET, se puede?
Saludos...
| |||
Msscript control en net Hola a todos, Tengo una aplicacion en Visual basic 60 que maneja MSScript Control, quiero saber si alguien puede ayudarme a saber como usar este componente en VB.NET, se puede? Saludos... |
| |||
Respuesta: Msscript control en net Para usarlo solo importalo al formulario o a la clase donde lo vayas a usar: Imports MSScriptControl Public Class ProbarFormula '''<summary>Función que calcula la fórmula, segun los datos capturados.</summary> '''<remarks></remarks> '''<param name="formula">Fórmula</param> Private Function fnConvertirFormula(ByVal formula As String) As Decimal Try Me.lFormulaConvertida = formula.ToUpper Dim precio As Decimal = 0.0 Dim cantidad As Decimal = 0.0 Dim porcentajeDescuento As Decimal = 0.0 Dim importeDescuento As Decimal = 0.0 Dim porcentajePromocion As Decimal = 0.0 Dim importePromocion As Decimal = 0.0 Dim porcentajeIva As Decimal = 0.0 Dim importeIva As Decimal = 0.0 precio = IIf(IIf(TypeOf (Me.txtPrecio.Value) Is DBNull, Nothing, Me.txtPrecio.Value) Is Nothing, 0.0, Me.txtPrecio.Value) cantidad = IIf(IIf(TypeOf (Me.txtCantidad.Value) Is DBNull, Nothing, Me.txtCantidad.Value) Is Nothing, 0.0, Me.txtCantidad.Value) porcentajeDescuento = IIf(IIf(TypeOf (Me.txtPorcentajeDescuento.Value) Is DBNull, Nothing, Me.txtPorcentajeDescuento.Value) Is Nothing, 0.0, Me.txtPorcentajeDescuento.Value) porcentajePromocion = IIf(IIf(TypeOf (Me.txtPorcentajePromocion.Value) Is DBNull, Nothing, Me.txtPorcentajePromocion.Value) Is Nothing, 0.0, Me.txtPorcentajePromocion.Value) porcentajeIva = IIf(IIf(TypeOf (Me.txtPorcentajeIva.Value) Is DBNull, Nothing, Me.txtPorcentajeIva.Value) Is Nothing, 0.0, Me.txtPorcentajeIva.Value) importeDescuento = IIf(IIf(TypeOf (Me.txtImporteDescuento.Value) Is DBNull, Nothing, Me.txtImporteDescuento.Value) Is Nothing, 0.0, Me.txtImporteDescuento.Value) importePromocion = IIf(IIf(TypeOf (Me.txtImportePromocion.Value) Is DBNull, Nothing, Me.txtImportePromocion.Value) Is Nothing, 0.0, Me.txtImportePromocion.Value) importeIva = IIf(IIf(TypeOf (Me.txtImporteIva.Value) Is DBNull, Nothing, Me.txtImporteIva.Value) Is Nothing, 0.0, Me.txtImporteIva.Value) 'Agrego valore a la formula Do If Me.lFormulaConvertida.Contains("[precioPublico]".ToUpper) Then Me.lFormulaConvertida = Me.lFormulaConvertida.Replace("[precioPublico]".ToUpper, precio.ToString) Continue Do ElseIf Me.lFormulaConvertida.Contains("[cantidad]".ToUpper) Then Me.lFormulaConvertida = Me.lFormulaConvertida.Replace("[cantidad]".ToUpper, cantidad.ToString) Continue Do ElseIf Me.lFormulaConvertida.Contains("[porcentajeDescuento]".ToUpper) Then Me.lFormulaConvertida = Me.lFormulaConvertida.Replace("[porcentajeDescuento]".ToUpper, porcentajeDescuento.ToString) Continue Do ElseIf Me.lFormulaConvertida.Contains("[importeDescuento]".ToUpper) Then Me.lFormulaConvertida = Me.lFormulaConvertida.Replace("[importeDescuento]".ToUpper, importeDescuento.ToString) Continue Do ElseIf Me.lFormulaConvertida.Contains("[porcentajePromocion]".ToUpper) Then Me.lFormulaConvertida = Me.lFormulaConvertida.Replace("[porcentajePromocion]".ToUpper, porcentajePromocion.ToString) Continue Do ElseIf Me.lFormulaConvertida.Contains("[importePromocion]".ToUpper) Then Me.lFormulaConvertida = Me.lFormulaConvertida.Replace("[importePromocion]".ToUpper, importePromocion.ToString) Continue Do ElseIf Me.lFormulaConvertida.Contains("[porcentajeIva]".ToUpper) Then Me.lFormulaConvertida = Me.lFormulaConvertida.Replace("[porcentajeIva]".ToUpper, porcentajeIva.ToString) Continue Do ElseIf Me.lFormulaConvertida.Contains("[importeIva]".ToUpper) Then Me.lFormulaConvertida = Me.lFormulaConvertida.Replace("[importeIva]".ToUpper, importeIva.ToString) Continue Do Else Exit Do End If Loop '_____________________________________________ 'Calculo la formula y la regreso Dim resultado As New ScriptControl resultado.Language = "vbScript" 'resultado.Eval(Me.lFormulaConvertida) Return Val(resultado.Eval(Me.lFormulaConvertida)) '_________________________________________ Catch ex As Exception Throw New Exception(ex.Message, ex) End Try End Function End Class Bueno algo asi esta incompleta esa clase le falta la declaracion de variables... solo para que te des una idea. |