CallMethodXML - NativeAPI — различия между версиями

Материал из razgovorov.ru
Перейти к: навигация, поиск
Строка 16: Строка 16:
 
<syntaxhighlight lang="python">
 
<syntaxhighlight lang="python">
  
query_id = str(uuid.uuid4())
 
 
module_method = "ExtSdk2.WriteDocument"
 
module_method = "ExtSdk2.WriteDocument"
 
parameters_module_method = "<object><object name="Document"></object></object>"
 
parameters_module_method = "<object><object name="Document"></object></object>"
 +
query_id = str(uuid.uuid4()) - если необходимо использовать свой uuid
  
CallMethodXML( query_id, guid_module, module_method, parameters_module_method, session_id )
+
CallMethodXML(guid_module, module_method, parameters_module_method, token, query_id)
  
 
</syntaxhighlight>
 
</syntaxhighlight>
  
 
== Ответ ==
 
== Ответ ==
 
+
a0e7e60d-e792-4f3c-9ccf-88dc95e9d1a1
 
   
 
   
 
[[Категория:NativeAPI ExtSdk2]]
 
[[Категория:NativeAPI ExtSdk2]]

Версия 11:48, 24 марта 2023

Описание

Вызов методов модуля плагина c авторизацией( с имеющимся токеном авторизации - token ). Предназначен для вызовов из 1С с передачей параметров в виде xml xzto.

Параметры

  • guid_module ! (строка) - uuid модуля полученный через GetModule()
  • module_method ! (строка) - Имя вызываемого метода модуля
  • parameters_module_method ! (строка) - xml с параметрами, сериализованный в строку
  • token ! (строка) - токен авторизации, полученный при регистрации
  • query_id ! (строка) - uuid для идентификации вызова метода( опциональный )

Результат

  • query_id ! (строка) - uuid по которому необходимо ждать ответ через вызов функции ReadAllXml

Работа с ExtSdk2 осуществляется асинхронно, поэтому ответ следует ждать через вызов функции ReadAllXml. Более подробное о получении ответов и видах событий см. в статье Виды событий. В результате должно прийти событие Message, у которого в Result лежит 'результат работы вызываемого метода.

Пример успешного вызова

module_method = "ExtSdk2.WriteDocument"
parameters_module_method = "<object><object name="Document"></object></object>"
query_id = str(uuid.uuid4()) - если необходимо использовать свой uuid

CallMethodXML(guid_module, module_method, parameters_module_method, token, query_id)

Ответ

a0e7e60d-e792-4f3c-9ccf-88dc95e9d1a1