You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Опишите ошибку
Хочу использовать OneScript как инструмент интеграционного тестирования библиотеки для Native API. Однако при первых попытках видно различие в работе 1С и OneSscript.
Пример фрагмента кода, где ПутьКомпоненты - путь к собранному .dll x64:
Компонента успешно подключена
для "var" успешный результат: "Hello, "var"!" (Тип Строка)
для "1" успешный результат: "2" (Тип Число)
для "1.1" успешный результат: "2.2" (Тип Число)
для "Да" успешный результат: "Нет" (Тип Булево)
OneScript выдает ошибку:
Конструктор не найден (AddIn.Test.TestAddIn)
Причину ошибки смог выяснить:
Компонента в функции GetClassObject не использует непосредственные наименования классов, а сокращенные алиасы, н.п. 1, 2 и т.д. Поняв это, я смог обойти ошибку, заменив код инициализации компоненты на следющий:
После чего код запускается, однако результат не соответствует ожидаемому:
Компонента успешно подключена
для "var" успешный результат: "" (Тип Строка)
для "1" успешный результат: "0" (Тип Число)
для "1.1" успешный результат: "0" (Тип Число)
для "True" успешный результат: "True" (Тип Булево)
Также, используя редактор OneScript, при втором запуске (нажатием кнопке "Выполнить") приложение крашится.
Воспроизведение ошибки
Особых шагов не требуется.
Ожидаемое поведение
Ожидаю поведения, совпадающего с 1С платформой.
Окружение
ОС: Windows 11 Pro 22H2 22621.2215
Версия OneScript: 1.8.4.5
Версия Платформы 1С: 8.3.19.1467
Дополнительная информация
Хочу обратить внимание, что компонента использует "out параметры", т.е. работает с указателями, падающими от Платформы 1С, используя предоставляемый менеджер памяти - аллоцирует память под возвращаемую переменную, меняет указатели и деаллоцирует старую память. Однако для переенных типа число не требуется манипуляций с указателями - значение можно поменять "на месте", но даже в таком случае редактор падает.
На платформе 1С не наблюдалось нестабильной работы с такими параметрами.
The text was updated successfully, but these errors were encountered:
Опишите ошибку
Хочу использовать OneScript как инструмент интеграционного тестирования библиотеки для Native API. Однако при первых попытках видно различие в работе 1С и OneSscript.
Пример фрагмента кода, где
ПутьКомпоненты
- путь к собранному .dll x64:Данный код работает в 1С, выдавая следующее:
OneScript выдает ошибку:
Причину ошибки смог выяснить:
Компонента в функции
GetClassObject
не использует непосредственные наименования классов, а сокращенные алиасы, н.п.1
,2
и т.д. Поняв это, я смог обойти ошибку, заменив код инициализации компоненты на следющий:После чего код запускается, однако результат не соответствует ожидаемому:
Также, используя редактор OneScript, при втором запуске (нажатием кнопке "Выполнить") приложение крашится.
Воспроизведение ошибки
Особых шагов не требуется.
Ожидаемое поведение
Ожидаю поведения, совпадающего с 1С платформой.
Окружение
Дополнительная информация
Хочу обратить внимание, что компонента использует "out параметры", т.е. работает с указателями, падающими от Платформы 1С, используя предоставляемый менеджер памяти - аллоцирует память под возвращаемую переменную, меняет указатели и деаллоцирует старую память. Однако для переенных типа число не требуется манипуляций с указателями - значение можно поменять "на месте", но даже в таком случае редактор падает.
На платформе 1С не наблюдалось нестабильной работы с такими параметрами.
The text was updated successfully, but these errors were encountered: