cancel
Showing results for 
Search instead for 
Did you mean: 

Articulos que no hayan tenido movimiento y Object Type

former_member326598
Participant
0 Kudos

Estimados expertos:

Qusiera que me orienten en dos cosas, la primera es: quisiera saber si hay alguna manera quizas con un query o algo que me permita ver que acticulos no tengan ningun movimiento no me refiero a articulos inactivos, lo que pasa es que tengo articulos que al momento de hacer la carga de la informacion hace tres años estan creado pero no han sido utilizados para nada y en ves de estas pasando registro por registro quisiera saber si hay alguna manera o algun atributo que m indique que articulos no han sido utilizado, espero me entiendan

Lo segundo es:

Quiero hacer una validacion al momento crea los lotes al hacer cualquier tipo de ingreso bueno no ubico el Object Type de la tabla OIBT, quiero validar que no permita hacer la creacion del lote si el campo fecha de vencimiento este vacio

Slds

QASAC

Accepted Solutions (0)

Answers (2)

Answers (2)

former_member188440
Active Contributor
0 Kudos

.

former_member188440
Active Contributor
0 Kudos

Podrias hacer un query a la tabla oinm , compara los articulos de la oitm contra la oinm, los que no salgan en dicha tabla , es porque no han tenido movimientos.

Para lo del lote, se me ocurre que pongas un campo de usuario de tipo obligatorio, el cual valide con una variable la informacion que esta en la fecha de vencimiento


Si @variable=''

entonces select ''

de tal suerte que al estar null tu campo no te deje crear el lote porque es de tipo obligatorio

former_member326598
Participant
0 Kudos

Disculpa pero no entendi lo de los lotes, donde y como hago eso?? en el transaction?? oe una BF en el campo de usuario??

Slds

QASAC

former_member188440
Active Contributor
0 Kudos

Seria en un campo de usuario con una busqueda formateada la cual revisara que no este nulo el campo de Fecha de vencimiento

Edited by: Mauricio QUINTANA on Jan 11, 2010 4:27 PM

former_member326598
Participant
0 Kudos

ah ok con un campo de usuario, un favor cual seria el query que emplearia si me puedes dar un ejemplo ya que no solo tengo que validar la fecha de vencimiento si no tambien la de fabricacion y la localidad

Slds

QASAC

former_member326598
Participant
0 Kudos

ah ok con un campo de usuario, un favor cual seria el query que emplearia si me puedes dar un ejemplo ya que no solo tengo que validar la fecha de vencimiento si no tambien la de fabricacion y la localidad

Slds

QASAC

former_member188440
Active Contributor
0 Kudos

Puedes poner el query asi


declare @fechVenc as datetime
declare @fechFab as datetime
declare @Localidad as nvarchar 

set @fechaVenc=(select CONVERT(DATETIME,$[OIBT.Expdate],103))
set @fechFab=(select CONVERT(DATETIME,$[OIBT.Prddate],103))
set @Localidad = (select $[oibt.Located])

if (@fechFab is null or FechaVenc is null ) and @Localidad is null
select ''
Select 'Datos correctos'

La idea es que el campo de usuario que contendra esta busqueda sea de tipo obligatorio, si en algun momento los 3 campos son nulos te pondra en blanco el campo y no te dejara crear el lote.

Si todos son correctos si te dejara crearlo y se guardara con la leyenda "Datos correctos"

Pruebalo a ver si te funciona.

former_member326598
Participant
0 Kudos

OK, creo primero el campo de usuario de que tipo?? Fecha? alfanumerico?

Lo creo en Campos defenidos por el usuario > Inventario> Numero de lotes para Articulos

Yo lo creo de tipo fecha, ahora ya veo el campo de usuario al momento que voy a crear los lotes al hacer una entrada, lo veo a nivel de detalle como agrego el query como una BF ???

Por favor si me puedes dar mas detalles te lo agardeceria

Slds

QASAC

former_member188440
Active Contributor
0 Kudos

El campo de usuario debe ser de estructura regular, tipo Alfanumerico.

Una vez que hayas guardado el query, lo asignas posicionandote en el campo de usuario y presionando la tecla Shift +F2 el sistema te preguntara si deseas asignar un valor, le dices que si, en la siguiente opcion, escoges la de hasta abajo, que es para asignar por una consulta guardada.

Das doble clic y se abre el query manager, ubicas la consulta que guardaste y le das ok

Despues solo necesitas que se ejecute de acuerdo a 2 cosas, si un campo se modifica y si es actualizacion regularmente o visualizar valores guardados por usuario, creo que te conviene actualizar regularmente.

former_member326598
Participant
0 Kudos

Mauricio:

He creado el campo y le asigne la BF como me indicas, y guarde el query lo asigne al campo de usuario que habia creado,

pero cuando voy a crear una entrada y no pongo nada en la fechas no pasa nada me deja crear sin problemas mas bien en el campo de usuario me aparece DATOS CORRECTOS estando en blanco los campos de fecha.

No se si estara mal el query???

Slds

QASAC

former_member188440
Active Contributor
0 Kudos

A ver intenta modificando el query a esto


declare @fechaVenc as nvarchar (8)
declare @fechaFab as nvarchar (8)
declare @Localidad as nvarchar (20)
 
set @fechaVenc=(select CONVERT(nvarchar(8),$[OIBT.Expdate]))
set @fechaFab=(select CONVERT(nvarchar(8),$[OIBT.Prddate]))
set @Localidad = (select $[oibt.Located]))
 
if (@fechaFab is null )or (@FechaVenc is null)  or (@Localidad is null)

select ''
else
Select 'Datos correctos'

Pusiste el campo de usuario como obligatorio?

former_member326598
Participant
0 Kudos

No pq cuando pongo que el campo sea obligatorio no me deja crearlo me sale un msj que dice que tiene que tener definido un valor

Slds

qasac

former_member188440
Active Contributor
0 Kudos

Es necesario que este como obligatorio, para que cuando la validacion ponga un valor en blanco con el select '' se limpie el valor por default, puedes ponerle un 0 para que te deje ponerlo como obligatorio.

La otra cosa es que ese campo no este activo, si visible mas no activo, de tal forma que se actualice pero no sea posible para un usuario manipularlo, solo se manipule con la busqueda formateada.

De acuerdo al orden en que se crea el lote es como debes actualizar el campo de usuario, esto cuando configuras la busqueda formateada.

former_member188440
Active Contributor
0 Kudos

Es necesario que este como obligatorio, para que cuando la validacion ponga un valor en blanco con el select '' se limpie el valor por default, puedes ponerle un 0 para que te deje ponerlo como obligatorio.

La otra cosa es que ese campo no este activo, si visible mas no activo, de tal forma que se actualice pero no sea posible para un usuario manipularlo, solo se manipule con la busqueda formateada.

De acuerdo al orden en que se crea el lote es como debes actualizar el campo de usuario, esto cuando configuras la busqueda formateada.