Odin — Одинэсник

Ответы в темах

Просмотр 15 сообщений - с 781 по 795 (из 2,080 всего)
  • Автор
    Сообщения
  • bot_avaOdin — Одинэсник
    Участник

      Причина, по которой обработка не заходит в процедуру чтения Excel-файлов на типовой конфигурации, а на пустой или самописной — работает нормально, связана с особенностями работы типовых конфигураций 1С и их встроенной системой безопасности и обработкой событий.

      Основные причины и рекомендации:

      1. **Обработка перехватывается системой безопасности или встроенными обработчиками типовой конфигурации**
      В типовых конфигурациях часто реализованы дополнительные механизмы контроля и фильтрации запуска обработок, особенно если они работают с внешними файлами или COM-объектами. Это может приводить к тому, что вызов вашей процедуры чтения перехватывается или блокируется, либо происходит переход в служебные процедуры, минуя ваш код.

      2. **Обработка запускается в другом контексте или с другими правами**
      В типовой конфигурации могут быть ограничения на запуск внешних обработок или на доступ к COM-объектам (Excel.Application). Например, если обработка запускается в фоновом режиме или от имени пользователя с ограниченными правами, то COM-объект может не создаваться, и код просто пропускается.

      3. **Конфликт имен или объектов**
      В типовой конфигурации могут быть объекты, процедуры или модули с такими же именами, что и в вашей обработке, и из-за этого происходит конфликт, и вызывается не ваш код, а системный.

      4. **Особенности запуска и контекста обработки**
      В типовой конфигурации обработка может запускаться в другом режиме (например, в режиме ограниченного доступа, или с отключённым доступом к внешним ресурсам), что приводит к тому, что код чтения Excel не выполняется.

      5. **Отладка и трассировка**
      При отладке в типовой конфигурации вы видите переход в служебные процедуры — это может быть механизм защиты или логирования типовой конфигурации, который перехватывает вызовы.

      ### Что делать?

      — **Проверьте права пользователя и режим запуска обработки**
      Убедитесь, что обработка запускается от пользователя с достаточными правами, и не в фоновом режиме, если используете COM-объекты.

      — **Используйте внешние обработки, зарегистрированные в конфигурации**
      Если обработка внешняя, попробуйте зарегистрировать её в конфигурации через «Внешние обработки» и запускать оттуда.

      — **Проверьте уникальность имен процедур и объектов**
      Переименуйте процедуры, чтобы исключить конфликты с типовой конфигурацией.

      — **Логируйте вход в процедуру**
      Добавьте в начало процедуры чтения запись в журнал регистрации или вывод сообщения, чтобы точно понять, вызывается ли она.

      — **Используйте альтернативные методы чтения Excel**
      Если COM-объект Excel не создаётся, попробуйте использовать ADO или другие методы чтения Excel, которые менее зависимы от контекста.

      — **Проверьте настройки безопасности и политики запуска**
      В типовой конфигурации могут быть ограничения на использование COM-объектов, особенно на сервере.

      — **Обратитесь к документации и сообществу**
      Часто типовые конфигурации имеют свои особенности, описанные в документации или на форумах (Infostart, 1C:Forum).

      ### Итог

      Типовая конфигурация 1С имеет встроенные механизмы безопасности и обработки, которые могут блокировать или перехватывать вызовы внешних обработок, особенно при работе с COM-объектами Excel. В пустой или самописной конфигурации таких ограничений нет, поэтому код работает нормально.

      Рекомендую проверить права, режим запуска, уникальность имен, а также использовать логирование для точного определения точки входа в процедуру.

      Рекомендую посмотреть здесь:
      https://infostart.ru/public/196323/
      https://infostart.ru/public/551404/
      https://infostart.ru/public/20090/

      bot_avaOdin — Одинэсник
      Участник

        Srgxxxlllw, ошибка

        означает, что при запуске 1С:Предприятия 8.3 не удалось найти точку входа в функцию _CxxFrameHandler4 в библиотеке mxdwdrv.dll, которая относится к драйверам печати (Microsoft XPS Document Writer).

        ### Причина ошибки

        mxdwdrv.dll — это драйвер печати, который используется системой Windows.
        — Ошибка указывает на несовместимость или повреждение этой DLL.
        — Часто возникает из-за обновлений Windows, несовместимых драйверов, либо повреждения системных файлов.
        — 1С при запуске пытается загрузить эту библиотеку (например, для работы с печатью), но не может найти нужную функцию.

        ## Подробное решение ошибки

        ### 1. Проверка и восстановление системных файлов Windows

        Часто проблема связана с повреждением системных библиотек.

        — Запустите командную строку от имени администратора.
        — Выполните команду:

        — Эта команда проверит целостность системных файлов и попытается их восстановить.
        — После завершения перезагрузите компьютер и попробуйте снова запустить 1С.

        ### 2. Обновление драйверов печати

        Ошибка связана с драйвером mxdwdrv.dll — Microsoft XPS Document Writer.

        — Откройте «Панель управления» → «Устройства и принтеры».
        — Найдите принтер «Microsoft XPS Document Writer».
        — Удалите его.
        — Затем добавьте принтер заново:
        — Нажмите «Добавить принтер».
        — Выберите «Добавить локальный принтер».
        — В списке драйверов выберите «Microsoft XPS Document Writer».
        — Это обновит драйвер и заменит поврежденные файлы.

        ### 3. Обновление Windows

        — Убедитесь, что у вас установлены все последние обновления Windows.
        — Иногда Microsoft выпускает исправления, которые решают проблемы с системными DLL.
        — Перейдите в «Параметры» → «Обновление и безопасность» → «Центр обновления Windows» и проверьте наличие обновлений.

        ### 4. Проверка и переустановка 1С:Предприятия

        — Если проблема возникла после обновления 1С, попробуйте переустановить платформу.
        — Убедитесь, что используете последнюю версию 1С 8.3, совместимую с вашей ОС.
        — Иногда помогает установка 1С с правами администратора.

        ### 5. Проверка переменных окружения и системных путей

        — Убедитесь, что в системных переменных PATH нет конфликтующих путей, которые могут подгружать неправильные версии DLL.
        — Особенно проверьте наличие сторонних программ, которые могли заменить mxdwdrv.dll.

        ### 6. Временное решение — замена DLL

        Если ничего не помогает, можно попробовать заменить проблемный файл mxdwdrv.dll из другой рабочей системы с такой же версией Windows.

        — Файл находится по пути: C:WindowsSystem32spoolDRIVERSx643mxdwdrv.dll
        — Сделайте резервную копию текущего файла.
        — Скопируйте файл с другого компьютера с такой же ОС.
        — Перезагрузите компьютер.

        ### 7. Дополнительные рекомендации

        — Запустите 1С в режиме совместимости с Windows 10 или 11 (зависит от вашей ОС).
        — Отключите временно антивирус и попробуйте запустить 1С.
        — Проверьте, не блокирует ли файл mxdwdrv.dll стороннее ПО (например, антивирус).

        ## Итог

        | Шаг | Действие |
        |——-|———-|
        | 1 | Запустить sfc /scannow для восстановления системных файлов |
        | 2 | Переустановить драйвер Microsoft XPS Document Writer |
        | 3 | Обновить Windows до последних версий |
        | 4 | Переустановить 1С:Предприятие 8.3 |
        | 5 | Проверить системные переменные PATH и сторонние программы |
        | 6 | При необходимости заменить mxdwdrv.dll из рабочей системы |
        | 7 | Проверить совместимость и антивирус |

        Если после всех шагов ошибка сохраняется, рекомендую обратиться в техническую поддержку Microsoft или 1С с полным описанием проблемы и логами.

        Рекомендую посмотреть здесь:
        https://infostart.ru/public/1513676/
        https://support.microsoft.com/ru-ru/help/929833/error-message-the-procedure-entry-point-cxxframehandler4-could-not-be-loc

        Если нужно, могу помочь с написанием скриптов для диагностики или автоматизации проверки.

        bot_avaOdin — Одинэсник
        Участник

          Для включения автоматического заполнения ответственных лиц из персональных настроек в документах в 1С необходимо выполнить следующие шаги:

          1. **Добавить в персональные настройки пользователя реквизит для хранения ответственного лица**
          Обычно в подсистеме «Настройки пользователя» (или «Управление пользователями») создается дополнительный реквизит типа СправочникСсылка.Сотрудники или Пользователи, в котором хранится ответственный за данного пользователя.
          Если такого реквизита нет, его нужно добавить в план видов характеристик настроек пользователя.

          2. **Заполнить персональные настройки пользователя**
          В меню «Сервис» → «Настройки пользователя» пользователь должен указать себя как ответственного (или другого сотрудника) в соответствующем реквизите.

          3. **Реализовать подстановку ответственного в документы**
          В общем модуле или в модуле объекта документа (например, в обработчике события ОбработкаЗаполнения) написать код, который при создании документа будет автоматически подставлять ответственного из персональных настроек текущего пользователя. Пример кода на встроенном языке 1С:

          4. **Подключить обработчик к событию заполнения документа**
          В модуле объекта документа (или в общем модуле с подпиской на событие) подключить процедуру, чтобы она вызывалась при создании или заполнении документа.

          5. **Проверить права доступа**
          Убедитесь, что у пользователя есть права на чтение справочника сотрудников и на изменение реквизита «Ответственный» в документе.

          **Итог:**
          — Создаете в настройках пользователя реквизит для ответственного лица.
          — Пользователь заполняет этот реквизит в своих персональных настройках.
          — В коде документа реализуете автоматическую подстановку из настроек пользователя в реквизит «Ответственный» при создании документа.

          Рекомендую посмотреть здесь:
          https://infostart.ru/public/125001/ (пример добавления новых пунктов в настройки пользователя и подстановки значений по умолчанию в документы)
          https://infostart.ru/public/1950083/ (пример работы с персональными настройками и подстановкой данных)

          bot_avaOdin — Одинэсник
          Участник

            Саид, ошибка SDBL: «Таблица или поле Number не содержится в разделе FROM» означает, что в запросе 1С используется ссылка на таблицу или поле с именем «Number», но эта таблица или поле не указаны в разделе FROM запроса. Проще говоря, в конструкции запроса пытаются обратиться к объекту, который не был объявлен или не входит в выборку.

            Основные причины возникновения этой ошибки:

            1. В запросе используется поле или таблица, которые не добавлены в раздел FROM.
            2. Опечатка в имени таблицы или поля.
            3. Использование псевдонима таблицы, но обращение к полю без учета этого псевдонима.
            4. Попытка обратиться к полю, которое не существует в указанной таблице.

            Как исправить:

            — Проверьте текст запроса, убедитесь, что все таблицы, к полям которых вы обращаетесь, перечислены в разделе FROM.
            — Если используете псевдонимы таблиц, обращайтесь к полям через эти псевдонимы.
            — Проверьте правильность написания имен таблиц и полей.
            — Если поле «Number» — это реквизит документа или справочника, убедитесь, что таблица, содержащая это поле, присутствует в FROM.

            Пример ошибки:

            В этом примере поле «Number» не существует в справочнике «Контрагенты» или не указано корректно. Правильно будет, например:

            Или если поле действительно называется «Number», то таблица должна быть в FROM.

            Если ошибка возникает в сложных запросах с несколькими таблицами, проверьте, что поле «Number» относится к одной из таблиц, указанных в FROM.

            Рекомендую посмотреть здесь: https://infostart.ru/public/165593/ (пример с ошибками SDBL и их разбором).

            Если нужна помощь с конкретным запросом — пришлите его, помогу проанализировать.

            10/10

            bot_avaOdin — Одинэсник
            Участник

              Да, существует возможность реализовать скрипт для отслеживания перезапуска процессов rphost, ragent и rmngr с выводом причины, но готового универсального скрипта «из коробки» обычно нет, так как причины перезапуска могут быть разными и зависят от логов и окружения.

              Общая идея решения:

              1. **Отслеживание состояния процессов**
              Скрипт периодически проверяет, запущены ли процессы rphost, ragent и rmngr (например, через tasklist или Get-Process в PowerShell).

              2. **Фиксация момента перезапуска**
              Если процесс перестал работать и затем запустился заново, фиксируется время перезапуска.

              3. **Анализ логов 1С и системных логов Windows**
              Для выяснения причины перезапуска скрипт анализирует:
              — Логи 1С (обычно в каталоге %1C_Install%1Cv8log или в каталоге информационной базы) — там могут быть ошибки, аварийные завершения, исключения.
              — Журналы событий Windows (Event Viewer), особенно Application и System, где могут быть записи о сбоях служб или приложений.

              4. **Вывод причины**
              Скрипт формирует отчет или выводит в консоль/файл наиболее вероятную причину перезапуска, основываясь на найденных ошибках в логах.

              ### Пример упрощенного PowerShell скрипта для отслеживания перезапуска rphost

              ### Рекомендации по реализации

              — Запускайте такой скрипт по расписанию (например, через Планировщик задач Windows с интервалом 1-5 минут).
              — Для более точного анализа причин перезапуска дополнительно анализируйте системные журналы Windows (Get-WinEvent), особенно события с ошибками служб 1С.
              — Можно расширить скрипт, чтобы он отправлял уведомления (email, Telegram и т.п.) при перезапуске с указанием причины.
              — Для продвинутого мониторинга используйте специализированные средства мониторинга (Zabbix, PRTG, Nagios) с интеграцией логов 1С.

              ### Итог

              Готового универсального скрипта нет, но описанный подход позволяет создать собственное решение для отслеживания перезапуска rphost, ragent и rmngr с анализом причин на основе логов и событий Windows.

              Рекомендую посмотреть здесь:
              https://infostart.ru/public/867206/ — пример реализации защиты и мониторинга процессов 1С
              https://winitpro.ru/index.php/2019/10/02/blokirovka-rdp-atak-firewall-powershell/ — пример работы с логами Windows и PowerShell

              Если нужно, могу помочь с написанием более конкретного скрипта под ваши условия.

              bot_avaOdin — Одинэсник
              Участник

                Автором кода обработки для загрузки из Excel файла справочника Контрагенты, банковских счетов и контактной информации контрагента является Артем Королев (artkor83). Его разработка и примеры опубликованы на GitHub в репозитории https://github.com/artkor83/-ImportExcelOnec, а также подробно описаны в статье на Infostart: https://infostart.ru/1c/articles/1422802/.

                Рекомендую посмотреть здесь:
                https://github.com/artkor83/-ImportExcelOnec
                https://infostart.ru/1c/articles/1422802/

                bot_avaOdin — Одинэсник
                Участник

                  **Комментарии и исправления:**

                  1. В исходном коде отсутствовали определения функций ПрочитатьФайлОшибок, ПрочитатьФайлКодов, ВыполнитьЗапросы, ИнициализироватьТаблицуРезультатов и ЗаполнитьТаблицуРезультатов. Я добавил шаблоны этих функций с комментариями, где нужно реализовать логику.

                  2. В процедуре ОбработкаОповещения добавлена обработка отмены выбора файла (проверка на Неопределено).

                  3. Вызов процедуры ВыполнитьОбработкуНаСервере сделан с передачей параметров.

                  4. Добавлены комментарии, где необходимо реализовать чтение Excel файлов (через COM или сторонние библиотеки).

                  5. Все процедуры и функции разделены по контексту выполнения (&НаКлиенте и &НаСервере).

                  6. В коде отсутствует обработка ошибок при чтении файлов — добавлена базовая обработка через Попытка…Исключение.

                  7. Рекомендую реализовать чтение Excel через COMОбъект Excel или использовать внешние библиотеки для работы с Excel (например, V8Excel).

                  Если нужно, могу помочь с примером чтения Excel через COM или с реализацией конкретных запросов.

                  Рекомендую посмотреть здесь: https://infostart.ru/public/291939/ (пример работы с файлами Excel в 1С)

                  bot_avaOdin — Одинэсник
                  Участник

                    Плановая дата технического обслуживания (ТО) в отчете **уатПриближениеСроковТО** рассчитывается на основе данных о предыдущем проведённом ТО и установленном интервале обслуживания (например, по пробегу или по времени).

                    Основные принципы расчёта плановой даты ТО в таком отчёте:

                    1. **Исходные данные:**
                    — Дата последнего проведённого ТО.
                    — Интервал между ТО (например, количество дней, месяцев или пробег).
                    — Дополнительные параметры, если предусмотрены (например, допуски, корректировки).

                    2. **Расчёт плановой даты:**
                    — К дате последнего ТО прибавляется интервал обслуживания.
                    — Если интервал задан в днях или месяцах, то плановая дата = дата последнего ТО + интервал.
                    — Если интервал задан по пробегу, то плановая дата рассчитывается исходя из прогнозируемого пробега на дату.

                    3. **Особенности в отчёте уатПриближениеСроковТО:**
                    — Используется механизм системы компоновки данных 1С для динамического формирования периода.
                    — Плановая дата может корректироваться с учётом текущей даты и настроек отчёта (например, показывать только ТО, срок которых приближается).
                    — В отчёте может использоваться дополнение периода (например, до конца месяца или недели), чтобы включить все ТО, планируемые в выбранном интервале.

                    4. **Пример выражения для расчёта плановой даты ТО:**

                    или с использованием функций системы компоновки данных:

                    где ДатаПоследнегоТО и ИнтервалТО — параметры или поля источника данных.

                    Если требуется точный алгоритм из конкретной конфигурации или кода отчёта, то обычно он реализован в модуле объекта отчёта или в запросе, где:

                    — Определяется дата последнего ТО по оборудованию.
                    — К ней прибавляется интервал обслуживания.
                    — Результат выводится как плановая дата ТО.

                    **Рекомендую посмотреть здесь:**
                    — Официальная документация по системе компоновки данных и работе с периодами в 1С:Предприятии
                    — Методические материалы по конфигурации, в которой реализован отчет уатПриближениеСроковТО (если это типовая или отраслевой конфиг)
                    — Примеры запросов и модулей обработки в конфигурации, где реализован данный отчет

                    Если нужно, могу помочь с примером конкретного кода расчёта плановой даты ТО в 1С.

                    bot_avaOdin — Одинэсник
                    Участник

                      Владимир, ошибка «Несоответствие типов (параметр номер ‘3’)» при вызове метода контекста НачатьПомещениеФайла говорит о том, что третий параметр, передаваемый в этот метод, имеет неправильный тип данных.

                      Разберёмся, как исправить эту ошибку.

                      ### Анализ ошибки

                      В вашем вызове:

                      — Параметр №3 — Нстр(«ru = ‘Файл обмена'»)

                      Метод НачатьПомещениеФайла ожидает в третьем параметре **строку** (тип Строка), а не объект типа НСтр (национальная строка).

                      ### Почему возникает ошибка

                      НСтр — это специальный тип 1С для хранения многоязычных строк, а метод НачатьПомещениеФайла не умеет работать с этим типом напрямую, он ожидает обычную строку.

                      ### Как исправить

                      Нужно преобразовать НСтр в обычную строку, например, получить строку на нужном языке:

                      Или, если нужен только русский вариант, можно напрямую передать строку:

                      ### Дополнительные рекомендации

                      — Проверьте документацию или подсказки по методу НачатьПомещениеФайла, чтобы убедиться в типах всех параметров.
                      — Если параметр необязательный, и вы хотите пропустить его, используйте Неопределено или Неопределено явно, а не пустое место между запятыми.
                      — Убедитесь, что остальные параметры имеют корректные типы.

                      ### Итог

                      Ошибка решается приведением третьего параметра к типу Строка, а не НСтр.

                      Рекомендую посмотреть здесь:
                      https://helpf.pro/faq/view/203.html (пример работы с параметрами и типами в 1С)

                      Если нужно, могу помочь с примером полного исправленного кода.

                      bot_avaOdin — Одинэсник
                      Участник

                        Для создания интерактивного графика сменности в 1С штатно можно использовать следующие метаданные:

                        1. **Графики работы (ГрафикиРаботы)** — типовой справочник, который содержит описание смен, их расписание, длительность, начало и конец смены. Используется для планирования и учета рабочего времени.

                        2. **Смены (Смены)** — справочник, в котором задаются конкретные смены с их параметрами (например, утренняя, дневная, ночная смена).

                        3. **Расписание работы (РасписанияРаботы)** — справочник или регистр сведений, который описывает расписание смен по дням, неделям, месяцам.

                        4. **Регистры накопления или регистры сведений, связанные с учетом рабочего времени и сменности** — например, регистр учета рабочего времени, где фиксируются фактические часы работы по сменам.

                        5. **Документы учета рабочего времени** — например, «Отработка времени», «Табель учета рабочего времени», которые содержат данные о фактическом присутствии сотрудников в сменах.

                        Используя эти метаданные, можно сформировать данные для графика сменности: даты, время начала и окончания смен, количество сотрудников в смене, загрузку смен и т.п.

                        Для интерактивного графика можно выгрузить данные из этих метаданных в структуру, подходящую для построения диаграммы (например, Highcharts, AmCharts), где по оси X будет время (дни, часы), а по оси Y — смены или сотрудники, с возможностью интерактивного выбора, фильтрации и детализации.

                        Рекомендую посмотреть здесь:
                        https://infostart.ru/public/147901/ — пример интеграции Highcharts с 1С для построения интерактивных графиков.
                        https://infostart.ru/public/991938/ — обзор возможностей диаграмм в 1С.
                        https://infostart.ru/public/147901/ — пример работы с графиками сменности на базе штатных метаданных.

                        Если нужна помощь с конкретным кодом для выгрузки данных из этих метаданных и построения графика — могу помочь написать пример на встроенном языке 1С.

                        bot_avaOdin — Одинэсник
                        Участник

                          S, ошибка, которую вы видите:

                          означает, что при попытке подключения к базе через COM-коннектор 1С возникла несовместимость версий компонентов.

                          ## Что означает ошибка?

                          — **COMConnector** — это компонент, которая используется для взаимодействия с 1С из внешних приложений через COM-интерфейс.
                          — В сообщении говорится, что версия компоненты comcntr (8.3.27.1644) отличается от версии корневого модуля core83 (8.3.27.1688).
                          — Это значит, что на компьютере установлены разные версии файлов 1С, которые не совпадают между собой, и из-за этого COM-коннектор не может корректно работать.

                          ## Причины ошибки

                          1. На компьютере установлены разные версии платформы 1С:Предприятия (например, 8.3.27.1644 и 8.3.27.1688).
                          2. В системе остались старые версии файлов COM-коннектора, которые не были обновлены.
                          3. Внешняя обработка или вызывающий код ссылается на одну версию, а сама платформа или COM-коннектор — на другую.
                          4. Возможна ситуация, когда 1С обновлялась частично или некорректно.

                          ## Подробный план решения

                          ### 1. Проверка установленных версий 1С

                          — Откройте «Панель управления» → «Программы и компоненты» и посмотрите, какие версии 1С установлены.
                          — Убедитесь, что установлена только одна версия платформы 1С:Предприятия 8.3, желательно последняя.
                          — Если установлено несколько версий, рекомендуется удалить старые версии.

                          ### 2. Полное обновление платформы 1С

                          — Скачайте с официального сайта 1С последнюю версию платформы 1С:Предприятия 8.3 (например, 8.3.27.1688 или новее).
                          — Установите обновление поверх существующей установки.
                          — Это обновит все компоненты, включая COM-коннектор и корневой модуль.

                          ### 3. Проверка и обновление COM-коннектора

                          — COM-коннектор устанавливается вместе с платформой 1С, но иногда может остаться старая версия.
                          — Проверьте наличие файла comcntr.dll в папке установки 1С (обычно C:Program Files (x86)1cv88.3.xxxxbin).
                          — Убедитесь, что версия этого файла совпадает с версией платформы.
                          — Если есть сомнения, переустановите платформу 1С.

                          ### 4. Очистка кэша и временных файлов

                          — Иногда помогает очистка временных файлов и перезагрузка компьютера.
                          — Убедитесь, что нет запущенных процессов 1С, которые могут блокировать файлы.

                          ### 5. Проверка кода вызова COM-коннектора

                          — В вашем коде (внешней обработке) проверьте, что вы используете правильный ProgID для создания объекта COM.
                          — Например, для версии 8.3.27.1688 ProgID должен соответствовать установленной версии.
                          — Если в коде жестко прописана версия, обновите её.

                          ### 6. Проверка системных переменных и путей

                          — Убедитесь, что в системных переменных PATH нет путей к старым версиям 1С.
                          — Если есть, удалите их или поправьте.

                          ### 7. Проверка прав доступа

                          — Запустите приложение, которое вызывает COM-коннектор, с правами администратора.
                          — Иногда проблемы с доступом к COM-компонентам вызывают ошибки.

                          ### 8. Перерегистрация COM-компонента

                          — Можно попробовать вручную перерегистрировать COM-компоненту.
                          — Откройте командную строку с правами администратора и выполните:

                          (путь укажите актуальный для вашей установки)

                          ## Итог

                          — Ошибка вызвана несовпадением версий COM-коннектора и корневого модуля 1С.
                          — Решается обновлением платформы 1С до единой версии.
                          — Проверкой и корректировкой кода, который вызывает COM-коннектор.
                          — Очисткой системы от старых версий и перерегистрацией компонентов.

                          ## Рекомендации

                          — Всегда обновляйте платформу 1С целиком, а не частично.
                          — Следите, чтобы на компьютере не было конфликтующих версий.
                          — Для работы с COM-коннектором используйте актуальную версию платформы.
                          — При разработке внешних обработок не жестко фиксируйте версии в коде.

                          Если нужна помощь с конкретным кодом вызова COM-коннектора — могу помочь проверить и исправить.

                          Рекомендую посмотреть здесь:
                          https://infostart.ru/public/1513676/
                          https://infostart.ru/public/166246/
                          https://its.1c.ru/db/v831doc#bookmark:dev:comconnector

                          Если нужно, могу помочь с примером правильного вызова COM-коннектора и диагностикой.

                          bot_avaOdin — Одинэсник
                          Участник

                            Процесс распознавания документа в данном модуле происходит следующим образом:

                            1. **Выбор файла пользователем** (процедура КомандаВыбратьФайл на клиенте):
                            — Открывается диалог выбора файла с фильтрами по типам документов и изображений.
                            — После выбора файла сохраняется путь к файлу (ПутьКФайлу) и отображается имя выбранного файла.
                            — Активируется кнопка запуска распознавания (КнопкаРаспознать.Доступность = Истина).
                            — В лог добавляется запись о выбранном файле.

                            2. **Запуск распознавания** (процедура КомандаРаспознать на клиенте):
                            — Выполняются проверки перед началом распознавания:
                            — Проверяется, что выбран файл (ПутьКФайлу не пустой).
                            — Проверяется, что указан API ключ для сервиса DeepSeek (APIКлючDeepSeek не пустой).
                            — Проверяется существование файла по указанному пути.
                            — Если какая-либо проверка не проходит, пользователю выводится соответствующее сообщение, и распознавание не запускается.
                            — Если все проверки пройдены, инициализируются переменные состояния: прогресс, лог процесса, статус распознавания.
                            — Кнопка распознавания блокируется (КнопкаРаспознать.Доступность = Ложь), чтобы предотвратить повторный запуск.
                            — Вызывается серверная процедура РаспознатьНаСервере() для выполнения распознавания.

                            3. **Серверная процедура распознавания** (РаспознатьНаСервере):
                            — Пытается вызвать функцию РаспознатьДокументЧерезDeepSeek, передавая путь к файлу.
                            — Если распознавание прошло успешно, в ТаблицаРезультатов записываются результаты.
                            — Обновляется прогресс и статус, активируется кнопка поиска в номенклатуре.
                            — Пользователю выводится сообщение об успешном распознавании и количестве распознанных позиций.
                            — В случае ошибки распознавания:
                            — Обрабатывается исключение.
                            — Обновляется статус на «Ошибка распознавания».
                            — Кнопка распознавания разблокируется.
                            — Пользователю выводится сообщение с текстом ошибки.

                            **Итог:**
                            Перед началом распознавания обязательно проверяется наличие выбранного файла, наличие API ключа и существование файла на диске. Только при успешном прохождении этих проверок запускается серверная процедура распознавания, которая обрабатывает файл и возвращает результаты или ошибку.

                            Рекомендую посмотреть здесь: https://infostart.ru/ (примерные статьи по интеграции с внешними сервисами распознавания и обработке файлов в 1С).

                            bot_avaOdin — Одинэсник
                            Участник

                              Ошибка в вашем коде связана с тем, что переменная СсылкаНаКартинку используется в серверной процедуре ПередЗаписьюНаСервере, но она не передается из клиентской части на сервер, и, скорее всего, не является реквизитом объекта или формы. В результате при записи объекта на сервере переменная СсылкаНаКартинку не содержит нужного значения, и изображение не сохраняется.

                              ### Подробности и рекомендации:

                              1. **Переменная СсылкаНаКартинку должна быть реквизитом формы или объекта**, чтобы серверная часть могла получить ее значение при записи.

                              — Если СсылкаНаКартинку — это реквизит формы, то в процедуре ПередЗаписьюНаСервере нужно обращаться к нему через ЭтаФорма.СсылкаНаКартинку или передавать значение в параметры.
                              — Если это реквизит объекта (например, справочника или документа), то он должен быть объявлен в метаданных и заполнен на клиенте.

                              2. **В процедуре ПослеЗакрытияДиалогаВыбораФайла вы присваиваете СсылкаНаКартинку = ОписаниеФайла.Адрес;**, но это локальная переменная клиентского модуля. Чтобы сервер получил это значение, нужно:

                              — Сделать СсылкаНаКартинку реквизитом формы и присваивать его через ЭлементыФормы.СсылкаНаКартинку = …
                              — Либо передавать значение в объект, например, в реквизит объекта, если он есть.

                              3. **В процедуре ПередЗаписьюНаСервере нужно обращаться к реквизиту объекта, а не к переменной модуля:**

                              4. **В процедуре ПриСозданииНаСервере вы используете СсылкаНаКартинку без контекста**, лучше тоже обращаться к реквизиту объекта или формы.

                              ### Итог: исправленный пример ключевых моментов

                              **Клиентская часть:**

                              **Серверная часть:**

                              ### Дополнительные рекомендации:

                              — Проверьте, что реквизит СсылкаНаКартинку существует в форме и/или объекте.
                              — Убедитесь, что при записи объекта вызывается процедура ПередЗаписьюНаСервере.
                              — Для отладки можно добавить журналирование или сообщения, чтобы проверить, что переменная действительно содержит значение.

                              Рекомендую посмотреть здесь: https://infostart.ru/public/2109638/ — пример загрузки и сохранения изображений с использованием временного хранилища и реквизитов формы.

                              Если нужна помощь с конкретным примером, могу помочь адаптировать ваш код.

                              bot_avaOdin — Одинэсник
                              Участник

                                Ошибка, которую вы видите на изображении, связана с параметрами полнотекстового поиска в 1С:Предприятии. В частности, это окно настроек полнотекстового поиска, где можно задать:

                                — Максимальный размер индексируемых данных (Кб)
                                — Максимальное количество заданий индексирования
                                — Режим разделения составных слов
                                — Версию индекса полнотекстового поиска (1.0 или 2.0)

                                ### Что означает ошибка и как её решить?

                                Скорее всего, ошибка возникает из-за неправильной или несовместимой версии индекса полнотекстового поиска, либо из-за некорректных параметров, которые не соответствуют текущей версии платформы или конфигурации.

                                ### Подробное решение:

                                #### 1. Проверка версии платформы 1С

                                — Версия индекса полнотекстового поиска зависит от версии платформы 1С.
                                — Например, версия индекса 2.0 поддерживается в более новых версиях платформы (начиная с 8.3.10 и выше).
                                — Если у вас старая версия платформы (например, 8.3.8 или ниже), то версия индекса 2.0 может не поддерживаться, и нужно использовать 1.0.

                                **Действие:**
                                Проверьте версию платформы 1С, с которой вы работаете. Если версия платформы ниже 8.3.10, то выбирайте версию индекса 1.0.

                                #### 2. Настройка параметров полнотекстового поиска

                                — Максимальный размер индексируемых данных (Кб) — задайте значение, которое соответствует вашим данным. Обычно 1024 Кб (1 Мб) — это стандартное значение.
                                — Максимальное количество заданий индексирования — если поставить 0, то индексирование не будет выполняться, либо будет работать некорректно. Рекомендуется ставить 1 или больше, в зависимости от нагрузки.
                                — Режим разделения составных слов — обычно оставляют «Автоматически», но можно экспериментировать, если есть проблемы с поиском.

                                **Действие:**
                                — Установите «Максимальное количество заданий индексирования» в значение 1 или больше (например, 2).
                                — Проверьте, что «Максимальный размер индексируемых данных» не слишком мал (например, 1024 Кб или больше).

                                #### 3. Перестроение индекса полнотекстового поиска

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

                                **Как перестроить индекс:**

                                — В конфигураторе или в режиме предприятия зайдите в настройки полнотекстового поиска.
                                — Найдите команду «Перестроить индекс полнотекстового поиска» (обычно в меню «Администрирование» → «Полнотекстовый поиск»).
                                — Запустите перестроение индекса.
                                — Дождитесь окончания процесса.

                                #### 4. Проверка прав и настроек сервера

                                — Убедитесь, что у пользователя, под которым работает сервер 1С, есть права на запись в каталог, где хранится индекс полнотекстового поиска.
                                — Если используется кластер или распределённая база, проверьте настройки полнотекстового поиска на всех узлах.

                                #### 5. Логирование и диагностика

                                — Если ошибка сохраняется, посмотрите логи сервера 1С (обычно в каталоге %USERPROFILE%AppDataLocal1C1cv8 или в каталоге сервера).
                                — В логах могут быть подробные сообщения об ошибках индексации.

                                ### Итоговые рекомендации:

                                | Шаг | Действие |
                                |——|———-|
                                | 1 | Проверьте версию платформы 1С. Если ниже 8.3.10 — используйте версию индекса 1.0 |
                                | 2 | Установите «Максимальное количество заданий индексирования» в 1 или больше |
                                | 3 | Убедитесь, что «Максимальный размер индексируемых данных» не слишком мал (например, 1024 Кб) |
                                | 4 | Перестройте индекс полнотекстового поиска |
                                | 5 | Проверьте права доступа к каталогу индекса |
                                | 6 | При необходимости изучите логи для диагностики |

                                ### Дополнительные советы

                                — Если вы хотите использовать версию индекса 2.0, обновите платформу 1С до версии 8.3.10 или выше.
                                — При больших объемах данных увеличьте максимальный размер индексируемых данных.
                                — Если полнотекстовый поиск не нужен, можно отключить его, но это не рекомендуется.

                                Если нужна помощь с конкретными командами или скриптами для перестроения индекса — могу предоставить.

                                Рекомендую посмотреть здесь:
                                https://its.1c.ru/db/v83doc#bookmark:dev:TI000000113
                                https://infostart.ru/public/1043459/ (статья по настройке полнотекстового поиска)

                                Если нужна помощь с конкретным сообщением об ошибке — приложите текст ошибки из логов или из окна сообщений.

                                bot_avaOdin — Одинэсник
                                Участник

                                  Для настройки полнотекстового поиска в 1С с использованием полнотекстового поиска MS SQL необходимо выполнить следующие шаги:

                                  1. **Подготовка MS SQL сервера:**

                                  — Убедитесь, что на сервере MS SQL установлен и активирован компонент полнотекстового поиска (Full-Text Search).
                                  — Проверьте, что полнотекстовый поиск включен для вашей базы данных.
                                  — Создайте полнотекстовый каталог и полнотекстовые индексы на нужных таблицах и полях, которые будут использоваться для поиска.

                                  2. **Настройка информационной базы 1С:**

                                  — В конфигурации 1С необходимо включить использование полнотекстового поиска платформы.
                                  — В разделе «Администрирование» → «Общие настройки» найдите параметр «Полнотекстовый поиск данных» и включите его.
                                  — В свойствах информационной базы (в конфигураторе или через администрирование) укажите, что полнотекстовый поиск будет использоваться на стороне СУБД (MS SQL).

                                  3. **Настройка параметров подключения к MS SQL:**

                                  — В строке подключения к базе данных 1С (обычно в файле 1cv8.1cd или в настройках подключения) убедитесь, что указаны правильные параметры для подключения к MS SQL.
                                  — Проверьте, что пользователь базы данных имеет права на использование полнотекстового поиска (создание и использование полнотекстовых индексов).

                                  4. **Обновление и построение полнотекстового индекса в MS SQL:**

                                  — После создания полнотекстовых индексов в MS SQL необходимо их построить и обновить.
                                  — Это можно сделать через SQL Server Management Studio (SSMS) или с помощью SQL-запросов.

                                  5. **Использование полнотекстового поиска в 1С:**

                                  — В 1С полнотекстовый поиск будет автоматически использовать возможности MS SQL, если он включен и настроен.
                                  — При выполнении поиска в 1С запросы будут транслироваться в полнотекстовые запросы MS SQL, что значительно ускорит поиск по большим объемам данных.

                                  6. **Дополнительные рекомендации:**

                                  — В некоторых конфигурациях 1С может потребоваться доработка кода или настройка обработки поиска, чтобы использовать полнотекстовые индексы MS SQL напрямую.
                                  — Рекомендуется протестировать работу полнотекстового поиска на тестовой базе перед внедрением в продуктив.

                                  ### Пример создания полнотекстового индекса в MS SQL для таблицы 1С

                                  ### Важные моменты:

                                  — Полнотекстовый поиск MS SQL работает только с таблицами, у которых есть первичный ключ.
                                  — Язык индексации должен соответствовать языку данных.
                                  — В 1С начиная с версии платформы 8.3.10 и выше полнотекстовый поиск поддерживает интеграцию с полнотекстовым поиском MS SQL.

                                  Рекомендую посмотреть здесь:
                                  https://infostart.ru/public/1679552/
                                  https://docs.microsoft.com/ru-ru/sql/relational-databases/search/full-text-search?view=sql-server-ver16
                                  https://wonderland.v8.1c.ru/blog/uluchshenie-relevantnosti-polnotekstovogo-poiska/

                                  Если нужна помощь с конкретным кодом или настройками — могу помочь с примерами.

                                Просмотр 15 сообщений - с 781 по 795 (из 2,080 всего)
                                База знаний 1С