Mi estimadísimo Estuco.
Le garanto que aún metiéndose dentro del código interno de VFP, no se puede trasladar el mecanismo SEEK/SCAN a un acceso client/server eficiente. Ya me está haciendo repetir, pero creo que fue en otra lista. No hay manera predictiva de generar sets sobre algoritmos como:
Function Arbol( idProducto )
local lnRegistro
use Formula
seek idProducto
scan while Formula.id = idProducto
lnRegistro = recno()
? Formula.idComponente, Formula.Cantidad
Arbol( idComponente )
go lnRegistro
endscan
Esto no es nada. Hay ejemplos más fáciles en donde no podés armar un plan de ejecución porque nunca sabés cuál es el próximo id que vas a recibir. Tampoco podés predeterminar el orden de recorrida, ni la granularidad, ni nada.
Esto no es nada. Hay ejemplos más fáciles en donde no podés armar un plan de ejecución porque nunca sabés cuál es el próximo id que vas a recibir. Tampoco podés predeterminar el orden de recorrida, ni la granularidad, ni nada.
El problema, como dije, es tanto sintáctico como semántico. SQL (el lenguaje, y sus equivalentes) no es solamente otra manera de escribir la lógica de acceso a datos. Es un mecanismo de manipulación de Conjuntos (Venn, querido, el pueblo está contigo...), mientras que xBase es un mecanismo de manipulación de registros. En este caso, la granularidad es tu enemiga.
Saludos,
MS (Set Theory Taliban)
On 10/11/06, David Brunstein <[EMAIL PROTECTED]> wrote:
Exacto!
El punto es que cuando tenemos la estructura SEEK/SCAN o, pior, LOCATE/FOUND(), el programa esta pegado a los datos; esta pegado a los DBFs. Y hay mucho codigo con estas estructuras porque era codigo anterior la MVC design pattern.
El. problema es la conexion. Pero deberiamos encontrar alguna forma de poder publicar los DBFs, digo acceder a los datos y recorrerlos sin un motor SQL, y que tenga una respuesta aceptable... y seguir con "ese codigo" que traemos a cuestas.
El problema es que el SEEK/SCAN esta pegado a los datos. Cambiar eso es meterse adentro del codigo del Fox.:-(
Davo (pared, si, pared, pero ahora con enduido grueso).
