AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein [MSSQL] Problem bei Konvertierung in Case-Verzweigung
Thema durchsuchen
Ansicht
Themen-Optionen

[MSSQL] Problem bei Konvertierung in Case-Verzweigung

Ein Thema von Evian · begonnen am 7. Apr 2008 · letzter Beitrag vom 8. Apr 2008
Antwort Antwort
Seite 2 von 2     12   
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#11

Re: [MSSQL] Problem bei Konvertierung in Case-Verzweigung

  Alt 8. Apr 2008, 07:59
Zitat von omata:
... jetzt geht wieder der CONVERT-Schnack los...
Was ist den der 'CONVERT-Schnack'? Ist Schnack eine SQL-Anweisung?
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
NormanNG

Registriert seit: 1. Feb 2006
294 Beiträge
 
Delphi 2007 Professional
 
#12

Re: [MSSQL] Problem bei Konvertierung in Case-Verzweigung

  Alt 8. Apr 2008, 08:22
Hi,

Zitat:
SELECT @Nummer = COALESCE(
CONVERT(VARCHAR, dbo.tEingangsrechnung.Eingangsrechnungsnummer),
CONVERT(VARCHAR, dbo.tKassenbuchung.Belegnummer),
CONVERT(VARCHAR, tEingangsrechnung_1.Eingangsrechnungsnummer),
CONVERT(VARCHAR, dbo.tAusgangsrechnung.Ausgangsrechnungsnummer),
CONVERT(VARCHAR, dbo.tDauerauftrag.Dauerauftragsnummer),
CONVERT(VARCHAR, dbo.tSonstigeZahlungenEinnahmen.SZENummer),
CONVERT(VARCHAR, dbo.tSonstigeZahlungenAusgaben.SZANummer)
)
Stimmt, so klappt es jedenfalls bei einem Test bei mir.

Aber deine Abfrage oben hat noch ein paar andere Feher - oder ist etwas durcheinander gerüttelt. Ein gut formatierter Code hilft auch bei SQL

SQL-Code:
SELECT TOP 100 PERCENT -- eigendlich unnötig?
dbo.sUmbuchung_Anteil.*,
COALESCE (
  tEingangsrechnung_1.Eingangsrechnungsnummer,
  dbo.tKassenbuchung.Belegnummer,
  tEingangsrechnung_1.Eingangsrechnungsnummer,
  dbo.tAusgangsrechnung.Ausgangsrechnungsnummer,
  dbo.tDauerauftrag.Dauerauftragsnummer,
  dbo.tSonstigeZahlungenEinnahmen.SZENummer,
  dbo.tSonstigeZahlungenAusgaben.SZANummer,
  NULL) AS Eingangsrechnungsnummer,
  tKontenbuchung.Betrag AS RechnungBetrag,
  tKontenbuchung.Verwendung AS RechnungVerwendung,
  tKontenbuchung.Zahlungsempfaenger AS RechnungZahlungsempfaenger,
  tKontenbuchung.Buchungsdatum AS RechnungBuchungsdatum,
  dbo.tKontenbuch.PK_tKontenbuch AS PK_tKontenbuchRechnung
FROM
   dbo.tSonstigeZahlungenAusgaben
RIGHT OUTER JOIN dbo.sUmbuchung_Anteil
   ON dbo.tSonstigeZahlungenAusgaben.PK_tSonstigeZahlungenAusgaben = dbo.sUmbuchung_Anteil.FK_tSonstigeZahlungenAusgaben
LEFT OUTER JOIN dbo.tSonstigeZahlungenEinnahmen
   ON dbo.sUmbuchung_Anteil.FK_tSonstigeZahlungenEinnahmen = dbo.tSonstigeZahlungenEinnahmen.PK_tSonstigeZahlungenEinnahmen
LEFT OUTER JOIN dbo.tAusgangsrechnung
   ON dbo.sUmbuchung_Anteil.FK_tAusgangsrechnung = dbo.tAusgangsrechnung.PK_tAusgangsrechnung
LEFT OUTER JOIN dbo.tDauerauftrag
   ON dbo.sUmbuchung_Anteil.FK_tDauerauftrag = dbo.tDauerauftrag.PK_tDauerauftrag
LEFT OUTER JOIN dbo.tEingangsrechnung tEingangsrechnung_1
   ON dbo.sUmbuchung_Anteil.FK_tEingangsrechnung = tEingangsrechnung_1.PK_tEingangsrechnung
LEFT OUTER JOIN dbo.tKassenbuchung
   ON dbo.sUmbuchung_Anteil.FK_Kassenbuchung = dbo.tKassenbuchung.PK_tKassenbuchung
LEFT OUTER JOIN dbo.tKonto
------------------------------------------------------------------------ hier fehlt die bedingung <-- ????
INNER JOIN dbo.tKontenbuch
   ON dbo.tKonto.PK_tKonto = dbo.tKontenbuch.FK_tKonto
INNER JOIN dbo.tKontenbuchung tKontenbuchung
   ON dbo.tKontenbuch.PK_tKontenbuch = tKontenbuchung.FK_tKontenbuch
   ON dbo.sUmbuchung_Anteil.FK_tKontenbuchung = tKontenbuchung.PK_tKontenbuchung
LEFT OUTER JOIN dbo.tEingangsrechnung tEingangsrechnung_2
INNER JOIN dbo.tRechnung_Teilzahlung
------------------------------------------------------------------------ hier fehlt die bedingung <-- ????
INNER JOIN dbo.tKontenbuchung_Rechnung
   ON dbo.tRechnung_Teilzahlung.PK_tRechnung_Teilzahlung = dbo.tKontenbuchung_Rechnung.FK_tRechnung_Teilzahlung
INNER JOIN dbo.tRechnung
   ON dbo.tRechnung_Teilzahlung.FK_tRechnung = dbo.tRechnung.PK_tRechnung
------------------------------------------------------------------------ wo ist der join <-- ????
   ON tEingangsrechnung_2.FK_tRechnung = dbo.tRechnung.PK_tRechnung
------------------------------------------------------------------------ wo ist der join <-- ????
   ON tKontenbuchung.PK_tKontenbuchung = dbo.tKontenbuchung_Rechnung.FK_tKontenbuchung
ORDER BY tEingangsrechnung_1.Eingangsrechnungsnummer
Gruß
Norman
  Mit Zitat antworten Zitat
Benutzerbild von Evian
Evian

Registriert seit: 10. Apr 2003
Ort: Berlin
485 Beiträge
 
Delphi 6 Professional
 
#13

Re: [MSSQL] Problem bei Konvertierung in Case-Verzweigung

  Alt 8. Apr 2008, 11:08
Vielen Dank ... es funktioniert schon. Das seltsame ist, dass gar nicht der erste Parameter ein In-Wert war. Anscheinend erwartet der Server immer einen Int-Wert, wenn auch nir einer der Parameter Int ist?!
-> www.Phillsoft.de

Ich bin nun Mathematiker, aber meine Freundin bleibt trotzdem unberechenbar!
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:52 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz