LETESDAO.vb 33 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001
  1. Imports System.Data.SqlClient
  2. Public Class LETESDAO
  3. Public Function Nuevo(ByVal objLete As LETESCE) As Integer
  4. Dim retorno As Integer
  5. Return retorno
  6. End Function
  7. Public Function Nuevo(ByVal coleccion As Collection)
  8. Dim objCon As New Conexion
  9. Dim retorno As Integer = -1
  10. Dim query As String
  11. Dim Tabla As String = ""
  12. Dim cn As SqlConnection = objCon.Conectar
  13. If cn.State = ConnectionState.Closed Then
  14. cn.Open()
  15. End If
  16. Dim cmd As SqlCommand
  17. query = "INSERT INTO [dbo].[LET0]
  18. (
  19. [ValNom]
  20. ,[FOper]
  21. ,[FLiq]
  22. ,[RendBruto]
  23. ,[Plazo])
  24. VALUES
  25. (@ValNom
  26. ,@FOper
  27. ,@FLiq
  28. ,@RendBruto
  29. ,@Plazo
  30. )"
  31. cmd = New SqlCommand
  32. cmd.CommandText = query
  33. With cmd.Parameters
  34. .Add("@ValNom", SqlDbType.Decimal).Value = coleccion(1)
  35. .Add("@FOper", SqlDbType.DateTime).Value = coleccion(2)
  36. .Add("@FLiq", SqlDbType.DateTime).Value = coleccion(3)
  37. .Add("@RendBruto", SqlDbType.Decimal).Value = coleccion(4)
  38. .Add("@Plazo", SqlDbType.Int).Value = coleccion(5)
  39. End With
  40. cmd.Connection = cn
  41. retorno = cmd.ExecuteNonQuery
  42. cn.Close()
  43. Return retorno
  44. End Function
  45. Public Function ActualizarLETE(ByVal coleccion As Collection, ByVal Instrumento As String)
  46. Dim objCon As New Conexion
  47. Dim retorno As Integer
  48. Dim sql As String
  49. Dim cmd As SqlCommand
  50. Dim cn As SqlConnection = objCon.Conectar
  51. If cn.State = ConnectionState.Closed Then
  52. cn.Open()
  53. End If
  54. If (Instrumento = "LETE") Then
  55. sql = "UPDATE [dbo].[LET0] SET
  56. [ValNom]=@ValNom
  57. ,[FOper]=@FOper
  58. ,[FLiq]=@FLiq
  59. ,[RendBruto]=@RendBruto
  60. ,[Plazo]=@Plazo
  61. ,[ComisionCasa]=@ComisionCasa
  62. ,[ComisionBolsa]=@ComisionBolsa
  63. ,[CasasCorredoras]=@CasasCorredoras
  64. ,[Periodic]=@Periodic
  65. ,[AnioBase]=@AnioBase
  66. ,[ValTrans] = @ValTrans
  67. ,[Precio] = @Precio
  68. ,[TotPagar]= @TotPagar
  69. ,[RendNeto] = @RendNeto
  70. ,[IngrBruto] =@IngrBruto
  71. ,[IngrNeto] =@IngrNeto
  72. ,[ComisionCasaValor] =@ComisionCasaValor
  73. ,[ComisionBolsaValor] =@ComisionBolsaValor
  74. ,[FUlt] =@FUlt
  75. ,[FRed] =@FRed
  76. ,[FVenc] =@FVenc
  77. where [CodInv]= @CodInv
  78. "
  79. ElseIf (Instrumento = "PBUR") Then
  80. sql = "UPDATE [dbo].[PBUR] SET
  81. [ValNom]=@ValNom
  82. ,[FOper]=@FOper
  83. ,[FLiq]=@FLiq
  84. ,[RendBruto]=@RendBruto
  85. ,[Plazo]=@Plazo
  86. ,[ComisionCasa]=@ComisionCasa
  87. ,[ComisionBolsa]=@ComisionBolsa
  88. ,[CasasCorredoras]=@CasasCorredoras
  89. ,[Periodic]=@Periodic
  90. ,[AnioBase]=@AnioBase
  91. ,[ValorPar]= @ValorPar
  92. ,[FechaUltima]=@FechaUltima
  93. ,[ValTrans] = @ValTrans
  94. ,[Precio] = @Precio
  95. ,[TotPagar]= @TotPagar
  96. ,[RendNeto] = @RendNeto
  97. ,[IngrBruto] =@IngrBruto
  98. ,[IngrNeto] =@IngrNeto
  99. ,[ComisionCasaValor] =@ComisionCasaValor
  100. ,[ComisionBolsaValor] =@ComisionBolsaValor
  101. ,[FUlt] =@FUlt
  102. ,[FRed] =@FRed
  103. ,[FVenc] =@FVenc
  104. ,[IntAcumulado]=@IntAcumulado
  105. where [CodInv]= @CodInv
  106. "
  107. ElseIf (Instrumento = "VCN") Then
  108. sql = "UPDATE [dbo].[VCN] SET
  109. [ValNom]=@ValNom
  110. ,[FOper]=@FOper
  111. ,[FLiq]=@FLiq
  112. ,[RendBruto]=@RendBruto
  113. ,[Plazo]=@Plazo
  114. ,[ComisionCasa]=@ComisionCasa
  115. ,[ComisionBolsa]=@ComisionBolsa
  116. ,[CasasCorredoras]=@CasasCorredoras
  117. ,[Periodic]=@Periodic
  118. ,[AnioBase]=@AnioBase
  119. ,[ValorPar]= @ValorPar
  120. ,[FechaUltima]=@FechaUltima
  121. ,[OtrosCostos]=@OtrosCostos
  122. ,[ValTrans] = @ValTrans
  123. ,[Precio] = @Precio
  124. ,[TotPagar]= @TotPagar
  125. ,[RendNeto] = @RendNeto
  126. ,[IngrBruto] =@IngrBruto
  127. ,[IngrNeto] =@IngrNeto
  128. ,[ComisionCasaValor] =@ComisionCasaValor
  129. ,[ComisionBolsaValor] =@ComisionBolsaValor
  130. ,[FUlt] =@FUlt
  131. ,[FRed] =@FRed
  132. ,[FVenc] =@FVenc
  133. ,[IntAcumulado]=@IntAcumulado
  134. where [CodInv]= @CodInv
  135. "
  136. ElseIf (Instrumento = "CETE") Then
  137. sql = "UPDATE [dbo].[CET0] SET
  138. [ValNom]=@ValNom
  139. ,[FOper]= @FOper
  140. ,[FLiq]=@FLiq
  141. ,[RendBruto]= @RendBruto
  142. ,[Plazo]=@Plazo
  143. ,[ComisionCasa]= @ComisionCasa
  144. ,[ComisionBolsa]= @ComisionBolsa
  145. ,[CasasCorredoras]= @CasasCorredoras
  146. ,[Periodic]= @Periodic
  147. ,[AnioBase]=@AnioBase
  148. ,[FechaUltima]=@FechaUltima
  149. ,[ValTrans] = @ValTrans
  150. ,[Precio] = @Precio
  151. ,[TotPagar]= @TotPagar
  152. ,[RendNeto] = @RendNeto
  153. ,[IngrBruto] =@IngrBruto
  154. ,[IngrNeto] =@IngrNeto
  155. ,[ComisionCasaValor] =@ComisionCasaValor
  156. ,[ComisionBolsaValor] =@ComisionBolsaValor
  157. ,[FUlt] =@FUlt
  158. ,[FRed] =@FRed
  159. ,[FVenc] =@FVenc
  160. ,[IntAcumulado]=@IntAcumulado
  161. where [CodInv]= @CodInv
  162. "
  163. End If
  164. 'Try
  165. cmd = New SqlCommand
  166. cmd.CommandText = sql
  167. With cmd.Parameters
  168. .Add("@ValNom", SqlDbType.Decimal).Value = coleccion(1)
  169. .Add("@FOper", SqlDbType.DateTime).Value = coleccion(2)
  170. .Add("@FLiq", SqlDbType.DateTime).Value = coleccion(3)
  171. .Add("@RendBruto", SqlDbType.Decimal).Value = coleccion(4)
  172. .Add("@Plazo", SqlDbType.Int).Value = CInt(coleccion(5))
  173. .Add("@CodInv", SqlDbType.VarChar).Value = coleccion(6)
  174. .Add("@ComisionCasa", SqlDbType.Decimal).Value = CDec(coleccion(7))
  175. .Add("@ComisionBolsa", SqlDbType.Decimal).Value = CDec(coleccion(8))
  176. .Add("@Periodic", SqlDbType.VarChar).Value = coleccion(9)
  177. .Add("@AnioBase", SqlDbType.Int).Value = CInt(coleccion(10))
  178. .Add("@CasasCorredoras", SqlDbType.VarChar).Value = coleccion(11)
  179. If Instrumento = "LETE" Then
  180. .Add("ValTrans", SqlDbType.Float).Value = coleccion(12)
  181. .Add("Precio", SqlDbType.Float).Value = coleccion(13)
  182. .Add("TotPagar", SqlDbType.Float).Value = coleccion(14)
  183. .Add("RendNeto", SqlDbType.Float).Value = coleccion(15)
  184. .Add("IngrBruto", SqlDbType.Float).Value = coleccion(16)
  185. .Add("IngrNeto", SqlDbType.Float).Value = coleccion(17)
  186. .Add("ComisionCasaValor", SqlDbType.Float).Value = coleccion(18)
  187. .Add("ComisionBolsaValor", SqlDbType.Float).Value = coleccion(19)
  188. .Add("FUlt", SqlDbType.Date).Value = coleccion(20)
  189. .Add("FRed", SqlDbType.Date).Value = coleccion(21)
  190. .Add("FVenc", SqlDbType.Date).Value = coleccion(22)
  191. End If
  192. If (Instrumento = "VCN" Or Instrumento = "PBUR") Then
  193. .Add("@ValorPar", SqlDbType.Bit).Value = CByte(coleccion(12))
  194. .Add("@FechaUltima", SqlDbType.DateTime).Value = CDate(coleccion(13))
  195. ElseIf Instrumento = "CETE" Then
  196. .Add("@FechaUltima", SqlDbType.DateTime).Value = CDate(coleccion(12))
  197. .Add("ValTrans", SqlDbType.Float).Value = coleccion(13)
  198. .Add("Precio", SqlDbType.Float).Value = coleccion(14)
  199. .Add("TotPagar", SqlDbType.Float).Value = coleccion(15)
  200. .Add("RendNeto", SqlDbType.Float).Value = coleccion(16)
  201. .Add("IngrBruto", SqlDbType.Float).Value = coleccion(17)
  202. .Add("IngrNeto", SqlDbType.Float).Value = coleccion(18)
  203. .Add("ComisionCasaValor", SqlDbType.Float).Value = coleccion(19)
  204. .Add("ComisionBolsaValor", SqlDbType.Float).Value = coleccion(20)
  205. .Add("FUlt", SqlDbType.Date).Value = coleccion(21)
  206. .Add("FRed", SqlDbType.Date).Value = coleccion(22)
  207. .Add("FVenc", SqlDbType.Date).Value = coleccion(23)
  208. .Add("@IntAcumulado", SqlDbType.Float).Value = coleccion(24)
  209. End If
  210. If Instrumento = "VCN" Then
  211. .Add("@OtrosCostos", SqlDbType.Decimal).Value = CDec(coleccion(14))
  212. .Add("ValTrans", SqlDbType.Float).Value = coleccion(15)
  213. .Add("Precio", SqlDbType.Float).Value = coleccion(16)
  214. .Add("TotPagar", SqlDbType.Float).Value = coleccion(17)
  215. .Add("RendNeto", SqlDbType.Float).Value = coleccion(18)
  216. .Add("IngrBruto", SqlDbType.Float).Value = coleccion(19)
  217. .Add("IngrNeto", SqlDbType.Float).Value = coleccion(20)
  218. .Add("ComisionCasaValor", SqlDbType.Float).Value = coleccion(21)
  219. .Add("ComisionBolsaValor", SqlDbType.Float).Value = coleccion(22)
  220. .Add("FUlt", SqlDbType.Date).Value = coleccion(23)
  221. .Add("FRed", SqlDbType.Date).Value = coleccion(24)
  222. .Add("FVenc", SqlDbType.Date).Value = coleccion(25)
  223. .Add("@IntAcumulado", SqlDbType.Float).Value = coleccion(26)
  224. End If
  225. If Instrumento = "PBUR" Then
  226. .Add("ValTrans", SqlDbType.Float).Value = coleccion(14)
  227. .Add("Precio", SqlDbType.Float).Value = coleccion(15)
  228. .Add("TotPagar", SqlDbType.Float).Value = coleccion(16)
  229. .Add("RendNeto", SqlDbType.Float).Value = coleccion(17)
  230. .Add("IngrBruto", SqlDbType.Float).Value = coleccion(18)
  231. .Add("IngrNeto", SqlDbType.Float).Value = coleccion(19)
  232. .Add("ComisionCasaValor", SqlDbType.Float).Value = coleccion(20)
  233. .Add("ComisionBolsaValor", SqlDbType.Float).Value = coleccion(21)
  234. .Add("FUlt", SqlDbType.Date).Value = coleccion(22)
  235. .Add("FRed", SqlDbType.Date).Value = coleccion(23)
  236. .Add("FVenc", SqlDbType.Date).Value = coleccion(24)
  237. .Add("@IntAcumulado", SqlDbType.Float).Value = coleccion(25)
  238. End If
  239. End With
  240. cmd.Connection = cn
  241. retorno = cmd.ExecuteNonQuery
  242. MsgBox("Registro Modificado con éxito")
  243. 'Catch ex As Exception
  244. ' MsgBox("Error al modificar el registro")
  245. 'End Try
  246. cn.Close()
  247. Return retorno
  248. End Function
  249. Public Function NuevoIngreso(ByVal coleccion As Collection, ByVal Instrumento As String)
  250. Dim objCon As New Conexion
  251. Dim retorno As Integer
  252. Dim sql As String
  253. Dim cmd As SqlCommand
  254. Dim cn As SqlConnection = objCon.Conectar
  255. If cn.State = ConnectionState.Closed Then
  256. cn.Open()
  257. End If
  258. If (Instrumento = "LETE") Then
  259. sql = "INSERT INTO [dbo].[LET0](
  260. [CodInv]
  261. ,[ValNom]
  262. ,[FOper]
  263. ,[FLiq]
  264. ,[RendBruto]
  265. ,[Plazo]
  266. ,[ComisionCasa]
  267. ,[ComisionBolsa]
  268. ,[CasasCorredoras]
  269. ,[Periodic]
  270. ,[AnioBase]
  271. ,[ValTrans]
  272. ,[Precio]
  273. ,[TotPagar]
  274. ,[RendNeto]
  275. ,[IngrBruto]
  276. ,[IngrNeto]
  277. ,[ComisionCasaValor]
  278. ,[ComisionBolsaValor]
  279. ,[FUlt]
  280. ,[FRed]
  281. ,[FVenc]
  282. )
  283. VALUES(
  284. @CodInv
  285. ,@ValNom
  286. ,@FOper
  287. ,@FLiq
  288. ,@RendBruto
  289. ,@Plazo
  290. ,@ComisionCasa
  291. ,@ComisionBolsa
  292. ,@CasasCorredoras
  293. ,@Periodic
  294. ,@AnioBase
  295. ,@ValTrans
  296. ,@Precio
  297. ,@TotPagar
  298. ,@RendNeto
  299. ,@IngrBruto
  300. ,@IngrNeto
  301. ,@ComisionCasaValor
  302. ,@ComisionBolsaValor
  303. ,@FUlt
  304. ,@FRed
  305. ,@FVenc
  306. )
  307. "
  308. ElseIf (Instrumento = "PBUR") Then
  309. sql = "INSERT INTO [dbo].[PBUR](
  310. [CodInv]
  311. ,[ValNom]
  312. ,[FOper]
  313. ,[FLiq]
  314. ,[RendBruto]
  315. ,[Plazo]
  316. ,[ComisionCasa]
  317. ,[ComisionBolsa]
  318. ,[CasasCorredoras]
  319. ,[Periodic]
  320. ,[AnioBase]
  321. ,[ValorPar]
  322. ,[FechaUltima]
  323. ,[ValTrans]
  324. ,[Precio]
  325. ,[TotPagar]
  326. ,[RendNeto]
  327. ,[IngrBruto]
  328. ,[IngrNeto]
  329. ,[ComisionCasaValor]
  330. ,[ComisionBolsaValor]
  331. ,[FUlt]
  332. ,[FRed]
  333. ,[FVenc]
  334. ,[IntAcumulado]
  335. )
  336. VALUES(
  337. @CodInv
  338. ,@ValNom
  339. ,@FOper
  340. ,@FLiq
  341. ,@RendBruto
  342. ,@Plazo
  343. ,@ComisionCasa
  344. ,@ComisionBolsa
  345. ,@CasasCorredoras
  346. ,@Periodic
  347. ,@AnioBase
  348. ,@ValorPar
  349. ,@FechaUltima
  350. ,@ValTrans
  351. ,@Precio
  352. ,@TotPagar
  353. ,@RendNeto
  354. ,@IngrBruto
  355. ,@IngrNeto
  356. ,@ComisionCasaValor
  357. ,@ComisionBolsaValor
  358. ,@FUlt
  359. ,@FRed
  360. ,@FVenc
  361. ,@IntAcumulado
  362. )
  363. "
  364. ElseIf (Instrumento = "VCN") Then
  365. sql = "INSERT INTO [dbo].[VCN](
  366. [CodInv]
  367. ,[ValNom]
  368. ,[FOper]
  369. ,[FLiq]
  370. ,[RendBruto]
  371. ,[Plazo]
  372. ,[ComisionCasa]
  373. ,[ComisionBolsa]
  374. ,[CasasCorredoras]
  375. ,[Periodic]
  376. ,[AnioBase]
  377. ,[ValorPar]
  378. ,[FechaUltima]
  379. ,[OtrosCostos]
  380. ,[ValTrans]
  381. ,[Precio]
  382. ,[TotPagar]
  383. ,[RendNeto]
  384. ,[IngrBruto]
  385. ,[IngrNeto]
  386. ,[ComisionCasaValor]
  387. ,[ComisionBolsaValor]
  388. ,[FUlt]
  389. ,[FRed]
  390. ,[FVenc]
  391. ,[IntAcumulado]
  392. )
  393. VALUES(
  394. @CodInv
  395. ,@ValNom
  396. ,@FOper
  397. ,@FLiq
  398. ,@RendBruto
  399. ,@Plazo
  400. ,@ComisionCasa
  401. ,@ComisionBolsa
  402. ,@CasasCorredoras
  403. ,@Periodic
  404. ,@AnioBase
  405. ,@ValorPar
  406. ,@FechaUltima
  407. ,@OtrosCostos
  408. ,@ValTrans
  409. ,@Precio
  410. ,@TotPagar
  411. ,@RendNeto
  412. ,@IngrBruto
  413. ,@IngrNeto
  414. ,@ComisionCasaValor
  415. ,@ComisionBolsaValor
  416. ,@FUlt
  417. ,@FRed
  418. ,@FVenc
  419. ,@IntAcumulado
  420. )
  421. "
  422. ElseIf (Instrumento = "CETE") Then
  423. sql = "INSERT INTO [dbo].[CET0](
  424. [CodInv]
  425. ,[ValNom]
  426. ,[FOper]
  427. ,[FLiq]
  428. ,[RendBruto]
  429. ,[Plazo]
  430. ,[ComisionCasa]
  431. ,[ComisionBolsa]
  432. ,[CasasCorredoras]
  433. ,[Periodic]
  434. ,[AnioBase]
  435. ,[FechaUltima]
  436. ,[ValTrans]
  437. ,[Precio]
  438. ,[TotPagar]
  439. ,[RendNeto]
  440. ,[IngrBruto]
  441. ,[IngrNeto]
  442. ,[ComisionCasaValor]
  443. ,[ComisionBolsaValor]
  444. ,[FUlt]
  445. ,[FRed]
  446. ,[FVenc]
  447. ,[IntAcumulado]
  448. )
  449. VALUES(
  450. @CodInv
  451. ,@ValNom
  452. ,@FOper
  453. ,@FLiq
  454. ,@RendBruto
  455. ,@Plazo
  456. ,@ComisionCasa
  457. ,@ComisionBolsa
  458. ,@CasasCorredoras
  459. ,@Periodic
  460. ,@AnioBase
  461. ,@FechaUltima
  462. ,@ValTrans
  463. ,@Precio
  464. ,@TotPagar
  465. ,@RendNeto
  466. ,@IngrBruto
  467. ,@IngrNeto
  468. ,@ComisionCasaValor
  469. ,@ComisionBolsaValor
  470. ,@FUlt
  471. ,@FRed
  472. ,@FVenc
  473. ,@IntAcumulado
  474. )
  475. "
  476. End If
  477. Try
  478. cmd = New SqlCommand
  479. cmd.CommandText = sql
  480. With cmd.Parameters
  481. .Add("@ValNom", SqlDbType.Decimal).Value = coleccion(1)
  482. .Add("@FOper", SqlDbType.DateTime).Value = coleccion(2)
  483. .Add("@FLiq", SqlDbType.DateTime).Value = coleccion(3)
  484. .Add("@RendBruto", SqlDbType.Decimal).Value = coleccion(4)
  485. .Add("@Plazo", SqlDbType.Int).Value = CInt(coleccion(5))
  486. .Add("@CodInv", SqlDbType.VarChar).Value = coleccion(6)
  487. .Add("@ComisionCasa", SqlDbType.Decimal).Value = CDec(coleccion(7))
  488. .Add("@ComisionBolsa", SqlDbType.Decimal).Value = CDec(coleccion(8))
  489. .Add("@Periodic", SqlDbType.VarChar).Value = coleccion(9)
  490. .Add("@AnioBase", SqlDbType.Int).Value = CInt(coleccion(10))
  491. .Add("@CasasCorredoras", SqlDbType.VarChar).Value = coleccion(11)
  492. If Instrumento = "LETE" Then
  493. .Add("ValTrans", SqlDbType.Float).Value = coleccion(12)
  494. .Add("Precio", SqlDbType.Float).Value = coleccion(13)
  495. .Add("TotPagar", SqlDbType.Float).Value = coleccion(14)
  496. .Add("RendNeto", SqlDbType.Float).Value = coleccion(15)
  497. .Add("IngrBruto", SqlDbType.Float).Value = coleccion(16)
  498. .Add("IngrNeto", SqlDbType.Float).Value = coleccion(17)
  499. .Add("ComisionCasaValor", SqlDbType.Float).Value = coleccion(18)
  500. .Add("ComisionBolsaValor", SqlDbType.Float).Value = coleccion(19)
  501. .Add("FUlt", SqlDbType.Date).Value = coleccion(20)
  502. .Add("FRed", SqlDbType.Date).Value = coleccion(21)
  503. .Add("FVenc", SqlDbType.Date).Value = coleccion(22)
  504. End If
  505. If (Instrumento = "VCN" Or Instrumento = "PBUR") Then
  506. .Add("@ValorPar", SqlDbType.Bit).Value = CByte(coleccion(12))
  507. .Add("@FechaUltima", SqlDbType.DateTime).Value = CDate(coleccion(13))
  508. ElseIf Instrumento = "CETE" Then
  509. .Add("@FechaUltima", SqlDbType.DateTime).Value = CDate(coleccion(12))
  510. .Add("ValTrans", SqlDbType.Float).Value = coleccion(13)
  511. .Add("Precio", SqlDbType.Float).Value = coleccion(14)
  512. .Add("TotPagar", SqlDbType.Float).Value = coleccion(15)
  513. .Add("RendNeto", SqlDbType.Float).Value = coleccion(16)
  514. .Add("IngrBruto", SqlDbType.Float).Value = coleccion(17)
  515. .Add("IngrNeto", SqlDbType.Float).Value = coleccion(18)
  516. .Add("ComisionCasaValor", SqlDbType.Float).Value = coleccion(19)
  517. .Add("ComisionBolsaValor", SqlDbType.Float).Value = coleccion(20)
  518. .Add("FUlt", SqlDbType.Date).Value = coleccion(21)
  519. .Add("FRed", SqlDbType.Date).Value = coleccion(22)
  520. .Add("FVenc", SqlDbType.Date).Value = coleccion(23)
  521. .Add("@IntAcumulado", SqlDbType.Float).Value = coleccion(24)
  522. End If
  523. If Instrumento = "VCN" Then
  524. .Add("@OtrosCostos", SqlDbType.Decimal).Value = CDec(coleccion(14))
  525. .Add("ValTrans", SqlDbType.Float).Value = coleccion(15)
  526. .Add("Precio", SqlDbType.Float).Value = coleccion(16)
  527. .Add("TotPagar", SqlDbType.Float).Value = coleccion(17)
  528. .Add("RendNeto", SqlDbType.Float).Value = coleccion(18)
  529. .Add("IngrBruto", SqlDbType.Float).Value = coleccion(19)
  530. .Add("IngrNeto", SqlDbType.Float).Value = coleccion(20)
  531. .Add("ComisionCasaValor", SqlDbType.Float).Value = coleccion(21)
  532. .Add("ComisionBolsaValor", SqlDbType.Float).Value = coleccion(22)
  533. .Add("FUlt", SqlDbType.Date).Value = coleccion(23)
  534. .Add("FRed", SqlDbType.Date).Value = coleccion(24)
  535. .Add("FVenc", SqlDbType.Date).Value = coleccion(25)
  536. .Add("@IntAcumulado", SqlDbType.Float).Value = coleccion(26)
  537. End If
  538. If Instrumento = "PBUR" Then
  539. .Add("ValTrans", SqlDbType.Float).Value = coleccion(14)
  540. .Add("Precio", SqlDbType.Float).Value = coleccion(15)
  541. .Add("TotPagar", SqlDbType.Float).Value = coleccion(16)
  542. .Add("RendNeto", SqlDbType.Float).Value = coleccion(17)
  543. .Add("IngrBruto", SqlDbType.Float).Value = coleccion(18)
  544. .Add("IngrNeto", SqlDbType.Float).Value = coleccion(19)
  545. .Add("ComisionCasaValor", SqlDbType.Float).Value = coleccion(20)
  546. .Add("ComisionBolsaValor", SqlDbType.Float).Value = coleccion(21)
  547. .Add("FUlt", SqlDbType.Date).Value = coleccion(22)
  548. .Add("FRed", SqlDbType.Date).Value = coleccion(23)
  549. .Add("FVenc", SqlDbType.Date).Value = coleccion(24)
  550. .Add("@IntAcumulado", SqlDbType.Float).Value = coleccion(25)
  551. End If
  552. End With
  553. cmd.Connection = cn
  554. retorno = cmd.ExecuteNonQuery
  555. MsgBox("Registro creado con éxito")
  556. Catch ex As Exception
  557. MsgBox("Error al crear el registro")
  558. End Try
  559. cn.Close()
  560. Return retorno
  561. End Function
  562. Public Sub Eliminar(ByVal Eliminar As String, ByVal Instrumento As String)
  563. Dim objCon As New Conexion
  564. Dim sql As String
  565. Dim cmd As SqlCommand
  566. Dim res As Integer
  567. Dim cn As SqlConnection = objCon.Conectar
  568. If cn.State = ConnectionState.Closed Then
  569. cn.Open()
  570. End If
  571. If (Instrumento = "LETE") Then
  572. sql = "DELETE FROM [dbo].[LET0]
  573. WHERE [CodInv]=@CodInv"
  574. ElseIf (Instrumento = "PBUR") Then
  575. sql = "DELETE FROM [dbo].[PBUR]
  576. WHERE [CodInv]=@CodInv"
  577. ElseIf (Instrumento = "VCN") Then
  578. sql = "DELETE FROM [dbo].[VCN]
  579. WHERE [CodInv]=@CodInv"
  580. ElseIf (Instrumento = "CETE") Then
  581. sql = "DELETE FROM [dbo].[CET0]
  582. WHERE [CodInv]=@CodInv"
  583. End If
  584. cn = objCon.Conectar
  585. Try
  586. cmd = New SqlCommand
  587. cmd.CommandText = sql
  588. cmd.Parameters.Add("@CodInv", SqlDbType.VarChar).Value = Eliminar
  589. cmd.Connection = cn
  590. res = cmd.ExecuteNonQuery
  591. MsgBox("Registro eliminado con éxito")
  592. Catch ex As Exception
  593. MsgBox("Error al eliminar el registro")
  594. End Try
  595. cn.Close()
  596. End Sub
  597. Public Function Nuevo(ByVal oLete As LETESCE, CodigoInversion As String) As Integer
  598. Dim Resultado As Integer = 0
  599. Dim objCon As New Conexion
  600. Dim cn As SqlConnection = objCon.Conectar
  601. If cn.State = ConnectionState.Closed Then
  602. cn.Open()
  603. End If
  604. If Not oLete Is Nothing Then
  605. Dim Transaccion As SqlTransaction
  606. Dim query As String
  607. Dim cmd As SqlCommand = cn.CreateCommand
  608. Transaccion = cn.BeginTransaction("NuevoLete")
  609. cmd.Connection = cn
  610. cmd.Transaction = Transaccion
  611. query = "INSERT INTO [dbo].[LET0]
  612. ([CodInv]
  613. ,[CodCasa]
  614. ,[ValNom]
  615. ,[ValTrans]
  616. ,[Precio]
  617. ,[Impuestos]
  618. ,[TotPagar]
  619. ,[FOper]
  620. ,[FLiq]
  621. ,[RendBruto]
  622. ,[RendNeto]
  623. ,[Periodic]
  624. ,[Plazo]
  625. ,[IngrBruto]
  626. ,[IngrNeto])
  627. VALUES
  628. (@CodInv
  629. ,@CodCasa
  630. ,@ValNom
  631. ,@ValTrans
  632. ,@Precio
  633. ,@Impuestos
  634. ,@TotPagar
  635. ,@FOper
  636. ,@FLiq
  637. ,@RendBruto
  638. ,@RendNeto
  639. ,@Periodic
  640. ,@Plazo
  641. ,@IngrBruto
  642. ,@IngrNeto
  643. )"
  644. cmd.CommandText = query
  645. With cmd.Parameters
  646. '.Add("@DocId", SqlDbType.Int).Value = DocId
  647. .Add("@CodInv", SqlDbType.VarChar).Value = CodigoInversion
  648. .Add("@CodCasa", SqlDbType.VarChar).Value = oLete.CodigoCasa
  649. .Add("@ValNom", SqlDbType.Float).Value = oLete.ValorNominal
  650. .Add("@ValTrans", SqlDbType.Float).Value = oLete.ValorTransado
  651. .Add("@Precio", SqlDbType.Float).Value = oLete.Precio
  652. .Add("@Impuestos", SqlDbType.Float).Value = oLete.Impuestos
  653. .Add("@TotPagar", SqlDbType.Float).Value = oLete.TotalaPagar
  654. .Add("@FOper", SqlDbType.DateTime).Value = oLete.FechaOperacion
  655. .Add("@FLiq", SqlDbType.DateTime).Value = oLete.FechaLiquidacion
  656. .Add("@RendBruto", SqlDbType.Float).Value = oLete.RendimientoBruto
  657. .Add("@RendNeto", SqlDbType.Float).Value = oLete.RendimientoNeto
  658. .Add("@Periodic", SqlDbType.VarChar).Value = oLete.Periodicidad
  659. .Add("@Plazo", SqlDbType.Int).Value = oLete.Plazo
  660. .Add("@IngrBruto", SqlDbType.Float).Value = oLete.IngresoBruto
  661. .Add("@IngrNeto", SqlDbType.Float).Value = oLete.IngresoNeto
  662. End With
  663. Try
  664. Resultado = cmd.ExecuteNonQuery()
  665. Transaccion.Commit()
  666. Catch ex As Exception
  667. MsgBox("Error al Guardar Lete : " & ex.GetType.ToString)
  668. MsgBox("Mensaje: " & ex.Message)
  669. Resultado = 0
  670. Try
  671. Transaccion.Rollback()
  672. Catch ex2 As Exception
  673. MsgBox("Error en Rollback: " & ex2.GetType.ToString)
  674. MsgBox("Mensaje Rollbak: " & ex2.Message)
  675. End Try
  676. End Try
  677. cmd.Dispose()
  678. cn.Dispose()
  679. Else
  680. Resultado = -1
  681. End If
  682. Return Resultado
  683. End Function
  684. Public Sub CargarRegistro(ByVal oLetes As LETESCE, Tipo As String, IdRegistro As Integer)
  685. Dim objCon As New Conexion
  686. Dim drd As SqlDataReader
  687. Dim cmd As SqlCommand
  688. Dim sql As String
  689. Dim Tabla As String
  690. Dim cn As SqlConnection = objCon.Conectar
  691. If cn.State = ConnectionState.Closed Then
  692. cn.Open()
  693. End If
  694. If Tipo = "P" Then
  695. Tabla = "PLET0"
  696. End If
  697. If Tipo = "I" Then
  698. Tabla = "ILET0"
  699. End If
  700. sql = "SELECT * FROM [dbo].[" & Tabla & "] T0 WHERE T0.[DocId]=@DocId"
  701. cmd = New SqlCommand
  702. cmd.CommandText = sql
  703. cmd.Parameters.Add("@DocId", SqlDbType.Int).Value = IdRegistro
  704. cmd.Connection = cn
  705. drd = cmd.ExecuteReader
  706. If drd.HasRows Then
  707. 'SE ENCONTRO EL REGISTRO
  708. If drd.Read Then
  709. oLetes.ValorNominal = drd.Item("ValNom")
  710. oLetes.FechaOperacion = drd.Item("FOper")
  711. oLetes.FechaLiquidacion = drd.Item("FLiq")
  712. oLetes.Plazo = drd.Item("Plazo")
  713. oLetes.CodigoCasa = drd.Item("CodCasa")
  714. oLetes.Impuestos = drd.Item("Impuestos")
  715. oLetes.Periodicidad = drd.Item("Periodic")
  716. oLetes.RendimientoBruto = drd.Item("RendBruto")
  717. oLetes.RendimientoNeto = drd.Item("RendNeto")
  718. oLetes.IngresoBruto = drd.Item("IngrBruto")
  719. oLetes.IngresoNeto = drd.Item("IngrNeto")
  720. oLetes.ValorTransado = drd.Item("ValTrans")
  721. oLetes.Precio = drd.Item("Precio")
  722. oLetes.TotalaPagar = drd.Item("TotPagar")
  723. End If
  724. Else
  725. 'NO SE ENCONTRO EL REGISTRO
  726. End If
  727. drd.Close()
  728. cmd.Dispose()
  729. cn.Dispose()
  730. End Sub
  731. Public Function CargarRegistro(ByVal CodInversion As String) As LETESCE
  732. Dim objCon As New Conexion
  733. Dim oLETES As LETESCE
  734. Dim cmd As SqlCommand
  735. Dim drd As SqlDataReader
  736. Dim vComprobar As Integer = 0
  737. Dim sql As String
  738. Dim vCodigoInversion As String = CodInversion
  739. Dim cn As SqlConnection = objCon.Conectar
  740. If cn.State = ConnectionState.Closed Then
  741. cn.Open()
  742. End If
  743. vComprobar = Comprobar(vCodigoInversion)
  744. If vComprobar > 0 Then
  745. oLETES = New LETESCE
  746. sql = "SELECT * FROM [dbo].[LET0] T0 WHERE T0.[CodInv]=@CodInv"
  747. cmd = New SqlCommand
  748. cmd.CommandText = sql
  749. cmd.Parameters.Add("@CodInv", SqlDbType.VarChar).Value = vCodigoInversion
  750. cmd.Connection = cn
  751. drd = cmd.ExecuteReader
  752. If drd.HasRows Then
  753. 'SE ENCONTRO EL REGISTRO
  754. If drd.Read Then
  755. 'oLETES.ValorNominal = drd.Item("ValNom").ToString
  756. 'oLETES.FechaOperacion = drd.Item("FOper").ToString
  757. 'oLETES.FechaLiquidacion = drd.Item("FLiq").ToString
  758. 'oLETES.Plazo = drd.Item("Plazo").ToString
  759. 'oLETES.CodigoCasa = drd.Item("CodCasa").ToString
  760. 'oLETES.Impuestos = drd.Item("Impuestos").ToString
  761. 'oLETES.Periodicidad = drd.Item("Periodic").ToString
  762. 'oLETES.RendimientoBruto = drd.Item("RendBruto").ToString
  763. 'oLETES.RendimientoNeto = drd.Item("RendNeto").ToString
  764. 'oLETES.IngresoBruto = drd.Item("IngrBruto").ToString
  765. 'oLETES.IngresoNeto = drd.Item("IngrNeto").ToString
  766. 'oLETES.ValorTransado = drd.Item("ValTrans").ToString
  767. 'oLETES.Precio = drd.Item("Precio").ToString
  768. 'oLETES.TotalaPagar = drd.Item("TotPagar").ToString
  769. End If
  770. Else
  771. 'NO SE ENCONTRO EL REGISTRO
  772. End If
  773. drd.Close()
  774. cmd.Dispose()
  775. cn.Dispose()
  776. End If
  777. Return oLETES
  778. End Function
  779. Public Function Comprobar(ByVal CodInversion As String) As Integer
  780. Dim objCon As New Conexion
  781. Dim sql As String
  782. Dim cmd As SqlCommand
  783. Dim count As Integer = 0
  784. Dim cn As SqlConnection = objCon.Conectar
  785. If cn.State = ConnectionState.Closed Then
  786. cn.Open()
  787. End If
  788. sql = "SELECT COUNT('A') FROM [dbo].[LET0] T0 WHERE T0.CodInv=@CodInversion"
  789. cmd = New SqlCommand
  790. cmd.CommandText = sql
  791. cmd.Parameters.Add("@CodInversion", SqlDbType.VarChar).Value = CodInversion
  792. cmd.Connection = cn
  793. count = cmd.ExecuteScalar
  794. cn.Close()
  795. Return count
  796. End Function
  797. Public Function Cargar(ByVal CodInversion As String, ByVal Instrumento As String)
  798. Dim objCon As New Conexion
  799. Dim sql As String
  800. Dim cmd As SqlCommand
  801. Dim Coleccion As New Collection
  802. Dim cn As SqlConnection = objCon.Conectar
  803. If cn.State = ConnectionState.Closed Then
  804. cn.Open()
  805. End If
  806. If (Instrumento = "LETE") Then
  807. sql = "SELECT * FROM [dbo].[LET0] WHERE CodInv=@CodInversion"
  808. ElseIf (Instrumento = "PBUR") Then
  809. sql = "SELECT * FROM [dbo].[PBUR] WHERE CodInv=@CodInversion"
  810. ElseIf (Instrumento = "VCN") Then
  811. sql = "SELECT * FROM [dbo].[VCN] WHERE CodInv=@CodInversion"
  812. ElseIf (Instrumento = "CETE") Then
  813. sql = "SELECT * FROM [dbo].[CET0] WHERE CodInv=@CodInversion"
  814. End If
  815. cmd = New SqlCommand
  816. cmd.CommandText = sql
  817. cmd.Parameters.Add("@CodInversion", SqlDbType.VarChar).Value = CodInversion
  818. cmd.Connection = cn
  819. ' Dim Datos = cmd.ExecuteScalar
  820. Dim Datos = cmd.ExecuteReader
  821. If Datos.HasRows Then
  822. 'SE ENCONTRO EL REGISTRO
  823. If Datos.Read Then
  824. Coleccion.Add(Datos.Item("ValNom"))
  825. Coleccion.Add(Datos.Item("FOper"))
  826. Coleccion.Add(Datos.Item("FLiq"))
  827. Coleccion.Add(Datos.Item("Plazo"))
  828. Coleccion.Add(Datos.Item("RendBruto"))
  829. Coleccion.Add(Datos.Item("CodCasa"))
  830. Coleccion.Add(Datos.Item("Periodic"))
  831. Coleccion.Add(Datos.Item("AnioBase"))
  832. Coleccion.Add(Datos.Item("ComisionCasa"))
  833. Coleccion.Add(Datos.Item("ComisionBolsa"))
  834. Coleccion.Add(Datos.Item("CodInv"))
  835. Coleccion.Add(Datos.Item("CasasCorredoras"))
  836. If (Instrumento = "PBUR" Or Instrumento = "VCN") Then
  837. Coleccion.Add(Datos.Item("ValorPar"))
  838. Coleccion.Add(Datos.Item("FechaUltima"))
  839. ElseIf Instrumento = "CETE" Then
  840. Coleccion.Add(Datos.Item("FechaUltima"))
  841. End If
  842. If Instrumento = "VCN" Then
  843. Coleccion.Add(Datos.Item("OtrosCostos"))
  844. End If
  845. cn.Close()
  846. Return Coleccion
  847. End If
  848. End If
  849. Coleccion.Add(False)
  850. cn.Close()
  851. Return Coleccion
  852. End Function
  853. End Class