Seite 1 von 1

DbEdit() und Spaltenvorgaben

Verfasst: Do, 25. Feb 2016 10:09
von Manfred
im Moment versuche ich gerade einen Browse über DbEdit() darzustellen und gebe dabei die Spalten über aColumns vor. Was ich nur nicht verstehe ist, wie muß man das angeben? Wenn ich nur die Feldnamen eintrage, dann klappt es. Sobald ich aber den Alias davorsetze, wird nur noch endlos der 1. gefundene Satz angezeigt. Da ich aber eine Verknüpfung habe, muß ich schon die den Alias vorgeben.
so klappt es nicht

Code: Alles auswählen

aColumns := {"db1->name1","db1->name2","db2->name1"}
so klappt es.

Code: Alles auswählen

aColumns := {"name1","db1->name2","db2->name1"}

Code: Alles auswählen

DbEdit(1,1,20,20,aColumns)

Re: DbEdit() und Spaltenvorgaben

Verfasst: Do, 25. Feb 2016 10:19
von brandelh
Sobald ich aber den Alias davorsetze, wird nur noch endlos der 1. gefundene Satz angezeigt.
Die ANZEIGE und der VERWEIS funktionieren !

ABER die automatische Positionierung nicht !

Möglich, dass man das über eine relation regeln kann, oder man muss statt dem Feld eine Funktion angeben,
die die andere Tabelle positioniert und danach erst auf das Feld zugreift.

Ob das geht und ob es sinnvoll ist weiß ich nicht, dbEdit() war mir noch nie geheuer ;-)

Re: DbEdit() und Spaltenvorgaben

Verfasst: Do, 25. Feb 2016 12:35
von AUGE_OHR
Manfred hat geschrieben:im Moment versuche ich gerade einen Browse über DbEdit() darzustellen und gebe dabei die Spalten über aColumns vor. Was ich nur nicht verstehe ist, wie muß man das angeben? Wenn ich nur die Feldnamen eintrage, dann klappt es. Sobald ich aber den Alias davorsetze, wird nur noch endlos der 1. gefundene Satz angezeigt. Da ich aber eine Verknüpfung habe, muß ich schon die den Alias vorgeben.
so klappt es nicht
wie Huber schon sagte solltest du es mit einer SET RELATION versuchen.

Code: Alles auswählen

   SET RELATION TO LIEFER->FKDNR INTO kunden

      DECLARE DB_FELD[ 15 ], DB_HEAD[ 15 ]

      DB_FELD[  1 ] := "LIEFER->LIEFNR"
      DB_FELD[  2 ] := "LIEFER->RECHWAHL"
      DB_FELD[  3 ] := "LIEFER->FKDNR"
      DB_FELD[  4 ] := "DECRYPT(KUNDEN->KDNAME)"
      DB_FELD[  5 ] := "DECRYPT(KUNDEN->PLZ)"
      DB_FELD[  6 ] := "DECRYPT(KUNDEN->ORT)"
      DB_FELD[  7 ] := "DECRYPT(KUNDEN->STRASSE)"
      DB_FELD[  8 ] := "DECRYPT(KUNDEN->VORTELE)"
      DB_FELD[  9 ] := "DECRYPT(KUNDEN->TELEFON)"
      DB_FELD[ 10 ] := "LIEFER->FFTAG"
      DB_FELD[ 11 ] := "LIEFER->FFMONAT"
      DB_FELD[ 12 ] := "LIEFER->FFJAHR"
      DB_FELD[ 13 ] := "LIEFER->LAGEROK"
      DB_FELD[ 14 ] := "LIEFER->AQNR"
      DB_FELD[ 15 ] := "LIEFER->LUSER"

      DB_HEAD[  1 ] := "Liefnr"
      DB_HEAD[  2 ] := ""
      DB_HEAD[  3 ] := "Kdnr"
      DB_HEAD[  4 ] := "Kunden Name"
      DB_HEAD[  5 ] := "Plz"
      DB_HEAD[  6 ] := "Ort / Stadt"
      DB_HEAD[  7 ] := "Strasse"
      DB_HEAD[  8 ] := "Vor."
      DB_HEAD[  9 ] := "Telefon"
      DB_HEAD[ 10 ] := ""
      DB_HEAD[ 11 ] := ""
      DB_HEAD[ 12 ] := ""
      DB_HEAD[ 13 ] := ""
      DB_HEAD[ 14 ] := "Referenz"
      DB_HEAD[ 15 ] := "User"
btw. ein DbEdit wird in Xbase++ in ein TBrowse() umgesetzt.
siehe c:\ALASKA\XPPW32\SOURCE\SYS\dbedit.prg

Re: DbEdit() und Spaltenvorgaben

Verfasst: Do, 25. Feb 2016 14:05
von Manfred
irgendwie kriege ich die Pimpernellen. ich habe jetzt das Array Schritt für Schritt erweitert und immer wieder versucht. Jetzt werden die Felder angezeigt. Fragt nicht, was da jetzt anders ist.