Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 23-08-2008
jmedina jmedina is offline
Miembro
 
Registrado: jun 2004
Posts: 92
Poder: 20
jmedina Va por buen camino
Smile Usar un Dato calculado

Buen dia Foro:

Gracias por la ayuda del otro hilo en ASP, ahora espero me puedas refrescar la memoria ya que estoy medio perdido y no me acuerdo tengo un query en la cual algunos campos sumo, multiplico, resto etc, pero pues para hacer algunas operaciones tengo que poner todo el trozo de codigo y multiplicarlo por algo o sumarle otro campo dela misma tabla o trablas, entonces lo que quiero es usar el resultado de esa operacion y hacer otra operacion con ese dato el codigo es:


Código SQL [-]SELECT T0.DOCDATE, T0.DocNum as 'No Doc', T4.CardCode As 'Codigo', T4.CardName As 'Cliente', T5.slpname As ' Emp. Ventas', T3.ItmsGrpNam, T1.ItemCode, t2.ItemName, T1.Quantity, T1.Price , T1.LineTotal as 'Total Linea',
T4.U_Publicidad as '%Publicidad',(T1.LineTotal*( T4.U_Publicidad/100)) As 'Valor Publicidad',
T4.U_Adpublicidad As '%Publicidad Adicional',(T1.LineTotal*( T4.U_Adpublicidad/100)) As 'Valor publicidad Adicional',
T4.U_ProteccionPrecio as '%Proteccion de precios',(T1.LineTotal*( T4.U_Proteccionprecio/100)) As 'Valor Proteccion de Precios',
T4.U_Rebajasxvol As '%Rebajas por Volumen',(T1.LineTotal*( T4.U_Rebajasxvol/100)) As 'Valor Rebajas por Volumen',
T4.U_Distribucion As '%Distribucion',(T1.LineTotal*( T4.U_Distribucion/100)) As 'Valor Distribucion',
T4.U_Distribucionad As '%Distribucion Adicional',(T1.LineTotal*( T4.U_Distribucionad/100)) As 'Valor Distribucion Adicional',
(T4.U_Publicidad + T4.U_AdPublicidad + T4.U_ProteccionPrecio + T4.U_Rebajasxvol + T4.U_Distribucion + T4.U_Distribucionad) As 'Σ % Descuento Comercial',
(((T4.U_Publicidad + T4.U_AdPublicidad + T4.U_ProteccionPrecio + T4.U_Rebajasxvol + T4.U_Distribucion + T4.U_Distribucionad)/100)*T1.LineTotal) As 'Total Descuento',
(T1.LineTotal-(((T4.U_Publicidad + T4.U_AdPublicidad + T4.U_ProteccionPrecio + T4.U_Rebajasxvol + T4.U_Distribucion + T4.U_Distribucionad)/100)*T1.LineTotal)) As 'Total Neto',
T1.GrossBuyPr as 'Costo Unitario', (T1.GrossBuyPr*T1.Quantity) as 'CostoVentas',
(T1.LineTotal-(T1.GrossBuyPr*T1.Quantity)-(((T4.U_Publicidad + T4.U_AdPublicidad + T4.U_ProteccionPrecio + T4.U_Rebajasxvol + T4.U_Distribucion + T4.U_Distribucionad)/100)*T1.LineTotal)) as 'Utilidad',
((T1.LineTotal-(T1.GrossBuyPr*T1.Quantity)-(((T4.U_Publicidad + T4.U_AdPublicidad + T4.U_ProteccionPrecio + T4.U_Rebajasxvol + T4.U_Distribucion + T4.U_Distribucionad)/100)*T1.LineTotal))/(T1.LineTotal-(((T4.U_Publicidad + T4.U_AdPublicidad + T4.U_ProteccionPrecio + T4.U_Rebajasxvol + T4.U_Distribucion + T4.U_Distribucionad)/100)*T1.LineTotal)))*100 As '% Utilidad'
FROM OINV T0 INNER JOIN INV1 T1 ON T0.DOCENTRY = T1.DOCENTRY
INNER JOIN OITM T2 ON T1.ItemCode = T2.ItemCode
INNER JOIN OITB T3 ON T2.ItmsGrpCod = T3.ItmsGrpCod
INNER JOIN OCRD T4 ON T0.CardCode = T4.CardCode
INNER JOIN OSLP T5 ON T0.Slpcode = T5.Slpcode
where T0.DocDate >= [%0] AND T0.DocDate <=[%1] and T1.LineTotal<> 0




Si se Dan Cuenta codigo y en algunas operaciones repito la sentencia de ese calculo para hacer otra operacion, entonces yo solo quiero usar el resultado pero no me reconoce el dato , alguien podra decirme como hacerle se que es facil pero no me acuerdo o estan mi cables un poco quemados
Espero me puedan ayudar

Gracias anticipadas a los foristas

JCMG
Responder Con Cita
  #2  
Antiguo 25-08-2008
Avatar de tcp_ip_es
tcp_ip_es tcp_ip_es is offline
No confirmado
 
Registrado: ago 2003
Ubicación: Madrid
Posts: 635
Poder: 0
tcp_ip_es Va por buen camino
fijate que a mi me pasó lo mismo en su día cuando pase de access a MySQL, y en access si me dejaba llamar a un campo calculado en la misma consulta, pero en MySQL no asi que no me quedo otra que hacer lo que tu, o trabajar con vistas que me traían ya los calculos principales hechos y realizar operaciones con ellos.... me uno a jmedina para ver si existe alguna forma menos tediosa de realizar este tema....
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Que tipo de dato usar PHP y MYSQL richy08 PHP 3 16-10-2007 16:15:30
Como mostrar en DBGrid un dato calculado? Forest Tablas planas 1 28-06-2007 23:01:23
Tipo de dato a usar... marceloalegre Firebird e Interbase 7 03-05-2006 00:09:17
Que base de dato usar??? JBMDGZ Conexión con bases de datos 9 02-12-2005 22:40:49
Recomendación Tipo de dato a usar lucasarts_18 MS SQL Server 2 23-08-2005 23:17:34


La franja horaria es GMT +2. Ahora son las 08:54:44.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi