Buenas tardes
Tengo Sap B1 con Hana
Necesitaria un query que ingresando un codigo de lista de materiales, traiga todos los recursos de todos sus niveles inferiores (sumados sus tiempos totales por recursos)
Desde ya muchas gracias
Saludos
Claro, sin problema.
Sólo si me permite comentarle que para una mejor ayuda se le recomienda compartir qué avances tiene en su Query o qué errores le está mostrando el que tiene, en caso de estarlos presentando.
Si busca que algún miembro del foro le arme alguno, seguramente necesitará compartir más detalles y características como podrían ser qué busca usted. Por ejemplo un informe que filtre por periodos, almacenes, grupos de artículos, no solamente el código de la lista del material, sí menciona el tiempo pero no hace referencia a costos de artículos, componentes y más. Eso por un lado, por el otro también si me permite compartirle, no es común que alguien realice consultas por encargo, por lo general se dan opiniones, ejemplos, ideas, soportes sobre dudas específicas, pero es posible.
Sino tiene nada armado, le podría recomendar usar la búsqueda de la página, le aseguro que encontrará ejemplos de soluciones a temas similares al suyo que son muy útiles. Desconozco su perfil ya que no tuvo la oportunidad de ingresar su presentación primero, la cual es de mucha ayuda para poder identificar su nivel de experiencia y poder recomendarle u opinar con más eficacia sobre la solución que está buscando. Puede ir aquí si está interesado en compartir más de usted>> #presentaciones
Muchas gracias por la respuesta, investigando encuentro algo como esto
La duda es cómo puedo obtener la misma consulta en HANA?
En SQL SERVER tengo una consulta recursiva para componer un árbol de Lista de materiales SAP B1.
WITH RecursiveSQL as (
SELECT 1 as Level,OITT.Code as ABSCODE,OITT.Code,ITT1.Code as ITEMCODE,ITT1.Quantity FROM OITT INNER JOIN ITT1 ON OITT.Code = ITT1.Father*
UNION ALL
SELECT RecursiveSQL.Level + 1 as Level, RecursiveSQL.ABSCODE, OITT.Code,ITT1.Code as ITEMCODE,ITT1.Quantity FROM RecursiveSQL INNER JOIN OITT ON RecursiveSQL.ITEMCODE = OITT.Code INNER JOIN ITT1 ON OITT.Code = ITT1.Father*
)
SELECT * FROM RecursiveSQL WHERE ABSCODE = ‘0021142-5252-3-00XXL’ Order by Level
Luego la adapto a recursos que es lo que necesito
Gracias
Saludos
Entiendo.
Entonces en lugar de usar la consulta directa en HANA podría usar un procedimiento almacenado, algo parecido a esto, tomando la suya como ejemplo:
CREATE PROCEDURE RECURSIVE_SQL()
LANGUAGE SQLSCRIPT
AS
BEGIN
WITH RecursiveSQL as (
SELECT 1 as Level,OITT.Code as ABSCODE,OITT.Code,ITT1.Code as ITEMCODE,ITT1.Quantity FROM OITT INNER JOIN ITT1 ON OITT.Code = ITT1.Father
UNION ALL
SELECT RecursiveSQL.Level + 1 as Level, RecursiveSQL.ABSCODE, OITT.Code,ITT1.Code as ITEMCODE,ITT1.Quantity FROM RecursiveSQL INNER JOIN OITT ON RecursiveSQL.ITEMCODE = OITT.Code INNER JOIN ITT1 ON OITT.Code = ITT1.Father
)
SELECT * FROM RecursiveSQL WHERE ABSCODE = '0021142-5252-3-00XXL' Order by Level;
END;
Tome en cuenta como bien dice, deberá personalizar.
Por otro lado SAP HANA también proporciona una herramienta de nivel superior para trabajar con jerarquías llamada Hierarchy Data Model. Con esta herramienta, puede definir su jerarquía una ventaja de este enfoque es que la estructura jerárquica se define explícitamente y no se asume implícitamente por la forma en que se recorre los datos.
Este tema se cerró automáticamente 30 días después de la última publicación. No se permiten nuevas respuestas.