
Ayuda con procedimiento almacenado
Publicado por Martin Sequeira (4 intervenciones) el 26/01/2018 19:20:41
Hola saludos a todos, tengo el siguiente procedimiento alamacenado que lo utilizo para imprimir ticket de ventas pero al factura se me dilta mucho quiero saber si hay una mejor manera de mejorarlo, gracias de antemano.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
USE [BDADMIN]
GO
/****** Object: StoredProcedure [dbo].[Sp_RptTicket] Script Date: 26/01/2018 12:19:13 p.m. ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- Batch submitted through debugger: SQLQuery4.sql|7|0|C:\Users\ADMINI~1\AppData\Local\Temp\~vs44AE.sql
ALTER PROCEDURE [dbo].[Sp_RptTicket]
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
SELECT
TOP (100) PERCENT dbo.Tarjeta_Movimientos.CODIGOEMPRESA, dbo.Tarjeta_Movimientos.CODIGOBODEGA, dbo.Tarjeta_Movimientos.CODIGOSERIE,
dbo.Tarjeta_Movimientos.NODOCUMENTO, dbo.Tarjeta_Movimientos.FECHA, dbo.Tarjeta_Movimientos.TIP_DOC, dbo.Tipos_Documentos.ABREVIATURA,
dbo.Tarjeta_Movimientos.TASACAMBIO, dbo.Tarjeta_Movimientos.REFERENCIA AS REFERENCIA2,
CASE dbo.Tarjeta_Movimientos.TIP_MOV WHEN 3 THEN dbo.Tarjeta_Movimientos.NombreCliente WHEN 9 THEN dbo.Tarjeta_Movimientos.NombreCliente ELSE dbo.Tarjeta_Movimientos.REFERENCIA
END AS REFERENCIA, dbo.Tarjeta_Movimientos.CONCEPTO, dbo.Detalle_Tarjeta_Movimientos.CODIGOPRODUCTO, dbo.Producto.NOMBREPRODUCTO,
ISNULL(CASE SIGN(dbo.Detalle_Tarjeta_Movimientos.CANTIDAD) WHEN 1 THEN dbo.Detalle_Tarjeta_Movimientos.CANTIDAD END, 0) AS ENTRADAS,
ISNULL(CASE SIGN(dbo.Detalle_Tarjeta_Movimientos.CANTIDAD) WHEN - 1 THEN - dbo.Detalle_Tarjeta_Movimientos.CANTIDAD END, 0) AS SALIDAS,
ISNULL(CASE SIGN(dbo.Detalle_Tarjeta_Movimientos.CANTIDAD)
WHEN 1 THEN dbo.Detalle_Tarjeta_Movimientos.CANTIDAD * dbo.Detalle_Tarjeta_Movimientos.COSTOPROMEDIOC END, 0) AS TOTALENTRADAS,
ISNULL(CASE SIGN(dbo.Detalle_Tarjeta_Movimientos.CANTIDAD)
WHEN - 1 THEN - dbo.Detalle_Tarjeta_Movimientos.CANTIDAD * dbo.Detalle_Tarjeta_Movimientos.COSTOPROMEDIOC END, 0) AS TOTALSALIDAS,
dbo.Detalle_Tarjeta_Movimientos.COSTOPROMEDIOC, dbo.Detalle_Tarjeta_Movimientos.TOTAL, dbo.Producto.STOCKMINIMOPRODUCTO,
dbo.Producto.STOCKMAXIMOPRODUCTO, dbo.Producto.UBICACIONPRODUCTO1, dbo.Producto.UBICACIONPRODUCTO2,
ABS(dbo.Detalle_Tarjeta_Movimientos.CANTIDAD) AS CANTIDAD, dbo.Tarjeta_Movimientos.IDNUM, dbo.Detalle_Tarjeta_Movimientos.NFILA,
dbo.Tarjeta_Movimientos.CODIGOCLIENTE, dbo.Tarjeta_Movimientos.NOMBRECLIENTE, dbo.Tarjeta_Movimientos.PLAZO, dbo.Tarjeta_Movimientos.TOTALFACTURA,
dbo.Tarjeta_Movimientos.TIP_MOV, dbo.Detalle_Tarjeta_Movimientos.DESCUENTOP, dbo.Detalle_Tarjeta_Movimientos.DESCUENTO,
dbo.Detalle_Tarjeta_Movimientos.PRECIONETO, dbo.Detalle_Tarjeta_Movimientos.SUBTOTAL, dbo.Detalle_Tarjeta_Movimientos.IVA,
dbo.Detalle_Tarjeta_Movimientos.PRECIO, dbo.Detalle_Tarjeta_Movimientos.PRECIO_REAL, dbo.Tarjeta_Movimientos.ANULAR, dbo.Empresa.NOMBREEMPRESA,
dbo.Empresa.DIRECCIONEMPRESA, dbo.Empresa.TELEFONOEMPRESA, dbo.Empresa.CIUDADEMPRESA, dbo.Empresa.RUCEMPRESA, dbo.Empresa.DGIEMPRESA,
dbo.Vendedor.NOMBREVENDEDOR, UPPER(dbo.Tipos_Documentos.NOMBREABREVIATURA) AS TIPOPAGO, dbo.FnTOTALPAGADO(dbo.Tarjeta_Movimientos.IDNUM) AS TOTALPAGADO,
dbo.FnCambio(dbo.Tarjeta_Movimientos.IDNUM) AS CAMBIO
FROM dbo.Tarjeta_Movimientos INNER JOIN
dbo.Detalle_Tarjeta_Movimientos ON dbo.Tarjeta_Movimientos.IDNUM = dbo.Detalle_Tarjeta_Movimientos.IDNUM INNER JOIN
dbo.Tipos_Documentos ON dbo.Tarjeta_Movimientos.TIP_DOC = dbo.Tipos_Documentos.TIP_DOC INNER JOIN
dbo.Producto ON dbo.Detalle_Tarjeta_Movimientos.CODIGOPRODUCTO = dbo.Producto.CODIGOPRODUCTO INNER JOIN
dbo.Empresa ON dbo.Tarjeta_Movimientos.CODIGOEMPRESA = dbo.Empresa.CODIGOEMPRESA INNER JOIN
dbo.Vendedor ON dbo.Tarjeta_Movimientos.CODIGOVENDEDOR = dbo.Vendedor.CODIGOVENDEDOR
END
Valora esta pregunta


0