Funktion CreateShortName(searchPosLength)

~ 0 min
02.11.2019 11:15

Beschreibung:

Die Funktion CreateShortName(searchPosLength) erzeugt einen Kurznamen, sofern dieser noch nicht vergeben ist.
Hierzu werden Name1, Name2, Name3 herangezogen und nach der ersten Leerstelle gesucht
Um aus Grutzeck Software GmbH, Ulrich Sticker dann den Kurznamen Grutzeck Software, Sticker zu bilden.
searchPos gibt dabei die Maximale Anzahl der Stellen an, die verwendet werden, um den Kurznamen zu bilden.

Die Funktion CreateShortName(searchPosLength) kann über die Funktionsbibliothek Standard1 für eigene Makros verfügbar gemacht werden. Hierzu muss nur die Funktionsbibliothek Standard1 unter Makroincludes im Bereich Administration importiert werden. Über die Anweisung MacroInclude "Standard1" sind alle in dieser Funktionsbibliothek bereitgestellten Funktionen dann im eigenen Makrocode beliebig oft verwendbar.

Anwendungsbeispiel:

MacroInclude "Standard1"                                                
MsgBox CreateShortName(20)

Gibt, wenn der Name1 "Grutzeck Software GmbH" ist und der NameLast "Sticker" ist, "Grutzeck Software, Sticker" aus.
Um das in einen Kurznamen zu schreiben, muss ActiveRecord.Fields("Shortname").value=CreateShortName(20) gesetzt werden.

Ein bereits vorhandener Kurzname wird immer erhalten.

Die beste Position dieses Makroaufrufs ist in einem Makro beim Speichern.

Einrichtung:

Laden Sie sich die aktuelle Funktionsbibliothek Standard1 herunter und installieren Sie diese.

Vorraussetzungen:

Es muss mindestens AGVIP SQL Version 1.21.002 oder höher installiert sein um die Anweisung Macroinclude verwenden zu können.

Tipp:

Wenn ein bestehender Datensatz bislang keinen Kurznamen hatte, erscheint nach Ausführen des Makros beim Speichern auf Ebene der Adresstabelle die Frage, ob

  • der Datensatz als Kopie des bisherigen Datensatzes neu angelegt werden,
  • die ursprünglichen Were von Kurznamen und Nummer wiederhergestellt
  • oder der bestehende Datensatz unter dem neuen Kurznamen gespeichert werden soll.

Um das zu vermeiden, ergänzen den MacroCode wie folgt:

ActiveRecord.Fields("Shortname").value=CreateShortName(20)

ActiveRecord.SuppressKeyChangeDialog = true

Damit wird das Aufpoppen der Abfrage bei Änderungen des Kurznamens durch den Makro verhindert.

Durchschnittliche Bewertung 0 (0 Abstimmungen)

Kommentieren nicht möglich