First I noticed the Fields in Subselects of the following Query under Server 5.0 are TFMTBCDFields, with MySQL Server 4.x these are normal Float Fields...
On executing the following Query, an Error with "Invalid Pointer" accurs, and the Application terminates with Runtime error.
If I take out the Sub-Selects, everything works fine.
Strange thing is, the error isn't popping up each time.
This is the query how the server executes it.
All direct values shown are normally params I set via ClientDataSet.
Code: Select all
SELECT A.ARTNR, A.PROGRAMM, A.BEZEICH, A.VK_AB_BRUT, A.AUSF, A.VK_NETTO A_VK_NETTO, A.VK_SON_NET A_VK_SON_NET,
A.SAMMELART, A.BILDNR, A.LI_NR, A.LI_ARTNR, A.LI_PROGR, A.LIEF_STAT, A.ARTIKELEAN, L.KURZ, AL.S_KENNUNG,
AL.VK_ABHOL, AL.VK_LIEFER, AL.VK_NETTO AL_VK_NETT0, AL.VK_SON_NET AL_VK_SON_NET, AK.FARBE,
(SELECT SUM(Z_MENGE - STORN_ME - ME_RESERV) FROM BESTPOS
WHERE POSART BETWEEN 1 AND 2
AND KDFALL = 0
AND STATUS BETWEEN 6 AND 30
AND BESTELLKZ = 2 AND ARTIKELNR = A.ARTNR) AS BESTFREI,
(SELECT SUM(LA_FREI) FROM LAGART WHERE ARTNR = A.ARTNR AND (LAGER = 'RLAG' OR LAGER = 'RAUS') ) AS LAGERFREI
FROM ARTIKEL A
LEFT JOIN LIEF L ON A.LI_NR = L.NR_INT
LEFT JOIN AKTLAUF AL ON AL.ARTNR = A.ARTNR
AND AL.FILIALE = 1
AND AL.DATUM >= (SELECT MAX(DATUM) FROM AKTLAUF WHERE FILIALE = 1 AND ARTNR = A.ARTNR)
LEFT JOIN AKTION AK ON AK.S_KENNUNG = AL.S_KENNUNG
LIMIT 0, 24