FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
FoxPro con ODBC -Query-
Estoy realizando una consuta de FoxPro a través de Microsoft Query, pero cuando agrego la sentencia IF o CASE de FoxPro me da un error que dice: COMMAND CONTAINS UNRECOGNIZED PHRASE KEYWORD. También, utilizo el la sentencia CASE de SQL y de igual forma me da error.
El código es el siguiente -UTILIZANDO COMANDO FOXPRO *DO CASE*: SELECT detalle_partidas.id_cuenta, partidas.concepto, detalle_partidas.concepto, partidas.fecha_partida, (detalle_partidas.cargo-detalle_partidas.abono) AS 'NETO', detalle_partidas.id_partida, partidas.numero_partida, partidas.tipo_partida, tipos_partidas.descripcion, cuentas.cargar_como, (substr(dtoc(partidas.fecha_partida),1,2)+'/'+substr(dtoc(partidas.fecha_partida),7,4)) AS 'MES-AÑO' DO CASE CASE cuentas.cargar_como =$1 THEN 'ACTIVO' CASE cuentas.cargar_como =$2 THEN 'PASIVO' ENDCASE FROM cuentas cuentas, detalle_partidas detalle_partidas, partidas partidas, tipos_partidas tipos_partidas WHERE partidas.id_partida = detalle_partidas.id_partida AND tipos_partidas.tipo_partida = partidas.tipo_partida AND cuentas.id_cuenta = detalle_partidas.id_cuenta AND ((partidas.fecha_partida Between {d '2011-01-01'} And {d '2011-12-31'})) ORDER BY partidas.fecha_partida El código es el siguiente -UTILIZANDO COMANDO SQL *CASE*: SELECT detalle_partidas.id_cuenta, partidas.concepto, detalle_partidas.concepto, partidas.fecha_partida, (detalle_partidas.cargo-detalle_partidas.abono) AS 'NETO', detalle_partidas.id_partida, partidas.numero_partida, partidas.tipo_partida, tipos_partidas.descripcion, cuentas.cargar_como, (substr(dtoc(partidas.fecha_partida),1,2)+'/'+substr(dtoc(partidas.fecha_partida),7,4)) AS 'MES-AÑO' 'CLASIFICACIÓN' = CASE WHEN cuentas.cargar_como =$1 THEN 'ACTIVO' WHEN cuentas.cargar_como =$2 THEN 'PASIVO' END CASE FROM cuentas cuentas, detalle_partidas detalle_partidas, partidas partidas, tipos_partidas tipos_partidas WHERE partidas.id_partida = detalle_partidas.id_partida AND tipos_partidas.tipo_partida = partidas.tipo_partida AND cuentas.id_cuenta = detalle_partidas.id_cuenta AND ((partidas.fecha_partida Between {d '2011-01-01'} And {d '2011-12-31'})) ORDER BY partidas.fecha_partida Muchas gracias por la ayuda. |
#2
|
||||
|
||||
Foxpro.... q recuerdos....
prueba de esta manera
__________________
Dulce Regalo que Satanas manda para mi..... |
#3
|
|||
|
|||
Muchas gracias Oscarac,
Me sirvio, pero si tengo más de una clasificación? Así por ejemplo: cuentas.cargar_como =$1 ----- 'ACTIVO' cuentas.cargar_como =$2 ----- 'PASIVO' cuentas.cargar_como =$3 ----- 'PATRIMONIO' cuentas.cargar_como =$4 ----- 'GASTOS' cuentas.cargar_como =$5 ----- 'INGRESOS' cuentas.cargar_como =$6 ----- 'CTAS. CIERRE' Se puede utilizar así: IFF (cuentas.cargar_como =$1, IFF (cuentas.cargar_como =$2, 'PASIVO',IFF (cuentas.cargar_como =$3, 'PATRIMONIO',....'ACTIVO')))))) |
#4
|
||||
|
||||
asi es... puedes hacer una secuencia de iif anidados, como muy bien lo has puesto en tu ejemplo final, pero es IIF no IFF
__________________
Dulce Regalo que Satanas manda para mi..... |
#5
|
|||
|
|||
Gracias nuevamente. Ya lo hice y me quedó así:
IIF(cuentas.cargar_como=$1, IIF(cuentas.cargar_como=$2, 'PASIVO', IIF(cuentas.cargar_como=$3, 'PATRIMONIO', IIF(cuentas.cargar_como=$4, 'GASTOS', IIF(cuentas.cargar_como=$5, 'INGRESOS', IIF(cuentas.cargar_como=$6, 'CTAS.CIERRE', 'ACTIVO')))))) AS 'CLASIFICACIÓN' pero me da un error que dice: MISSING COMMA (,) A que se deberá? De antemano, gracias. |
#6
|
||||
|
||||
Yo creo que deberia ser asi
porque de la forma que estas haciendolo tu cuando es $1 no saldria nada
__________________
Dulce Regalo que Satanas manda para mi..... |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
reordenar indices foxpro | cmm07 | Varios | 0 | 02-12-2007 23:30:12 |
Eliminar en FoxPro | Danielle | Conexión con bases de datos | 2 | 27-06-2006 23:50:44 |
FoxPro | altp | Tablas planas | 2 | 30-01-2006 10:58:49 |
Error de SQLConnectionAttr con FoxPro | Tecnic2 | Conexión con bases de datos | 3 | 04-04-2005 19:08:14 |
Foxpro | Mariana | Conexión con bases de datos | 3 | 18-11-2004 13:38:39 |
|