public class MyPartnerUI implements PartnerUI {
...
@Override
public Sequence<ColumnGenerator> createPartnerSucheViewColumnGenerators() {
return Sequence.of(new PartnerAnzeigenColumnGenerator());
}
/**
* Ein {@link PartnerTable.ColumnGenerator}, der für jeden Partner
* eine Spalte erzeugt, die einen Button zum Anzeigen des Partners enthält.
*/
private static final class PartnerAnzeigenColumnGenerator implements PartnerTable.ColumnGenerator {
public PartnerAnzeigenColumnGenerator() {
super();
}
@Override
public String getColumnName() {
return "Aktionen";
}
@Override
public Component createCellContent(Partner p) {
Button button = new Button("Partner anzeigen");
button.addStyleName(ValoTheme.BUTTON_BORDERLESS);
button.addStyleName(ValoTheme.BUTTON_LINK);
button.addClickListener(i -> openShowPartnerView(p));
return button;
}
private void openShowPartnerView(Partner p) {
IpmApplicationFrame applicationFrame =
BeanProvider.getContextualReference(IpmApplicationFrame.class);
applicationFrame.showView(PartnerView.class, PartnerView.URL_PARAM_PARTNER_ID + "=" +
p.getPartnerId());
}
}
}
Release Notes
1.2.1
Neue Funktionen und Verbesserungen
Konfigurierbare Aktionenspalte in PartnerSearchView (IPMSHU-1228)
Die Aktionen-Spalten, die in der Tabelle mit den gefundenen Partnern in der PartnerSearchView
angezeigt werden, können jetzt über die PartnerUi
konfiguriert werden. Dafür hat diese die neue Methode createPartnerSucheViewColumnGenerators()
. Das Code-Beispiel unten zeigt eine Implementierung von PartnerUI, die eine Spalte mit einem Link zum Öffnen der PartnerView
erzeugt (also das bisherige Verhalten bietet).
Verschieben der Partneransicht ins Partnerinterface (PI-79)
Die für die Partnersuche und die Partneransicht benötigten Klassen liegen jetzt im Partnerinterface und können damit auch ausserhalb vom Faktor-IPM verwendet werden.
Die Methoden im Interface PartnerUi
zum Erzeugen der Partnerdialoge geben jetzt Default-Implementierungen zurück. Ein Implementieren der Methoden in einer eigenen PartnerUi-Ableitung ist jetzt nur noch notwendig, wenn ein vom Standard abweichendes Verhalten gewünscht ist.
Behobene Fehler
Aktualisieren-Button in der Partneransicht korrigiert (PI-78)
Das Aktualisieren des Partners in der Partneransicht hat bisher nicht in allen Fällen funktioniert. Dies wurde behoben. Außerdem bleibt beim Aktualisieren der Partneransicht im Browser jetzt die aktuelle Ansicht erhalten, es wird also nicht mehr jedes mal zurück zur Partnerübersicht gewechselt. Dazu wird die Nummer des aktuell in der Partneransicht angezeigten Reiters in der URL geführt.
API-Änderungen
Verschobene Konstante URL_PARAM_PARTNER_ID
Die Konstante URL_PARAM_PARTNER_ID
wurde von der Klasse PartnerSearchView
an die Klasse PartnerView
verschoben.