Buenas tarde a la comunidad ,
He intentado hacer un Modelo de Autorizacion para las notas de ventas y me funciona perfectamente , pero a parte, quiero que para ciertos clientes retail no me tome la autorizacion,
Entiendo que en el maestro del socio de negocios existe unas propiedades la cual le he colocado el nombre de retail e intente hacer una consulta pero no me funciona , quien me podria orientar y ver en que parte me estoy equivocando , se lo agradeceria
.
Buenas tardes Jorge, yo lo utilizo con un CASE
Ejemplo:
SELECT
CASE
WHEN
((SELECT $[ODLN.U_BIT_ProsAutoriz] FROM DUMMY)= 1)
THEN ‘TRUE’
END
FROM DUMMY;
Siempre que la condicion devuelva TRUE va a saltar la autorizacion.
@Fer_Munoz la tabla DUMMY es un ejemplo ??
Es la tabla Dual que utiliza SAP HANA. Ejemplo: SELECT CURRENT_DATE FROM DUMMY; (Para saber la fecha actual)
con SQL SERVER no te haria falta usar “from dummy”
@Fer_Munoz , yo utilizo sqlserver
SELECT CASE
When expression1 Then Result1
When expression2 Then Result2
ELSE Result (Aca iria el TRUE)
END
@Fer_Munoz como quedaria en sql server la consulta asumiendo que utilizo dos tablas ORDR y OCRD ??
SELECT
CASE WHEN (SELECT QryGroup FROM OCRD WHERE CarcCode = $[$4.0.0]) = ‘Y’ THEN ‘FALSE’ ELSE ‘TRUE’ END
@Fer_Munoz , Gusto en saludarte , no me corre la consulta :
SELECT
CASE WHEN (SELECT QryGroup1 FROM OCRD WHERE CardCode = ‘$[$4.0.0]’) = ‘Y’ THEN ‘FALSE’ ELSE ‘TRUE’ END
Este errorme arroja:
Could not commit transaction: Error -1 detected during transaction
Hola jorge, proba asi
SELECT
CASE WHEN (SELECT QryGroup1 FROM OCRD WHERE CardCode = ‘$[$4.0.0]’)
<> ‘Y’ THEN ‘TRUE’ ELSE ‘FALSE’ END
y dejale solamente una sola condicion en el Modelo de autorizacion
@Fer_Munoz como una sola condicion ? que solo se cumpla??
En el modelo de autorizacion, deja solo la condicion de SQL
@Fer_Munoz me continua diciendo esto:
Could not commit transaction: Error -1 detected during transaction
Asi deberia nadar, proba de sarcarle el FALSE.
SELECT
CASE WHEN (SELECT QryGroup1 FROM OCRD WHERE CardCode = ‘$[$4.0.0]’)
<> ‘Y’ THEN ‘TRUE’ END;