Page 1 of 1

SOBRE FOLDER

Posted: Mon Dec 11, 2006 8:03 pm
by QAZWSX2K
SALUDOS RESULTA QUE EN UN DIALOGO SACO DE UN LISTBOX EL CODIGO DE UN CLIENTE Y LO MANDO A ACTUALIZAR EN UN SAY Y QUE PASE A OTRO GET, BUENO EN EL DIALOGO FUNCIONA PERFECTO PERO SI LO HAGO DENTRO DE UNA PESTAÑA DE UN FOLDER NO LO HACE, ALGUIEN TENDRA ALGUNA IDEA DE PORQUE?

GRACIAS DE ANTEMANDO Y LE DEJO EL CODIGO


DEFINE DIALOG DIALOGO TITLE "X" PIXEL FROM 5, 5 TO 505, 760
@ 1,1 FOLDER FICHA prompts "1","2" of dialogo SIZE 377,222 PIXEL
@ 7,5 SAY OSAY VAR "CLIENTE:" PIXEL OF FICHA:ADIALOGS[1]
@ 7, 145 SAY OSAY VAR "CODIGO DE PIEZA:" OF FICHA:ADIALOGS[1] PIXEL
@ 5, 35 COMBOBOX OBOX VAR TNOMBRE ITEMS ACLI OF FICHA:ADIALOGS[1] size 100,200 PIXEL ON CHANGE(TCOD_CLI:=SUBSTR(TNOMBRE,51,5),TCOD_PIE:=SUBSTR(TNOMBRE,56,5),TCOD_TODO=SUBSTR(TNOMBRE,51,10), osay2:refresh(),OGET2:SETFOCUS()) VALID TNOMBRE#SPACE(60) //TIMAGEN1=TCOD_CLI+TCOD_PIE+"a", TIMAGEN2=TCOD_CLI+TCOD_PIE+"b",

@ 7, 203 SAY OSAY2 VAR TCOD_TODO OF FICHA:ADIALOGS[1] PIXEL COLOR CLR_RED SIZE 30,10

@ 22, 5 SAY OSAY VAR "TITULO:" OF FICHA:ADIALOGS[1] PIXEL
@ 20, 55 GET OGET2 VAR TTITULO OF FICHA:ADIALOGS[1] PIXEL

Posted: Mon Dec 11, 2006 11:31 pm
by Antonio Linares
Aqui te falta lo marcado en rojo:

TCOD_TODO := SUBSTR(TNOMBRE,51,10)

re

Posted: Tue Dec 12, 2006 12:12 pm
by QAZWSX2K
bueno me equivoque y lo puse como un post nuevo, jejeje

antonio agradezco te hayas en verdad tomado la molestia de leer el codigo, realmente no se como haces para leer todos los codigo que la gente manda, es un esfuerzo apreciable, la variables que me dices la defino despues, creo es la tercera y es yo diria una pirateria de mi parte ya que originalmente es la suma de las otras dos, de todos modos cuando estaba en el dialogo funcionaba pero cuando agregue el folder y las puse en la pestaña dejo de funcionar por lo que el folder no me permite refrescar el say, no le nuscare la 5 pata al gata asi que lo volvere a poner en un dialogo y lo que tenia en la segunda pestaña lo pondre a traves de un boton para que el usuario lo pida si necesita verlo, de todos modos gracias por un poco de tu valiosisimo tiempo se que debes de andar en cosas mas serias

re 2

Posted: Tue Dec 12, 2006 12:14 pm
by QAZWSX2K
por eso digo que mas sabe el diablo por viejo que por diablo, vere si es porque solo puse el signo de igual sin los dos puntos

pues si efectivamente

Posted: Tue Dec 12, 2006 12:18 pm
by QAZWSX2K
pues si antonio gracias si era por los 2 puntos que faltaba, hasta pena me da a ver puesto el post pero a veces las cosas mas principiantes son en las que menos uno piensa cuando tiene un problema, gracias de nuevo

Posted: Tue Dec 12, 2006 12:24 pm
by Antonio Linares
Estamos para ayudarnos unos a otros en esta vida y en estos foros :-)

Posted: Tue Dec 12, 2006 1:04 pm
by QAZWSX2K
lo curioso es que me lo decia el compilador y como no me afectaba la compilacion no le hacia caso:

"WARNING W0027 Meaningless use of expression 'string'"

Posted: Tue Dec 12, 2006 4:18 pm
by jose_murugosa
Espero no lo tomes como un atrevimiento, pero como talvez no tengas claro el concepto de este operador me atrevo a explicar:

:= es un operador de asignación
= funciona en _ como operador de asignación pero en otros como operador de comparación

Vale decir:

a=b asigna el valor de b a la variable a en ciertas circusntancias pero en otras dependiendo de la expresion donde esté contenida a=b es una comparación como preguntarse "es a igual a b" por lo que retornará .t. o .f. según corresponda, por eso no te funcionaba pero no te daba error de compilación, ya que la expresión es válida para el compilador.

Para evitar esta ambiguedad y que siempre sepas que asignas valores utiliza el operador a:=b que es forzosamente interpretado como asignar el valor de b a la variable a, no teniendo ninguna otra interpretación.

Disculpa si lo tenías claro, pero en tal caso seguramente será de ayuda para alguien más.

Saludos desde Uruguay!! :D