
PC Shop — AGOSTO, Semana 1-2 — #POST 2
En esta segunda jornada de agosto se modifica la forma en la que el formulario actualiza el TStringGrid.
Hasta ahora, determinadas operaciones modificaban directamente las filas de la tabla. En esta sesión se crea el procedimiento ActualizarTablaDesdeColeccion, que reconstruye completamente el contenido del TStringGrid utilizando los objetos almacenados en FProductos.
Trabajo realizado:

Se declara e implementa ActualizarTablaDesdeColeccion.

Se ajusta automáticamente el número de filas.

Se recorre TObjectList<TProducto>.

Se muestran en la tabla las propiedades de cada producto.

Guardar deja de escribir directamente en el TStringGrid.

Eliminar deja de desplazar manualmente las filas.

La tabla se actualiza después de añadir o eliminar productos.

Se eliminan variables y código que dejan de ser necesarios.
Resultado:
FProductos constituye la fuente principal de información. El TStringGrid deja de almacenar o gestionar directamente los datos y se limita a representar visualmente el contenido de la colección.
Flujo actual:
Formulario
↓
TProducto
↓
TObjectList<TProducto>
↓
ActualizarTablaDesdeColeccion
↓
TStringGrid
Dificultad resuelta:
Al declarar ActualizarTablaDesdeColeccion sin implementar el método, Delphi muestra el siguiente error:
E2065 Unsatisfied forward or external declaration
El error se resuelve implementando el procedimiento correspondiente dentro de la sección implementation.
Próximo objetivo:
Permitir seleccionar un producto desde el TStringGrid, cargar sus propiedades en los campos del formulario y preparar la edición de productos existentes.
Commit conceptual:
refactor(productos): actualizar TStringGrid desde la colección de productos

Estado: En desarrollo

Delphi 12.1 Community Edition

VCL para Windows 10/11