Sunteți pe pagina 1din 20

Escenarios empresariales de Adventure Works Cycles

Adventure Works Cycles, la empresa ficticia en la que se basan las bases de datos de ejemplo
AdventureWorks, es una gran empresa de fabricacin multinacional. La empresa fabrica y vende
bicicletas de metal y de metal compuesto en los mercados de Norteamrica, Europa y Asia. Si
bien su sede central de operaciones se encuentra en Bothell, Washington, con 290 empleados, en
toda su base de mercado tiene distribuidos varios equipos regionales de ventas.
En el ao 2000, Adventure Works Cycles compr una pequea planta de fabricacin, Importadores
Neptuno, situada en Mxico. Importadores Neptuno fabrica varios subcomponentes muy
importantes para la lnea de productos de Adventure Works Cycles. Estos subcomponentes se
envan a la sede de Bothell para el ensamblado final del producto. En el ao 2001, Importadores
Neptuno pas a ser el nico fabricante y distribuidor del grupo de productos de bicicletas de paseo.
Tras un ao fiscal con muy buenos resultados, Adventure Works Cycles est intentando ampliar su
cuota de mercado dirigiendo sus ventas a sus mejores clientes, ampliando la disponibilidad de sus
productos en un sitio web externo, y reduciendo los costos de venta a travs de costos de
produccin ms bajos.

Escenario de ventas y marketing


La informacin relacionada con los clientes y las ventas es una parte significativa de la base de
datos de ejemplo AdventureWorks. En este tema se proporcionan detalles acerca de los clientes
representados en la base de datos de ejemplo, un esquema de las tablas principales de clientes y
ventas, y consultas de ejemplo que muestran relaciones existentes entre las tablas.

Tipos de cliente
Como empresa de fabricacin de bicicletas, Adventure Works Cycles tiene dos tipos de cliente:
Individuos: clientes que compran productos de la tienda en lnea de Adventure Works
Cycles.
Tiendas: tiendas de venta al por menor o al por mayor que compran a los representantes de
ventas de Adventure Works Cycles productos para la reventa.
La tabla Customer contiene un registro para cada cliente. La columna CustomerType indica si el
cliente es un individuo (CustomerType= 'I') o una tienda (CustomerType= 'S'). Los datos
especficos de estos tipos de cliente se mantienen en las tablas Individual y Store, respectivamente.

Nmero
Tipo de
Tablas principales de Informacin adicional
cliente
clientes

Individual Person.Contact 18,484 Se han establecido tendencias de los


Sales.Customer datos de ventas y datos
Sales.Individual demogrficos para los escenarios de
Sales.SalesOrderHeader minera de datos.
Sales.SalesOrderDetail Los datos demogrficos (ingresos,
aficiones, nmero de coches, etc.) se
almacenan como datos xml en la
columna Demographics de la
tabla Individual.

Store Person.Contact 701 Se han establecido tendencias para


Sales.Customer los datos de los escenarios de
Sales.Store Analysis Services.
Sales.StoreContact Las tiendas se clasifican por tamao:
Sales.SalesOrderHeader grandes, medianas y pequeas.
Sales.SalesOrderDetail Los datos demogrficos se
almacenan como datos xml.
Los contactos de las tiendas son los
empleados de las tiendas que
interaccionan con los representantes
de ventas de Adventure Works
Cycles. Por ejemplo, el propietario o
el director de compras de la tienda
seran contactos tpicos para el
personal de ventas de Adventure
Works Cycles.

Ejemplos
Puede utilizar las consultas siguientes para ver datos de cliente y para familiarizarse con las
relaciones existentes entre las tablas de clientes.
A. Mostrar clientes individuales (consumidores)
En el ejemplo siguiente se devuelven el nombre y los apellidos de todos los clientes clasificados
como clientes individuales (CustomerType = 'I').
SQL
USE AdventureWorks;
GO
SELECT FirstName, LastName
FROM Person.Contact AS C
JOIN Sales.Individual AS I
ON C.ContactID = I.ContactID
JOIN Sales.Customer AS Cu
ON I.CustomerID = Cu.CustomerID
WHERE Cu.CustomerType = 'I'
ORDER BY LastName, FirstName ;
GO
B. Mostrar datos de direccin de clientes individuales
En el ejemplo siguiente se enumeran los nombres y las direcciones de todos los clientes
individuales.
SQL
USE AdventureWorks;
GO
SELECT I.CustomerID, C.FirstName, C.LastName, A.AddressLine1, A.City,
SP.Name AS State, CR.Name AS CountryRegion
FROM Person.Contact AS C
JOIN Sales.Individual AS I ON C.ContactID = I.ContactID
JOIN Sales.CustomerAddress AS CA ON CA.CustomerID = I.CustomerID
JOIN Person.Address AS A ON A.AddressID = CA.AddressID
JOIN Person.StateProvince SP ON
SP.StateProvinceID = A.StateProvinceID
JOIN Person.CountryRegion CR ON
CR.CountryRegionCode = SP.CountryRegionCode
ORDER BY I.CustomerID ;
GO

C. Mostrar clientes de tipo tienda de venta al por menor y venta al por mayor
En el ejemplo siguiente se devuelve el nombre todos los clientes clasificados como tienda
(CustomerType = 'S').
SQL
USE AdventureWorks;
GO
SELECT Name
FROM Sales.Store AS S
JOIN Sales.Customer AS C
ON S.CustomerID = C.CustomerID
WHERE C.CustomerType = N'S'
ORDER BY Name ;
GO
GO

D. Mostrar contactos de tienda por tienda


En el ejemplo siguiente se devuelve el nombre de todos los clientes tipo tienda y los nombres y
cargos de los empleados de las tiendas autorizados para comprar productos de Adventure Works
Cycles en nombre de su empresa.
SQL
USE AdventureWorks;
GO
SELECT S.Name AS Store, C.FirstName, C.LastName, CT.Name AS Title
FROM Person.Contact AS C
JOIN Sales.StoreContact AS SC ON C.ContactID = SC.ContactID
JOIN Person.ContactType AS CT ON
CT.ContactTypeID = SC.ContactTypeID
JOIN Sales.Store AS S ON S.CustomerID = SC.CustomerID
ORDER BY S.Name ;
GO
E. Mostrar las ventas por tienda
En el ejemplo siguiente se enumeran los clientes tipo tienda y los pedidos de venta asociados.
SQL
USE AdventureWorks;
GO
SELECT Name, SalesOrderNumber, OrderDate, TotalDue
FROM Sales.Store AS S
JOIN Sales.SalesOrderHeader AS SO ON S.CustomerID = SO.CustomerID
ORDER BY Name, OrderDate ;
GO

F. Mostrar tiendas por ubicacin


En el ejemplo siguiente se indica el nombre del cliente tipo tienda, la ciudad, el estado y el pas o
regin.
SQL
USE AdventureWorks;
GO
SELECT S.CustomerID, S.Name AS Store, A.City, SP.Name AS State, CR.Name
AS CountryRegion
FROM Sales.Store AS S
JOIN Sales.CustomerAddress AS CA ON CA.CustomerID = S.CustomerID
JOIN Person.Address AS A ON A.AddressID = CA.AddressID
JOIN Person.StateProvince SP ON
SP.StateProvinceID = A.StateProvinceID
JOIN Person.CountryRegion CR ON
CR.CountryRegionCode = SP.CountryRegionCode
ORDER BY S.CustomerID ;
GO
GO
Escenario de producto
En este tema se proporcionan detalles acerca de la informacin de los productos representada en la
base de datos AdventureWorks de ejemplo, una lista de las tablas relacionadas con los productos y
las consultas de ejemplo que muestran relaciones comunes existentes entre las tablas.

Informacin general sobre el producto


Como empresa de fabricacin de bicicletas, Adventure Works Cycles tiene las cuatro lneas de
producto siguientes:
Bicicletas que se fabrican en la empresa Adventure Works Cycles.
Componentes de bicicleta que son piezas de recambio, como ensamblados de ruedas,
pedales o frenos.
Equipos para bicicleta que se adquiere de los proveedores para revenderlo a los clientes de
Adventure Works Cycles.
Accesorios para bicicleta que se adquieren de los proveedores para revenderlos a los
clientes de Adventure Works Cycles.

Tablas de producto
La tabla siguiente contiene una breve descripcin de los datos que se almacenan en las tablas
relacionadas con el producto.

Incluye este tipo de


Esquema.Tabla Comentario
contenido

Production.BillOfMaterials Lista de todos los La


componentes que se columna ProductAssemblyI
utilizan para fabricar D representa el producto
bicicletas y padre, o principal, y la
subconjuntos de columna ComponentID repre
bicicleta. senta las piezas hijo, o
individuales, que se utilizan
para formar el ensamblado
padre.

Production.Culture Idiomas utilizados en Las descripciones del


las descripciones producto estn disponibles en
traducidas del rabe, chino simplificado,
producto. francs, hebreo, ingls y
tailands.

Production.Location Lista de las


ubicaciones de
Adventure Works
Cycles en las que los
productos y las piezas
se almacenan como
inventario. Por
ejemplo, la pintura se
almacena en la
ubicacin Paint
Storage del almacn y
en el centro de trabajo
de fabricacin, Paint
Shop, donde se pintan
los cuadros de las
bicicletas.

Production.Product Informacin sobre La


cada producto vendido columna FinishedGoodsFlag
por Adventure Works indica si un producto se ha
Cycles o utilizado para vendido. Los productos que
fabricar bicicletas y no se venden son
componentes de componentes de un producto
bicicleta de Adventure que se vende. Por ejemplo,
Works Cycles. una bicicleta se vendera, pero
la plancha de metal utilizada
para crear el cuadro de la
bicicleta, no.

Production.ProductCategory Clasificacin ms
general de los
productos. Por
ejemplo, bicicleta o
accesorio.

Production.ProductCostHistor Costo de los productos


y a lo largo del tiempo.

Production.ProductDescriptio Descripcin completa Las descripciones del


n de los productos en producto se ofrecen en rabe,
distintos idiomas. chino simplificado, francs,
hebreo, ingls y tailands.

Production.ProductInventory Nivel de inventario de


los productos por
ubicacin.
Vea Production.Loca
tion ms arriba.
Production.ProductListPriceH Precio listado de los
istory productos a lo largo
del tiempo.

Production.ProductModel Modelos del producto La


asociados a productos. columna CatalogDescription
Por ejemplo, contiene informacin
Mountain-100 o LL adicional sobre el producto y
Touring Frame. utiliza datos de tipo xml. La
columna Instructions contien
e instrucciones sobre la
fabricacin del producto y
utiliza datos de tipo xml.

ProductModelProductDescrip Referencia cruzada


tionCulture entre modelos de
producto,
descripciones de
producto y los idiomas
a los que se ha
traducido la
descripcin.

Production.ProductPhoto Imgenes de los Las imgenes se almacenan


productos vendidos utilizando datos de
por Adventure Works tipo varbinary(max).
Cycles.

Production.ProductReview Nota de comentario de


los clientes sobre los
productos de
Adventure Works
Cycles.

Production.ProductSubcatego Subcategoras de las


ry categoras de los
productos. Por
ejemplo, Mountain,
Road y Touring son
subcategoras de la
categora Bike.

Ejemplos
Puede utilizar las consultas siguientes para ver datos de los productos y para familiarizarse con las
relaciones existentes entre las tablas de productos.
A. Mostrar productos por categora, subcategora y modelo
En el ejemplo siguiente se enumeran los productos por categora, subcategora y modelo. Los
productos que no estn clasificados no se incluyen. Para incluir todos los productos, cambie la
unin de ProductCategory por una unin completa.
SQL
USE AdventureWorks;
GO
SELECT PC.Name AS Category, PSC.Name AS Subcategory,
PM.Name AS Model, P.Name AS Product
FROM Production.Product AS P
FULL JOIN Production.ProductModel AS PM ON PM.ProductModelID =
P.ProductModelID
FULL JOIN Production.ProductSubcategory AS PSC ON
PSC.ProductSubcategoryID = P.ProductSubcategoryID
JOIN Production.ProductCategory AS PC ON PC.ProductCategoryID =
PSC.ProductCategoryID
ORDER BY PC.Name, PSC.Name ;
GO

B. Mostrar las descripciones de los productos por modelo de producto


Las descripciones de los productos se crean para cada modelo de producto. Cada descripcin est
disponible en varios idiomas. En el ejemplo siguiente se muestra cada descripcin de producto en
cada uno de los idiomas.

Nota

Es posible que algunos idiomas no se muestren correctamente si no se han instalado los


archivos de soporte de idioma para los idiomas complejos de scripts e idiomas asiticos.
Para instalar estos archivos, vea la documentacin de Windows en Opciones regionales
y de idioma.
SQL
USE AdventureWorks;
GO
SELECT PM.ProductModelID, PM.Name AS [Product Model], Description,
PL.CultureID, CL.Name AS Language
FROM Production.ProductModel AS PM
JOIN Production.ProductModelProductDescriptionCulture AS PL
ON PM.ProductModelID = PL.ProductModelID
JOIN Production.Culture AS CL ON CL.CultureID = PL.CultureID
JOIN Production.ProductDescription AS PD
ON PD.ProductDescriptionID = PL.ProductDescriptionID
ORDER BY PM.ProductModelID ;
GO
A. Mostrar una lista de materiales de un solo nivel para un producto padre
En el ejemplo siguiente se muestran todos los componentes que se utilizan para crear un producto
padre especfico: ProductAssemblyID.
SQL
USE AdventureWorks;
GO
WITH Parts(AssemblyID, ComponentID, PerAssemblyQty, EndDate,
ComponentLevel) AS
(
SELECT b.ProductAssemblyID, b.ComponentID, b.PerAssemblyQty,
b.EndDate, 0 AS ComponentLevel
FROM Production.BillOfMaterials AS b
WHERE b.ProductAssemblyID = 800
AND b.EndDate IS NULL
UNION ALL
SELECT bom.ProductAssemblyID, bom.ComponentID, p.PerAssemblyQty,
bom.EndDate, ComponentLevel + 1
FROM Production.BillOfMaterials AS bom
INNER JOIN Parts AS p
ON bom.ProductAssemblyID = p.ComponentID
AND bom.EndDate IS NULL
)
SELECT AssemblyID, ComponentID, Name, PerAssemblyQty, EndDate,
ComponentLevel
FROM Parts AS p
INNER JOIN Production.Product AS pr
ON p.ComponentID = pr.ProductID
ORDER BY ComponentLevel, AssemblyID, ComponentID;
GO
Escenario de compra y proveedor

En Adventure Works Cycles, el departamento de compras adquiere las materias primas y las piezas
que se utilizan para fabricar las bicicletas de Adventure Works Cycles. Adventure Works Cycles
tambin adquiere productos para la reventa, como equipamiento para bicicletas y complementos,
como botellas para el agua y bombas de aire. La informacin sobre estos productos y los
proveedores de los que se obtienen se almacena en la base de datos de ejemplo AdventureWorks.
En este tema se proporcionan detalles acerca de los proveedores representados en la base de datos
de ejemplo, un diagrama de esquema de las tablas principales relacionadas con los proveedores, y
consultas de ejemplo que muestran relaciones comunes existentes entre las tablas.

Tablas de proveedor y compras


La tabla siguiente contiene una breve descripcin de los datos que se almacenan en estas tablas.

Incluye
este tipo
Esquema.Tabla Comentarios
de
contenido

Person.Address Informaci La tabla


n sobre la asociativa VendorAddress correlaciona los
direccin proveedores con sus direcciones.
postal de La tabla Address tambin contiene
todos los informacin sobre direcciones para los
clientes. empleados y los clientes de Adventure Works
Los Cycles.
clientes
pueden
tener ms
de una
direccin.
Por
ejemplo,
un cliente
puede
tener una
direccin
de
facturacin
y otra
direccin
para los
envos.
Person.Contact Nombre de La tabla
los asociativa VendorContact correlaciona los
empleados contactos con los proveedores.
del La columna AdditionalContactInfo contiene
proveedor datos tales como nmeros de telfono
a quienes adicionales (nmero de telfono mvil, fax,
los agentes etc.) especficos del contacto. Los datos de esta
de columna son de tipo xml. Para obtener ms
compras informacin, consulte Columna XML
Adventure Contact.AdditionalContactInfo.
Works
Cycles
solicitan
productos.
Un
proveedor
puede
tener
varios
contactos.
Por
ejemplo,
un agente
de ventas y
un director
de ventas.
El agente
de
compras
de
Adventure
Works
Cycles
puede
tener el
agente de
ventas
como
contacto
de cliente
principal y
el director
de ventas
como el
contacto
secundario
.

Production.ProductVend Correlacio
or na los
proveedore
s con los
productos
que
suministra
n.
Un mismo
producto
puede ser
suministra
do por ms
de un
proveedor,
y un
proveedor
puede
suministrar
ms de un
producto.

Purchasing.PurchaseOrd Detalles
erDetail del pedido
de compra,
como los
productos
pedidos, la
cantidad y
el precio
unitario.

Purchasing.PurchaseOrd Informaci Las


erHeader n de tablas PurchaseOrderHeader y PurchaseOr
resumen derDetail crean conjuntamente una relacin de
del pedido tipo principal-detalle.
de compra,
como el
importe
total
debido, la
fecha del
pedido y el
estado del
pedido.

Purchasing.ShipMethod Tabla de La columna ShipMethodID es la clave


bsqueda principal de la tabla PurchaseOrderHeader.
que se
utiliza para
mantener
mtodos
estndar
de envo
de
productos.

Purchasing.Vendor Detalles
sobre los
proveedore
s, como el
nombre
del
proveedor
y el
nmero de
cuenta.

Purchasing.VendorAddre Vincula Las direcciones se clasifican por tipo, como


ss los clientes direccin de facturacin, domicilio particular,
con la direccin de envo, etc. La
informaci columna AddressTypeID se asigna a la
n de tabla AddressType.
direccione
s en la
tabla Addr
ess.

Purchasing.VendorConta Informaci Es una tabla asociativa. Consulte las


ct n sobre la tablas Contact y Vendor.
direccin
postal de
todos los
clientes.
Los
clientes
pueden
tener ms
de una
direccin.
Por
ejemplo,
un cliente
puede
tener una
direccin
de
facturacin
y otra
direccin
para los
envos.

Ejemplos
Puede utilizar las consultas siguientes para ver datos de compra y proveedor y para familiarizarse
con las relaciones existentes entre las tablas de compra y proveedor.
A. Mostrar proveedores por ubicacin
En el ejemplo siguiente se enumeran los proveedores y sus direcciones.
SQL
USE AdventureWorks;
GO
SELECT V.VendorID, V.Name AS Vendor, A.AddressLine1, A.AddressLine2,
A.City, SP.Name AS State, CR.Name AS Country
FROM Purchasing.Vendor AS V
JOIN Purchasing.VendorAddress AS VA ON VA.VendorID = V.VendorID
JOIN Person.Address AS A on A.AddressID = VA.AddressID
JOIN Person.StateProvince AS SP on SP.StateProvinceID =
A.StateProvinceID
JOIN Person.CountryRegion AS CR ON CR.CountryRegionCode =
SP.CountryRegionCode
GROUP BY V.VendorID, V.Name, A.AddressLine1, A.AddressLine2, A.City,
SP.Name, CR.Name
ORDER BY V.VendorID;
GO

B. Mostrar productos suministrados por los proveedores


En el ejemplo siguiente se enumeran los productos que los proveedores suministran a Adventure
Works Cycles.
SQL
USE AdventureWorks;
GO
SELECT P.ProductNumber, P.Name AS Product, V.Name AS Vendor,
PV.LastReceiptCost
FROM Production.Product AS P
JOIN Purchasing.ProductVendor AS PV ON P.ProductID = PV.ProductID
JOIN Purchasing.Vendor AS V ON V.VendorID = PV.VendorID
ORDER BY P.Name ;
GO

C. Mostrar contactos de proveedor por proveedor


En el ejemplo siguiente se enumeran los contactos de los proveedores. Estos contactos son
empleados del proveedor con los que los empleados del departamento de compras de Adventure
Works Cycles interaccionan para solicitar piezas y productos.
SQL
GO
SELECT V.Name as Vendor, C.FirstName, C.LastName, CT.Name AS Title
FROM Person.Contact AS C
JOIN Purchasing.VendorContact VC ON C.ContactID = VC.ContactID
JOIN Person.ContactType CT ON CT.ContactTypeID = VC.ContactTypeID
JOIN Purchasing.Vendor V ON V.VendorID = VC.VendorID
ORDER BY V.Name;
GO

D. Mostrar compras por proveedor


En el ejemplo siguiente se muestran los proveedores y los pedidos de compra asociados.
SQL
USE AdventureWorks;
GO
SELECT V.Name AS Vendor, SUM(PH.TotalDue)AS [Total Purchase],
AVG(PH.TotalDue)AS [Average Purchase], MIN(PH.TotalDue)
AS [Minimum Purchase], MAX(PH.TotalDue)AS [Maximum Purchase]
FROM Purchasing.Vendor AS V
JOIN Purchasing.PurchaseOrderHeader AS PH ON V.VendorID = PH.VendorID
GROUP BY V.Name
ORDER BY V.Name;
GO

Escenario de fabricacin
En este tema se proporcionan detalles acerca de la informacin de fabricacin de Adventure Works
Cycles representada en la base de datos AdventureWorks de ejemplo, una lista de las tablas
relacionadas con la fabricacin y consultas de ejemplo que muestran relaciones comunes existentes
entre las tablas.

Informacin general sobre fabricacin


En la base de datos AdventureWorks de ejemplo, se proporcionan tablas que admiten las siguientes
reas tpicas de fabricacin:
Procesos de fabricacin:
o Lista de materiales: enumera los productos que se utilizan en otro producto o que
otro producto contiene.
o Pedidos de trabajo: pedidos de fabricacin por centro de trabajo.
o Ubicaciones: define las reas principales de fabricacin e inventario, como
fabricacin de cuadros, pintura, subconjunto, etc.
o Instrucciones de fabricacin y ensamblado de productos por centro de trabajo.
Inventario de productos: ubicacin fsica de un producto en el almacn o el rea de
fabricacin, y cantidad disponible en dicha rea.
Documentacin de ingeniera: especificaciones tcnicas y documentacin de
mantenimiento para bicicletas o componentes de las bicicletas.

Tablas de fabricacin
La tabla siguiente contiene una breve descripcin de los datos que se almacenan en las tablas de
fabricacin.

Incluye este tipo de


Esquema.Tabla Comentario
contenido

Production.BillOfMater Lista de todos los Existe una relacin intrnseca


ials componentes que se recursiva en la estructura de la
utilizan para fabricar lista de materiales que indica la
bicicletas y subconjuntos relacin entre un producto
de bicicleta. padre y los componentes que
forman el producto. Por
ejemplo, si el producto padre es
una bicicleta, el componente de
primer nivel puede ser el
ensamblado de la rueda. El
ensamblado de la rueda tiene
sus propios componentes, como
los reflectores, la llanta, los
radios, el neumtico y la
cmara de aire.
La
columna ProductAssemblyID
representa el producto padre, o
principal, y la
columna ComponentID repres
enta las piezas hijo, o
individuales, que se utilizan
para formar el ensamblado
padre.
La columna BOM_Level indica
el nivel del ComponentID en
relacin con
el ProductAssemblyID. En el
ejemplo anterior, el ensamblado
de la rueda tendra un
nivel BOM_Levell de1, los
componentes de la rueda
tendran un
nivel BOM_Levelde 2, etc.

Production.Document Especificaciones de La
ingeniera y otros columna DocumentSummary
documentos tcnicos. utiliza el tipo de
datos varchar(max). La
columna Document utiliza el
tipo de datos varbinary(max).

Production.Illustration Ilustraciones de fabricacin Las ilustraciones se representan


de las bicicletas. en las instrucciones de
fabricacin que se encuentran
en la tabla ProductModel. En
esta columna se utilizan datos
de tipo xml.

Production.Location Lista de reas de inventario


y fabricacin de Adventure
Works Cycles en las que
los productos y las piezas
se almacenan como
inventario o como
finalizados. Por ejemplo, la
pintura se almacena en la
ubicacin Paint Storage del
almacn y en el centro de
trabajo de fabricacin,
Paint Shop, donde se pintan
los cuadros de las
bicicletas.

Production.Product Informacin sobre cada La


producto vendido por columna FinishedGoodsFlag i
Adventure Works Cycles o ndica si un producto se ha
utilizado para fabricar vendido. Los productos que no
bicicletas y componentes se venden son componentes de
de bicicleta de Adventure un producto que se vende. Por
Works Cycles. ejemplo, una bicicleta se
vendera, pero la plancha de
metal utilizada para crear el
cuadro de la bicicleta, no.
Production.ProductInve Nivel de inventario de los
ntory productos por ubicacin.
Consulte Production.Loca
tion ms arriba.

Production.ProductMod Modelos del producto La


el asociados a productos. Por columna CatalogDescription c
ejemplo, Mountain-100 o ontiene informacin adicional
LL Touring Frame. sobre el producto y utiliza datos
de tipo xml. La
columna Instructions contiene
instrucciones sobre la
fabricacin del producto y
utiliza datos de tipo xml.

Production.ScrapReaso Lista de motivos comunes La


n sobre el porqu del rechazo tabla WorkOrderRouting reali
de las bicicletas o piezas de za el seguimiento de la cantidad
bicicleta durante el proceso descartada y el motivo por el
de fabricacin. Por que se ha descartado el
ejemplo, en el centro de producto.
trabajo Paint se utiliza el En funcin de la gravedad del
motivo 'Paint failed' para problema, el producto debe
rechazar un cuadro de repararse o sustituirse antes de
bicicleta en el que la poder pasar al siguiente entro
pintura no se ha endurecido de trabajo.
correctamente.

Production.WorkOrder Define los productos y la


cantidad que debe
fabricarse para satisfacer
las ventas actuales y las
previstas.

Production.WorkOrder Detalles de cada pedido de


Routing trabajo. Incluye la
secuencia de centros de
trabajo por los que pasa el
producto durante el proceso
de fabricacin o de
ensamblado. Por ejemplo,
los manillares de las
bicicletas se fabrican en el
centro de trabajo Frame
Forming. Luego pasan al
centro de trabajo Frame
Welding para realizar
operaciones adicionales y,
posteriormente, pasan al
centro de trabajo
Subassembly, donde se
montan al cuadro de la
bicicleta.

Ejemplos
Puede utilizar las consultas siguientes para ver datos de fabricacin y del producto, y para
familiarizarse con las relaciones existentes entre las tablas de fabricacin.
A. Mostrar una lista de materiales de varios niveles para un producto padre
En el ejemplo siguiente se muestran todos los componentes que se utilizan para crear un producto
padre especfico: ProductAssemblyID.
SQL
USE AdventureWorks;
GO
WITH Parts(AssemblyID, ComponentID, PerAssemblyQty, EndDate,
ComponentLevel) AS
(
SELECT b.ProductAssemblyID, b.ComponentID, b.PerAssemblyQty,
b.EndDate, 0 AS ComponentLevel
FROM Production.BillOfMaterials AS b
WHERE b.ProductAssemblyID = 800
AND b.EndDate IS NULL
UNION ALL
SELECT bom.ProductAssemblyID, bom.ComponentID, p.PerAssemblyQty,
bom.EndDate, ComponentLevel + 1
FROM Production.BillOfMaterials AS bom
INNER JOIN Parts AS p
ON bom.ProductAssemblyID = p.ComponentID
AND bom.EndDate IS NULL
)
SELECT AssemblyID, ComponentID, Name, PerAssemblyQty, EndDate,
ComponentLevel
FROM Parts AS p
INNER JOIN Production.Product AS pr
ON p.ComponentID = pr.ProductID
ORDER BY ComponentLevel, AssemblyID, ComponentID;
GO

B. Mostrar el inventario de productos


En el ejemplo siguiente se indica la cantidad que hay disponible para cada producto por ubicacin
en el inventario. Los productos pueden hallarse en varias ubicaciones.
SQL
USE AdventureWorks;
GO
SELECT P.Name AS Product, L.Name AS [Inventory Location],
SUM(PI.Quantity)AS [Qty Available]
FROM Production.Product AS P
JOIN Production.ProductInventory AS PI ON P.ProductID = PI.ProductID
JOIN Production.Location AS L ON PI.LocationID = L.LocationID
GROUP BY P.Name, L.Name
ORDER BY P.Name ;
GO

C. Mostrar los pedidos de trabajo por producto


En el ejemplo siguiente se enumeran todos los pedidos de trabajo para los productos de las
subcategoras Mountain Bike (1), Road Bike (2) y Touring Bike (3).
SQL
USE AdventureWorks;
GO
SELECT WorkOrderID, P.Name AS Product, OrderQty, DueDate
FROM Production.WorkOrder W
JOIN Production.Product P ON W.ProductID = P.ProductID
WHERE P.ProductSubcategoryID IN (1, 2, 3)
ORDER BY P.Name, DueDate ;
GO

S-ar putea să vă placă și