Der Chatbot hilft Ihnen bei Fragen rund um das Produkt und die Anpassbarkeit der Software. Wie bei allen AI-generierten Daten sollten die Antworten bei kritischen Informationen verifiziert werden. Nehmen Sie dafür gerne Kontakt mit uns auf. Weitere Informationen zur Verarbeitung der Chat-Daten bieten wir auf der Datenschutzseite.
Die besten Antworten liefert der Chatbot, wenn Ihr Input möglichst viele Informationen enthält. Zum Beispiel:
«Welche Apps stehen im Vertec Cloud Abo zur Verfügung?»
In der Desktop App und der Cloud App kann der Suchbegriff direkt in die Adresszeile eingegeben werden:
Eine weitere Möglichkeit in Desktop App, Cloud App und Web App ist die Navigationsansicht globale Suche:
Die Suche basiert auf einem Vertec SQL-Ordner. In diesem Ordner wird die Suche formuliert. In den Systemeinstellungen > Allgemein ist bereits ein Suchordner vordefiniert. Er heisst Vertec Suche und wird automatisch unter Öffentliche Ordner angelegt:
Damit die Suche funktioniert, muss der Rootordner mit dem Vertec Such-Ordner für den Benutzer sichtbar sein. Möchten Sie den Ordner an einem anderen Ort haben, z.B. weil die Benutzer keinen Zugriff auf die öffentlichen Ordner haben, können Sie ihn in einen anderen / neuen Rootordner verschieben, den alle Benutzer sehen, und den Pfad in den Systemeinstellungen entsprechend anpassen.
Dieser Suchordner sucht standardmässig in Adresseintrag.alias und Projekt.code, beschrieb und betreffend.
Aufbau der Suchabfrage
Da die Vertec Suche Objekte von verschiedenen Klassen liefern soll, muss als Klasse für den SQL-Ordner die gemeinsame Basisklasse aller möglichen Ergebnisobjekte verwendet werden. Die oberste Klasse und damit die Basisklasse von allen Vertec Objekten ist BusinessClassesRoot, deshalb wird als Klasse für die Vertec Suche BusinessClassesRoot angegeben.
BusinessClassesRoot jedoch hat keine Attribute definiert und erlaubt als Datenfelder via SQL nur BOLD_ID und BOLD_TYPE. Die eigentliche SQL-Abfrage muss deshalb in Unterabfragen formuliert werden, welche über den SQL-Operatoren in via Bold_ID mit der Tabelle BusinessClassesRoot verknüpft sind.
Die Syntax ist wie folgt:
((Type-Filter) and (bold_id in (select bold_id from Tabelle where Eigenschaften-Filter))
Type-Filter: Der sogenannte bold_type ist die Information, zu welcher Klasse das Objekt gehört. Jede Klasse kann also eindeutig einem bold_type zugewiesen werden. Die ganze Abfrage ist viel schneller, wenn jeweils angegeben wird, zu welchem bold_type die Objekte in der Tabelle gehören. Es kann damit auch gefiltert werden (siehe weiter unten)
Tabelle: Hier wird angegeben, in welcher Tabelle gesucht werden soll.
Eigenschaften-Filter: Die sogenannte Where-Clause. Hier wird der Eintrag mit den eingegebenen Suchbegriff verglichen.
Die Struktur der SQL sieht immer gleich aus und kann beliebig erweitert werden mit dem Befehl "or".
Standardsuche Vertec
Die Standardsuche, wie sie von Vertec mitgeliefert wird, sieht wie folgt aus:
((bold_type in (102,84,85,345,88) and exists(select 1 from adresseintrag adr where
adr.bold_id=businessclassesroot.bold_id and adr.alias like '%\1%'))) or ((bold_type=18) and
exists(select 1 from projekt proj where proj.bold_id=businessclassesroot.bold_id and (proj.code
like '%\1%' or proj.beschrieb like '%\1%' or proj.betreffend like '%\1%')))
Durchsucht das Feld Alias von allen Adressen sowie die Felder Code, Beschrieb und Betreffend von Projekten.
Standard-Suche erweitert um den Ort der Adressen
Sucht zusätzlich im Feld Ort (Standardort) von Adressen:
((bold_type in (102,84,85,345,88) and exists(select 1 from adresseintrag adr where
adr.bold_id=businessclassesroot.bold_id and (adr.alias like '%\1%' or adr.standardort like '%\1%'))))
or ((bold_type=18) and exists(select 1 from projekt proj where proj.bold_id=businessclassesroot.bold_id
and (proj.code like '%\1%' or proj.beschrieb like '%\1%' or proj.betreffend like '%\1%')))
Standard-Suche erweitert mit Aktivitäten (bold_type 304)
Sucht zusätzlich im Titel von Aktivitäten.
((bold_type in (102,84,85,345,88)) and (bold_id in (select bold_id from adresseintrag adr where adr.alias like '%\1%'))) or
((bold_type=18) and (bold_id in (select bold_id from projekt proj where proj.code like '%\1%' or proj.beschrieb like
'%\1%' or proj.betreffend like '%\1%'))) or ((bold_type in (304)) and (bold_id in (select bold_id from Aktivitaet where titel
like '%\1%')))
Standardsuche erweitert mit Phasen (bold_type 176)
Sucht zusätzlich in Code und Beschreibung von Projektphasen.
((bold_type in (102,84,85,345,88)) and (bold_id in (select bold_id from adresseintrag adr where adr.alias like '%\1%'))) or
((bold_type=18) and (bold_id in (select bold_id from projekt proj where proj.code like '%\1%' or proj.beschrieb like '%\1%' or
proj.betreffend like '%\1%'))) or ((bold_type=176) and (bold_id in (select bold_id from projektphase phase where phase.code
like '%\1%' or phase.beschreibung like '%\1%')))
Standardsuche erweitert um die Suche auf der Zusatzklasse0 (bold_type 223)
Sucht zusätzlich nach dem zusatzfeld('url') auf Zusatzklasse0.
((bold_type in (102,84,85,345,88,223) and bold_id in (select bold_id from adresseintrag adr where adr.alias like '%\1%')))
or ((bold_type=18) and bold_id in (select bold_id from projekt proj where proj.code like '%\1%' or proj.beschrieb like '%\1%'
or proj.betreffend like '%\1%')) or (bold_type=223) and bold_id in (SELECT userEintrag FROM Zusatzfeld WHERE MetaZusatzfeld in
(SELECT bold_Id from Zusatzfeldklasse WHERE fieldname="url") AND Wert like '%\1%')
Suche mit Filter
Die Suche wird nach bold_type gefiltert, damit sie schneller ist. Da gewisse (Unter-)Klassen in der Datenbank zusammen in einer Tabelle zusammengefasst sind, kann in solchen Fällen mit der bold_type auch gefiltert werden. Firmen, Kontakte, Personen, EinfacheAdressen und Paare zum Beispiel befinden sich alle in der Tabelle Adresseintrag, haben jedoch je eine unterschiedliche bold_type.
Als Beispiel wird die obige Adress-Abfrage auf Firmen und Kontakte (bold_type 84 und 85) eingeschränkt:
((bold_type in (84,85)) and bold_id in (select bold_id from adresseintrag where alias like '%\1%')))
bzw. in der Standard-Suche:
((bold_type in (84,85)) and (bold_id in (select bold_id from adresseintrag adr where adr.alias like '%\1%'))) or
((bold_type=18) and (bold_id in (select bold_id from projekt proj where proj.code like '%\1%' or proj.beschrieb like
'%\1%' or proj.betreffend like '%\1%')))
Eruieren der bold_type
Die Bold_Types sind nur in der Datenbank zu finden. Die entsprechende Tabelle heisst "bold_type", man kann also auf der Datenbank eine Abfrage machen mit "select * from bold_type".
Hier eine Auflistung der gängigsten Tabellen, Felder und bold_type:
Klassenname
bold_type
Tabelle
Felder
Firma
84
Adresseintrag
alias, name, zusatz, bemerkung
Kontakt
85
"
"
Person
88
"
"
Paar
345
"
"
Aktivitaet
304
Aktivitaet
titel, bemerkung
Projekt
18
Projekt
code, beschrieb, betreffend, bemerkung
Projektphase
176
Projektphase
code, beschreibung, bemerkung
Projektbearbeiter
33
Projektbearbeiter
name, kuerzel, bemerkung
OffeneLeistung
67
OffeneLeistung
text, bemerkung
VerrechneteLeistung
70
VerrechneteLeistung
text, bemerkung
OffeneSpesen
77
OffeneSpesen
text, bemerkung
VerrechneteSpesen
80
VerrechneteSpesen
text, bemerkung
OffeneAuslage
282
OffeneAuslage
text, bemerkung
VerrechneteAuslage
283
VerrechneteAuslage
text, bemerkung
Weitere Tabellen sind direkt in der Datenbank zu finden.