lunes, 14 de septiembre de 2020

Búsqueda formateada a nivel de detalle en UDO - Hana

 Les dejo este ejemplo de una búsqueda formateada que realice en un UDO a nivel de detalle, tenia rato sin hacer una y bueno está vez me toco en Hana (en realidad no se si cambio la estructura respecto a SQL Server).

En el ejemplo podrán observar como se va a armando la consulta con los atributos del campo U_Adcional para que me coloque el valor en el campo DescAdicional:

- Consulta

SELECT  "Name" from "@TRCATA" T0
WHERE T0."Code" = $[$0_U_G.C_0_1.0]

Imagen UDO

La clave como pueden ver está en los subrayado en amarillo, desde así toman los criterios que forman el el valor de la condición en la consulta de la búsqueda formateada.

Espero les ayude, saludos!.

lunes, 7 de septiembre de 2020

Error - Could not load file or assembly 'App_Code' or one of its dependencies.

Hoy publicando un sitio web en el IIS, me surgió este error:

Could not load file or assembly 'App_Code' or one of its dependencies. This assembly is built by a runtime newer than the currently loaded runtime and cannot be loaded.

En mi búsqueda por Internet encontré varias posibles soluciones... ni una me ayudo, entonces recordé que algo que siempre nos puede causar problemas al desplegar en el IIS es la versión del Framework en el Pools de la aplicación ya que siempre elige la V2 por defecto.


Elegí la v4 y Vualá!... hasta la próxima!.

sábado, 5 de septiembre de 2020

Transaction Notification en Dirección Destino - CRD1

Hoy les muestro este TN para que no pasen por alto que los destinos en CRD1 se diferencian en la tabla CRD1 dependiendo si lo que quieres validar es la Dirección Destino (bo_ShipTo) o la Dirección fiscal (bo_BillTo), de lo contrario si omites esta especificación en tu validación estarás afectando a ambas direcciones.

El ejemplo está en HANA, que a diferencia de SQL Server que solo realiza un if para saber si cumple con la condición, HANA utiliza una variable de tipo Int (numRowsResult) para contar el número de resultados para luego saber si existen registros coincidentes con tu consulta de validación, de haberlos, entonces se dispara el error:

IF (:transaction_type = 'A' OR :transaction_type = 'U') And  :object_type = '2' THEN

SELECT COUNT(*) INTO numRowsResult

FROM "OCRD" T0 INNER JOIN "CRD1" T1 ON T0."CardCode" = T1."CardCode"

WHERE T0."CardCode" = :list_of_cols_val_tab_del

AND (T1."City" is null OR T1."City" = ' ' OR T1."City" = '')

AND T1."AdresType" = 'S';  -- Aquí decimos que la dirección es bo_ShipTo

IF :numRowsResult>0 THEN  

        error := -2001;

        Error_message := 'El campo "Ciudad" en "Destino Envío" no puede quedar vació, por favor de verificar (Socios de Negocios).';

END IF;

END IF;


Espero les sirva, saludos!.

sábado, 29 de agosto de 2020

Lob type in GROUP BY sap HANA

Hola ¿como están?,

Tratando de adecuar una consulta que no conocía tuve que agrupar algunos de sus campos para poder realizar el sum de uno ellos, la sorpresa fue que me genero al finalizar este error: Lob type in GROUP BY, para esto encontré esta publicación de la página oficial de SAP.


Como podrán ver, nos indica que entre las restricciones de un campo tipo Lob esta el poder agruparlo, por lo que la única forma de poder hacer un lado este error fue haciendo un CAST a VARCHAR, de esta forma el group by lo interpreta como tal y deja correr la consulta.

Saludos!.