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 25-10-2011
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 2.010
Poder: 20
oscarac Va por buen camino
Proceso para subvencionar productos (Solo algunos)

Buenas noches
tengo un problema que me tiene pensando hace rato

tengo 2 tablas (las clasicas cabecera y detalle)

Cita:
cabecera
Origen, Documento, Fecha, Trabajador
Cita:
Detalle
Origen, Documento, Codigo, Cantidad, Precio, Subvencion, Trabajador
aparte de eso tengo una tabla con productos, los cuales solo algunos son Subvencionados
el sistema controla los consumos en el restaurante de los trabajadores, de los cuales solo 1 plato puede ser subvencionado, los demas platos del dia, son asumidos al 100% por el trabajador, asimismo los productos que no son subvencionados son asumidos al 100% por los trabajadores

Ejemplo
Cita:
Cabecera
V01, 001-0000234, 01/10/2011, PE101010
V01, 001-0000235, 01/10/2011, PE101020
V01, 001-0000236, 01/10/2011, PE101030
V01, 001-0000237, 01/10/2011, PE101010
V01, 001-0000238, 01/10/2011, PE101010
Detalle
Cita:
V01, 001-0000234, 00001, 1, 10, 0, 0
V01, 001-0000235, 00001, 1, 10, 0, 0
V01, 001-0000236, 00001, 1, 10, 0, 0
V01, 001-0000237, 00001, 1, 10, 0, 0
V01, 001-0000238, 00004, 1, 20, 0, 0
entonces la informacion despues del proceso, terminaria asi
Detalle
Cita:
V01, 001-0000234, 00001, 1, 10, 10, 0
V01, 001-0000235, 00001, 1, 10, 0, 0
V01, 001-0000236, 00001, 1, 10, 0, 0
V01, 001-0000237, 00001, 1, 10, 0, 10
V01, 001-0000238, 00001, 1, 10, 0, 20
Noten que el ticket Numero 001-0000234, 001-000237, 001-0000238 corresponden a la misma persona, por dia, los trabajadores pueden tener varios consumos, ya sea de productos subvencionados o de productos que asumiran al 100%

se entendio ???
__________________
Dulce Regalo que Satanas manda para mi.....
Responder Con Cita
  #2  
Antiguo 25-10-2011
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 2.010
Poder: 20
oscarac Va por buen camino
cometi un error en el detalle
para que se entienda mejor...el ticket numero 001-0000238 el codigo no es 00001 sino 00004
__________________
Dulce Regalo que Satanas manda para mi.....
Responder Con Cita
  #3  
Antiguo 26-10-2011
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 2.010
Poder: 20
oscarac Va por buen camino
estaba pensando en una nueva estrategia para solucionar mi problema y es la de identificar al menos el primer ticket de consumo que contenga algun plato subvencionado, entonces, los demas tickets de consumo del dia los asumiria el trabajador y solo el ticket identificado, lo asume la empresa

tengo esta consulta que me gustaria mejorar, me saca los consumos dentro de un rango de fechas, pero no se como hacer para que si en 1 dia hay 2 consumos de productos subvencionados... solo me jale uno de ellos

Código SQL [-]
 
Select c.F_DOC, c.AUX, t.Empresa, t.descl, t.otro, c.tdc, c.doc, d.KOD, a.check
from (((tblconsumod d
Left join tblconsumoc c on c.tdc = d.tdc and c.doc = d.doc)
Left join tbltrabajador t on c.aux = t.kod)
Left join tblArticulo a on d.kod = a.kod)
where c.f_DOC between #01/06/2011# and #30/06/2011# and c.TipoConsumo = 'K' and a.check = 'x'
Group by c.F_DOC, c.AUX, t.Empresa, t.descl, t.otro, c.tdc, c.doc, d.KOD, a.check
order by c.aux, c.f_doc

El campo Check.. es un campo en la tabla de articulos, el cual identifica al producto subvencionado
__________________
Dulce Regalo que Satanas manda para mi.....
Responder Con Cita
  #4  
Antiguo 28-10-2011
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 2.010
Poder: 20
oscarac Va por buen camino
como puedo saber el numero de registro (RECNO) de una tabla?
para poder capturarlo en un query

algo asi..

Código SQL [-]
 
Select T1.campos.., T2..campos.., t3.NUMERODEREGISTRO from.. T1.. t2,.. t3

001, XXXX, 2456
001, YYYY, 1500
__________________
Dulce Regalo que Satanas manda para mi.....

Última edición por oscarac fecha: 28-10-2011 a las 23:24:57.
Responder Con Cita
  #5  
Antiguo 29-10-2011
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 2.010
Poder: 20
oscarac Va por buen camino
aun sigo sin resolver esto
nueva pregunta...

si tengo varios registros de un mismo trabajador y de un mismo dia... como puedo hacer para "jalar" solo con 1 en un query?

ejemplo


Cita:
F_DOC AUX Empresa descl otro tdc doc check
------------------------------------------------------ ---------- ------- -----------------------------------------
2011-06-13 10224 1 ZEGARRA BERMUDEZ JAMES SANTIAGO 201519 V01 001-0000988 x
2011-06-13 10224 1 ZEGARRA BERMUDEZ JAMES SANTIAGO 201519 V02 002-0000837 x
2011-06-13 10224 1 ZEGARRA BERMUDEZ JAMES SANTIAGO 201519 V04 004-0000001 x
2011-06-14 10224 1 ZEGARRA BERMUDEZ JAMES SANTIAGO 201519 V04 004-0000304 x
2011-06-15 10224 1 ZEGARRA BERMUDEZ JAMES SANTIAGO 201519 V02 002-0002253 x
2011-06-17 10224 1 ZEGARRA BERMUDEZ JAMES SANTIAGO 201519 V03 003-0003842 x
2011-06-18 10224 1 ZEGARRA BERMUDEZ JAMES SANTIAGO 201519 V04 004-0000728 x
2011-06-21 10224 1 ZEGARRA BERMUDEZ JAMES SANTIAGO 201519 V02 002-0006881 x
2011-06-24 10224 1 ZEGARRA BERMUDEZ JAMES SANTIAGO 201519 V03 003-0008491 x
2011-06-14 10426 1 TANTALEAN BUENO JUAN LUIS 100943 V02 002-0000893 x
2011-06-15 10426 1 TANTALEAN BUENO JUAN LUIS 100943 V02 002-0001849 x
2011-06-15 10426 1 TANTALEAN BUENO JUAN LUIS 100943 V02 002-0002591 x
2011-06-16 10426 1 TANTALEAN BUENO JUAN LUIS 100943 V02 002-0002906 x
Cita:
F_DOC AUX Empresa descl otro tdc doc check
------------------------------------------------------ ---------- ------- -----------------------------------------
2011-06-13 10224 1 ZEGARRA BERMUDEZ JAMES SANTIAGO 201519 V01 001-0000988 x
2011-06-14 10224 1 ZEGARRA BERMUDEZ JAMES SANTIAGO 201519 V04 004-0000304 x
2011-06-15 10224 1 ZEGARRA BERMUDEZ JAMES SANTIAGO 201519 V02 002-0002253 x
2011-06-17 10224 1 ZEGARRA BERMUDEZ JAMES SANTIAGO 201519 V03 003-0003842 x
2011-06-18 10224 1 ZEGARRA BERMUDEZ JAMES SANTIAGO 201519 V04 004-0000728 x
2011-06-21 10224 1 ZEGARRA BERMUDEZ JAMES SANTIAGO 201519 V02 002-0006881 x
2011-06-24 10224 1 ZEGARRA BERMUDEZ JAMES SANTIAGO 201519 V03 003-0008491 x
2011-06-14 10426 1 TANTALEAN BUENO JUAN LUIS 100943 V02 002-0000893 x
2011-06-15 10426 1 TANTALEAN BUENO JUAN LUIS 100943 V02 002-0001849 x
2011-06-16 10426 1 TANTALEAN BUENO JUAN LUIS 100943 V02 002-0002906 x
notese que el dia 13/06/ el trabajador 10224 tenia 3 registros y el dia 15/06 el trabajador 10426 tenia 2

se puede hacer algo como esto?
__________________
Dulce Regalo que Satanas manda para mi.....
Responder Con Cita
  #6  
Antiguo 08-11-2011
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 2.010
Poder: 20
oscarac Va por buen camino
estoy replanteando de nuevo esto... le sigo dando vueltas y nada
__________________
Dulce Regalo que Satanas manda para mi.....
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
Consulta de No coincidentes para productos no vendidos ctronx MySQL 6 04-04-2017 01:45:36
Buscador de Productos Para Pantalla Tactil GlauK Varios 1 24-07-2008 17:38:19
Editar sólo algunos campos de un dbgrip. cesar_gta86 Varios 1 30-11-2007 18:27:51
DBGrid: Solo algunos caracteres en columnas TrUnkS OOP 1 31-05-2007 08:57:46
imprimir solo algunos campos Choclito Impresión 8 14-06-2006 09:17:34


La franja horaria es GMT +2. Ahora son las 15:05:50.


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