Localizar la posición en que empieza el texto alfabético en un string

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • poli
    Junior Member
    • abr
    • 15

    #1

    Localizar la posición en que empieza el texto alfabético en un string

    Hola,

    Tengo un problema a la hora de buscar la posición (sy-fdpos) en la que el texto empieza a ser alfabético y no numérico.

    Me explico:
    tengo un string con este contenido: '000000000000 1210220713 Fulano de Tal', y necesito conocer en que posición empieza la primera letra, en este caso 23, para a partir de aquí tomar el número de documento que está inmediatamente antes (1210220713).

    Estoy usando la sentencia search string for loc, donde loc lleva '0 12', funciona pero el problema es que no siempre el número de documento empieza por 12.

    Alguna idea o pista para tirar hacia delante?

    Muchas gracias!

    Saludos,
    Poli
  • mysmb2
    Senior Member
    • ene
    • 406

    #2
    Hola, si haces un SPLIT string AT space INTO var1, var2, var3...
    en var2 tenes el nro de doc.

    Saludos.
    Sebastián Chiavia
    http://www.programacionabap.com.ar

    Comentario

    • poli
      Junior Member
      • abr
      • 15

      #3
      Hola,

      gracias por la información y por el interés, la verdad es que ya había revisado esta opción y funciona, el string no siempre lleva el número de documento en esa posición, así que he hecho el split en 3 variables y accedo a bkpf para chequear si es un doc existente, y si es así lo proceso.

      La pregunta iba más encaminada a hacerlo de una forma más genérica, pero como aproximación es buena.

      Nuevamente gracias por la aportación, si hay alguna otra idea será bien recibida.

      Saludos

      Comentario

      • mysmb2
        Senior Member
        • ene
        • 406

        #4
        Hola Poli,
        El contenido del string va a tener alguna regla, si los valores están separado por espacio siempre o siempre serán el la misma posición, de alguna manera se identifican los 3 valores en la cadena.

        Si queres buscar si un carácter es alfabético usa la función NUMERIC_CHECK, tendrías que recorre carácter por carácter del string para encontrar la primer posición de tipo CHAR.

        Espero te sirva
        Saludos.
        Sebastián Chiavia
        http://www.programacionabap.com.ar

        Comentario

        • poli
          Junior Member
          • abr
          • 15

          #5
          Hola,

          Finalmente he optado por el split del string y el chequeo en bkpf.

          Gracias!

          De todas formas tomo nota de la sugerencia.

          Muchas gracias.

          Comentario

          Trabajando...