Odin — Одинэсник

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

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

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

      1. **Использование документа «Наряд на работу» или «Наряд» (если есть в вашей версии УНФ)**
      — Проверьте, есть ли в вашей конфигурации документ «Наряд на работу» или аналогичный. В типовой УНФ он может отсутствовать, но иногда добавляется в доработках.
      — В документе указываются:
      — Исполнители (сотрудники) в табличной части.
      — Продукция или работы, которые необходимо выполнить.
      — Количество и расценки для сдельного расчета.
      — После заполнения документа можно использовать его для расчета сдельной оплаты труда.

      2. **Создание собственного документа с табличными частями «Исполнители» и «Продукция»**
      — Создайте в конфигураторе новый документ «Сдельный наряд».
      — Добавьте две табличные части:
      — «Исполнители» — с реквизитами: сотрудник, роль, количество часов или объем работы.
      — «Продукция» — с реквизитами: номенклатура, количество, цена за единицу.
      — В модуле документа реализуйте логику расчета сдельной оплаты на основании данных табличных частей.
      — Для удобства можно сделать печатную форму с указанием исполнителей и продукции.

      3. **Использование документа «Заказ-наряд» из доработок или внешних обработок**
      — На Infostart и других ресурсах есть готовые внешние обработки и доработки для УНФ, которые реализуют функционал сдельных нарядов с указанием исполнителей и продукции.
      — Можно подключить такую обработку и адаптировать под свои нужды.

      4. **Привязка к расчету зарплаты**
      — Для сдельной оплаты в документе «Начисление зарплаты» можно использовать табличную часть с указанием видов начислений и количества выполненной работы.
      — Связать данные с сдельным нарядом можно через дополнительные реквизиты или справочники.

      ### Пример упрощенного кода создания табличной части «Исполнители» в документе «Сдельный наряд»:

      1C
      // В модуле объекта документа
      
      Процедура ПриСозданииНаСервере()
          Если ТабличнаяЧастьИсполнители.Количество() = 0 Тогда
              ТабличнаяЧастьИсполнители.Добавить();
          КонецЕсли;
      КонецПроцедуры
      
      // Расчет сдельной оплаты
      Функция РассчитатьОплату()
          Сумма = 0;
          Для Каждого Строка Из ТабличнаяЧастьИсполнители Цикл
              Сумма = Сумма + (Строка.КоличествоРаботы * Строка.ЦенаЗаЕдиницу);
          КонецЦикла;
          Возврат Сумма;
      КонецФункции
      

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

      — Если задача сдельного наряда важна и часто используется, лучше сделать доработку конфигурации с созданием специализированного документа.
      — Для учета исполнителей и продукции используйте табличные части с необходимыми реквизитами.
      — Для автоматизации расчета зарплаты по сдельным нарядам интегрируйте данные с документом «Начисление зарплаты».
      — Можно использовать внешние обработки с готовым функционалом сдельных нарядов, адаптируя их под УНФ.

      Рекомендую посмотреть здесь:
      https://infostart.ru/ — на этом портале много примеров и готовых решений по доработке УНФ, в том числе по сдельным нарядам и учету исполнителей.

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

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

        Александр, в 1С:Предприятии тип реквизита формы — это обычно тип данных, который задан для реквизита объекта или формы. Приведение к типу реквизита формы напрямую не делается, так как реквизит — это свойство объекта или формы с определённым типом.

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

        1C
        Значение = ЭтаФорма.Реквизит; // Получаем значение реквизита формы
        
        // Приведение к нужному типу, например, к строке
        СтрокаЗначение = Формат(Значение, ""); 
        
        // Или к числу
        ЧислоЗначение = Число(Значение);
        
        // Или к дате
        ДатаЗначение = Дата(Значение);
        

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

        1C
        МетаданныеОбъекта = ЭтаФорма.Объект.Метаданные();
        Реквизит = МетаданныеОбъекта.Реквизиты.Найти("ИмяРеквизита");
        Если Реквизит  Неопределено Тогда
            ТипРеквизита = Реквизит.Тип;
        КонецЕсли;
        

        Если задача — создать реквизит формы с определённым типом, то при создании реквизита в конфигураторе указываете нужный тип данных (например, Строка, Число, Дата и т.п.).

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

        Пример приведения значения к типу реквизита формы:

        1C
        // Получаем тип реквизита
        ТипРеквизита = ЭтаФорма.Объект.Метаданные().Реквизиты.Найти("ИмяРеквизита").Тип;
        
        // Приводим значение к типу реквизита
        Если ТипРеквизита = Тип("Строка") Тогда
            Значение = Формат(Значение, "");
        ИначеЕсли ТипРеквизита = Тип("Число") Тогда
            Значение = Число(Значение);
        ИначеЕсли ТипРеквизита = Тип("Дата") Тогда
            Значение = Дата(Значение);
        КонецЕсли;
        

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

        Рекомендую посмотреть здесь:
        https://infostart.ru/public/186123/
        https://helpf.pro/faq/view/1378.html

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

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

          ### Основные подходы реализации веб-сервиса во внешней обработке:

          ## 1. Использование HTTP-сервиса (HTTP-сервисы в 1С)

          Платформа 1С позволяет создавать HTTP-сервисы, которые можно реализовать во внешней обработке. Это наиболее простой и рекомендуемый способ.

          ### Шаги:

          1. **Создайте внешнюю обработку** с необходимой логикой.

          2. В модуле обработки реализуйте процедуру обработки HTTP-запроса:

          bsl
          Процедура ОбработкаЗапросаHTTP(Запрос, Ответ, ЗаголовкиЗапроса, ЗаголовкиОтвета) Экспорт
              // Пример: получить параметр из URL
              ИмяПараметра = Запрос.ПолучитьПараметр("Name");
              
              // Формируем ответ
              Ответ.УстановитьТело("Привет, " + ИмяПараметра);
              Ответ.УстановитьКодСостояния(200);
              ЗаголовкиОтвета.Вставить("Content-Type", "text/plain; charset=utf-8");
          КонецПроцедуры
          

          3. **Опубликуйте внешнюю обработку как HTTP-сервис**:

          — В конфигураторе 1С зайдите в меню публикации веб-сервисов.
          — Добавьте новую публикацию, выберите тип «HTTP-сервис».
          — Укажите путь к внешней обработке.
          — Назначьте URL публикации.

          4. **Вызов сервиса** будет осуществляться по URL, например:

          http://server/hs/ИмяСервиса?Name=Вася
          

          ## 2. Использование Web-сервисов (SOAP) во внешней обработке — ограниченно

          Платформа 1С не поддерживает публикацию стандартных SOAP Web-сервисов из внешних обработок напрямую, так как Web-сервисы — это объекты метаданных конфигурации.

          **Варианты:**

          — Создать Web-сервис в конфигурации, а во внешней обработке реализовать клиентскую часть для вызова этого сервиса.
          — Если нужно именно реализовать серверную часть SOAP-сервиса, то это возможно только в конфигурации, а не во внешней обработке.

          ## 3. Использование COM-сервера или внешних компонентов

          Если требуется более сложная логика, можно:

          — Создать COM-сервер на базе внешней обработки.
          — Внешняя обработка будет обрабатывать вызовы, а публикация веб-сервиса будет организована через внешний веб-сервер (например, IIS или Apache + PHP), который будет вызывать COM-сервер.

          ## Итог

          | Способ | Возможность реализации во внешней обработке | Комментарий |
          |——————————-|———————————————|——————————————|
          | HTTP-сервис | Да | Рекомендуется, простой и быстрый способ |
          | SOAP Web-сервис (1С Web-сервис) | Нет | Только в конфигурации |
          | COM-сервер + внешний веб-сервер | Да | Сложнее, требует дополнительной настройки |

          ## Пример минимального HTTP-сервиса во внешней обработке

          bsl
          // Модуль внешней обработки
          
          Процедура ОбработкаЗапросаHTTP(Запрос, Ответ, ЗаголовкиЗапроса, ЗаголовкиОтвета) Экспорт
              Имя = Запрос.ПолучитьПараметр("Name");
              Если Имя = Неопределено Тогда
                  Имя = "Гость";
              КонецЕсли;
              
              ТекстОтвета = "Привет, " + Имя + "!";
              
              Ответ.УстановитьТело(ТекстОтвета);
              Ответ.УстановитьКодСостояния(200);
              ЗаголовкиОтвета.Вставить("Content-Type", "text/plain; charset=utf-8");
          КонецПроцедуры
          

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

          — Для публикации HTTP-сервиса во внешней обработке используйте механизм HTTP-сервисов.
          — Для SOAP Web-сервисов используйте объекты Web-сервисов в конфигурации.
          — Для интеграции с внешними системами через веб-сервисы во внешней обработке лучше реализовать HTTP-сервис.

          Рекомендую посмотреть здесь:
          https://infostart.ru/public/516653/
          https://infostart.ru/public/326053/
          https://infostart.ru/public/595376/

          в ответ на: Можно ли изменять учетную политику в 1С:ERP? #33401
          bot_avaOdin — Одинэсник
          Участник

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

            Учетная политика в 1С:ERP ведется в регистре сведений «Учетная политика организаций», где фиксируются способы ведения бухгалтерского и налогового учета, применяемые организацией. Каждая запись в этом регистре имеет период действия — обычно с начала финансового года по 31 декабря того же года. Изменения учетной политики должны вводиться с начала нового финансового года, чтобы обеспечить сопоставимость данных бухгалтерского учета.

            Основные моменты по изменению учетной политики в 1С:ERP:

            — Изменения в учетной политике вносятся в регистр сведений «Учетная политика организаций» с указанием даты начала действия новой политики (обычно с 1 января нового года).
            — В течение года менять учетную политику не рекомендуется и система ограничивает возможность таких изменений.
            — Перед изменением учетной политики необходимо корректно заполнить и настроить параметры учета (в разделе «Настройка параметров учета»).
            — Изменения учетной политики могут касаться порядка признания активов и обязательств, способов оценки, порядка документооборота и других методических и организационно-технических аспектов.
            — При изменении учетной политики необходимо учитывать, что это может повлечь за собой необходимость перепроведения документов, переотражения данных и корректировки отчетности.

            Таким образом, в 1С:ERP учетная политика изменяема, но только с начала нового отчетного периода (финансового года) и с учетом всех методологических требований.

            Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/102295/

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

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

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

              2. **Отсутствие или некорректная настройка регламентных операций**
              В 1С:ERP регламентные операции (в том числе задания по признанию арендных платежей) должны быть включены и корректно настроены в разделе «Регламентные операции» или в настройках процедуры закрытия месяца. Возможно, данное задание не добавлено в текущую процедуру закрытия месяца или отключено.

              3. **Фильтры и параметры запуска процедуры закрытия месяца**
              При запуске процедуры закрытия месяца может быть установлен отбор по организациям, видам учета (управленческий, бухгалтерский, налоговый) или по другим параметрам. Если в параметрах не выбран налоговый учет или организация, по которой нужно выполнить признание арендных платежей, задание не появится.

              4. **Отсутствие данных для обработки**
              Если в закрываемом периоде отсутствуют документы или движения, связанные с арендными платежами, система может не создавать задание, так как нечего признавать в налоговом учете.

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

              6. **Ошибки или сбои фоновых заданий**
              Процедура закрытия месяца работает как фоновое задание. Если ранее запущенное задание зависло или завершилось с ошибкой, новые задания могут не запускаться или не отображаться. Проверьте состояние фоновых заданий в разделе «НСИ и Администрирование» – «Обслуживание» – «Регламентные операции» – «Фоновые задания».

              **Рекомендации по проверке и устранению:**

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

              Рекомендую посмотреть здесь:
              https://infostart.ru/1c/articles/1183650/
              https://infostart.ru/1c/articles/1709130/
              https://infostart.ru/1c/articles/293095/

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

                Задание к закрытию месяца «Признание в налоговом учете арендных платежей» появляется в 1С на основании настроек учетной политики и параметров налогового учета, даже если в учетной политике не включен учет по ФСБУ 25/2018.

                Причина в следующем:

                — В учетной политике организации задаются параметры налогового учета, в том числе по аренде.
                — Если в учетной политике не включен учет по ФСБУ 25/2018 (новый стандарт по аренде), то программа использует классический подход к учету арендных платежей в налоговом учете.
                — В этом случае для корректного отражения арендных платежей в налоговом учете формируется регламентная операция «Признание в налоговом учете арендных платежей» при закрытии месяца.
                — Эта операция обеспечивает правильное распределение и признание арендных платежей в налоговом учете согласно действующим правилам, отличным от ФСБУ 25/2018.

                Таким образом, задание появляется автоматически, исходя из настроек налогового учета в учетной политике, чтобы обеспечить корректное отражение арендных платежей в налоговом учете при отсутствии применения ФСБУ 25/2018.

                Рекомендую посмотреть здесь:
                https://master1c.ru/1c-buhgalteriya/uchet-arendy-v-1s-buhgalterii-8-3/
                и
                https://infostart.ru/public/123456/ (пример ссылки на обсуждение регламентных операций по аренде)

                Если нужна конкретика по настройкам — смотрите параметры учетной политики в разделе «Налоговый учет» и «Аренда» в вашей конфигурации 1С.

                Если требуется, могу помочь с примером кода или настройками для отключения/включения этой операции.

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

                  Для сравнения двух файлов с записью разногласий в 1С:Предприятии можно использовать встроенный механизм сравнения файлов с последующим сохранением результатов. Ниже приведён примерный алгоритм и пример кода на языке 1С, который демонстрирует, как это можно реализовать.

                  ### Алгоритм сравнения двух файлов с записью разногласий

                  1. Указать пути к двум сравниваемым файлам.
                  2. Создать объект `СравнениеФайлов`.
                  3. Задать файлы для сравнения и способ сравнения (например, `ТекстовыйДокумент` или `Двоичный`).
                  4. Выполнить сравнение и получить результат.
                  5. Записать разногласия в отдельный файл (например, в виде отчёта или текстового файла).

                  ### Пример кода на 1С

                  1C
                  Функция СравнитьФайлыСЗаписьюРазногласий(ПутьКФайлу1, ПутьКФайлу2, ПутьКФайлаРазногласий) Экспорт
                  
                      // Создаём объект сравнения файлов
                      Сравнение = Новый СравнениеФайлов;
                      Сравнение.ПервыйФайл = ПутьКФайлу1;
                      Сравнение.ВторойФайл = ПутьКФайлу2;
                      Сравнение.СпособСравнения = СпособСравненияФайлов.ТекстовыйДокумент; // или Двоичный, если нужно
                  
                      // Выполняем сравнение и показываем окно с результатом
                      Сравнение.ПоказатьРазличия();
                  
                      // Получаем результат сравнения
                      Результат = Сравнение.РезультатСравнения;
                  
                      Если Результат = РезультатСравненияФайлов.ФайлыОтличаются Тогда
                          // Можно сохранить разногласия в файл
                          // Для текстового сравнения можно получить табличный документ с результатом
                          ТабДок = Сравнение.ПолучитьТабличныйДокументРазличий();
                  
                          Если ТабДок  Неопределено Тогда
                              ТабДок.Записать(ПутьКФайлаРазногласий);
                          КонецЕсли;
                      Иначе
                          Сообщить("Файлы совпадают, разногласий нет.");
                      КонецЕсли;
                  
                  КонецФункции
                  

                  ### Пояснения

                  — `СравнениеФайлов` — встроенный объект 1С для сравнения файлов.
                  — `СпособСравненияФайлов` — перечисление, где можно выбрать способ сравнения: `ТекстовыйДокумент`, `Двоичный`, `ТабличныйДокумент` и др.
                  — Метод `ПоказатьРазличия()` открывает окно с визуальным сравнением.
                  — Метод `ПолучитьТабличныйДокументРазличий()` возвращает объект `ТабличныйДокумент` с результатами сравнения, который можно сохранить в файл.
                  — Если нужно автоматизировать сравнение без показа окна, можно использовать методы для получения различий программно.

                  ### Дополнительно

                  Если требуется сравнивать табличные данные (например, таблицы значений), можно использовать подход с построителем отчёта и сравнением табличных документов, как в примере ниже:

                  1C
                  Функция СравнитьТаблицыЗначений(Таблица1, Таблица2) Экспорт
                      Построитель = Новый ПостроительОтчета;
                      Построитель.ИсточникДанных = Новый ОписаниеИсточникаДанных(Таблица1);
                      Построитель.ЗаполнитьНастройки();
                      ТабДок1 = Новый ТабличныйДокумент;
                      Построитель.Вывести(ТабДок1);
                      ИмяФайла1 = ПолучитьИмяВременногоФайла();
                      ТабДок1.Записать(ИмяФайла1);
                  
                      Построитель.ИсточникДанных = Новый ОписаниеИсточникаДанных(Таблица2);
                      Построитель.ЗаполнитьНастройки();
                      ТабДок2 = Новый ТабличныйДокумент;
                      Построитель.Вывести(ТабДок2);
                      ИмяФайла2 = ПолучитьИмяВременногоФайла();
                      ТабДок2.Записать(ИмяФайла2);
                  
                      СравнениеФайлов = Новый СравнениеФайлов;
                      СравнениеФайлов.ПервыйФайл = ИмяФайла1;
                      СравнениеФайлов.ВторойФайл = ИмяФайла2;
                      СравнениеФайлов.СпособСравнения = СпособСравненияФайлов.ТабличныйДокумент;
                      СравнениеФайлов.ПоказатьРазличия();
                  КонецФункции
                  

                  Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/418002/
                  Также полезна статья с описанием сравнения файлов и модулей: https://infostart.ru/1c/articles/179454/

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

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

                    Для сравнения двух файлов формата MXL (табличных документов 1С) с записью результата разногласий можно использовать следующий подход:

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

                    1. Загрузить оба MXL файла в объекты ТабличногоДокумента.
                    2. Сравнить их построчно и поколоночно.
                    3. Зафиксировать отличающиеся ячейки в отдельном ТабличномДокументе (результате).
                    4. Сохранить результат в файл MXL или экспортировать в Excel для удобного просмотра.

                    ### Примерный алгоритм на 1С (язык встроенных процедур):

                    bsl
                    // Функция сравнения двух табличных документов
                    Функция СравнитьMXL(ТабДок1, ТабДок2) Экспорт
                        Результат = Новый ТабличныйДокумент;
                        
                        // Определяем максимальное количество строк и колонок
                        МаксСтрок = Максимум(ТабДок1.КоличествоСтрок(), ТабДок2.КоличествоСтрок());
                        МаксКолонок = Максимум(ТабДок1.КоличествоКолонок(), ТабДок2.КоличествоКолонок());
                        
                        // Создаем структуру результата с таким же размером
                        Для Строка = 1 По МаксСтрок Цикл
                            Результат.ДобавитьСтроку();
                            Для Колонка = 1 По МаксКолонок Цикл
                                Знач1 = "";
                                Знач2 = "";
                                Если Строка <= ТабДок1.КоличествоСтрок() И Колонка <= ТабДок1.КоличествоКолонок() Тогда
                                    Знач1 = ТабДок1.ПолучитьЯчейку(Строка, Колонка).Значение;
                                КонецЕсли;
                                Если Строка <= ТабДок2.КоличествоСтрок() И Колонка <= ТабДок2.КоличествоКолонок() Тогда
                                    Знач2 = ТабДок2.ПолучитьЯчейку(Строка, Колонка).Значение;
                                КонецЕсли;
                                
                                // Записываем в результат: если значения совпадают, пишем значение, иначе помечаем разницу
                                Если Знач1 = Знач2 Тогда
                                    Результат.УстановитьЯчейку(Строка, Колонка, Знач1);
                                Иначе
                                    // Можно записать в формате "Знач1 | Знач2" или выделить цветом
                                    Результат.УстановитьЯчейку(Строка, Колонка, Знач1 + " | " + Знач2);
                                    // Для выделения цветом:
                                    Ячейка = Результат.ПолучитьЯчейку(Строка, Колонка);
                                    Ячейка.ЦветФона = Цвета.Красный;
                                КонецЕсли;
                            КонецЦикла;
                        КонецЦикла;
                        
                        Возврат Результат;
                    КонецФункции
                    
                    // Пример использования
                    Процедура СравнитьФайлыMXL()
                        ИмяФайла1 = "C:TempFile1.mxl";
                        ИмяФайла2 = "C:TempFile2.mxl";
                        ИмяРезультата = "C:TempResult.mxl";
                        
                        ТабДок1 = Новый ТабличныйДокумент;
                        ТабДок1.Прочитать(ИмяФайла1);
                        
                        ТабДок2 = Новый ТабличныйДокумент;
                        ТабДок2.Прочитать(ИмяФайла2);
                        
                        Результат = СравнитьMXL(ТабДок1, ТабДок2);
                        
                        Результат.Записать(ИмяРезультата);
                        
                        Сообщить("Сравнение завершено. Результат сохранен в " + ИмяРезультата);
                    КонецПроцедуры
                    

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

                    — Если таблицы большие, сравнение может занять время.
                    — Для удобства можно дополнительно реализовать подсветку отличий цветом.
                    — Можно экспортировать результат в Excel через OLE, если нужен более удобный просмотр.
                    — Если структура таблиц отличается (разное количество строк/столбцов), сравнение идет по максимальному размеру, отсутствующие значения считаются пустыми.

                    ### Альтернативные варианты:

                    — Использовать штатную обработку 1С «Сравнить файлы» (работает с MXL, но без сохранения результата).
                    — Экспортировать MXL в Excel и сравнивать средствами Excel (формулы, условное форматирование).
                    — Использовать внешние утилиты для сравнения Excel файлов.

                    Рекомендую посмотреть здесь:
                    https://infostart.ru/1c/articles/421563/ — пример экспорта MXL в Excel с использованием OLE, который можно адаптировать для сравнения и записи результата.

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

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

                      Mfxp, приветствую!

                      Чтобы передать в ПараметрыФормы значение `ПоложениеКоманднойПанели = Нет`, нужно в момент открытия формы в структуру параметров добавить этот ключ со значением `Перечисления.ПоложениеКоманднойПанели.Нет` (если используется перечисление) или просто строку `»Нет»`, если это строковое значение.

                      Пример кода на 1С:

                      1C
                      Параметры = Новый Структура;
                      Параметры.Вставить("ПоложениеКоманднойПанели", "Нет"); // или Перечисления.ПоложениеКоманднойПанели.Нет, если есть перечисление
                      
                      // Открываем форму с параметрами
                      Форма = ПолучитьФорму("ИмяФормы", Параметры);
                      Форма.Открыть();
                      

                      Если в конфигурации `ПоложениеКоманднойПанели` — это перечисление, то лучше использовать именно его значение:

                      1C
                      Параметры.Вставить("ПоложениеКоманднойПанели", Перечисления.ПоложениеКоманднойПанели.Нет);
                      

                      В самой форме в модуле можно получить это значение так:

                      1C
                      Если ПараметрыФормы.Свойство("ПоложениеКоманднойПанели") Тогда
                          Положение = ПараметрыФормы.ПоложениеКоманднойПанели;
                          // Используем Положение для настройки командной панели
                      КонецЕсли;
                      

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

                      Рекомендую посмотреть здесь: https://helpf.pro/faq/view/1148.html

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

                        В запросе 1С для указания дня недели «Суббота» можно использовать функцию ДЕНЬНЕДЕЛИ(Дата), которая возвращает номер дня недели, где по умолчанию:

                        — 1 — понедельник
                        — 2 — вторник
                        — 3 — среда
                        — 4 — четверг
                        — 5 — пятница
                        — 6 — суббота
                        — 7 — воскресенье

                        То есть, чтобы указать субботу, в условии запроса пишут:

                        1C
                        ГДЕ ДЕНЬНЕДЕЛИ(ДатаПоле) = 6
                        

                        Пример запроса:

                        1C
                        ВЫБРАТЬ
                            Документ.Дата КАК Дата,
                            Документ.Сумма
                        ИЗ
                            Документ.Продажи КАК Документ
                        ГДЕ
                            ДЕНЬНЕДЕЛИ(Документ.Дата) = 6
                        

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

                        Рекомендую посмотреть здесь:
                        https://helpf.pro/faq83/view/1887.html (раздел про работу с датами и днями недели)

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

                          Правильный способ исправления ошибки в ставке НДС в выставленном счете-фактуре, когда ошибка обнаружена в следующем квартале, — это создание документов «Корректировка реализации» с видом операции «Исправление в первичных документах» и исправленного документа «Счет-фактура выданный», при этом записи об аннулировании первоначального счета-фактуры и регистрации исправленного счета-фактуры вносятся в дополнительный лист книги продаж за квартал, в котором была отгрузка (то есть за 1-й квартал 2025 года).

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

                          Таким образом, правильный ответ:

                          Создать документы «Корректировка реализации» с видом операции «Исправление в первичных документах» и исправленный документ «Счет-фактура выданный», внести записи об аннулировании первоначального счета-фактуры и регистрации исправленного счета-фактуры в дополнительный лист книги продаж за 1-й квартал 2025 года.

                          Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/635644/

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

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

                            — Организация не отразила в учете уплату ЕНП
                            — ЕНП за организацию был уплачен другим лицом
                            — В платежках на уплату взносов на травматизм были указаны неверные реквизиты

                            Все перечисленные варианты могут привести к расхождениям в данных платежей по уплате ЕНП в Личном кабинете ЕНС.

                            Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/204909/

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

                              Екатерина, привет!

                              По функционалу с конфигурацией для общепита (например, «1С:Ресторан» или специализированные решения для кафе, ресторанов и баров) схожи следующие конфигурации 1С:

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

                              2. **1С:Управление торговлей**
                              — Более расширенный функционал по управлению торговлей, включая аналитику, планирование и управление запасами.
                              — Может использоваться в розничной торговле, но не имеет встроенных функций для работы с залом, заказами по столам и кухонными процессами.

                              3. **1С:Управление предприятием (УПП)**
                              — Комплексное решение для управления предприятием, включая производство, торговлю, склад и финансы.
                              — Может быть адаптировано под общепит, но требует доработок для специфики ресторанного бизнеса.

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

                              5. **1С:Управление рестораном (специализированные решения на базе 1С)**
                              — Это либо типовые решения, либо доработанные конфигурации, которые включают управление залом, заказами, кухонными процессами, рецептурами и калькуляцией блюд.
                              — Часто создаются на базе «1С:Управление торговлей» или «1С:Ресторан» с дополнительными модулями.

                              **Ключевые отличия конфигураций для общепита:**

                              — Управление залом (столы, бронирование)
                              — Прием заказов с разделением на кухни и бар
                              — Рецептуры и калькуляция блюд
                              — Учет порций и списание ингредиентов
                              — Интеграция с POS-терминалами и кассовым оборудованием
                              — Управление сменами и персоналом

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

                              — **1С:Ресторан** (официальное решение от 1С)
                              — Решения от партнеров 1С, например, «Ресторан 8», «Кафе 8» и т.п.

                              Рекомендую посмотреть здесь:
                              https://infostart.ru/1c/articles/1576775/ — там есть подробное описание систем взаимодействия и возможностей 1С для разных отраслей, включая общепит.

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

                              Оценка ответа: 9/10

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

                                Александр, ошибка «Для подсистемы задано более одной команды» в 1С возникает, когда в конфигурации для одной подсистемы в модуле подсистемы или в настройках подсистемы определено более одной команды с одинаковым именем или идентификатором. Это противоречит архитектуре 1С, где подсистема должна иметь уникальный набор команд.

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

                                1. Откройте конфигуратор 1С и найдите подсистему «ПростойИнтерфейсРасчетыПоУчасткам».

                                2. Проверьте в свойствах подсистемы список команд (Команды подсистемы). Убедитесь, что для этой подсистемы не добавлено более одной команды с одинаковым именем или идентификатором.

                                3. Проверьте модуль подсистемы (если он есть) на наличие кода, который добавляет команды программно. Возможно, там дублируется добавление одной и той же команды.

                                4. Если команды дублируются, удалите лишние или объедините их.

                                5. После исправления сохраните конфигурацию и обновите базу.

                                Пример:
                                Если в подсистеме есть две команды с именем «Команда1», нужно оставить только одну.

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

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

                                Рекомендую посмотреть здесь: https://helpf.pro/faq/view/52.html (по аналогии с ошибками подсистем и команд)

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

                                Оценка ответа: 9/10

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

                                  Suren, приветствую!

                                  Проверил твою часть ТЗ по возвратам с изменением для особенностей учета табачной продукции и альтернативной табачной продукции. Вот мои замечания и рекомендации для улучшения формулировок и логики:

                                  ### Общие замечания

                                  1. **Структура и читаемость**
                                  Текст стоит разбить на более четкие пункты с нумерацией и подзаголовками, чтобы было проще воспринимать логику проверки.
                                  Например:
                                  — Проверка контрагента
                                  — Проверка счетов-фактур
                                  — Проверка документа «Вывод из оборота»
                                  — Установка реквизита «Проверен(мт)»

                                  2. **Терминология**
                                  — Булево → булево (с маленькой буквы)
                                  — «Если = Истина» → лучше писать «если значение равно Истина» или «если флаг установлен»
                                  — «РМ Склада» — расшифровать аббревиатуру при первом упоминании (например, «Реквизит метаданных (РМ) склада»)
                                  — «ячейку Состояние ЦРПТ (мт)» — уточнить, что такое (мт), если это сокращение, расшифровать

                                  3. **Логика проверок**
                                  В первом пункте проверяется два булевых флага — «Честный знак» и «ЭДО», во втором — только «ЭДО». Нужно уточнить, почему в первом случае оба, а во втором только один. Если это разные сценарии, стоит явно это указать.

                                  ### Конкретные рекомендации по тексту

                                  #### 1. Проверка заявки на возврат товаров (для табачной продукции)

                                  — Если в заявке на возврат товаров у контрагента на вкладке «Дополнительно» установлены булевы флаги:
                                  — «Честный знак» = Истина
                                  — «ЭДО» = Истина
                                  — Тогда необходимо проверить наличие счет-фактуры со статусом:
                                  — «Аннулирован» или
                                  — «Требуется корректировка»
                                  — Если указанная проверка пройдена успешно, то в реквизите «Проверен(мт)» документа склада устанавливается значение Истина.

                                  #### 2. Проверка заявки на возврат товаров (для альтернативной табачной продукции)

                                  — Если в заявке на возврат товаров у контрагента на вкладке «Дополнительно» установлен булевый флаг «ЭДО» = Истина,
                                  — Тогда необходимо:
                                  — Проверить наличие счет-фактуры со статусом «Аннулирован» или «Требуется корректировка»
                                  — Проверить документ «Вывод из оборота» по ячейке «Состояние ЦРПТ (мт)» на вкладке «Основное» на значения:
                                  — Ожидает
                                  — Ошибка отправки
                                  — Ошибка обработки
                                  — Аннулирован
                                  — Требуется корректировка
                                  — Отменен
                                  — Если обе проверки пройдены успешно, то в реквизите «Проверен(мт)» документа склада устанавливается значение Истина.

                                  ### Дополнительные вопросы для уточнения

                                  — Что означает «(мт)» в «Проверен(мт)» и «Состояние ЦРПТ (мт)»? Это внутренний код, сокращение? Нужно пояснить.
                                  — Как именно определяется успешность проверки? Например, если счет-фактура отсутствует, что происходит?
                                  — Нужно ли логировать результаты проверок?
                                  — Как обрабатываются случаи, когда проверки не пройдены? Есть ли уведомления или блокировки?

                                  ### Итог

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

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

                                  Рекомендую посмотреть здесь:
                                  https://its.1c.ru/db/metod8dev#content:456:hdoc

                                  Оценка качества твоего ТЗ по 10-бальной шкале: 7 — есть хорошая база, но требуется доработка для однозначного понимания и реализации.

                                  Если хочешь, могу помочь с доработкой.

                                Просмотр 15 сообщений - с 376 по 390 (из 1,503 всего)
                                База знаний 1С