Ver Mensaje Individual
  #4  
Antiguo 19-09-2014
Toni Toni is offline
Miembro
 
Registrado: may 2003
Ubicación: Barcelona - España
Posts: 364
Reputación: 21
Toni Va por buen camino
Hola Casimiro,

Mira las tablas y sus indicies son los siguientes

Código SQL [-]
/* Tabla: StockPendientes */

CREATE TABLE "StockPendientes" (
    "idEmpresa" "tipoCodigoEmpresa" NOT NULL,
    "idAlmacen" "tipoCodigoAlmacen" NOT NULL COLLATE ISO8859_1,
    "idProducto" "tipoCodigoProducto" NOT NULL COLLATE ISO8859_1,
    "PendientesRecibir" "tipoUnidades",
    "PendientesFabrica" "tipoUnidades",
    "PendientesServir" "tipoUnidades",
    "StockReservado" "tipoUnidades",
    "StockEntrada" "tipoUnidades");



/* Primary keys definition */

ALTER TABLE "StockPendientes" ADD CONSTRAINT "PK_StockPendientes" PRIMARY KEY ("idEmpresa", "idAlmacen", "idProducto");


/* Indices definition */

CREATE UNIQUE INDEX "PK_StockPendientes" ON "StockPendientes" ("idEmpresa", "idAlmacen", "idProducto");



Código SQL [-]
/* Tabla: StockTotalPorAlmacen */

CREATE TABLE "StockTotalPorAlmacen" (
    "idEmpresa" "tipoCodigoEmpresa" NOT NULL,
    "idAlmacen" "tipoCodigoAlmacen" NOT NULL COLLATE ISO8859_1,
    "idProducto" "tipoCodigoProducto" NOT NULL COLLATE ISO8859_1,
    "QExistencias" "tipoUnidades");



/* Primary keys definition */

ALTER TABLE "StockTotalPorAlmacen" ADD CONSTRAINT "PK_StockTotalPorAlmacen" PRIMARY KEY ("idEmpresa", "idAlmacen", "idProducto");


/* Indices definition */

CREATE UNIQUE INDEX "PK_StockTotalPorAlmacen" ON "StockTotalPorAlmacen" ("idEmpresa", "idAlmacen", "idProducto");

Como el objetivo de este procedimiento es cruzar ambas tablas pues en los casos que hay un cierto volumen de registros la cosa se demora mucho y lo hace inoperativo. Por mucho puede ser unos >4000 registro en StockTotalPorAlmacen y >800 registros en StockPendientes.

El plan usado es que utilizada FB, pero segun puedo ver en el IBManager si utiliza la clave principal para las busquedas.
__________________
Saludos,

Bitman

Última edición por Toni fecha: 19-09-2014 a las 17:00:03.
Responder Con Cita