Unbehandelte Ausnahme #4140C33B19B4E4BF vom Typ System.Data.SqlClient.SqlException in Void OnError(System.Data.SqlClient.SqlException, Boolean)
System.Data.SqlClient.SqlException (0x80131904): Die cHinweis-Spalte wurde für 'countTable' mehrmals angegeben.
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()
at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
at System.Data.SqlClient.SqlDataReader.ConsumeMetaData()
at System.Data.SqlClient.SqlDataReader.get_MetaData()
at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
at System.Data.SqlClient.SqlCommand.ExecuteScalar()
at jtlDatabase.DB.Rw840V5yo5[T](SqlConnection , Func`1 func)
at jtlDatabase.DB.getScalar(String cSqlCommand, jtlDBParameter[] oDBParameter_arr)
at jtlControls.jtlListViewEx.jtlSQLHandlerEx.getDataCount(String cListViewName)
at jtlControls.jtlListViewEx.jtlListViewEx.setVirtualListSize()
at jtlControls.jtlListViewEx.jtlListViewEx.initSQLHandler()
at jtlControls.jtlListViewEx.jtlListViewEx.refreshData(Boolean KeepOrderBy)
at jtlCore.Forms.Einkauf.ArtikelEinkaufsliste..ctor()
at jtlCore.Forms.Einkauf.EinkaufVerwaltung.DloLUdr92u(String )
at jtlCore.Forms.Einkauf.EinkaufVerwaltung.KrqLlK0I88(Object , TreeViewEventArgs )
at System.Windows.Forms.TreeView.OnAfterSelect(TreeViewEventArgs e)
at System.Windows.Forms.TreeView.TvnSelected(NMTREEVIEW* nmtv)
at System.Windows.Forms.TreeView.WmNotify(Message& m)
at System.Windows.Forms.TreeView.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
SQL-Fehlerinformationen: [AGNOS\JTLWAWI .Net SqlClient Data Provider] Fehler #8156 (Klasse 16) in Zeile 115: Die cHinweis-Spalte wurde für 'countTable' mehrmals angegeben.
HelpLink.ProdName = Microsoft SQL Server
HelpLink.ProdVer = 10.50.4000
HelpLink.EvtSrc = MSSQLServer
HelpLink.EvtID = 8156
HelpLink.BaseHelpUrl = http://go.microsoft.com/fwlink
HelpLink.LinkId = 20476
CommandText = SELECT COUNT(*) FROM
(
SELECT TOP 100 PERCENT tArtikelEinkaufsliste.kArtikel, tartikel.kSteuerklasse, tArtikelEinkaufsliste.kLieferant, tArtikelEinkaufsliste.cHinweis, tliefartikel.nLieferzeit AS Lieferzeit, tliefartikel.cLiefArtNr, tliefartikel.cName AS cNameBeimLieferanten, tArtikel.cArtNr, tArtikel.cName, CASE
WHEN tLiefArtikel.nMindestAbnahme > tArtikelEinkaufsListe.fAnzahl THEN tLiefArtikel.nMindestAbnahme
WHEN tLiefArtikel.nAbnahmeIntervall > 0 AND CONVERT(int, CEILING(tArtikeleinkaufsliste.fAnzahl)) % tLiefArtikel.nAbnahmeIntervall != 0 THEN CONVERT(int, CEILING(tArtikeleinkaufsliste.fAnzahl)) + tLiefArtikel.nAbnahmeIntervall - CONVERT(int, CEILING(tArtikeleinkaufsliste.fAnzahl)) % tLiefArtikel.nAbnahmeIntervall
ELSE tArtikelEinkaufsliste.fAnzahl
END AS fAnzahl, tlieferant.cFirma AS LieferantName, (SELECT TOP 1
CASE
WHEN jStaffelEK.fPreisNetto < tliefartikel.fEKNetto THEN jStaffelEK.fPreisNetto
ELSE ISNULL(tliefartikel.fEKNetto, 0)
END
FROM tliefartikel
LEFT JOIN
(
SELECT TOP 1 tLiefArtikelPreis.fPreisNetto, tLiefArtikelPreis.kLiefArtikel
FROM tLiefArtikelPreis
JOIN tliefartikel ON tliefartikel.kLiefArtikel = tLiefArtikelPreis.kLiefArtikel
WHERE tliefartikel.tArtikel_kArtikel = tArtikelEinkaufsliste.kArtikel
AND tliefartikel.tLieferant_kLieferant= tArtikelEinkaufsliste.kLieferant
AND tLiefArtikelPreis.fAb <= tArtikelEinkaufsliste.fAnzahl
ORDER BY tLiefArtikelPreis.fPreisNetto ASC
) AS jStaffelEK ON tliefartikel.kLiefArtikel = jStaffelEK.kLiefArtikel
WHERE tliefartikel.tLieferant_kLieferant = tArtikelEinkaufsliste.kLieferant
AND tliefartikel.tArtikel_kArtikel = tArtikelEinkaufsliste.kArtikel
)
AS fEKNettoAktuell, tlieferant.cWaehrungISO, tliefartikel.fLagerbestand AS fLiefBestand, CASE
WHEN vLagerbestandEx.fVerfuegbar < 0
THEN vLagerbestandEx.fVerfuegbar*-1
ELSE 0
END AS fFehlbestand, vLagerbestandEx.fVerfuegbar, ISNULL(jBestellt.fBestellt,0) AS fBestellt, tArtikeleinkaufsliste.cHinweis, tArtikel.cBarcode, tArtikel.nMidestbestand, (SELECT TOP 1 CONVERT(VARCHAR,tLiefArtikelPreis.fAb) + ' [' + REPLACE(CONVERT(VARCHAR,CONVERT(decimal(20,2),tLiefArtikelPreis.fPreisNetto)), '.', ',') + ' '+tlieferant.cWaehrungISO+']'
FROM tLiefArtikelPreis
WHERE
CASE
WHEN tLiefArtikel.nMindestAbnahme > tArtikelEinkaufsliste.fAnzahl THEN tLiefArtikel.nMindestAbnahme
ELSE tArtikelEinkaufsliste.fAnzahl
END >= tLiefArtikelPreis.fAb
AND tLiefArtikelPreis.kLiefArtikel = tliefartikel.kLiefArtikel
ORDER BY tLiefArtikelPreis.fAb DESC) AS cStaffelAktuell, (SELECT TOP 1 CONVERT(VARCHAR,tLiefArtikelPreis.fAb) + ' [' + REPLACE(CONVERT(VARCHAR,CONVERT(decimal(20,2),tLiefArtikelPreis.fPreisNetto)), '.', ',') + ' '+tlieferant.cWaehrungISO+']'
FROM tLiefArtikelPreis
WHERE
CASE
WHEN tLiefArtikel.nMindestAbnahme > tArtikelEinkaufsliste.fAnzahl THEN tLiefArtikel.nMindestAbnahme
ELSE tArtikelEinkaufsliste.fAnzahl
END < tLiefArtikelPreis.fAb
AND tLiefArtikelPreis.kLiefArtikel = tliefartikel.kLiefArtikel
ORDER BY tLiefArtikelPreis.fAb ASC) AS cStaffelNaechste, (SELECT TOP 1 tLieferant_kLieferant
FROM tliefartikel
WHERE tArtikel_kArtikel = tArtikelEinkaufsliste.kArtikel
AND nStandard = 1) AS kLieferantStd, (SELECT TOP 1 tLieferant_kLieferant
FROM
(
SELECT tliefartikel.tLieferant_kLieferant, tliefartikel.nLieferzeit
FROM tliefartikel
WHERE tliefartikel.tArtikel_kArtikel = tArtikelEinkaufsliste.kArtikel
AND tliefartikel.nLieferzeit IS NOT NULL
UNION
SELECT tlieferant.kLieferant, tlieferant.nLieferzeit
FROM tliefartikel
JOIN tlieferant ON tlieferant.kLieferant = tliefartikel.tLieferant_kLieferant
AND tliefartikel.tArtikel_kArtikel = tArtikelEinkaufsliste.kArtikel
AND tlieferant.nLieferzeit IS NOT NULL
) as sSUB
ORDER BY nLieferzeit ASC) AS kLieferantSchnellster, (SELECT CASE
WHEN jStaffelEK.fEKNettoFaktor < sEK.fEKNettoFaktor THEN jStaffelEK.tLieferant_kLieferant
ELSE ISNULL(sEK.tLieferant_kLieferant, 0)
END
FROM
(
SELECT TOP 1 tliefartikel.tLieferant_kLieferant, tliefartikel.fEKNetto / ISNULL(tWaehrung.fFaktor, 1.0) as fEKNettoFaktor
FROM tliefartikel
JOIN tlieferant ON tlieferant.kLieferant = tliefartikel.tLieferant_kLieferant
JOIN tWaehrung ON tWaehrung.cEAMapping = tlieferant.cWaehrungISO
WHERE tliefartikel.tArtikel_kArtikel = tArtikelEinkaufsliste.kArtikel
ORDER BY fEKNettoFaktor ASC
) AS sEK
LEFT JOIN
(
SELECT TOP 1 tliefartikel.tLieferant_kLieferant, tLiefArtikelPreis.fPreisNetto / ISNULL(tWaehrung.fFaktor, 1.0) as fEKNettoFaktor
FROM tLiefArtikelPreis
JOIN tliefartikel ON tliefartikel.kLiefArtikel = tLiefArtikelPreis.kLiefArtikel
JOIN tlieferant ON tlieferant.kLieferant = tliefartikel.tLieferant_kLieferant
JOIN tWaehrung ON tWaehrung.cEAMapping = tlieferant.cWaehrungISO
WHERE tliefartikel.tArtikel_kArtikel = tArtikelEinkaufsliste.kArtikel
AND tLiefArtikelPreis.fAb <= tArtikelEinkaufsliste.fAnzahl
ORDER BY fEKNettoFaktor ASC
) AS jStaffelEK ON 1=1) AS kLieferantGuenstigster,CASE
WHEN (SELECT TOP 1 kLiefArtikel FROM tLiefArtikel WHERE tArtikel_kArtikel = tArtikeleinkaufsliste.kArtikel) IS NULL THEN 1
WHEN tLiefArtikel.nMindestAbnahme > tArtikeleinkaufsliste.fAnzahl THEN 2
WHEN tLiefArtikel.nAbnahmeIntervall > 0 AND CONVERT(int, CEILING(tArtikeleinkaufsliste.fAnzahl)) % tLiefArtikel.nAbnahmeIntervall != 0 THEN 3
WHEN tArtikeleinkaufsliste.fAnzahl < vLagerbestandEx.fVerfuegbar*-1 THEN 4
ELSE 0
END as col1
FROM tArtikelEinkaufsliste
JOIN tartikel ON tartikel.kArtikel = tArtikelEinkaufsliste.kArtikel
AND tartikel.cAktiv != 'N'
LEFT JOIN eazybusiness.dbo.tbenutzer ON eazybusiness.dbo.tbenutzer.kBenutzer = tArtikelEinkaufsliste.kBenutzer
LEFT JOIN tlieferant ON tArtikelEinkaufsliste.kLieferant = tlieferant.kLieferant AND (tlieferant.nKeineEinkaufsliste IS NULL OR tlieferant.nKeineEinkaufsliste < 1)
LEFT JOIN tliefartikel ON tliefartikel.tArtikel_kArtikel = tArtikelEinkaufsliste.kArtikel
AND tliefartikel.tLieferant_kLieferant = tlieferant.kLieferant
LEFT JOIN vLagerbestandEx ON vLagerbestandEx.kArtikel = tArtikelEinkaufsliste.kArtikel
LEFT JOIN
(
SELECT SUM(tLieferantenBestellungPos.fMenge) - ISNULL(SUM(tWarenLagerEingang.fAnzahl), 0) AS fBestellt, tArtikel.kArtikel
FROM tArtikel
JOIN tLieferantenBestellungPos ON tArtikel.kArtikel = tLieferantenBestellungPos.kArtikel
JOIN tLieferantenBestellung ON tLieferantenBestellung.kLieferantenBestellung = tlieferantenBestellungpos.kLieferantenBestellung
AND tlieferantenbestellung.nStatus IN (20, 30)
LEFT JOIN tWarenLagerEingang ON tWarenLagerEingang.kLieferantenBestellungPos = tlieferantenBestellungpos.kLieferantenBestellungPos
GROUP BY tArtikel.kArtikel
) AS jBestellt ON tArtikelEinkaufsliste.kArtikel = jBestellt.kArtikel
WHERE 1=1
)
countTable
Connection-String = DataSource=AGNOS\JTLWAWI, InitialCatalog=eazybusiness, UserID=sa
Zeitstempel: 2013-09-10T22:21:08
Locale: German (Germany)
Locale: German (Germany)
Version: 099898
Plattform: Wawi
Versionshash: E2BB6B3F