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

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

    Ev, добрый день!

    В 1С-Рарус: Бухгалтерия для некоммерческой организации 5.0 источники финансирования — это важный элемент учета, который позволяет вести раздельный учет по различным источникам поступлений и расходования средств (например, бюджетные средства, внебюджетные, целевые поступления и т.д.).

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

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

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

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

    4. **Доработка отчетности и аналитики**
    — Для корректного отражения данных по источникам финансирования необходимо доработать отчеты, чтобы они учитывали новые или изменённые источники.
    — В типовых отчетах может потребоваться добавить отбор или группировку по источникам финансирования.

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

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

    ### Пример кода для добавления реквизита «Источник финансирования» в документ (1С:Предприятие 8, язык 1С)

    ### Рекомендации по доработке:

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

    Рекомендую посмотреть здесь:
    https://infostart.ru/public/178081/ — по управленческой отчетности и работе с источниками данных,
    а также документацию и методические материалы по 1С-Рарус: Бухгалтерия для НКО.

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

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

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

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

    ### Шаг 1. Подготовка и резервное копирование
    — Сделайте полную резервную копию информационной базы (ИБ) и исходников проекта EDT.
    — Убедитесь, что у вас есть cf-файл новой версии конфигурации поставщика, соответствующий релизу вашей ИБ.

    ### Шаг 2. Импорт новой версии конфигурации поставщика в EDT

    1. Откройте EDT и загрузите проект вашей конфигурации УТ.
    2. Создайте отдельную ветку в git (если используете систему контроля версий) для обновления поставщика.
    3. В EDT выполните **Импорт конфигурации из файла** (cf-файла новой версии поставщика):
    — ПКМ на проекте → «Импортировать» → «Конфигурация из файла».
    — Выберите cf-файл новой версии.
    4. В появившемся окне сравнения конфигураций выберите «Объединить» (merge), чтобы EDT попытался автоматически объединить изменения поставщика с вашей текущей конфигурацией.
    5. Разрешите конфликты, если они возникнут, вручную.

    ### Шаг 3. Слияние изменений поставщика с вашей доработанной конфигурацией

    — Если у вас есть собственные доработки, которые не должны быть потеряны, аккуратно объедините их с обновлённой конфигурацией.
    — Используйте возможности EDT для сравнения и слияния объектов.
    — Зафиксируйте изменения в git.

    ### Шаг 4. Экспорт обновлённой конфигурации из EDT в ИБ

    1. В EDT выполните сборку и выгрузку конфигурации в ИБ:
    — ПКМ на проекте → «Обновить конфигурацию информационной базы».
    2. Дождитесь завершения полной сборки и обновления ИБ.

    ### Шаг 5. Финальная проверка и получение отчёта об изменённых объектах в конфигураторе

    1. Откройте конфигуратор 1С и подключитесь к обновлённой ИБ.
    2. Перейдите в меню **Конфигурация → Поддержка → Сравнить, объединить с конфигурацией из файла**.
    3. Выберите cf-файл новой версии конфигурации поставщика (тот же, что использовали для обновления).
    4. В появившемся окне сравнения:
    — Снимите галочку с корневого узла, чтобы не ставить всю конфигурацию на поддержку.
    — Нажмите «Выполнить» для сравнения.
    5. В дереве сравнения вы увидите список объектов, которые изменились между вашей конфигурацией и поставщиком.
    6. Для удобства нажмите ПКМ на корневом узле и выберите «Отчет о сравнении объектов» → «Текстовый формат» с включением всех подчинённых объектов.
    7. Сохраните отчёт — это и будет ваш любимый отчёт об изменённых объектах.

    ### Шаг 6. Анализ отчёта и доработка

    — Проанализируйте отчёт, чтобы понять, какие объекты были изменены поставщиком и какие — вами.
    — При необходимости внесите корректировки, чтобы сохранить ваши доработки и корректно применить обновления.

    ### Рекомендации и полезные советы

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

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

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

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

    S, при закрытии месяца в 1С tempdb на SQL Server может сильно расти по следующим причинам:

    1. **Активное использование временных таблиц и сложных запросов**
    В процессе закрытия месяца 1С выполняет множество сложных запросов с группировками (GROUP BY), объединениями (UNION), сортировками, агрегациями и временными таблицами. Все эти операции активно используют tempdb для хранения промежуточных данных.

    2. **Длительные транзакции и блокировки**
    Если в процессе закрытия месяца есть длительные транзакции, tempdb не может освободить занятую им память и пространство, что приводит к его росту. Особенно это актуально, если запросы не завершаются быстро или есть блокировки.

    3. **Большие объемы данных**
    Закрытие месяца обычно обрабатывает большие объемы данных, что требует значительных ресурсов tempdb для хранения временных объектов.

    4. **Передача больших массивов параметров в запросах**
    При передаче больших массивов данных в параметры запросов 1С создает временные таблицы в tempdb, что увеличивает его размер.

    5. **Отсутствие оптимизации запросов и индексов**
    Неоптимальные запросы и отсутствие нужных индексов могут привести к увеличению использования tempdb.

    ### Рекомендации по решению и оптимизации:

    — **Диагностика «тяжелых» запросов**
    Используйте системные представления SQL Server (sys.dm_db_session_space_usage, sys.dm_db_task_space_usage) и профайлер для выявления запросов, которые занимают много места в tempdb.

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

    — **Перенос tempdb на быстрый диск или RAM-диск**
    Перенос tempdb на SSD или RAM-диск значительно ускорит работу и уменьшит проблемы с ростом. При этом важно настроить несколько файлов tempdb для параллелизма.

    — **Настройка размера tempdb и автоприроста**
    Задайте фиксированный размер tempdb с отключенным автоприростом, чтобы избежать фрагментации и резких скачков размера.

    — **Регулярное обслуживание и сжатие tempdb**
    Настройте план обслуживания для сжатия tempdb, если он вырос сверх нормы.

    — **Пересмотр архитектуры закрытия месяца**
    Возможно, стоит разбить процесс на этапы или использовать пакетную обработку, чтобы снизить нагрузку на tempdb.

    ### Пример команды для диагностики сессий с большим использованием tempdb:

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

    Рекомендую посмотреть здесь:
    https://infostart.ru/1c/articles/1880561/
    https://infostart.ru/1c/articles/990824/
    https://helpf.pro/faq/view/449.html

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

    Yari, в 1С:ERP оформление счета-фактуры при реализации основного средства происходит следующим образом:

    1. **Создание документа реализации основного средства**
    В разделе «Продажи» или «Реализация» создается документ «Реализация товаров и услуг», в котором указывается реализуемое основное средство. В табличной части выбирается номенклатура, соответствующая основному средству.

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

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

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

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

    6. **Отражение в учете**
    После оформления реализации и счета-фактуры данные автоматически попадут в бухгалтерский и налоговый учет, а также в регистры НДС.

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

    Рекомендую посмотреть здесь:
    https://infostart.ru/1c/articles/2026192/ — по созданию счетов-фактур в 1С
    https://infostart.ru/1c/articles/1734704/ — по учету основных средств в ERP

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

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

    Avgust, чтобы в 1С:УНФ при выставлении счета с базовой единицей измерения «рулон» в печатной форме отображалась единица измерения «м2», необходимо настроить механизм пересчета и отображения единиц измерения следующим образом:

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

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

    3. **Автоматизация в документе:**
    — При заполнении табличной части документа (счета) можно добавить обработчик, который автоматически рассчитывает количество в м2 и записывает его в дополнительное поле или реквизит.
    — Это позволит использовать это значение в печатной форме без дополнительных вычислений.

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

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

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

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

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

    Eugene, привет!

    Причина, по которой у вас не меняется движение с прихода на расход при установке

    может быть связана с несколькими моментами:

    1. **Тип регистра и его настройки**
    В управляемых регистрах накопления (например, оборотных регистрах) поле ВидДвижения обязательно должно быть определено в структуре регистра и поддерживаться в конфигурации. Если в регистре ПК_ПродажиПоПромокодам поле ВидДвижения отсутствует или не используется, то присвоение этого поля не повлияет на движение.

    2. **Метод записи движений**
    В 1С 8.x для оборотных регистров накопления движение с приходом или расходом определяется не только полем ВидДвижения, а чаще всего знаком количества или суммы:
    — Если количество или сумма положительные — движение считается приходом.
    — Если отрицательные — расходом.

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

    или

    3. **Перечисление ВидыДвиженияНакопления**
    Убедитесь, что вы используете правильное перечисление и что оно соответствует именно вашему регистру. В некоторых регистрах поле ВидДвижения называется иначе или вообще отсутствует.

    4. **Запись движений в процедуре проведения**
    Методы добавления и записи движений должны выполняться в процедуре ОбработкаПроведения. Если вы пытаетесь изменить движение вне этой процедуры, изменения не сохранятся.

    ### Рекомендации для решения:

    — Проверьте структуру регистра ПК_ПродажиПоПромокодам — есть ли в нем поле ВидДвижения и используется ли оно.
    — Если поле отсутствует, управляйте знаком количества или суммы для определения прихода/расхода.
    — Пример корректного кода для расхода через отрицательное количество:

    — Если в вашем регистре есть поле ВидДвижения, убедитесь, что вы используете правильное перечисление и что оно действительно влияет на движение.

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

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

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

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

    Александр, привет!

    Ошибка

    означает, что при обновлении конфигурации 1С ЗУП 3 КОРП происходит попытка обращения к объекту роли (rolePtr), который в текущем контексте отсутствует (nullptr). Проще говоря, система ожидает, что роль существует, но не находит её в метаданных или в базе.

    Причины возникновения ошибки и рекомендации по исправлению:

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

    2. **Проверка и синхронизация ролей**
    — В конфигураторе выгрузите конфигурацию из боевой базы в XML.
    — Сравните список ролей с основной конфигурацией (например, из тестовой базы).
    — Если обнаружите отсутствующие роли, попробуйте их восстановить или удалить ссылки на них из базы.

    3. **Обновление справочника «Идентификаторы объектов метаданных»**
    Иногда ошибка связана с несоответствием идентификаторов ролей. Выполните обновление вспомогательных данных:
    — Используйте внешнюю обработку «Инструменты разработчика: Обновление вспомогательных данных» (если есть).
    — Или запустите 1С с параметром командной строки:

    — Либо увеличьте номер версии конфигурации и запустите обновление заново.

    4. **Проверка расширений и доработок**
    Если в базе есть расширения, которые добавляют или изменяют роли, убедитесь, что они корректно установлены и совместимы с новой версией ЗУП.

    5. **Очистка кэша и перезапуск серверов**
    После исправлений обязательно очистите кэш 1С (как на сервере, так и на клиенте), перезапустите серверные службы и попробуйте обновление снова.

    6. **Если проблема сохраняется**
    — Проведите выгрузку конфигурации из боевой базы и из тестовой, сравните XML-файлы ролей (в папке с выгрузкой).
    — В случае обнаружения расхождений вручную исправьте UUID ролей в XML, как описано в вашем первом сообщении (проставить корректные идентификаторы).
    — Загрузите исправленную конфигурацию и выполните обновление.

    **Кратко:** ошибка связана с отсутствием или некорректностью ролей в базе, которые ожидает обновление. Нужно синхронизировать роли между конфигурацией и базой, обновить вспомогательные данные и проверить расширения.

    Рекомендую посмотреть здесь:
    https://infostart.ru/1c/articles/780531/ — про обновление идентификаторов объектов метаданных и ролей.

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

    Оценка ответа: 9/10 — максимально подробно, с практическими рекомендациями и ссылками.

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

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

    1. **Установка и настройка веб-сервера Apache**
    — Убедитесь, что Apache установлен и запущен (обычно Apache 2.4).
    — Настройте Apache, чтобы он мог обслуживать каталоги, где будут размещены файлы 1С.

    2. **Публикация информационной базы 1С с помощью утилиты webinst**
    — Создайте шаблон публикации (файл .vrd), в котором укажите параметры публикации, включая:
    — Веб-сервер (например, Apache 2.4)
    — Публикацию веб-сервисов (если требуется)
    — Параметры подключения к базе (Srvr=server;Ref=base;)
    — Пример команды публикации:

    — Для публикации веб-сервисов дополнительно отредактируйте файл default.vrd, добавив описание сервисов.

    3. **Настройка прав доступа**
    — Дайте пользователю, от имени которого работает Apache, права на чтение и выполнение каталогов исполняемых файлов 1С:
    /opt/1C/v8.3/x86_64/ (для 64-битной версии)
    — Если база файловая, предоставьте права на запись и модификацию каталога базы.

    4. **Проверка публикации**
    — В браузере откройте адрес, соответствующий каталогу публикации, например:
    http://localhost/test
    — Для доступа из сети используйте IP или доменное имя сервера.

    5. **Дополнительные настройки (по необходимости)**
    — Настройка сессий, пулов, таймаутов в файле .vrd
    — Публикация HTTP-сервисов и OData, если требуется
    — Настройка SSL, если нужна защищённая связь

    Если кратко, то для публикации веб-сервера 1С под Linux нужно:
    — Установленный и настроенный Apache 2.4
    — Утилита webinst для публикации базы и веб-сервисов
    — Правильный шаблон публикации .vrd с настройками веб-сервисов
    — Настроенные права доступа для пользователя Apache к каталогам 1С и базе

    Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/1543747/ — там есть подробная шпаргалка и примеры.

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

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

    Ахмед, добрый день!

    Для настройки электронной подписи (ЭП) в 1С:Бухгалтерия 3.0 (версия 3.0.185.24) необходимо выполнить следующие шаги:

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

    2. **Установка криптопровайдера**
    — Установите и настройте криптопровайдер, совместимый с вашим сертификатом (чаще всего это КриптоПро CSP).
    — Проверьте, что сертификат корректно отображается в системе (через «Сертификаты» Windows).

    3. **Настройка 1С:Бухгалтерия 3.0**
    — В 1С перейдите в раздел **Администрирование** → **Настройки программы** → **Электронная подпись и шифрование**.
    — В разделе «Настройка ЭП» укажите путь к установленному криптопровайдеру (если требуется).
    — В карточке организации (раздел **НСИ и администрирование** → **Организации**) заполните реквизиты, связанные с ЭП, если они есть.

    4. **Настройка подписантов**
    — В справочнике **Физические лица** укажите сотрудников, которые будут подписывать документы, и загрузите их сертификаты (если предусмотрено).
    — В регистре сведений **Уполномоченные лица организаций** можно указать, кто подписывает документы от имени организации (руководитель, главный бухгалтер и т.д.).

    5. **Использование ЭП при работе с документами**
    — При формировании отчетности (например, налоговой декларации, отчетов в ФНС) в 1С появится возможность подписать документы электронной подписью.
    — Для подписания документов 1С использует установленный криптопровайдер и сертификат.
    — В диалогах подписания укажите пароль к ключу ЭП.

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

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

    — Если у вас установлен пакет Сбербанк Sbersign, можно интегрировать его вызовы через ЗапуститьПриложение() для удобства подписи файлов прямо из 1С (см. пример ниже):

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

    ### Рекомендую посмотреть здесь:
    https://infostart.ru/1c/articles/353681/ — интеграция SberSign в 1С
    https://infostart.ru/1c/articles/1667002/ — настройка факсимиле подписи в Бухгалтерии 3.0
    — Официальная документация 1С по работе с ЭП в вашей версии

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

    Оценка ответа: 9/10 (подробно, с практическими рекомендациями и ссылками)

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

    Даниил, привет!

    Критерии отбора в 1С — это мощный инструмент для поиска и фильтрации объектов, связанных с определённым значением, например, со справочником «Номенклатура». Чтобы зафиксировать все справочники и документы, где используется номенклатура, нужно создать критерий отбора по типу данных СправочникСсылка.Номенклатура. Вот подробный алгоритм и пример использования:

    ### 1. Создание критерия отбора

    — В конфигураторе создайте новый объект метаданных — **Критерий отбора**.
    — На закладке **Данные** укажите тип данных: СправочникСсылка.Номенклатура.
    — На закладке **Состав** отметьте все объекты (справочники, документы, регистры и т.п.), в которых встречается ссылка на номенклатуру. Система автоматически покажет объекты, содержащие реквизиты типа СправочникСсылка.Номенклатура, включая реквизиты табличных частей.
    — При необходимости настройте форму списка на закладке **Форма** для удобного отображения результатов.
    — На закладке **Права** настройте доступ к критерию отбора для нужных ролей.

    ### 2. Использование критерия отбора в запросах

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

    — Здесь ДокументыСНоменклатурой — имя вашего критерия отбора.
    — Параметр Номенклатура — ссылка на элемент справочника «Номенклатура», по которому ищем.

    ### 3. Особенности и рекомендации

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

    ### 4. Пример практического применения

    — Отслеживание всех документов, где используется конкретный товар.
    — Анализ использования номенклатуры в разных подсистемах.
    — Быстрый переход из карточки номенклатуры к связанным документам.

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

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

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

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

    Ошибка «был достигнут предел размера стека на сервере» в Microsoft SQL Server связана с тем, что глубина рекурсии или вложенность запроса превышает внутренние ограничения SQL Server. К сожалению, в самом SQL Server нет прямой настройки для увеличения размера стека, так как это системный параметр, зависящий от архитектуры и настроек ОС.

    **Что можно сделать для решения проблемы:**

    1. **Оптимизировать запросы:**
    — Упростить сложные запросы с глубокой вложенностью.
    — Избегать чрезмерной рекурсии, например, в рекурсивных CTE.
    — Разбить сложные операции на несколько более простых.

    2. **Проверить и оптимизировать рекурсивные запросы:**
    — Если используется рекурсивный CTE, ограничить глубину рекурсии с помощью OPTION (MAXRECURSION n).
    — Например:

    — Значение MAXRECURSION по умолчанию 100, можно увеличить, но не бесконечно.

    3. **Обновить SQL Server и драйверы:**
    — Иногда ошибка вызвана багами в конкретных версиях SQL Server или драйверов (например, Native Client).
    — Обновление до последних сервис-паков и патчей может помочь.

    4. **Проверить настройки ОС и SQL Server:**
    — Убедиться, что сервер имеет достаточный объем памяти.
    — Проверить, не ограничивает ли политика безопасности или настройки ОС стек-память для процессов SQL Server.

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

    6. **Использовать профилирование и трассировку:**
    — С помощью SQL Server Profiler или Extended Events определить, какой именно запрос вызывает ошибку.
    — Проанализировать и оптимизировать его.

    **Прямого способа увеличить размер стека SQL Server нет**, так как это ограничение на уровне ядра сервера и ОС. Основная задача — оптимизировать запросы и логику, чтобы не достигать этого предела.

    ### Резюме

    — Упростите и оптимизируйте запросы.
    — Используйте OPTION (MAXRECURSION) для рекурсивных CTE.
    — Обновите SQL Server и драйверы.
    — Проверьте настройки ОС и памяти.
    — Анализируйте проблемные запросы с помощью профилировщика.

    Рекомендую посмотреть здесь:
    https://learn.microsoft.com/en-us/sql/t-sql/queries/recursive-queries?view=sql-server-ver16
    https://support.microsoft.com/en-us/topic/error-message-8631-when-you-run-a-query-that-has-deep-nesting-in-sql-server-2012-2014-or-2016-0a3a3a3a-3a3a-3a3a-3a3a-3a3a3a3a3a3a

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

    Ev, привет!

    Переход на 1С:Бухгалтерия 3.0 с начала года путем ввода остатков и переноса нормативно-справочной информации (НСИ) имеет ряд важных преимуществ:

    1. **Чистая и корректная база данных**
    Ввод остатков на начало года позволяет начать учет в новой версии с актуального состояния, без переноса накопленных ошибок и «хвостов» из предыдущих периодов. Это снижает риски ошибок в учете и отчетности.

    2. **Оптимизация и упрощение перехода**
    Перенос только НСИ (справочники, планы счетов, контрагенты, номенклатура и т.п.) и ввод остатков вручную — более простой и контролируемый процесс, чем перенос всей истории операций. Это сокращает время и ресурсы на переход.

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

    4. **Использование новых возможностей конфигурации 3.0**
    Версия 3.0 содержит обновленные механизмы учета, улучшенный интерфейс, расширенные отчеты и интеграции (например, с 1С-Отчетностью, электронным документооборотом, сервисами ФНС). Начало учета с начала года позволяет сразу полноценно использовать эти возможности.

    5. **Упрощение сверки и контроля**
    Ввод остатков на начало года облегчает сверку с бухгалтерской и налоговой отчетностью, так как отчетность формируется с начала ведения учета в новой системе.

    6. **Минимизация ошибок при переносе данных**
    Перенос НСИ исключает сложности с несовместимостью старых документов и операций, которые могли бы вызвать ошибки при конвертации полной базы.

    7. **Гибкость и возможность поэтапного внедрения**
    Такой подход позволяет сначала освоить новую систему на актуальных данных, а при необходимости — сохранить старую базу для анализа истории.

    Рекомендую посмотреть здесь:
    https://infostart.ru/1c/articles/241632/ — подробные рекомендации по переходу и работе с остатками в 1С:Бухгалтерия 3.0.

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

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

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

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

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

    Пример вызова процедуры:

    Если в вашей конфигурации структура регистра сведений «ВерсииОбъектов» отличается, необходимо подстроить запрос под реальные имена реквизитов и измерений.

    Если требуется получить версии объектов из хранилища конфигурации (например, для анализа изменений), то это делается через HTTP-запросы к серверу хранилища конфигурации с использованием протокола, описанного в статье: https://infostart.ru/1c/articles/1249769/

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

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

    S, добрый день!

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

    Общий алгоритм получения версий объекта следующий:

    1. Определить объект, версии которого нужно получить (например, справочник, документ и т.п.).
    2. Выполнить запрос к регистру сведений, где хранятся версии, с фильтрацией по нужному объекту (например, по ссылке на объект или по его идентификатору).
    3. Получить список версий с необходимыми данными (номер версии, дата, кто изменил, комментарии и т.п.).
    4. При необходимости — получить содержимое конкретной версии (например, в виде XML или двоичных данных).

    Пример кода на 1С для получения списка версий объекта из регистра сведений «ВерсииОбъектов»:

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

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

    Если у вас в конфигурации используется стандартная подсистема версионирования (например, из Библиотеки стандартных подсистем), то там обычно есть общие модули с процедурами и функциями для работы с версиями — рекомендую посмотреть их и использовать.

    Рекомендую посмотреть здесь:
    https://infostart.ru/1c/articles/329687/ — подробная статья по версионированию объектов в УПП 1.3 с примерами кода.

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

    Оценка ответа: 9/10 — подробный, с примером кода и ссылками на источник.

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

    Anton, чтобы в SQL-запросе посчитать среднюю сумму по каждому дню недели, нужно:

    1. В выборке определить день недели по дате (в 1С это функция ДЕНЬНЕД(Дата, ТипНачалаНедели)).
    2. Сгруппировать данные по дню недели.
    3. Посчитать среднее значение суммы по каждой группе.

    Пример запроса на языке 1С (для платформы 8.3), где есть таблица с датой и суммой:

    Объяснение:

    ДЕНЬНЕД(Дата, 1) — возвращает номер дня недели, где 1 — понедельник, 7 — воскресенье.
    СРЕДНЕЕ() — агрегатная функция для вычисления среднего значения.
    — Группировка по дню недели позволяет получить среднее по каждому дню.

    Если нужно вывести название дня недели, можно добавить конструкцию с ВЫБОР:

    Если запрос пишется в чистом SQL (например, MS SQL Server), то для определения дня недели используется функция DATEPART(weekday, Дата), но в 1С лучше использовать встроенную функцию ДЕНЬНЕД.

    Рекомендую посмотреть здесь: https://infostart.ru/public/1614072/ (пример работы с датами и группировками в 1С-запросах).

Просмотр 15 сообщений - с 1 по 15 (из 1,405 всего)