Variable de entrada solo para el año

Hola,

Tengo la siguiente query con dos parámetros de entradas:

SELECT SUM (T0."DocTotal")
FROM ORDR T0 INNER JOIN RDR1 T1 ON T0."DocEntry" = T1."DocEntry"
WHERE YEAR(T0."DocDate") = YEAR([%1])
      AND T1."WhsCode" = '[%2]'
      AND MONTH(T0."DocDate") = '1'

Mi problema es que SAP me obliga a seleccionar una fecha completa en vez de solo el año (que es lo que necesito como entrada). Tuve que hacer la comparación de esa manera pero no me parece natural para el usuario tener que escoger una fecha completa para sólo comparar por el año.
¿Existe alguna manera de recibir como entrada sólo el año? He buscado en internet pero sin suerte hasta ahora.

Muchas gracias.
Saludos,
David.

Tengo una duda, ese Query en donde lo estas haciendo? es para SAP R3 o para SAP B1?

Saludos

Hola @Alonso_mx, ese query lo estoy haciendo en SAP B1 versión 9.2.

@dcg90, lee Cómo usar el foro de Consultoria-SAP, habías publicado esto en una categoría incorrecta, por eso te respondieron eso. :+1:

Ahora he editado el tema para categorizarlo bien.

Saludos

1 me gusta

Estimado, creo que no vale la pena que te esfuerces enque solo pida el año, creo que con indicarle al usuario que no importando la fecha que ponga sino que lo relevante aqui es el año a la hora que te consulte bastara.

Si lo que quieres si o si que ingresen solo el numero, creo que podrías hacer una tabla de usuario o buscar un campo que sea solo numero y seria algo asi

DECLARE @ANIO INT
SET @ANIO = (/*select top 1 T0.Code from [@TBL_USER] T0 WHERE T0.Code =*/'[%0]')
SELECT 
	SUM (T0."DocTotal") 
FROM ORDR T0 
INNER JOIN RDR1 T1 ON T0."DocEntry" = T1."DocEntry" 
WHERE YEAR(T0."DocDate") = @ANIO
AND T1."WhsCode" = '[%2]' 
AND MONTH(T0."DocDate") = '1'

Hola @Panxulo, gracias por tu respuesta. Cuando intento crear la tabla de usuario me dice que hay otras estaciones de trabajo conectadas, le doy en la opción ignorar y me dice que eso puede causar problemas de integridad de datos (no me parece que haya problemas porque lo que hago es crear una tabla) pero no estoy 100% seguro. ¿Puedo confirmar este diálogo y continuar con la creación de la tabla?

Saludos.

1 me gusta

Ese dialogo indica que hay personas conectadas y te indica las estaciones conectadas a SAP, por lo general se hace en horarios en los que no este la gente trabajando en SAP, ya que si modificas la estructura de SAP sin importar si es un campo o una tabla de usuario este dejara a todas las personas que esten tratando de generar un documento sin efecto este mismo y no podran re tomarlos, hasta que cierren el formulario y lo vuelvan a abrir

Este tema se cerró automáticamente 91 días después de la última publicación. No se permiten nuevas respuestas.