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?
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?
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.
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.