frmRendimientoFiltro.vb 34 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166
  1. Public Class frmRendimientoFiltro
  2. Private Rendimiento As New Rendimientos
  3. Dim Operaciones As New Operaciones
  4. Dim MontoACC As String = String.Empty
  5. Dim MontoLET As String = String.Empty
  6. Dim MontoCET As String = String.Empty
  7. Dim MontoPBUR As String = String.Empty
  8. Dim MontoVCN As String = String.Empty
  9. Dim MontoBON As String = String.Empty
  10. Dim MontoCINV As String = String.Empty
  11. Dim MontoEURB As String = String.Empty
  12. Dim MontoTIT As String = String.Empty
  13. Dim MontoDAP As String = String.Empty
  14. Dim MontoFUT As String = String.Empty
  15. Dim MontoOPC As String = String.Empty
  16. Dim MontoPPER As String = String.Empty
  17. Dim MontoPEMP As String = String.Empty
  18. Dim MontoREP As String = String.Empty
  19. Dim Lista As String = String.Empty
  20. Dim ListaEmpresa As String = String.Empty
  21. Dim ListaInstrumentos As String = String.Empty
  22. Dim ListaNacionalidad As String = String.Empty
  23. Dim ListaEstado As String = String.Empty
  24. Dim ListaVigencia As String = String.Empty
  25. Dim ListaTipoRenta As String = String.Empty
  26. Dim ListaAgrupada As String = String.Empty
  27. Private TipoFecha As String = "N"
  28. Private SoloFecha As Date = Date.Now.Date
  29. Private FechaInicial As Date = Date.Now.Date
  30. Private FechaFinal As Date = Date.Now.Date
  31. Private Portafolio As String = "Activo"
  32. Private chk_PortafolioSinRenta As String = "Activo"
  33. Private rdb_VerRendimiento As String = "Todos"
  34. Private NuevoCheckEmpresa As Boolean = True
  35. Private Sub lblTitulo_Click(sender As Object, e As EventArgs) Handles lblTitulo.Click
  36. End Sub
  37. Private Sub CheckBox6_CheckedChanged(sender As Object, e As EventArgs) Handles chkPortafolioSinRenta.CheckedChanged
  38. If chkPortafolioSinRenta.Checked Then
  39. chk_PortafolioSinRenta = "Activo"
  40. Else
  41. chk_PortafolioSinRenta = "Desactivo"
  42. End If
  43. End Sub
  44. Sub CargarDatos()
  45. Dim dt As New DataTable
  46. ActualizarListas()
  47. dt = Rendimiento.TraerRendimientos(TipoFecha, FechaInicial, FechaFinal, ListaEmpresa, ListaInstrumentos, ListaTipoRenta, ListaNacionalidad, ListaVigencia, ListaEstado, SoloFecha, Lista)
  48. CalcularCamposGenerales(dt)
  49. AgregarPorcentajeRendGeneral(dt)
  50. dgvRendimientos.DataSource = dt
  51. OcultarColumnas()
  52. End Sub
  53. Sub AgregarPorcentajeRendGeneral(ByRef dt As DataTable)
  54. For Each rows As DataRow In dt.Rows
  55. If Not dt.Columns("Rendimientos") Is Nothing Then
  56. rows("Rendimientos") = (Operaciones.ConvertirDecimal(rows("Rendimientos").ToString) * 100).ToString + " %"
  57. End If
  58. If Not dt.Columns("Peso") Is Nothing Then
  59. rows("Peso") = (Operaciones.ConvertirDecimal(rows("Peso").ToString) * 100).ToString + " %"
  60. End If
  61. If Not dt.Columns("RendimientoActual") Is Nothing Then
  62. rows("RendimientoActual") = (Operaciones.ConvertirDecimal(rows("RendimientoActual").ToString) * 100).ToString + " %"
  63. End If
  64. Next
  65. End Sub
  66. Sub CalcularCamposGenerales(ByRef dt As DataTable)
  67. Dim MontoInversion As Double = 0
  68. Dim Rendimiento As Double = 0
  69. Dim Peso As Double = 0
  70. Dim RendimientoSumaProducto As Double = 0
  71. Dim SumaProducto As Double = 0
  72. For Each rows As DataRow In dt.Rows
  73. MontoInversion += Operaciones.ConvertirDecimal(rows("Monto").ToString)
  74. Rendimiento += Operaciones.ConvertirDecimal(rows("Rendimientos").ToString)
  75. RendimientoSumaProducto = Operaciones.ConvertirDecimal(rows("Rendimientos").ToString)
  76. Peso = Operaciones.ConvertirDecimal(rows("Peso").ToString)
  77. SumaProducto += RendimientoSumaProducto * Peso
  78. Next
  79. txtPortTotal.Text = MontoInversion
  80. txtRendimientos.Text = (Rendimiento * 100).ToString + " %"
  81. txtRendSumaProducto.Text = (SumaProducto * 100).ToString + " %"
  82. End Sub
  83. Private Sub frmRendimientoTotal_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  84. TipoRendimiento()
  85. AgregarCheckboxEmpresa()
  86. AgregarCheckboxInstrumento()
  87. CargarDatos()
  88. End Sub
  89. Sub AgregarCheckboxEmpresa()
  90. Dim diccionario As New Dictionary(Of String, String)
  91. diccionario = Rendimiento.Empresas
  92. For Each Empresa In diccionario
  93. Dim Empre As New CheckBox
  94. Dim Existe As Boolean = False
  95. Dim NombreEmpresa = Empresa.Value
  96. For Each item As CheckBox In flpEmpresa.Controls
  97. If item.Text.ToString = NombreEmpresa.ToString Then
  98. Existe = True
  99. End If
  100. Next
  101. If Not Existe Then
  102. Empre.Name = Empresa.Key
  103. Empre.Checked = True
  104. Empre.Width = 250
  105. Empre.BackColor = ColorTranslator.FromHtml("#EAEAE8")
  106. Empre.Text = NombreEmpresa
  107. flpEmpresa.Controls.Add(Empre)
  108. AddHandler Empre.Click, AddressOf eventoEmpresa
  109. AddHandler Empre.CheckedChanged, AddressOf ColoreventoEmpresa
  110. End If
  111. Existe = False
  112. Next
  113. Dim Empres As New CheckBox
  114. Empres.Name = "TodosEmpresa"
  115. Empres.Checked = True
  116. Empres.Width = 250
  117. Empres.BackColor = ColorTranslator.FromHtml("#EAEAE8")
  118. Empres.Text = "Todos las Empresas"
  119. flpEmpresa.Controls.Add(Empres)
  120. AddHandler Empres.Click, AddressOf eventoEmpresa
  121. AddHandler Empres.CheckedChanged, AddressOf ColoreventoEmpresa
  122. End Sub
  123. Sub AgregarCheckboxInstrumento()
  124. Dim diccionario As New Dictionary(Of String, String)
  125. diccionario = Rendimiento.Instrumentos
  126. For Each Instrumento In diccionario
  127. Dim Ins As New CheckBox
  128. Dim Existe As Boolean = False
  129. Dim NombreInstrumento = Instrumento.Value
  130. For Each item As CheckBox In flpInstrumento.Controls
  131. If item.Text.ToString = NombreInstrumento.ToString Then
  132. Existe = True
  133. End If
  134. Next
  135. If Not Existe Then
  136. Ins.Name = Instrumento.Key
  137. Ins.Checked = True
  138. Ins.Width = 250
  139. Ins.BackColor = ColorTranslator.FromHtml("#EAEAE8")
  140. Ins.Text = NombreInstrumento
  141. flpInstrumento.Controls.Add(Ins)
  142. AddHandler Ins.Click, AddressOf eventoInstrumento
  143. AddHandler Ins.CheckedChanged, AddressOf ColoreventoInstrumento
  144. End If
  145. Existe = False
  146. Next
  147. Dim Insi As New CheckBox
  148. Insi.Name = "TodosInstrumentos"
  149. Insi.Checked = True
  150. Insi.Width = 250
  151. Insi.BackColor = ColorTranslator.FromHtml("#EAEAE8")
  152. Insi.Text = "Todos los Instrumentos"
  153. flpInstrumento.Controls.Add(Insi)
  154. AddHandler Insi.Click, AddressOf eventoInstrumento
  155. AddHandler Insi.CheckedChanged, AddressOf ColoreventoInstrumento
  156. End Sub
  157. Sub eventoEmpresa(sender As Object, e As EventArgs)
  158. If sender.name = "TodosEmpresa" Then
  159. CambioCheckTodosEmpresa()
  160. Else
  161. TodosCheckEmpresa(sender, e)
  162. End If
  163. End Sub
  164. Sub eventoInstrumento(sender As Object, e As EventArgs)
  165. If sender.name = "TodosInstrumentos" Then
  166. CambioCheckTodosinstrumentos()
  167. Else
  168. TodosCheckInstrumentos(sender, e)
  169. End If
  170. End Sub
  171. Sub ColoreventoEmpresa(sender As Object, e As EventArgs)
  172. If (sender.checked) Then
  173. sender.BackColor = ColorTranslator.FromHtml("#EAEAE8")
  174. Else
  175. sender.BackColor = ColorTranslator.FromHtml("Transparent")
  176. End If
  177. End Sub
  178. Sub ColoreventoInstrumento(sender As Object, e As EventArgs)
  179. If (sender.checked) Then
  180. sender.BackColor = ColorTranslator.FromHtml("#EAEAE8")
  181. Else
  182. sender.BackColor = ColorTranslator.FromHtml("Transparent")
  183. End If
  184. End Sub
  185. Sub CambioCheckTodosEmpresa()
  186. Dim ContadorPrimario As Integer = Me.flpEmpresa.Controls.Count - 1
  187. Dim UltimoCheck As Boolean = True
  188. For Each xCheckBox In Me.flpEmpresa.Controls
  189. If TypeOf xCheckBox Is CheckBox Then
  190. Dim yCheckBox As New CheckBox
  191. yCheckBox = xCheckBox
  192. If xCheckBox.TabIndex = ContadorPrimario Then
  193. If Not yCheckBox.Checked Then
  194. UltimoCheck = False
  195. End If
  196. End If
  197. End If
  198. Next
  199. If UltimoCheck Then
  200. For Each xCheckBox In Me.flpEmpresa.Controls
  201. If TypeOf xCheckBox Is CheckBox Then
  202. Dim yCheckBox As New CheckBox
  203. yCheckBox = xCheckBox
  204. yCheckBox.Checked = True
  205. End If
  206. Next
  207. ElseIf Not UltimoCheck Then
  208. For Each xCheckBox In Me.flpEmpresa.Controls
  209. If TypeOf xCheckBox Is CheckBox Then
  210. Dim yCheckBox As New CheckBox
  211. yCheckBox = xCheckBox
  212. yCheckBox.Checked = False
  213. End If
  214. Next
  215. End If
  216. End Sub
  217. Sub TodosCheckEmpresa(sender As Object, e As EventArgs)
  218. Dim ContadorPrimario As Integer = Me.flpEmpresa.Controls.Count - 1
  219. Dim TodosCheck As Boolean = True
  220. If Not sender.name = "TodosEmpresa" Then
  221. For Each xCheckBox In Me.flpEmpresa.Controls
  222. If TypeOf xCheckBox Is CheckBox Then
  223. Dim yCheckBox As New CheckBox
  224. yCheckBox = xCheckBox
  225. If Not yCheckBox.TabIndex = ContadorPrimario Then
  226. If Not yCheckBox.Checked Then
  227. TodosCheck = False
  228. End If
  229. End If
  230. If yCheckBox.TabIndex = ContadorPrimario Then
  231. If Not TodosCheck Then
  232. yCheckBox.Checked = False
  233. Else
  234. yCheckBox.Checked = True
  235. End If
  236. End If
  237. End If
  238. Next
  239. End If
  240. End Sub
  241. ''''''''Instrumentos ''''''''''
  242. Sub CambioCheckTodosinstrumentos()
  243. Dim ContadorPrimario As Integer = Me.flpInstrumento.Controls.Count - 1
  244. Dim UltimoCheck As Boolean = True
  245. For Each xCheckBox In Me.flpInstrumento.Controls
  246. If TypeOf xCheckBox Is CheckBox Then
  247. Dim yCheckBox As New CheckBox
  248. yCheckBox = xCheckBox
  249. If xCheckBox.TabIndex = ContadorPrimario Then
  250. If Not yCheckBox.Checked Then
  251. UltimoCheck = False
  252. End If
  253. End If
  254. End If
  255. Next
  256. If UltimoCheck Then
  257. For Each xCheckBox In Me.flpInstrumento.Controls
  258. If TypeOf xCheckBox Is CheckBox Then
  259. Dim yCheckBox As New CheckBox
  260. yCheckBox = xCheckBox
  261. yCheckBox.Checked = True
  262. End If
  263. Next
  264. ElseIf Not UltimoCheck Then
  265. For Each xCheckBox In Me.flpInstrumento.Controls
  266. If TypeOf xCheckBox Is CheckBox Then
  267. Dim yCheckBox As New CheckBox
  268. yCheckBox = xCheckBox
  269. yCheckBox.Checked = False
  270. End If
  271. Next
  272. End If
  273. End Sub
  274. Sub TodosCheckInstrumentos(sender As Object, e As EventArgs)
  275. Dim ContadorPrimario As Integer = Me.flpInstrumento.Controls.Count - 1
  276. Dim TodosCheck As Boolean = True
  277. If Not sender.name = "TodosInstrumentos" Then
  278. For Each xCheckBox In Me.flpInstrumento.Controls
  279. If TypeOf xCheckBox Is CheckBox Then
  280. Dim yCheckBox As New CheckBox
  281. yCheckBox = xCheckBox
  282. If Not yCheckBox.TabIndex = ContadorPrimario Then
  283. If Not yCheckBox.Checked Then
  284. TodosCheck = False
  285. End If
  286. End If
  287. If yCheckBox.TabIndex = ContadorPrimario Then
  288. If Not TodosCheck Then
  289. yCheckBox.Checked = False
  290. Else
  291. yCheckBox.Checked = True
  292. End If
  293. End If
  294. End If
  295. Next
  296. End If
  297. End Sub
  298. Private Sub RadioButton3_CheckedChanged(sender As Object, e As EventArgs) Handles rdbAmbosRenta.CheckedChanged
  299. End Sub
  300. Private Sub CheckBox1_CheckedChanged(sender As Object, e As EventArgs)
  301. End Sub
  302. Private Sub rdbFecha_CheckedChanged(sender As Object, e As EventArgs) Handles rdbFecha.CheckedChanged
  303. If rdbFecha.Checked Then
  304. SoloFecha = dtpFecha.Value
  305. TipoFecha = "F"
  306. Else
  307. TipoFecha = "N"
  308. End If
  309. End Sub
  310. Private Sub rdbRangoFechas_CheckedChanged(sender As Object, e As EventArgs) Handles rdbRangoFechas.CheckedChanged
  311. If rdbRangoFechas.Checked Then
  312. TipoFecha = "FR"
  313. FechaInicial = dtpFechaInicial.Value
  314. FechaFinal = dtpFechaFinal.Value
  315. Else
  316. TipoFecha = "N"
  317. End If
  318. End Sub
  319. Private Sub rdbDeshabilitarFecha_CheckedChanged(sender As Object, e As EventArgs) Handles rdbDeshabilitarFecha.CheckedChanged
  320. If rdbDeshabilitarFecha.Checked Then
  321. TipoFecha = "N"
  322. End If
  323. End Sub
  324. Private Sub flpInstrumento_Paint(sender As Object, e As PaintEventArgs) Handles flpInstrumento.Paint
  325. End Sub
  326. Private Sub chkPortafolio_CheckedChanged(sender As Object, e As EventArgs) Handles chkPortafolio.CheckedChanged
  327. If chkPortafolio.Checked Then
  328. Portafolio = "Activo"
  329. Else
  330. Portafolio = "Desactivo"
  331. End If
  332. End Sub
  333. Private Sub chkPortafolioSinLiquidez_CheckedChanged(sender As Object, e As EventArgs) Handles chkPortafolioSinLiquidez.CheckedChanged
  334. End Sub
  335. Private Sub rdbVariable_CheckedChanged(sender As Object, e As EventArgs) Handles rdbVariable.CheckedChanged
  336. End Sub
  337. Private Sub rdbFija_CheckedChanged(sender As Object, e As EventArgs) Handles rdbFija.CheckedChanged
  338. End Sub
  339. Private Sub chkInternacional_CheckedChanged(sender As Object, e As EventArgs)
  340. End Sub
  341. Private Sub chkVigentes_CheckedChanged(sender As Object, e As EventArgs)
  342. End Sub
  343. Private Sub rdbPendientes_CheckedChanged(sender As Object, e As EventArgs) Handles rdbPendientes.CheckedChanged
  344. End Sub
  345. Private Sub rdbAprobado_CheckedChanged(sender As Object, e As EventArgs) Handles rdbAprobado.CheckedChanged
  346. End Sub
  347. Private Sub rdbRechazado_CheckedChanged(sender As Object, e As EventArgs) Handles rdbRechazado.CheckedChanged
  348. End Sub
  349. Private Sub rdbPAR_CheckedChanged(sender As Object, e As EventArgs) Handles rdbTodosEstado.CheckedChanged
  350. End Sub
  351. Private Sub rdbEmpresas_CheckedChanged(sender As Object, e As EventArgs)
  352. End Sub
  353. Private Sub rdbInstrumento_CheckedChanged(sender As Object, e As EventArgs)
  354. End Sub
  355. Private Sub rdbTiempo_CheckedChanged(sender As Object, e As EventArgs)
  356. End Sub
  357. Private Sub rdbTEI_CheckedChanged(sender As Object, e As EventArgs)
  358. End Sub
  359. Private Sub dgvRendimientos_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles dgvRendimientos.CellContentClick
  360. End Sub
  361. Private Sub TbRendimientos_Click(sender As Object, e As EventArgs) Handles TbRendimientoGeneral.Click
  362. End Sub
  363. Private Sub TbcRendimiento_TabIndexChanged(sender As Object, e As EventArgs) Handles TbcRendimiento.TabIndexChanged
  364. End Sub
  365. Private Sub TbcRendimiento_SelectedIndexChanged(sender As Object, e As EventArgs) Handles TbcRendimiento.SelectedIndexChanged
  366. If rdbRendimientoGeneral.Checked Then
  367. If TbcRendimiento.SelectedIndex = 1 Then
  368. BloqueoPortafolio()
  369. CargarDatos()
  370. End If
  371. Else
  372. If TbcRendimiento.SelectedIndex = 1 Then
  373. BloqueoPortafolio()
  374. RendimientoMensual()
  375. End If
  376. End If
  377. End Sub
  378. Private Sub BloqueoPortafolio()
  379. If Portafolio = "Desactivo" Then
  380. lblPortTotal.Visible = False
  381. txtPortTotal.Visible = False
  382. Else
  383. lblPortTotal.Visible = True
  384. txtPortTotal.Visible = True
  385. End If
  386. End Sub
  387. Sub RendimientoMensual()
  388. Dim dt As New DataTable
  389. Dim TipoRendimiento As String = "Mensual"
  390. Dim Fecha1 As Date = dtpFechaInicialDiario.Value
  391. Dim Fecha2 As Date = dtpFechaFinalDiario.Value
  392. Dim Agrupado As String = String.Empty
  393. ActualizarListas()
  394. If String.IsNullOrEmpty(ListaAgrupada) Then
  395. Agrupado = "NO"
  396. Else
  397. Agrupado = "SI"
  398. End If
  399. dt = Rendimiento.CargarRendimientoDiario(Fecha1, Fecha2, TipoRendimiento, ListaEmpresa, ListaInstrumentos, ListaNacionalidad, ListaEstado,
  400. ListaVigencia, ListaTipoRenta, ListaAgrupada, Agrupado)
  401. AgregarPorcentajeRend(dt)
  402. dgvRendimientoMensual.DataSource = dt
  403. End Sub
  404. Sub AgregarPorcentajeRend(ByRef dt As DataTable)
  405. For Each rows As DataRow In dt.Rows
  406. rows("RendimientoTotal") = (Operaciones.ConvertirDecimal(rows("RendimientoTotal").ToString) * 100).ToString + " %"
  407. Next
  408. End Sub
  409. Sub AgregarPorcentajeRendDetalles(ByRef dt As DataTable)
  410. For Each rows As DataRow In dt.Rows
  411. If Not dt.Columns("Rendimiento") Is Nothing Then
  412. rows("Rendimiento") = (Operaciones.ConvertirDecimal(rows("Rendimiento").ToString) * 100).ToString + " %"
  413. End If
  414. If Not dt.Columns("RendimientoTotal") Is Nothing Then
  415. rows("RendimientoTotal") = (Operaciones.ConvertirDecimal(rows("RendimientoTotal").ToString) * 100).ToString + " %"
  416. End If
  417. If Not dt.Columns("Peso") Is Nothing Then
  418. rows("Peso") = (Operaciones.ConvertirDecimal(rows("Peso").ToString) * 100).ToString + " %"
  419. End If
  420. If Not dt.Columns("RendimientoPeso") Is Nothing Then
  421. rows("RendimientoPeso") = (Operaciones.ConvertirDecimal(rows("RendimientoPeso").ToString) * 100).ToString + " %"
  422. End If
  423. If Not dt.Columns("RendimientoGrupo") Is Nothing Then
  424. rows("RendimientoGrupo") = (Operaciones.ConvertirDecimal(rows("RendimientoGrupo").ToString) * 100).ToString + " %"
  425. End If
  426. Next
  427. End Sub
  428. Sub RendimientoDetalles()
  429. Dim dt As New DataTable
  430. Dim TipoRendimiento As String = "Detalles"
  431. ActualizarListas()
  432. Dim Fecha1 As Date = Date.Now.Date
  433. Dim Fecha2 As Date = Date.Now.Date
  434. Dim FechaAux As Date = Date.Now.Date
  435. Dim Agrupado As String = String.Empty
  436. Dim FechaInicial As Date = dtpFechaInicialDiario.Value
  437. Dim FechaFinal As Date = dtpFechaFinalDiario.Value
  438. If String.IsNullOrEmpty(ListaAgrupada) Then
  439. Agrupado = "NO"
  440. Else
  441. Agrupado = "SI"
  442. End If
  443. If rdbRendMensual.Checked Then
  444. If Not dgvRendimientoMensual.CurrentRow Is Nothing Then
  445. If String.IsNullOrEmpty(ListaAgrupada) Then
  446. Agrupado = "NO"
  447. Else
  448. Agrupado = "SI"
  449. End If
  450. If Not dgvRendimientoMensual.CurrentRow Is Nothing Then
  451. FechaAux = dgvRendimientoMensual.CurrentRow.Cells("FechaUltima").Value
  452. If FechaInicial.Month = FechaAux.Month And FechaInicial.Year = FechaAux.Year Then
  453. Fecha1 = FechaInicial
  454. Else
  455. Fecha1 = CDate("1/" + FechaAux.Month.ToString + "/" + FechaAux.Year.ToString)
  456. End If
  457. If FechaFinal.Month = FechaAux.Month And FechaFinal.Year = FechaAux.Year Then
  458. Fecha2 = FechaFinal
  459. Else
  460. Fecha2 = FechaAux
  461. End If
  462. End If
  463. dt = Rendimiento.CargarRendimientoDiario(Fecha1, Fecha2, TipoRendimiento, ListaEmpresa, ListaInstrumentos, ListaNacionalidad, ListaEstado,
  464. ListaVigencia, ListaTipoRenta, ListaAgrupada, Agrupado)
  465. AgregarPorcentajeRendDetalles(dt)
  466. dgvRendimientoDetalles.DataSource = dt
  467. Else
  468. MsgBox("Error al Cargar Registros")
  469. End If
  470. Else
  471. If Not dgvRendimientoDiario.CurrentRow Is Nothing Then
  472. FechaAux = dgvRendimientoDiario.CurrentRow.Cells("FechaIterada").Value
  473. Fecha1 = FechaAux
  474. Fecha2 = FechaAux
  475. dt = Rendimiento.CargarRendimientoDiario(Fecha1, Fecha2, TipoRendimiento, ListaEmpresa, ListaInstrumentos, ListaNacionalidad, ListaEstado,
  476. ListaVigencia, ListaTipoRenta, ListaAgrupada, Agrupado)
  477. AgregarPorcentajeRendDetalles(dt)
  478. dgvRendimientoDetalles.DataSource = dt
  479. Else
  480. MsgBox("Error al Cargar Registros")
  481. End If
  482. End If
  483. End Sub
  484. Sub RendimientoDiario()
  485. Dim dt As New DataTable
  486. Dim TipoRendimiento As String = "Diario"
  487. Dim Fecha1 As Date = Date.Now.Date
  488. Dim Fecha2 As Date = Date.Now.Date
  489. Dim FechaAux As Date = Date.Now.Date
  490. Dim Agrupado As String = String.Empty
  491. Dim FechaInicial As Date = dtpFechaInicialDiario.Value
  492. Dim FechaFinal As Date = dtpFechaFinalDiario.Value
  493. If String.IsNullOrEmpty(ListaAgrupada) Then
  494. Agrupado = "NO"
  495. Else
  496. Agrupado = "SI"
  497. End If
  498. If Not dgvRendimientoMensual.CurrentRow Is Nothing Then
  499. FechaAux = dgvRendimientoMensual.CurrentRow.Cells("FechaUltima").Value
  500. If FechaInicial.Month = FechaAux.Month And FechaInicial.Year = FechaAux.Year Then
  501. Fecha1 = FechaInicial
  502. Else
  503. Fecha1 = CDate("1/" + FechaAux.Month.ToString + "/" + FechaAux.Year.ToString)
  504. End If
  505. If FechaFinal.Month = FechaAux.Month And FechaFinal.Year = FechaAux.Year Then
  506. Fecha2 = FechaFinal
  507. Else
  508. Fecha2 = FechaAux
  509. End If
  510. dt = Rendimiento.CargarRendimientoDiario(Fecha1, Fecha2, TipoRendimiento, ListaEmpresa, ListaInstrumentos, ListaNacionalidad, ListaEstado,
  511. ListaVigencia, ListaTipoRenta, ListaAgrupada, Agrupado)
  512. AgregarPorcentajeRend(dt)
  513. dgvRendimientoDiario.DataSource = dt
  514. Else
  515. MsgBox("Error al Cargar Registros")
  516. End If
  517. End Sub
  518. Private Sub dtpFechaInicial_ValueChanged(sender As Object, e As EventArgs) Handles dtpFechaInicial.ValueChanged
  519. FechaInicial = dtpFechaInicial.Value
  520. FechaFinal = dtpFechaFinal.Value
  521. End Sub
  522. Private Sub dtpFechaFinal_ValueChanged(sender As Object, e As EventArgs) Handles dtpFechaFinal.ValueChanged
  523. FechaInicial = dtpFechaInicial.Value
  524. FechaFinal = dtpFechaFinal.Value
  525. End Sub
  526. Private Sub dtpFecha_ValueChanged(sender As Object, e As EventArgs) Handles dtpFecha.ValueChanged
  527. SoloFecha = dtpFecha.Value
  528. End Sub
  529. Private Sub rdbInternacionales_CheckedChanged(sender As Object, e As EventArgs) Handles rdbInternacionales.CheckedChanged
  530. End Sub
  531. Private Sub rdbVigente_CheckedChanged(sender As Object, e As EventArgs) Handles rdbVigente.CheckedChanged
  532. End Sub
  533. Private Sub rdbVencido_CheckedChanged(sender As Object, e As EventArgs) Handles rdbVencido.CheckedChanged
  534. End Sub
  535. Private Sub rdbVencidoAmbos_CheckedChanged(sender As Object, e As EventArgs) Handles rdbVencidoAmbos.CheckedChanged
  536. End Sub
  537. Private Sub rdbAmbosPais_CheckedChanged(sender As Object, e As EventArgs) Handles rdbAmbosPais.CheckedChanged
  538. End Sub
  539. Private Sub rdbNacionales_CheckedChanged(sender As Object, e As EventArgs) Handles rdbNacionales.CheckedChanged
  540. End Sub
  541. Private Sub txtPortTotal_TextChanged(sender As Object, e As EventArgs) Handles txtPortTotal.TextChanged
  542. End Sub
  543. Private Sub txtRendimientos_TextChanged(sender As Object, e As EventArgs) Handles txtRendimientos.TextChanged
  544. End Sub
  545. Private Sub rdbRevision_CheckedChanged(sender As Object, e As EventArgs) Handles rdbRevision.CheckedChanged
  546. End Sub
  547. Private Sub rdbCancelada_CheckedChanged(sender As Object, e As EventArgs) Handles rdbCancelada.CheckedChanged
  548. End Sub
  549. Sub AgruparSeleccionado()
  550. Dim ListaAgrupada As String = String.Empty
  551. For Each check As CheckBox In grpAgrupamiento.Controls
  552. Dim Valor As String = String.Empty
  553. If check.Checked Then
  554. If check.Text = "Empresa" Then
  555. Valor = "Empresa"
  556. ElseIf check.Text = "Instrumento" Then
  557. Valor = "Instrumento"
  558. ElseIf check.Text = "Nacionalidad" Then
  559. Valor = "Nacionalidad"
  560. ElseIf check.Text = "Estado" Then
  561. Valor = "Estado"
  562. ElseIf check.Text = "Fecha" Then
  563. Valor = "Fecha"
  564. ElseIf check.Text = "TipoRenta" Then
  565. Valor = "TipoRenta"
  566. ElseIf check.Text = "Vigencia" Then
  567. Valor = "Vigencia"
  568. End If
  569. If String.IsNullOrEmpty(ListaAgrupada) Then
  570. ListaAgrupada = Valor
  571. Else
  572. ListaAgrupada += "," + Valor
  573. End If
  574. End If
  575. Next
  576. Lista = ListaAgrupada
  577. End Sub
  578. Private Sub chkEmpresa_CheckedChanged(sender As Object, e As EventArgs) Handles chkEmpresa.CheckedChanged
  579. AgruparSeleccionado()
  580. CargarDatos()
  581. End Sub
  582. Private Sub chkInstrumento_CheckedChanged(sender As Object, e As EventArgs) Handles chkInstrumento.CheckedChanged
  583. AgruparSeleccionado()
  584. CargarDatos()
  585. End Sub
  586. Private Sub chkNacionalidad_CheckedChanged(sender As Object, e As EventArgs) Handles chkNacionalidad.CheckedChanged
  587. AgruparSeleccionado()
  588. CargarDatos()
  589. End Sub
  590. Private Sub chkEstado_CheckedChanged(sender As Object, e As EventArgs) Handles chkEstado.CheckedChanged
  591. AgruparSeleccionado()
  592. CargarDatos()
  593. End Sub
  594. Private Sub chkFecha_CheckedChanged(sender As Object, e As EventArgs) Handles chkFecha.CheckedChanged
  595. AgruparSeleccionado()
  596. CargarDatos()
  597. End Sub
  598. Private Sub chkVigencia_CheckedChanged(sender As Object, e As EventArgs) Handles chkVigencia.CheckedChanged
  599. AgruparSeleccionado()
  600. CargarDatos()
  601. End Sub
  602. Private Sub chkTipoRenta_CheckedChanged(sender As Object, e As EventArgs) Handles chkTipoRenta.CheckedChanged
  603. AgruparSeleccionado()
  604. CargarDatos()
  605. End Sub
  606. Sub TipoRendimiento()
  607. If rdbRendimientoGeneral.Checked Then
  608. grpFechas.Enabled = True
  609. grpVigente.Enabled = True
  610. grpMostrarTotales.Enabled = True
  611. TbRendimientoDiario.Parent = Nothing
  612. TbRendimientoGeneral.Parent = TbcRendimiento
  613. Else
  614. grpFechas.Enabled = False
  615. grpVigente.Enabled = False
  616. grpMostrarTotales.Enabled = False
  617. TbRendimientoGeneral.Parent = Nothing
  618. TbRendimientoDiario.Parent = TbcRendimiento
  619. End If
  620. End Sub
  621. Private Sub rdbRendimientoGeneral_CheckedChanged(sender As Object, e As EventArgs) Handles rdbRendimientoGeneral.CheckedChanged
  622. TipoRendimiento()
  623. End Sub
  624. Private Sub rdbRendimientoDiario_CheckedChanged(sender As Object, e As EventArgs) Handles rdbRendimientoDiario.CheckedChanged
  625. TipoRendimiento()
  626. End Sub
  627. Sub OcultarColumnasRendimientoGenerar()
  628. If Not dgvRendimientoDetalles.Columns("CodigoEmpresa") Is Nothing Then
  629. dgvRendimientoDetalles.Columns("CodigoEmpresa").Visible = False
  630. End If
  631. If Not dgvRendimientoDetalles.Columns("CodigoInstrumento") Is Nothing Then
  632. dgvRendimientoDetalles.Columns("CodigoInstrumento").Visible = False
  633. End If
  634. If Not dgvRendimientoDetalles.Columns("Pais") Is Nothing Then
  635. dgvRendimientoDetalles.Columns("Pais").Visible = False
  636. End If
  637. End Sub
  638. Sub ActualizarListas()
  639. EmpresaRendimientoDiario()
  640. InstrumentoRendimientoDiario()
  641. NacionalidadRendimientoDiario()
  642. EstadoRendimientoDiario()
  643. VigenciaRendimientoDiario()
  644. TipoRentaRendimientoDiario()
  645. AgruparRendimientoDiario()
  646. End Sub
  647. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
  648. RendimientoDetalles()
  649. OcultarColumnasRendimientoGenerar()
  650. End Sub
  651. Private Sub btnVer_Click(sender As Object, e As EventArgs) Handles btnVer.Click
  652. RendimientoDiario()
  653. End Sub
  654. Sub EmpresaRendimientoDiario()
  655. Dim ListaAgrupada As String = String.Empty
  656. For Each check As CheckBox In flpEmpresa.Controls
  657. Dim Valor As String = String.Empty
  658. If check.Checked Then
  659. If Not check.Name.ToString = "TodosEmpresa" Then
  660. Valor = check.Name.ToString
  661. If String.IsNullOrEmpty(ListaAgrupada) Then
  662. ListaAgrupada = Valor
  663. Else
  664. ListaAgrupada += "," + Valor
  665. End If
  666. End If
  667. End If
  668. Next
  669. ListaEmpresa = ListaAgrupada
  670. End Sub
  671. Sub InstrumentoRendimientoDiario()
  672. Dim ListaAgrupada As String = String.Empty
  673. For Each check As CheckBox In flpInstrumento.Controls
  674. Dim Valor As String = String.Empty
  675. If check.Checked Then
  676. If Not check.Name.ToString = "TodosInstrumentos" Then
  677. Valor = check.Name.ToString
  678. If String.IsNullOrEmpty(ListaAgrupada) Then
  679. ListaAgrupada = Valor
  680. Else
  681. ListaAgrupada += "," + Valor
  682. End If
  683. End If
  684. End If
  685. Next
  686. ListaInstrumentos = ListaAgrupada
  687. End Sub
  688. Sub NacionalidadRendimientoDiario()
  689. If rdbNacionales.Checked Then
  690. ListaNacionalidad = "Nacional"
  691. ElseIf rdbInternacionales.Checked Then
  692. ListaNacionalidad = "Internacional"
  693. ElseIf rdbAmbosPais.Checked Then
  694. ListaNacionalidad = "Todos"
  695. End If
  696. End Sub
  697. Sub EstadoRendimientoDiario()
  698. If rdbVigente.Checked Then
  699. ListaEstado = "A"
  700. ElseIf rdbVencido.Checked Then
  701. ListaEstado = "C"
  702. ElseIf rdbVencidoAmbos.Checked Then
  703. ListaEstado = "A,C"
  704. End If
  705. End Sub
  706. Sub VigenciaRendimientoDiario()
  707. If rdbPendientes.Checked Then
  708. ListaVigencia = "P"
  709. ElseIf rdbRevision.Checked Then
  710. ListaVigencia = "V"
  711. ElseIf rdbAprobado.Checked Then
  712. ListaVigencia = "A"
  713. ElseIf rdbCancelada.Checked Then
  714. ListaVigencia = "C"
  715. ElseIf rdbRechazado.Checked Then
  716. ListaVigencia = "R"
  717. ElseIf rdbTodosEstado.Checked Then
  718. ListaVigencia = "P,C,V,A,R"
  719. End If
  720. End Sub
  721. Sub TipoRentaRendimientoDiario()
  722. If rdbVariable.Checked Then
  723. ListaTipoRenta = "V"
  724. ElseIf rdbFija.Checked Then
  725. ListaTipoRenta = "F"
  726. ElseIf rdbAmbosRenta.Checked Then
  727. ListaTipoRenta = "V,F"
  728. End If
  729. End Sub
  730. Sub AgruparRendimientoDiario()
  731. Dim ListaAgrupada As String = String.Empty
  732. For Each check As CheckBox In grpAgruparRendDiario.Controls
  733. Dim Valor As String = String.Empty
  734. If check.Checked Then
  735. If check.Text = "Empresa" Then
  736. Valor = "Empresa"
  737. ElseIf check.Text = "Instrumento" Then
  738. Valor = "Instrumento"
  739. ElseIf check.Text = "Nacionalidad" Then
  740. Valor = "Nacionalidad"
  741. ElseIf check.Text = "Estado" Then
  742. Valor = "Estado"
  743. ElseIf check.Text = "Fecha" Then
  744. Valor = "Fecha"
  745. ElseIf check.Text = "TipoRenta" Then
  746. Valor = "TipoRenta"
  747. ElseIf check.Text = "Vigencia" Then
  748. Valor = "Vigencia"
  749. End If
  750. If String.IsNullOrEmpty(ListaAgrupada) Then
  751. ListaAgrupada = Valor
  752. Else
  753. ListaAgrupada += "," + Valor
  754. End If
  755. End If
  756. Next
  757. Me.ListaAgrupada = ListaAgrupada
  758. End Sub
  759. Private Sub Button2_Click(sender As Object, e As EventArgs) Handles btnActualizar.Click
  760. ActualizarLimpiar()
  761. End Sub
  762. Private Sub TbRendimientoDiario_Click(sender As Object, e As EventArgs) Handles TbRendimientoDiario.Click
  763. End Sub
  764. Sub ActualizarLimpiar()
  765. dgvRendimientoDetalles.Columns.Clear()
  766. dgvRendimientoDiario.Columns.Clear()
  767. RendimientoMensual()
  768. End Sub
  769. Sub OcultarColumnas()
  770. If Not dgvRendimientos.Columns("CodigoEmpresa") Is Nothing Then
  771. dgvRendimientos.Columns("CodigoEmpresa").Visible = False
  772. End If
  773. If Not dgvRendimientos.Columns("CodigoInstrumento") Is Nothing Then
  774. dgvRendimientos.Columns("CodigoInstrumento").Visible = False
  775. End If
  776. If Not dgvRendimientos.Columns("CodigoPais") Is Nothing Then
  777. dgvRendimientos.Columns("CodigoPais").Visible = False
  778. End If
  779. End Sub
  780. End Class