Cita:
Empezado por amerika111
SET T_NOMTOT =APATERNO+' '+AMATERNO+' '+NOMBRES
|
Vaya, pensaba que en Firebird solo concatenaba el operador ||, y que por tanto esa línea había que traducirla como :
T_NOMTOT = APATERNO || ' ' || AMATERNO || ' ' || NOMBRES
Pero si dices que te funciona bien, entonces adelante.
Cita:
Empezado por amerika111
y hay otra palabra patindex no se a que se refiere..
SET NOMBRE1_LONGITUD = PATINDEX('% %',NOMBRES)
|
Esta función retorna la primera aparición de una expresión en una cadena. En concreto te retorna la posición del primer espacio en blanco (y por tanto equivale a la longitud del nombre propio).
http://msdn.microsoft.com/en-us/library/ms188395.aspx
Deberías poder sustituirlo por :
NOMBRE1_LONGITUD = position(' ', NOMBRES)
La función POSITION se añadió en Firebird 2.1. Por lo tanto necesitas usar Firebird 2.1 o 2.5, para que esta línea funcione correctamente. Si usas una versión anterior de Firebird, entonces debes buscar una UDF que te brinde esta función (o similar), o bien, escribir un bucle recorriendo NOMBRES, para localizar donde está la primera cadena en blanco.
Saludos.