Nombres largos de archivo DBF
Posted: Wed Feb 07, 2018 12:08 am
Grupo,
Un cliente me pidio que hiciera un modulo pequeño, el problema que estoy teniendo es que genero un archivo con este nombre:
// Crea CAT_STATUS_CUSTOMER
IF !FILE(GsRutaDB+"CAT_STATUS_CUSTOMER.dbf")
CursorWait()
PutMsg("Espere... Crando CusStatus.")
CursorWait()
aDBFStatusCustomer := {}
AADD (aDBFStatusCustomer, { "PSId", GEsId } )
AADD (aDBFStatusCustomer, { "CountryId", GEsId } )
AADD (aDBFStatusCustomer, { "StatusId", GEsId } )
AADD (aDBFStatusCustomer, { "Descr", GEsName })
AADD (aDBFStatusCustomer, { "UsersEntry", GEsLogin } )
AADD (aDBFStatusCustomer, { "EntryDate", GEdEntryDate } )
AADD (aDBFStatusCustomer, { "EntryDate", GEsEntryTime } )
AADD (aDBFStatusCustomer, { "ProgName", GEsProgName } )
DBCREATE (GsRutaDB+"CAT_STATUS_CUSTOMER", aDBFStatusCustomer,"DBFCDX")
// Creo el índice
IF !Open_Table(GsRutaDB+"CAT_STATUS_CUSTOMER", "customerstatus", GbNoShared, GbWrite)
INDEX ON customerstatus->CountryId TAG customerstatus_01
INDEX ON customerstatus->CountryId + cusstatus->StatusId TAG customerstatus_02
INDEX ON customerstatus->StatusId TAG customerstatus_03
INDEX ON customerstatus->Descr TAG customerstatus_04
customerstatus->( DBCOMMIT ())
customerstatus->(DBCLOSEAREA())
ENDIF
CursorArrow()
ClearMsg()
ENDIF
El problema que me está presentando es que cuando abro la DBF y su CDX me manda un error "FUNCION INVALIDA PARA CAT_STATUS_CUSTOMER"
Después de batallar un rato decidí hacer el nombre de archivo y del indice y del tag mas cortos y SORPRESA funciono, y es aqui donde viene mi pregunta:
1. Que tal "largo" soporta nombres de archivo, indices y tag
2- Acpeta "_" guiones bajos en nombres como por ejemplo CAT_STATUS_CUSTOMER?
En caso de que SI acepte nombre largos ¿que debo de hacer para que me los acepte?
De antemano agradezco la ayuda.
Un cliente me pidio que hiciera un modulo pequeño, el problema que estoy teniendo es que genero un archivo con este nombre:
// Crea CAT_STATUS_CUSTOMER
IF !FILE(GsRutaDB+"CAT_STATUS_CUSTOMER.dbf")
CursorWait()
PutMsg("Espere... Crando CusStatus.")
CursorWait()
aDBFStatusCustomer := {}
AADD (aDBFStatusCustomer, { "PSId", GEsId } )
AADD (aDBFStatusCustomer, { "CountryId", GEsId } )
AADD (aDBFStatusCustomer, { "StatusId", GEsId } )
AADD (aDBFStatusCustomer, { "Descr", GEsName })
AADD (aDBFStatusCustomer, { "UsersEntry", GEsLogin } )
AADD (aDBFStatusCustomer, { "EntryDate", GEdEntryDate } )
AADD (aDBFStatusCustomer, { "EntryDate", GEsEntryTime } )
AADD (aDBFStatusCustomer, { "ProgName", GEsProgName } )
DBCREATE (GsRutaDB+"CAT_STATUS_CUSTOMER", aDBFStatusCustomer,"DBFCDX")
// Creo el índice
IF !Open_Table(GsRutaDB+"CAT_STATUS_CUSTOMER", "customerstatus", GbNoShared, GbWrite)
INDEX ON customerstatus->CountryId TAG customerstatus_01
INDEX ON customerstatus->CountryId + cusstatus->StatusId TAG customerstatus_02
INDEX ON customerstatus->StatusId TAG customerstatus_03
INDEX ON customerstatus->Descr TAG customerstatus_04
customerstatus->( DBCOMMIT ())
customerstatus->(DBCLOSEAREA())
ENDIF
CursorArrow()
ClearMsg()
ENDIF
El problema que me está presentando es que cuando abro la DBF y su CDX me manda un error "FUNCION INVALIDA PARA CAT_STATUS_CUSTOMER"
Después de batallar un rato decidí hacer el nombre de archivo y del indice y del tag mas cortos y SORPRESA funciono, y es aqui donde viene mi pregunta:
1. Que tal "largo" soporta nombres de archivo, indices y tag
2- Acpeta "_" guiones bajos en nombres como por ejemplo CAT_STATUS_CUSTOMER?
En caso de que SI acepte nombre largos ¿que debo de hacer para que me los acepte?
De antemano agradezco la ayuda.