Beantwortet Frage: SQL Select Eigene Felder eines Kunden

s.broeker

Aktives Mitglied
1. März 2021
32
6
Wedel
Hallo, kann mir einer verraten, wo ich die eigenen Felder eines Kunden finde in der Datenbank direkt

Ich suche nicht die Tabelle kKundeEigenesFeld, die habe ich gefunden. Nein ich suche die eigenen Felder die in der WAWI 1.6 neu sind, hier habe ich eine Kategorie erstellt mit diversen werten, die ich gerne auslesen möchte von einem Kunden und auch bearbeiten über die SQL DB direkt.

Kann mir jemand sagen, wo ich die werde genau abfragen kann?

Update LOL ok kKundeEigenesFeld ist schon richtig, war selber grade etwas doof und hab den Wald vor Bäumen nicht gefunden


kAttribut hier findet man die Attribut-IDs
kKundeEigenesFeld hier finde ich die Attribute, die dem Kunden hinzugefügt sind


also frage hat sich damit selber erledigt ;)))
 
Zuletzt bearbeitet:

MaximilianXXL

Neues Mitglied
17. August 2022
5
0
Hallo kannst Du mir eventuell Hilfestellung geben:

Ich würde gerne bei meinem Kunden das eigene Feld ausleben und als Variable ausgeben.

Meine versuche sind bisher gescheitert, aber vielleicht ist dein Weg ja der richtige?
 

mh1

Sehr aktives Mitglied
4. Oktober 2020
1.771
536
Wo willst du den das eigene Feld ausgeben? In der Wawi oder auf einer Druckvorlage?

EDIT:
Ich sehe gerade, dass es um die 1.6 geht. Sorry, da bin ich raus- ich bin auf 1.5...
Aber als Tipp: In Druckvorlagen musst du DotLiquid benutzen, um an die Felder zu kommen. Wenn du dir aber in der Wawi eine eigene Übersicht anlegen willst, kannst du direkt SQL Code eingeben.
 
Zuletzt bearbeitet:

s.broeker

Aktives Mitglied
1. März 2021
32
6
Wedel
Wo willst du den das eigene Feld ausgeben? In der Wawi oder auf einer Druckvorlage?

EDIT:
Ich sehe gerade, dass es um die 1.6 geht. Sorry, da bin ich raus- ich bin auf 1.5...
Aber als Tipp: In Druckvorlagen musst du DotLiquid benutzen, um an die Felder zu kommen. Wenn du dir aber in der Wawi eine eigene Übersicht anlegen willst, kannst du direkt SQL Code eingeben.

Gar nichts von beiden, also es geht hier schon um die 1.6, ich arbeite mit einem externen System, worüber ich direkt zusammen mit JTL arbeite, also über die SQL DB. Habe das aber alles schon gefunden, es hat sich nur Kleinigkeiten geändert. ;)
 

MaximilianXXL

Neues Mitglied
17. August 2022
5
0
Falls hier der SQL Code zur verfügung gestellt werden könnte ,wäre das prima.
Leider bekomme ich immer nur "null" angezeigt als Variable...
 

mh1

Sehr aktives Mitglied
4. Oktober 2020
1.771
536
Falls hier der SQL Code zur verfügung gestellt werden könnte ,wäre das prima.
Ich schlage den Weg anders herum vor.
Du schreibst, was du probiert hast und was du für ein Ergebnis erwartet hättest. Und dann kann sich vielleicht hier im Forum jemand einklinken und dir was vorschlagen.

Leider bekomme ich immer nur "null" angezeigt als Variable...
Das ist jetzt eine sehr ungenaue Beschreibung.
Ist der Wert der Variable null? Und welche Variable meinst du denn? Das eigene Feld, oder eine selbsterstellte Variable?

Oft kommen sogenannte Null Werte raus, wenn du ein du zwei Felder zusammenfassen willst und eines davon hat einen NULL Wert (das ist ein logischer Wert, so wie Falsch - nicht die Ziffer Null).
Denn dann wäre eine Variable NULL und die andere NOT NULL. Und das ergibt eben NULL. Da musst du dann die erste Variable erst mit IS NOT NULL abfragen.

Poste doch mal dein SQL....
 
  • Gefällt mir
Reaktionen: s.broeker

s.broeker

Aktives Mitglied
1. März 2021
32
6
Wedel
Falls hier der SQL Code zur verfügung gestellt werden könnte ,wäre das prima.
Leider bekomme ich immer nur "null" angezeigt als Variable...

ich muss Michael zustimmen es wäre schön, wenn du mal dein SQL Code postest, schön wäre zu wissen, mit welchen abfragen werten du arbeiten möchtest Kundennummer, KundenDBId

um eigenen Felder abzufragen, benötigt man erst einmal die Interne KundenId, mit der kann man alle eigenen Felder abfragen, die zu einem Kunden gespeichert sind, wenn du ein spezielles Feld abfragen möchtest benötigt man die AttibutId

Alle Felder kannst du in der Form abfragen

SQL:
SELECT *
FROM Kunde.tKundeEigenesFeld
where kKunde = '100841'

Beispielausgabe

SQL:
kKundeEigenesFeld    kKunde    kAttribut    cWertVarchar    nWertInt    fWertDecimal    dWertDateTime    bRowversion
86547    100841    206    60/40/80/0    0    0.0000000000000    NULL    0x0000000052BDA5AE
88781    100841    306    NULL    1    0.0000000000000    NULL    0x0000000053E4E0F8
88782    100841    307    NULL    0    0.0000000000000    NULL    0x0000000053E4E0F9
88771    100841    308    NULL    1    0.0000000000000    NULL    0x0000000053E4E0FA
88772    100841    309    NULL    1    0.0000000000000    NULL    0x0000000053E4E0FB
88773    100841    310    NULL    0    0.0000000000000    NULL    0x0000000053E4E0FC


interessante Tabellen zu so einer abfrage, sind

dbo.tFeldTyp (Hier findet man die IDs um was für ein wert es sich handelt)
dbo.tAttribut (Hier findet man alle Attribute, wichtig ist die kAttribut, um ein spezielles eigenes Feld abzufragen)
dbo.tkunde (Hier kann man die kundenid abfragen z.B. mit der Kundennummer)


da ich das ja erst gelernt habe, Dank Michael hier mal eine Beispielabfrage wie man alle eigenen Felder mit einer Kundennummer abfragt

SQL:
SELECT * FROM
   (SELECT kKunde FROM dbo.tkunde WHERE cKundenNr='61012017') A
JOIN
   (SELECT * FROM Kunde.tKundeEigenesFeld ) B
ON B.kKunde = A.kKunde
 
Zuletzt bearbeitet:

christopher.paul.hamkins@

Neues Mitglied
5. August 2025
1
0
Ich hatte das gleiche Problem und das Beispiel im letzten Beitrag von s.broeker war eine große Hilfe. Mein Problem war zunächst die richtige Attribute zu finden, dafür habe ich dieses ausgeführt

SQL:
SELECT *
  FROM [dbo].[tAttribut]
  WHERE
  cGruppeName='Weitere Daten'

und könnte aus dem Ergebnis die kAttribut Werte für die gewünsche Datenfelder ermitteln. Dann habe ich die Daten geholt mit

SQL:
SELECT
       b.cKundenNr
      ,a.[kKundeEigenesFeld]
      ,a.[kAttribut]
      ,a.[cWertVarchar]
      ,a.[nWertInt]
      ,a.[fWertDecimal]
      ,a.[dWertDateTime]
  FROM [Kunde].[tKundeEigenesFeld] a,
  [dbo].tKunde b
  WHERE
  kAttribut in (510, 565, 566)
  AND a.[kKunde] = b.kKunde
  order by  b.cKundenNr, kAttribut

Man könnte diese natürlich zusammen mit einem JOIN verknüpfen, wenn der WHERE Klausel in der ersten Abfrage ausreichend genau ist (möglicherweise auf Spalte cBeschreibung).
 

Ähnliche Themen