josejose
26-01-2007, 17:37:13
Tengo la siguiente inquietud tengo un programa que emite una factura
En dicho programa tengo una relación maestro detalle con los siguientes campos
Tabla Maestro
Código _ maestro
Factura
Fecha
Cliente
Tabla detalle
Código _ detalle
Código _ maestro
Código _ articulo
Descripción
Precio
La relación esta clara
Tengo un Dbgrid en la parte del detalle y cuando hago clic en la parte del código _ articulo me llama el articulo y trae su descripción y el precio
Lo que me gustaría poder hacer es controlar que el usuario no pueda meter un articulo si esta dentro de la factura y poder ordenar los para que queden agrupados
Aquí esta el ejemplo del código que utilizo para introducir el articulo en la factura
var ls_cuenta: string;
begin
tbl_detallecotizacion.Edit;
ls_cuenta := Tbl_Detallecotizacion.FieldbyName('Codigo_Articulos').AsString;
Qry_Articulos.Close;
with qry_Articulos do begin
with sql do begin
clear;
add ('select * from Articulos');
add ('where Codigo_Articulos = ');
add (''''+ls_cuenta+'''');
prepared;
open;
if recordcount = 0 then
begin
ShowMessage('Cuenta no existe en Catalogo de cuentas');
Abort;
end;
if Dts_DetalleOrden.State in [dsinsert,dsedit] then
Tbl_Detallecotizacion.FieldByName('Descripcion_Articulos').Asstring := Qry_Articulos.FieldByname('Descripcion_Articulos').Value;
Estoy trabajando en delphi7 y access 2003
Recuerden por favor explicar me con algo de código no tengo tantos conocimientos como ustedes pero espero aprender cada día mas gracias a esta gran comunidad
En dicho programa tengo una relación maestro detalle con los siguientes campos
Tabla Maestro
Código _ maestro
Factura
Fecha
Cliente
Tabla detalle
Código _ detalle
Código _ maestro
Código _ articulo
Descripción
Precio
La relación esta clara
Tengo un Dbgrid en la parte del detalle y cuando hago clic en la parte del código _ articulo me llama el articulo y trae su descripción y el precio
Lo que me gustaría poder hacer es controlar que el usuario no pueda meter un articulo si esta dentro de la factura y poder ordenar los para que queden agrupados
Aquí esta el ejemplo del código que utilizo para introducir el articulo en la factura
var ls_cuenta: string;
begin
tbl_detallecotizacion.Edit;
ls_cuenta := Tbl_Detallecotizacion.FieldbyName('Codigo_Articulos').AsString;
Qry_Articulos.Close;
with qry_Articulos do begin
with sql do begin
clear;
add ('select * from Articulos');
add ('where Codigo_Articulos = ');
add (''''+ls_cuenta+'''');
prepared;
open;
if recordcount = 0 then
begin
ShowMessage('Cuenta no existe en Catalogo de cuentas');
Abort;
end;
if Dts_DetalleOrden.State in [dsinsert,dsedit] then
Tbl_Detallecotizacion.FieldByName('Descripcion_Articulos').Asstring := Qry_Articulos.FieldByname('Descripcion_Articulos').Value;
Estoy trabajando en delphi7 y access 2003
Recuerden por favor explicar me con algo de código no tengo tantos conocimientos como ustedes pero espero aprender cada día mas gracias a esta gran comunidad