[gelöst] Anzeigen bestimmter Kontakte

27. Januar 2011 17:01

Hallo,

ich habe da wieder mal eine Frage....

Und zwar gibt es bei uns einen Benutzer x, und auf der Kontaktkarte gibt es ein Feld "Bearbeiter", auch hier gibt es diesen benutzer x zum auswählen.

Ich möchte nun das der Benutzer wenn er in die Kontaktkarte geht nur die Kontakte sieht bei denen er auch als Bearbeiter eingetragen ist.

Also ist angemeldeter Login x dann zeige nur alle Kontakte die im Feld Bearbeiter x stehen haben.

Ist das möglich? Und wenn ja, wo ist das zu machen? Direkt in der Tabelle? :-?

Vielen Dank für eure Hilfe!!!!!

Grüße!!!
Zuletzt geändert von Yvi am 22. Februar 2011 15:23, insgesamt 1-mal geändert.

Re: Anzeigen bestimmter Kontakte

27. Januar 2011 17:07

Wenn der Bentzer x gleich seiner UserID ist, kannst du das zB beim Aufruf der Kontaktkarte aus dem Hauptmenu hinterlegen.

Re: Anzeigen bestimmter Kontakte

27. Januar 2011 17:16

Hallo,

nein also die UserID ist nicht komplett gleich mit dem zum auswählenden Bearbeiter auf der Kontaktkarte. Aber das würde sich ja im Notfall machen lassen...
Und wie mach ich das dann? :-) Im Hauptmenü, in der Form?

Vielen Dank!!!

Re: Anzeigen bestimmter Kontakte

27. Januar 2011 17:28

Im Hauptmenu ist ja unter "Kontakt" der Code hinterlegt, der die Kontaktkarte öffnet (insofern ihr technisch nicht höher gegangen seid und ich das noch richtig im Kopf habe). Irgendsowas wie
Code:
Form.run(Form::"Contact Card",Contact);

Davor müsste nur
Code:
Contact.SetRange(Benutzer,UserID);

Dieser Filter ließe sich natürlich wieder lösen. Wenn das nicht sein soll, müsste man mit einer Filtergroup arbeiten.

Re: Anzeigen bestimmter Kontakte

27. Januar 2011 17:32

Hallo,

hmm, lösen, also der Benutzer selber? Das darf nicht sein...

aber irgendwie find ich das e nicht... Kann man das in der Tabelle nicht irgendwie sagen das wenn benutzer ID XY dann zeige nur die mit Bearbeiter XY??

Re: Anzeigen bestimmter Kontakte

27. Januar 2011 17:52

Nein, auf der Tabellenebene wüsste ich nichts.

Und das mit dem Filter nicht lösen dürfen ist weniger schön. Denn dann könnte ja gar kein Anwender mehr alle Kontakte sehen. Und die Anwender, die nirgends als Bearbeiter drin stehen, sehen immer überhaupt keinen Kontakt. Und was ist, wenn ein Kollege einen anderen vertritt?

Da ist es besser, das Filtern nur auf bestimmte User oder Rollen einzuschränken, über eine Mitarbeitertabelle zu steuern oder oder.

Re: Anzeigen bestimmter Kontakte

27. Januar 2011 17:58

Ja hab das so gemeint das nur wenn der eine User angemeldet ist dann sollte er nur seine Kontakte sehen und alle anderen sehen alle...
Und er darf den Filter nicht lösen können, weil das finden Sie mit sicherheit raus... :-)

Aber so wie ich mir das vorstelle wird das wohl nicht klappen, oder? :-)

Vielen Dank!!

Re: Anzeigen bestimmter Kontakte

27. Januar 2011 18:10

Ach so ein Fall ist das. Ich wusste noch gar nicht, dass der hier gekündigt hat :mrgreen:

Na dann eben im Aufruf der Kontaktmaske auf diesen User abfragen und nur dann vorgefiltert mit Filtergroup aufrufen. Das ginge natürlich auch im OnOpen der Kontaktkarte selbst. Wäre da wohl auch besser aufgehoben. Und wenn er sonst gar keine Kontakte sehen soll, müsste das auch in die Kontaktübersicht.

Re: Anzeigen bestimmter Kontakte

31. Januar 2011 12:33

Hallo,

ok, vielen Dank schon mal. :-)

Also in direkt in die Contact Karte, ok...
Aber wie soll der Code aussehen das es klappt? Also wenn es gleich die User ID ist dann ... ? Ich bring irgendwie diesen Codeteil nicht hin, sorry!

Vielen Dank!

Grüße!!!

Re: Anzeigen bestimmter Kontakte

31. Januar 2011 12:42

In etwa so:
Code:
if DerBesagteAnwenderAmPC then begin
  filtergroup(10);
  SetRange(Benutzer,'USERID');
  filtergroup(0);
end;

Achso, das Ganze im OnOpen.

Re: Anzeigen bestimmter Kontakte

22. Februar 2011 13:10

Hallo,

leider bin ich erst jetzt wieder zu diesem Thema gekommen, deshalb die späte Rückmeldung.

Irgendwie klappt mit das nämlich nicht... Folgendes: UserID = ATest, das Feld in der Kontaktkarte heißt Zusändigkeit und hier kann man Andreas Test auswählen.

Das heißt es sollte so aussehen oder?

if DerBesagteAnwenderAmPC (also ATest) then begin
filtergroup(10);
SetRange(Benutzer,'USERID'); also Benutzer = Andreas Test und USERID wieder ATest. Versteh ich das richtig?
filtergroup(0);
end;

Auf alle Fälle kommt dann folgender Fehler: "Es wird eine Variable erwartet"

Ach Gott... Vielen Dank für die Hilfe!!!!!! :-)

Re: Anzeigen bestimmter Kontakte

22. Februar 2011 13:18

Code:
if USERID = 'ATest' then begin
  filtergroup(10);
  SetRange(Zuständigkeit,'Andreas Test');
  filtergroup(0);
end;

Das SetRange so oder so ähnlich, jedenfalls der Filter, der nicht gelöst werden können soll.

Re: Anzeigen bestimmter Kontakte

22. Februar 2011 15:23

Hallo,

jetzt funktoniert es.

Mit SETRANGE brachte er noch einen Fehler wegen dem Option Feld.
Aber mit SETFILTER hat es geklappt.

Vielen Vielen Dank!!!! :-)

Grüße!!!