Page 1 of 1

Longitud máxima del nombre de un campo DBF

Posted: Wed Jul 09, 2014 9:52 am
by arroya2
Hola amigos:
La longitud máxima del nombre de un campo DBF ¿sigue estando limitada a 10 caracteres?

Gracias y saludos a todos
Rafael Pérez

Longitud máxima del nombre de un campo DBF

Posted: Wed Jul 09, 2014 12:04 pm
by Pablo César
Hola Rafael. En Harbour es posible utilizarlo hasta 63 el tamaño del nombre de un campo. Pero tienes que crear tu dbf utilizando el adecuado RDD. Si tus dbfs fueron creados con dBase, estos campos tendrán la estructura limitada para 10. Porque lo que cuenta es la estructura que fué utilizado cuando fué creado el dbf.

Para utilizar el máximo tamaño debes:

#define       HB_SYMBOL_NAME_LEN       63

Ese límite está internamente definido en hbvmpub.h

Re: Longitud máxima del nombre de un campo DBF

Posted: Wed Jul 09, 2014 4:09 pm
by arroya2
Pablo César wrote:Hola Rafael. En Harbour es posible utilizarlo hasta 63 el tamaño del nombre de un campo. Pero tienes que crear tu dbf utilizando el adecuado RDD. Si tus dbfs fueron creados con dBase, estos campos tendrán la estructura limitada para 10. Porque lo que cuenta es la estructura que fué utilizado cuando fué creado el dbf.

Para utilizar el máximo tamaño debes:

#define       HB_SYMBOL_NAME_LEN       63

Ese límite está internamente definido en hbvmpub.h
Me doy cuenta de lo verde que estoy en este tema.
- ¿Se puede crear un DBF sin las órdenes dBase?
- Utilizo el RDD CDX
- ¿Qué órdenes son las más apropiadas para crear un DBF?
- ¿Hay un RDD más rápido que el CDX?
- ¿Dónde puedo encontrar información en español para ampliar información?

Muchas gracias
Rafael Pérez

Re: Longitud máxima del nombre de un campo DBF

Posted: Wed Jul 09, 2014 4:42 pm
by arroya2
Utilizo las órdenes siguientes:

Code: Select all

* ------------------------------------------------------------------------------ *

* ------------------------------------------------------------------------------ *
Function CreaTabla()

Local aEstruct
Local nSelect:=Select()

aEstruct:=	{ ;
				{'NUMCLI',		'N',  8, 0}, ;
				{'DNI',			'C', 12, 0}, ;
				{'NOMBRE',		'C', 20, 0}, ;
				{'APELLIDOS',	'C', 37, 0}, ;
				{'DOMICILIO',	'C', 40, 0}, ;
				{'POBLACION',	'C', 21, 0}, ;
				{'PROVINCIA',	'C', 15, 0}, ;
				{'CODPOSTAL',	'C',  5, 0}, ;
				{'FECHANAC',	'D',  8, 0}, ;
				{'TELEFONO',	'C', 10, 0}, ;
				{'OBSERVACIO',	'C', 53, 0}, ;
				{'RESTRIARM',	'N',  2, 0}, ;
				{'RESTRICON',	'N',  2, 0}, ;
				{'RESTRIEMB',	'N',  2, 0}, ;
				{'AVICON',		'D',  8, 0}, ;
				{'AVIEMB',		'D',  8, 0}, ;
				{'AVIARMA',		'D',  8, 0}, ;
				{'AVIARMAE',	'D',  8, 0}, ;
				{'AVIARMAEM',	'D',  8, 0}, ;
				{'AVIARMB',		'D',  8, 0}, ;
				{'AVIARMC',		'D',  8, 0}, ;
				{'AVIARMD',		'D',  8, 0}, ;
				{'AVIARME',		'D',  8, 0}, ;
				{'AVIARMF',		'D',  8, 0}, ;
				{'AVIARMSP',	'D',  8, 0}, ;
				{'LSELEC',		'L',  1, 0} ;
			}

PlayBeep()
PlayOk()

* Creamos fichero a partir de la estructura vacía
DbCreate('Tabla', aEstruct)
USE Tabla SHARE NEW
Tabla->(DbGoTop())
INDEX ON NumCli TAG NumCli TO 'Tabla'
Tabla->(DbGoTop())
INDEX ON Poblacion TAG Poblacion TO 'Tabla'
Close Tabla

Select(nSelect)

Return Nil
* ------------------------------------------------------------------------------ *

* ------------------------------------------------------------------------------ *
¿Existe otra forma mejor de hacerlo?

Saludos
Rafael Pérez

Re: Longitud máxima del nombre de un campo DBF

Posted: Thu Jul 10, 2014 6:39 am
by dragancesu
It is a standard, but it would be good to add some control to start if there is

I tried to create a program that generates, result is added to the message

and google speak spanish:

Es un estándar, pero sería bueno añadir algo de control para empezar si no hay

Traté de crear un programa que genera, resultado se añade al mensaje

Re: Longitud máxima del nombre de un campo DBF

Posted: Thu Jul 10, 2014 7:06 am
by dragancesu
Complete program that allows you to create and work with a table for me to look to the example

just build