From 49a0eca11706458a10b7b0601f196be27bc7363a Mon Sep 17 00:00:00 2001 From: Blake Matthes Date: Mon, 29 Sep 2025 10:01:10 -0500 Subject: [PATCH] refactor(datamart): added in the proper error prood uom check on the articles query --- .../sqlServer/querys/dataMart/article.ts | 26 ++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/lstV2/server/services/sqlServer/querys/dataMart/article.ts b/lstV2/server/services/sqlServer/querys/dataMart/article.ts index 03a7bab..e817462 100644 --- a/lstV2/server/services/sqlServer/querys/dataMart/article.ts +++ b/lstV2/server/services/sqlServer/querys/dataMart/article.ts @@ -116,7 +116,14 @@ sales.[KdArtBez] as CustomerArticleDescription, round(V_Artikel.Zyklus, 2) as CycleTime, Sypronummer as salesAgreement, V_Artikel.ProdArtikelBez as ProductFamily -,REPLACE(pur.UOM,'UOM:','') as UOM +--,REPLACE(pur.UOM,'UOM:','') +,Case when LEFT( + LTRIM(REPLACE(pur.UOM,'UOM:','')), + CHARINDEX(' ', LTRIM(REPLACE(REPLACE(pur.UOM,'UOM:',''), CHAR(13)+CHAR(10), ' ')) + ' ') - 1 + ) is null then '1' else LEFT( + LTRIM(REPLACE(pur.UOM,'UOM:','')), + CHARINDEX(' ', LTRIM(REPLACE(REPLACE(pur.UOM,'UOM:',''), CHAR(13)+CHAR(10), ' ')) + ' ') - 1 + ) end AS UOM --,* FROM dbo.V_Artikel (nolock) @@ -159,7 +166,20 @@ left join ,GueltigabDatum as validDate ,EKPreis as price ,LiefArtNr as supplierNr - ,case when Bemerkung is not null and Bemerkung like '%UOM:%' then LEFT(Bemerkung, CHARINDEX(' ', Bemerkung)) else 'UOM:1' end as UOM + ,CASE + WHEN Bemerkung IS NOT NULL AND Bemerkung LIKE '%UOM:%' + THEN + -- incase there is something funny going on in the remark well jsut check for new lines and what not + LEFT( + REPLACE(REPLACE(Bemerkung, CHAR(13)+CHAR(10), ' '), CHAR(10), ' '), + CASE + WHEN CHARINDEX(' ', REPLACE(REPLACE(Bemerkung, CHAR(13)+CHAR(10), ' '), CHAR(10), ' ')) > 0 + THEN CHARINDEX(' ', REPLACE(REPLACE(Bemerkung, CHAR(13)+CHAR(10), ' '), CHAR(10), ' ')) - 1 + ELSE LEN(Bemerkung) + END + ) + ELSE 'UOM:1' + END AS UOM ,Bemerkung --,* from dbo.T_HistoryEK (nolock) @@ -169,7 +189,7 @@ left join where RN = 1) as pur on dbo.V_Artikel.IdArtikelvarianten = pur.av -where V_Artikel.aktiv = 1 +where V_Artikel.aktiv = 1 --and dbo.V_Artikel.IdArtikelvarianten = 1445 order by V_Artikel.IdArtikelvarianten /*, TypeOfMaterial */ `;