FoxPro/Visual FoxPro - Dificultad con el bufer

 
Vista:

Dificultad con el bufer

Publicado por alexcoinc (450 intervenciones) el 06/02/2008 14:46:35
UN SALUDO PARA TODOS:

Entrando en materia:

Estoy realizando una rutina para grabar un REGISTRO A UNA TABLA Y LUEGO REALIZAR UN ARCHIVO PLANO CON DICHA TABLA;
ACLARO QUE SE GENERAN MEDIANTE ESTA RUTINA 11 ARCHIVOS PLANOS, OBVIAMENTE CON DIFERENTE NOMBRE CADA UNO.

Pero, me sale un error que no he podido dilucidar, el que me dice que :
" la función requiere el modo de almacenamiento en buúfer de filas o tablas "

PENSANDO EN ELLO, INTRODUJE LA FUNCION "CURSORSETPROP"

Pero no me funciona,

Qué estoy haciendo mal o donde no debo,

Gracias por su ayuda.



UNA MUESTRA DE LA RUTINA ES MAS O MENOS LA SIGUIENTE:
------------------------------------------------------------------------------------------

VAR2: Es un vector con la información ya grabada

SELE 62 && Aqui tengo abierta la tabla que graba los registros
* ( Como es una rutina, el Nombre de ella cambia cada vez, para grabar el plano
* respectivo).
APPE BLANK
DO ADICION2 WITH var2
DO CREOPLA

*---------------------------
PROCEDURE ADICION2
PARAMETERS vari
CURSORSETPROP("Buffering",2)
DO WHILE .T.
IF RLOCK()
FOR p=1 TO fcount()
ncamta=field(p)
valvar=vari(p)
REPL &ncamta. with valvar
NEXT p
UNLOCK
EXIT
ENDIF
ENDDO
RETURN

*------------------------------------
PROCEDURE CREOPLA
SELE 62
DELE ALL FOR len(allt(v1))=0
PACK
nCampos = FCOUNT()
GO TOP
hFich = FCREATE(nomsec2)
DO WHILE .NOT. EOF()
cVar= ""
FOR x = 1 TO nCampos
cadena=ALLTRIM(curval(field(x)))
IF VARTYPE(field(x))="N"
cadena=ALLTRIM(STR(curval(field(x))))
ENDIF
IF VARTYPE(field(x))="D"
cadena=ALLTRIM(DTOC(curval(field(x))))
ENDIF
cVar = cVar+cadena+","
ENDFOR
cVar = SUBSTR(cVar,1,LEN(cVar)-1)
cVar = cvar+CHR(13)+CHR(10)
IF incer='N' .and. (gt=10 .or. gt=11)
If VAL(v4)>0
FWRITE(hFich,cVar)
Endif
Else
FWRITE(hFich,cVar)
Endif
SKIP
ENDDO
FCLOSE(hFich)
USE
RETURN
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:Dificultad con el bufer

Publicado por Plinio (7841 intervenciones) el 06/02/2008 18:56:49
Prueba poniendo SET MULTILOCK ON en tu programa principal
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:Dificultad con el bufer

Publicado por alexcoinc (1 intervención) el 06/02/2008 20:39:17
Ya está activo o encendido.... qué mas puede ser ??
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:Dificultad con el bufer

Publicado por Plinio (7841 intervenciones) el 06/02/2008 21:40:30
Prueba CURSORSETPROP("Buffering",5)
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:Dificultad con el bufer

Publicado por Plinio (7841 intervenciones) el 06/02/2008 21:43:51
Y no es mala idea que selecciones la tabla antes de indicar esta funcion
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