Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (Deutsch) » MobiLink - Clientadministration » SQL Anywhere-Clients für MobiLink » Ereignis-Hooks für SQL Anywhere-Clients

 

sp_hook_dbmlsync_end

Verwenden Sie diese gespeicherte Prozedur, um benutzerdefinierte Aktionen direkt vor dem Abschluss der Synchronisation einzufügen.

Zeilen in der Tabelle #hook_dict

Name

Wert

Beschreibung

restart (out)

sync | download | none

Beim Wert sync versucht dbmlsync, die soeben abgeschlossene Synchronisation erneut auszuführen. Der Wert sync ersetzt true, der identisch ist, aber nicht mehr weiterentwickelt wird.

Beim Wert none (Standardwert) fährt dbmlsync herunter oder führt einen Neustart durch, je nach seinen Befehlszeilenargumenten. Der Wert none ersetzt false, der identisch ist, aber nicht mehr weiterentwickelt wird.

Wenn der Wert download und der Parameter für den neu startbaren Download true ist, versucht dbmlsync, den soeben fehlgeschlagenen Download erneut auszuführen.

exit code (in)

Nummer

Wenn dieser Wert einen anderen Wert als Null hat (den Standardwert), zeigt er einen Synchronisationsfehler an.

publication_n (in)

Publikation

Die synchronisierten Publikationen, wobei n eine Ganzzahl ist. Es gibt einen publication_n-Eintrag für jede Publikation im Upload. Die Nummerierung von n beginnt bei Null.

MobiLink user (in)

MobiLink-Benutzername

Der MobiLink-Benutzer, für den Sie synchronisieren

upload status (in)

not sent | committed | failed

Gibt den Status an, der vom MobiLink-Server zurückgegeben wird, wenn dbmlsync versucht, den Empfang des Uploads zu prüfen. Der Status kann sein:

  • not sent - An den MobiLink-Server wurde kein Upload gesendet, da dies entweder durch einen Fehler verhindert wurde oder weil die angeforderte Synchronisation dies nicht erforderte, zum Beispiel bei reinen Download-Synchronisationen, einem neu gestarteten Download oder einem dateibasierten Download.
  • committed - Der Upload wurde vom MobiLink-Server empfangen und festgeschrieben.
  • failed - Der MobiLink-Server hat den Upload nicht festgeschrieben. Bei einem transaktionalen Upload ist der Upload-Status 'failed', wenn nur einige der Transaktionen erfolgreich heraufgeladen und vom Server akzeptiert wurden.

script version (in)

Skriptversionsname

Die MobiLink-Skriptversion, die für die Synchronisation verwendet werden soll

restartable download (in) true|false

Wenn der Wert true lautet, ist der Download für die aktuelle Synchronisation fehlgeschlagen und kann neu gestartet werden. Wenn der Wert false ist, war der Download erfolgreich und kann nicht neu gestartet werden.

restartable download size (in) Ganzzahl

Wenn der Parameter für einen neu startbaren Download true ist, zeigt dieser Parameter die Anzahl der Byte an, die empfangen wurden, bevor der Download fehlgeschlagen ist. Ist der neu startbare Download false, dann ist dieser Wert ohne Bedeutung.

error hook user state (in) Ganzzahl

Dieser Wert enthält Informationen über Fehler und kann von folgenden Hooks gesendet werden: sp_hook_dbmlsync_all_error, sp_hook_dbmlsync_communication_error, sp_hook_dbmlsync_misc_error und sp_hook_dbmlsync_sql_error.

Bemerkungen

Wenn eine Prozedur dieses Namens vorhanden ist, wird sie am Ende jeder Synchronisation aufgerufen.

Die Aktionen dieser Prozedur werden sofort nach ihrer Ausführung festgeschrieben.

Wenn ein sp_hook_dbmlsync_end-Hook so festgelegt ist, dass der Hook den Restart-Parameter immer auf sync setzt und Sie mehrfache Publikationen in der dbmlsync-Befehlszeile in der Form '-n pub1', '-n pub2', etc. eingeben, dann synchronisiert dbmlsync wiederholt die erste Publikation und nie die zweite.

Siehe auch
Beispiele

Im folgenden Beispiel wird der Download manuell neu gestartet, wenn er für die aktuelle Synchronisation fehlgeschlagen ist und neu gestartet werden kann.

CREATE PROCEDURE sp_hook_dbmlsync_end()
BEGIN
  -- Restart the download if the download for the current sync
  --  failed and can be restarted  
  IF EXISTS (SELECT * FROM #hook_dict
    WHERE name = 'restartable download' AND value='true')
      THEN
   UPDATE #hook_dict SET value ='download' WHERE name='restart';
  END IF;
END;