Jump to content

Problem mit Schleife


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

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

Link zu diesem Kommentar

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

 

Link zu diesem Kommentar

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

 

 

Link zu diesem Kommentar

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

 

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...