FoxPro/Visual FoxPro - Uso de macrosusticion para crear cursor

 
Vista:
sin imagen de perfil

Uso de macrosusticion para crear cursor

Publicado por Alex Balarezo (5 intervenciones) el 18/07/2014 21:03:50
Buenas tardes desde Quito-Ecuador

Tengo un problema al crear un cursor.
Debido a la naturaleza de la aplicación, debo usar un cursos que varia de campos de acuerdo a una condicion dada,
He resuelto la forma de hacer esta solicitud pero al momento de crear el cursor me aparec un error

Tengo la siguiente cadena:

cadena="amonestacionx (estudiantex c(30), amonex1 L(), amonex2 L(), amonex3 L())

Y quiero usarla para crear el cursor

create cursor &cadena

Qué estoy haciendo mal?

De antemano un millón de gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

Uso de macrosusticion para crear cursor

Publicado por Ernesto Hernandez (4623 intervenciones) el 18/07/2014 22:12:59
cadena="amonestacionx (estudiantex c(30), amonex1 L(), amonex2 L(), amonex3 L()) "
CREATE CURSOR (&cadena)



Suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Uso de macrosusticion para crear cursor

Publicado por Alex (5 intervenciones) el 19/07/2014 17:06:59
Gracias comunidad

Encontré la solución. En verdad era un error mío al momento de crear la sentencia.
Los campos logical van sin paréntesis. amonex L no amonex L()

Gracias por su apoyo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Mauricio Antonio
Val: 471
Plata
Ha mantenido su posición en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Uso de macrosusticion para crear cursor

Publicado por Mauricio Antonio (1541 intervenciones) el 18/07/2014 23:18:04
Seria excelente que pusieras que error te marca. Ya encargue la bolita de cristal!!!!!!!!!!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Uso de macrosusticion para crear cursor

Publicado por Alex (5 intervenciones) el 19/07/2014 17:07:45
Gracias comunidad

Encontré la solución. En verdad era un error mío al momento de crear la sentencia.
Los campos logical van sin paréntesis. amonex L no amonex L()

Gracias por su apoyo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 1.011
Oro
Ha mantenido su posición en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Uso de macrosusticion para crear cursor

Publicado por Fidel José (558 intervenciones) el 19/07/2014 02:09:58
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
* Si los campos son fijos
lcCampo1="Estudiante C(30)"
lcCampo2="Amonex1 L"
lcCampo3="AMONEX2 L"
lcCampo4="AMONEX3 L"
TEXT TO lcstring TEXTMERGE NOSHOW PRETEXT 1+5
CREATE CURSOR AMONESTACIONX (<<lcCampo1>> , <<lcCampo2>>,<<lcCampo3>>,<<lcCampo4>>)
ENDTEXT
 
EXECSCRIPT(lcString)
SELECT amonestacionx
INSERT INTO amonestacionx (Estudiante,Amonex1,amonex2,amonex3) ;
	VALUES ("PEREZ ARNALDO RAMON",.T.,.F.,.T.)
BROWSE
 
* Si los campos son variables
lnCampos=5
lnFijos=1
LOCAL gaEstud(lnCampos,4)
gaEstud[1,1]="Estudiante"
gaEstud[1,2]="C"
gaEstud[1,3]=30
gaEstud[1,4]=0
FOR i=2 TO lnCampos
	gaEstud[i,1]="Amonex"+TRANSFORM(i-lnFijos)
	gaEstud[i,2]="L"
	gaEstud[i,3]=0
	gaEstud[i,4]=0
NEXT
CREATE CURSOR mamonex FROM ARRAY gaEstud
INSERT INTO mamonex (Estudiante,Amonex1,amonex2,amonex3,amonex4) ;
	VALUES ("PEREZ ARNALDO RAMON",.T.,.F.,.T.,.f.)
BROWSE
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Uso de macrosusticion para crear cursor

Publicado por Alex (5 intervenciones) el 19/07/2014 17:08:03
Gracias comunidad

Encontré la solución. En verdad era un error mío al momento de crear la sentencia.
Los campos logical van sin paréntesis. amonex L no amonex L()

Gracias por su apoyo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Uso de macrosusticion para crear cursor

Publicado por Ernesto Hernandez (4623 intervenciones) el 21/07/2014 16:54:40
 FieldType nFieldWidth nPrecision Description
C n – Character field of width n
D – – Date
T – – Datetime
N n d Numeric field of width n with d decimal places
F n d Floating numeric field of width n with d decimal places
I – – Integer
B – d Double
Y – – Currency
L – – Logical
M – – Memo
G – – General
P – – Picture
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar