Pregunta: | 54767 - USO DEL BUFFERING |
Autor: | Antonio Gutierrez |
hola lei en la web del programador, un favor me puede ayudar en lo siguiente:
Tengo tablas nuevas sin registro alguno (0 registro) form INI CLOSE DATABASES DO directorio SET MULTILOCKS ON OPEN DATABASE distro shared USE vendedor shared =CURSORSETPROP(\'buffering\',5) BOTON NUEVO APPEND BLANK with thisform .setall(\'enabled\',.t.,\'xtexto\') .setall(\'enabled\',.t.,\'xspinner\') .txtvendedor.setfocus .edtdireccion.enabled=.t. .txtfecha.value=DATE() .text1.enabled=.f. .list1.enabled=.f. .command1.enabled=.f. .command2.enabled=.t. .command3.enabled=.t. ENDWITH BOTON GRABAR =TABLEUPDATE(.t.) ****************************************************************** Los controles que estan en el formulario lo arrastre mediante entorno de datos: TXTIDEN propiedades controlsource= vendedor.idven Y asi sucesivo todos los controles, lo que sucede cuando aplico nuevo los controles siguen bloqueado, por que no tiene ningun registro Por favor una me envias un ejemplo del uso correcto de los buffer. Espero tu ayuda pronto. |
Respuesta: | Misael Rocha |
mira tienes que hacer la tabla y que tenga un indice ya sea principal o candidato asi me funciono
select "aqui va el nombre de la tabla" set order to "nombre del valor indice" go bottom "va al final de la tabla seleccionada" Insert Into "tabla(nombre del indice ejemplo ---> datos(id_clave)"; value(id_clave + 1) donde id_clave es el campo indice + 1, para esto el valor de id_clave debe de ser numerico thisform.refresh eso es para agregar un nuevo dato y para guardarlo en otro boton seria TABLEUPDATE(.T.) thisform.refresh para esto en el formulario en el init debes de poner SET MULTILOCKS ON CURSORSETPROP("Buffering", 5,"datos") SET DELETED ON SET EXACT ON bueno y para cancelar en otro boton pones TABLEREVERT(.T.) THISFORM.REFRESH espero que esto te halla ayudado en algo ya tu habilitas o deshabilitas lo textbox o command button pero el codigo a mi me funciona bien si tienes alguna duda comunicate conmigo |