Cuestión : Pregunta de la longitud de campo de IIF

¡AUTORIZACIÓN, no puedo imaginar esto! el
I tiene una declaración de IIF (véase abajo):

SELECT
IIF (ALLTRIM (Stub_tot.doc_id)= " 2 ", “SoftPak”, “Tower”) COMO SystemType; el
FROM Table

However cuando veo los datos en el CURSOR en la ventana de sesión de los datos yo considera solamente: ¿de la “torre " del
el

It de " SoftP” o aparece él está tomando la longitud de la torre de la palabra y da el campo que la longitud así que porque SoftPak es más larga que trunca el “ak” de la mi pregunta de name.

So es cómo lo hago fijo esto?

Thanks,
Mark
class= del

Respuesta : Pregunta de la longitud de campo de IIF

La longitud de campo no es determinada por IIF, pero el primer expediente del resultado, si los primeros resultados del expediente en “SoftPak” el campo de SystemType serían C (7), si el primer expediente es una “torre” el SystemType es C (5). Ésa es la manera que el foxpro determina tipos de campo de una expresión un campo computado.

Tan molde al tipo de campo y legth que usted quiere:
ECHAR (IIF (...) como C (7)) como SystemType…

o COJÍN:
PADR (IIF (…, “SoftPak”, “torre”), 7) COMO SystemType…

o agregar simplemente los dos espacios necesarios a la “torre”:
IIF (…, “SoftPak”, “torre ") COMO SystemType

Adiós, Olaf.
Otras soluciones  
 
programming4us programming4us