BonosDAO.vb 41 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200
  1. Imports System.Data.SqlClient
  2. Public Class BonosDAO
  3. Dim oDAOGeneral As New DAOGeneral
  4. Public Function Nuevo(ByVal oBono As BonosCE) As Integer
  5. Dim objCon As New Conexion
  6. Dim retorno As Integer
  7. Dim query As String
  8. Dim cmd As SqlCommand
  9. 'Dim vSiguienteCodigo As String = String.Empty
  10. Dim cn As SqlConnection = objCon.Conectar
  11. If cn.State = ConnectionState.Closed Then
  12. cn.Open()
  13. End If
  14. If Not oBono Is Nothing Then
  15. 'VIENE OBJETO BONO
  16. 'vSiguienteCodigo = Me.SiguienteCodigo(oBono)
  17. query = "INSERT INTO [dbo].[BON0]
  18. ([CodInv]
  19. ,[PeriodicC]
  20. ,[ValNomC]
  21. ,[UltFCupC]
  22. ,[SigFCupC]
  23. ,[FLiqC]
  24. ,[FVencC]
  25. ,[PorcCupC]
  26. --,[YTMVencComC]
  27. ,[YTMVencC]
  28. ,[PrecVencC]
  29. ,[PrecioCompra]
  30. ,[DiasBaseC]
  31. --,[DiasAcumC]
  32. --,[DiasVencC]
  33. --,[PorcIntAcumC]
  34. --,[IntAcumC]
  35. --,[PrecioSucioC]
  36. --,[ValTransC]
  37. --,[MontoPagarC]
  38. ,[CostoTransC]
  39. ,[PeriodicV]
  40. ,[ValNomV]
  41. ,[UltFCupV]
  42. ,[SigFCupV]
  43. ,[FLiqV]
  44. ,[FVencV]
  45. ,[PorcCupV]
  46. --,[YTMVencComV]
  47. ,[YTMVencV]
  48. ,[PrecVencV]
  49. ,[PrecioVenta]
  50. ,[DiasBaseV]
  51. --,[DiasAcumV]
  52. --,[DiasVencV]
  53. --,[PorcIntAcumV]
  54. --,[IntAcumV]
  55. --,[PrecioSucioV]
  56. --,[ValTransV]
  57. --,[MontoPagarV]
  58. ,[CostoTransV]
  59. --,[ValNomRO]
  60. --,[PlazoRO]
  61. --,[PrecioCompraRO]
  62. --,[PrecioVentaRO]
  63. --,[GanPerdCap]
  64. --,[IngrPorInt]
  65. --,[CostosTotales]
  66. --,[GanPerdTot]
  67. --,[RendGanPerd]
  68. --,[RendInt]
  69. --,[RendAntISR]
  70. --,[RendDespISR]
  71. )
  72. VALUES
  73. (@CodInv
  74. ,@PeriodicC
  75. ,@ValNomC
  76. ,@UltFCupC
  77. ,@SigFCupC
  78. ,@FLiqC
  79. ,@FVencC
  80. ,@PorcCupC
  81. --,@YTMVencComC
  82. ,@YTMVencC
  83. ,@PrecVencC
  84. ,@PrecioCompra
  85. ,@DiasBaseC
  86. --,@DiasAcumC
  87. --,@DiasVencC
  88. --,@PorcIntAcumC
  89. --,@IntAcumC
  90. --,@PrecioSucioC
  91. --,@ValTransC
  92. --,@MontoPagarC
  93. ,@CostoTransC
  94. ,@PeriodicV
  95. ,@ValNomV
  96. ,@UltFCupV
  97. ,@SigFCupV
  98. ,@FLiqV
  99. ,@FVencV
  100. ,@PorcCupV
  101. --,@YTMVencComV
  102. ,@YTMVencV
  103. ,@PrecVencV
  104. ,@PrecioVenta
  105. ,@DiasBaseV
  106. --,@DiasAcumV
  107. --,@DiasVencV
  108. --,@PorcIntAcumV
  109. --,@IntAcumV
  110. --,@PrecioSucioV
  111. --,@ValTransV
  112. --,@MontoPagarV
  113. ,@CostoTransV
  114. --,@ValNomRO
  115. --,@PlazoRO
  116. --,@PrecioCompraRO
  117. --,@PrecioVentaRO
  118. --,@GanPerdCap
  119. --,@IngrPorInt
  120. --,@CostosTotales
  121. --,@GanPerdTot
  122. --,@RendGanPerd
  123. --,@RendInt
  124. --,@RendAntISR
  125. --,@RendDespISR
  126. )"
  127. cmd = New SqlCommand
  128. cmd.CommandText = query
  129. With cmd.Parameters
  130. .Add("@CodInv", SqlDbType.VarChar).Value = oBono.CodigoInversion
  131. .Add("@PeriodicC", SqlDbType.VarChar).Value = oBono.PeriodicidadCompra
  132. .Add("@ValNomC", SqlDbType.Float).Value = oBono.ValorNominalCompra
  133. .Add("@UltFCupC", SqlDbType.Date).Value = oBono.UltimaFechaCuponCompra
  134. .Add("@SigFCupC", SqlDbType.Date).Value = oBono.SiguienteFechaCuponCompra
  135. .Add("@FLiqC", SqlDbType.Date).Value = oBono.FechaLiquidacionCompra
  136. .Add("@FVencC", SqlDbType.Date).Value = oBono.FechaVencimientoCompra
  137. .Add("@PorcCupC", SqlDbType.Float).Value = oBono.PorcentajeCuponCompra
  138. '.Add("@YTMVencComC", SqlDbType.Float).Value = oBono.YTMAlVencimientoComisionCompra
  139. .Add("@YTMVencC", SqlDbType.Float).Value = oBono.YTMAlVencimientoCompra
  140. .Add("@PrecVencC", SqlDbType.Float).Value = oBono.PrecioAlVencimientoCompra
  141. .Add("@PrecioCompra", SqlDbType.Float).Value = oBono.PrecioCompra
  142. .Add("@DiasBaseC", SqlDbType.Int).Value = oBono.DiasBaseCompra
  143. '.Add("@DiasAcumC", SqlDbType.Int).Value = oBono.DiasAcumuladosCompra
  144. '.Add("@DiasVencC", SqlDbType.Int).Value = oBono.DiasAlVencimientoCompra
  145. '.Add("@PorcIntAcumC", SqlDbType.Float).Value = oBono.PorcentajeInteresAcumuladoCompra
  146. '.Add("@IntAcumC", SqlDbType.Float).Value = oBono.InteresAcumuladoCompra
  147. '.Add("@PrecioSucioC", SqlDbType.Float).Value = oBono.PrecioSucioCompra
  148. '.Add("@ValTransC", SqlDbType.Float).Value = oBono.ValorTransadoCompra
  149. '.Add("@MontoPagarC", SqlDbType.Float).Value = oBono.MontoAPagarCompra
  150. .Add("@CostoTransC", SqlDbType.Float).Value = oBono.CostoDeTransferenciaCompra
  151. .Add("@PeriodicV", SqlDbType.Float).Value = oBono.PeriodicidadVenta
  152. .Add("@ValNomV", SqlDbType.Float).Value = oBono.ValorNominalVenta
  153. .Add("@UltFCupV", SqlDbType.Date).Value = oBono.UltimaFechaCuponVenta
  154. .Add("@SigFCupV", SqlDbType.Date).Value = oBono.SiguienteFechaCuponVenta
  155. .Add("@FLiqV", SqlDbType.Date).Value = oBono.FechaLiquidacionVenta
  156. .Add("@FVencV", SqlDbType.Date).Value = oBono.FechaVencimientoVenta
  157. .Add("@PorcCupV", SqlDbType.Float).Value = oBono.PorcentajeCuponVenta
  158. '.Add("@YTMVencComV", SqlDbType.Float).Value = oBono.YTMAlVencimientoComisionVenta
  159. .Add("@YTMVencV", SqlDbType.Float).Value = oBono.YTMAlVencimientoVenta
  160. .Add("@PrecVencV", SqlDbType.Float).Value = oBono.PrecioAlVencimientoVenta
  161. .Add("@PrecioVenta", SqlDbType.Float).Value = oBono.PrecioVenta
  162. .Add("@DiasBaseV", SqlDbType.Int).Value = oBono.DiasBaseVenta
  163. '.Add("@DiasAcumV", SqlDbType.Int).Value = oBono.DiasAcumuladosVenta
  164. '.Add("@DiasVencV", SqlDbType.Int).Value = oBono.DiasAlVencimientoVenta
  165. '.Add("@PorcIntAcumV", SqlDbType.Float).Value = oBono.PorcentajeInteresAcumuladoVenta
  166. '.Add("@IntAcumV", SqlDbType.Float).Value = oBono.InteresAcumuladoVenta
  167. '.Add("@PrecioSucioV", SqlDbType.Float).Value = oBono.PrecioSucioVenta
  168. '.Add("@ValTransV", SqlDbType.Float).Value = oBono.ValorTransadoVenta
  169. '.Add("@MontoPagarV", SqlDbType.Float).Value = oBono.MontoARecibirVenta
  170. .Add("@CostoTransV", SqlDbType.Float).Value = oBono.CostoDeTransferenciaVenta
  171. '.Add("@ValNomRO", SqlDbType.Float).Value = oBono.ValorNominalRO
  172. '.Add("@PlazoRO", SqlDbType.Float).Value = oBono.DiasPlazoRO
  173. '.Add("@PrecioCompraRO", SqlDbType.Float).Value = oBono.PrecioCompraRO
  174. '.Add("@PrecioVentaRO", SqlDbType.Float).Value = oBono.PrecioVentaRO
  175. '.Add("@GanPerdCap", SqlDbType.Float).Value = oBono.GananciaPerdidaDeCapital
  176. '.Add("@IngrPorInt", SqlDbType.Float).Value = oBono.IngresoPorInteres
  177. '.Add("@CostosTotales", SqlDbType.Float).Value = oBono.CostosTotales
  178. '.Add("@GanPerdTot", SqlDbType.Float).Value = oBono.GananciaPerdidaTotal
  179. '.Add("@RendGanPerd", SqlDbType.Float).Value = oBono.RendimientoGananciaPerdida
  180. '.Add("@RendInt", SqlDbType.Float).Value = oBono.RendimientoDeIntereses
  181. '.Add("@RendAntISR", SqlDbType.Float).Value = oBono.RendimientoAntesImpuestos
  182. '.Add("@RendDespISR", SqlDbType.Float).Value = oBono.RendimientoDespuesImpuestos
  183. End With
  184. cmd.Connection = cn
  185. Try
  186. retorno = cmd.ExecuteNonQuery
  187. Catch ex As Exception
  188. retorno = 0
  189. End Try
  190. Else
  191. 'NO VIENE OBJETO BONO
  192. retorno = 0
  193. End If
  194. cn.Close()
  195. Return retorno
  196. End Function
  197. Function Nuevo(ByVal oBono As BonosCE, DocId As Integer, Tipo As String) As Integer
  198. Dim objCon As New Conexion
  199. Dim retorno As Integer = -1
  200. Dim Transaccion As SqlTransaction
  201. Dim query As String
  202. Dim cn As SqlConnection = objCon.Conectar
  203. If cn.State = ConnectionState.Closed Then
  204. cn.Open()
  205. End If
  206. Dim Tabla As String = ""
  207. If Tipo = "P" Then
  208. Tabla = "PBON"
  209. End If
  210. If Tipo = "I" Then
  211. Tabla = "IBON"
  212. End If
  213. Dim cmd As SqlCommand = cn.CreateCommand
  214. Transaccion = cn.BeginTransaction("NuevoBono")
  215. cmd.Connection = cn
  216. cmd.Transaction = Transaccion
  217. query = "INSERT INTO [dbo].[PBON]
  218. ([DocId]
  219. ,[CodCasaC]
  220. ,[ValNomC]
  221. ,[UltFCupC]
  222. ,[SigFCupC]
  223. ,[FLiqC]
  224. ,[FVencC]
  225. ,[PorcCupC]
  226. ,[YMTVencComC]
  227. ,[YMTVencC]
  228. ,[PrecVencC]
  229. ,[PrecioCompra]
  230. ,[DiasBaseC]
  231. ,[DiasAcumC]
  232. ,[DiasVencC]
  233. ,[PorcIntAcumC]
  234. ,[IntAcumC]
  235. ,[PrecioSucioC]
  236. ,[ValTransC]
  237. ,[MontoPagarC]
  238. ,[CostoTransC]
  239. ,[CodCasaV]
  240. ,[ValNomV]
  241. ,[UltFCupV]
  242. ,[SigFCupV]
  243. ,[FLiqV]
  244. ,[FVencV]
  245. ,[PorcCupV]
  246. ,[YMTVencComV]
  247. ,[YMTVencV]
  248. ,[PrecVencV]
  249. ,[PrecioVenta]
  250. ,[DiasBaseV]
  251. ,[DiasAcumV]
  252. ,[DiasVencV]
  253. ,[PorcIntAcumV]
  254. ,[IntAcumV]
  255. ,[PrecioSucioV]
  256. ,[ValTransV]
  257. ,[MontoPagarV]
  258. ,[CostoTransV]
  259. ,[ValNomRO]
  260. ,[PlazoRO]
  261. ,[PrecioCompraRO]
  262. ,[PrecioVentaRO]
  263. ,[GanPerdCap]
  264. ,[IngrPorInt]
  265. ,[CostosTotales]
  266. ,[GanPerdTot]
  267. ,[RendGanPerd]
  268. ,[RendInt]
  269. ,[RendAntISR]
  270. ,[RendDespISR])
  271. VALUES
  272. (@DocId
  273. ,@CodCasaC
  274. ,@ValNomC
  275. ,@UltFCupC
  276. ,@SigFCupC
  277. ,@FLiqC
  278. ,@FVencC
  279. ,@PorcCupC
  280. ,@YMTVencComC
  281. ,@YMTVencC
  282. ,@PrecVencC
  283. ,@PrecioCompra
  284. ,@DiasBaseC
  285. ,@DiasAcumC
  286. ,@DiasVencC
  287. ,@PorcIntAcumC
  288. ,@IntAcumC
  289. ,@PrecioSucioC
  290. ,@ValTransC
  291. ,@MontoPagarC
  292. ,@CostoTransC
  293. ,@CodCasaV
  294. ,@ValNomV
  295. ,@UltFCupV
  296. ,@SigFCupV
  297. ,@FLiqV
  298. ,@FVencV
  299. ,@PorcCupV
  300. ,@YMTVencComV
  301. ,@YMTVencV
  302. ,@PrecVencV
  303. ,@PrecioVenta
  304. ,@DiasBaseV
  305. ,@DiasAcumV
  306. ,@DiasVencV
  307. ,@PorcIntAcumV
  308. ,@IntAcumV
  309. ,@PrecioSucioV
  310. ,@ValTransV
  311. ,@MontoPagarV
  312. ,@CostoTransV
  313. ,@ValNomRO
  314. ,@PlazoRO
  315. ,@PrecioCompraRO
  316. ,@PrecioVentaRO
  317. ,@GanPerdCap
  318. ,@IngrPorInt
  319. ,@CostosTotales
  320. ,@GanPerdTot
  321. ,@RendGanPerd
  322. ,@RendInt
  323. ,@RendAntISR
  324. ,@RendDespISR
  325. )"
  326. cmd.CommandText = query
  327. With cmd.Parameters
  328. .Add("@DocId", SqlDbType.Int).Value = DocId
  329. '.Add("@CodCasaC", SqlDbType.VarChar).Value = oBono.CodigoCasaCompra
  330. .Add("@ValNomC", SqlDbType.Decimal).Value = oBono.ValorNominalCompra
  331. .Add("@UltFCupC", SqlDbType.DateTime).Value = oBono.UltimaFechaCuponCompra
  332. .Add("@SigFCupC", SqlDbType.DateTime).Value = oBono.SiguienteFechaCuponCompra
  333. .Add("@FLiqC", SqlDbType.DateTime).Value = oBono.FechaLiquidacionCompra
  334. .Add("@FVencC", SqlDbType.DateTime).Value = oBono.FechaVencimientoCompra
  335. .Add("@PorcCupC", SqlDbType.Decimal).Value = oBono.PorcentajeCuponCompra
  336. .Add("@YMTVencComC", SqlDbType.Decimal).Value = oBono.YTMAlVencimientoComisionCompra
  337. .Add("@YMTVencC", SqlDbType.Decimal).Value = oBono.YTMAlVencimientoCompra
  338. .Add("@PrecVencC", SqlDbType.Decimal).Value = oBono.PrecioAlVencimientoCompra
  339. .Add("@PrecioCompra", SqlDbType.Decimal).Value = oBono.PrecioCompra
  340. .Add("@DiasBaseC", SqlDbType.Int).Value = oBono.DiasBaseCompra
  341. .Add("@DiasAcumC", SqlDbType.Int).Value = oBono.DiasAcumuladosCompra
  342. .Add("@DiasVencC", SqlDbType.Int).Value = oBono.DiasAlVencimientoCompra
  343. .Add("@PorcIntAcumC", SqlDbType.Decimal).Value = oBono.PorcentajeInteresAcumuladoCompra
  344. .Add("@IntAcumC", SqlDbType.Decimal).Value = oBono.InteresAcumuladoCompra
  345. .Add("@PrecioSucioC", SqlDbType.Decimal).Value = oBono.PrecioSucioCompra
  346. .Add("@ValTransC", SqlDbType.Decimal).Value = oBono.ValorTransadoCompra
  347. .Add("@MontoPagarC", SqlDbType.Decimal).Value = oBono.MontoAPagarCompra
  348. .Add("@CostoTransC", SqlDbType.Decimal).Value = oBono.CostoDeTransferenciaCompra
  349. '.Add("@CodCasaV", SqlDbType.VarChar).Value = oBono.CodigoCasaVenta
  350. .Add("@ValNomV", SqlDbType.Decimal).Value = oBono.ValorNominalVenta
  351. .Add("@UltFCupV", SqlDbType.DateTime).Value = oBono.UltimaFechaCuponVenta
  352. .Add("@SigFCupV", SqlDbType.DateTime).Value = oBono.SiguienteFechaCuponVenta
  353. .Add("@FLiqV", SqlDbType.DateTime).Value = oBono.FechaLiquidacionVenta
  354. .Add("@FVencV", SqlDbType.DateTime).Value = oBono.FechaVencimientoVenta
  355. .Add("@PorcCupV", SqlDbType.Decimal).Value = oBono.PorcentajeCuponVenta
  356. .Add("@YMTVencComV", SqlDbType.Decimal).Value = oBono.YTMAlVencimientoComisionVenta
  357. .Add("@YMTVencV", SqlDbType.Decimal).Value = oBono.YTMAlVencimientoVenta
  358. .Add("@PrecVencV", SqlDbType.Decimal).Value = oBono.PrecioAlVencimientoVenta
  359. .Add("@PrecioVenta", SqlDbType.Decimal).Value = oBono.PrecioVenta
  360. .Add("@DiasBaseV", SqlDbType.Int).Value = oBono.DiasBaseVenta
  361. .Add("@DiasAcumV", SqlDbType.Int).Value = oBono.DiasAcumuladosVenta
  362. .Add("@DiasVencV", SqlDbType.Int).Value = oBono.DiasAlVencimientoVenta
  363. .Add("@PorcIntAcumV", SqlDbType.Decimal).Value = oBono.InteresAcumuladoPorcentajeVenta
  364. .Add("@IntAcumV", SqlDbType.Decimal).Value = oBono.InteresAcumuladoVenta
  365. .Add("@PrecioSucioV", SqlDbType.Decimal).Value = oBono.PrecioSucioVenta
  366. .Add("@ValTransV", SqlDbType.Decimal).Value = oBono.ValorTransadoVenta
  367. .Add("@MontoPagarV", SqlDbType.Decimal).Value = oBono.MontoARecibirVenta
  368. .Add("@CostoTransV", SqlDbType.Decimal).Value = oBono.CostoDeTransferenciaVenta
  369. .Add("@ValNomRO", SqlDbType.Decimal).Value = oBono.ValorNominalRO
  370. .Add("@PlazoRO", SqlDbType.Decimal).Value = oBono.DiasPlazoRO
  371. .Add("@PrecioCompraRO", SqlDbType.Decimal).Value = oBono.PrecioCompraRO
  372. .Add("@PrecioVentaRO", SqlDbType.Decimal).Value = oBono.PrecioVentaRO
  373. .Add("@GanPerdCap", SqlDbType.Decimal).Value = oBono.GananciaPerdidaDeCapital
  374. .Add("@IngrPorInt", SqlDbType.Decimal).Value = oBono.IngresoPorInteres
  375. .Add("@CostosTotales", SqlDbType.Decimal).Value = oBono.CostosTotales
  376. .Add("@GanPerdTot", SqlDbType.Decimal).Value = oBono.GananciaPerdidaTotal
  377. .Add("@RendGanPerd", SqlDbType.Decimal).Value = oBono.RendimientoGananciaPerdida
  378. .Add("@RendInt", SqlDbType.Decimal).Value = oBono.RendimientoDeIntereses
  379. .Add("@RendAntISR", SqlDbType.Decimal).Value = oBono.RendimientoAntesImpuestos
  380. .Add("@RendDespISR", SqlDbType.Decimal).Value = oBono.RendimientoDespuesImpuestos
  381. End With
  382. Try
  383. cmd.ExecuteNonQuery()
  384. Transaccion.Commit()
  385. retorno = 0
  386. Catch ex As Exception
  387. MsgBox("Error al Guardar Bono : " & ex.GetType.ToString)
  388. MsgBox("Mensaje: " & ex.Message)
  389. retorno = 1
  390. Try
  391. Transaccion.Rollback()
  392. retorno = 2
  393. Catch ex2 As Exception
  394. MsgBox("Error en Rollback: " & ex2.GetType.ToString)
  395. MsgBox("Mensaje Rollbak: " & ex2.Message)
  396. retorno = 3
  397. End Try
  398. End Try
  399. cmd.Dispose()
  400. cn.Dispose()
  401. Return retorno
  402. End Function
  403. Public Sub CargarRegistro(ByVal oBonos As BonosCE, Tipo As String, IdRegistro As Integer)
  404. Dim objCon As New Conexion
  405. Dim drd As SqlDataReader
  406. Dim cmd As SqlCommand
  407. Dim sql As String
  408. Dim Tabla As String
  409. Dim cn As SqlConnection = objCon.Conectar
  410. If cn.State = ConnectionState.Closed Then
  411. cn.Open()
  412. End If
  413. If Tipo = "P" Then
  414. Tabla = "PBON"
  415. End If
  416. If Tipo = "I" Then
  417. Tabla = "IBON"
  418. End If
  419. sql = "SELECT * FROM [dbo].[" & Tabla & "] T0 WHERE T0.[DocId]=@DocId"
  420. cmd = New SqlCommand
  421. cmd.CommandText = sql
  422. cmd.Parameters.Add("@DocId", SqlDbType.Int).Value = IdRegistro
  423. cmd.Connection = cn
  424. drd = cmd.ExecuteReader
  425. If drd.HasRows Then
  426. 'SE ENCONTRO EL REGISTRO
  427. If drd.Read Then
  428. 'oBonos.CodigoCasaCompra = drd.Item("CodCasaC")
  429. oBonos.ValorNominalCompra = drd.Item("ValNomC")
  430. oBonos.UltimaFechaCuponCompra = drd.Item("UltFCupC")
  431. oBonos.SiguienteFechaCuponCompra = drd.Item("SigFCupC")
  432. oBonos.FechaLiquidacionCompra = drd.Item("FLiqC")
  433. oBonos.FechaVencimientoCompra = drd.Item("FVencC")
  434. oBonos.PorcentajeCuponCompra = drd.Item("PorcCupC")
  435. 'oBonos.YTMAlVencimientoComisionCompra = drd.Item("YTMVencComC")
  436. 'oBonos.YTMAlVencimientoCompra = drd.Item("YTMVencC")
  437. oBonos.PrecioAlVencimientoCompra = drd.Item("PrecVencC")
  438. oBonos.PrecioCompra = drd.Item("PrecioCompra")
  439. oBonos.DiasBaseCompra = drd.Item("DiasBaseC")
  440. 'oBonos.DiasAcumuladosCompra = drd.Item("DiasAcumC")
  441. 'oBonos.DiasAlVencimientoCompra = drd.Item("DiasVencC")
  442. 'oBonos.PorcentajeInteresAcumuladoCompra = drd.Item("PorcIntAcumC")
  443. 'oBonos.InteresAcumuladoCompra = drd.Item("IntAcumC")
  444. 'oBonos.PrecioSucioCompra = drd.Item("PrecioSucioC")
  445. 'oBonos.ValorTransadoCompra = drd.Item("ValTransC")
  446. 'oBonos.MontoAPagarCompra = drd.Item("MontoPagarC")
  447. oBonos.CostoDeTransferenciaCompra = drd.Item("CostoTransC")
  448. 'oBonos.CodigoCasaVenta = drd.Item("CodCasaV")
  449. oBonos.ValorNominalVenta = drd.Item("ValNomV")
  450. oBonos.UltimaFechaCuponVenta = drd.Item("UltFCupV")
  451. oBonos.SiguienteFechaCuponVenta = drd.Item("SigFCupV")
  452. oBonos.FechaLiquidacionVenta = drd.Item("FLiqV")
  453. oBonos.FechaVencimientoVenta = drd.Item("FVencV")
  454. oBonos.PorcentajeCuponVenta = drd.Item("PorcCupV")
  455. 'oBonos.YTMAlVencimientoComisionVenta = drd.Item("YTMVencComV")
  456. 'oBonos.YTMAlVencimientoVenta = drd.Item("YTMVencV")
  457. oBonos.PrecioAlVencimientoVenta = drd.Item("PrecVencV")
  458. oBonos.PrecioVenta = drd.Item("PrecioVenta")
  459. oBonos.DiasBaseVenta = drd.Item("DiasBaseV")
  460. 'oBonos.DiasAcumuladosVenta = drd.Item("DiasAcumV")
  461. 'oBonos.DiasAlVencimientoVenta = drd.Item("DiasVencV")
  462. 'oBonos.PorcentajeInteresAcumuladoVenta = drd.Item("PorcIntAcumV")
  463. 'oBonos.InteresAcumuladoVenta = drd.Item("IntAcumV")
  464. 'oBonos.PrecioSucioVenta = drd.Item("PrecioSucioV")
  465. 'oBonos.ValorTransadoVenta = drd.Item("ValTransV")
  466. 'oBonos.MontoAPagarVenta = drd.Item("MontoPagarV")
  467. oBonos.CostoDeTransferenciaVenta = drd.Item("CostoTransV")
  468. 'oBonos.ValorNominalRO = drd.Item("ValNomRO")
  469. 'oBonos.PlazoRO = drd.Item("PlazoRO")
  470. 'oBonos.PrecioCompraRO = drd.Item("PrecioCompraRO")
  471. 'oBonos.PrecioVentaRO = drd.Item("PrecioVentaRO")
  472. 'oBonos.GananciaPerdidaDeCapital = drd.Item("GanPerdCap")
  473. 'oBonos.IngresoPorInteres = drd.Item("IngrPorInt")
  474. 'oBonos.CostosTotales = drd.Item("CostosTotales")
  475. 'oBonos.GananciaPerdidaTotal = drd.Item("GanPerdTot")
  476. 'oBonos.RendimientoGananciaPerdida = drd.Item("RendGanPerd")
  477. 'oBonos.RendimientoDeIntereses = drd.Item("RendInt")
  478. 'oBonos.RendimientoAntesImpuestos = drd.Item("RendAntISR")
  479. 'oBonos.RendimientoDespuesImpuestos = drd.Item("RendDespISR")
  480. End If
  481. Else
  482. 'NO SE ENCONTRO EL REGISTRO
  483. End If
  484. drd.Close()
  485. cmd.Dispose()
  486. cn.Dispose()
  487. End Sub
  488. Public Function CargarRegistro(ByVal CodigoInversion As String) As BonosCE
  489. Dim objCon As New Conexion
  490. Dim oBonos As BonosCE
  491. Dim drd As SqlDataReader
  492. Dim cmd As SqlCommand
  493. Dim sql As String
  494. Dim cn As SqlConnection = objCon.Conectar
  495. If cn.State = ConnectionState.Closed Then
  496. cn.Open()
  497. End If
  498. sql = "SELECT * FROM [dbo].[BON0] T0 WHERE T0.CodInv=@CodInv"
  499. cmd = New SqlCommand
  500. cmd.CommandText = sql
  501. cmd.Parameters.Add("@CodInv", SqlDbType.VarChar).Value = CodigoInversion
  502. cmd.Connection = cn
  503. drd = cmd.ExecuteReader
  504. If drd.HasRows Then
  505. 'SE ENCONTRO EL REGISTRO
  506. oBonos = New BonosCE
  507. If drd.Read Then
  508. 'oBonos.CodigoCasaCompra = drd.Item("CodCasaC")
  509. oBonos.PeriodicidadCompra = drd.Item("PeriodicV")
  510. oBonos.ValorNominalCompra = drd.Item("ValNomC")
  511. oBonos.UltimaFechaCuponCompra = drd.Item("UltFCupC")
  512. oBonos.SiguienteFechaCuponCompra = drd.Item("SigFCupC")
  513. oBonos.FechaLiquidacionCompra = drd.Item("FLiqC")
  514. oBonos.FechaVencimientoCompra = drd.Item("FVencC")
  515. oBonos.PorcentajeCuponCompra = drd.Item("PorcCupC")
  516. 'oBonos.YTMAlVencimientoComisionCompra = drd.Item("YTMVencComC")
  517. 'oBonos.YTMAlVencimientoCompra = drd.Item("YTMVencC")
  518. oBonos.PrecioAlVencimientoCompra = drd.Item("PrecVencC")
  519. oBonos.PrecioCompra = drd.Item("PrecioCompra")
  520. oBonos.DiasBaseCompra = drd.Item("DiasBaseC")
  521. 'oBonos.DiasAcumuladosCompra = drd.Item("DiasAcumC")
  522. 'oBonos.DiasAlVencimientoCompra = drd.Item("DiasVencC")
  523. 'oBonos.PorcentajeInteresAcumuladoCompra = drd.Item("PorcIntAcumC")
  524. 'oBonos.InteresAcumuladoCompra = drd.Item("IntAcumC")
  525. 'oBonos.PrecioSucioCompra = drd.Item("PrecioSucioC")
  526. 'oBonos.ValorTransadoCompra = drd.Item("ValTransC")
  527. 'oBonos.MontoAPagarCompra = drd.Item("MontoPagarC")
  528. oBonos.CostoDeTransferenciaCompra = drd.Item("CostoTransC")
  529. 'oBonos.CodigoCasaVenta = drd.Item("CodCasaV")
  530. oBonos.PeriodicidadVenta = drd.Item("PeriodicV")
  531. oBonos.ValorNominalVenta = drd.Item("ValNomV")
  532. oBonos.UltimaFechaCuponVenta = drd.Item("UltFCupV")
  533. oBonos.SiguienteFechaCuponVenta = drd.Item("SigFCupV")
  534. oBonos.FechaLiquidacionVenta = drd.Item("FLiqV")
  535. oBonos.FechaVencimientoVenta = drd.Item("FVencV")
  536. oBonos.PorcentajeCuponVenta = drd.Item("PorcCupV")
  537. 'oBonos.YTMAlVencimientoComisionVenta = drd.Item("YTMVencComV")
  538. 'oBonos.YTMAlVencimientoVenta = drd.Item("YTMVencV")
  539. oBonos.PrecioAlVencimientoVenta = drd.Item("PrecVencV")
  540. oBonos.PrecioVenta = drd.Item("PrecioVenta")
  541. oBonos.DiasBaseVenta = drd.Item("DiasBaseV")
  542. 'oBonos.DiasAcumuladosVenta = drd.Item("DiasAcumV")
  543. 'oBonos.DiasAlVencimientoVenta = drd.Item("DiasVencV")
  544. 'oBonos.PorcentajeInteresAcumuladoVenta = drd.Item("PorcIntAcumV")
  545. 'oBonos.InteresAcumuladoVenta = drd.Item("IntAcumV")
  546. 'oBonos.PrecioSucioVenta = drd.Item("PrecioSucioV")
  547. 'oBonos.ValorTransadoVenta = drd.Item("ValTransV")
  548. 'oBonos.MontoAPagarVenta = drd.Item("MontoPagarV")
  549. oBonos.CostoDeTransferenciaVenta = drd.Item("CostoTransV")
  550. 'oBonos.ValorNominalRO = drd.Item("ValNomRO")
  551. 'oBonos.PlazoRO = drd.Item("PlazoRO")
  552. 'oBonos.PrecioCompraRO = drd.Item("PrecioCompraRO")
  553. 'oBonos.PrecioVentaRO = drd.Item("PrecioVentaRO")
  554. 'oBonos.GananciaPerdidaDeCapital = drd.Item("GanPerdCap")
  555. 'oBonos.IngresoPorInteres = drd.Item("IngrPorInt")
  556. 'oBonos.CostosTotales = drd.Item("CostosTotales")
  557. 'oBonos.GananciaPerdidaTotal = drd.Item("GanPerdTot")
  558. 'oBonos.RendimientoGananciaPerdida = drd.Item("RendGanPerd")
  559. 'oBonos.RendimientoDeIntereses = drd.Item("RendInt")
  560. 'oBonos.RendimientoAntesImpuestos = drd.Item("RendAntISR")
  561. 'oBonos.RendimientoDespuesImpuestos = drd.Item("RendDespISR")
  562. End If
  563. Else
  564. 'NO SE ENCONTRO EL REGISTRO
  565. End If
  566. drd.Close()
  567. cmd.Dispose()
  568. cn.Dispose()
  569. Return oBonos
  570. End Function
  571. Public Function Actualizar(ByVal oBonosCE As BonosCE) As Integer
  572. Dim objCon As New Conexion
  573. Dim retorno As Integer
  574. Dim sql As String
  575. Dim cmd As SqlCommand
  576. Dim cn As SqlConnection = objCon.Conectar
  577. If cn.State = ConnectionState.Closed Then
  578. cn.Open()
  579. End If
  580. sql = "UPDATE [dbo].[BON0]
  581. SET [PeriodicC] = @PeriodicC
  582. ,[ValNomC] = @ValNomC
  583. ,[UltFCupC] = @UltFCupC
  584. ,[SigFCupC] = @SigFCupC
  585. ,[FLiqC] = @FLiqC
  586. ,[FVencC] = @FVencC
  587. ,[PorcCupC] = @PorcCupC
  588. ,[YTMVencComC] = @YTMVencComC
  589. ,[PrecVencC] = @PrecVencC
  590. ,[PrecioCompra] = @PrecioCompra
  591. ,[DiasBaseC] = @DiasBaseC
  592. ,[CostoTransC] = @CostoTransC
  593. ,[PeriodicV] = @PeriodicV
  594. ,[ValNomV] = @ValNomV
  595. ,[UltFCupV] = @UltFCupV
  596. ,[SigFCupV] = @SigFCupV
  597. ,[FLiqV] = @FLiqV
  598. ,[FVencV] = @FVencV
  599. ,[PorcCupV] = @PorcCupV
  600. ,[YTMVencComV] = @YTMVencComV
  601. ,[DiasBaseV] = @DiasBaseV
  602. ,[CostoTransV] = @CostoTransV
  603. WHERE [CodInv] = @CodInv
  604. "
  605. cmd = New SqlCommand
  606. cmd.CommandText = sql
  607. With cmd.Parameters
  608. .Add("@PeriodicC", SqlDbType.VarChar).Value = oBonosCE.PeriodicidadCompra
  609. .Add("@ValNomC", SqlDbType.Float).Value = oBonosCE.ValorNominalCompra
  610. .Add("@UltFCupC", SqlDbType.Date).Value = oBonosCE.UltimaFechaCuponCompra
  611. .Add("@SigFCupC", SqlDbType.Date).Value = oBonosCE.SiguienteFechaCuponCompra
  612. .Add("@FLiqC", SqlDbType.Date).Value = oBonosCE.FechaLiquidacionCompra
  613. .Add("@FVencC", SqlDbType.Date).Value = oBonosCE.FechaVencimientoCompra
  614. .Add("@PorcCupC", SqlDbType.Float).Value = oBonosCE.PorcentajeCuponCompra
  615. .Add("@YTMVencComC", SqlDbType.Float).Value = oBonosCE.YTMAlVencimientoComisionCompra
  616. .Add("@PrecVencC", SqlDbType.Float).Value = oBonosCE.PrecioAlVencimientoCompra
  617. .Add("@PrecioCompra", SqlDbType.Float).Value = oBonosCE.PrecioCompra
  618. .Add("@DiasBaseC", SqlDbType.Int).Value = oBonosCE.DiasBaseCompra
  619. .Add("@CostoTransC", SqlDbType.Float).Value = oBonosCE.CostoDeTransferenciaCompra
  620. .Add("@PeriodicV", SqlDbType.VarChar).Value = oBonosCE.PeriodicidadVenta
  621. .Add("@ValNomV", SqlDbType.Float).Value = oBonosCE.ValorNominalVenta
  622. .Add("@UltFCupV", SqlDbType.Date).Value = oBonosCE.UltimaFechaCuponVenta
  623. .Add("@SigFCupV", SqlDbType.Date).Value = oBonosCE.SiguienteFechaCuponVenta
  624. .Add("@FLiqV", SqlDbType.Date).Value = oBonosCE.FechaLiquidacionVenta
  625. .Add("@FVencV", SqlDbType.Date).Value = oBonosCE.FechaVencimientoVenta
  626. .Add("@PorcCupV", SqlDbType.Float).Value = oBonosCE.PorcentajeCuponVenta
  627. .Add("@YTMVencComV", SqlDbType.Float).Value = oBonosCE.YTMAlVencimientoComisionVenta
  628. .Add("@DiasBaseV", SqlDbType.Int).Value = oBonosCE.DiasBaseVenta
  629. .Add("@CostoTransV", SqlDbType.Float).Value = oBonosCE.CostoDeTransferenciaVenta
  630. .Add("@CodInv", SqlDbType.VarChar).Value = oBonosCE.CodigoInversion
  631. End With
  632. cmd.Connection = cn
  633. retorno = cmd.ExecuteNonQuery
  634. GuardarIngresos(oBonosCE.CodigoInversion, oBonosCE.ImpuestosYComisiones)
  635. Me.GuardarImpuestosYComisiones(oBonosCE.CodigoInversion, oBonosCE.ImpuestosYComisiones)
  636. cn.Close()
  637. Return retorno
  638. End Function
  639. Private Sub GuardarIngresos(ByVal CodInversion As String, ByVal dt As DataTable)
  640. Dim objCon As New Conexion
  641. Dim sql As String
  642. Dim cmd As SqlCommand
  643. Dim res As Integer
  644. Dim cn As SqlConnection = objCon.Conectar
  645. If cn.State = ConnectionState.Closed Then
  646. cn.Open()
  647. End If
  648. sql = "DELETE FROM [dbo].[BON1]
  649. WHERE [CodInv]=@CodInv"
  650. cmd = New SqlCommand
  651. cmd.CommandText = sql
  652. cmd.Parameters.Add("@CodInv", SqlDbType.VarChar).Value = CodInversion
  653. cmd.Connection = cn
  654. res = cmd.ExecuteNonQuery
  655. sql = String.Empty
  656. If dt.Rows.Count > 0 Then
  657. For Each dr In dt.Rows
  658. cmd = New SqlCommand
  659. sql = "INSERT INTO [dbo].[BON1]
  660. ([CodInv]
  661. ,[NumCupon]
  662. ,[FechaCupon]
  663. ,[Dias]
  664. ,[Ingreso]
  665. ,[PorcImpuesto]
  666. ,[MontoImpuesto]
  667. ,[Liquido]
  668. )
  669. VALUES
  670. (@CodInv
  671. ,@NumCupon
  672. ,@FechaCupon
  673. ,@Dias
  674. ,@Ingreso
  675. ,@PorcImpuesto
  676. ,@MontoImpuesto
  677. ,@Liquido
  678. )
  679. "
  680. cmd.CommandText = sql
  681. cmd.Parameters.AddWithValue("@CodInv", CodInversion)
  682. cmd.Parameters.AddWithValue("@NumCupon", dr("NumCupon"))
  683. cmd.Parameters.AddWithValue("@FechaCupon", dr("FechaCupon"))
  684. cmd.Parameters.AddWithValue("@Dias", dr("Dias"))
  685. cmd.Parameters.AddWithValue("@Ingreso", dr("Ingreso"))
  686. cmd.Parameters.AddWithValue("@PorcImpuesto", dr("PorcImpuesto"))
  687. cmd.Parameters.AddWithValue("@MontoImpuesto", dr("MontoImpuesto"))
  688. cmd.Parameters.AddWithValue("@Liquido", dr("MontoImpuesto"))
  689. cmd.Connection = cn
  690. res = cmd.ExecuteNonQuery
  691. Next
  692. End If
  693. cn.Close()
  694. End Sub
  695. Private Sub GuardarImpuestosYComisiones(ByVal CodInversion As String, ByVal dt As DataTable)
  696. Dim objCon As New Conexion
  697. Dim sql As String
  698. Dim cmd As SqlCommand
  699. Dim res As Integer
  700. Dim cn As SqlConnection = objCon.Conectar
  701. If cn.State = ConnectionState.Closed Then
  702. cn.Open()
  703. End If
  704. sql = "DELETE FROM [dbo].[BON2]
  705. WHERE [CodInv]=@CodInv"
  706. cmd = New SqlCommand
  707. cmd.CommandText = sql
  708. cmd.Parameters.Add("@CodInv", SqlDbType.VarChar).Value = CodInversion
  709. cmd.Connection = cn
  710. res = cmd.ExecuteNonQuery
  711. sql = String.Empty
  712. If dt.Rows.Count > 0 Then
  713. For Each dr In dt.Rows
  714. cmd = New SqlCommand
  715. sql = "INSERT INTO [dbo].[BON2]
  716. ([CodInv]
  717. ,[TipoOper]
  718. ,[CodImp]
  719. ,[PorcImp]
  720. ,[MontoImp]
  721. ,[MontoSujeto])
  722. VALUES
  723. (@CodInv
  724. ,@TipoOper
  725. ,@CodImp
  726. ,@PorcImp
  727. ,@MontoImp
  728. ,@MontoSujeto)"
  729. cmd.CommandText = sql
  730. cmd.Parameters.AddWithValue("@CodInv", CodInversion)
  731. cmd.Parameters.AddWithValue("@TipoOper", dr("TipoOper"))
  732. cmd.Parameters.AddWithValue("@CodImp", dr("CodImp"))
  733. cmd.Parameters.AddWithValue("@PorcImp", dr("PorcImp"))
  734. cmd.Parameters.AddWithValue("@MontoImp", dr("MontoImp"))
  735. cmd.Parameters.AddWithValue("@MontoSujeto", dr("MontoSujeto"))
  736. cmd.Connection = cn
  737. res = cmd.ExecuteNonQuery
  738. Next
  739. End If
  740. cn.Close()
  741. End Sub
  742. Public Function NuevoImpuesto(ByVal Coleccion As Collection, ByVal Codigo As String)
  743. Dim objCon As New Conexion
  744. Dim retorno As Integer
  745. Dim sql As String
  746. Dim cmd As SqlCommand
  747. Dim cn As SqlConnection = objCon.Conectar
  748. If cn.State = ConnectionState.Closed Then
  749. cn.Open()
  750. End If
  751. sql = "INSERT INTO [dbo].[IMP](
  752. [CodInv]
  753. ,[TipoImp]
  754. ,[TipoOp]
  755. ,[PorcImp]
  756. ,[MontoSuje]
  757. ,[MontoImp]
  758. ) VALUES(
  759. @CodInv
  760. ,@TipoImp
  761. ,@TipoOp
  762. ,@PorcImp
  763. ,@MontoSuje
  764. ,@MontoImp
  765. )
  766. "
  767. cmd = New SqlCommand
  768. cmd.CommandText = sql
  769. With cmd.Parameters
  770. .Add("@CodInv", SqlDbType.VarChar).Value = Codigo
  771. .Add("@TipoImp", SqlDbType.VarChar).Value = Coleccion(1)
  772. .Add("@TipoOp", SqlDbType.VarChar).Value = Coleccion(2)
  773. .Add("@PorcImp", SqlDbType.Float).Value = Coleccion(3)
  774. .Add("@MontoSuje", SqlDbType.Float).Value = Coleccion(4)
  775. .Add("@MontoImp", SqlDbType.Float).Value = Coleccion(5)
  776. End With
  777. cmd.Connection = cn
  778. retorno = cmd.ExecuteNonQuery
  779. cn.Close()
  780. Return retorno
  781. End Function
  782. Public Function NuevoIngreso(ByVal Coleccion As Collection, ByVal Codigo As String, ByVal InstrumentoFinanciero As String)
  783. Dim objCon As New Conexion
  784. Dim retorno As Integer
  785. Dim sql As String
  786. Dim cmd As SqlCommand
  787. Dim Tabla As String
  788. Dim cn As SqlConnection = objCon.Conectar
  789. If cn.State = ConnectionState.Closed Then
  790. cn.Open()
  791. End If
  792. If (InstrumentoFinanciero = "CINV") Then
  793. Tabla = "CIN1"
  794. ElseIf (InstrumentoFinanciero = "BONO") Then
  795. Tabla = "BON1"
  796. ElseIf (InstrumentoFinanciero = "EURB") Then
  797. Tabla = "EURB1"
  798. ElseIf (InstrumentoFinanciero = "TIT") Then
  799. Tabla = "TIT0_0"
  800. Else
  801. Return 0
  802. End If
  803. sql = "INSERT INTO " + Tabla + "(
  804. [CodInv]
  805. ,[NumCupon]
  806. ,[FechaCupon]
  807. ,[Dias]
  808. ,[Ingreso]
  809. ,[PorcImpuesto]
  810. ,[MontoImpuesto]
  811. ,[Liquido]
  812. ) VALUES(
  813. @CodInv
  814. ,@NumCupon
  815. ,@FechaCupon
  816. ,@Dias
  817. ,@Ingreso
  818. ,@PorcImpuesto
  819. ,@MontoImpuesto
  820. ,@Liquido
  821. )
  822. "
  823. cmd = New SqlCommand
  824. cmd.CommandText = sql
  825. Try
  826. With cmd.Parameters
  827. .Add("@CodInv", SqlDbType.VarChar).Value = Codigo
  828. .Add("@NumCupon", SqlDbType.VarChar).Value = Coleccion(1)
  829. .Add("@FechaCupon", SqlDbType.DateTime).Value = Coleccion(2)
  830. .Add("@Dias", SqlDbType.Int).Value = Coleccion(3)
  831. .Add("@Ingreso", SqlDbType.Float).Value = Coleccion(4)
  832. .Add("@PorcImpuesto", SqlDbType.Float).Value = Coleccion(5)
  833. .Add("@MontoImpuesto", SqlDbType.Float).Value = Coleccion(6)
  834. .Add("@Liquido", SqlDbType.Float).Value = Coleccion(7)
  835. End With
  836. cmd.Connection = cn
  837. retorno = cmd.ExecuteNonQuery
  838. Catch ex As Exception
  839. MsgBox("Datos de ingreso no guardados")
  840. Return Nothing
  841. End Try
  842. cn.Close()
  843. Return retorno
  844. End Function
  845. Public Function ModificarIngreso(ByVal Coleccion As Collection, ByVal Codigo As String, ByVal CodigoInstrumento As String)
  846. Dim objCon As New Conexion
  847. Dim retorno As Integer
  848. Dim sql As String
  849. Dim cmd As SqlCommand
  850. Dim Tabla As String
  851. Dim cn As SqlConnection = objCon.Conectar
  852. If cn.State = ConnectionState.Closed Then
  853. cn.Open()
  854. End If
  855. If (CodigoInstrumento = "CINV") Then
  856. Tabla = "CIN1"
  857. ElseIf (CodigoInstrumento = "BONO") Then
  858. Tabla = "BON1"
  859. ElseIf (CodigoInstrumento = "EURB") Then
  860. Tabla = "EURB1"
  861. ElseIf (CodigoInstrumento = "TIT") Then
  862. Tabla = "TIT0_0"
  863. Else
  864. Return 0
  865. End If
  866. sql = "UPDATE " + Tabla + " SET
  867. [FechaCupon]=@FechaCupon
  868. ,[Dias]=@Dias
  869. ,[Ingreso]=@Ingreso
  870. ,[PorcImpuesto]=@PorcImpuesto
  871. ,[MontoImpuesto]=@MontoImpuesto
  872. ,[Liquido]=@Liquido
  873. where [CodInv]=@CodInv AND [NumCupon]=@NumCupon
  874. "
  875. cmd = New SqlCommand
  876. cmd.CommandText = sql
  877. With cmd.Parameters
  878. .Add("@CodInv", SqlDbType.VarChar).Value = Codigo
  879. .Add("@NumCupon", SqlDbType.VarChar).Value = Coleccion(1)
  880. .Add("@FechaCupon", SqlDbType.DateTime).Value = Coleccion(2)
  881. .Add("@Dias", SqlDbType.Int).Value = Coleccion(3)
  882. .Add("@Ingreso", SqlDbType.Float).Value = Coleccion(4)
  883. .Add("@PorcImpuesto", SqlDbType.Float).Value = Coleccion(5)
  884. .Add("@MontoImpuesto", SqlDbType.Float).Value = Coleccion(6)
  885. .Add("@Liquido", SqlDbType.Float).Value = Coleccion(7)
  886. End With
  887. cmd.Connection = cn
  888. retorno = cmd.ExecuteNonQuery
  889. cn.Close()
  890. Return retorno
  891. End Function
  892. Public Sub EliminarImpuesto(ByVal Codigo As String)
  893. Dim objCon As New Conexion
  894. Dim sql As String
  895. Dim cmd As SqlCommand
  896. Dim res As Integer
  897. Dim cn As SqlConnection = objCon.Conectar
  898. If cn.State = ConnectionState.Closed Then
  899. cn.Open()
  900. End If
  901. sql = "DELETE FROM [dbo].[IMP]
  902. WHERE [CodInv]=@CodInv"
  903. cmd = New SqlCommand
  904. cmd.CommandText = sql
  905. cmd.Parameters.Add("@CodInv", SqlDbType.VarChar).Value = Codigo
  906. cmd.Connection = cn
  907. res = cmd.ExecuteNonQuery
  908. cn.Close()
  909. End Sub
  910. Public Sub EliminarIngreso(ByVal Codigo As String, ByVal NoCupon As Integer, ByVal CodigoInstrumento As String)
  911. Dim objCon As New Conexion
  912. Dim sql As String
  913. Dim cmd As SqlCommand
  914. Dim res As Integer
  915. Dim Tabla As String
  916. Dim cn As SqlConnection = objCon.Conectar
  917. If cn.State = ConnectionState.Closed Then
  918. cn.Open()
  919. End If
  920. If (CodigoInstrumento = "CINV") Then
  921. Tabla = "CIN1"
  922. ElseIf (CodigoInstrumento = "BONO") Then
  923. Tabla = "BON1"
  924. ElseIf (CodigoInstrumento = "TIT") Then
  925. Tabla = "TIT0_0"
  926. ElseIf (CodigoInstrumento = "EURB") Then
  927. Tabla = "EURB1"
  928. End If
  929. sql = "DELETE FROM " + Tabla + "
  930. WHERE [CodInv]=@CodInv AND [NumCupon]=@NumCupon"
  931. cmd = New SqlCommand
  932. cmd.CommandText = sql
  933. cmd.Parameters.Add("@CodInv", SqlDbType.VarChar).Value = Codigo
  934. cmd.Parameters.Add("@NumCupon", SqlDbType.Int).Value = NoCupon
  935. cmd.Connection = cn
  936. res = cmd.ExecuteNonQuery
  937. cn.Close()
  938. End Sub
  939. Public Sub EliminarIngresoCompleto(ByVal Codigo As String, ByVal CodigoInstrumento As String)
  940. Dim objCon As New Conexion
  941. Dim sql As String
  942. Dim cmd As SqlCommand
  943. Dim res As Integer
  944. Dim Tabla As String
  945. Dim cn As SqlConnection = objCon.Conectar
  946. If cn.State = ConnectionState.Closed Then
  947. cn.Open()
  948. End If
  949. If (CodigoInstrumento = "CINV") Then
  950. Tabla = "CIN1"
  951. ElseIf (CodigoInstrumento = "BONO") Then
  952. Tabla = "BON1"
  953. End If
  954. sql = "DELETE FROM " + Tabla + "
  955. WHERE [CodInv]=@CodInv "
  956. Try
  957. cmd = New SqlCommand
  958. cmd.CommandText = sql
  959. cmd.Parameters.Add("@CodInv", SqlDbType.VarChar).Value = Codigo
  960. cmd.Connection = cn
  961. res = cmd.ExecuteNonQuery
  962. Catch ex As Exception
  963. MsgBox("Datos no actualizados")
  964. End Try
  965. cn.Close()
  966. End Sub
  967. Public Function CargarImpuestos(ByVal codigo As String)
  968. Dim objCon As New Conexion
  969. Dim cn As SqlConnection = objCon.Conectar
  970. If cn.State = ConnectionState.Closed Then
  971. cn.Open()
  972. End If
  973. Dim sql = "select * from IMP where CodInv='" + codigo + "'"
  974. Dim cmd As New SqlCommand(sql, cn)
  975. Dim dr As SqlDataReader
  976. dr = cmd.ExecuteReader
  977. Return dr
  978. End Function
  979. Public Function CargarIngreso(ByVal codigo As String, ByVal CodigoInstrumento As String)
  980. Dim objCon As New Conexion
  981. Dim Tabla As String
  982. Dim cn As SqlConnection = objCon.Conectar
  983. If cn.State = ConnectionState.Closed Then
  984. cn.Open()
  985. End If
  986. If (CodigoInstrumento = "CINV") Then
  987. Tabla = "CIN1"
  988. ElseIf (CodigoInstrumento = "BONO") Then
  989. Tabla = "BON1"
  990. ElseIf (CodigoInstrumento = "EURB") Then
  991. Tabla = "EURB1"
  992. ElseIf (CodigoInstrumento = "TIT") Then
  993. Tabla = "TIT0_0"
  994. Else
  995. Return 0
  996. End If
  997. Dim sql = "select * from " + Tabla + " where CodInv='" + codigo + "' order by NumCupon"
  998. Dim cmd As New SqlCommand(sql, cn)
  999. Dim dr As SqlDataReader
  1000. dr = cmd.ExecuteReader
  1001. Return dr
  1002. End Function
  1003. End Class