![]() |
AW: Wie Update mit max() pro Gruppe
Hmm..
Mal eine andere Frage: Könnten Positionen mit der Nummer 999 nicht stornierte, somit ungültige Rechnungs-Positionen sein? Deshalb stellt sich hier eher die Frage, ob diese überhaupt gelistet werden oder sowieso keine 'echte' Positionsnummer haben, da storniert. Ansonsten müsstest Du eine temporäre Tabelle per z.B. Select insert anlegen, dort per die Position anfügen und immer die PosNr neu anhand der letzten Pos aus der Temptable vergeben. Da diese Temptable immer die höchste PosNr enthält, würde auch der Insert immer die richtige nächste PosNr verwenden. Zum Schluss würde diese TempTable als Record zurück gegeben werden oder dann als Datenquelle für den Update dienen. Hab leider kein Beispiel zur Hand.. ;) |
AW: Wie Update mit max() pro Gruppe
Zitat:
|
AW: Wie Update mit max() pro Gruppe
Zitat:
|
AW: Wie Update mit max() pro Gruppe
Ist die 999 wirklich immer am Ende der Rechnungspositionsliste?
Und wenn ja und es geht bloß um Sortierung, warum soll sie dann geändert werden, die Sortierung ändert sich dadurch nicht. (außer es sind mehr als 999 Artikel) |
AW: Wie Update mit max() pro Gruppe
Zitat:
Zitat:
|
AW: Wie Update mit max() pro Gruppe
Oder bei der Abfrage
SQL-Code:
select
<Felder ohne PosNr>, iif( PositionNr < 999; PositionNr; SELECT MAX(PositionNr) FROM RechnungPos ps WHERE ps. RechNr = p.RechNr ps.PositionNr < 999) +1 ) as PositionNr from RechnungPos p where <Bedingung>; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:50 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz