Skip to content

Commit d4ee3f1

Browse files
authored
Update README.md
Adding details of the project in the file README.md
1 parent e721e1e commit d4ee3f1

File tree

1 file changed

+253
-2
lines changed

1 file changed

+253
-2
lines changed

README.md

Lines changed: 253 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,253 @@
1-
# DataGridView
2-
Este proyecto consiste en una aplicacion de venta de productos que agrega los campos decriptivos de un producto al DataGrid para luego hacer el calculo del total a pagar por el cliente
1+
# Project Title: DataGridView
2+
3+
Este proyecto consiste en una aplicacion de venta de productos
4+
que agrega los campos decriptivos de un producto al DataGrid
5+
para luego hacer el calculo del total a pagar por el cliente.
6+
7+
8+
# Descripcion
9+
10+
Este proyecto consiste en el desarrollo de una aplicacion que
11+
lleva a cabo la venta de una serie de productos que han sido
12+
agregados a una Coleccion <List> en el evento Form_Load.
13+
Luego al buscar a cada producto y colocar la cantidad de unidades
14+
a llevar por el cliente, se hace click en un boton que agregara
15+
los productos al DataGrid para posteriormente hacer el calculo
16+
del total a pagar por el cliente por la cantidad de productos
17+
que lleva.
18+
19+
# Actualizacion: 23/01/2025
20+
# Hora: 22:48
21+
22+
Detalles técnicos del proyecto:
23+
Idioma: Visual Basic.NET
24+
Versión del framework: 4.7.2
25+
26+
## Autores
27+
28+
- [@ozzies-code](https://www.github.com/ozzies-code)
29+
30+
## Contribuciones
31+
32+
¡Las contribuciones son siempre bienvenidas!
33+
34+
Consulta `contributing.md` para conocer cómo comenzar.
35+
36+
Por favor, respeta el `código de conducta` de este proyecto.
37+
38+
## Despliegue
39+
40+
Para implementar este proyecto, descargue los archivos del proyecto
41+
del repositorio y el código del proyecto que se encuentra
42+
en el archivo README.md
43+
44+
## 🚀 Acerca de Mi
45+
Soy un apasionado desarrollador fullstack de Venezuela 🇻🇪 y Países Bajos 🇳🇱
46+
47+
48+
🔭 Actualmente estoy trabajando en .NET Framework
49+
50+
🔭 Actualmente estoy trabajando en desarrollo web
51+
52+
🔭 Actualmente estoy trabajando en proyectos de .Console
53+
54+
🔭 Actualmente estoy trabajando en bases de datos .SQL
55+
56+
🌱 Actualmente estoy aprendiendo sobre frameworks, cursos, tutoriales y libros electrónicos
57+
58+
💬 Pregúntame sobre desarrollo de software
59+
60+
📫 Cómo contactarme oswaldojmp.nl@proton.me
61+
62+
👨‍💻 Todos mis proyectos están disponibles en https://developerandtechnologyozziescode.blogspot.com/ (mi sitio web)
63+
64+
📝 Escribo artículos regularmente en Medium.com/Ozzies.Code
65+
66+
## 🔗 Links
67+
[![portfolio](https://img.shields.io/badge/my_portfolio-000?style=for-the-badge&logo=ko-fi&logoColor=white)]( https://developerandtechnologyozziescode.blogspot.com)
68+
[![linkedin](https://img.shields.io/badge/linkedin-0A66C2?style=for-the-badge&logo=linkedin&logoColor=white)](www.linkedin.com/in/oswaldo-jesús-marín-pagés-ab4499a4)
69+
[![twitter](https://img.shields.io/badge/twitter-1DA1F2?style=for-the-badge&logo=twitter&logoColor=white)](https://twitter.com/ozzies_code)
70+
71+
## Lecciones Aprendidas
72+
73+
- Manejo del DataGrid
74+
- eventos de una Coleccion List
75+
- logica de programacion
76+
77+
## image of the Project
78+
79+
![imagen](https://github.com/user-attachments/assets/5c5669a6-f7bd-409b-a5b2-9cfa48770488)
80+
81+
## Soporte
82+
83+
Para soporte, email oswaldojmp.nl@proton.me
84+
85+
## Pila de tecnología
86+
87+
**Plataforma:** Visual studio 2022
88+
89+
**Lenguaje:** Visual Basic.NET
90+
91+
Codigo del Proyecto:
92+
93+
Public Class Form1
94+
95+
Dim listaproductos As New List(Of Producto) 'Lista de productos
96+
97+
98+
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
99+
100+
'Se crean los productos
101+
'Se adhieren los productos a la lista de productos
102+
103+
listaproductos.Add(New Producto("ARROZ X 500GR", 1800))
104+
listaproductos.Add(New Producto("ACEITE X 1000ML", 9800))
105+
listaproductos.Add(New Producto("ATUN EN LATA MARCA XYZ", 5400))
106+
listaproductos.Add(New Producto("SALSA DE TOMATE X 500GR", 4300))
107+
108+
desactivaTextBox() 'ver en la rutina
109+
110+
'Dim codigo As DataGridViewColumn
111+
112+
'codigo.HeaderText = "Codigo"
113+
'codigo.CellTemplate = New DataGridViewTextBoxCell
114+
'dgvProductos.Columns.Add(codigo)
115+
'Esto se realizo por las propiedades del DataGridView
116+
117+
118+
End Sub
119+
120+
Private Sub limpiaTextBox()
121+
122+
'Se limpian los TextBox de la interfaz
123+
124+
txtCodigo.Clear()
125+
txtDescripcion.Clear()
126+
txtPrecioU.Clear()
127+
txtCantidad.Clear()
128+
txtTotal.Clear()
129+
130+
End Sub
131+
132+
Private Sub txtCantidad_LostFocus(sender As Object, e As EventArgs) Handles txtCantidad.LostFocus
133+
134+
'Se calcula el total de la compra
135+
'Se valida que la cantidad sea mayor a 0 y el campo no este vacio
136+
137+
138+
If txtCantidad.Text <> " " And Val(txtCantidad.Text) > 0 Then
139+
Dim total As Double = Val(txtPrecioU.Text) * Val(txtCantidad.Text)
140+
141+
txtTotal.Text = total.ToString
142+
End If
143+
End Sub
144+
145+
Private Sub desactivaTextBox()
146+
147+
'Se desactivan los TextBox de la interfaz
148+
149+
txtDescripcion.Enabled = False
150+
txtPrecioU.Enabled = False
151+
txtTotal.Enabled = False
152+
End Sub
153+
154+
Private Sub txtCodigo_LostFocus(sender As Object, e As EventArgs) Handles txtCodigo.LostFocus
155+
156+
'Se busca el producto en la lista de productos
157+
'Se muestra la descripcion y el precio del producto en los TextBox
158+
'Se captura la excepcion si el codigo no existe
159+
160+
Try
161+
Dim codigo As String = txtCodigo.Text.ToUpper
162+
163+
For i = 0 To listaproductos.Count - 1 Step 1
164+
If codigo.Equals(listaproductos.Item(i).Codigo_Producto) Then
165+
166+
txtDescripcion.Text = listaproductos.Item(i).Descripcion_Producto
167+
txtPrecioU.Text = listaproductos.Item(i).Precio_Producto
168+
Exit For
169+
End If
170+
Next
171+
Catch ex As Exception
172+
MsgBox("El codigo ingresado no existe")
173+
End Try
174+
End Sub
175+
176+
Private Sub dgvProductos_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles dgvProductos.CellContentClick
177+
178+
End Sub
179+
180+
Private Sub btnAgregar_Click(sender As Object, e As EventArgs) Handles btnAgregar.Click
181+
182+
'Se agregan los campos a la tabla de productos
183+
184+
dgvProductos.Rows.Add(txtCodigo.Text, txtDescripcion.Text, txtPrecioU.Text, txtCantidad.Text, txtTotal.Text)
185+
186+
187+
End Sub
188+
189+
Private Sub btnVertotales_Click(sender As Object, e As EventArgs) Handles btnVertotales.Click
190+
191+
'Se calculan los totales de la venta
192+
'Se recorre la tabla de productos y se suman los totales
193+
'Se calcula el subtotal, el iva y el total de la venta
194+
'Se muestran los totales en los TextBox
195+
196+
Dim total As Double = 0
197+
198+
For i = 0 To dgvProductos.Rows.Count - 1 Step 1
199+
total += dgvProductos.Rows.Item(i).Cells.Item(4).Value
200+
201+
Next
202+
203+
Dim subtotal As Double = total - (total * 0.19)
204+
Dim iva As Double = total * 0.19
205+
206+
txtSubtotal.Text = subtotal.ToString
207+
txtIva.Text = iva.ToString
208+
txtTotalVenta.Text = total.ToString
209+
End Sub
210+
211+
Public Class Producto
212+
213+
'Atributoso Miembros de la clase
214+
'Variables de Clase
215+
Private codigo As String
216+
Private descripcion As String
217+
Private precioU As Double
218+
Private Shared indiceCodigo As Integer = 1 'Atributo Compartido que automatiza el valor del atributo Codigo
219+
220+
Public Sub New(ByVal des As String, ByVal pu As Double)
221+
222+
codigo = "AR00" & indiceCodigo 'Texto + numeros. Inicia con 1/
223+
indiceCodigo += 1
224+
descripcion = des
225+
precioU = pu
226+
227+
End Sub
228+
229+
Public ReadOnly Property Codigo_Producto As String
230+
231+
Get
232+
Return codigo
233+
End Get
234+
End Property
235+
236+
Public ReadOnly Property Descripcion_Producto As String
237+
238+
Get
239+
Return descripcion
240+
End Get
241+
End Property
242+
243+
Public ReadOnly Property Precio_Producto As String
244+
245+
Get
246+
Return precioU
247+
End Get
248+
End Property
249+
250+
251+
End Class
252+
253+
End Class

0 commit comments

Comments
 (0)