Передать учебное количество как Java int, а текст как String

Учебные задачи

ДополнительныеДанные хранит элементы Ключ/Значение/ИмяТипа. Без явного типа число преобразуется в double; для количества 3 задаём int.

Где и как запускать

Полный модуль своей мобильной управляемой формы. Android для Intent-параметров. Только собственные данные в памяти.

Подготовка

  1. Работайте только в отдельной конфигурации УчебнаяКонфигурацияСинтаксиса на мобильном клиенте или в мобильном приложении 1С. Для уроков параметров Android используйте именно Android, не iOS и не обычный клиент Windows.

  2. Создайте учебную управляемую форму с командой ПроверитьДанные и назначьте ей приведённый обработчик. Вставьте полный модуль одного урока. Новые объекты создаются на клиенте.

  3. Это подготовка и проверка собственных данных в памяти. Код не запускает приложение, не отправляет сообщения, не читает буфер обмена устройства, контакты или чужие файлы.

  4. Все тексты вымышлены, example.invalid — учебный URI, а не рабочий сервис. HTML состоит из собственной короткой строки без скриптов и внешних ресурсов.

  5. Названия свойств и методы сверены с установленной справкой 8.5.1.1343. Поддержка устройства и отображение Android не проверены запуском этих BSL-примеров.

&НаКлиенте
Процедура ПроверитьДанные(Команда)
    Дополнения = Новый ДополнительныеДанныеЗапускаПриложенияМобильногоУстройства;
    Количество = Дополнения.Добавить("guide.quantity", 3, "int");
    Текст = Дополнения.Добавить("android.intent.extra.TEXT", "Книга: 3 × 250 = 750");
    Сообщить(Количество.Ключ = "guide.quantity");
    Сообщить(Количество.Значение = 3);
    Сообщить(Количество.ИмяТипа = "int");
    Сообщить(Текст.ИмяТипа = "");
    Сообщить(Дополнения.Получить("android.intent.extra.TEXT").Значение = "Книга: 3 × 250 = 750");
    Дополнения.Удалить("guide.quantity");
    НовоеКоличество = Дополнения.Добавить("guide.quantity", 4, "int");
    Сообщить(НовоеКоличество.Значение = 4);
    Сообщить(Дополнения.Получить("guide.quantity").Значение = 4);
    Сообщить(Количество.Значение = 3);
    Дополнения.Очистить();
    Дополнения.Добавить("guide.quantity", 1, "int");
    Сообщить(Дополнения.Получить("guide.quantity").Значение = 1);
КонецПроцедуры

Разбор по шагам

  1. Создать свою коллекцию параметров. Для guide.quantity явно передать int, для собственного текста не задавать ИмяТипа.

  2. Прочитать три readonly-свойства возвращённых элементов. Пустое ИмяТипа означает автоматический выбор, не отсутствие значения.

  3. Прочитать текст по известному существующему ключу. Не предполагать поведение Получить при неизвестном ключе.

  4. Удалить quantity и добавить новый элемент с тем же ключом и значением 4. Старый сохранённый элемент всё ещё содержит 3.

  5. Очистить собственную коллекцию, создать новый quantity=1 и прочитать его. Ни одно приложение не запускается.

Как проверить результат

  1. Девять булевых сообщений Истина: явный int, автоматический тип текста, новые значения 4 и 1 и прежний сохранённый элемент 3.

  2. Эти проверки проверяют объекты 1С; реальная доставка и принятие Java-параметров приложением не тестировались.

Ожидаемый результат

Самостоятельный пример правильного задания Java-типа и замены readonly-элемента коллекции.

На что обратить внимание

  1. Количество.Значение, Ключ и ИмяТипа нельзя присваивать после получения элемента.

  2. Не полагайтесь на double по умолчанию, если приложение требует int.

  3. Ключи guide.quantity учебные: реальное приложение должно явно поддерживать свой контракт параметров.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.