Etiketten-App per URL aufrufen
Datenquelle, Parameter und Projekt per Link vorbelegen, z. B. aus Sage 100 heraus
Überblick
Die Etiketten-App lässt sich mit URL-Parametern öffnen und dabei komplett vorbelegen: Welche Connector-Abfrage geladen wird, mit welchen SQL-Parametern, und optional welches gespeicherte Projekt (Vorlage, Etikettenformat, Entwurf) dazu verwendet wird. Damit genügt ein Klick in Sage 100, um z. B. die Etiketten zu einem Wareneingang druckfertig auf dem Bildschirm zu haben.
https://appontes.de/etiketten-app/?projekt=Wareneingang&p_BelId=4711Die Parameternamen sind unabhängig von Groß- und Kleinschreibung; Token=… oder
P_BelId=… funktionieren also genauso.
URL-Parameter
| Parameter | Bedeutung |
|---|---|
abfrage | Name der Connector-Abfrage (Lookup), z. B. Wareneingang oder ArtikelDaten.
Die Daten werden nach dem Öffnen automatisch geladen. Alternativ ist auch query möglich. |
p_<Name> | SQL-Parameter der Abfrage. Aus p_BelId=4711 wird der Parameter @BelId
mit dem Wert 4711. Mehrere Parameter sind möglich, z. B. p_BelId=4711&p_Jahr=2026.
Zahlen werden als Zahl übergeben, alles andere als Text. |
projekt | Name oder ID eines gespeicherten Projekts. Es wird zuerst geladen und bringt Vorlage,
Etikettenformat, Entwurf und Datenquelle mit. abfrage und p_…
übersteuern anschließend dessen Datenquelle bzw. Parameter. Die sechsstellige Projekt-ID steht
in der Projektliste auf dem Start-Tab (z. B. k7m2p9); sie ist für Links die robustere
Wahl, weil sie kurz ist, keine Sonderzeichen enthält und beim Überschreiben des Projekts gleich bleibt. |
token | Connector-Token, falls es nicht bereits auf dem Gerät gemerkt ist. Das Token wird sofort nach dem Öffnen aus der Adresszeile entfernt und nicht dauerhaft gespeichert. |
tab | Ziel-Tab nach dem Öffnen: start, daten, zuordnen,
format, designer oder drucken.
Standard: drucken bei Projekt-Aufruf, sonst daten. |
nurdruck | nurdruck=1 öffnet die App als reine Druck-Ansicht: Sie startet direkt im
Drucken-Tab, alle anderen Tabs sind ausgegraut und gesperrt. Ideal für den Aufruf aus
Sage 100, wenn Anwender nur drucken und nichts verstellen sollen. Ein weiterer Aufruf
ohne nurdruck (mit projekt bzw. abfrage) hebt
die Sperre wieder auf. |
autodruck | autodruck=1 startet den Druck automatisch, sobald die Daten geladen sind.
In der Desktop-App mit aktiviertem Direktdruck geht der Auftrag ohne Dialog an den
hinterlegten Drucker bzw. in die Druck-Warteschlange, im Browser öffnet sich der
Druckdialog. Braucht projekt oder abfrage. |
Beispiele
Abfrage mit Parameter laden
/etiketten-app/?abfrage=Wareneingang&p_BelId=4711Öffnet die App im Daten-Tab, wählt die Abfrage Wareneingang und lädt die Positionen
des Belegs mit @BelId = 4711. Vorlage und Entwurf bleiben, wie sie zuletzt eingestellt waren.
Gespeichertes Projekt mit aktuellem Beleg (empfohlen)
/etiketten-app/?projekt=k7m2p9&p_BelId=4711Lädt zuerst das Projekt mit der ID k7m2p9 (Vorlage, Format, Entwurf, Spalten-Zuordnung, Filter)
und ruft dann die Daten mit der übergebenen BelId ab. Statt der ID funktioniert auch der Projektname
(?projekt=Wareneingang). Die App landet direkt im Drucken-Tab; es fehlt nur noch der Klick
auf "Drucken". So ist sichergestellt, dass die Etiketten immer gleich aussehen, egal welcher Beleg übergeben wird.
Reine Druck-Ansicht für Anwender
/etiketten-app/?projekt=k7m2p9&p_BelId=4711&nurdruck=1Wie das vorige Beispiel, aber als reine Druck-Ansicht: Die App startet im Drucken-Tab, alle anderen Tabs sind gesperrt. Anwender können blättern, zoomen und drucken, aber nichts am Projekt verstellen.
Mit Token und Ziel-Tab
/etiketten-app/?abfrage=ArtikelDaten&token=XXXX-XXXX-XXXX-XXXX&tab=druckenFür Geräte, auf denen das Token nicht gemerkt ist. Das Token verschwindet sofort aus der Adresszeile.
Aufruf der Desktop-App (etiketten://)
Die installierte Desktop-App registriert das URL-Schema etiketten://. Damit funktionieren
alle Parameter dieser Seite auch per Systemaufruf, zum Beispiel:
etiketten://oeffnen?projekt=k7m2p9&p_BelPosId=4711&autodruck=1Läuft die App bereits, übernimmt das offene Fenster Projekt und Parameter und lädt die Daten neu.
Andernfalls startet die App direkt mit dieser Vorbelegung. Mit autodruck=1 werden die
Etiketten sofort auf den in der App hinterlegten Drucker gedruckt. Der Teil nach
etiketten:// und vor dem ? ist beliebig, ausgewertet werden nur die Parameter.
Auch Projekte mit SQL-Direktverbindung als Datenquelle lassen sich so aufrufen:
Die per p_<Name> übergebenen Werte werden dann als @Parameter an die
im Projekt gespeicherte SELECT-Abfrage übergeben. Ein token ist dafür nicht nötig,
die Verbindung muss aber auf dem Gerät eingerichtet sein.
Beim allerersten Klick auf einen etiketten://-Link fragt der Browser einmalig, ob
"Appontes Etiketten" geöffnet werden darf. Mit dem Häkchen "Immer zulassen" kommt die Rückfrage
danach nicht mehr – das ist das normale Verhalten von Windows bei App-Links und keine Fehlermeldung.
In der Desktop-App laufen alle Direktdruck-Aufträge über die Druck-Warteschlange im Drucken-Tab. Sie lässt sich pausieren, damit z. B. mehrere Sage-Aufrufe erst gesammelt und dann gebündelt gedruckt werden. Einzelne Aufträge lassen sich löschen, sofort drucken oder auf einen anderen Drucker legen.
Aufruf aus Sage 100
In Sage 100 lässt sich der Link z. B. über ein Makro, einen Button im AppDesigner oder eine benutzerdefinierte Funktion öffnen. Entscheidend ist nur, die BelID des aktuellen Belegs in die URL zu übernehmen:
' VBA-Beispiel (AppDesigner-Button am EK-Beleg)
Dim url As String
url = "https://appontes.de/etiketten-app/?projekt=k7m2p9&p_BelId=" & CStr(BelID)
' Oder fuer die installierte Desktop-App:
' url = "etiketten://oeffnen?projekt=k7m2p9&p_BelId=" & CStr(BelID)
CreateObject("WScript.Shell").Run urlDer https-Link öffnet den Standardbrowser, der etiketten://-Link die installierte Desktop-App (auch wenn sie bereits läuft).
Verhalten im Detail
- Werden Parameter per
p_…übergeben, lädt die App ohne Rückfrage. Das Parameter-Fenster erscheint nur, wenn eine Abfrage Parameter erwartet, aber keine in der URL stehen; es ist dann mit den zuletzt verwendeten Werten vorbelegt. - Übergebene Parameter werden je Abfrage gemerkt und beim nächsten manuellen Laden als Vorbelegung angeboten.
- Das Projekt muss auf dem Gerät gespeichert sein, das den Link öffnet. Projekte liegen im Browser-Speicher und lassen sich über "Als Datei sichern" und "Aus Datei laden" auf andere Arbeitsplätze übertragen; die Projekt-ID bleibt dabei erhalten, derselbe Link funktioniert also auf allen Arbeitsplätzen.
- Das Connector-Token wird entweder einmalig in der App gemerkt ("Token auf diesem Gerät merken") oder
bei jedem Aufruf per
token=…mitgegeben. - Ist das aktuelle Projekt geladen, speichert die App Änderungen automatisch unter dem Projektnamen; eine per URL übergebene BelId wird dabei als zuletzt verwendeter Parameter im Projekt vermerkt.
Voraussetzung: Der Sage-Abruf nutzt den Appontes-Connector auf dem Sage-Server. Das Token bestimmt, welche Abfragen freigegeben sind. Bei Fragen zur Einrichtung einfach melden.