FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
voy a usar paradox. de todas formas la solucion de incluir un campo, me parece buena. Hay algun numero que identifique de manera unica a cada maquina? y si es asi, como obtenerlo? gracias
__________________
frenadol |
#2
|
|||
|
|||
El metodo descrito no es seguro, se podrian estar ejecutando a la vez dos programas en un mismo equipo.
Ademas obliga a añadir un campo mas en la tabla, con lo cual esta ocupara mas de lo necesario. El problema que tienes es una de las razones (hay mas, algunas mucho mas problematicas) por las que en general, se desaconseja el uso de campos autoincrementados. Mejor usa una tabla de contadores, o busca en la tabla el ultimo cliente y sumale uno. Otras razon para no usar los autoincrementados de paradox: No puedes controlar los valores, si accidentalmente se borra un cliente, no podras volverlo a dar de alta con el mismo codigo. Saludos |
#3
|
|||
|
|||
viendo que..
Viendo que lo quieres hacer con paradox (hay veces que nos deja paradox jejeje), entonces usa ls propiedad exclusive de TTable..
pero aguas aguas... tienes que atraparla con una excepcion... Código:
Procedure MeteDato... Var UnBoolean : Boolean; Begin UnBoolean := True; Table1.Active := False; //x si esta activo While UnBoolean Do Begin Try Table1.Exclusive := True; Table1.Active := True; Metes_los_datos; //despues de meter los datos Me_Voy_al_Final_de_la_Tabla;// y saco el numero incrementable //pero no te vayas a colgar ahi por que pueden que otros esten //esperando para meter los datos Table1.Exclusive := False; Table1.Active := False; UnBoolean := False; Except //aqui puedes escribirle a una etiqueta algo label1.Caption := 'Espere todavia no se ha metido'; End; End; //Aqui es donde debes de mostrar el numero que sacaste label1.Caption := 'Esperando nuevo Dato'; End; Por eso ya lo dijo el Santo Papa : ¡¡¡Paradox¡¡¡ que no hay otra cosa je
__________________
saludos desde Puebla Mexico.. asanxt@hotmail.com "como siempre a sus ordenes y siempre con buena cara" 'lolita me excitas, perversa piel de melocotón' |
#4
|
|||
|
|||
Tengo ese mismo problema sobre FireBird 1.5...actualmente uso la clase TIBTable relacionada con una tabla X de la base de datos...me baso en el siguiente truco
Código:
With TABLA Do Begin Append; FieldByName('CAMPO').AsString:='BLA BLA'; Post; // Asi obtengo el numero Active:=False; Active:=True; Last; Numero:=FieldByName('NUM').AsInteger; End; Cita:
Saludos |
|
|
|