Ayuda SAP

Consulta estado Borrador en SAP B1

sql
Etiquetas: #<Tag:0x00007f7372e8b7e0>

#1

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.


#2

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.


#3

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.


#4

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


#5

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.


#6

Hola compañero.

Utiliza parámetros interactivos del sistema:

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

Saludos.


#7

‘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


#8

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.


#9

Hola @antog12:

Buenas tardes, finalmente esto le resultó?

Salud@s :raised_hand_with_fingers_splayed:t5:


#10

Buenas tardes.

Disculpa que no haya contestado antes.

Me resultó util.

Muchas gracias


#11

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:


#12

Este tema se cerró automáticamente 7 días después del último post. No se permiten nuevas respuestas.