frmRegistroAcciones.vb 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468
  1. Public Class frmRegistroAcciones
  2. Dim RegistroConsulta As New RegistrosDAO
  3. Dim Operaciones As New Operaciones
  4. Dim CodEmpr = Operaciones.CodEmpr
  5. Dim CodEmis = Operaciones.CodEmis
  6. Dim CodECalRi = Operaciones.CodECalRi
  7. Dim ListaPlazo = Operaciones.ListaPlazo
  8. Dim ListaTiposMercado = Operaciones.ListaTiposMercados
  9. Dim ListaPeriodos = Operaciones.ListaPeriodos
  10. Dim ListaTipoTasa = Operaciones.ListaTipoTasa
  11. Dim ListaTipoRenta = Operaciones.ListaTipoRenta
  12. Dim ListaEstado = Operaciones.ListaEstado
  13. Dim ListaCasasCorredoras = Operaciones.ListaCasasCorredoras
  14. Dim CodPais = Operaciones.CodPais
  15. Dim ValorCambiado As Boolean = False
  16. Dim Direccion As String = String.Empty
  17. Dim CodigoInstrumento As String = Variables.CodigoInstrumento
  18. Dim tablas As String
  19. Private Sub frmRegistroAcciones_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  20. tablas = "ACC0"
  21. AgregarColumnasInv()
  22. AgregarColumnasIns()
  23. txtPosicion.Text = "1"
  24. txtConta.Text = RegistroConsulta.Contador(tablas)
  25. ValorCambiado = False
  26. Cargar(CodigoInstrumento, 1, 100)
  27. End Sub
  28. Sub AgregarColumnasInv()
  29. Dim Empresa, Instrumento, Emisor, CalRiesgo, Calif, Pais, TipoMercado, Nombre, Periodicidad, Plazo As New DataGridViewTextBoxColumn
  30. Dim CantidadPlazo, TipoRenta, TipoTasa, Numero, Fecha, Codigo, Estado As New DataGridViewTextBoxColumn
  31. Codigo.Name = "Codigo de Inversion"
  32. Empresa.Name = "Empresa"
  33. Instrumento.Name = "Instrumento"
  34. Emisor.Name = "Emisor"
  35. CalRiesgo.Name = "Calificadora Riesgo"
  36. Calif.Name = "Calificadora"
  37. Pais.Name = "Pais"
  38. TipoMercado.Name = "Tipo Mercado"
  39. Nombre.Name = "Nombre"
  40. Periodicidad.Name = "Periodicidad"
  41. CantidadPlazo.Name = "Cantidad Plazo"
  42. Plazo.Name = "Plazo"
  43. TipoRenta.Name = "Tipo de Renta"
  44. TipoTasa.Name = "Tipo de Tasa"
  45. Numero.Name = "Numero"
  46. Fecha.Name = "Fecha"
  47. Estado.Name = "Estado"
  48. dgvLETES.Columns.Add(Codigo)
  49. dgvLETES.Columns.Add(Estado)
  50. dgvLETES.Columns.Add(Empresa)
  51. dgvLETES.Columns.Add(Instrumento)
  52. dgvLETES.Columns.Add(Emisor)
  53. dgvLETES.Columns.Add(CalRiesgo)
  54. dgvLETES.Columns.Add(Calif)
  55. dgvLETES.Columns.Add(CantidadPlazo)
  56. dgvLETES.Columns.Add(Plazo)
  57. dgvLETES.Columns.Add(Fecha)
  58. dgvLETES.Columns.Add(TipoMercado)
  59. dgvLETES.Columns.Add(Pais)
  60. dgvLETES.Columns.Add(Nombre)
  61. dgvLETES.Columns.Add(Periodicidad)
  62. dgvLETES.Columns.Add(TipoTasa)
  63. dgvLETES.Columns.Add(TipoRenta)
  64. dgvLETES.Columns.Add(Numero)
  65. End Sub
  66. Sub AgregarColumnasIns()
  67. Dim PrecioLimpioC, FOperC, FliqC, DiasTC, GCapTotC, GCapUnC, RetAnBrC, RetAnNetC, UnC, ValTransC, MontoNetoC, PrecSucioC As New DataGridViewTextBoxColumn
  68. Dim PrecioLimpioV, FOperV, FliqV, DiasTV, GCapTotV, GCapUnV, RetAnBrV, RetAnNetV, UnV, ValTransV, MontoNetoV, PrecSucioV As New DataGridViewTextBoxColumn
  69. Dim Fecha, Dividendo, CantidadBase, IngresoBruto, PorcISR, ISR, IngresoNeto, Correlativo As New DataGridViewTextBoxColumn
  70. PrecioLimpioC.Name = "Precio Limpio Compra"
  71. FOperC.Name = "Fecha Operación Compra"
  72. FliqC.Name = "Fecha Liquidación Compra"
  73. DiasTC.Name = "Dias de Tenencia Compra"
  74. GCapTotC.Name = "Ganancia Total Compra"
  75. GCapUnC.Name = "Ganancia Acción Compra"
  76. RetAnBrC.Name = "Retorno Anual Bruto Compra"
  77. RetAnNetC.Name = "Retorno Anual Neto Compra"
  78. UnC.Name = "Unidades Compra"
  79. ValTransC.Name = "Valor Transado Compra"
  80. MontoNetoC.Name = "Monto Neto Compra"
  81. PrecSucioC.Name = "Precio Sucio Compra"
  82. PrecioLimpioV.Name = "Precio Limpio Venta"
  83. FOperV.Name = "Fecha Operación Venta"
  84. FliqV.Name = "Fecha Liquidación Venta"
  85. DiasTV.Name = "Dias de Tenencia Venta"
  86. GCapTotV.Name = "Ganancia Total Venta"
  87. GCapUnV.Name = "Ganancia Acción Venta"
  88. RetAnBrV.Name = "Retorno Anual Bruto Venta"
  89. RetAnNetV.Name = "Retorno Anual Neto Venta"
  90. UnV.Name = "Unidades Venta"
  91. ValTransV.Name = "Valor Transado Venta"
  92. MontoNetoV.Name = "Monto Neto Venta"
  93. PrecSucioV.Name = "Precio Sucio Venta"
  94. Fecha.Name = "Fecha"
  95. Dividendo.Name = "Dividendo"
  96. CantidadBase.Name = "Cantidad Base"
  97. IngresoBruto.Name = "Ingreso Bruto"
  98. PorcISR.Name = "% ISR"
  99. ISR.Name = "ISR"
  100. IngresoNeto.Name = "Ingreso Neto"
  101. Correlativo.Name = "Correlativo"
  102. dgvLETES.Columns.Add(PrecioLimpioC)
  103. dgvLETES.Columns.Add(FOperC)
  104. dgvLETES.Columns.Add(FliqC)
  105. dgvLETES.Columns.Add(DiasTC)
  106. dgvLETES.Columns.Add(GCapTotC)
  107. dgvLETES.Columns.Add(GCapUnC)
  108. dgvLETES.Columns.Add(RetAnBrC)
  109. dgvLETES.Columns.Add(RetAnNetC)
  110. dgvLETES.Columns.Add(UnC)
  111. dgvLETES.Columns.Add(ValTransC)
  112. dgvLETES.Columns.Add(MontoNetoC)
  113. dgvLETES.Columns.Add(PrecSucioC)
  114. dgvLETES.Columns.Add(PrecioLimpioV)
  115. dgvLETES.Columns.Add(FOperV)
  116. dgvLETES.Columns.Add(FliqV)
  117. dgvLETES.Columns.Add(DiasTV)
  118. dgvLETES.Columns.Add(GCapTotV)
  119. dgvLETES.Columns.Add(GCapUnV)
  120. dgvLETES.Columns.Add(RetAnBrV)
  121. dgvLETES.Columns.Add(RetAnNetV)
  122. dgvLETES.Columns.Add(UnV)
  123. dgvLETES.Columns.Add(ValTransV)
  124. dgvLETES.Columns.Add(MontoNetoV)
  125. dgvLETES.Columns.Add(PrecSucioV)
  126. dgvLETES.Columns.Add(Fecha)
  127. dgvLETES.Columns.Add(Dividendo)
  128. dgvLETES.Columns.Add(CantidadBase)
  129. dgvLETES.Columns.Add(IngresoBruto)
  130. dgvLETES.Columns.Add(PorcISR)
  131. dgvLETES.Columns.Add(ISR)
  132. dgvLETES.Columns.Add(IngresoNeto)
  133. dgvLETES.Columns.Add(Correlativo)
  134. 'dgvLETES.Columns.Add(nombredeudor)
  135. End Sub
  136. Sub Cargar(ByVal Cod As String, ByVal Inicio As Integer, ByVal Final As Integer)
  137. Dim CodigoEmpresa As String = " "
  138. Dim CodigoEmisor As String = " "
  139. Dim CodigoECal As String = " "
  140. Dim PlazoF As String = " "
  141. Dim TiposMercado As String = " "
  142. Dim Pais As String = " "
  143. Dim Periodos As String = " "
  144. Dim Periodos2 As String = " "
  145. Dim TipoTasa As String = " "
  146. Dim TipoRenta As String = " "
  147. Dim Estado As String = " "
  148. Dim CasasCorredoras As String = " "
  149. Dim codigo As String = CodigoInstrumento
  150. Dim Instrumento As String
  151. Dim dr
  152. Instrumento = "Acciones"
  153. dr = RegistroConsulta.CargarInvACCC(Cod, Inicio, Final)
  154. While dr.Read
  155. For Each pair In CodEmpr
  156. If (pair.Key.ToString = dr("CodEmpr").ToString) Then
  157. CodigoEmpresa = pair.Value
  158. Exit For
  159. ElseIf (String.IsNullOrEmpty(dr("CodEmpr").ToString)) Then
  160. CodigoEmpresa = " ---- ---- ---- ---- "
  161. Exit For
  162. End If
  163. Next
  164. For Each pair In CodEmis
  165. If (pair.Key.ToString = dr("CodEmis").ToString) Then
  166. CodigoEmisor = pair.Value
  167. Exit For
  168. ElseIf (String.IsNullOrEmpty(dr("CodEmis").ToString)) Then
  169. CodigoEmisor = " ---- ---- ---- ---- "
  170. Exit For
  171. End If
  172. Next
  173. For Each pair In CodECalRi
  174. If (pair.Key.ToString = dr("CodECalRi").ToString) Then
  175. CodigoECal = pair.Value
  176. Exit For
  177. ElseIf (String.IsNullOrEmpty(dr("CodECalRi").ToString)) Then
  178. CodigoECal = " ---- ---- ---- ---- "
  179. Exit For
  180. End If
  181. Next
  182. For Each pair In ListaPlazo
  183. If (pair.Key.ToString = dr("PlazoFact").ToString) Then
  184. PlazoF = pair.Value
  185. Exit For
  186. ElseIf (String.IsNullOrEmpty(dr("PlazoFact").ToString)) Then
  187. PlazoF = " ---- ---- ---- ---- "
  188. Exit For
  189. End If
  190. Next
  191. For Each pair In ListaTiposMercado
  192. If (pair.Key.ToString = dr("TipoMerc").ToString.TrimStart()) Then
  193. TiposMercado = pair.Value
  194. Exit For
  195. ElseIf (String.IsNullOrEmpty(dr("TipoMerc").ToString.TrimStart())) Then
  196. TiposMercado = " ---- ---- ---- ---- "
  197. Exit For
  198. End If
  199. Next
  200. For Each pair In CodPais
  201. If (pair.Key.ToString = dr("CodPais").ToString.TrimStart()) Then
  202. Pais = pair.Value
  203. Exit For
  204. ElseIf (String.IsNullOrEmpty(dr("CodPais").ToString.TrimStart())) Then
  205. Pais = " ---- ---- ---- ---- "
  206. Exit For
  207. End If
  208. Next
  209. For Each pair In ListaPeriodos
  210. If (pair.Key.ToString = dr("Periodicidad").ToString.TrimStart()) Then
  211. Periodos = pair.Value
  212. ElseIf (String.IsNullOrEmpty(dr("Periodicidad").ToString.TrimStart())) Then
  213. Periodos = " ---- ---- ---- ---- "
  214. End If
  215. Next
  216. For Each pair In ListaTipoTasa
  217. If (pair.Key.ToString = dr("TipTasa").ToString.TrimStart()) Then
  218. TipoTasa = pair.Value
  219. Exit For
  220. ElseIf (String.IsNullOrEmpty(dr("TipTasa").ToString.TrimStart())) Then
  221. TipoTasa = " ---- ---- ---- ---- "
  222. Exit For
  223. End If
  224. Next
  225. For Each pair In ListaTipoRenta
  226. If (pair.Key.ToString = dr("TipRenta").ToString.TrimStart()) Then
  227. TipoRenta = pair.Value
  228. Exit For
  229. ElseIf (String.IsNullOrEmpty(dr("TipRenta").ToString.TrimStart())) Then
  230. TipoRenta = " ---- ---- ---- ---- "
  231. Exit For
  232. End If
  233. Next
  234. For Each pair In ListaEstado
  235. If (pair.Key.ToString = dr("DocEst").ToString.TrimStart()) Then
  236. Estado = pair.Value
  237. Exit For
  238. ElseIf (String.IsNullOrEmpty(dr("DocEst").ToString.TrimStart())) Then
  239. Estado = " ---- ---- ---- ---- "
  240. Exit For
  241. End If
  242. Next
  243. ' For Each pair In ListaCasasCorredoras
  244. ' If (pair.Key.ToString = dr("CasasCorredoras").ToString) Then
  245. ' CasasCorredoras = pair.Value
  246. ' Exit For
  247. ' ElseIf (String.IsNullOrEmpty(dr("CasasCorredoras").ToString)) Then
  248. ' CasasCorredoras = " ---- ---- ---- ---- "
  249. ' Exit For
  250. ' End If
  251. 'Next
  252. '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)
  253. dgvLETES.Rows.Add(dr("CodInv").ToString, Estado, CodigoEmpresa, Instrumento, CodigoEmisor, dr("CodCalRi"), CodigoECal, dr("Plazo"), PlazoF, dr("FechaDoc"), TiposMercado, Pais, dr("NombreManIF"), Periodos, TipoTasa, TipoRenta, dr("NumManInv").ToString, dr("PrecioLimpioC").ToString, dr("FOperC").ToString, dr("FLiqC").ToString, dr("DiasTC").ToString, dr("GCapTotC").ToString, dr("GCapUnC").ToString, dr("RetAnBrC").ToString, dr("RetAnNetC").ToString, dr("UnC").ToString, dr("ValTransC").ToString, dr("MontoNetoC").ToString, dr("PrecSucioC").ToString, dr("PrecioLimpioV").ToString, dr("FOperV").ToString, dr("FLiqV").ToString, dr("DiasTV").ToString, dr("GCapTotV").ToString, dr("GCapUnV").ToString, dr("RetAnBrV").ToString, dr("RetAnNetV").ToString, dr("UnV").ToString, dr("ValTransV").ToString, dr("MontoNetoV").ToString, dr("PrecSucioV").ToString, dr("Fecha").ToString, dr("Dividendo").ToString, dr("CantidadBase").ToString, dr("IngresoBruto").ToString, dr("PorcISR").ToString, dr("ISR").ToString, dr("IngresoNeto").ToString, dr("Correlativo").ToString)
  254. '' 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("PrecioLimpioC"), dr("FOperC"), dr("FLiqC"), dr("DiasTC"), dr("GCapTotC"), dr("GCapUnC"), dr("RetAnBrC"), dr("RetAnNetC"), dr("UnC"), dr("ValTransC"), dr("MontoNetoC"), dr("PrecSucioC"), dr("PrecioLimpioV"), dr("FOperV"), dr("FLiqV"), dr("DiasTV"), dr("GCapTotV"), dr("GCapUnV"), dr("RetAnBrV"), dr("RetAnNetV"), dr("UnV"), dr("ValTransV"), dr("MontoNetoV"), dr("PrecSucioV"), dr("Fecha"), dr("Dividendo"), dr("CantidadBase"), dr("IngresoBruto"), dr("PorcISR"), dr("ISR"), dr("IngresoNeto"), dr("Correlativo"))
  255. End While
  256. End Sub
  257. Private Sub navSiguienteRegistro_Click(sender As Object, e As EventArgs)
  258. Direccion = "D"
  259. Mover(Direccion)
  260. ValorCambiado = False
  261. End Sub
  262. Sub Mover(ByVal Direccion As String)
  263. Dim ReferenciaD = txtPosicion.Text + 1
  264. Dim ReferenciaI = txtPosicion.Text - 1
  265. Dim Cantidad = txtConta.Text
  266. Dim ValorExacto = txtPosicion.Text
  267. Dim Inicio, Final As Integer
  268. If (Direccion = "D") Then
  269. If (Cantidad >= ValorExacto) Then
  270. dgvLETES.Rows.Clear()
  271. If (Not ValorCambiado) Then
  272. txtPosicion.Text = ReferenciaD
  273. ValorCambiado = False
  274. End If
  275. Inicio = txtPosicion.Text - 1
  276. Inicio = Inicio * 100
  277. Final = Inicio + 100
  278. Cargar(CodigoInstrumento, Inicio, Final)
  279. Else
  280. MsgBox("Rango Fuera de Valor")
  281. End If
  282. ElseIf (Direccion = "I") Then
  283. If (ReferenciaI >= 1) Then
  284. dgvLETES.Rows.Clear()
  285. If (Not ValorCambiado) Then
  286. If (Not ValorExacto = 1) Then
  287. txtPosicion.Text = ReferenciaI
  288. End If
  289. Else
  290. ValorCambiado = False
  291. End If
  292. Inicio = txtPosicion.Text - 1
  293. Inicio = Inicio * 100
  294. Final = Inicio + 100
  295. Cargar(CodigoInstrumento, Inicio, Final)
  296. Else
  297. MsgBox("Rango Fuera de Valor")
  298. End If
  299. ElseIf (Direccion = "SD") Then
  300. Final = txtConta.Text * 100
  301. Inicio = Final - 100
  302. dgvLETES.Rows.Clear()
  303. Cargar(CodigoInstrumento, Inicio, Final)
  304. txtPosicion.Text = Cantidad
  305. ElseIf (Direccion = "SI") Then
  306. Final = 100
  307. Inicio = Final - 100
  308. dgvLETES.Rows.Clear()
  309. Cargar(CodigoInstrumento, Inicio, Final)
  310. txtPosicion.Text = 1
  311. End If
  312. End Sub
  313. Private Sub navRegistroAnterior_Click(sender As Object, e As EventArgs) Handles navRegistroAnterior.Click
  314. Direccion = "I"
  315. Mover(Direccion)
  316. ValorCambiado = False
  317. End Sub
  318. Private Sub txtPosicion_TextChanged(sender As Object, e As EventArgs) Handles txtPosicion.TextChanged
  319. ValorCambiado = True
  320. End Sub
  321. Private Sub navUltimoRegistro_Click(sender As Object, e As EventArgs) Handles navUltimoRegistro.Click
  322. Direccion = "SD"
  323. Mover(Direccion)
  324. ValorCambiado = False
  325. End Sub
  326. Private Sub navPrimerRegistro_Click(sender As Object, e As EventArgs) Handles navPrimerRegistro.Click
  327. Direccion = "SI"
  328. Mover(Direccion)
  329. ValorCambiado = False
  330. End Sub
  331. End Class