abc de sql

Páginas: 3 (562 palabras) Publicado: 20 de agosto de 2014
/* Función que retorna los indicadores financieros de un convenio */
CREATE FUNCTION [ddyon].[fn_Inf_Formulado_Financiero] ( @FechaInicial date, @FechaFinal date, @Filtro int )
RETURNS@Formulacion TABLE (
Tipo tinyint,
[Punto Dispensacion] nvarchar(150),
[No Formulas] int,
[Total Formulacion] decimal(15,2) default(0),
[No Formulas Auditoria 1] int default(0),
[Total Auditoria1] decimal(15,2) default(0),
[No Formulas Auditoria 2] int default(0),
[Total Auditoria 2] decimal(15,2) default(0),
[No Formulas con Factura] int,
[Total Facturado] decimal(15,2) default(0),[Pendiente Por Facturar] decimal(15,2) default(0)
)
AS
BEGIN
DECLARE @tmpFormulas TABLE (
idFila int identity(1,1),
Punto nvarchar(150),
Formulas int,
Total float default(0),Aud1 int,
Aud1T float default(0),
Aud2 int,
Aud2T float default(0),
Ffact int,
Tfact float default(0),
Pfact float default(0)
)
IF @Filtro = 0
BEGIN
INSERT INTO@tmpFormulas(
Punto,
Formulas,
Total,
Aud1,
Aud1T,
Aud2,
Aud2T,
Ffact,
Tfact,
Pfact
)
SELECT
b.Descripcion AS Punto,
COUNT(DISTINCT f.Consecutivo) ASFormulas,
SUM(f.ValorFormula) AS Total, COUNT(DISTINCT f.FchAuditoria) AS Aud1,
SUM(CASE LEN(ISNULL(UsrAuditoria, '')) WHEN 0 THEN 0 ELSE ValorFormula END) AS ValorAud1,COUNT(DISTINCT f.FchAuditoria2) AS Aud2,
SUM(CASE LEN(ISNULL(UsrAuditoria2, '')) WHEN 0 THEN 0 ELSE ValorFormula END) AS ValorAud2,
COUNT(DISTINCT fd.IdCadiFormula) AS FfactFROM genFormula AS f INNER JOIN
T_ins_Bodega AS b ON f.IDCadi = b.Bodega LEFT OUTER JOIN
(SELECT fd.IdCadiFormula, fd.IdFormula
FROM genFacturaDetalle AS fd INNER JOINgenFactura AS f ON fd.Prefijo = f.Prefijo AND fd.IdFactura = f.Consecutivo
WHERE (f.Anulado = 0)
GROUP BY fd.IdCadiFormula, fd.IdFormula
) AS fd ON f.IDCadi = fd.IdCadiFormula...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • abc abc abc
  • Abc Abc Abc
  • El abc del abc
  • Que es sql
  • que es sql
  • ABC
  • Abc Abc
  • Abc de mi

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS