cancel
Showing results for 
Search instead for 
Did you mean: 

Oferta de Ventas: Habilitar el cambio de precio para un sólo artículo

Former Member
0 Kudos

Hola Buenos días, tengo el siguiente inconveniente:

El departamento comercial, en sus ofertas de ventas deben incluir ítems (pueden ser servicios, o artículos nuevos) que no existen en los datos maestros de artículo. Para esto se creó un ítem genérico, el cual se puede modificar la descripción y precio.

Lo que me está causando problemas es que el departamento comercial, cuando están realizando ofertas a clientes, está haciendo cambios en las descripciones y precios de varios datos maestros de artículo.

¿Existe alguna forma para que el sistema me deje cambiar esta información SÓLO para el dato maestro genérico, y que los demás datos maestros sean inmodificables?

Accepted Solutions (1)

Accepted Solutions (1)

former_member188440
Active Contributor
0 Kudos

Por medio de las autorizaciones generales, les puedes limitar esto a tus usuarios del area comercial, ya probaste eso?

Former Member
0 Kudos

Mauricio,

El departamento comercial no tiene permisos para cambiar datos maestros de artículo. El error se presenta en la realización de ofertas

former_member188440
Active Contributor
0 Kudos

Mas facil, entras a parametrizaciones de formulario, con la cuenta del usuario del area comercial y le quitas el check en la casilla de Activo para el campo de Descripcion de articulo, para que te quede como visible, mas no activo

Para que ellos no puedan modificar esta opcion de visualizar y modificar el campo, en autorizaciones generales con manager o superusuario, en la seccion de General, quitales el permiso sobre la opion de Parametrizaciones de formulario y tratar tabla de documentos

Former Member
0 Kudos

El problema está en que ellos necesitan cambiar el precio y descripción para el ítem con código 00001 ya que este puede ser un servicio, o un ítem que no existe en el inventario.

No se si soy del todo claro, necesito que comercial pueda cambiar esta información sólo para un ítem en particular y no para todos.

former_member188440
Active Contributor
0 Kudos

Ok quizas con una busqueda formateada que se encarge de Limpiar el campo de descripcion cuando lo quieran cambiar

Algo como


declare @itemcode nvarchar (10)
declare @descripcion nvarchar (10)

set @itemcode=(select $[$38.1.0])
set @descripcion=(select $[$38.1.3])

if @itemcode in ('A001','A002')--- estos son los codigos que quieres controlar

 AND (select itemName from oitm where itemcode=@itemcode)!= @descripcion

begin

Select 'No puede cambiar descripcion de este item'

end

Former Member
0 Kudos

Mauricio,

La necesidad es la siguiente:

Tenemos un inventario de más de 10.000 artículos. Comercial hace sus ofertas de acuerdo a las necesidades del cliente. Es posible que el cliente requiera de un artículo que no exista en el inventario o de un servicio (cuyo precio es muy variable). En este caso comercial ingresa manualmente estos artículos por medio del código 00001 y así poder darle al cliente una oferta en el menor tiempo posible.

Cuando se adjudica el proyecto, antes de pasar a pedido se crean los códigos que no teníamos en nuestro inventario y que se cotizaron en la oferta (en el código 00001).

El problema es que comercial está cambiando las descripciones y precios en las demás líneas de la oferta (aparte del código 00001) y esto está generando reprocesos.

Alguna sugerencia?

former_member188440
Active Contributor
0 Kudos

Yo te sugiero lo de arriba, ahora, si es muy complicado darle mantenimiento a la busqueda formateada para controlar que items se pueden modificar o no pues la mejor sugerencia es analizar el proceso que llevan a cabo y establecer politicas de control interno para que no hagan lo que se les antoja

Creo que la 2a sugerencia es la mejor

felipe_loyolarodriguez
Active Contributor
0 Kudos

Estimado, los precios son iguales a los que hay en la lista de precios para el SN?

Existe la tabla DOC1 en tu DB¿

Former Member
0 Kudos

Floyola

Los precios deben ser los mismos

No existe la tabla DOC1

felipe_loyolarodriguez
Active Contributor
0 Kudos

Prueba este TN


IF @object_type =23 AND @transaction_type IN ('U')
BEGIN

	IF EXISTS
		(SELECT T0.DocEntry
		FROM OQUT T0
		INNER JOIN QUT1 T1 ON T1.DocEntry=T0.DocEntry
		INNER JOIN ITM1 T2 ON T2.ItemCode=T1.ItemCode
		INNER JOIN OPLN T3 ON T3.ListNum=T2.PriceList
		INNER JOIN OCRD T4 ON T4.CardCode=T0.CardCode AND T4.ListNum=T3.ListNum
		WHERE (T1.PriceBefDi > T2.Price OR T1.PriceBefDi < T2.Price) AND T1.ItemCode NOT IN ('00001') AND T0.DocEntry=@list_of_cols_val_tab_del)

	BEGIN
		SELECT @error = -1000, @error_message = 'SP: No puede modificar articulos, exepto el 00001'
	END
END

Atte.

Edited by: Floyola on Jul 27, 2011 1:35 PM

former_member188440
Active Contributor
0 Kudos

El tema Felipe, es que solo de algunos no se debe de poder modificar, segun explico el compañero

entonces hay que darle mantenimiento al codigo de sql, lo que parece ser un problema

Former Member
0 Kudos

Gracias, voy a revisar si funciona. Soy nuevo en esto de TN, como se cual es el @object_type y el @transaction_type?

Former Member
0 Kudos

Gracias, voy a revisar si funciona. Soy nuevo en esto de TN, como se cual es el @object_type y el @transaction_type?

felipe_loyolarodriguez
Active Contributor
0 Kudos

@object_type = al Tipo de objcto del documento, si ejecutas este query veras que da 23, que es el tipo de objeto que corresponde a las ofertas


SELECT DISTINCT ObjType FROM OQUT

@transaction_type = especifica que tranasaccion se debe hacer para activar el procedimiento, existen 5 tipos en SBO

(A)DD -- Añadir

(U)PDATE -- Modificar

(C)ancel -- Cancelar

C(L)ose -- Cerrar

(D)elete -- Eliminar

Slds

Former Member
0 Kudos

Funcionó muy bien, era exactamente lo que necesitaba.

Muchas gracias

former_member188440
Active Contributor
0 Kudos

Entonces, necesitabas que no se modificara el precio? o la descripcion?

felipe_loyolarodriguez
Active Contributor
0 Kudos

Yo habia entendido eso...

Y que solo 1 articulo especifico que era el 0001 se podia modificar...

former_member188440
Active Contributor
0 Kudos

yo entendi que no se debia cambiar la descripcion de ningun item, solo de algunos cuantos

Sepa entonces!

Former Member
0 Kudos

Hola, hay alguna posibilidad de incluir un listado separado por comas de los itemcode que encontró en el código de error?

Former Member
0 Kudos

De hecho lo debo hacer tanto para descripción como para precio. Con la solución que me dió Floyola quedó muy bien. Lo único es que me gustaría poder tener en el mensaje de error, el listado de items para que la persona de comercial pueda corregirlos más fácil.

Answers (1)

Answers (1)

felipe_loyolarodriguez
Active Contributor
0 Kudos

Estimado

Lo que no entiendo es que dices que modifican el dato maestro de artículo, esto es en el modulo inventario y hablas de bloquear la oferta de venta.

Mi pregunta es, modifican la oferta de venta o el precio del articulo en el modulo inventario?

Si es la oferta:

La modificacion que te permite el sistema solo se aplica a todo el documento, no a articulos especificos

Slds

Edited by: Floyola on Jul 27, 2011 11:07 AM

Former Member
0 Kudos

Hola Floyola ,

Modifican la descripción y precio en la oferta de venta.

El problema está en que no puedo deshabilitar la opción de modificar, ya que esto aplica para todas las filas del documento. Yo sólo quiero que puedan modificar un ítem (ya que este equivale principalmente a servicios y los precios varían indefinidamente).

No hay alguna forma (por medio de una búsqueda formateado o algo similar) para dejar las columnas de precio y descripcion en sólo lectura, de acuerdo al código del dato maestro?

felipe_loyolarodriguez
Active Contributor
0 Kudos

Creo que deberias insertar un Transaction Notification

Que version de SAP tienes?

Former Member
0 Kudos

8.8 PL 18