on 09-28-2010 5:36 PM
Hola a todos, tengo la necesidad de impedir las entradas de mercancia desde el modulo de inventarios de articulos que tengan precio 0, esto debido a que si asi se hacen la entrada el costo del articulo no se actualiza de manera correcta. Es posible hacer esto en SAP ??
Gracias.
Hola, puedes hacer esto por medio del transaction Notification, has trabajado con el?
Necesitas ayuda con el query?
Es bastante sencillo
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hola Mauricio, no no he trabajado con el, me podrias ayudar en mas o menos como va el query ??? de hecho ya tengo el query que me trae los documentos que tienen precio cero, pero de ahi no se como decirle que bloquee la entrada, mira esto es lo que tengo hasta ahora :
SELECT T0.[Price], T0.[DocEntry] FROM IGN1 T0
WHERE T0.[Price] = '0'
Saludos.
Ok el transaction notification es un stored que viene dentro de la base de tu compañia, este al modificarlo, te permite ingresar codigo que te sirve para este tipo de validaciones pues "atrapa" el objeto que estas trabajando, en este caso el numero 59 que corresponde a entradas de inventario.
este codigo te puede servir
IF @transaction_type in ('A') AND @object_type IN ('59')
begin
declare @cuenta as int
set @cuenta=(select count (*) from oitw where itemcode in (select itemcode from ign1 where docentry=@list_of_cols_val_tab_del)
and whscode in (select top 1 warehousecode from ign1 where docentry=@list_of_cols_val_tab_del) )
if @cuenta>0
begin
set @error=1
set @error_message='No se pueden ingresar articulos sin costo'
end
end
si quieres pasame tu correo y te envío un manual q habla del transaction
Te recomiendo que lo pruebes en una base de pruebas primero
Desde MSSQL Management Studio, abre la opcion de Databases, expande tu base de datos y luego en Programacion-->Procedimientos almacenados, busca uno que se llama SBO_TransactionNotification y dale clic derecho y luego Modificar, ahi busca algo que dice -
ADD YOUR CODE HERE----
-
Debajo de esto, coloca el codigo que te pasé y haz pruebas
Espero te sirva
cambia la palabra warehousecode por whscode, porfa
Puedes saber que numero de objeto trabajas apoyandote en la ayuda del SDK, en la pestaña Indice, escribe Boo y te aparecera algo que dice "Business Object Enumeration" ahi vienen los objetos con su numero, busca por ejemplo oInventoryGenEntry (igual que se llama el template en DTW) y veras el numero 59
En un rato te mando el Manual
A ver intenta con este codigo
IF @transaction_type in ('A') AND @object_type IN ('59')
begin
declare @cuenta as int
set @cuenta=(select count (*) from ign1 where price<=0 and docentry=@list_of_cols_val_tab_del)
if @cuenta>0
begin
set @error=1
set @error_message='No se pueden ingresar articulos sin precio'
end
end
Hola, que bueno que funciono, esa variable que mencionas es en donde viene guardado el docentry que se pretende crear o insertar en la base de datos, en este caso en la tabla OIGN de entradas. Como el campo docentry de la tabla IGN1 (detalle de la entrada) tiene el mismo docentry que la cabecera OIGN, por eso sirve para validar el @list_of_cols_val_tab_del
Hola, me puedes dar la respuesta también, tengo el mismo problema gracias
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
107 | |
12 | |
11 | |
6 | |
5 | |
4 | |
4 | |
3 | |
3 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.