Hi,
Sometimes, I use very long queries in VB.NET.
They are very difficult to read! Everything is on a single long line.
Even when printed, they are difficult to read.
Is there an easy way to split these long queries into multiple rows to make reading easier?
I've seen one solution on the forum. It involves creating numerous shorter stings and then concatenating them together.
It works, but is very clumsy. And when new items are added in the long query, it may be necessary to renumber the numerous variables.
Is there a shorter and more elegant method? I tried using continuation with System.Environment.Newline.
It does not seem to work.
Below, you will find an actual code and how I would like it to look in VS.
Thanks
Leon Lai
-------------------------
ACTUAL APPEARANCE WHEN PRINTED
oForm.DataSources.DataTables.Item(0).ExecuteQuery("SELECTT1.DocEntry,T1.DocNum,T1.DocStatus,T1.CANCELED,T1.DocDate,'IN' AS [Type],T1.CardCode AS [CardCode_PC],'|' AS [ClickPC],T1.CardName AS [CardName_PC],T1.DocTotal,T0.FcCurrency as [Ccy] ,T1.DocTotalFc,'' as [x],T0.RefDate AS [PostingDt] ,T0.BaseRef,T0.ShortName,T0.TransId,CAST('' AS NVARCHAR(254))AS [CardCode_FC],'|' AS [ClickFC],CAST('' AS NVARCHAR(254)) AS [CardName_FC],T0.Debit,T0.FcDebit,'' AS [Clk2Recon] FROM JDT1 T0 LEFT JOIN OINV T1 ON T0.TransId = T1.TransId LEFT OUTER JOIN OCRD T2 ON T0.ShortName = T2.CardCode WHERE T0.ShortName <> '1220601' AND T2.CardName <>'' AND T1.DocStatus ='O' And T1.CANCELED ='N' and Left(T1.CardCode,2) = 'PC' AND T0.BaseRef = T1.DocNum Order By T1.DocNum")
HOW I WOULD LIKE THE CODE TO LOOK LIKE IN VISUAL STUDIO AND ON PRINTED COPY
oForm.DataSources.DataTables.Item(0).ExecuteQuery("SELECT
T1.DocEntry,
T1.DocNum,
T1.DocStatus,
T1.CANCELED,
T1.DocDate,
'IN' AS [Type],
T1.CardCode AS [CardCode_PC]
,'|' AS [ClickPC],
T1.CardName AS [CardName_PC],
T1.DocTotal,
T0.FcCurrency as [Ccy] ,
T1.DocTotalFc,'' as [x],
T0.RefDate AS [PostingDt] ,
T0.BaseRef,T0.ShortName,
T0.TransId,CAST('' AS NVARCHAR(254))AS [CardCode_FC],
'|' AS [ClickFC],CAST('' AS NVARCHAR(254)) AS [CardName_FC],
T0.Debit,
T0.FcDebit,'' AS [Clk2Recon]
FROM JDT1 T0
LEFT JOIN OINV T1 ON T0.TransId = T1.TransId
LEFT OUTER JOIN OCRD T2 ON T0.ShortName = T2.CardCode
WHERE T0.ShortName <> '1220601'
AND T2.CardName <>''
AND T1.DocStatus ='O'
And T1.CANCELED ='N'
AND Left(T1.CardCode,2) = 'PC'
AND T0.BaseRef = T1.DocNum
ORDER BY T1.DocNum")