UserQuery in Anywhere zeigt keine Spalten an

  • Commander
  • Commanders Avatar Autor
  • Offline
  • Junior Boarder
  • Junior Boarder
Mehr
4 Wochen 2 Tage her #2118 von Commander
UserQuery in Anywhere zeigt keine Spalten an wurde erstellt von Commander
Hallo Gemeinde,

ich habe für Anywhere eine UserQuery erstellt und eingebunden, der Eintrag wird in Anywhere auch anzeigt, offenbar wird die Abfrage auch ausgeführt weil unten steht die tatsächliche Anzahl der Datensätze welche die Abfrage auch zurück liefern soll, aber die Ansicht ist "leer" bis auf eine angedeutete Spalte ohne Daten. Ich habe schon den Browser getauscht und vieles ausprobiert, ändert sich nichts. Wo könnte ich da noch ansetzen?

Es grüßt euch
euer commander

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
4 Wochen 1 Tag her #2119 von asu
Hi commander,

ohne die Procedure gesehen zu haben, das Verhalten klingt nach Verwendung von temporären Tabellen in der Abfrage.

Die Problematik ist die, dass der InfoService bzw. Orgasoft.NET Anywhere im Vorfeld wissen müssen, welche Felder/Spalten die Query zurück liefert, und das, ohne die Query auszuführen. Dafür gibt es ab SQL 2012 eine DMV:

Beispiel:

SELECT name, system_type_name FROM sys.dm_exec_describe_first_result_set_for_object(OBJECT_ID('UserQueryXYZ'), 0)

Liefert dieses Select auf Ihre UserQuery keine Spalteninfo zurück, eben weil temp. Tabellen benutzt werden, kann keine Anzeige aufgebaut werden.

Das Problem (und ein Lösungsansatz) ist hier beschrieben (leider nur in englisch):
stackoverflow.com/questions/47926745/sql...e-is-used-sp-describ

Also entweder auf die temp. Tabellen verzichten, was vermutlich die einfachste Variante sein wird, oder, für SQL-Profis, eine Wrapper-Procedure schreiben und mit WITH RESULT SETS (…) arbeiten.

Ich hoffe ich konnte helfen

Gruß

asu


"Wer Rechtschreibfehler findet, darf sie behalten."

Bitte Anmelden oder Registrieren um der Konversation beizutreten.