arefaste/1C_Forums huggingface dataset:
Добрый день, помогите с запросом.
Имеется простой запрос:

```1c
    ВЫБРАТЬ
    Номенклатура.Ссылка КАК Ссылка,
    Номенклатура.Наименование КАК Наименование,
    Номенклатура.Код КАК Код
    ИЗ
    Справочник.Номенклатура КАК Номенклатура
    ГДЕ
    Номенклатура.Ссылка В ИЕРАРХИИ(&Ссылка)
    И НЕ Номенклатура.Код В (&Код)
    И Номенклатура.ЭтоГруппа = ИСТИНА
    ИТОГИ ПО
    Ссылка только ИЕРАРХИЯ
```

Пытаюсь получить в виде дерево:

```1c
    Дерево = Запрос.Выполнить().Выгрузить(СоединениеCom.ОбходРезультатаЗапроса.ПоГруппировкамСИерархией);
```

Получается не совсем дерево, а что то вроде:

|(1уровень) - Пустое значение
| (2уровень) - 1 группа
| (2уровень) - 2 группа
...
| (2уровень) - N группа

Как правильно получить в виде иерархии ?

|(1уровень) - Группа 1
| (2уровень) - группа 2
| (3уровень) - группа 3
| (2уровень) - группа 4

и т.д.
---
Получилось. Помогло упорядочивание ... не знаю как с этим связано если честно ...

```1c
    ВЫБРАТЬ
    Номенклатура.Ссылка КАК Ссылка,
    Номенклатура.Наименование КАК Наименование,
    Номенклатура.Код КАК Код
    ИЗ
    Справочник.Номенклатура КАК Номенклатура
    ГДЕ
    Номенклатура.Ссылка В ИЕРАРХИИ(&Ссылка)
    И НЕ Номенклатура.Код В (&Код)
    И Номенклатура.ЭтоГруппа = ИСТИНА

    УПОРЯДОЧИТЬ ПО Наименование

    ИТОГИ ПО
    Номенклатура.Ссылка ТОЛЬКО ИЕРАРХИЯ
```
---
Так пробовали?

```1c
    Дерево = Запрос.Выполнить().Выгрузить(СоединениеCom.ОбходРезультатаЗапроса.ПоГруппировкам);
```
---
Да, пробовал,
Результат точно такой же..
---
Дерево = Запрос.Выполнить().Выгрузить(СоединениеCom.ОбходРезультатаЗапроса.ПоГруппировкамСИерархией);
А зачем здесь "СоединениеCom"?
Может так?
Дерево = Запрос.Выполнить().Выгрузить(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией);
У меня так работает.
---
Запрос выполняется в другой базе по Com соединению. Да, по идее всё ровно должно быть, не понятно что за глюк..
---
Вообще, на первый взгляд, должно бы все хорошо быть. Могу только предложить через сортировку попробовать задачу решить.

```1c
    ВЫБРАТЬ
    Номенклатура.Ссылка КАК Ссылка
    ИЗ
    Справочник.Номенклатура КАК Номенклатура
    ГДЕ
    Номенклатура.ЭтоГруппа = ИСТИНА

    УПОРЯДОЧИТЬ ПО
    Ссылка ИЕРАРХИЯ
```

P.S. Может быть есть группа без наименования?
---
Увы, немного по другому получилось, но всё равно не получается..
Всё в куче отображается (За исключением нескольких групп)

|(1уровень) - Группа 1
|(1уровень) - группа 2
|(1уровень) - группа 3
| (2уровень) - группа 4
|(1уровень) - группа 5

хотя должно быть:

|(1уровень) - Группа 1
| (2уровень) - группа 2
| (3уровень) - группа 3
| (2уровень) - группа 4
---
Тогда остается только Номенклатура.ЭтоГруппа = ЛОЖЬ сделать
---
Так мне только группы нужны )
---
Получилось. Помогло упорядочивание ... не знаю как с этим связано если честно ...

```1c
    ВЫБРАТЬ
    Номенклатура.Ссылка КАК Ссылка,
    Номенклатура.Наименование КАК Наименование,
    Номенклатура.Код КАК Код
    ИЗ
    Справочник.Номенклатура КАК Номенклатура
    ГДЕ
    Номенклатура.Ссылка В ИЕРАРХИИ(&Ссылка)
    И НЕ Номенклатура.Код В (&Код)
    И Номенклатура.ЭтоГруппа = ИСТИНА

    УПОРЯДОЧИТЬ ПО Наименование

    ИТОГИ ПО
    Номенклатура.Ссылка ТОЛЬКО ИЕРАРХИЯ
```
Добрый день!
Документооборот 8 КОРП, редакция 2.1 (2.1.11.5)

В данном релизе (не знаю, исправили это или нет, качаю последний дистрибутив) не проставляется доступность по состоянию поля Подписан в таблице Стороны в форме внутреннего документа. Решила это исправить.
В функции Делопроизводство.ПолучитьИменаПолейИКомандДляНастройкиДоступности() добавила следующий код

```1c
    ИмяФО = Макет.Область(НомерСтроки, КолонкаФункциональнаяОпция).Текст;
    Если Не ЗначениеЗаполнено(ИмяФО) Или ПолучитьФункциональнуюОпцию(ИмяФО) Тогда
    НоваяСтрока = Таблица.Добавить();
    НоваяСтрока.ИмяПоляКоманды = ИмяПоляКоманды;
    НоваяСтрока.ПредставлениеПоляКоманды =
    Макет.Область(НомерСтроки, КолонкаПредставлениеПоляКоманды).Текст;
    НоваяСтрока.ИменаПолейНаФорме =
    Макет.Область(НомерСтроки, КолонкаИменаПолейНаФорме).Текст;
    НоваяСтрока.ИменаDMService =
    Макет.Область(НомерСтроки, КолонкаИменаDMService).Текст;
    // ++ 2021-09-21 необходимо также настраивать поле "Подписал" в тч "Стороны"
    Если ИмяПоляКоманды = "ПодписалУтвердил" И ТипДокумента = Перечисления.ТипыОбъектов.ВнутренниеДокументы Тогда
    НоваяСтрока.ИменаПолейНаФорме = НоваяСтрока.ИменаПолейНаФорме + ?(ПустаяСтрока(НоваяСтрока.ИменаПолейНаФорме), ", ", ") + "СтороныПодписан, СтороныДатаПодписи, пфкУстановитьСтатусДокументаПодписан";
    КонецЕсли;
    // -- 2021-09-21 необходимо также настраивать поле "Подписал" в тч "Стороны"
    КонецЕсли;
```

Далее по коду для недоступных полей устанавливается свойства элементов

```1c
    Если ТипЗнч(ЭлементФормы) = Тип("КнопкаФормы") Тогда
    ЭлементФормы.Доступность = Ложь;
    Иначе
    ЭлементФормы.ТолькоПросмотр = Истина;
    КонецЕсли;
```

Для команды пфкУстановитьСтатусДокументаПодписан (которую я также добавила) отрабатывает без ошибок, доступность убирается, а вот для элементов таблицы не работает, хотя в конце процедуры ПриОткрытии() у них свойство ТолькоПросмотр равно Истина.

Подскажите пожалуйста для элементов таблицы не работает свойство ТолькоПросмотр?
---
Оказалось нужно ещё группу добавить (зачем-то, но так работает))

НоваяСтрока.ИменаПолейНаФорме = НоваяСтрока.ИменаПолейНаФорме + ?(ПустаяСтрока(НоваяСтрока.ИменаПолейНаФорме), "", ", ") + "СтороныГруппаПодписанДатаПодписи, СтороныПодписан, СтороныДатаПодписи, пфкУстановитьСтатусДокументаПодписан";
---
Обновлю тему, установила этим полям свойство ТолькоПросмотр в форме и они всё равно доступны
---
Оказалось нужно ещё группу добавить (зачем-то, но так работает))

НоваяСтрока.ИменаПолейНаФорме = НоваяСтрока.ИменаПолейНаФорме + ?(ПустаяСтрока(НоваяСтрока.ИменаПолейНаФорме), "", ", ") + "СтороныГруппаПодписанДатаПодписи, СтороныПодписан, СтороныДатаПодписи, пфкУстановитьСтатусДокументаПодписан";
Есть поле формы с видом "Поле HTML документа".

Нужно проверить, прогрузилась ли страница полностью. Возможно ли так сделать?
---
Нужно проверить, прогрузилась ли страница полностью
Смотря что подразумеваете под "прогрузилась ли страница полностью". Страница может постоянно подгружать данные.
Для конкретной страницы, определить что должно быть на этой странице и проверять по нему.
---
Короче.. Сделал так Предупреждение("Идет загрузка страницы...",2) И полетело. Всем спасибо)
---
мейби сделать проверку на наличие тега </BODY>
---
Не получится. Сам Body прогружен, только при нажатии на кнопку страница обновляется, но только некоторая ее часть
---
Нужно проверить, прогрузилась ли страница полностью
Смотря что подразумеваете под "прогрузилась ли страница полностью". Страница может постоянно подгружать данные.
Для конкретной страницы, определить что должно быть на этой странице и проверять по нему.
---
Ясно, Спасибо, попробую) Как получится, напишу
---
Можно так - в событии Поля HTML - ДокументСформирован добавить условие:

```1c
    Если (Элемент.Документ <> Неопределено) И (Элемент.Документ.readyState = "complete")тогда
    //Значит прогрузилась полностью
    КонецЕсли;
```
---
Не, страница погружается, не погружается часть, но проблема решена, спасибо)
---
Еще вопрос, можно ли дождаться завершения ПодключитьОбработчикОжидания() ?
---
расшифруйте вопрос.
---
Допустим в цикле есть строка ПодключитьОбработчикОжидания("СделатьЧтоТо",1.45,Истина) и нужно что бы пока она не завершится, не выполнять следующее действие
---
нет. Это асинхронные операции. У них совсем другая логика. Они сделаны, чтобы не ожидать выполнения блока кода, который в нем вынесен.
---
А если использовать "ОжидатьЗавершение" из БСП?
---
они для фоновых заданий. Это совсем другое.
---
А если запустить мою процедуру как фоновое задание и дождаться его выполнения? Так ведь можно?
---
можно, только фоновые задания выполняются на сервере. А как я понял нужен клиентский контекст.
Пересматривайте логику бизнес-задачи.
---
Контекст клиентский)
---
если нужно ожидать выполнения, тогда зачем вызывать ПодключитьОбработчикОжидания?
Перенесите выполняемый код внутрь своего метода, на место вызова ПодключитьОбработчикОжидания.
---
Сейчас попробую
---
Короче.. Сделал так Предупреждение("Идет загрузка страницы...",2) И полетело. Всем спасибо)
Есть периодический регистр сведений. У него есть 2 ресурса - "ИмяФайла" типа "Строка" и "Подкаталог" типа "СправочникСсылка.Подкаталоги"

Требуется при группировке по какому-то третьему полю (например, по началу дня периода) получать значения файла и каталога из первой записи для каждого значения группировки (например, для каждого дня), причём и файл, и каталог должны быть из одной и той же записи.

Как тут можно извернуться без запроса в цикле?
---
Нужно делать пакетный запрос.
Одним запросом получить минимальные периоды внутри группировки, другим - значения на эти периоды.
https://infostart.ru/1c/articles/1302246/ - вот эта публикация должна подтолкнуть вас на мысли.
Если совсем не придумаете - киньте свою заготовку запроса, дорисуем недостающее.
---
вот делай прямо так, как ты пишешь !
а)

```1c
    ВЫБРАТЬ ПолеГруппировки3, МИНИМУМ(Период) КАК МинПериод ПОМЕСТИТЬ ВТ1
```

б)

```1c
    ВЫБРАТЬ *,МинПериод ИЗ Регистр
    ЛЕВОЕ СОЕДИНЕНИЕ ВТ1 ПО ВТ1.ПолеГруппировки3 = Регистр .ПолеГруппировки3
```
---
вот делай прямо так, как ты пишешь !
а)

```1c
    ВЫБРАТЬ ПолеГруппировки3, МИНИМУМ(Период) КАК МинПериод ПОМЕСТИТЬ ВТ1
```

б)

```1c
    ВЫБРАТЬ *,МинПериод ИЗ Регистр
    ЛЕВОЕ СОЕДИНЕНИЕ ВТ1 ПО ВТ1.ПолеГруппировки3 = Регистр .ПолеГруппировки3
```
---
Нужно делать пакетный запрос.
Одним запросом получить минимальные периоды внутри группировки, другим - значения на эти периоды.
https://infostart.ru/1c/articles/1302246/ - вот эта публикация должна подтолкнуть вас на мысли.
Если совсем не придумаете - киньте свою заготовку запроса, дорисуем недостающее.
---
А функций типа First()/Last() нет?
---
нет
Добрый день! Помогите пожалуйста, в решении вопроса.

Есть некая внешняя печатная форма, в модуле процедура содержащая запрос. На макете есть параметр ЦенаСоСкидкой. В этом запросе в качестве поля задано выражение со скриншота. А на закладке Объединения/Псевдонимы этому выражению соответствует наш искомый параметр ЦенаСоСкидкой.

Нужно Задать формат для вывода в печатной форме числа с 2 знаками после запятой, сейчас их там множество . Где и как это указывается в рамках запроса?
---
В запросе можно только округлить с определенной точностью, но это не означает вывод в макет с двумя знаками после запятой: 5,70 выведется как 5,7

У каждой ячейки в макете есть параметр формат, где можно задать форматную строку.

Ну и на крайний случай можно: Область.Параметры.ЦенаСоСкидкой = Формат(Выборка.ЦенаСоСкидкой,"ЧДЦ=2");
---
В запросе можно только округлить с определенной точностью, но это не означает вывод в макет с двумя знаками после запятой: 5,70 выведется как 5,7

У каждой ячейки в макете есть параметр формат, где можно задать форматную строку.

Ну и на крайний случай можно: Область.Параметры.ЦенаСоСкидкой = Формат(Выборка.ЦенаСоСкидкой,"ЧДЦ=2");
---
Спасибо большое. Формат ячейки макета самое то!!!
Подскажите пожалуйста. В унф есть уже созданный метод на вывод сообщения "Данные были изменены. Сохранить изменения?". Мне нужно чтобы при изменении созданного реквизита на форме, при закрытии на форме, выводилось это сообщение. Не могу найти его.
---
В свойстве реквизита формы установи галку в "Сохраняемые данные"
---
Да, "модифицированность = истина" так же вызовет этот вопрос
---
Нет, скорее всего нужно самому дописывать...

```1c
    &НаКлиенте
    Процедура РеквизитПриИзменении(Элемент)
    Модифицированность = Истина;
    КонецПроцедуры

    &НаКлиенте
    Процедура ПриЗакрытии()
    Если Модифицированность Тогда
    МояПроцедура()
    КонецФункции
    КонецПроцедуры

    &НаКлиенте
    Процедура МояПроцедура()
    Сообщить("Данные были изменены");
    КонецПроцедуры
```
---
В свойстве реквизита формы установи галку в "Сохраняемые данные"
---
Это можно сделать другим способом? Например, прописать модифицированность = истина или вызвать метод?
---
Да, "модифицированность = истина" так же вызовет этот вопрос
---
А метод имеется? Мне сказали, что при изменении какого-то параметра (как я понял это модифицированность) можно вызывать метод при закрытии формы. Я пытался его найти, но безуспешно. Сказали нужно прописать в ПриЗакрытии это
---
Нет, скорее всего нужно самому дописывать...

```1c
    &НаКлиенте
    Процедура РеквизитПриИзменении(Элемент)
    Модифицированность = Истина;
    КонецПроцедуры

    &НаКлиенте
    Процедура ПриЗакрытии()
    Если Модифицированность Тогда
    МояПроцедура()
    КонецФункции
    КонецПроцедуры

    &НаКлиенте
    Процедура МояПроцедура()
    Сообщить("Данные были изменены");
    КонецПроцедуры
```
---
Спасибо большое))
БП 3.0.111.

Делаю регистрацию "Зарегистрировать изменения объекта" и выбираю Подразделение, а оно не попадает в обмен.

Владелец подразделения Организация, которая участвует в обмене. Галочка у нее стоит.

Подразделение обособленное.

1 Что посоветуете ?
2 Где перехватить регистрацию изменений и добавить исключение?
---
Там в настройках где регистрируете объекты по кнопке еще есть доп настройки снимите галочки.

Выгрузка прошла и загрузка прошла. Но Подразделение в Зарплате не появилось.
---
а оно не попадает в обмен.Было такое, но в настройках обмена стояло выгружать только участвующее в документах
---
олько участвующее в документах

Такого нет
---
Там в настройках где регистрируете объекты по кнопке еще есть доп настройки снимите галочки.
---
Там в настройках где регистрируете объекты по кнопке еще есть доп настройки снимите галочки.

Выгрузка прошла и загрузка прошла. Но Подразделение в Зарплате не появилось.
---
У вас корп? А синхр по организациям настроена или может по подразделениям?
---
У вас корп? А синхр по организациям настроена или может по подразделениям?

Все Проф. Синхронизация по Организациям.
---
Пришлите скрин доп настроек про которые я вам написал
---
написал
Прислал
---
Вот выгрузка из Бухгалтерия предприятия, редакция 3.0 (3.0.111.16)
---
Еще в ЗУПе в справочнике Подразделений надо поставить галочку Показывать новые.
---
Использование миграции внизу всегда такое значение было? Не установлено
Хочу добавить кнопку на форме, чтобы при нажатии на нее открывался 2ГИС в гугле. Подскажите пожалуйста код, буду очень благодарен!
---
Помогло ваше решение в правильное русло. По кнопке сделал сам, получилось. Оказалось все очень просто)

```1c
    &НаКлиенте
    Процедура Карта(Команда)
    ПерейтиПоНавигационнойСсылке("https://2gis.ru");
    КонецПроцедуры
```
---
Добрый день!

Есть стандартный функционал, Shift+F11 ( перейти по ссылке). В открывшемся поле, набираете "https://2gis.ru" и всё...
Чем не устраивает ?
---
Спасибо, тоже вариант
---
Помогло ваше решение в правильное русло. По кнопке сделал сам, получилось. Оказалось все очень просто)

```1c
    &НаКлиенте
    Процедура Карта(Команда)
    ПерейтиПоНавигационнойСсылке("https://2gis.ru");
    КонецПроцедуры
```
Всем доброго дня!
Через расширение добавляю в справочник "Подразделения" табличную часть, содержащую всего один реквизит "Физическое лицо". Ввод данных в эту ТЧ без проблем, а при записи сообщение об ошибке: скрин прилагаю.
Может кто подскажет в чем проблема? Заранее спасибо!
---
Всем спасибо, разобрался в чем проблема.
---
какой-то реквизит не заполнили.
---
Там всего ОДИН реквизит!
---
Всем спасибо, разобрался в чем проблема.
Доброго времени суток! Если вкратце, то нужна КомандаСистемы на сервере Linux
---
Сделал вот так:

```1c
    &НаСервере
    Функция ТестНаСервере()

    ПараметрыЗапускаПрограммы = ФайловаяСистема.ПараметрыЗапускаПрограммы();
    ПараметрыЗапускаПрограммы.ПолучитьПотокВывода = Истина;
    ПараметрыЗапускаПрограммы.ДождатьсяЗавершения = Истина;
    ПараметрыЗапускаПрограммы.ПолучитьПотокОшибок = Истина;
    КомандаЗапуска = Новый Массив;
    КомандаЗапуска.Добавить("ping");
    КомандаЗапуска.Добавить("127.0.0.1");
    КомандаЗапуска.Добавить("-c");
    КомандаЗапуска.Добавить(4);
    Результат = ФайловаяСистема.ЗапуститьПрограмму(КомандаЗапуска, ПараметрыЗапускаПрограммы);
    Сообщить(Результат.ПотокВывода);

    КонецФункции
```

И заработало! Спасибо)
---
https://its.1c.ru/db/v8std/content/774/hdoc

Область применения: управляемое приложение, обычное приложение.
---
https://its.1c.ru/db/v8std/content/774/hdoc

Область применения: управляемое приложение, обычное приложение.
---
Переменная не определена (ФайловаяСистема). Код написан на сервере
---
А, погодите, это бсп... Извиняюсь)
---
Сделал вот так:

```1c
    &НаСервере
    Функция ТестНаСервере()

    ПараметрыЗапускаПрограммы = ФайловаяСистема.ПараметрыЗапускаПрограммы();
    ПараметрыЗапускаПрограммы.ПолучитьПотокВывода = Истина;
    ПараметрыЗапускаПрограммы.ДождатьсяЗавершения = Истина;
    ПараметрыЗапускаПрограммы.ПолучитьПотокОшибок = Истина;
    КомандаЗапуска = Новый Массив;
    КомандаЗапуска.Добавить("ping");
    КомандаЗапуска.Добавить("127.0.0.1");
    КомандаЗапуска.Добавить("-c");
    КомандаЗапуска.Добавить(4);
    Результат = ФайловаяСистема.ЗапуститьПрограмму(КомандаЗапуска, ПараметрыЗапускаПрограммы);
    Сообщить(Результат.ПотокВывода);

    КонецФункции
```

И заработало! Спасибо)
Доброго времени суток! Подскажите где можно посмотреть по каким правилам регистрируется объект, который создан на основании другого документа.
Стоит блок на регистрацию документа Счет-фактура. При проведении, удалении отрабатывает проверка и документ не регистрируется к выгрузки в базу БП. Но при проведении документ который является родителем этого счета-фактуры документ регистрируется и не удается найти где это происходит, прошелся по всем модулям регистрации, но так и не нашел где это происходит. Может кто знает куда смотреть?
Заранее спасибо за обратную связь!
---
Отладкой умеешь пользоваться?
Ищешь участки кода с ПланыОбменаМенеджер.ЗарегистрироватьИзменения(), разумеется конкретным менеджером объекта, и ловишь.
---
Отладкой умеешь пользоваться?
Ищешь участки кода с ПланыОбменаМенеджер.ЗарегистрироватьИзменения(), разумеется конкретным менеджером объекта, и ловишь.
Добрый день!
Подскажите, что пишу не так?
Выдаёт ошибку...(Фото прилагаю)
---
делитель равен 0.
Обработайте такую ситуацию с помощью конструкции

```1c
    ВЫБОР
    КОГДА .........
    ТОГДА .........
    ИНАЧЕ
    КОНЕЦ
```
---
делитель равен 0.
Обработайте такую ситуацию с помощью конструкции

```1c
    ВЫБОР
    КОГДА .........
    ТОГДА .........
    ИНАЧЕ
    КОНЕЦ
```
---
Спасибо
---
крутой вопрос...хотя бы ошибку полностью скопировали..

...а так деление на 0
---
Спасибо
---
ни кода не видно целиком, ни ошибки... Наверно слишком большое или слишком маленькое число получается
---
Спасибо
---
(3) (4) Даже помогать таким нет желания. Хуже только если эти скрины вставляют в word и выкладывают на сторонний ресурс, где прежде чем скачать нужно еще выбрать картинки с велосипедами.
---
Спасибо
---
Хуже этого когда даже не скриншот, а рябое/муаровое косое темное фото экрана телефоном в ворд...
---
Спасибо
---
Судя по количеству "Спасибо" - тема для Чуть$mНакрутить :)
---
Нет, просто не хочу спорить - не имеет смысла. А так, тип, высказался - получил спасибос
Так что, спасибо!
Добрый день, встала задача получения данных от водителей с их мобильных устройств в 1С. О компьютерах и планшетах естественно речь не идет, необходимо максимально простое решение для максимально неумелых пользователей (получение данных, в идеале и отправка). Подскажите пожалуйста в какую сторону копать, что лучше всего использовать в данной ситуации? Думал о обмене посредством смс или whatsapp но не смог найти более/менее расписанного рабочего способа.
P.S. Заранее спасибо за помощь.
P.P.S. УНФ, управляемые формы.
---
Думал о обмене посредством смс или whatsapp но не смог найти более/менее расписанного рабочего способа. Вот это видели?
---
не получается разобраться с чтением данных, могли бы подсказать? Что именно подсказать? В статье вроде все расписано от и до, единственное, на чем не заострено внимание - модем (точнее, его драйвера) должен эмулировать COM-порт. Но это - азы.

Номер порта и его параметры (скорость, битность и т.д) для каждой модели модема и для каждого компа свои, надо смотреть по месту в Диспетчере устройств - появляется там после подключения модема COM-порт или нет? И если появляется, то с какими параметрами?

Потом проверять их корректность в терминальной программе и, если обмен данными идет, то подставлять эти параметры в код 1C.

Как вариант, можно использовать разные методы работы с COM-портом, например: https://infostart.ru/public/1515974/
---
Думал о обмене посредством смс или whatsapp но не смог найти более/менее расписанного рабочего способа. Вот это видели?
---
Спасибо, попробую
---
Попробовал, купил usb модем с симкартой, единственное не получается разобраться с чтением данных, могли бы подсказать?
---
не получается разобраться с чтением данных, могли бы подсказать? Что именно подсказать? В статье вроде все расписано от и до, единственное, на чем не заострено внимание - модем (точнее, его драйвера) должен эмулировать COM-порт. Но это - азы.

Номер порта и его параметры (скорость, битность и т.д) для каждой модели модема и для каждого компа свои, надо смотреть по месту в Диспетчере устройств - появляется там после подключения модема COM-порт или нет? И если появляется, то с какими параметрами?

Потом проверять их корректность в терминальной программе и, если обмен данными идет, то подставлять эти параметры в код 1C.

Как вариант, можно использовать разные методы работы с COM-портом, например: https://infostart.ru/public/1515974/
---
с телеграммом проще всего сделать, мне кажется. Примеров полно
---
Телеграм-боты - великая сила в умелых руках. Современные ковровые бомбардировки основаны на серверлесс-штуковинах на каком-нить пайтоне.
---
При желании, можно и формочку нарисовать в 1С и запускать ее на телефоне в мобильной платформе.
Хотя я бы телеграмм лучше использовал. подключить бота к 1с уже не проблема. и придумать пару десятков команд для чата.
В какой момент происходит компиляция общих модулей?
---
смотря каких. Глобальных сразу при запуске приложения. Остальных, по мере первого обращения к ним.
---
смотря каких. Глобальных сразу при запуске приложения. Остальных, по мере первого обращения к ним.
---
Во время записи/сохранения.
СКД. Если убрать Автозаполнение то пропадают все поля. Как добавить поле?
---
1. Если хватает умения, то вручную написать в фигурных скобках запрос построителя
2. В конструкторе запроса, на закладке "Построитель" добавить нужные поля и условия.
---
1. Если хватает умения, то вручную написать в фигурных скобках запрос построителя
2. В конструкторе запроса, на закладке "Построитель" добавить нужные поля и условия.
---
Через компоновку данных. Там же прописываются группировки и отборы
---
Нашел. В конструкторе запроса, на закладке "Компановка данных" добавить нужные поля.