SETOF als Übergabeparameter für eine Funktion möglich?

Hi,
ich weiß das man mit einem SETOF eine beliebige Anzahl an Werten eines Types zurückgeben kann, aber gibt es auch die Möglichkeit das ich eine variable Anzahl an Parametern an eine Funktion übergebe? Kann ich irgendwie ein SETOF als Übergabeparameter benutzen oder gibts da noch was anderes?

MfG Björn

Du könntest deine Funktion mehrfach definieren mit der Anzahl der Parameter, die möglich sind. Musst dann “lediglich” innerhalb der Funktion abfragen, welche Parameter nun übergeben wurden und welche nicht.

Hi, hab ich auch schon drüber nachgedacht, wäre aber sehr umständlich wenn ich das für bis zu 50 Parameter machen müsste. Die Werte sollen ja auch alle vom gleichen Typ sein, gibt es da keine einfachere Lösung?

Holla? 50 Parameter?

Ähm, was genau möchtest du da anstellen? maldummfrag

Ich möchte mit dieser Funktion Werte von Ausstattungen zu einem bestimmten Artikel auslesen können. Das Funktioniert auch. Jetzt Suche ich halt nach einer Möglichkeit das Ergebnis nach belieben zu reduzieren, indem ich die Ausstattungsids der Ausstattungen übergebe, deren Werte nicht zurückgegeben werden sollen. Ich hoffe das ist halbwegs verständlich, wüsste jetzt nicht wie ich das besser beschreiben soll. Naja, und da es sich da um über 200 mögliche Ausstattungen handelt, könnten das auch schonmal ein paar Ids werden. Obs nun unbedingt 50 werden weiss ich noch nicht genau, kann aber durchaus passieren.

Hallo Siluro,

eine negative Logik würde ich nicht verwenden!


Vielleicht hilft Dir dieser Vorschlag weiter:

Eine Tabelle für Ausstattungen mit einer eindeutigen ID für jeden Datensatz definieren. Ein Datensatz enthält die Felder aller möglichen Ausstattungen. Ausstattungen die nicht benötigt werden haben default den Wert NULL, die anderen einen entsprechenden Wert.
Beim Funktionsaufruf brauchtst Du nur noch die eindeutige ID des Datensatzes übergeben. Die Funktion kann nun den Datensatz auswerten und Dir nur die Werte liefern, die du brauchst.



mfg

fristo

fristos Vorschlag hört sich auf alle Fälle eleganter an als umständlich Parameter zusammenzusuchen …
Verleg doch die Logik dahin, wo sie hingehört.