PeterWa 0 Geschrieben 14. März 2022 Melden Teilen Geschrieben 14. März 2022 Hallo und guten Morgen! Ich plage mich schon etwas länger mit einer Schleife ab. Die im Grunde funktioniert. Nur das Ergebniss ist leider nicht das was ich mir erwarte. In einer Tabelle werden alle Lieferscheine die zur Rechnung gehören gespeichert. Es sollen die Lieferscheine wie folgt angezeigt werden: 18, 19, 20 usw. Bei meiner Anwendung werden sie im Tabellenvormat angezeift. Im nachfolgender Prozedur ist die Print Anweisung nur Zum Test. im Normalfall steht dort eine Update Anweisung. Wie ich schon erwähnt habe die Schleife selbst ist das Problem nicht, Nur bei der Übergabe auf die Variable @Lieferschein gibt es ein Problem. Ich währe für einen Tipp Dankbar! mfg Peter ALTER PROC [dbo].[spRechnungLFNr] @RgNummer int as set nocount ON; DECLARE @LieferscheinNr int; DECLARE @Lieferschein VARCHAR(255); DECLARE curLieferscheinNr CURSOR FOR SELECT LieferscheinNr From dbo.tblRGLF Where rechnungnr=@Rgnummer OPEN curLieferscheinNr; FETCH NEXT FROM curLieferscheinNr INTO @LieferscheinNr; WHILE @@FETCH_STATUS = 0 BEGIN set @Lieferschein = @LieferscheinNr; set @Lieferschein = @Lieferschein +','+ @LieferscheinNr; Print @Lieferschein FETCH NEXT FROM curLieferscheinNr INTO @LieferscheinNr END CLOSE curLieferscheinNr DEALLOCATE curLieferscheinNr Wie ich schon erwähnt habe die Schleife selbst ist das Problem nicht, Nur bei der Übergabe auf die Variable @Lieferschein gibt es ein Problem. Ich währe für einen Tipp Dankbar! mfg Peter Zitieren Link zu diesem Kommentar
NilsK 2.918 Geschrieben 14. März 2022 Melden Teilen Geschrieben 14. März 2022 Moin, zunächst würde ich eine selbs erzeugte Prozedur nicht mit dem Präfix "sp" benennen. Das steht nämlich nicht für "Stored Procedure", sondern für "System Procedure". Wenn man das so reserviert lässt, fällt es leichter, die im System vordefinierten Prozeduren von den eigenen zu unterscheiden. Dann: Mir ist nicht klar, warum du hier mit einem Cursor arbeitest. Kannst du bitte mal beschreiben, was du vorhast? Gruß, Nils Zitieren Link zu diesem Kommentar
PeterWa 0 Geschrieben 14. März 2022 Autor Melden Teilen Geschrieben 14. März 2022 Hallo Nils! Zuerst besten Dank für deine Antwort. Was möchte ich damit bezwecken: Es Werden für einen Kunden Lieferscheine Erstellt. Es wird dann eine Lieferscheinrechnung erstellt. Bei der Erstellung der Lieferscheinrechnung werden die beiden Nummern in einer Tabelle gespeichert => dbo.tblRGLF. Damit der Kunde weiß wie viele Lieferscheine in dieser Rechnung verpackt sind, gibt es ein Feld "Lieferscheine" und da werden die Lieferscheine aufgezählt zB. 15, 20,25 usw. Das sollte die Procedur erledigen. mfg Peter Zitieren Link zu diesem Kommentar
NilsK 2.918 Geschrieben 14. März 2022 Melden Teilen Geschrieben 14. März 2022 Moin, gut, und welches Problem ist vor 6 Stunden schrieb PeterWa: Nur bei der Übergabe auf die Variable @Lieferschein gibt es ein Problem. genau? Spontan würde ich mal sagen, dass du die Variable @Lieferschein bei jedem Durchlauf der Schleife zurücksetzt und sie dann zweimal mit demselben Wert befüllst, getrennt durch Komma. Gruß, Nils Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.