LOCAL lcNombre_completo, len_nombre, lnBlancos, lnInd, lcNombre, lcApeMat, lcApeMat
lcNombre_completo = "LUIS ANGEL GOMEZ TALAVERA"
len_nombre = 0
lnBlancos = 0
lnInd = 0
lcNombre = ""
lcApeMat = ""
lcApeMat = ""
DIMENSION arrBlancos (10)
* POner la tabla en uso
* USE tabla_entrada in 0
* seleccionarla
* recorrer
* GO TOP in tabla_Entrada
* SCAN
lcNombre_completo = "LUIS ANGEL GOMEZ TALAVERA"
* Cuneto los blancos que hay enele nombre
FOR lnInd = 1 TO LEN(ALLTRIM(lcNombre_completo))
IF SUBSTR(ALLTRIM(lcNombre_completo),lnInd,1) = " "
lnBlancos = lnBlancos + 1
arrBlancos (lnBlancos) = lnInd
ENDIF
NEXT
*Si hay blancos es que tengo al menos un apellidp
IF lnBlancos > 1
DO CASE
* solo tienes dos datos Nombre y primer apellido
CASE lnBlancos < 2
lcNombre = SUBSTR(ALLTRIM(lcNombre_completo), 1, arrBlancos(1))
lcApeMat = SUBSTR(ALLTRIM(lcNombre_completo), arrBlancos(1) + 1)
* Nombre y 2 apellidos
CASE lnBlancos = 2
lcNombre = SUBSTR(ALLTRIM(lcNombre_completo), 1, arrBlancos(1))
lcApeMat = SUBSTR(ALLTRIM(lcNombre_completo), arrBlancos(1)+ 1, arrBlancos(2))
lcApeMat = SUBSTR(ALLTRIM(lcNombre_completo), arrBlancos(2) + 1)
* Nombre compuesto y dos apellidos
CASE lnBlancos > 2
lcNombre = SUBSTR(ALLTRIM(lcNombre_completo), 1, arrBlancos(2))
lcApeMat = SUBSTR(ALLTRIM(lcNombre_completo), arrBlancos(2)+ 1, arrBlancos(3) - arrBlancos(2))
lcApePat = SUBSTR(ALLTRIM(lcNombre_completo), arrBlancos(3) + 1)
* Si hay mas es mas lio lo que yo haria sería imaginar nombre compuesto primer apellido
* hasta el blanco y el resto en el segundo apellido, de esa forma sabria que los registros
* con blanscos en el segundo apellido, hay que revisarlos a mano
ENDCASE
* Si no hay blancos lo pongo en el nombre y luego lo arreglaria
ELSE
lcNombre = ALLTRIM(lcNombre_completo)
ENDIF
*.....
* cargar la tabla_Salida
* REPLACE tabla_salida.Nombre WITH lcNombre
* REPLACE tabla_salida.Nombre WITH lcApeMat
* REPLACE tabla_salida.Nombre WITH lcApePat
*.....
*Seleccionar la tabla de entrada
* select tabla_Entrada
*ENDSCAN
* CERCAR LAS TABLAS
* USE IN tabla_Entrada
* USE IN tabla_Salida