Delphi - Pues no se pudo rellenar la picklist en runtime

 
Vista:

Pues no se pudo rellenar la picklist en runtime

Publicado por Madrigal (5 intervenciones) el 10/04/2006 18:41:19
Antes que nada muchas gracias por atender mi mensaje. Ya me recomendaron varias formas de manejar mi código para la aplicación que estoy desarrollando de ventas, en la que tengo que generar una pantalla con una DBGrid en la que, en base al código del producto me encuentre sus caracteristicas, ademas de que me de la opción de escoger entre 3 precios de venta que maneja cada producto. Esos precios los tiene cada registro de cada producto y lo que quiero es rellenar una picklist del campo "Precio Unitario" con esos valores para que el usuario escoja de acuerdo a la situación. El código es:

procedure TModDatos.TRenglonesFacturasCodigoChange(Sender: TField);
begin
if TProductos.FindKey ([TRenglonesFacturasCodigo.Value]) then
begin
if TRenglonesFacturas.State in [dsEdit, dsInsert] then
TRenglonesFacturas.FieldByName('Descripcion').AsString:=
TProductos.FieldByName('Descripcion').AsString;
MDIVentas.DBGrid1.Columns[3].PickList.Clear;
MDIVentas.DBGrid1.Columns[3].PickList.Add (TProductosVenta1.AsString);
MDIVentas.DBGrid1.Columns[3].PickList.Add (TProductosVenta2.AsString);
MDIVentas.DBGrid1.Columns[3].PickList.Add (TProductosVenta3.AsString);
end
else
ShowMessage ('Producto no encontrado');
end;

Pues con solo mencionar la linea "MDIVentas.DBGrid1.Columns[3].PickList.Clear" el programa me manda el error:

"access violation at address 004D7C5F in module 'refac.exe'. Read of address 0000033C"

MDIVentas es la form de tipo MDI que contiene la DBGrid y "refac.exe" es el ejecutable de mi programa. El código ya contiene todas las modificaciones que me recomendaron, y aun asi sigo con problemas. Por favor les suplico me resuelvan este problema, puesto que ya me estan exigiendo resultados y el cliente lo quiere forzosamente de esa manera.

Aprovechando, tengo otro problemita: instalé Delphi 5 en una máquina laptop con Windows XP SP 2 que contiene también Clipper, al parecer a este último le afecto en algo la instalación de Delphi porque a veces, al querer compilar, no encuentra las rutas que se le indicaron en el archivo "autoexec.nt", ya los revisé (autoexec.nt y autoexec.bat) y permanecen iguales sin modificaciones. Si alguien ha tenido alguna experiencia parecida le ruego me conteste. Gracias.

Atte: C. Madrigal. México
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Pues no se pudo rellenar la picklist en runtime

Publicado por Sebastian Corradi (25 intervenciones) el 12/04/2006 22:15:33
Mirá: 1ero no se de que tipo es PickList
2do: es una locura querer modifica las columnas de un db grid
3ro quizas el DBGrid1.datasource.dataset no esté en estado insercion o edicion

4to Si Queres cambiar unas imagenes dibujadas en una DBGrid me parece que lo mejor es hacelo en el metodo drawcolumnCell en la propia DBGrid.
pero no se como viene la historia , si queres escibime a mi mail, pero no estoy con mucho tiempo asi que no prometo una pronta respuesta
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar