RE:informe de consulta lento
ahi la tienen
SELECT A.ID, D.APEEMP+" "+D.NOMEMP AS NOMBRE, CINT(D.CODSER) AS CODSER, A.FECHA AS DIA_E, A.FERIADO, A.TURNO AS TURNO, A.VACAC, A.DES_MED, IIf(IsNull(B.ENTRADA),Null,CDate(B.ENTRADA)) AS HORA_1, IIf(isnull(a.turno) OR ISNULL(DMin("hormar","marcas1","codemp=" & a.id & " and fecmar=#" & format(a.fecha,"mm/dd/yyyy") & "#")),Null,CDATE(DMin("hormar","marcas1","codemp=" & a.id & " and fecmar=#" & format(a.fecha,"mm/dd/yyyy") & "#"))) AS MARCA_1, IIf(A.FECHA>=Date() Or IsNull(turno) Or TURNO In ("LC","LF","LL") Or (B.GUARDIA=True And Mid(HORA_1,10)='p.m.') Or a.des_med Is Not Null,Null,IIf(IsNull(MARCA_1) Or IsNull(MARCA_2) Or MARCA_1-HORA_1>#12/30/1899 0:30:0#,"HOY",Null)) AS FALTA, IIf(IsNull(hora_1) Or IsNull(marca_1),Null,Format(calsal(hora_1,marca_1),"Short Time")) AS TARDANZA, IIf(IsNull(A.LICENC),Null,DLookUp("descripc","tipdoc","tipdoc=" & A.LICENC)) AS PERMISO, IIf(IsNull(A.LICENC),Null,DLookUp("estado","tipdoc","tipdoc=" & A.LICENC)) AS ESTADO, IIf(IsNull(TURNO),Null,IIf(Mid(HORA_1,10)='p.m.',a.fecha+1,a.fecha)) AS DIA_S, IIf(IsNull(B.SALIDA),Null,CDate(B.SALIDA)) AS HORA_2, A.PRODUCT, IIf(IsNull(A.PRODUCT),Null,HORA_2+TimeSerial(CInt(Mid(A.PRODUCT,1,1)),0,0)) AS HORA_3, IIf(IsNull(B.SALIDA) OR ISNULL(DMax("hormar","marcas1","codemp=" & a.id & " and fecmar=#" & format(dia_s,"mm/dd/yyyy") & "#")),Null,cdate(DMax("hormar","marcas1","codemp=" & a.id & " and fecmar=#" & format(dia_s,"mm/dd/yyyy") & "#"))) AS MARCA_2, IIf(IsNull(marca_2) Or IsNull(hora_2) Or IsNull(hora_3),Null,IIf(IsNull(hora_3),Format(calsal([hora_2],[marca_2]),"Short Time"),Format(calsal([hora_3],[marca_2]),"Short Time"))) AS SALDO, IIf(A.FECHA>=Date() Or IsNull(PRODUCT) And IsNull(permiso) And IsNull(TURNO) And IsNull(a.vacac),Null,calpro(turno,tardanza,marca_2,hora_3,falta,estado)) AS PRODU, A.OBSERV AS OBSERVACION
FROM (PROGRAMACION AS A LEFT JOIN TURNOS AS B ON A.TURNO=B.TURNO) INNER JOIN MAESTRO AS D ON A.ID=D.ID
WHERE CINT(D.CODSER)=FORMS!FTARSER!SELAYN And A.AAAAMM=FORMS!FTARSER!AÑO+FORMAT(FORMS!FTARSER!MES,"00") And NZ(B.TIPO," ") In (" ","L")
GROUP BY D.CODSER, A.ID, A.FECHA, A.FERIADO, A.TURNO, A.VACAC, A.DES_MED, DMin("hormar","marcas1","codemp=" & a.id & " and fecmar=#" & format(a.fecha,"mm/dd/yyyy") & "#"), A.PRODUCT, A.OBSERV, B.GUARDIA=True, B.ENTRADA, B.SALIDA, D.APEEMP, D.NOMEMP, A.LICENC
ORDER BY D.APEEMP
WITH OWNERACCESS OPTION;