Error de sintaxis

14/07/2003 - 14:37 por Rubens Follenti | Informe spam
Hola a todos:

De un momento a otro mi sistema empezo a dar un error, "Error de
Sintaxis" Cuando ejecuto un macro
en el init de una clase tipo combo y no veo que exista tal error, si a
alguno le ha pasado lo mismo me gustaria saber
como solucionar este error. Debajo expongo el texto donde da el error.

THIS.cTabla=SUBSTR(SYS(2015), 3, 10)
lcTabla=THIS.cTabla


CREATE CURSOR &lcTabla ( NombreUsu C(40),UsuarioId C(4),GrupoUsuId
C(3),PideClave N(1),;
Caja N(1))


en el create cursor es donde da el error. desde ya muchas gracias.

Preguntas similare

Leer las respuestas

#1 David Amador \(Davphantom\)
14/07/2003 - 19:43 | Informe spam
Coloca un wait window asi para ver que valor lleva la variable lctabla
. el problema debe ser en el nombre de la variable

THIS.cTabla=SUBSTR(SYS(2015), 3, 10)
lcTabla=THIS.cTabla

wait window lcTabla

CREATE CURSOR &lcTabla ( NombreUsu C(40),UsuarioId C(4),GrupoUsuId
C(3),PideClave N(1),;
Caja N(1))

David Amador Tapia
Webmaster de "La Web de Davphantom"
www.davphantom.cjb.net
Cartagena. Colombia
Tel (5) 6621502 - 6581523


"Rubens Follenti" escribió en el mensaje
news:#
Hola a todos:

De un momento a otro mi sistema empezo a dar un error, "Error de
Sintaxis" Cuando ejecuto un macro
en el init de una clase tipo combo y no veo que exista tal error, si


a
alguno le ha pasado lo mismo me gustaria saber
como solucionar este error. Debajo expongo el texto donde da el error.

THIS.cTabla=SUBSTR(SYS(2015), 3, 10)
lcTabla=THIS.cTabla


CREATE CURSOR &lcTabla ( NombreUsu C(40),UsuarioId C(4),GrupoUsuId
C(3),PideClave N(1),;
Caja N(1))


en el create cursor es donde da el error. desde ya muchas gracias.


Respuesta Responder a este mensaje
#2 Luis María Guayán
15/07/2003 - 13:51 | Informe spam
Utiliza solo SYS(2015) como nombre temporal para tu cursor, esta cadena
siempre empezará con "_" (guion bajo).

SUBSTR(SYS(2015), 3, 10) te puede retornar una cadena que comienza con un
dígito numérico que no es válido como nombre de cursor.

Ej:
CREATE CURSOR _123456 (fecha T)
CREATE CURSOR 123456 (fecha T) && Error de sintaxis

Luis María Guayán
Vicente Trapani S.A.
Tucumán, Argentina
_____________________________________________
Microsoft Visual FoxPro MVP
SysOp de PortalFox - http://www.portalfox.com
_____________________________________________
Proteje al zorro, úsalo legalmente



"Rubens Follenti" wrote in message
news:#
Hola a todos:

De un momento a otro mi sistema empezo a dar un error, "Error de
Sintaxis" Cuando ejecuto un macro
en el init de una clase tipo combo y no veo que exista tal error, si
a
alguno le ha pasado lo mismo me gustaria saber
como solucionar este error. Debajo expongo el texto donde da el error.

THIS.cTabla=SUBSTR(SYS(2015), 3, 10)
lcTabla=THIS.cTabla


CREATE CURSOR &lcTabla ( NombreUsu C(40),UsuarioId C(4),GrupoUsuId
C(3),PideClave N(1),;
Caja N(1))


en el create cursor es donde da el error. desde ya muchas gracias.


Respuesta Responder a este mensaje
#3 Luis María Guayán
15/07/2003 - 14:08 | Informe spam
De la ayuda de VFP del comando SYS(3):

"...SYS(3) - Nombre legal de archivo

Devuelve un nombre de archivo legal que puede utilizarse para crear archivos
temporales.

Valores devueltos
Character

Observaciones
SYS(3) puede devolver un nombre no único cuando se ejecuta sucesivamente en
un PC rápido. Utilice SUBSTR(SYS(2015), 3) para crear un nombre de archivo
único y válido, de ocho caracteres.

Nota: Evite utilizar esta cadena en CREATE TABLE, CREATE CURSOR, SELECT INTO
CUROSR y en otros comandos similares. Si se utiliza esta cadena, se generará
un error, ya que un cursor o un nombre de alias válido de FoxPro no puede
empezar por un número. Si ha utilizado SUBSTR(SYS(2015), 3) para crear una
tabla o un nombre de cursor únicos sin agregar explícitamente como prefijo
un carácter de subrayado (_) o un carácter alfabético, puede corregir el
código de las maneras siguientes:

En una plataforma que admite nombres de archivo largos:
Utilice SYS(2015), ya que siempre empezará por un carácter de subrayado.

En plataformas y redes que sólo admiten la convención de nomenclatura 8+3 de
DOS:
Modifique la expresión de asignación de nombres para que agregue
explícitamente un carácter de subrayado como prefijo, como en el siguiente
ejemplo:
"_"+SUBSTR(SYS(2015), 4)
..."


Luis María Guayán
Vicente Trapani S.A.
Tucumán, Argentina
_____________________________________________
Microsoft Visual FoxPro MVP
SysOp de PortalFox - http://www.portalfox.com
_____________________________________________
Proteje al zorro, úsalo legalmente


"Luis María Guayán" wrote in message
news:ujD$
Utiliza solo SYS(2015) como nombre temporal para tu cursor, esta cadena
siempre empezará con "_" (guion bajo).

SUBSTR(SYS(2015), 3, 10) te puede retornar una cadena que comienza con un
dígito numérico que no es válido como nombre de cursor.

Ej:
CREATE CURSOR _123456 (fecha T)
CREATE CURSOR 123456 (fecha T) && Error de sintaxis

Luis María Guayán
Vicente Trapani S.A.
Tucumán, Argentina
_____________________________________________
Microsoft Visual FoxPro MVP
SysOp de PortalFox - http://www.portalfox.com
_____________________________________________
Proteje al zorro, úsalo legalmente



"Rubens Follenti" wrote in message
news:#
> Hola a todos:
>
> De un momento a otro mi sistema empezo a dar un error, "Error de
> Sintaxis" Cuando ejecuto un macro
> en el init de una clase tipo combo y no veo que exista tal error,
> si a
> alguno le ha pasado lo mismo me gustaria saber
> como solucionar este error. Debajo expongo el texto donde da el error.
>
> THIS.cTabla=SUBSTR(SYS(2015), 3, 10)
> lcTabla=THIS.cTabla
>
>
> CREATE CURSOR &lcTabla ( NombreUsu C(40),UsuarioId C(4),GrupoUsuId
> C(3),PideClave N(1),;
> Caja N(1))
>
>
> en el create cursor es donde da el error. desde ya muchas gracias.
>
>

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida