FoxPro/Visual FoxPro - inicios con el buffering

 
Vista:

inicios con el buffering

Publicado por Miguel (115 intervenciones) el 06/01/2008 17:44:05
hola amigos, en mis aplicaciones hasta el momento realizo el mantenimiento de BD con los procedimientos tradicionales y como comprenderan es una tarea muy tediosa por el uso de codigos y rutinas para no tener problemas con el tema de concurrencia cuando no es por primera vez, quiero iniciarme en el uso de BUFFERING y necesito saber como se aplica y si es posible algunos ejemplos, lo que estuve leyendo es que se utiliza con un cursor.

Una vista es igual a un cursor ?

Gracias de antemano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:inicios con el buffering

Publicado por Plinio (7841 intervenciones) el 06/01/2008 23:06:51
Una vista es al fin y al cabo un cursor. Pero el buffering no necesariamente es solo con cursores, es mas común en tablas (por no decir que afecta al fina una tabla).
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:inicios con el buffering

Publicado por juan fernando (537 intervenciones) el 08/01/2008 14:58:26
si quieres almacenar o compartir registros en red usando cursores sql
este ejemplo puede ser de útilidad .:

el comando SET MULTILOCKS ON siempre debe se igual a On

si no usamos cursores Sql .
Set Exclusive Off
sele tu tabla
If Rlock()
Append Blank
Campo With Thisform.Text(o variable )
endif


supongamos que tengo un botón Grabar

SET MULTILOCKS ON
Sele micursor
publi codig,fam

codig=Thisform.Pageframe1.Page1.Text1.Value
fam=Thisform.Pageframe1.Page1.Text2.Value
= CURSORSETPROP('Buffering', 5, 'micursor')

INSERT INTO Familia(Codigo,Familia);
VALUES(Codig,Fam)

= TABLEUPDATE(.T.)
Thisform.Procc()


Thisform.Pageframe1.Page1.Text1.Value=""
Thisform.Pageframe1.Page1.Text2.Value=""

Select * From familia Into Cursor micursor2

Thisform.Pageframe1.Page2.Grid1.AllowAddNew=.f.
Thisform.Pageframe1.Page2.Grid1.ColumnCount=2
Thisform.Pageframe1.Page2.Grid1.RecordSource="micursor2"

Thisform.Pageframe1.Page2.Grid1.Column1.Header1.Caption="Código"
Thisform.Pageframe1.Page2.Grid1.Column1.Header1.FontBold=.t.
Thisform.Pageframe1.Page2.Grid1.Column1.ControlSource="micursor2.codigo"
Thisform.Pageframe1.Page2.Grid1.Column1.Format="!"
*----------------------------------------------------------------------------

Thisform.Pageframe1.Page2.Grid1.Column2.Header1.Caption="Nombre Familia"
Thisform.Pageframe1.Page2.Grid1.Column2.Header1.FontBold=.t.
Thisform.Pageframe1.Page2.Grid1.Column2.ControlSource="micursor2.familia"
Thisform.Pageframe1.Page2.Grid1.Column2.Format="!"
Thisform.Pageframe1.Page2.Grid1.Column2.Width=240
Thisform.Pageframe1.Page2.Grid1.Refresh

Thisform.Command1.Refresh
**_____________________________________________________

Botón Modificar **

SET MULTILOCKS ON

Publi codig,fam

codig=Thisform.Pageframe1.Page1.Text1.Value
fam=Thisform.Pageframe1.Page1.Text2.Value

= CURSORSETPROP('Buffering', 5, 'micursor')

UPDATE familia SET Codigo= codig,familia=fam WHERE Alltrim(Codigo)=Allt(Codig)
= TABLEUPDATE(.T.)
Thisform.Procc()
Thisform.Pageframe1.Page1.Text1.Value=" "
Thisform.Pageframe1.Page1.Text2.Value=" "
*_____________________________________________________
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:inicios con el buffering

Publicado por Miguel (115 intervenciones) el 09/01/2008 03:29:02
interesante, gracias Juan.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:inicios con el buffering

Publicado por jorge blas (1 intervención) el 13/02/2009 15:23:56
en el caso mio yo tengo 2 formularios trabajando en maquinas diferentes, cuando inserto una informacion en uno., en la otra maquina no veo que la informacion insertada en la primera maquina se me refresque en la segunda, y por ese camino se desprende que no pueda comenzar el segundo paso que es controlar los accesos de diferentes usuarios a la tabla , como me podrian ayudar
con varios ejemplos de poder ver en mi maquiina una informacion insertada en esa tabla por otro usuario de manera que el consecutivo que yo agregue, sea mayor que el otro , ejemplo el otro usuario agrega un comprobante con el consecutivo 89 y cuando yo agregue sea el 90
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar