Artigo
· 8 hr atrás 1min de leitura

Converter uma lista Python %SYS.Python em %Library.DynamicArray no ObjectScript

Como parte de um projeto técnico recente de documentação para otimizar a busca, precisei usar Embedded Python no meu código ObjectScript.
O principal obstáculo foi passar uma lista do Python, criada em um método de classe Python, para um método ObjectScript.

Enviar a lista por referência para o método Python, preenchê-la com o método Insert(), e retornar a referência para o método ObjectScript resultava em uma lista do tipo %SYS.Python. Esse processo era simples, mas pouco eficiente.

Explorei então um método alternativo: converter uma lista Python em uma lista ObjectScript usando JSON como formato intermediário.
Essa abordagem parece exigir menos código e oferecer melhor desempenho em tempo de execução.

 

 

No código Python:

list = ["a", "b", "c", "d"]

jsonExport = json.dumps(list)

 

 

No código ObjectScript:

jsonExport = ##class(Example.Case).GetPythonList()

set list = ##class(%DynamicAbstractObject).%FromJSON(jsonExport)

Discussão (0)1
Entre ou crie uma conta para continuar