cancel
Showing results for 
Search instead for 
Did you mean: 

ultimo precio en oferta de venta u orden de venta

former_member671177
Participant
0 Kudos

Cordial Saludo

cual es la forma ideal para que cuando se este realizando una orden de venta u oferta de venta a un cliente determinado pueda colocar en el precio o en el precio tras el descuento el ultimo precio con el cual se le facturo

me suguirieron una busqueda formateada si esta es la unica forma les pido el favor a los expertos en SQL que me ayudaran y si es por parametrizacion como seria

muy agradecido

Accepted Solutions (1)

Accepted Solutions (1)

agustin_marcoscividanes
Active Contributor
0 Kudos

Hola

El documento de marketing ¿es de servicio o de artículo?

¿Qué documento quieres considerar?

¿El último que hayas generado para este cliente? Si vas a generar una factura, quieres tomar el precio indistintamente de la última factura, de la última oferta ..

¿O el último del mismo tipo? Si vas a generar una factura, de la última factura.

¿Qué importe quieres considerar? ¿El precio por unidad de cada línea? ¿El total de la línea? ¿El total del documento?

Seguramente haya preguntas que no tengan sentido una vez contestadas otras, pero es todo lo que se me ocurre preguntarte para intentar ayudarte.

Un saludo.

Agustín.

former_member671177
Participant
0 Kudos

Gracias Agustin y disculpame por no ser claro

la idea es que en el momento de hacer la oferta de venta tome el ultimo precio de la ultima factura del articulo generada para ese cliente

entonces el documento a considerar sera la oferta de venta el precio sera el de la ultima factura de dicho cliente y sera ell precio despues del descuento por linea

si no tiene factura tomara la lista de precios asignado que es como lo esta haciendo en estos momentos

ojala me haya hecho entender

felipe_loyolarodriguez
Active Contributor
0 Kudos

Hola

Prueba esta Busqueda Formateada, yo la tengo implemetada en las facturas de ventas, asi que le midifique algunos campos para que fuera en las ofertas de ventas y deveria correrte sin ningun problema.


IF (SELECT MAX(DocNum) FROM OQUT WHERE CardCode = (SELECT $[$4.OQUT.CardCode])) < (SELECT $[$8.OQUT.DocNum])
BEGIN
	DECLARE @LASTDOC as NVarchar (10)
	SELECT @LASTDOC = MAX(DocEntry) FROM OQUT WHERE CardCode = (SELECT $[$4.OQUT.CardCode])

	IF (SELECT $[$38.1.0]) IN (SELECT DISTINCT ItemCode FROM QUT1 WHERE DocEntry = @LASTDOC)
	BEGIN
		SELECT T1.LineTotal 
		FROM QUT1 T1
		WHERE T1.ItemCode = (SELECT $[$38.1.0]) AND T1.DocEntry = @LASTDOC
		END
		ELSE
		SELECT T2.Price
		FROM ITM1 T2
		WHERE T2.ItemCode = (SELECT $[$38.1.0])
END

Saludos

FLR

former_member671177
Participant
0 Kudos

Floyola Gracias por tu ayuda, tu paciencia y abusando de tu conocimeinto y buena voluntad te cuento que

ya hice lo que me dices y me funciona en parte porque me esta trayendo el precio pero sin el descuento y la necesidad es que me traiga el precio tras el descuento porque alfin de cuentas ese el valor por el cual se comercializo

te agreadeceria nuevamente si me ayudas con ese detalle puesto que no conosco SQL y no se que hacer

felipe_loyolarodriguez
Active Contributor
0 Kudos

Estimado, buenos dias

Bien adjunto nueva busqueda para oferta de ventas


IF (SELECT MAX(DocNum) FROM OQUT WHERE CardCode = (SELECT $[$4.OQUT.CardCode])) < (SELECT $[$8.OQUT.DocNum])
BEGIN
	DECLARE @LASTDOC as NVarchar (10)
	SELECT @LASTDOC = (SELECT MAX(T0.DocEntry) 
				FROM OQUT T0 
				INNER JOIN QUT1 T1 ON T0.DocEntry = T1.DocEntry
				WHERE CardCode = (SELECT $[$4.OQUT.CardCode]) AND T1.ItemCode IN (SELECT $[$38.1.0]))

	IF (SELECT $[$38.1.0]) IN (SELECT DISTINCT ItemCode FROM QUT1 WHERE DocEntry = @LASTDOC)
	BEGIN
		SELECT (T1.PriceBefDi-(T1.PriceBefDi*(T1.DiscPrcnt/100))) 
		FROM QUT1 T1
		WHERE T1.ItemCode = (SELECT $[$38.1.0]) AND T1.DocEntry = @LASTDOC
		END
		ELSE
		SELECT T2.Price
		FROM ITM1 T2
		WHERE T2.ItemCode = (SELECT $[$38.1.0])
END

Saludos

FLR

former_member671177
Participant
0 Kudos

Estimado me sigue mostrando el precio antes del descuento

la busqueda la coloque en el campo precio tras descuento inicialmente posterior la paseal en el precio pero actua igual

en que campo deberia quedar?

felipe_loyolarodriguez
Active Contributor
0 Kudos

Estimado

Cambie el calculo del precio de descuento


SELECT (T1.PriceBefDi-(T1.PriceBefDi*(T1.DiscPrcnt/100)))

por


SELECT T1.Price

me cuentas como te va, la busqueda debes ubicarla donde dice precio unitario.

Saludos

FLR

former_member671177
Participant
0 Kudos

Cordail Saludo

sigue igual me da el precio pero sin el descuento

mira esta es la consulta con el cambio que me diste

hay algo mal?

IF (SELECT MAX(DocNum) FROM OQUT WHERE CardCode = (SELECT $[$4.OQUT.CardCode])) < (SELECT $[$8.OQUT.DocNum])

BEGIN

DECLARE @LASTDOC as NVarchar (10)

SELECT @LASTDOC = (SELECT MAX(T0.DocEntry)

FROM OQUT T0

INNER JOIN QUT1 T1 ON T0.DocEntry = T1.DocEntry

WHERE CardCode = (SELECT $[$4.OQUT.CardCode]) AND T1.ItemCode IN (SELECT $[$38.1.0]))

IF (SELECT $[$38.1.0]) IN (SELECT DISTINCT ItemCode FROM QUT1 WHERE DocEntry = @LASTDOC)

BEGIN

SELECT T1.Price

FROM QUT1 T1

WHERE T1.ItemCode = (SELECT $[$38.1.0]) AND T1.DocEntry = @LASTDOC

END

ELSE

SELECT T2.Price

FROM ITM1 T2

WHERE T2.ItemCode = (SELECT $[$38.1.0])

END

felipe_loyolarodriguez
Active Contributor
0 Kudos

Puedes pegar unos pantallazos del problema

es raro, el campo Price es el precio con descuento aplicado

Atte.

FLR

former_member671177
Participant
0 Kudos

hola te envie un correo para tu ayuda

felipe_loyolarodriguez
Active Contributor
0 Kudos

Buenos dias

Gracias a los pantallazos, ya se cual es tu problema


IF (SELECT MAX(DocNum) FROM OQUT WHERE CardCode = (SELECT $[$4.OQUT.CardCode])) < (SELECT $[$8.OQUT.DocNum])
BEGIN
	DECLARE @LASTDOC as NVarchar (10)
	SELECT @LASTDOC = (SELECT MAX(T0.DocEntry) 
				FROM OINV T0 
				INNER JOIN INV1 T1 ON T0.DocEntry = T1.DocEntry
				WHERE CardCode = (SELECT $[$4.OQUT.CardCode]) AND T1.ItemCode IN (SELECT $[$38.1.0]))

	IF (SELECT $[$38.1.0]) IN (SELECT DISTINCT ItemCode FROM INV1 WHERE DocEntry = @LASTDOC)
	BEGIN
		SELECT T1.Price 
		FROM INV1 T1
		WHERE T1.ItemCode = (SELECT $[$38.1.0]) AND T1.DocEntry = @LASTDOC
		END
		ELSE
		SELECT T2.Price
		FROM ITM1 T2
		WHERE T2.ItemCode = (SELECT $[$38.1.0])
END

Prueba esta busqueda, donde modifique unos campos

Saludos

FLR

former_member671177
Participant
0 Kudos

si funciono y muchas gracias

tengo una duda en el momento de que se esta realizando la orden de venta y digito el item me muestra el precio de lista pero si doy click en la lupita cambia al precio ultimo de la ultima factura que es lo que se necesitaba y que tu muy amablemente me ayudaste

mi pregunta es en las busquedas formateadas siempre debe hacer clic en la lupita para que funcione o es posible dejarla automatica puesto que se deseba que el usuario no tenga autorizacion de modificar el precio

nuevamente muchas gracis por tu ayuda fue muy valioso tu aporte

former_member671177
Participant
0 Kudos

si funciono y muchas gracias

tengo una duda en el momento de que se esta realizando la orden de venta y digito el item me muestra el precio de lista pero si doy click en la lupita cambia al precio ultimo de la ultima factura que es lo que se necesitaba y que tu muy amablemente me ayudaste

mi pregunta es en las busquedas formateadas siempre debe hacer clic en la lupita para que funcione o es posible dejarla automatica puesto que se deseba que el usuario no tenga autorizacion de modificar el precio

nuevamente muchas gracis por tu ayuda fue muy valioso tu aporte

felipe_loyolarodriguez
Active Contributor
0 Kudos

Hola

Al momento de asignarle la busqueda formateada al campo, hay una opcion que dice Actualización automática si se producen modificaciones campo , activala y seleccionas el campo que quieres que cuando se modifique actualize la busqueda.

Te sugiero que especifiques que cuando se modifique el Numero de articulo se actualize la busqueda.

Saludos

No olvides calificar la respuesta

Edited by: Floyola on Feb 11, 2011 12:38 PM

Edited by: Floyola on Feb 11, 2011 12:41 PM

former_member671177
Participant
0 Kudos

ok

nuevamente gracias gracias y gracias

Answers (0)