Primero perdón por el "ladrillo" de mensaje. Con tablas en FB 2.5 tengo este query:
Código SQL
[-]SELECT A.Nombre, B.Codigo, B.Distrito, B.Seccion, B.Mesa, C.Censo, SUM(D.Votos) Votos
FROM Poblacion A, Mesas B, DatMes C
LEFT JOIN Resultados D ON C.Codigo = D.Mesa AND C.Proceso = D.Proceso
WHERE A.Codigo = B.Municipio
AND B.Codigo = C.Codigo AND C.Proceso = :Proceso
GROUP BY A.Nombre, B.Codigo, B.Distrito, B.Seccion, B.Mesa, C.Censo
ORDER BY Nombre, Distrito, Seccion, Mesa
Las tablas que emplea son estas:
1. Poblacion
Código SQL
[-]CREATE TABLE Poblacion (CodPrv VARCHAR(3) DEFAULT '99' NOT NULL, Codigo INTEGER NOT NULL, Nombre VARCHAR(65) NOT NULL,
Cpostal VARCHAR(10) NOT NULL, Pais VARCHAR(2) DEFAULT 'ES', CONSTRAINT PK_POBLACION PRIMARY KEY (CODPRV,CODIGO))
2. Mesas
Código SQL
[-]CREATE TABLE Mesas (CodPrv VARCHAR(3), Codigo INTEGER NOT NULL, Municipio INTEGER NOT NULL, Distrito SMALLINT NOT NULL,
Seccion SMALLINT NOT NULL, Mesa VARCHAR(2) DEFAULT 'U' NOT NULL, Censo INTEGER, CONSTRAINT PK_MESAS PRIMARY KEY (CODPRV,CODIGO))
3. DatMes
Código SQL
[-]CREATE TABLE DatMes (CodPrv VARCHAR(3) DEFAULT '99' NOT NULL, Codigo INTEGER NOT NULL, Proceso INTEGER NOT NULL,
Censo INTEGER DEFAULT 1 NOT NULL, CONSTRAINT PK_DATMES PRIMARY KEY (CODPRV,CODIGO,PROCESO))
4. Resultados
Código SQL
[-]CREATE TABLE Resultados (CodPrv VARCHAR(3) DEFAULT '99' NOT NULL, Proceso INTEGER NOT NULL, Mesa INTEGER NOT NULL,
Partido INTEGER DEFAULT 1 NOT NULL, Votos INTEGER NOT NULL, CONSTRAINT PK_RESULTADOS PRIMARY KEY (CODPRV,PROCESO,MESA,PARTIDO))
En la tabla resultados sólo hay registros con código de proceso (
C.Proceso) igual a 38.
Si ejecuto el query, tanto desde la aplicación como desde IBManager asignando valores 38 ó 39 al parámetro
Proceso el mismo se ejecuta; con el valor 38 me da el valor que está grabado, con valor 39 me devuelve tantas filas como debería ser pero en todas la columna Votos está a Null ya que no hay valores. Sin embargo si hago la prueba con el valor 40 me devuelve este error:
Cita:
No current record for fetch operation.
SQL Code: -508
IB Error Number: 335544348
No current record for fetch operation.
SQL Code: -508
IB Error Number: 335544348
|
En la tabla en la que creo que puede estar apareciendo el error (DatMes) he comprobado que hay datos para ese código 40:
Cita:
Codigo Proceso Censo
1 40 620
|