cancel
Showing results for 
Search instead for 
Did you mean: 

Como Validar salida de articulos que no tengas costo de importacion

former_member326598
Participant
0 Kudos

Buenos Dias:

Tengo un problema el cual espero me puedan ayudar, el caso es el siguiente:

Tengo mercaderia ya ingresada y la cual ya ha sido costeada mediante el documento de costos de importacion, por ejemplo

ARTICULO A LOTE 1 100 KG (El cual ya se hizo su ingreso a almcen y ya esta costeado)

Luego ingresa el mismo Articulo A 50 kg del LOTE 2 la cual aun no ha sido costeada y la cual no deberia salir aun ya que falta aplicarle al costo del proveedor los gastos de aduana, flete terreste maritono, etc, los cuales no puede ser costeados en ese momento por falta de documentacion,

Como valido que solo permita salir la mercaderia costeada mas no la que falte costear, actualmente manejo esta validacion que me dejaron la cual afecta a toda la mercaderia quiere decir que si falta costear 50 kg y tengo 100 kg que ya estan costeados no me permite hacer la venta pq falta costear.

Aqui les paso mi validacion haber si me pueden decir como hacerlo no se si a la mayoria le pasa o paso esto


--select  no va 

DECLARE @TABLATEMPORAL TABLE(MAXPIS NVARCHAR(7))
DECLARE @MAXPI NVARCHAR(7)
DECLARE @CONTPI NVARCHAR(7)
DECLARE @CONTNOPI NVARCHAR(7)

--RECUPERA EL VALOR DEL P/I O P/I'S CON O/C DE IMPORTACION, PARA LOS ITEMS SELECCIONADOS

INSERT INTO @TABLATEMPORAL (MAXPIS) 
SELECT DISTINCT(T1.DOCENTRY)
FROM DLN1 T0, PDN1 T1, OPOR T2 WHERE T0.DOCENTRY = @LIST_OF_COLS_VAL_TAB_DEL
AND T0.ITEMCODE = T1.ITEMCODE
AND T1.DOCENTRY = (SELECT MAX(DOCENTRY) FROM PDN1 WHERE PDN1.ITEMCODE = T0.ITEMCODE)
AND T2.DOCENTRY = (SELECT DISTINCT(BASEENTRY) FROM PDN1 WHERE BASETYPE = '22' AND DOCENTRY = T1.DOCENTRY)
AND (T2.U_QA_TOC = '1' OR T2.U_QA_TOC = '2')

BEGIN

--MUESTRA SI HAY REGISTROS DE P/I EN LA TABLA TEMPORAL, QUE NO SE ENCUENTREN EN LOS COSTOS DE IMPORTACION --PARA LOS ITEMS SELECCIONADOS
		SET @MAXPI = (SELECT MAX(MAXPIS) FROM @TABLATEMPORAL)
		SET @CONTPI = (SELECT COUNT(*) FROM @TABLATEMPORAL)
        SET @CONTNOPI = (SELECT COUNT(*) FROM @TABLATEMPORAL WHERE  MAXPIS NOT IN (SELECT D.BASEENTRY FROM OIPF C, IPF1 D WHERE C.DOCENTRY = D.DOCENTRY AND C.DOCSTATUS = 'C'))

   IF @MAXPI IS NOT NULL AND @MAXPI <> ''
	  BEGIN
			IF @CONTNOPI > 0 
			BEGIN
				SET @ERROR = 1 -- IMPORTANTE: INDICA QUE LA VALIDACIÓN NO HA SIDO SUPERADA
				SET @ERROR_MESSAGE ='EXISTE(N)PRODUCTO(S) QUE DEBE(N) COSTEARSE PARA ESTA O/P'
			END 
    END 
END
END
END

Slds

Jesus

QASAC

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

hola Jesus,

Lo màs sencillo y que se recomienda es utilizar una bodega ò almacen de mercancias en transito (articulos que estàn pendientes de incluiir costos adicionales de importaciòn), sòlo cuando se tenga el costo definitivo se trasladan a la bodega de despachos, con esto evitarias el inconveniente y no tendrias necesidad de utilizar el SP Transaction.

Saludos,

JAMS

former_member210784
Active Contributor
0 Kudos

Hola.

Estoy de acuerdo con Jairo Alberto.

Se pueden hacer llegar los artículos recien ingresados y sin costo de importación, a un almacén temporal diferente al que normalmente llegan (y de donde son tomados para producción).

Luego de agregar los costos de importación, se pueden trasladar a su almacén normal para que sigan su curso en el proceso productivo.

Así se evita que se utilicen los artículos sin haberles agregado los costos de importación.

Si son artículos que siempre se importan, se les puede asociar por defecto el almacén temporal (o de tránsito) para que cuando se haga la entrada de mercancía OP, lleguen a éste.

Quedamos en espera de sus comentarios..

Answers (0)