Autor |
Mensaje |
Miembro
 Adicto
   
|
#1 Publicado: 7 Feb 2014 21:12 - Editado por: chacalat
Hola que tal Mirando el el foro he visto como conseguir un texto de un campo desde la izquierda de un carácter buscado en mi caso"-" pero necesito como sacar lo contrario despuesde un "-" hasta el siquiente"-" adjunto archivo me falta resultado 2
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
jose antonio
win 7 - fm 19
|
Miembro
Habitual

|
#2 Publicado: 8 Feb 2014 04:13
Hola, ahi te va el adjunto con la solución.
Usé un Let para definir el principio, el final, y la duración, y lo usé con la función Middle.
Extraer texto es un poco toca-bolas, siempre tengo que andar probando.
lo saqué de no sé donde hace tiempo. Mas o menos se entiende bien si miras la formula.
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
OSX Filemaker 12
|
Miembro
 Adicto
   
|
#3 Publicado: 8 Feb 2014 11:28
voy ha probar , pero no se si me he explicado bien, creo que hay una función sobre palabras de un campo por ejemplo José Antonio te devolvería "Antonio" y después debería quitar las letras con el subsitute ejemplo
campo de entrada 2 RES 1="2" RES 2="" RES 3=""
2c RES 1="2" RES 2="" RES 3="c"
2-2 RES 1="2" RES 2="2" RES 3=""
2-2-c RES 1="2" RES 2="2" RES 3="c"
estas son la posibilidades de entrada del campo y los resultados que necesito
gracias seguiré probando
jose Antonio
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
jose antonio
win 7 - fm 19
|
Miembro
 Adicto
   
|
#4 Publicado: 8 Feb 2014 13:11 - Editado por: chacalat
bueno cogiendo tu idea con variable $end = Position ( BOLNEADO;"-" ; 1; 2 ) necesitaría que fuera ampliada al primer campo final del campo con eso lo solucionaría
gracias Jose Antonio
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
jose antonio
win 7 - fm 19
|
Miembro
Habitual

|
#5 Publicado: 8 Feb 2014 15:00
Hola, puedes usar leftwords (bolneado; 2) sé que leftwords y rightwords usa los espacios Y NO SE QUE OTROS CARACTERES para separar las palabras. si usa los "-" para separar palabras puedes usar leftwords (bolneado; 2) y te dará la palabra segunda empezando por la izquierda...
prueba a ver si te va mejor la version de palabras en vez de la función "middle".
ando a tope con 3 cervezas, no sé si me perdí en tu explicación, en teoría mi solución te da el resultado que hay entre los dos "-" no?
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
OSX Filemaker 12
|
Miembro
 Adicto
   
|
#6 Publicado: 8 Feb 2014 20:40 - Editado por: chacalat
ten cuidado con las cervezas por que +3 puedes que veas .... voy ha probar pero por ahora tengo una solución provisional porque el resultado 2 no es mas de un numero ,pero intentare salar la variable $end en la que sea igual al "-" segundo o ultimo carácter si no hubiera el segundo"-" seguiré probando
gracias Jose Antonio
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
jose antonio
win 7 - fm 19
|
Miembro
 Adicto
   
|
#7 Publicado: 9 Feb 2014 00:24 - Editado por: chacalat
he probado lo que me dices pero me devueve las 2 palabras no la segunda además no sed para las palabras solo con "-" necesita un espacio en blanco
seguimos probando
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
jose antonio
win 7 - fm 19
|
Miembro
 Constante
  
|
#8 Publicado: 9 Feb 2014 01:37 - Editado por: neocate
Quieres esto?
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
¿Por que te acongojas alma mía?, ¿Por que te turbas? Espera en Dios.
XP --FM 11
|
Miembro
 Adicto
   
|
#9 Publicado: 9 Feb 2014 11:08
Gracias neocate solo me hace que el resutado sea numerico no se si en la mismo calculo se prodria quetar las letras con el subtitute .tambien he pentsado en creae una tercera variable que cuente todos los caracteres $start = Position ( BOLNEADO; "-"; 1; 1 ) +1; $end = Position ( BOLNEADO;"-" ; 1; 2 );$and2=Length ( BOLNEADO )] pero la funcion que me de desde la variable $star hasta $end o "end2. con la funcion if se puede establecer facilmente la variable del final que nesecito pero la funcin Middle solo me devuelve la posiscion solicitada no se si se le puede poner un rango .
muchas Gracias Jose Antonio
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
jose antonio
win 7 - fm 19
|
Miembro
 Adicto
   
|
#10 Publicado: 9 Feb 2014 11:44
por fin solucionado gracias ha todos
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
jose antonio
win 7 - fm 19
|
Miembro
Habitual

|
#11 Publicado: 9 Feb 2014 11:57 - Editado por: ChichoSpit
joer, ya estaba yo en ello también, que raro que rightwords separe las palabras por "-" EN CASO DE QUE EL CONTENIDO TENGA LETRAS, si tiene numeros solo, lo trata como un numero aunque el calculo y el campo esté como "Texto"...
bueno... lo importante es que salió... jajaj
---
Edit: Si solo quieres los numeros , mejor usa "Filter (campo ; 1234567890 )" en vez de substitute.
en el archivo q mandaste el tercer registro "5-354-4" te pone: Res1 = 5 Res2 = 35 Res3 =
no debería ser: Res1 = 5 Res2 = 354 Res3 = 4 ?
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
OSX Filemaker 12
|
Miembro
 Adicto
   
|
#12 Publicado: 9 Feb 2014 14:22 - Editado por: chacalat
la verdad la la opción filter parece mejor que susbtitute es menos engorroso , el por que de toda esta maraña lo voy ha intentar explicar tengo un cliente que es una fabrica de embutido "por cierto esta que te mueres de bueno" pero lo hacían todo a mano desde hace 35 años, mi primer reto fue ponerles 4 ordenadores y un programa de facturación y facturar si el bolígrafo.
llega el segundo reto es la aplicación de fm que le estoy preparando para los pedidos en la que me crea pedidos por cliente y me saca listados por productos y divide por grupos de productos , estos informes son para que al final del dia sepan la suma de los productos que tienen que preparar para los cientes separado por la clase del producto dedo que unos preparan morcillas, otros oreja otros vacio ,gas etc. después de tener mas o menos enfilado del tema no consigo que en la introducion de datos en el pedido me lo hagan de la forma habitual y es lo que tengo que cambiar y por esto la consuta y la verdad que tienen parte de razón a la hora de coger los pedidos son escuetos te pongo ejemplos 3-2-cd "esto significa que son 3 uni en formato caja dura(cd) y dentro de la caja 2 unidades ;la cantidad del producto es 6 3-cd "esto significa que quieren 3unidades en caja dura 3 "esto significa que quieren 3 unidades
entonces el client rellena el campo bolneado y de hay con el campo calculo sacamos los calores del resultado 1(cantidad de producto) resultado 2(unidades dentro de la cantidad resultado 3 formato de embase) he intentado hacerlo con una ventana flotante para que lo introdujeran ellos pero no hay manera y el cliente manda
te subo el archivo con el filtro veras que cumple todas las necesidades y mucho mas lipio que el susbsitute tienes mas razon que un santo aunque le peges un poco a las cerbezas por cierto si pasas cerca recuerdame que te devo unas cuantas
muchas gracias
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
jose antonio
win 7 - fm 19
|
Miembro
Habitual

|
#13 Publicado: 9 Feb 2014 15:53
que corto soy dios,... bueno, ya me voy enterando mejor de lo que buscas,,, pero aun no estoy 100%...
Notas: tienes un "espacio en blanco" en el Filter entre la T y la U.
Filter diferencia entre mayusculas y minusculas, por lo que la formula sería: Filter (BOLDEANO : "qwertyuiopasdfghjklzxcvbnmQWERTYUIOOPASDFGHJKLZXC VBNM)
En el resultado 2: deberias poner en el filter el 0 también no?
En el Resultado 2 ; donde pone Middle ( BOLNEADO; $start; 2) <- ese 2 es el numero de caracteres que quieres que muestre. ahi deberías poner 99 (por poner un ejemplo) para que coja todos los numeros despues del primer "-" o no?
-- Según entiendo hay 3 factores,
el Primer Resultado es la cantidad de producto que el cliente quiere. Hasta ahi lo tenemos resuelto no? siempre es un numero.
El segundo resultado puede haberlo o no, el la cantidad de salchichas del paquete? si lo hay, siempre son 2 cifras? también lo tenemos no?
el tercer resultado siempre son letras? Si es así, lo tenemos filtrando el BOLDEADO como tu tienes.
está entonces resuelto??
el que apunta el pedido tiene que rellenar el campo BOLNEADO a mano, y de ahi se quita la info no?
España me queda un poco lejos ahora mismo, no me hables de comida... estoy de arroz hasta los mismis***
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
OSX Filemaker 12
|
Miembro
 Adicto
   
|
#14 Publicado: 9 Feb 2014 17:56 - Editado por: chacalat
repasanto me he dado cuenta de que filter descrimina las mayusculas y minusculas y que me faltava el caracter 0 en el resultado 2 tambien el el resulatado 2 que puesto que me muestre 2 aunque no es nomal que dentro de un poductos haya mas de 9 estos no me dejan de sorprender pero si te fijas el siguiente campo posibles son letras y esta el campo con la funcion filter por lo cual poniendo 2 cubro posibilidades raras te adjunto el interface del ususario para lo veas y entiendas la idea, los colorines significa las posibilidades de pesos o piezas que tiene un producto y el campo articulo se queda en rojo si no han rellenado ningun peso o pieza.
un saludo
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
jose antonio
win 7 - fm 19
|