Problemas de cadenas y con macros y con USE()

Post Reply
User avatar
busmatic
Posts: 51
Joined: Fri Jun 30, 2006 6:56 pm
Contact:

Problemas de cadenas y con macros y con USE()

Post by busmatic »

Hola Amigos

Emigrando mis programas a FWH me he encontrado con un comportanmiento estrañó con el uso de cadenas compuestas con una macro, esta las uso para formar un nombre de archivo con su respectivo
mapeo, pondre un ejemplo..

cCedena0:="1" && lleva un indice caracter que viene segun proceso anterior

cCadena1:=cPathFinal+"\L+"&cCadena0"+".Pre"

Todo hasta aqui trabaja bien en FW24, y aun en FWH27, pero el problema viene cuando..

USE (cCadena1) Alias cArchivo

ME da error

DBFCDX\1001 open error c:\proyectos\boleteria\bin\dat

tan es asi que no llega a dar el error completo

Si le escribo el aun asi
cCadena1:="C:\PROYECTOS\BOLETERIA\BIN\DATA\L1.PRE"

USE (cCadena1) Alias cArchivo

Arroja el mismo error, le he puesto &(cCadena1) por todas las maneras que conozco y me da el mismo el error , pero si le escribo el path directo no hay problemas.

Habra una manera diferente en FWH27 al emigrar

Gracias
Busmatic de Costa Rica
.
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Puede tratarse de un error de tratamiento de macros del build de Harbour/xHarbour que estés usando. Ultimamente se han corregido algunas cosas con las macros.

De todas formas, el mejor consejo es que intentes evitar el uso de las macros. Tu código puede cambiarse a:

cCadena1:=cPathFinal+"\L"+cCadena0+".Pre"
USE (cCadena1) Alias cArchivo
regards, saludos

Antonio Linares
www.fivetechsoft.com
fleal
Posts: 234
Joined: Tue Oct 25, 2005 12:39 am
Location: México, DF

Errorcillo pequeño.

Post by fleal »

Por lo que veo, estás tratando de abrir una dbf con indices. ¿Cierto?
Tu EXE está en un directorio diferente y tiene que accesar a ésta dbf.
¿Cierto?

Si lo anterior es correcto entonces tu estás indexando al estilo

INDEX CLIENTES->CODIGO TAG CLIENTES.

Para que no marque el open error, solo hay que cambiar la forma de indexar sin usar el Alias

FIELDS, CODIGO, Otros_Campos

INDEX CODIGO TAG CLIENTES
Post Reply