Jump to content

Filtrar por Alias


Recommended Posts

Hola a tod@s

Me adelanto agradeciendo su tiempo ante la siguiente consulta en Access Vista SQL.
Tengo la siguiente sintaxis el cual funciona correctamente:

SELECT CABECERAMOVIMIENTO.[TIPO DOCUMENTO], CLIENTE.[CODIGO REL] AS [COD CLIENTE], CABECERAMOVIMIENTO.[FOLIO], IIF(DETALLEMOVIMIENTO.[CODIGO] ="333115-OOO", "333115-O", DETALLEMOVIMIENTO.[CODIGO]) AS [CODIGOPRODUCTO], DETALLEMOVIMIENTO.[ZETA], STOCKS.[ESTADO] 
FROM (((CABECERAMOVIMIENTO 
INNER JOIN DETALLEMOVIMIENTO 
ON DETALLEMOVIMIENTO.[FOLIO] = CABECERAMOVIMIENTO.[FOLIO] AND DETALLEMOVIMIENTO.[TIPO DOCUMENTO] = CABECERAMOVIMIENTO.[TIPO DOCUMENTO])
INNER JOIN CLIENTE
ON CLIENTE.[RUTPASS] = CABECERAMOVIMIENTO.[CLIENTE]) 
INNER JOIN STOCKS 
ON STOCKS.[ZETA] = DETALLEMOVIMIENTO.[ZETA]) 
WHERE CABECERAMOVIMIENTO.[TIPO DOCUMENTO] = 6 And (CABECERAMOVIMIENTO.[ESTADO DATOS] = "O" Or CABECERAMOVIMIENTO.[ESTADO DATOS] = "V" Or CABECERAMOVIMIENTO.[ESTADO DATOS] = "B")
GROUP BY CABECERAMOVIMIENTO.[TIPO DOCUMENTO], CLIENTE.[CODIGO REL], CABECERAMOVIMIENTO.[FOLIO], DETALLEMOVIMIENTO.[CODIGO], DETALLEMOVIMIENTO.[ZETA], STOCKS.[ESTADO]

Ahora el detalle está en filtrar por el Alias [CODIGOPRODUCTO] = 333115-O

Espero haberme hecho entender con mi breve consulta.

Saludos

Link to comment
Share on other sites

Hola a tod@s.

Ya pude resolver el asunto que tenia con la ayuda de Vista Diseño con la siguiente sintaxis:

SELECT CABECERAMOVIMIENTO.[TIPO DOCUMENTO], CLIENTE.[CODIGO REL] AS [COD CLIENTE], CABECERAMOVIMIENTO.FOLIO, IIf(DETALLEMOVIMIENTO.[CODIGO]="333115-OOO","333115-O",DETALLEMOVIMIENTO.[CODIGO]) AS CODIGOPRODUCTO, DETALLEMOVIMIENTO.ZETA, STOCKS.ESTADO
FROM (((CABECERAMOVIMIENTO 
INNER JOIN DETALLEMOVIMIENTO 
ON (CABECERAMOVIMIENTO.[TIPO DOCUMENTO] = DETALLEMOVIMIENTO.[TIPO DOCUMENTO]) AND (CABECERAMOVIMIENTO.[FOLIO] = DETALLEMOVIMIENTO.[FOLIO])) 
INNER JOIN CLIENTE 
ON CABECERAMOVIMIENTO.[CLIENTE] = CLIENTE.[RUTPASS]) 
INNER JOIN STOCKS 
ON DETALLEMOVIMIENTO.[ZETA] = STOCKS.[ZETA])
WHERE CABECERAMOVIMIENTO.[TIPO DOCUMENTO]=6 AND (CABECERAMOVIMIENTO.[ESTADO DATOS]="O" Or CABECERAMOVIMIENTO.[ESTADO DATOS]="V" Or CABECERAMOVIMIENTO.[ESTADO DATOS]="B")
GROUP BY CABECERAMOVIMIENTO.[TIPO DOCUMENTO], CLIENTE.[CODIGO REL], CABECERAMOVIMIENTO.FOLIO, DETALLEMOVIMIENTO.ZETA, STOCKS.ESTADO, DETALLEMOVIMIENTO.CODIGO
HAVING (IIf(DETALLEMOVIMIENTO.[CODIGO]="333115-OOO","333115-O",DETALLEMOVIMIENTO.[CODIGO]))="333115-O"

Por otro lado si no es mucho pedir, me recomendarian si debo usar IIF O SWITCH? Ya que debo reemplazar 30 [CODIGOPRODUCTO] aprox. Caso contrario abriré un nuevo tema y doy por terminado el tema.

Saludos

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

  • Crear macros Excel

  • Posts

    • Buenas Tardes amigos, aca saludos desde Chile, quisiera vuestra ayuda , tengo este Excel el cual ocupamos cada  5 dias para enviar email masivos, enviamos aprox. 10.000 email, el tema es que cada email no tengo idea el porque, pero pesa entre 500 kg a 1 mega Aprox. y esto demora mucho, no se si se podrá hacer algo, y lo otro,  para cada mensaje debe ser personalizado si es hombre y mujer, habrá alguna forma de dejarlo unido si determina si es mujer u hombre?   le dejo el macros en caso me puedas ayudar para optimizar el macros que tengo por favor.   Se activa el macros, este copia el mensaje que esta en la hoja Datos  y lo pega en un correo nuevo en el Outlook , fue la unica opcion que pude lograr, no se si habra otra forma.     Sub ENVIARCORREONUEVO1211() Application.ScreenUpdating = False ThisWorkbook.Sheets("RS1").Select ActiveSheet.Range("B1:B26").Select x = ThisWorkbook.Sheets("Datos").Range("E5").Value For i = 1 To x ThisWorkbook.Sheets("Datos").Range("E6").Value = i ActiveWorkbook.EnvelopeVisible = True Application.ScreenUpdating = False With ActiveSheet.MailEnvelope    .Item.To = ThisWorkbook.Sheets("Datos").Range("E2").Value    ''.Item.cc = Con Copia a....''    .Item.Subject = ThisWorkbook.Sheets("Datos").Range("E3").Value    ' .Introduction = ThisWorkbook.Sheets("Datos").Range("E4").Value '        .Item.Send End With Next i Application.ScreenUpdating = True End Sub  
    • Hola,   No me funciona.   Sale este error.   Seria posible tambien no tener que editar la ruta cada vez y que coja la ruta donde esta el xlsm?   Muchas gracias
    • A ver que tal, prueba y comenta Facturación 26082021JSD.xlsm
    • Hola, Yo no me entero muy bien; en el ejemplo que has puesto de  Puedes usar =IZQUIERDA(A1;4)/100 (suponiendo que el numero esta en A1). Seguro que no te refieres a eso porque es muy simple, pon mas ejemplos.
  • Recently Browsing

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

Privacy Policy