Search the FirstSpirit Knowledge Base
Hallo,
ich möchte zum Generierunszeitpunkt nach einem Inhalt bzw. einem Strukturknoten suchen, bei dem ein bestimmter Wert in den Metadaten gesetzt ist.
Z.b. Metadatenfeld = MarktID
Ideen?
Viele Dank und Gruß
David
Hi David,
ich würde mir ein kleines Modul bauen (oder ein bestehendes erweitern) und mir dort einen Search-Endpoint bauen.
Das ganze geht sicherlich auch direkt aus dem Templatecode, aber das habe ich noch nicht ausprobiert.
Per API in einem Modul geht es ungefähr wie folgt:
public void searchQueryAgent(){
BrokerAgent brokerAgent= connection.getBroker().requireSpecialist(BrokerAgent.TYPE);
SpecialistsBroker brokerByProjectId = brokerAgent.getBrokerByProjectId(mithrasEnergy.getId());
QueryAgent queryAgent = brokerByProjectId.requireSpecialist(QueryAgent.TYPE);
Iterable<IDProvider> answer = queryAgent.answer("meta.md_copyright = sucheeee");
for (IDProvider idProvider : answer) {
System.out.println(idProvider.getUid());
}
}
Siehe hierzu auch QueryAgent (FirstSpirit Developer-API) / SearchService // Finden aller nicht freigegebene Objekte / Re: WorkflowAgent in Modul
Grüße in den hohen Norden
Sandro
Hi David,
ich würde mir ein kleines Modul bauen (oder ein bestehendes erweitern) und mir dort einen Search-Endpoint bauen.
Das ganze geht sicherlich auch direkt aus dem Templatecode, aber das habe ich noch nicht ausprobiert.
Per API in einem Modul geht es ungefähr wie folgt:
public void searchQueryAgent(){
BrokerAgent brokerAgent= connection.getBroker().requireSpecialist(BrokerAgent.TYPE);
SpecialistsBroker brokerByProjectId = brokerAgent.getBrokerByProjectId(mithrasEnergy.getId());
QueryAgent queryAgent = brokerByProjectId.requireSpecialist(QueryAgent.TYPE);
Iterable<IDProvider> answer = queryAgent.answer("meta.md_copyright = sucheeee");
for (IDProvider idProvider : answer) {
System.out.println(idProvider.getUid());
}
}
Siehe hierzu auch QueryAgent (FirstSpirit Developer-API) / SearchService // Finden aller nicht freigegebene Objekte / Re: WorkflowAgent in Modul
Grüße in den hohen Norden
Sandro
Hi Sandro,
super ! Vielen Dank für die schnelle Antwort.
Der QueryAgent hat mir gefehlt, ich werde den Ansatz direkt ausprobieren.
Lieben Gruß zurück
Hi David,
kleiner Hinweis weil Du „zum Generierungszeitpunkt“ geschrieben hast: Der QueryAgent arbeitet NUR auf dem Current-Stand. D.h. je nachdem wie sich current und released Stand unterscheiden, bekommst Du u.U. „falsche“ Ergebnisse.
Viele Grüße
Michael