FoxPro/Visual FoxPro - Data Type mismach, textbox..xxxx en tiempo de replace

 
Vista:
sin imagen de perfil
Val: 24
Ha aumentado 1 puesto en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Data Type mismach, textbox..xxxx en tiempo de replace

Publicado por BOLIVAR (13 intervenciones) el 29/04/2020 22:05:28
Hola , lo que hice fue asociar al datasource del textbox directamente al campo de la tabla..... pero cuando creí que ya tenia la solución me doy cuenta que cuando ejecuta el código me pone la entrada del textbox inhibida ( osea como se hiciera esto ejem. thisform.text,,,.Enabled= .f. ) Podría alguien orientarme , gracias anticipadas.
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
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

Data Type mismach, textbox..xxxx en tiempo de replace

Publicado por Mauricio Antonio (1541 intervenciones) el 29/04/2020 23:52:13
Lo que sucede es que el tipo de campo del texbox es diferente al de la tabla asociada al datasource, ya es tiempo que te des tu tiempo que leas la ayuda para entender los diferentes errores que te saldran.
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: 24
Ha aumentado 1 puesto en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Data Type mismach, textbox..xxxx en tiempo de replace

Publicado por BOLIVAR (13 intervenciones) el 30/04/2020 03:19:15
Tu respuesta fue muy apresurada , porque este error no es la derivación de una simple discordancia textbox/campo .dbf ,Ccreo que señale bien claro, cuando cito que asocie el campo o textbox/datasource . Es lógico que la situación de la discrepancia esta resuelta es mas si miramos el "builder" del textbiox la correspondencia ( texttb - regist.dbf ) es num.a num. o de carácter a carácter....

creo que la diferencia esta ( la cual no se manejar, soy de formacion en IT , pero no experto en VFP) es por el uso de dos formatos , con tablas diferentes y con texbox que conincidencialmente tienen el mismo nombre.

Lo lógico en programación es cada evento se ejecuta uno tras otro , es decir que cuando ejecuto un select al seg archivo , lógicamente cierra el anterior.

Lo que parece es que coge la características del primer campo o textbox.? ahi es que esta el detalle. ...
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

Data Type mismach, textbox..xxxx en tiempo de replace

Publicado por Mauricio Antonio (1541 intervenciones) el 30/04/2020 14:45:04
de acuerdo Bolivar, respeto tu decision de master......buena 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
Val: 24
Ha aumentado 1 puesto en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Data Type mismach, textbox..xxxx en tiempo de replace

Publicado por BOLIVAR (13 intervenciones) el 30/04/2020 17:36:11
Mauricio, no me he adjudicado ningún calificativo de supremacia , lamento que porque me he pronunciado en que ha sido precipitado te hayas sentido mal, al contrario , aunque no comparto tu opinión si me califique que no soy experto en VFP que en buen castellano creo que se entiende algo de humildad.
Saludos,
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 Abel
Val: 642
Plata
Ha mantenido su posición en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Data Type mismach, textbox..xxxx en tiempo de replace

Publicado por Abel (286 intervenciones) el 30/04/2020 16:56:24
No entiendo como puede darte diferencia si asocias diréctamente el textbox con el datasourse, por lógica estan relacioados. Luego cuando te refieres a que usas un select, (supongo te refieres a Select-SQL) me da a entender que no es directa la relación.
Podrías mostrar un poco tu código para tratar de interpretar el problema.
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: 24
Ha aumentado 1 puesto en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Data Type mismach, textbox..xxxx en tiempo de replace

Publicado por BOLIVAR (13 intervenciones) el 30/04/2020 18:21:31
Hola Abel, si te entiendo es un poquito raro, algo mal estoy haciendo y ahi es que quiero ver luz
en la tabla tengo el registro fechdesb , fecha de desembolso mod struct de la tabla lo tengo tipo fecha..... date 8
en el formato est textbox7 valide en la propiedades que esta tipo fecha tambiein... no caract no num.......

Abel, estoy usando los recursos nativo en cuanto DBF dle VFP no SQL, cuando abro e archivo maestro con select file XXX,dbf como le comente a Mauricio ejecuto y me despliega el error data tp Mism.........

En este caso , lo que hice fue asociar el campo por medio c. sourse directamente al del archivo. no se porque me inhibe el reg de entrada o text7.....

mientras tanto lo que voy hacer es borrar desde la dbf el campo y crearlo de nuevo.....

Por favor recibe cálido saludos por tu gran interés mostrado nuevamente en asistirnos...
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 Abel
Val: 642
Plata
Ha mantenido su posición en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Data Type mismach, textbox..xxxx en tiempo de replace

Publicado por Abel (286 intervenciones) el 30/04/2020 19:58:16
Prueba lo siguiente

REPLACE fedesemb WITH CTOD(thisform.text7.value)

puedes conocer que tipo de variable obtienes del textbox con lo siguiente:

wait wind vartype(thisform.txt7.value)

será C o D
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: 24
Ha aumentado 1 puesto en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Data Type mismach, textbox..xxxx en tiempo de replace

Publicado por BOLIVAR (13 intervenciones) el 01/05/2020 03:02:13
Hola , no hubo forma... finalmente lo que se me ocurrió fue mover el text7 box , en en otro punto del formato (véase anexo),, en propiedades me asegure tener este campo como Date, 8,. no fue necesario asociar este campo control source/mtprestamo.dbfr ...

Lo que considero es que al parecer se producía una dislocación en tiempo ejecución o de extracción, le dejo el código de la subrutina . el objetivo es extraer del archivo maestro de cliente valido si existe .. en tal caso elijo los campos básicos luego slect el maestro de préstamo
al código del préstamo lo creo y a partir de ahi realizo con esta subrutina asignación automática de código de préstamo x cliente...

Acepto sugerencia para mejorar , si tienen comentarios. Esta subr. la realicé en media hora y el problema del text7 me llevo0 3 dias.. jajajajaja...


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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
&&Subrutina que asigna # de prestamo por cliente (ID-cedula"
&&basado en año +mes+ secuencia numeria ( ejemplo 2020-04-XXXX)
 
Thisform.text1.Value = ALLTRIM(thisform.text1.Value)
Thisform.text1.Value = UPPER(thisform.text1.Value)
 
 
 *FECHA DEL SISTEMA DESCOMPOSICON *
  DIASYS = LEFT(DTOC(DATE()),2)
  MESSYS = SUBSTR(DTOC(DATE()),4,2)
  ANOSYS = RIGHT(DTOC(DATE()),4)
 
store 0 to numpre2
store '  ' to numpre8
STORE '001' TO NUMPRE9
store '  ' to m.numpres1
 
 
 
SELECT MTROCTES
 
SET ORDER TO Cedula  && CEDULA
SEEK ALLTRIM(thisform.text1.Value)
 
   IF FOUND()  then
 
 THISFORM.TEXT3.Value = nombre
 thisform.text6.Value = telefono
 thisform.text4.Value = direc
 
 
SELECT mtprestamo
 
SET ORDER TO CODPREST
 
DO WHILE .not. EOF()
THISFORM.TEXT2.VALUE = RIGHT(CODPREST,3)
M.NUMPRES1 = VAL(thisform.text2.value) + 1
NUMPRE2 = INT(M.NUMPRES1)
 
***
NUMPRE8 = STR(NUMPRE2)
If numpre2 =<  9
   numpre8 = '00' + alltrim(str(numpre2))
 else
 
If numpre2 >=  10
   numpre8 = '0' + alltrim(str(numpre2))
Endif
  Endif
 
   IF numpre2 > 99
store  ' '  to  numpre8
 numpre8 = numpre8 + alltrim(str(numpre2))
     Endif
 
 
NUMPRE4 = ANOSYS + MESSYS
 
numpre5 = SUBSTR(codprest,5,2)
 IF numpre5 = MESSYS
 
   NUMPRE4 = NUMPRE4 + ALLTRIM(numpre8)
     ELSE
   NUMPRE4 = NUMPRE4 + ALLTRIM(numpre9)
 
       ENDIF
 thisform.text2.Value = NUMPRE4
    skip
 ENDDO
 
 
 ELSE
 WAIT WINDOWS "VERIFIQUE BIEN CLIENTE NO EXISTE"
 STORE "" TO thisform.text1.Value, thisform.text2.Value
 
 ENDIF
 && STORE "" TO thisform.text1.Value, thisform.text2.Value
  thisform.refresh
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

Data Type mismach, textbox..xxxx en tiempo de replace

Publicado por Fidel José (657 intervenciones) el 30/04/2020 21:13:41
Normalmente la configuración de un texbox para un campo Date es:
1
2
3
4
5
WITH thisform.text7
	.Format = "D"
	.Value = {}
	.ControlSource = "Alias_Tabla.CampoFecha"
ENDWITH
Este código tiene que estar puesto en un método o evento posterior a la apertura de la tabla.
Si la tabla se abre en el Load del form o en el DataEnvironment, ese código puede estar en el evento INIT o en un método que se convoca desde el evento INIT.

Si es necesario cambiar de tabla o cursor, por el motivo que fuere, también será bueno reprocesar la inicialización del textbox.
En ese caso lo recomendable es escribir un método con un parámetro (el alias de la tabla a configurar)

1
2
3
4
5
6
7
* Metodo Configure
LPARAMETERS tcAlias
WITH thisform.text7
	.Format = "D"
	.Value = {}
	.ControlSource = m.tcAlias+".CampoFecha"
ENDWITH

Por ejemplo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
lcCursor = SYS(2015)
SELECT * ;
	FROM MITABLA ;
	WHERE FECHA BETWEEN ldDesde AND ldHasta ;
	INTO CURSOR (lcCursor) READWRITE
 
IF !EMPTY(_Tally)
	thisform.Configure(m.lcCursor)
ELSE
	USE IN SELECT(m.lcCursor)
ENDIF
 
El textbox puede quedar bloqueado si el cursor o tabla no tiene al menos un registro. También se bloqueará si la tabla tiene en el campo correspondiente el valor NULL.
La función ISNULL() te permite saber si un valor es el valor NULL.

Recuerda que siempre será más fácil aportar una solución si presentas tu código relevante.
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: 24
Ha aumentado 1 puesto en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Data Type mismach, textbox..xxxx en tiempo de replace

Publicado por BOLIVAR (13 intervenciones) el 01/05/2020 03:17:40
Hola Fidel, excelente exposición y le veo mucha lógica , de verdad te agradezco mucho , aunque ya he resuelto no dejaré de seguir analizando tus codigos , entiendo que es buena respuesta.

Si puedes dale un chequeo, acepto comentarios......
abrazos
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