Public Class frmRegistroFuturosOpciones Dim RegistroConsulta As New RegistrosDAO Dim Operaciones As New Operaciones Dim CodEmpr = Operaciones.CodEmpr Dim CodEmis = Operaciones.CodEmis Dim CodECalRi = Operaciones.CodECalRi Dim ListaPlazo = Operaciones.ListaPlazo Dim ListaTiposMercado = Operaciones.ListaTiposMercados Dim ListaPeriodos = Operaciones.ListaPeriodos Dim ListaTipoTasa = Operaciones.ListaTipoTasa Dim ListaTipoRenta = Operaciones.ListaTipoRenta Dim ListaEstado = Operaciones.ListaEstado Dim ListaCasasCorredoras = Operaciones.ListaCasasCorredoras Dim CodPais = Operaciones.CodPais Dim ValorCambiado As Boolean = False Dim Direccion As String = String.Empty Dim CodigoInstrumento As String = Variables.CodigoInstrumento Dim tablas As String Private Sub frmRegistroFuturosOpciones_Load(sender As Object, e As EventArgs) Handles MyBase.Load If (CodigoInstrumento = "FUTU") Then tablas = "FUT0" ElseIf (CodigoInstrumento = "OPC") Then tablas = "OPC0" End If AgregarColumnasInv() AgregarColumnasIns() txtPosicion.Text = "1" txtConta.Text = RegistroConsulta.Contador(tablas) ValorCambiado = False Cargar(CodigoInstrumento, 1, 100) End Sub Sub AgregarColumnasInv() Dim Empresa, Instrumento, Emisor, CalRiesgo, Calif, Pais, TipoMercado, Nombre, Periodicidad, Plazo As New DataGridViewTextBoxColumn Dim CantidadPlazo, TipoRenta, TipoTasa, Numero, Fecha, Codigo, Estado As New DataGridViewTextBoxColumn Codigo.Name = "Codigo de Inversion" Empresa.Name = "Empresa" Instrumento.Name = "Instrumento" Emisor.Name = "Emisor" CalRiesgo.Name = "Calificadora Riesgo" Calif.Name = "Calificadora" Pais.Name = "Pais" TipoMercado.Name = "Tipo Mercado" Nombre.Name = "Nombre" Periodicidad.Name = "Periodicidad" CantidadPlazo.Name = "Cantidad Plazo" Plazo.Name = "Plazo" TipoRenta.Name = "Tipo de Renta" TipoTasa.Name = "Tipo de Tasa" Numero.Name = "Numero" Fecha.Name = "Fecha" Estado.Name = "Estado" dgvLETES.Columns.Add(Codigo) dgvLETES.Columns.Add(Estado) dgvLETES.Columns.Add(Empresa) dgvLETES.Columns.Add(Instrumento) dgvLETES.Columns.Add(Emisor) dgvLETES.Columns.Add(CalRiesgo) dgvLETES.Columns.Add(Calif) dgvLETES.Columns.Add(CantidadPlazo) dgvLETES.Columns.Add(Plazo) dgvLETES.Columns.Add(Fecha) dgvLETES.Columns.Add(TipoMercado) dgvLETES.Columns.Add(Pais) dgvLETES.Columns.Add(Nombre) dgvLETES.Columns.Add(Periodicidad) dgvLETES.Columns.Add(TipoTasa) dgvLETES.Columns.Add(TipoRenta) dgvLETES.Columns.Add(Numero) End Sub Sub AgregarColumnasIns() Dim FOperC, FLiqC, FVenC, VaUnidadC, ValorTransadoC, CoBrokerC, VaRecC, IdContratoC, CantidadContC, UnidadesContC As New DataGridViewTextBoxColumn Dim FOperV, FLiqV, FVenV, VaUnidadV, ValorTransadoV, CoBrokerV, VaRecV, IdContratoV, CantidadContV, UnidadesContV As New DataGridViewTextBoxColumn Dim GananciaPerdida, Rendimiento As New DataGridViewTextBoxColumn FOperC.Name = "Fecha Operaión Compra" FLiqC.Name = "Fecha Liquidación Compra" FVenC.Name = "Fecha Vencimiento Compra" VaUnidadC.Name = "Valor de Unidad Compra" ValorTransadoC.Name = "Valor Transado Compra" CoBrokerC.Name = "Comisión Broker Compra" VaRecC.Name = "Valor Recibido Compra" IdContratoC.Name = "Identificación del Contrato Compra" CantidadContC.Name = "Cantidad de Contratos Compra" UnidadesContC.Name = "Unidades de Contrato Compra" FOperV.Name = "Fecha Operaión Venta" FLiqV.Name = "Fecha Liquidación Venta" FVenV.Name = "Fecha Vencimiento Venta" VaUnidadV.Name = "Valor de Unidad Venta" ValorTransadoV.Name = "Valor Transado Venta" CoBrokerV.Name = "Comisión Broker Venta" VaRecV.Name = "Valor Recibido Venta" IdContratoV.Name = "Identificación del Contrato Venta" CantidadContV.Name = "Cantidad de Contratos Venta" UnidadesContV.Name = "Unidades de Contrato Venta" GananciaPerdida.Name = "Ganancia/Perdida" Rendimiento.Name = "Rendimiento" dgvLETES.Columns.Add(FOperC) dgvLETES.Columns.Add(FLiqC) dgvLETES.Columns.Add(FVenC) dgvLETES.Columns.Add(VaUnidadC) dgvLETES.Columns.Add(ValorTransadoC) dgvLETES.Columns.Add(CoBrokerC) dgvLETES.Columns.Add(VaRecC) dgvLETES.Columns.Add(IdContratoC) dgvLETES.Columns.Add(CantidadContC) dgvLETES.Columns.Add(UnidadesContC) dgvLETES.Columns.Add(FOperV) dgvLETES.Columns.Add(FLiqV) dgvLETES.Columns.Add(FVenV) dgvLETES.Columns.Add(VaUnidadV) dgvLETES.Columns.Add(ValorTransadoV) dgvLETES.Columns.Add(CoBrokerV) dgvLETES.Columns.Add(VaRecV) dgvLETES.Columns.Add(IdContratoV) dgvLETES.Columns.Add(CantidadContV) dgvLETES.Columns.Add(UnidadesContV) dgvLETES.Columns.Add(GananciaPerdida) dgvLETES.Columns.Add(Rendimiento) End Sub Sub Cargar(ByVal Cod As String, ByVal Inicio As Integer, ByVal Final As Integer) Dim CodigoEmpresa As String = " " Dim CodigoEmisor As String = " " Dim CodigoECal As String = " " Dim PlazoF As String = " " Dim TiposMercado As String = " " Dim Pais As String = " " Dim Periodos As String = " " Dim Periodos2 As String = " " Dim TipoTasa As String = " " Dim TipoRenta As String = " " Dim Estado As String = " " Dim CasasCorredoras As String = " " Dim codigo As String = Variables.Codigo Dim Instrumento As String Dim dr If (CodigoInstrumento = "FUTU") Then Instrumento = "Futuros" dr = RegistroConsulta.CargarInvFUTU(Cod, Inicio, Final) ElseIf (CodigoInstrumento = "OPC") Then Instrumento = "Opciones" dr = RegistroConsulta.CargarInvOPC(Cod, Inicio, Final) End If While dr.Read For Each pair In CodEmpr If (pair.Key.ToString = dr("CodEmpr").ToString) Then CodigoEmpresa = pair.Value Exit For ElseIf (String.IsNullOrEmpty(dr("CodEmpr").ToString)) Then CodigoEmpresa = " ---- ---- ---- ---- " Exit For End If Next For Each pair In CodEmis If (pair.Key.ToString = dr("CodEmis").ToString) Then CodigoEmisor = pair.Value Exit For ElseIf (String.IsNullOrEmpty(dr("CodEmis").ToString)) Then CodigoEmisor = " ---- ---- ---- ---- " Exit For End If Next For Each pair In CodECalRi If (pair.Key.ToString = dr("CodECalRi").ToString) Then CodigoECal = pair.Value Exit For ElseIf (String.IsNullOrEmpty(dr("CodECalRi").ToString)) Then CodigoECal = " ---- ---- ---- ---- " Exit For End If Next For Each pair In ListaPlazo If (pair.Key.ToString = dr("PlazoFact").ToString) Then PlazoF = pair.Value Exit For ElseIf (String.IsNullOrEmpty(dr("PlazoFact").ToString)) Then PlazoF = " ---- ---- ---- ---- " Exit For End If Next For Each pair In ListaTiposMercado If (pair.Key.ToString = dr("TipoMerc").ToString.TrimStart()) Then TiposMercado = pair.Value Exit For ElseIf (String.IsNullOrEmpty(dr("TipoMerc").ToString.TrimStart())) Then TiposMercado = " ---- ---- ---- ---- " Exit For End If Next For Each pair In CodPais If (pair.Key.ToString = dr("CodPais").ToString.TrimStart()) Then Pais = pair.Value Exit For ElseIf (String.IsNullOrEmpty(dr("CodPais").ToString.TrimStart())) Then Pais = " ---- ---- ---- ---- " Exit For End If Next For Each pair In ListaPeriodos If (pair.Key.ToString = dr("Periodicidad").ToString.TrimStart()) Then Periodos = pair.Value ElseIf (String.IsNullOrEmpty(dr("Periodicidad").ToString.TrimStart())) Then Periodos = " ---- ---- ---- ---- " End If Next For Each pair In ListaTipoTasa If (pair.Key.ToString = dr("TipTasa").ToString.TrimStart()) Then TipoTasa = pair.Value Exit For ElseIf (String.IsNullOrEmpty(dr("TipTasa").ToString.TrimStart())) Then TipoTasa = " ---- ---- ---- ---- " Exit For End If Next For Each pair In ListaTipoRenta If (pair.Key.ToString = dr("TipRenta").ToString.TrimStart()) Then TipoRenta = pair.Value Exit For ElseIf (String.IsNullOrEmpty(dr("TipRenta").ToString.TrimStart())) Then TipoRenta = " ---- ---- ---- ---- " Exit For End If Next For Each pair In ListaEstado If (pair.Key.ToString = dr("DocEst").ToString.TrimStart()) Then Estado = pair.Value Exit For ElseIf (String.IsNullOrEmpty(dr("DocEst").ToString.TrimStart())) Then Estado = " ---- ---- ---- ---- " Exit For End If Next ' For Each pair In ListaCasasCorredoras ' If (pair.Key.ToString = dr("CasasCorredoras").ToString) Then ' CasasCorredoras = pair.Value ' Exit For ' ElseIf (String.IsNullOrEmpty(dr("CasasCorredoras").ToString)) Then ' CasasCorredoras = " ---- ---- ---- ---- " ' Exit For ' End If 'Next 'dgvReportes.Rows.Add(dr("CodInv"), Estado, CodigoEmpresa, "Reportos", CodigoEmisor, dr("CodCalRi"), CodigoECal, dr("Plazo"), PlazoF, dr("FechaDoc"), TiposMercado, Pais, dr("NombreManIF"), Periodos, TipoTasa, TipoRenta, dr("NumManInv"), "", dr("Nombre"), dr("FCompra"), dr("ValTrans"), dr("Dias"), dr("FVenc"), dr("Rend"), ComisionCasa, ComisionBolsa, IOF, 0, TotalCostos, MontoLiq, InteresGenerar, dr("CostoTransfr"), RendimientoAntes, ValorRecompra, Renta, IngresoNeto, ValorNeto, RendimientoDespues, "", PorcentajeComisionCasa, PorcentajeComisionBolsa, PorcentajeComisionIOF) dgvLETES.Rows.Add(dr("CodInv"), Estado, CodigoEmpresa, Instrumento, CodigoEmisor, dr("CodCalRi"), CodigoECal, dr("Plazo"), PlazoF, dr("FechaDoc"), TiposMercado, Pais, dr("NombreManIF"), Periodos, TipoTasa, TipoRenta, dr("NumManInv"), dr("FOperC"), dr("FLiqC"), dr("FVenC"), dr("VaUnidadC"), dr("ValorTransadoC"), dr("CoBrokerC"), dr("VaRecC"), dr("IdContratoC"), dr("CantContratoC"), dr("UniContraC"), dr("FOperV"), dr("FLiqV"), dr("FVenV"), dr("VaUnidadV"), dr("ValorTransadoV"), dr("CoBrokerV"), dr("VaRecV"), dr("IdContratoV"), dr("CantContratoV"), dr("UniContraV"), dr("GP"), dr("Rendimiento")) End While End Sub Private Sub navSiguienteRegistro_Click(sender As Object, e As EventArgs) Direccion = "D" Mover(Direccion) ValorCambiado = False End Sub Sub Mover(ByVal Direccion As String) Dim ReferenciaD = txtPosicion.Text + 1 Dim ReferenciaI = txtPosicion.Text - 1 Dim Cantidad = txtConta.Text Dim ValorExacto = txtPosicion.Text Dim Inicio, Final As Integer If (Direccion = "D") Then If (Cantidad >= ValorExacto) Then dgvLETES.Rows.Clear() If (Not ValorCambiado) Then txtPosicion.Text = ReferenciaD ValorCambiado = False End If Inicio = txtPosicion.Text - 1 Inicio = Inicio * 100 Final = Inicio + 100 Cargar(CodigoInstrumento, Inicio, Final) Else MsgBox("Rango Fuera de Valor") End If ElseIf (Direccion = "I") Then If (ReferenciaI >= 1) Then dgvLETES.Rows.Clear() If (Not ValorCambiado) Then If (Not ValorExacto = 1) Then txtPosicion.Text = ReferenciaI End If Else ValorCambiado = False End If Inicio = txtPosicion.Text - 1 Inicio = Inicio * 100 Final = Inicio + 100 Cargar(CodigoInstrumento, Inicio, Final) Else MsgBox("Rango Fuera de Valor") End If ElseIf (Direccion = "SD") Then Final = txtConta.Text * 100 Inicio = Final - 100 dgvLETES.Rows.Clear() Cargar(CodigoInstrumento, Inicio, Final) txtPosicion.Text = Cantidad ElseIf (Direccion = "SI") Then Final = 100 Inicio = Final - 100 dgvLETES.Rows.Clear() Cargar(CodigoInstrumento, Inicio, Final) txtPosicion.Text = 1 End If End Sub Private Sub navRegistroAnterior_Click(sender As Object, e As EventArgs) Handles navRegistroAnterior.Click Direccion = "I" Mover(Direccion) ValorCambiado = False End Sub Private Sub txtPosicion_TextChanged(sender As Object, e As EventArgs) Handles txtPosicion.TextChanged ValorCambiado = True End Sub Private Sub navUltimoRegistro_Click(sender As Object, e As EventArgs) Handles navUltimoRegistro.Click Direccion = "SD" Mover(Direccion) ValorCambiado = False End Sub Private Sub navPrimerRegistro_Click(sender As Object, e As EventArgs) Handles navPrimerRegistro.Click Direccion = "SI" Mover(Direccion) ValorCambiado = False End Sub End Class