    Адрес  = "127.0.0.1:1234";
    Логин  = "bayselonarrend";
    Пароль = "12we...";
    База   = "main";

    ПараметрыПодключения = Новый Структура("authSource", "admin");
    СтрокаПодключения    = OPI_MongoDB.СформироватьСтрокуПодключения(Адрес, , Логин, Пароль, ПараметрыПодключения);
    Соединение           = OPI_MongoDB.ОткрытьСоединение(СтрокаПодключения);

    Коллекция        = "new_collection";
    МассивДокументов = Новый Массив;

    // С неявным приведением типов
    СтруктураДокумента = Новый Структура;

    ТестовыйМассив = Новый Массив;
    ТестовыйМассив.Добавить("Значение1");
    ТестовыйМассив.Добавить("Значение2");

    ТестоваяСтруктура = Новый Структура("text,number", "Текст", 10);
    ТестовыеДвоичные  = ПолучитьДвоичныеДанныеИзСтроки("Текст");
    ТекущаяДата       = OPI_Инструменты.ПолучитьТекущуюДату();

    СтруктураДокумента.Вставить("stringField", "Текст");
    СтруктураДокумента.Вставить("intField"   , 200);
    СтруктураДокумента.Вставить("doubleField", 123.456);
    СтруктураДокумента.Вставить("boolField"  , Истина);
    СтруктураДокумента.Вставить("arrayField" , ТестовыйМассив);
    СтруктураДокумента.Вставить("docField"   , ТестоваяСтруктура);
    СтруктураДокумента.Вставить("dateField"  , ТекущаяДата);
    СтруктураДокумента.Вставить("nullField");

    МассивДокументов.Добавить(СтруктураДокумента);

    // С явным приведением типов
    СтруктураДокумента = Новый Структура;

    RegExp = Новый Структура("pattern,options", "[a-z]+@[a-z]+\.[a-z]+", "i");
    КодJS  = "const result = [1, 2, 3].map(x => x * 2).filter(x => x > 3);";

    СтруктураДокумента.Вставить("stringField", Новый Структура("__OPI_STRING__"   , "Текст"));
    СтруктураДокумента.Вставить("oidField"   , Новый Структура("__OPI_OBJECTID__" , "63ceed18f71dda7d8cf21e8e"));
    СтруктураДокумента.Вставить("jsField"    , Новый Структура("__OPI_JS__"       , КодJS));
    СтруктураДокумента.Вставить("symbolField", Новый Структура("__OPI_SYMBOL__"   , "Y"));
    СтруктураДокумента.Вставить("int32Field" , Новый Структура("__OPI_INT32__"    , 10));
    СтруктураДокумента.Вставить("int64Field" , Новый Структура("__OPI_INT64__"    , 1000));
    СтруктураДокумента.Вставить("doubleField", Новый Структура("__OPI_DOUBLE__"   , 124.456));
    СтруктураДокумента.Вставить("boolField"  , Новый Структура("__OPI_BOOLEAN__"  , Истина));
    СтруктураДокумента.Вставить("dateField"  , Новый Структура("__OPI_DATETIME__" , "1763204141"));
    СтруктураДокумента.Вставить("tsField"    , Новый Структура("__OPI_TIMESTAMP__", ТекущаяДата));
    СтруктураДокумента.Вставить("regexpField", Новый Структура("__OPI_REGEXP__"   , RegExp));
    СтруктураДокумента.Вставить("binaryField", Новый Структура("__OPI_BINARY__"   , ТестовыеДвоичные));
    СтруктураДокумента.Вставить("nullField"  , Новый Структура("__OPI_NULL__"));
    СтруктураДокумента.Вставить("minkeyField", Новый Структура("__OPI_MINKEY__"));
    СтруктураДокумента.Вставить("maxkeyField", Новый Структура("__OPI_MAXKEY__"));

    ТестовыйМассив = Новый Массив;
    ТестовыйМассив.Добавить(Новый Структура("__OPI_SYMBOL__", "A"));
    ТестовыйМассив.Добавить(Новый Структура("__OPI_MINKEY__"));

    ТестоваяСтруктура = Новый Структура("code,number"
        , Новый Структура("__OPI_JS__", "const result = 1")
        , Новый Структура("__OPI_DOUBLE__", 10));

    // Документы и массивы в структуру не оборачиваются
    СтруктураДокумента.Вставить("docField"   , ТестоваяСтруктура);
    СтруктураДокумента.Вставить("arrayField" , ТестовыйМассив);

    МассивДокументов.Добавить(СтруктураДокумента);

    Результат = OPI_MongoDB.ВставитьДокументы(Соединение, Коллекция, МассивДокументов, База);