Llenar 1 arreglo desde una DBF
- joseluisysturiz
- Posts: 2024
- Joined: Fri Jan 06, 2006 9:28 pm
- Location: Guatire - Caracas - Venezuela
- Contact:
Llenar 1 arreglo desde una DBF
Tengo la siguiente necesidad, estoy diseñando 1 sistema de FACTURACION y necesito bajo ciertas condiciones crear 1 matriz o arreglo con los registros que cumplan condicion dada y luego mostrar esos datos en 1 oListBox o oBrw, ya que no debo tocar los datos de la .DBF original hasta que el usuario cree o modifique campos del producto que se vende, lo que no se que es mejor si hacerlo a traves de una .DBF temporal que llene con los datos o desde el array? opiniones y sugerencias son BIENVENIDAS, si es desde el array como lo cargo y leo para modificar los datos si es necesario, si hay algun ejm, sera super bien recibido, gracias desde ya. FWH2.4+(x)HARBOUR+VERCE. joseluisysturiz@yahoo.com
Dios no está muerto...
Gracias a mi Dios ante todo!
Gracias a mi Dios ante todo!
- Raymundo Islas M.
- Posts: 590
- Joined: Tue Mar 14, 2006 11:34 pm
- Location: Acapulco, Gro. MEXICO
- jose_murugosa
- Posts: 943
- Joined: Mon Feb 06, 2006 4:28 pm
- Location: Uruguay
- Contact:
Raymundo te importaría mandarme ese ejemplo para verlo, yo también tendré que hacer algo parecido.Raymundo Islas M. wrote:Hola Jose Luis, coincido con Lautaro, trabajo mas a gusto con Arrays
Te envie un pequeño ejemplo a tu correo, checalo.
Saludos
jmurugosa@hotmail.com
Gracias desde ya.
Saludos/Regards,
José Murugosa
FWH + Harbour + Bcc7. Una seda!
José Murugosa
FWH + Harbour + Bcc7. Una seda!
ahi te va lo que hago yo:
@ 94,06 LISTBOX agets[4] FIELDS ""; HEADERS "CLAVE","ARTICULO","ENTRADAS","SALIDAS","COSTO";
FIELDSIZES 60,160,80,80,60 PIXEL SIZE 265,70
agets[4]:bLine:= {|nAt| nAt:= agets[4]:nAt,;
If( Len(aDatosh)<1 .or. nAt>Len(aDatosh),;
Array(5),;
{ aDatosh[nAt,1],;
aDatosh[nAt,2],;
transform(aDatosh[nAt,3],'99,999,999.99'),;
transform(aDatosh[nAt,4],'99,999,999.99'),;
transform(aDatosh[nAt,5],'99,999,999.99')})}
agets[4]:SetArray( aDatosh )
@ 94,06 LISTBOX agets[4] FIELDS ""; HEADERS "CLAVE","ARTICULO","ENTRADAS","SALIDAS","COSTO";
FIELDSIZES 60,160,80,80,60 PIXEL SIZE 265,70
agets[4]:bLine:= {|nAt| nAt:= agets[4]:nAt,;
If( Len(aDatosh)<1 .or. nAt>Len(aDatosh),;
Array(5),;
{ aDatosh[nAt,1],;
aDatosh[nAt,2],;
transform(aDatosh[nAt,3],'99,999,999.99'),;
transform(aDatosh[nAt,4],'99,999,999.99'),;
transform(aDatosh[nAt,5],'99,999,999.99')})}
agets[4]:SetArray( aDatosh )
- joseluisysturiz
- Posts: 2024
- Joined: Fri Jan 06, 2006 9:28 pm
- Location: Guatire - Caracas - Venezuela
- Contact:
Todo esto esta muy bueno, me alegra que sirva para otros, pero hay 1 pequeño detalle, mi sistema debera trabajar en red, lo que significa que varios usuarios podran usar la facturacion al mismo tiempo y debo comprobar la existencia de 1 producto que se este vendiendo al mismo momento ya que hay una DBF con el saldo actual pero cuando se actualiza al momento de finalizar la facturacion, por eso necesito trabajar con DBF temporales por usuario para asi verificar en cada 1 de los usuarios si estan vendiendo el mismo producto y que cantidad para darle al nuevo usuario el SaldoReal-CantidadReservada en ese momento, con los array puedo hacer eso...? espero haberme explicado, gracias.
Dios no está muerto...
Gracias a mi Dios ante todo!
Gracias a mi Dios ante todo!
- Raymundo Islas M.
- Posts: 590
- Joined: Tue Mar 14, 2006 11:34 pm
- Location: Acapulco, Gro. MEXICO
Claro que puedes, pero yo creo que lo mas indicado es que tengas una tabla de control, donde cuando un usuario este vendiendo un producto le pongas un registro, y cada vez que un usuario use este producto consulte la base de datos de control, lo mismo cuando se grabe la venta, pues rebajas el saldo y quitas el registro de control, y si no se finaliza la venta pues eliminas el registro de control y listo.joseluisysturiz wrote:Todo esto esta muy bueno, me alegra que sirva para otros, pero hay 1 pequeño detalle, mi sistema debera trabajar en red, lo que significa que varios usuarios podran usar la facturacion al mismo tiempo y debo comprobar la existencia de 1 producto que se este vendiendo al mismo momento ya que hay una DBF con el saldo actual pero cuando se actualiza al momento de finalizar la facturacion, por eso necesito trabajar con DBF temporales por usuario para asi verificar en cada 1 de los usuarios si estan vendiendo el mismo producto y que cantidad para darle al nuevo usuario el SaldoReal-CantidadReservada en ese momento, con los array puedo hacer eso...? espero haberme explicado, gracias.
Lo pesado de esto es controlar los posibles cuelgues y caidas de sistema que pueden dejar bloqueado un registro en la tabla de control, pero eso se puede solucionar creando un archivo en forma local por cada registro de control y al iniciar el programa verificar si existe alguno de estos archivos, leerlo y corregir la tabla de control de ser necesario.
Atte,
Lautaro