ReportosDAO.vb 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230
  1. Imports System.Data.SqlClient
  2. Public Class ReportosDAO
  3. Dim oCon As New Conexion
  4. Dim cn As SqlConnection
  5. Public Function Nuevo(ByVal oReporto As ReportosCE) As Integer
  6. Dim retorno As Integer
  7. Return retorno
  8. End Function
  9. Public Function Nuevo(ByVal oReporto As ReportosCE, DocId As Integer, Tipo As String) As Integer
  10. Dim retorno As Integer = -1
  11. Dim Transaccion As SqlTransaction
  12. Dim query As String
  13. Dim Tabla As String = ""
  14. If Tipo = "P" Then
  15. Tabla = "PREP"
  16. End If
  17. If Tipo = "I" Then
  18. Tabla = "IREP"
  19. End If
  20. cn = oCon.Conectar
  21. cn.Open()
  22. Dim cmd As SqlCommand = cn.CreateCommand
  23. Transaccion = cn.BeginTransaction("NuevoLete")
  24. cmd.Connection = cn
  25. cmd.Transaction = Transaccion
  26. query = "INSERT INTO [dbo].[PREP]
  27. ([DocId]
  28. ,[CodCasa]
  29. ,[Nombre]
  30. ,[FCompra]
  31. ,[ValTrans]
  32. ,[Dias]
  33. ,[FVenc]
  34. ,[Rend]
  35. ,[Impuestos]
  36. ,[OtrosCostos]
  37. ,[TotCostos]
  38. ,[MontoLiq]
  39. ,[InterGen]
  40. ,[CostoTransfr]
  41. ,[RendNetoAntImp]
  42. ,[ValReCompra]
  43. ,[ImpLiquidacion]
  44. ,[IngrNeto]
  45. ,[ValNeto]
  46. ,[RendNetoDespImp])
  47. VALUES
  48. (@DocId
  49. ,@CodCasa
  50. ,@Nombre
  51. ,@FCompra
  52. ,@ValTrans
  53. ,@Dias
  54. ,@FVenc
  55. ,@Rend
  56. ,@Impuestos
  57. ,@OtrosCostos
  58. ,@TotCostos
  59. ,@MontoLiq
  60. ,@InterGen
  61. ,@CostoTransfr
  62. ,@RendNetoAntImp
  63. ,@ValReCompra
  64. ,@ImpLiquidacion
  65. ,@IngrNeto
  66. ,@ValNeto
  67. ,@RendNetoDespImp
  68. )"
  69. cmd.CommandText = query
  70. With cmd.Parameters
  71. .Add("@DocId", SqlDbType.Int).Value = DocId
  72. .Add("@CodCasa", SqlDbType.VarChar).Value = oReporto.CodigoCasa
  73. .Add("@Nombre", SqlDbType.VarChar).Value = oReporto.Nombre
  74. .Add("@FCompra", SqlDbType.DateTime).Value = oReporto.FechaDeCompra
  75. .Add("@ValTrans", SqlDbType.Decimal).Value = oReporto.ValorTransado
  76. .Add("@Dias", SqlDbType.Int).Value = oReporto.Dias
  77. .Add("@FVenc", SqlDbType.DateTime).Value = oReporto.FechaVencimiento
  78. .Add("@Rend", SqlDbType.Decimal).Value = oReporto.Rendimiento
  79. .Add("@Impuestos", SqlDbType.Decimal).Value = oReporto.Impuestos
  80. .Add("@OtrosCostos", SqlDbType.Decimal).Value = oReporto.OtrosCostos
  81. .Add("@TotCostos", SqlDbType.Decimal).Value = oReporto.TotalCostos
  82. .Add("@MontoLiq", SqlDbType.Decimal).Value = oReporto.MontoALiquidar
  83. .Add("@InterGen", SqlDbType.Decimal).Value = oReporto.InteresAGenerar
  84. .Add("@CostoTransfr", SqlDbType.Decimal).Value = oReporto.CostoDeTransferencia
  85. .Add("@RendNetoAntImp", SqlDbType.Decimal).Value = oReporto.RendimientoNetoAntesDeImpuestos
  86. .Add("@ValReCompra", SqlDbType.Decimal).Value = oReporto.ValorReCompra
  87. .Add("@ImpLiquidacion", SqlDbType.Decimal).Value = oReporto.ImpuestosLiquidacion
  88. .Add("@IngrNeto", SqlDbType.Decimal).Value = oReporto.IngresoNeto
  89. .Add("@ValNeto", SqlDbType.Decimal).Value = oReporto.ValorNeto
  90. .Add("@RendNetoDespImp", SqlDbType.Decimal).Value = oReporto.RendimientoNetoDespuesDeImpuestos
  91. End With
  92. Try
  93. cmd.ExecuteNonQuery()
  94. Transaccion.Commit()
  95. retorno = 0
  96. Catch ex As Exception
  97. MsgBox("Error al Guardar Reporto : " & ex.GetType.ToString)
  98. MsgBox("Mensaje: " & ex.Message)
  99. retorno = 1
  100. Try
  101. Transaccion.Rollback()
  102. retorno = 2
  103. Catch ex2 As Exception
  104. MsgBox("Error en Rollback: " & ex2.GetType.ToString)
  105. MsgBox("Mensaje Rollbak: " & ex2.Message)
  106. retorno = 3
  107. End Try
  108. End Try
  109. cmd.Dispose()
  110. cn.Dispose()
  111. Return retorno
  112. End Function
  113. Public Sub CargarRegistro(ByVal oReportos As ReportosCE, Tipo As String, IdRegistro As Integer)
  114. Dim drd As SqlDataReader
  115. Dim cmd As SqlCommand
  116. Dim sql As String
  117. Dim Tabla As String
  118. If Tipo = "P" Then
  119. Tabla = "PREP"
  120. End If
  121. If Tipo = "I" Then
  122. Tabla = "IREP"
  123. End If
  124. sql = "SELECT * FROM [dbo].[" & Tabla & "] T0 WHERE T0.[DocId]=@DocId"
  125. cn = oCon.Conectar
  126. cn.Open()
  127. cmd = New SqlCommand
  128. cmd.CommandText = sql
  129. cmd.Parameters.Add("@DocId", SqlDbType.Int).Value = IdRegistro
  130. cmd.Connection = cn
  131. drd = cmd.ExecuteReader
  132. If drd.HasRows Then
  133. 'SE ENCONTRO EL REGISTRO
  134. If drd.Read Then
  135. oReportos.CodigoCasa = drd.Item("CodCasa")
  136. oReportos.Nombre = drd.Item("Nombre")
  137. oReportos.FechaDeCompra = drd.Item("FCompra")
  138. oReportos.ValorTransado = drd.Item("ValTrans")
  139. oReportos.Dias = drd.Item("Dias")
  140. oReportos.FechaVencimiento = drd.Item("FVenc")
  141. oReportos.Rendimiento = drd.Item("Rend")
  142. oReportos.Impuestos = drd.Item("Impuestos")
  143. oReportos.OtrosCostos = drd.Item("OtrosCostos")
  144. 'oReportos.TotalCostos = drd.Item("TotCostos")
  145. oReportos.MontoALiquidar = drd.Item("MontoLiq")
  146. 'oReportos.InteresAGenerar = drd.Item("InterGen")
  147. oReportos.CostoDeTransferencia = drd.Item("CostoTransfr")
  148. 'oReportos.RendimientoNetoAntesDeImpuestos = drd.Item("RendNetoAntImp")
  149. oReportos.ValorReCompra = drd.Item("ValReCompra")
  150. oReportos.ImpuestosLiquidacion = drd.Item("ImpLiquidacion")
  151. 'oReportos.IngresoNeto = drd.Item("IngrNeto")
  152. oReportos.ValorNeto = drd.Item("ValNeto")
  153. 'oReportos.RendimientoNetoDespuesDeImpuestos = drd.Item("RendNetoDespImp")
  154. End If
  155. Else
  156. 'NO SE ENCONTRO EL REGISTRO
  157. End If
  158. drd.Close()
  159. cmd.Dispose()
  160. cn.Dispose()
  161. End Sub
  162. Public Function CargarRegistro(ByVal vCodigoInversion As String) As ReportosCE
  163. Dim oReportosCE As ReportosCE
  164. Dim sql As String
  165. Dim cmd As SqlCommand
  166. Dim drd As SqlDataReader
  167. oReportosCE = New ReportosCE
  168. sql = "SELECT * FROM [dbo].[REP0] T0 WHERE T0.[CodInv]=@CodInv"
  169. cn = oCon.Conectar
  170. If Not cn.State = ConnectionState.Open Then
  171. cn.Open()
  172. End If
  173. cmd = New SqlCommand
  174. cmd.CommandText = sql
  175. cmd.Parameters.Add("@CodInv", SqlDbType.VarChar).Value = vCodigoInversion
  176. cmd.Connection = cn
  177. drd = cmd.ExecuteReader
  178. If drd.HasRows Then
  179. 'SE ENCONTRO EL REGISTRO
  180. If drd.Read Then
  181. oReportosCE.CodigoInversion = vCodigoInversion
  182. oReportosCE.Nombre = drd.Item("Nombre")
  183. oReportosCE.FechaDeCompra = drd.Item("FCompra")
  184. oReportosCE.ValorTransado = drd.Item("ValTrans")
  185. oReportosCE.Dias = drd.Item("Dias")
  186. oReportosCE.FechaVencimiento = drd.Item("FVenc")
  187. oReportosCE.Rendimiento = drd.Item("Rend")
  188. End If
  189. Else
  190. 'NO SE ENCONTRO EL REGISTRO
  191. End If
  192. drd.Close()
  193. cmd.Dispose()
  194. cn.Dispose()
  195. Return oReportosCE
  196. End Function
  197. End Class