Consulta estado Borrador en SAP B1

Buenas tardes a todos.

Estoy creando una consulta donde pueda ver el estado de mis facturas. estoy usando la tabla OPCH y el campo que me interesa es “docstatus”. Cuando lo selecciono las variables que tengo son O= abierto y C= cerrado, pero me gustaría que me apareciese también las facturas que estén en borrador con su correspondiente letra. También he contemplado la tabla ODRF-docstatus.

En sap me meto en “Informes de documentos preliminares” y ahí puedo ver los que tengo en borrador, pero lo que necesito es que vea el estado borrador en los informes y no solo abierto y cerrado.

Es eso posible?

Gracias y un saludo.

Hola compañero.

No dudo que alguien te proporcione el código pero por el momento me limito a darte un “norte”, lo que podrías hacer es preparar dos querys (OPCH y ODRF), ambos con la misma información y unirlos por medio de un Union All, de esta manera podrías abarcar ambos documentos con su respectivo status.

Saludos.

Necesitas hacer algo asi:

SELECT
	DocNum,DocDate,CardCode,CardName,DocStatus,'Generada' as Tipo
FROM
	 OPCH 
WHERE
	CANCELED != 'Y'
UNION ALL
SELECT
	DocNum,DocDate,CardCode,CardName,DocStatus,'Borrador' as Tipo
FROM
	 ODRF 
WHERE
	CANCELED != 'Y'
	AND ObjType = 18

Saludos.

Buenas @antog12,

Puedes usar el SQL SQL Profiler y pillar la sentencia que ejecuta cuando sacas los borradores.

Yo cogia el spid haciendo sp_who y luego ponía en el event filtre el spid correspondiente para que me diera las sentencias SQL de solo mi usuario.

Un saludo

Lo primero de todo, quiero daros las gracias por responder.

Os tengo que pedir disculpas, pero estoy muy verde ya que he empezado a formarme en esto hace poco y no se interpretar muy bien las directrices que me dais.

@GabrielGS, cuando me dices ‘Generada’ as Tipo y ‘Borrador’ as Tipo, que es exactamente?

Edito: Ya he conseguido crear la consulta, pero como puedo poner rangos de fecha para acotar la búsqueda?

Gracias y lo siento.

Hola compañero.

Utiliza parámetros interactivos del sistema:

WHERE T0.[DocDate] >=[%0] AND T0.[DocDate] <=[%1]

Saludos.

‘Generada’ as Tipo y ‘Borrador’ as Tipo, son campo para distingir el Tipo de documento, es decir si es una Factura(‘Generada’) o un Borrador, estos nombres los puedes cambiar por lo que tu quieras o simplemente quitarlos.

Para filtrar por fechas en el Query Manager debes hacer lo siguiente (Filtrado por DocDate ):

DECLARE @VAR INT, @INI DATETIME, @FIN DATETIME

SET @VAR=(SELECT TOP 1 A.DocNum FROM [dbo].[OPCH]  A WHERE A.DocDate BETWEEN  '[%0]' AND '[%1]' )

SET @INI='[%0]'  
SET @FIN='[%1]' 


SELECT
	DocNum,DocDate,CardCode,CardName,DocStatus,'Generada' as Tipo
FROM
	 OPCH 
WHERE
	CANCELED != 'Y'
              AND DocDate BETWEEN @INI AND @FIN
UNION ALL
SELECT
	DocNum,DocDate,CardCode,CardName,DocStatus,'Borrador' as Tipo
FROM
	 ODRF 
WHERE
	CANCELED != 'Y'
	AND ObjType = 18
	AND DocDate BETWEEN @INI AND @FIN

Saludos

Muchas Gracias Gabriel y Gera.

Voy a probar y os comento.

Una pregunta Gabriel. Para hacer la query en SAP B1 yo uso el generador de consultas. Cuando me facilitas el ejemplo, lo sacas de ahí?

Mil gracias.

Hola @antog12:

Buenas tardes, finalmente esto le resultó?

Salud@s :raised_hand_with_fingers_splayed:t5:

Buenas tardes.

Disculpa que no haya contestado antes.

Me resultó util.

Muchas gracias

Hol@ @antog12:

Buen día, y que bien que le haya servido, recuerde marcar alguna de las respuestas de nuestros compañeros como solución.

Salud@s :raised_hand_with_fingers_splayed:t5: