Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   Cuando trabajan dos usuarios simultaneos solo graba la factura de uno (https://www.clubdelphi.com/foros/showthread.php?t=4729)

tulio 25-10-2003 05:11:18

Cuando trabajan dos usuarios simultaneos solo graba la factura de uno
 
Hola querido Foro

Tengo un sistema de facturacion que en forma monousuaria andaba barbaro, utilizando delphi 6 e Interbase 6 (el que trae delphi ) , componentes Ibdataset y windows 98 2da edic..
El problema me surgio cuando configure una maquina como servidora y quise facturar con el mismo programa en forma simultanea con dos puestos de trabajo, solamente me graba lo que hace un solo usuario, lo que factura el otro no graba nada en absoluto, siendo el mismo ejecutable y la misma base de datos. algo rarisimo, el codigo de la parte que grabo es el siguiente

Procedure tformu_FaCtura.Graba;
var
J : Integer;
sql ,input: string;
year, month, Day, hour, min : Word;
begin
try
tablas.t_nro_factu.Open;
tablas.t_nro_factu.active:=true;
nro_factu:=tablas.t_nro_factuAnro_factura.asinteger;
nro_factu:=nro_factu+1;
tablas.t_nro_factu.edit;
tablas.t_nro_factuAnro_factura.asinteger:=nro_factu;
tablas.t_nro_factu.post;
tablas.tran.CommitRetaining;

tablas.t_cabe_fac.Open;
tablas.t_cabe_fac.Append;
tablas.t_cabe_facnro_factura.asinteger:=nro_factu;
tablas.t_cabe_facsuCUrsal.asinteger:=1;
tablas.t_cabe_facnro_cliente.asinteger:=strtoint(edit_nroC.text);
tablas.t_cabe_facfe.value:=date();
tablas.t_cabe_factipo_fac.asstring:='A';
tablas.t_cabe_facestado.asstring:='A';
tablas.t_cabe_facimporte.asfloat:=neto ;
tablas.t_cabe_facforma_de_pago.asstring:='A';
tablas.t_cabe_facu.asstring:=F_PASSWORD.USUARIO;
tablas.t_cabe_fac.post;

tablas.t_items_fac.open;
FOR J:=1 TO 33 DO
Begin
If v_cod[J]<> '' then
begin
tablas.t_items_fac.Append;
tablas.t_items_facnro_factura.asinteger:=nro_factu;
tablas.t_items_facsucursal.asinteger:=1;
tablas.t_items_faccod_articulo.asstring:=v_cod[J];
tablas.t_items_facdesCri.asstring:=v_des[J];
If v_buluni[J]='B' then
tablas.t_items_faccantidad.asinteger:=v_canti[j]
Else
tablas.t_items_faccanti_uni.asinteger:=v_canti[j];
tablas.t_items_facimporte.asfloat:=v_impo[j]-(v_Jivatot[J]);
tablas.t_items_faciva.asfloat:=v_Jivatot[j];
tablas.t_items_facdesCu.asfloat:=v_desCuento[J];
tablas.t_items_facTIPO_FAC.asSTRING:='A';
tablas.t_items_facestado.asSTRING:='E';////emitido
tablas.t_items_fac.post;
End;
End;

tablas.tran.CommitRetaining;

except
tablas.tran.RollbackRetaining;
end;


/////////////

Por favor si me ayudan porque no me doy cuenta que puede pasar

Saludos y Gracias

tulio

IVAND 26-10-2003 17:29:42

Hola, aparentemente puede ser un problema de licencias

Porque no pruebas con Firebird

tulio 26-10-2003 19:57:28

Gracias ivand

dos preguntas, donde consigo Firebird , y los componentes Ibdataset que uso con delphi 6 me son compatibles

Saludos tulio

marcoszorrilla 26-10-2003 21:22:48

http://sourceforge.net/project/showf...?group_id=9028

Un Saludo.

guillotmarc 26-10-2003 22:31:30

Hola.

De las distintas descargas que hay disponibles de Firebird, te recomiendo la versión 1.03

http://prdownloads.sourceforge.net/f...2.exe?download

Es practicamente compatible 100% con Interbase 6, por lo que no tendrás problemas por usar tu base de datos actual, y tampoco deberás tocar ni una linea de código.

NOTA : Se recomienda que hagas una copia de seguridad de tu base de datos, desde Interbase 6, y la restaures con Firebird 1.03, antes de empezar a trabajar con ella.

En breve saldrá una versión nueva de Firebird, la versión 1.5. Lleva mejoras considerables, aunque para poder aprovecharlas y para no tener problemas de compatibilidad, seguramente deberás cambiar los componentes que utilizas (en lugar de usar IBX, será mejor usar IBO, FibPlus, el driver dbExpress de www.upscene.com, ...).

Saludos.

tulio 27-10-2003 00:34:58

Gracias Marcoszorrilla y guilletmar

voy a probar con firebird .

Entonces mi problema de no grabar dos usuarios simultaneos es un problema de licencias ?

saludos tulio

guillotmarc 27-10-2003 11:05:54

Hola.

No lo sé, quizá IVAND nos podría explicar la razón. A mi más bien me parece que el Interbase 6 que viene con Delphi, lleva 5 licencias de conexión simultanea, para trabajar en el desarrollo de la aplicación.

Aunque, quizá esas conexiones solo se pueden realizar en local. La verdad es que lo desconozco puesto que nunca he usado ese Interbase.

NOTA : Cambiar Interbase 6 por Firebird 1, es una buena idea, independientemente de ese problema. Aunque solo sea por la cantidad de bugs que tiene corregidos (y sin olvidar, evidentemente, el hecho de que podrás conectar tantos usuarios como desees, sin necesidad de adquirir ninguna licencia comercial).

tulio 27-10-2003 13:06:05

Muchachos

Instale el FIrebird y me anda todo el sistema aparentemente sin problemas.
Una duda, Cuando quiero ejecutar FIREBIRD PANEL DE CONTROL me salen un monton de carteles ' esta no es valida win32'

guillotmarc 27-10-2003 13:26:55

Hola.

Ni idea, a mi siempre me ha funcionado bien. En todo caso puedes borrar el applet de panel de control (es un archivo .cpl en la carpeta System32) que tienes ahora, y instalar este :

http://www.achim-kalwa.de/fbmgr.html

Saludos.

tulio 27-10-2003 18:07:50

Gracias guillot marc

Probe y anda todo bien.

Una pregunta Firebird es exactamente igual de confiable que Interbase o hay alguna limitación, de ser asi me pasaria definitivamente a Firebird

saludos tulio

guillotmarc 27-10-2003 18:38:27

Hola.

Firebird 1 es más confiable que Interbase 6, puesto que se ha creado a partir de su código, corrigiendo muchos bugs.

Otra cosa es preguntarse, que es mejor, si Interbase 7 o Firebird 1.5. Ahora són dos proyectos distintos, con sus propias mejoras cada uno. Personalmente me gusta mucho Firebird, pero esto es una evaluación que debe hacer cada uno.

Saludos.

tulio 28-10-2003 12:10:34

Gracias Marc Guillot

Me convertiste en un usuario mas de Firebird

Gracias por todos tu consejos

saludos tulio


La franja horaria es GMT +2. Ahora son las 11:58:55.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi