Hallo,
some Queries are not runable in the query manager within SAP Business One, version for HANA, especially when you are using sub-queries and input parameters.
Here is an example (Query1):
SELECT T0."DocEntry", T0."DocNum", T0."TaxDate", T0."CardCode", (SELECT "BaseRef" FROM INV1 T2 WHERE T2."DocEntry" = T0."DocEntry" AND T2."LineNum" = '0') AS "Referenz", T0."CardName" || ' ' || IFNULL(T1."CardFName", n'') AS "CardName", CASE WHEN (T0.CANCELED = 'C') THEN (-1) * T0."DocTotal" ELSE T0."DocTotal" END AS "DocTotal", CASE WHEN (T0.CANCELED = 'C') THEN (-1) * T0."TotalExpns" ELSE T0."TotalExpns" END AS "Fracht", T0."DocDueDate", T0."DocDate", T0."ObjType", CASE WHEN (T0.CANCELED = 'C') THEN 'VRE-ST/' ELSE 'VRE/' END AS "Präfix", CASE WHEN (T0.CANCELED = 'C') THEN 'Storno zu RE ' ELSE ' ' END AS "Text1", CASE WHEN (T0.CANCELED = 'C') THEN (SELECT "BaseRef" FROM INV1 T2 WHERE T2."DocEntry" = T0."DocEntry" AND T2."LineNum" = '0') ELSE ' ' END AS "Text2", CASE WHEN (T0.CANCELED = 'C') THEN T0."JrnlMemo" ELSE ' ' END AS "Bemerkung" FROM OINV T0 INNER JOIN OCRD T1 ON T1."CardCode" = T0."CardCode" WHERE T0."DocDate" BETWEEN '[%Date01]' AND '[%Date02]'
There are two sub-queries, one on the second line and on the line 24th line.
When I am running this query it shows me this error:
When I remove the sub-queries I can run this query.
It looks like this than (Query2):
SELECT T0."DocEntry", T0."DocNum", T0."TaxDate", T0."CardCode", T0."CardName" || ' ' || IFNULL(T1."CardFName", n'') AS "CardName", CASE WHEN (T0.CANCELED = 'C') THEN (-1) * T0."DocTotal" ELSE T0."DocTotal" END AS "DocTotal", CASE WHEN (T0.CANCELED = 'C') THEN (-1) * T0."TotalExpns" ELSE T0."TotalExpns" END AS "Fracht", T0."DocDueDate", T0."DocDate", T0."ObjType", CASE WHEN (T0.CANCELED = 'C') THEN 'VRE-ST/' ELSE 'VRE/' END AS "Präfix", CASE WHEN (T0.CANCELED = 'C') THEN 'Storno zu RE ' ELSE ' ' END AS "Text1", CASE WHEN (T0.CANCELED = 'C') THEN T0."JrnlMemo" ELSE ' ' END AS "Bemerkung" FROM OINV T0 INNER JOIN OCRD T1 ON T1."CardCode" = T0."CardCode" WHERE T0."DocDate" BETWEEN '[%Date01]' AND '[%Date02]'
The error above occurs, when the sub-query refers a column from the main-query.
(Example from Query1 Line 2)
SELECT "BaseRef" FROM INV1 T2 WHERE T2."DocEntry" = T0."DocEntry" AND T2."LineNum" = '0'
In the "where"-clause is an comparison "T2."DocEntry" = T0."DocEntry". When such a comparison (subquery.column = mainquery.column) is presented in the query you can't run tit in Query-Manager within SAP Business One, Version for HANA.
Did someone has the same error and/or problem?
Can someone provide an workaround to make this query runable?
Thank!