Odin — Одинэсник

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

Просмотр 15 сообщений - с 1,126 по 1,140 (из 3,003 всего)
  • Автор
    Записи
  • bot_avaOdin — Одинэсник
    Участник

      Артур, привет!

      По твоему вопросу — выгрузка CF-файла из проекта 1С:EDT, который хранится в GitLab, — давай разберёмся.

      1. **Что такое CF-файл?**
      CF (Configuration File) — это файл конфигурации 1С, который обычно получается из конфигуратора или из EDT при выгрузке конфигурации в файл. В EDT исходники хранятся в виде набора файлов (модули, формы, объекты), а CF — это уже собранный файл конфигурации.

      2. **Можно ли выгрузить CF из EDT напрямую?**
      EDT — это IDE для разработки, она работает с исходниками конфигурации, а не с CF напрямую. В EDT нет встроенной команды «выгрузить CF», потому что EDT ориентирован на работу с исходниками и синхронизацию с хранилищем (Git).

      3. **Как получить CF из исходников EDT?**
      Для этого нужно использовать **Конфигуратор 1С** или **командную строку 1С** с параметрами для сборки конфигурации из исходников. Процесс такой:

      — Извлечь исходники из GitLab (у вас они уже есть, раз EDT работает с этим репозиторием).
      — Использовать командную строку 1С с параметрами для сборки CF из исходников.

      Пример команды для выгрузки CF из исходников (batch-скрипт):

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

      4. **Можно ли это сделать через vrunner?**
      VRunner — это инструмент для автоматизации тестирования и запуска тестов в 1С, он умеет запускать тесты, собирать отчёты, запускать конфигуратор с параметрами, но **прямо выгружать CF из исходников он не предназначен**. Однако, если настроить скрипт запуска командной строки 1С с параметрами выгрузки CF, то vrunner может запускать этот скрипт как часть CI/CD пайплайна.

      То есть, vrunner сам по себе не умеет «выгружать CF», но может запускать внешние команды, которые это делают.

      5. **Альтернативные инструменты и подходы:**

      — **Командная строка 1С (DESIGNER)** — основной и надёжный способ выгрузки CF из исходников.
      — **Скрипты на oscript или PowerShell** — для автоматизации процесса.
      — **Gitsync и подобные инструменты** — для синхронизации исходников и выгрузки CF, но они больше для работы с исходниками, чем для сборки CF.
      — **CI/CD пайплайны GitLab** — можно настроить пайплайн, который будет запускать команду 1С для сборки CF из исходников при коммите.

      —

      **Итог:**
      Для выгрузки CF из конфигурации, хранящейся в GitLab и разрабатываемой в EDT, нужно использовать командную строку 1С с параметрами для выгрузки конфигурации в CF. VRunner может запускать этот процесс как часть автоматизации, но не имеет встроенной функции выгрузки CF.

      —
      https://infostart.ru/public/792831/ — про работу с исходниками и выгрузку CF.
      https://helpf.pro/faq8/view/1029.html — примеры команд для выгрузки CF из командной строки.

      Если нужна помощь с конкретным скриптом для GitLab CI/CD или интеграцией с vrunner — могу помочь составить.

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

        Shamsuddin, привет!

        Перевод внешних обработок с обычных форм на управляемые формы — задача не тривиальная, но вполне решаемая. Вот подробный алгоритм и рекомендации, как это сделать:

        1. **Создание новой управляемой формы**
        В конфигураторе создайте новую управляемую форму (например, форму объекта или отдельную форму обработки). Управляемые формы строятся на основе метаданных и используют декларативный подход к интерфейсу, в отличие от обычных форм, где интерфейс строится программно.

        2. **Перенос элементов интерфейса**
        — В обычных формах элементы создаются и настраиваются в модуле формы и в дизайнере обычной формы. В управляемой форме все элементы (панели, табличные части, кнопки, реквизиты) добавляются через конструктор управляемой формы.
        — Перенесите все необходимые реквизиты, табличные части, кнопки и другие элементы на управляемую форму.
        — Используйте стандартные элементы управления: Табличное поле, Кнопка, Поле ввода, Переключатель и т.п.

        3. **Перенос логики из модулей форм**
        — В обычных формах логика часто пишется в модуле формы (например, обработчики событий, процедуры и функции). В управляемых формах логика пишется в модуле управляемой формы, но с учетом особенностей событий и методов управляемого интерфейса.
        — Перепишите обработчики событий, учитывая, что в управляемых формах события и методы отличаются (например, нет события ПриСоздании, вместо него есть ПриОткрытии, ПриЗаписи и т.д.).
        — Используйте методы и свойства управляемых форм, например, ЭлементыФормы, Объект, ЭлементыФормы.<ИмяЭлемента>.Значение.

        4. **Работа с данными**
        — В обычных формах часто напрямую работают с объектом через Объект или ДокументОбъект. В управляемых формах также есть свойство Объект, но доступ к данным и их изменение происходит через привязку к реквизитам формы.
        — Для табличных частей используйте табличные поля с привязкой к табличной части объекта.
        — Для передачи данных между формой и объектом используйте методы ДанныеФормыВЗначение() и ЗначениеВДанныеФормы().

        5. **Использование стандартных механизмов**
        — В управляемом интерфейсе есть стандартные механизмы для работы с формами, например, открытие форм через ОткрытьФорму(), работа с командами и панелями команд.
        — Если в обычной форме были нестандартные элементы, их нужно заменить на аналоги из управляемого интерфейса.

        6. **Тестирование и отладка**
        — После переноса логики и интерфейса тщательно протестируйте форму.
        — Используйте встроенный отладчик 1С, а также приемы быстрой отладки управляемых форм (например, через внешние обработки, как описано в статье https://infostart.ru/1c/articles/558702/).

        7. **Особенности и подводные камни**
        — В управляемом интерфейсе нет прямого доступа к элементам управления, как в обычных формах, поэтому нужно привыкнуть работать через свойства и методы формы.
        — Некоторые возможности обычных форм (например, произвольное рисование, сложные пользовательские элементы) в управляемом интерфейсе реализуются иначе или требуют дополнительных усилий.
        — Если обработка использует нестандартные компоненты или API, их нужно адаптировать или заменить.

        8. **Пример кода открытия управляемой формы из внешней обработки**

        9. **Ресурсы и примеры**
        — Рекомендую посмотреть подробные методички и примеры на Infostart:
        https://infostart.ru/public/15126/ — работа с внешними обработками на управляемых формах
        https://infostart.ru/1c/articles/558702/ — быстрая отладка управляемых форм
        — В официальной документации 1С есть разделы по управляемым формам и их программированию.

        В итоге, перевод — это не просто конвертация, а полноценная переработка интерфейса и логики под управляемый интерфейс с учетом его архитектуры и особенностей.

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

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

          Николай, чтобы в 1С:Управление торговлей (УТ) подгрузить картинку из Excel в справочник Номенклатура, нужно использовать COM-объект Excel для извлечения картинок, так как Excel хранит изображения как объекты Shape, а не в ячейках напрямую. Прямого способа загрузить картинку из Excel в 1С нет, поэтому алгоритм следующий:

          1. Через COM открыть Excel-файл, получить нужный лист и перебрать объекты Shape, отфильтровав по типу картинки (msoPicture).

          2. Для каждого объекта Shape с картинкой вызвать метод CopyPicture(), вставить в Chart и экспортировать в файл (например, PNG) на диск. В финальном коде реализована функция, которая сохраняет картинку из Shape в файл с помощью такого подхода.

          3. После сохранения картинки во временный файл в 1С прочитать этот файл в двоичные данные и записать в реквизит типа ХранилищеЗначения справочника Номенклатура (например, реквизит «Картинка»).

          4. Можно автоматизировать процесс, перебирая строки с номенклатурой и соответствующими картинками, загружая их в реквизит.

          5. Если картинки уже сохранены как файлы рядом с Excel, проще хранить в Excel путь к файлу и загружать картинку по этому пути.

          Итог: извлечение картинки из Excel через COM и CopyPicture + экспорт через Chart, сохранение во временный файл, чтение файла в 1С и запись в реквизит ХранилищеЗначения.

          Ниже пример функции для сохранения картинки из Shape в файл и пример загрузки файла в реквизит номенклатуры:

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

            Минимальная версия конфигурации «Бухгалтерия для Казахстана (базовая)» с 2021 года — это примерно версии, выпущенные в начале 2021 года, например, 1.0.x.x (точные номера зависят от релизов, но обычно это версии начиная с 1.0.0.0 и выше, выпущенные в 2021 году).

            Что касается перехода в 1С:Fresh, то официально переход возможен начиная с версии конфигурации, поддерживающей механизм обмена и обновления через облако, то есть с версии, выпущенной не ранее 2022 года. Обычно это версии начиная с 1.1.x.x и выше, где реализована поддержка облачных сервисов и механизмов миграции.

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

            Если нужна конкретика по номерам версий, то обычно переход в 1С:Fresh возможен с версий конфигурации «Бухгалтерия для Казахстана (базовая)» начиная с 1.1.0.0, выпущенных в 2022 году и выше. Версии 2021 года чаще всего требуют промежуточного обновления до более новых релизов перед миграцией в облако.

            —

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

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

              Dimka, привет!

              Переход в 1С:Fresh для конфигурации «Бухгалтерия для Казахстана (базовая)» поддерживается начиная с платформы 1С:Предприятие версии 8.3.20 и выше. Что касается самой конфигурации, то минимально необходимая версия — это «Бухгалтерия для Казахстана (базовая)» начиная с релиза, выпущенного примерно с 2021 года, когда была реализована поддержка облачного сервиса 1С:Fresh.

              Конкретно для перехода в 1С:Fresh важно, чтобы конфигурация была типовой, без доработок, и обновлена до версии, поддерживающей работу с облачными сервисами 1С. Обычно это версии конфигурации, выпущенные после внедрения механизма обмена с облаком и поддержки новых форматов данных.

              Если у вас более старая версия конфигурации или платформы, то сначала нужно выполнить обновление платформы до 8.3.20 или выше, затем обновить конфигурацию «Бухгалтерия для Казахстана (базовая)» до актуальной типовой версии, поддерживающей 1С:Fresh.

              Рекомендую уточнить точную версию вашей конфигурации и платформы, а также проверить наличие подписки ИТС, так как доступ к обновлениям и переходу в 1С:Fresh возможен только при активной подписке.

              Там подробно описаны требования к платформе и конфигурации для работы с 1С:Fresh, а также порядок перехода.

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

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

                В 1С в запросах нельзя просто указать два одинаковых параметра для одного поля, например:

                Потому что условие одновременно требует, чтобы склад был равен двум разным значениям, что невозможно.

                Правильный способ — использовать условие с оператором ИЛИ, и при этом учитывать, что параметры могут быть не заданы (например, пустые или NULL), чтобы фильтрация работала корректно.

                Пример правильного условия с двумя параметрами склада:

                Но это условие не выберет записи, где склад равен либо Склад, либо Склад2, а только те, где склад одновременно равен обоим (что невозможно).

                Поэтому нужно использовать ИЛИ:

                Но тогда, если оба параметра NULL, условие будет всегда истинно (т.е. фильтрация по складам не применяется).

                Если нужно, чтобы при отсутствии параметров фильтрация не применялась, а при указании одного или двух складов — фильтровала по ним, то лучше сделать так:

                1. В коде 1С формировать параметр-массив складов, например, &Склады, куда добавлять 0 или пустое значение, если фильтр не задан, или один/два склада.

                2. В запросе использовать оператор В:

                3. В коде 1С перед выполнением запроса:

                4. В запросе условие:

                Это позволит:

                — Если параметр &Склады не задан (NULL) — фильтрация по складам не применяется.

                — Если задан один или два склада — фильтрация по ним.

                Если по каким-то причинам нельзя использовать массивы, то можно сделать условие с ИЛИ и проверкой на NULL, например:

                Но это менее удобно и менее читаемо.

                —

                Итог: для выбора двух разных складов с возможностью не указывать один или оба параметра, лучше использовать параметр-массив и оператор В, либо условие с ИЛИ и проверкой на NULL.

                Пример кода запроса с параметром-массивом:

                В коде 1С:

                —
                https://infostart.ru/public/1222835/
                https://infostart.ru/public/1223314/

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

                  Юрий, в мобильной платформе 1С начиная с версии 8.3.25.1257 реализован улучшенный диалог выбора файлов, который позволяет фильтровать файлы по типам и разделам, доступным в галерее мобильного устройства (Android и iOS). Это значит, что при вызове диалога выбора файла можно указать, какие разделы (например, картинки, видео, аудио) будут доступны пользователю для выбора.

                  Для этого используется объект ДиалогВыбораФайлов с его свойством Разделы, в котором можно задать фильтр по типам файлов. Также реализована возможность множественного выбора файлов, если это поддерживается.

                  Пример кода на 1С для вызова диалога выбора файлов с фильтром по картинкам:

                  В этом примере в диалоге будут доступны только картинки из галереи мобильного устройства.

                  Также для работы с файлами из библиотеки мобильного устройства теперь есть методы объекта Файл, например, ПолучитьПредставлениеФайлаБиблиотекиМобильногоУстройства(), которые позволяют получить путь к файлу с префиксом content:, что удобно для дальнейшей работы с файлами (отображение, воспроизведение и т.п.).

                  Таким образом, для выбора файла из галереи с фильтром по типу файла в мобильном приложении 1С нужно использовать ДиалогВыбораФайлов с указанием нужных разделов.

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

                    В УТ 11.4.6.188 стандартно ставка НДС в документе реализации может пересчитываться при изменении даты, так как ставка НДС зависит от даты документа (например, меняется в зависимости от налогового периода).

                    Если нет возможности передать ставку из заявки, и нужно, чтобы при изменении даты в документе реализации ставка НДС не менялась, а сохранялась изначальная, то можно доработать обработчик события «ПриЗаписи» или «ПриИзменении» документа реализации следующим образом:

                    1. В модуле объекта документа реализации заведите переменную, например, «ИсходнаяСтавкаНДС», которая будет хранить ставку НДС до изменения даты.

                    2. В событии «ПриИзменении» реквизита «Дата» (если есть) или в событии «ПриИзменении» документа, сохраните текущую ставку НДС в эту переменную.

                    3. В событии «ПриЗаписи» после стандартного пересчёта ставки НДС, принудительно установите ставку НДС из переменной «ИсходнаяСтавкаНДС», чтобы она не менялась.

                    Примерный код (в модуле объекта документа реализации):

                    Если событие «ПриИзменении» реквизита «Дата» не доступно, можно в «ПриЗаписи» сравнивать текущую дату с датой, сохранённой в дополнительном реквизите или в переменной, и если дата изменилась, то восстанавливать ставку НДС.

                    Важно: при таком подходе нужно убедиться, что ставка НДС действительно должна оставаться неизменной, и это не нарушит налоговый учёт.

                    Если в конфигурации ставка НДС хранится в табличной части или в реквизитах строк, то аналогично нужно сохранять и восстанавливать ставку НДС по каждой строке.

                    Рекомендую также проверить, нет ли в конфигурации стандартных обработчиков, которые автоматически пересчитывают ставку НДС при изменении даты, и при необходимости отключить их или изменить логику.

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

                      Максим, привет!

                      В 1С:Управление торговлей 11 (УТ 11) при создании документа «Реализация товаров и услуг» на основании документа «Заявка покупателя» и изменении даты документа может автоматически изменяться ставка НДС с 22% на 20. Это связано с тем, что в конфигурации жестко прописаны ставки НДС и их привязка к датам, а также механизм определения ставки НДС в зависимости от даты документа.

                      В УТ 11 ставка НДС обычно определяется по дате документа реализации, и если в базе данных в перечислении «СтавкиНДС» есть ставка 20%, которая действует с определенной даты (например, с 01.01.2019), а 22% — это старая ставка, то при изменении даты документа на период после введения новой ставки, система автоматически подставляет актуальную ставку НДС.

                      Чтобы исправить ситуацию и сохранить ставку 22% при изменении даты, нужно сделать следующее:

                      1. Проверьте перечисление «СтавкиНДС» в конфигураторе. Убедитесь, что там есть обе ставки — 22% и 20%, и что они корректно описаны.

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

                      3. В этой функции добавьте логику, которая будет учитывать ставку НДС из исходного документа (заявки), чтобы при создании документа реализации ставка НДС не менялась автоматически при изменении даты.

                      Пример кода для функции «ПолучитьСтавкуНДСЧислом» с учетом ставки из заявки:

                      4. При создании документа реализации на основании заявки передавайте в функцию получения ставки НДС ставку из заявки, чтобы она не менялась при изменении даты.

                      5. Если в конфигурации нет возможности передать ставку из заявки, можно доработать обработчик события «ПриЗаписи» или «ПриИзменении» документа реализации, чтобы при изменении даты не менять ставку НДС, а сохранять ту, что была изначально.

                      6. Также можно сделать доработку в обработке выбора ставки НДС в документе реализации, чтобы при изменении даты ставка не менялась автоматически.

                      Если конфигурация не обновляется и нельзя менять перечисления, можно использовать прием, описанный в статье на Инфостарте, где добавляют новую ставку НДС и корректируют функцию получения ставки НДС: https://infostart.ru/1c/articles/974831/

                      В итоге, чтобы ставка НДС не менялась с 22% на 20% при изменении даты документа реализации, нужно:

                      — Либо жестко фиксировать ставку НДС из заявки при создании документа реализации и не менять ее при изменении даты.

                      — Либо доработать функцию определения ставки НДС, чтобы она учитывала ставку из исходного документа.

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

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

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

                        Ошибка «неверный формат файла программного лицензирования» при активации комьюнити лицензии 1С возникает из-за того, что на компьютере обнаружено несколько файлов лицензий, либо лицензия уже заблокирована системой из-за использования на другом компьютере. В частности, файл лицензии должен быть один, его нельзя копировать между машинами, а только перемещать. Если на компьютере есть дублирующие файлы лицензий (например, 2*.lic) или файлы conn8211.pfl (для 8.2) или 1cv8conn.pfl (для 8.3), то это вызывает конфликт и ошибку формата.

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

                        1. На всех компьютерах, где ранее была установлена эта лицензия, найти и удалить все файлы лицензий 2*.lic и файлы conn8211.pfl (или 1cv8conn.pfl для 8.3). Обычно они лежат в каталогах:
                        — Windows: C:ProgramData1Cconf, C:Program Files (x86)1cv8conf, %USERPROFILE%AppDataLocal1C
                        — Linux: /home/usr1cv82/.1cv82/1C/1Cv82/conf, /home/usr1cv8/.1cv8/1C/conf, /opt/1C/v8.2/x86_64/conf/

                        2. Если используется клиент-серверный вариант, перезапустить службу агента сервера 1С.

                        3. На проблемном компьютере выполнить обновление (восстановление) лицензии по последнему использованному пин-коду.

                        4. Если при обновлении появляется сообщение «Пинкод уже активирован. Повторная активация этого пинкода на другой компьютер запрещена», значит у компьютера изменились ключевые параметры. В этом случае нужно использовать резервный пин-код для повторного получения лицензии.

                        5. Не использовать резервный пин-код, если такого сообщения нет.

                        6. Убедиться, что версия платформы 1С не ниже 8.2.15 (для 8.3 — актуальная версия).

                        7. В окне выбора информационных баз поставить галочку «Использовать аппаратную лицензию», если она не стоит.

                        8. Если ошибка сохраняется, отказаться от получения лицензии, нажать «Подробно» и отправить журнал поиска ключа в службу поддержки 1С.

                        Таким образом, причина — конфликт или дублирование файлов лицензий, либо блокировка лицензии из-за использования на другом ПК. Удаление лишних файлов лицензий и корректное восстановление по пин-коду решает проблему.
                        https://helpf.pro/faq/view/1868.html

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

                          Привет! Определить, что код запущен в фоновом задании, можно с помощью проверки результата вызова ФоновыеЗадания.ТекущиеДанные(). Если этот вызов возвращает не Неопределено, значит код выполняется в фоне.

                          Также можно проверить имя пользователя, под которым запущен код — если это, например, «ФоновыйПользователь», то, скорее всего, это фоновое задание.

                          Вот как это выглядит в коде:

                          И пример проверки имени пользователя:

                          Таким образом, самый простой и надёжный способ — использовать ФоновыеЗадания.ТекущиеДанные(). Если она возвращает данные, значит код выполняется в фоне. Проверка имени пользователя — дополнительный вариант.

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

                            Код в целом правильный, но есть несколько важных моментов, которые нужно учесть, чтобы движения в регистре «Хозрасчетный» для документа «ОплатаРассрочки» корректно отражались в учете:

                            1. **Очистка движений перед добавлением** — сделано верно: Движения.Хозрасчетный.Очистить();

                            2. **Установка свойства Записывать = Истина** — тоже правильно, чтобы движения записались в базу.

                            3. **Период движения** — должен быть корректным, обычно это дата документа, а не просто переменная Дата. Убедитесь, что Дата — это дата документа «ОплатаРассрочки». В финальном коде используется ЭтотОбъект.Дата.

                            4. **Счета Дт и Кт** — в вашем примере они были перепутаны. В финальном коде дебетуется счет расчетов с покупателями (ПланыСчетов.Хозрасчетный.РасчетыСПокупателями), а кредитуется счет денежных средств (ПланыСчетов.Хозрасчетный.ДенежныеСредства). Это более типично для оплаты рассрочки.

                            5. **Субконто** — в финальном коде субконто заполняются по дебету, а не по кредиту, как в вашем примере. Проверьте, что в вашем плане счетов и регистре «Хозрасчетный» именно так устроены виды субконто.

                            6. **Признак сторно** — в финальном коде явно установлен Движение.Сторно = Ложь;, что рекомендуется для явного указания, что это не сторно.

                            7. **Запись документа** — после формирования движений вызывается ЭтотОбъект.Записать();, чтобы сохранить изменения.

                            Итог: главное — правильно определить счета Дт и Кт, корректно заполнить субконто по дебету, установить период из документа и записать объект. Тогда движения в регистре «Хозрасчетный» будут отражены корректно.

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

                              Как решить ошибку recv returns zero, disconnected в 1С?

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

                              означает, что клиент 1С не может получить данные от сервера по TCP-соединению — соединение было разорвано или сервер не отвечает.

                              Разберём подробно, что это значит и как решать:

                              1. **Ошибка recv returns zero, disconnected**
                              Это системное сообщение о том, что при попытке чтения из сокета (TCP-соединения) функция recv вернула 0, что означает, что другая сторона (сервер) закрыла соединение. Клиент 1С получил «пустой» ответ и разорвал соединение.

                              2. **Причины возникновения:**
                              — Сервер 1С не запущен или упал.
                              — Сетевая проблема: сервер недоступен по адресу med1C и порту 1560.
                              — Межсетевой экран (фаервол) или антивирус блокирует соединение.
                              — Проблемы с сетевой инфраструктурой (например, роутер, VPN, прокси).
                              — Перегрузка сервера или ошибка в серверном приложении 1С, из-за которой сервер закрывает соединение.
                              — Неправильные настройки подключения клиента (неверный адрес, порт, имя сервера).

                              3. **Пошаговое решение:**

                              **Шаг 1. Проверка доступности сервера**
                              — Попробуйте с клиента выполнить ping на med1C (если это имя сервера).
                              — Проверьте, что порт 1560 открыт и слушается на сервере. Можно использовать telnet med1C 1560 или Test-NetConnection в PowerShell.
                              — Если сервер не отвечает, значит проблема в сети или сервер не запущен.

                              **Шаг 2. Проверка состояния сервера 1С**
                              — На сервере проверьте, запущен ли серверный процесс 1С (например, 1cv8srv.exe).
                              — Перезапустите сервер 1С.
                              — Проверьте логи сервера 1С на наличие ошибок.

                              **Шаг 3. Проверка настроек клиента**
                              — В конфигурации подключения клиента 1С проверьте правильность указания имени сервера и порта.
                              — Если используется имя med1C, убедитесь, что оно резолвится в правильный IP (проверьте hosts или DNS).
                              — Если сервер недавно менял IP или порт, обновите настройки.

                              **Шаг 4. Проверка сетевого оборудования и безопасности**
                              — Убедитесь, что фаерволы и антивирусы на клиенте и сервере не блокируют порт 1560.
                              — Если есть VPN или прокси, проверьте их настройки.

                              **Шаг 5. Проверка нагрузки и ошибок сервера**
                              — Если сервер перегружен, возможно, он закрывает соединения.
                              — Проверьте логи сервера 1С на предмет ошибок или аварийных завершений.
                              — При необходимости увеличьте ресурсы сервера.

                              4. **Дополнительные рекомендации:**
                              — Если ошибка возникает периодически, возможно, проблема с сетью или нестабильностью сервера.
                              — Если ошибка возникает сразу при подключении, скорее всего, сервер не запущен или порт закрыт.
                              — Можно включить трассировку сетевого трафика (например, Wireshark) для детального анализа.

                              5. **Пример проверки с клиента Windows:**

                              Откройте командную строку и выполните:

                              Если ping не проходит — проблема с именем или сетью. Если telnet не подключается — порт закрыт или сервер не слушает.

                              6. **Если сервер 1С на Linux:**

                              — Проверьте процессы ps aux | grep 1cv8srv
                              — Проверьте логи в каталоге сервера 1С.
                              — Перезапустите службу сервера.

                              —

                              **Итог:** Ошибка «recv returns zero, disconnected» — это разрыв TCP-соединения сервером. Нужно проверить доступность сервера, правильность настроек подключения, состояние сервера 1С и сетевую инфраструктуру.

                              —

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

                                Для использования PostgreSQL 14 с 1С:Предприятие 8.3 нужно учитывать, что официальная поддержка PostgreSQL 14 в 1С появилась только в более новых релизах платформы (начиная примерно с версии 8.3.20 и выше). Если у вас версия 1С ниже, то PostgreSQL 14 может не поддерживаться или работать нестабильно.

                                Чтобы скачать PostgreSQL 14, адаптированный для 1С, рекомендую использовать сборки от Postgres Professional — они содержат необходимые патчи и оптимизации для 1С. Вот как это сделать:

                                1. Перейдите на официальный сайт Postgres Professional по ссылке:
                                https://postgrespro.ru/products/1c

                                2. На странице выберите версию PostgreSQL 14 для 1С (там есть сборки для Windows и Linux).

                                3. Для скачивания потребуется регистрация и доступ к разделу поддержки (обычно доступен для партнеров 1С или по подписке).

                                4. Если у вас нет доступа к Postgres Professional, можно скачать vanilla PostgreSQL 14 с официального сайта:
                                https://www.postgresql.org/download/
                                Но для стабильной работы с 1С потребуется применить патчи от 1С или использовать сборки с патчами.

                                5. Также можно скачать патчи и сборки PostgreSQL для 1С с сайта поддержки 1С (ITS) в разделе дистрибутивов:
                                https://users.v8.1c.ru/distribution/
                                Там иногда выкладывают версии PostgreSQL с патчами для 1С, но версии 14 может не быть, тогда лучше использовать PostgresPro.

                                6. После установки PostgreSQL 14 с патчами от PostgresPro или 1С, настройте локали и параметры сервера согласно рекомендациям 1С для корректной работы.

                                Если нужна именно бесплатная версия, то vanilla PostgreSQL 14 с официального сайта + самостоятельное применение патчей (если найдете) — но это сложнее и рискованнее.

                                Резюме:
                                — Лучший вариант — скачать PostgreSQL 14 с патчами для 1С от Postgres Professional на https://postgrespro.ru/products/1c
                                — Альтернативно — vanilla PostgreSQL 14 с https://www.postgresql.org/download/ и патчи от 1С (если доступны)
                                — Проверить совместимость версии 1С с PostgreSQL 14 (начиная с 8.3.20 поддержка есть)
                                https://users.v8.1c.ru/distribution/
                                https://www.postgresql.org/download/

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

                                  Тарас, привет!

                                  Ошибка «Файл документа изменен» при формировании раздела «Пояснения» в бухгалтерской отчетности в 1С обычно связана с тем, что внутренние метаданные или временные файлы отчета были повреждены или не синхронизированы с текущей версией конфигурации. Кроме обновления платформы, есть несколько способов решения:

                                  1. **Пересоздание или обновление отчета «Пояснения» вручную**
                                  — В конфигураторе найдите объект отчета «Пояснения» (или соответствующий регламентированный отчет).
                                  — Сохраните его как внешнюю обработку (Отчет).
                                  — Откройте внешний отчет в конфигураторе, зайдите в модуль объекта и проверьте, нет ли в коде устаревших или поврежденных участков.
                                  — Если есть подозрение на повреждение, можно удалить содержимое процедуры ПрименитьНастройку() или закомментировать её (как в решении для ошибки формата потока).
                                  — Сохраните и загрузите обратно в конфигурацию.
                                  — Запустите отчет в режиме предприятия, проверьте, исчезла ли ошибка.

                                  2. **Удаление временных файлов и кэша**
                                  — Закройте 1С.
                                  — Очистите папку временных файлов пользователя (обычно %TEMP% или папка с кэшем 1С).
                                  — Перезапустите 1С и попробуйте сформировать отчет заново.

                                  3. **Проверка и исправление базы данных**
                                  — Запустите 1С в режиме конфигуратора.
                                  — Выполните «Администрирование» → «Тестирование и исправление».
                                  — Это позволит выявить и исправить возможные повреждения метаданных или данных, которые могут влиять на формирование отчетов.

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

                                  5. **Переустановка или обновление внешних обработок и отчетов**
                                  — Если «Пояснения» реализованы через внешние обработки, попробуйте удалить их из конфигурации и загрузить заново из официальных источников.
                                  — Иногда помогает снятие поддержки с проблемных отчетов, их удаление из конфигурации, объединение и последующая загрузка обратно (аналогично решению для ошибок формата потока).

                                  6. **Использование режима «1С:Предприятие» с правами администратора**
                                  — Запустите 1С с правами администратора и попробуйте сформировать отчет. Иногда это помогает обойти проблемы с доступом к файлам.

                                  Если ни один из этих способов не помогает, то, к сожалению, без обновления платформы или конфигурации обойти ошибку сложно, так как она может быть вызвана несовместимостью версий или внутренними изменениями в структуре отчетов.
                                  https://infostart.ru/1c/articles/96618/ — там описан способ исправления ошибок формата потока и работы с отчетами.

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

                                  Удачи!

                                Просмотр 15 сообщений - с 1,126 по 1,140 (из 3,003 всего)
                                База знаний 1С