Está en la página 1de 4

Prueba C# Desarrollador Junior

Datos de Conexión BBDD:

Host: ec2-44-204-162-194.compute-1.amazonaws.com
Puerto: 1521
SID: xe
Usuario: PRUEBA

Diagrama Relacional:

El lenguaje de programación utilizado para resolver los ejercicios debe ser C#

Conexión a BBDD: Para la conexión a la base de datos se puede utilizar el paquete de NuGet:
Oracle.ManagedDataAccess.

Ejercicios

1. Realice un programa de Windows Forms con 2 pestañas (Productos, Histórico):

Pestaña Productos:

Crear un botón llamado Buscar y un ComboBox que cargue sus opciones de los datos de la
tabla PSCRIPT.CATEGORIA cuando se ejecute la aplicación (evento form load), deberá guardar
los datos de las columnas ID y NOMBRE en el ComboBox y mostrar la columna NOMBRE al
desplegar:
En el evento click del botón realizar una búsqueda en la tabla PSCRIPT.PRODUCTO por la
columna ID_CATEGORIA obteniendo el valor del ID de la categoría seleccionada en el
ComboBox, cargar los datos en un DataGridView (Esto desde el mismo evento de click del
botón Buscar), las columnas a mostrar son:

Id: PSCRIPT.PRODUCTO.ID
Nombre: PSCRIPT.PRODUCTO.NOMBRE
Precio Unitario: PSCRIPT.PRODUCTO.PRECIO

Los valores de la columna Precio Unitario debe ser mostradas en formato moneda.

Pestaña Historico:

Crear un TextBox en el cual se ingresará el documento para realizar la búsqueda en la tabla


PSCRIPT.CLIENTE por la columna DOCUMENTO. Al darle click al botón Buscar, este traerá los
datos de las columnas NOMBRES, APELLIDOS y serán cargados en TextBoxs de solo lectura:

Adicionalmente mostrar los datos de las tablas PSCRIPT.PRODUCTO y


PSCRIPT.CLIENTE_PRODUCTO asociadas al cliente y cargar los datos en un DataGridView (Esto
desde el mismo evento de click del botón Buscar), las columnas a mostrar son:

Nombre: PSCRIPT.PRODUCTO.NOMBRE
Fecha: PSCRIPT.CLIENTE_PRODUCTO.FECHA
Cantidad: PSCRIPT.CLIENTE_PRODUCTO.CANTIDAD
Precio Unitario: PSCRIPT.PRODUCTO.PRECIO
Precio Total: Precio Unitario*Cantidad

Los valores de las columnas Precio Unitario y Precio Total deben ser mostradas en formato
moneda.
2. Crear un web api con un endpoint llamado Clientes el cual reciba el id del cliente en la url y
devuelva los datos de la tabla PSCRIPT.CLIENTE relacionada con las tablas
PSCRIPT.PRODUCTO y PSCRIPT.CLIENTE_PRODUCTO por método GET. La respuesta debe
ser dada en Json y su estructura debe ser:

• Cliente
o Id: PSCRIPT. CLIENTE.ID
o Documento: PSCRIPT. CLIENTE.DOCUMENTO
o Nombres: PSCRIPT. CLIENTE.NOMBRES
o Apellidos: PSCRIPT. CLIENTE.APELLIDOS
o ProductosComprados:
▪ Id: PSCRIPT. PRODUCTO.ID
▪ Nombre: PSCRIPT. PRODUCTO.NOMBRE
▪ Fecha: PSCRIPT.CLIENTE_PRODUCTO.FECHA
▪ Cantidad: PSCRIPT.CLIENTE_PRODUCTO.CANTIDAD
▪ PrecioUnitario: PSCRIPT.PRODUCTO.PRECIO (formato moneda)
▪ PrecioTotal: PrecioUnitario*Cantidad (formato moneda)

Si se quiere buscar la información del cliente con id 84 la url seria http://xxxxxxx/api/Clientes/84 y


el Json respuesta:

{
"Id": 84,
"Documento": "1406120072",
"Nombres": "Hortensia",
"Apellidos": "Pardo",
"ProductosComprados": [
{
"Id": 4,
"Nombre": "Sardinas",
"Fecha": "2022-04-13T09:58:05",
"Cantidad": 7,
"PrecioUnitario": "$ 3.950",
"PrecioTotal": "$ 27.650"
},
{
"Id": 7,
"Nombre": "Leche",
"Fecha": "2022-03-22T21:18:51",
"Cantidad": 5,
"PrecioUnitario": "$ 7.800",
"PrecioTotal": "$ 39.000"
},
{
"Id": 9,
"Nombre": "Mantequilla",
"Fecha": "2022-04-11T09:42:02",
"Cantidad": 9,
"PrecioUnitario": "$ 5.250",
"PrecioTotal": "$ 47.250"
},
{
"Id": 10,
"Nombre": "Queso",
"Fecha": "2022-04-26T09:51:05",
"Cantidad": 7,
"PrecioUnitario": "$ 9.790",
"PrecioTotal": "$ 68.530"
},
{
"Id": 13,
"Nombre": "Gomas",
"Fecha": "2022-01-12T09:55:45",
"Cantidad": 7,
"PrecioUnitario": "$ 1.790",
"PrecioTotal": "$ 12.530"
},
{
"Id": 14,
"Nombre": "Masmelos",
"Fecha": "2022-01-28T11:27:43",
"Cantidad": 5,
"PrecioUnitario": "$ 4.890",
"PrecioTotal": "$ 24.450"
},
{
"Id": 16,
"Nombre": "Pan",
"Fecha": "2022-03-27T14:08:32",
"Cantidad": 10,
"PrecioUnitario": "$ 2.150",
"PrecioTotal": "$ 21.500"
},
{
"Id": 19,
"Nombre": "Gaseosa",
"Fecha": "2022-01-04T11:06:59",
"Cantidad": 5,
"PrecioUnitario": "$ 1.800",
"PrecioTotal": "$ 9.000"
},
{
"Id": 19,
"Nombre": "Gaseosa",
"Fecha": "2022-04-17T11:25:11",
"Cantidad": 3,
"PrecioUnitario": "$ 1.800",
"PrecioTotal": "$ 5.400"
}
]
}

También podría gustarte