Nombres de campos DBF

946 views
Skip to first unread message

Martin Peveri

unread,
Jun 21, 2013, 11:30:50 AM6/21/13
to publice...@googlegroups.com
Hola Gente, espero que ande todo bien. Tengo un pequeño problema, les comento:

Tengo un sistema al que le doy soporte y resulta que hay una tabla que contiene un campo de nombre, stotal_diario y al ejecutar el proceso que la utiliza me dice "Campo stotal_diario no existe". Entonces voy a la estructura de la tabla y resulta que se llama stotal_dia (Me lo recorto) y viendo info leo que el tamaño máximo es de 10 caracteres para los nombre de campo. Lo extraño es que siempre funcionó con el nombre stotal_diario, hay alguna propiedad que me permita agrandar el tamaño máximo?.

Muchas Gracias de antemano.

Malenkov

unread,
Jun 21, 2013, 11:39:29 AM6/21/13
to publice...@googlegroups.com

Hola martin, probablemente la tabla estaba ligada a una base de datos (DBC), lo que te permite utilizar nombres largos, pero al desligarla de la base te recorta los nombres a 8 caracteres, quizá ese sea el problema

 

Saludos

 

Carlos Lara

Ricardo Pina

unread,
Jun 21, 2013, 11:39:55 AM6/21/13
to Grupo VFP
Hola Martin
 
El tamaño maximo de 10 caracteres para los nombres de campo es con las tablas que son FREE, o sea que no pertenecen a ninguna base de Datos.
 
Saludos
--
            

                   Ricardo Pina

Desarrollo y Servicios Informáticos

                  Profesionales
               www.dsip.com.ar

 

 

Fidel Charny

unread,
Jun 21, 2013, 11:40:40 AM6/21/13
to publice...@googlegroups.com
El nombre largo de campo lo puedes usar únicamente si la tabla pertenece a una base de datos (dbc).

Maximum number of characters in field names in a free table.

10

Maximum number of characters in field names for a table contained in a database.

128



Martin Peveri

unread,
Jun 21, 2013, 11:58:04 AM6/21/13
to publice...@googlegroups.com
Era eso el problema.!!

Muchas Gracias por responder a todos.

Les agradezco

Luis Mata

unread,
Jun 21, 2013, 11:49:22 AM6/21/13
to publice...@googlegroups.com
Hola
 
Tengo un problema, envío la impresión DOS con @ say..
 
set printer to name (AllTrim(TabPrinter.RutaBole))
 
Set Device To Printer
??? chr(27)+chr(67)+Chr(33)
??? Chr(15)
*--Imprimiendo la cabecera
inumdoc = PADL(INT(VAL(ALLTRIM(thisform.txtnumBoleta.Value)+ALLTRIM(thisform.txtnboleta.Value))),10,'0')
itd = thisform.tdoc
*set device to file 'c:\temp\boleimpr.'
@ PRow() + 1,    1    Say ' '
@ PRow() + 10,    21    Say allt(thisform.txtnombre.Value)
@ PRow() + 1.5,    16    Say IIF(thisform.tdoc='BOL' or thisform.tdoc='TBL','','') + allt(thisform.txtcodigo.Value)
    @ PRow(),    125    Say PADL(day(thisform.txtfecha.Value),2,'0')
    @ PRow(),    133    Say PADL(month(thisform.txtfecha.Value),2,'0')
    @ PRow(),    140    Say year(thisform.txtfecha.Value)
@ PRow() + 1.5,    19    Say allt(thisform.txtdireccion.Value)
 
todo bien hasta aquí, pero!!!! el formato de factura tiene un espacio entre nombre, ruc y dirección que no logro cuadrarlo, si dejo una línea entre ellos no cuadra, las 3 líneas juntas tampoco.
 
Alguien sabe como puedo subir o bajar las líneas hasta cuadrarlas?
 
Gracias
 
Luis Mata

Ricardo Pina

unread,
Jun 21, 2013, 7:01:16 PM6/21/13
to Grupo VFP
Hola
 
proba con estos tipos de interlineado a ver si te sirven
 
1/8": ?? chr(27)+chr(48)
7/72": ?? chr(27)+chr(49)
1/6": ?? chr(27)+chr(50)
1/9": ?? chr(27)+chr(65)+chr(9) (1/9" = 8/72")
Saludos
 

Víctor Hugo Espínola Domínguez

unread,
Jun 21, 2013, 7:13:26 PM6/21/13
to publicesvfoxpro
Hola Luís

Además de lo indicado por Ricardo también tienes la posibilidad de definir avances de línea mas pequeños con:

??? CHR(27) + CHR(74) + CHR(n)

donde "n" representa n/216 o n/180 pulgadas, dependiendo del modelo de la impresora.

Es más fácil programar usando los comandos ?, ?? y ??? en vez de @ say ...

Saludos,
Víctor.

Luis Maria Guayan

unread,
Jun 21, 2013, 7:54:40 PM6/21/13
to publice...@googlegroups.com
Solo las tablas libres tienen la limitación de 10 caracteres para los nombres de campos, seguramente haces un COPY TO o SELECT ... INTO TABLE.

Mira la opción de utilizar Cursores o Tablas contenidas en una base de datos que no tienen esa limitación


Luis María Guayán
Tucumán, Argentina
_________________________
http://www.PortalFox.com
Nada corre como un zorro
_________________________

Luis Mata

unread,
Jun 21, 2013, 8:38:27 PM6/21/13
to publicesvfoxpro
Hola
 
Si fueras tan amable me puedes enviar algun script para poder analizar el comportamiento, te lo voy a agradecer.
 
Luis Mata

Víctor Hugo Espínola Domínguez

unread,
Jun 22, 2013, 1:52:28 AM6/22/13
to publicesvfoxpro
Hola Luís

Adjunto un modelo para imprimir factura usando comandos ?, ?? y ???

Saludos,
Víctor.

ImprimirFactura.prg

ZeRoberto

unread,
Jun 23, 2013, 9:23:01 PM6/23/13
to publicesvfoxpro
Luis una consulta los tickets facturas y los ticket boletas tiene alguna numeración diferente? salen en diferentes impresoras o es un solo formato que cambia el ruc del cliente y el igv.

Saludos

Luis Mata

unread,
Jun 25, 2013, 10:04:21 AM6/25/13
to publicesvfoxpro
En los tiquets el dato que cambia en este caso, acá en Perú es el cobro de las percepciones, y el desglose del IGV.

Miguel Canchas

unread,
Jun 25, 2013, 10:31:28 AM6/25/13
to publice...@googlegroups.com

Inportunando con una pregunta(y espero no me cuelguen)..

 

 

Luis de que se tratan las percepciones ¿? Aquí en la empresa están por implementarlo(obvio por gracia de la sunat…)

 

MK

Luis Mata

unread,
Jun 25, 2013, 11:13:34 AM6/25/13
to publice...@googlegroups.com
Es un porcentaje sobre las ventas adicional que le tienes que cobrar al cliente final, es como  un pago de impuestos por adelantado, perjudica al consumidor final, mas no a empresas. Pero así lo dice la Ley.
Reply all
Reply to author
Forward
0 new messages