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

Geschrieben

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

Geschrieben

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

 

Geschrieben

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

 

 

Geschrieben

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

 

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

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...