Estimados, tengo una situación que no sé cómo enfrentarlo, tengo los siguientes records:
//Guardamos las salidas de cada insumo TTotalSalidas = record tsTitulo: String; tsTotal: Extended; tsSubMonto: Extended; tsItbis: Extended; tsMonto: Extended; end; //Guardamos el inicial del mes anterior TTotalInicial = record tiTitulo: String; tiTotal: Extended; tiSubMonto: Extended; tiItbis: Extended; tiMonto: Extended; end; //Guardamos todas las entradas TTotalEntradas = record teTitulo: String; teTotal: Extended; teSubMonto: Extended; teItbis: Extended; teMonto: Extended; end; //Guardamos los insumos con sus datos TInsumoData = record ICodigo: Integer; INombre: String; ICategoria: String; ISalidas: TTotalSalidas; IEntradas: TTotalEntradas; IInicial: TTotalInicial; end;
Los datos de esos records debo guardarlos en este otro:
//Guardamos los datos del corte TCorteInventario = record CCategoria: String; CInsumos: TList<TInsumoData>; end;
Aquí ya la cosa se complica, TCorteInventario tiene una Lista TList<TInsumoData> y debo hacer una iteración de datos y guardarlo en CInsumos, el detalle es que creo tendría problemas de crear y eliminar la lista, pero eso no es todo, yo necesito hacer una lista de TCorteInventario, algo así:
Cortes: TList<TCorteInventario>;
De nuevo, aquí tengo el problema de nuevo de la creación y eliminación de las listas.
la lista debería de quedar como una especie de arreglo:
Cortes = [
corte-1 -> [
CCategoria = 'BATERIAS';
CInsumos = [
insumo-1 = [
Nombre = BATERIA 15/12 CELDA HUMEDAS
ISalidas = [ titulo = 'DESPACHOS', cantidad = 65, Susbmonto = 1,000, itbis = 50, monto = 1050 ],
IEntradas = [ titulo = 'ENTRADAS', cantidad = 20, Susbmonto = 450, itbis = 50, monto = 500 ],
IInicial = [ titulo = 'CORTE INICIAL', cantidad = 120, Susbmonto = 4,000, itbis = 250, monto = 4,250 ]
],
insumo-2 = [
Nombre = BATERIA 25/12 CELDA HUMEDA
ISalidas = [ titulo = 'DESPACHOS', cantidad = 65, Susbmonto = 1,000, itbis = 50, monto = 1050 ],
IEntradas = [ titulo = 'ENTRADAS', cantidad = 20, Susbmonto = 450, itbis = 50, monto = 500 ],
IInicial = [ titulo = 'CORTE INICIAL', cantidad = 120, Susbmonto = 4,000, itbis = 250, monto = 4,250 ]
],
...
]
],
corte-2 -> [
CCategoria = 'HERRAMIENTAS';
CInsumos = [
insumo-1 = [
Nombre = DESTORNILLADOR PLANO 4"
ISalidas = [ titulo = 'DESPACHOS', cantidad = 65, Susbmonto = 1,000, itbis = 50, monto = 1050 ],
IEntradas = [ titulo = 'ENTRADAS', cantidad = 20, Susbmonto = 450, itbis = 50, monto = 500 ],
IInicial = [ titulo = 'CORTE INICIAL', cantidad = 120, Susbmonto = 4,000, itbis = 250, monto = 4,250 ]
],
insumo-2 = [
Nombre = MARTILLO 8"
ISalidas = [ titulo = 'DESPACHOS', cantidad = 65, Susbmonto = 1,000, itbis = 50, monto = 1050 ],
IEntradas = [ titulo = 'ENTRADAS', cantidad = 20, Susbmonto = 450, itbis = 50, monto = 500 ],
IInicial = [ titulo = 'CORTE INICIAL', cantidad = 120, Susbmonto = 4,000, itbis = 250, monto = 4,250 ]
],
...
]
]
corte-3 -> [
CCategoria = 'NEUMATICOS';
CInsumos = [
insumo-1 = [
Nombre = GOMA 175/R15
ISalidas = [ titulo = 'DESPACHOS', cantidad = 65, Susbmonto = 1,000, itbis = 50, monto = 1050 ],
IEntradas = [ titulo = 'ENTRADAS', cantidad = 20, Susbmonto = 450, itbis = 50, monto = 500 ],
IInicial = [ titulo = 'CORTE INICIAL', cantidad = 120, Susbmonto = 4,000, itbis = 250, monto = 4,250 ]
],
insumo-2 = [
Nombre = GOMA 245/R16
ISalidas = [ titulo = 'DESPACHOS', cantidad = 65, Susbmonto = 1,000, itbis = 50, monto = 1050 ],
IEntradas = [ titulo = 'ENTRADAS', cantidad = 20, Susbmonto = 450, itbis = 50, monto = 500 ],
IInicial = [ titulo = 'CORTE INICIAL', cantidad = 120, Susbmonto = 4,000, itbis = 250, monto = 4,250 ]
],
...
]
]
]
Se me ocurre utilizar un array of TInsumoData en el record TCorteInventario, la verdad no sé cómo atacar éste asunto..
¿Alguna idea?