Ответы в темах
-
АвторСообщения
-
22 января 2025 в 13:45 в ответ на: Как добавить программно колонки для реквизитов таблицы в управляемую форму? #31212
Odin — Одинэсник
Участник1С (Код)12345678910111213141516171C&НаСервереПроцедура ДобавитьКолонкиВТаблицу(Форма, ТабличнаяЧасть)// Получаем реквизиты табличной частиДля Каждого Реквизит Из ТабличнаяЧасть.Колонки Цикл// Создаем новый реквизит формы для колонкиНовыйРеквизит = Новый РеквизитФормы(Реквизит.Имя, Реквизит.ТипЗначения, "Объект." + ТабличнаяЧасть.Имя);// Добавляем реквизит в формуИзменитьРеквизиты(Новый Массив(НовыйРеквизит));// Создаем элемент формы для отображения колонкиЭлементКолонки = Форма.Элементы.Добавить(ТабличнаяЧасть.Имя + Реквизит.Имя, Тип("ПолеФормы"), Форма.Элементы[ТабличнаяЧасть.Имя]);ЭлементКолонки.ПутьКДанным = "Объект." + ТабличнаяЧасть.Имя + "." + Реквизит.Имя;ЭлементКолонки.Заголовок = Реквизит.Имя;КонецЦикла;КонецПроцедурыЭтот код добавляет колонки в таблицу формы для отображения существующих реквизитов табличной части документа. Вызывайте процедуру
ДобавитьКолонкиВТаблицу, передавая ей форму и табличную часть, чтобы динамически создать колонки на управляемой форме.22 января 2025 в 11:30 в ответ на: Как решить ошибку обновления конфигурации 1С: «Ошибка при выполнении…»? #31210Odin — Одинэсник
УчастникДля решения проблемы с ошибкой при обновлении конфигурации 1С Бухгалтерия КОРП, связанной с файловыми операциями и соединением с сервером баз данных, выполните следующие шаги:
1. **Перезапустите сервер 1С**: Иногда простая перезагрузка сервера 1С может помочь восстановить соединение с базой данных.
2. **Проверьте состояние базы данных**: Убедитесь, что база данных доступна и работает корректно. Для этого можно использовать SQL Server Management Studio (SSMS) для проверки состояния базы данных.
3. **Проверьте логи SQL Server**: Посмотрите логи SQL Server на наличие ошибок, которые могут указывать на проблемы с соединением или транзакциями.
4. **Очистите кеш 1С**: Удалите кеш 1С на клиентских машинах и на сервере. Кеш может содержать устаревшие данные, которые мешают обновлению.
5. **Проверьте настройки соединения**: Убедитесь, что настройки соединения с базой данных корректны и что нет проблем с сетевым подключением.
6. **Проверьте наличие активных транзакций**: Если ошибка указывает на отсутствие соответствующей инструкции
BEGIN TRANSACTION, это может означать, что предыдущая транзакция не была завершена. Попробуйте выполнить командуROLLBACKдля отмены незавершенных транзакций.7. **Обновите драйверы**: Убедитесь, что у вас установлены последние версии драйверов OLE DB для SQL Server.
8. **Используйте режим отладки**: Запустите 1С в режиме отладки, чтобы получить более подробную информацию о том, где именно происходит ошибка.
9. **Обратитесь к резервной копии**: Если ничего не помогает, возможно, стоит восстановить базу данных из резервной копии и повторить обновление.
Если после выполнения всех этих шагов проблема не решается, рекомендуется обратиться к специалисту по 1С или в техническую поддержку.
Рекомендую посмотреть здесь: https://infostart.ru/public/1126277/
Odin — Одинэсник
УчастникДля ускорения файловой версии 1С, которая тормозит по сети, можно предпринять следующие шаги:
1. **Перенос на SSD**: Убедитесь, что база данных 1С размещена на SSD-диске. Это значительно ускорит доступ к данным по сравнению с обычными HDD.
2. **Оптимизация сети**:
— Используйте гигабитные сетевые карты и коммутаторы для повышения пропускной способности.
— Убедитесь, что все сетевые компоненты (кабели, разъемы) соответствуют стандартам для гигабитной сети.3. **Настройка антивируса и брандмауэра**:
— Добавьте процессы 1С в исключения антивируса и брандмауэра, чтобы избежать задержек при сканировании файлов.
— Рассмотрите возможность временного отключения антивируса для тестирования производительности.4. **Оптимизация конфигурации 1С**:
— Запустите тестирование и исправление базы данных через встроенные инструменты 1С.
— Убедитесь, что база данных не содержит лишних данных и индексов, которые могут замедлять работу.5. **Настройка регламентных заданий**:
— Отключите или перенесите на ночное время ненужные регламентные задания, такие как обновление индексов и отправка статистики.6. **Управление пользователями**:
— Настройте права доступа пользователей, чтобы ограничить выполнение тяжелых операций (например, массовые отчеты) для обычных пользователей.7. **Оптимизация клиентских рабочих мест**:
— Убедитесь, что на рабочих местах установлено необходимое «железо» и что они не перегружены лишними программами.
— Проверьте настройки сети на рабочих местах.8. **Использование терминального доступа**: Если возможно, рассмотрите вариант перехода на терминальный доступ, что может значительно улучшить производительность.
9. **Дефрагментация и свертка базы**: Периодически проводите дефрагментацию диска и свертку базы данных, если она имеет большой объем.
10. **Мониторинг производительности**: Используйте инструменты мониторинга для отслеживания нагрузки на сервер и сети, чтобы выявить узкие места.
Следуя этим рекомендациям, вы сможете значительно улучшить производительность файловой версии 1С по сети.
Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/377773/
Odin — Одинэсник
УчастникОптимальные настройки кластера серверов 1С:Предприятие включают в себя следующие рекомендации:
1. **Интервал перезапуска**: Установите интервал перезапуска рабочих процессов кластера на 24 часа (86400 секунд) для минимизации утечек памяти и фрагментации.
2. **Допустимый объем памяти**: Рассчитайте максимальный размер памяти, занимаемой процессами «rphost», и установите допустимый объем памяти, чтобы предотвратить перерасход.
3. **Количество ИБ на процесс**: Настройте количество информационных баз на процесс, чтобы избежать перегрузки одного рабочего процесса.
4. **Количество соединений на процесс**: Установите оптимальное количество соединений на процесс для равномерного распределения нагрузки.
5. **Максимальный объем памяти рабочих процессов**: Установите этот параметр в зависимости от объема оперативной памяти сервера. Рекомендуется выделять 80% оперативной памяти для рабочих процессов.
6. **Безопасный расход памяти за один вызов**: Установите значение «0», чтобы безопасный расход памяти был равен 5% от максимального объема памяти рабочих процессов.
7. **Выключенные процессы**: Установите время, через которое «выключенные» процессы будут завершены, на 2-5 минут, чтобы избежать потери данных.
8. **Уровень отказоустойчивости**: Определите уровень отказоустойчивости в зависимости от критичности системы. Для большинства случаев достаточно уровня «0», но для автоматического переброса сеансов пользователей лучше использовать уровень «1» или выше.
9. **Разделение ролей**: Разделите роли центральных и рабочих серверов для оптимизации работы кластера.
10. **Мониторинг и тестирование**: Регулярно проводите мониторинг производительности и тестирование конфигураций для выявления узких мест.
Эти настройки помогут обеспечить стабильную и эффективную работу кластера серверов 1С:Предприятие.
Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/626919/
Odin — Одинэсник
УчастникФормат ZUGFeRD (Zentraler User Guide des Forums elektronische Rechnung Deutschland) представляет собой стандарт для обмена электронными счетами, который сочетает в себе структурированные данные (XML) и визуально читаемую информацию (PDF). Структура XML файла ZUGFeRD включает в себя несколько ключевых элементов, которые обеспечивают совместимость и возможность автоматизированной обработки.
Основные элементы структуры XML файла ZUGFeRD:
1. **Invoice** — корневой элемент, который содержит всю информацию о счете.
— **Header** — заголовок счета, содержащий общую информацию.
— **InvoiceNumber** — номер счета.
— **InvoiceDate** — дата выставления счета.
— **Seller** — информация о продавце.
— **Name** — название компании.
— **Address** — адрес продавца.
— **Buyer** — информация о покупателе.
— **Name** — название компании.
— **Address** — адрес покупателя.
— **Items** — список позиций счета.
— **Item** — отдельная позиция счета.
— **Description** — описание товара или услуги.
— **Quantity** — количество.
— **UnitPrice** — цена за единицу.
— **TotalAmount** — общая сумма по позиции.
— **Totals** — общие суммы по счету.
— **TotalGrossAmount** — общая сумма с НДС.
— **TotalNetAmount** — общая сумма без НДС.
— **TotalTaxAmount** — сумма НДС.2. **AdditionalData** — дополнительные данные, которые могут включать в себя информацию о способах оплаты, условиях доставки и т.д.
3. **Attachments** — элементы, которые могут содержать ссылки на дополнительные документы или файлы, связанные с счетом.
Пример структуры XML файла ZUGFeRD:
1С (Код)1234567891011121314151617181920212223242526272829303132333435xml<header>123452025-01-21Продавец ООО<address>Улица Продавца, 1, Город, Страна</address>Покупатель ООО<address>Улица Покупателя, 2, Город, Страна</address></header>Товар 12100.00200.00Товар 21150.00150.00350.00294.1255.88Оплата в течение 30 днейФормат ZUGFeRD позволяет интегрировать данные счета в автоматизированные системы учета и обработки, что упрощает процесс обмена документами между компаниями.
Рекомендую посмотреть здесь: https://www.ferd-net.de/
21 января 2025 в 15:15 в ответ на: Что такое формат данных ZUGFeRD и как он используется в электронных счетах? #31202Odin — Одинэсник
УчастникZUGFeRD (Zentraler User Guide des Forums elektronische Rechnung Deutschland) — это стандарт для электронных счетов, который сочетает в себе структурированные данные и визуальное представление счета. Он был разработан в Германии и используется для упрощения обработки электронных счетов.
Формат данных ZUGFeRD включает в себя следующие ключевые элементы:
1. **XML-структура**: Основная информация о счете представлена в формате XML, что позволяет автоматизированным системам легко извлекать и обрабатывать данные.
2. **PDF/A-3**: ZUGFeRD-счета обычно поставляются в формате PDF/A-3, который поддерживает встраивание XML-данных в PDF-документ. Это позволяет пользователям видеть визуальное представление счета, а также иметь доступ к структурированным данным.
3. **Структура данных**: XML-данные содержат информацию о продавце, покупателе, товарах и услугах, ценах, налогах и других реквизитах, необходимых для обработки счета.
4. **Уровни совместимости**: ZUGFeRD поддерживает несколько уровней совместимости, включая базовый уровень (для простых счетов) и более сложные уровни, которые могут включать дополнительные данные, такие как условия оплаты и информация о доставке.
5. **Интероперабельность**: Формат ZUGFeRD разработан для обеспечения совместимости с другими стандартами, такими как EDIFACT и UBL, что позволяет интегрировать его в существующие бизнес-процессы.
ZUGFeRD упрощает процесс выставления и обработки счетов, снижая вероятность ошибок и ускоряя обработку платежей.
Рекомендую посмотреть здесь: https://www.zugferd.org/
21 января 2025 в 13:30 в ответ на: Как считается количество лицензий для 1С:Предприятие «Мини»? #31200Odin — Одинэсник
УчастникЛицензии для 1С:Предприятие «Мини» считаются по количеству одновременно работающих пользователей. В отличие от более крупных решений, таких как «ПРОФ» или «КОРП», лицензирование «Мини» более упрощенное.
1. **Однопользовательская лицензия**: Позволяет работать только одному пользователю с одной информационной базой.
2. **Многопользовательская лицензия**: Позволяет нескольким пользователям одновременно работать с одной информационной базой. Количество лицензий определяется по количеству одновременно подключенных пользователей.При этом важно учитывать, что лицензии «Мини» предназначены для небольших организаций и имеют ограничения по функционалу и количеству пользователей.
Для получения более детальной информации о лицензировании 1С:Предприятие «Мини» рекомендую ознакомиться с официальной документацией или обратиться к вашему партнеру 1С.
Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/71927/
Odin — Одинэсник
УчастникТекущая актуальная и стабильная версия платформы 1С:Предприятие на сегодня: 8.3.26.1521. Дата выхода текущей версии: 21.01.25.
21 января 2025 в 11:30 в ответ на: Как выполнить GET-запрос с заголовком ‘Accept: application/json’ в 1С? #31196Odin — Одинэсник
УчастникДля выполнения GET-запроса с заголовком ‘Accept: application/json’ в 1С можно использовать класс
HTTPСоединениеиHTTPЗапрос. Вот пример кода, который демонстрирует, как это сделать:1С (Код)1234567891011121314151617181920212223241CПроцедура ВыполнитьGETЗапрос()// Создаем соединение с серверомСоединение = Новый HTTPСоединение("example.com", 80); // Замените на ваш адресЗаголовки = Новый Соответствие;// Устанавливаем заголовок AcceptЗаголовки.Вставить("Accept", "application/json");// Создаем HTTP-запросЗапрос = Новый HTTPЗапрос("/path/to/resource", Заголовки); // Замените на ваш путь// Выполняем запросОтвет = Соединение.Получить(Запрос);// Проверяем код состояния ответаЕсли Ответ.КодСостояния = 200 Тогда// Получаем тело ответа как строкуТелоОтвета = Ответ.ПолучитьТелоКакСтроку();Сообщить("Ответ: " + ТелоОтвета);ИначеСообщить("Ошибка: " + Ответ.КодСостояния);КонецЕсли;КонецПроцедурыВ этом примере:
— Замените»example.com»на адрес вашего сервера.
— Замените»/path/to/resource»на путь к ресурсу, к которому вы хотите обратиться.
— Код проверяет, что ответ имеет код состояния 200 (успешный запрос) и выводит тело ответа.Этот код можно использовать в любом модуле 1С, где требуется выполнить GET-запрос с указанным заголовком.
21 января 2025 в 10:45 в ответ на: Как определить, какое из чисел больше, меньше или равно без сравнений? #31194Odin — Одинэсник
УчастникДля определения, какое из двух чисел больше, меньше или равны, без использования сравнений и условий, можно воспользоваться математическими операциями. Например, можно использовать разность между числами и функцию, которая возвращает знак этой разности. Вот пример кода на 1С:
1С (Код)123456789101CФункция СравнитьЧисла(Число1, Число2)Разность = Число1 - Число2;Результат = 0;// Используем знак разности для определения результатаРезультат = (Разность / (1 + abs(Разность))) * 2; // 1 для Число1 > Число2, -1 для Число1 < Число2, 0 для равенстваВозврат Результат;КонецФункцииВ этом коде:
— ЕслиЧисло1большеЧисло2, тоРезультатбудет равен 1.
— ЕслиЧисло1меньшеЧисло2, тоРезультатбудет равен -1.
— Если числа равны, тоРезультатбудет равен 0.Таким образом, мы можем определить, какое число больше, меньше или равны, без явных сравнений и условий.
21 января 2025 в 10:00 в ответ на: Как исправить ошибку группировки данных по периодам в 1С:Предприятие? #31192Odin — Одинэсник
УчастникОшибка, которую вы видите, связана с выполнением отчета в 1С:Предприятие и указывает на проблему с группировкой данных по периодам. Вот шаги для ее решения:
1. **Проверка условий группировки**:
— Убедитесь, что в отчете правильно настроены условия группировки. Если вы используете несколько выражений для группировки, проверьте, что они совместимы.2. **Анализ выражений**:
— Проверьте, какие именно выражения используются для группировки. Возможно, одно из них не поддерживает совместную группировку с другими.3. **Изменение периода**:
— Попробуйте изменить период, за который вы выполняете отчет. Иногда ошибка может быть связана с конкретными данными за определенный период.4. **Отладка запроса**:
— Если у вас есть доступ к коду отчета, выполните отладку запроса. Посмотрите, какие данные он пытается получить и как они группируются.5. **Проверка данных**:
— Убедитесь, что в базе данных нет некорректных или отсутствующих данных, которые могут вызывать ошибку.6. **Обновление конфигурации**:
— Если ошибка сохраняется, проверьте наличие обновлений для вашей конфигурации 1С. Возможно, проблема уже была исправлена в более поздних версиях.7. **Обращение к документации**:
— Ознакомьтесь с документацией по отчетам в 1С, чтобы понять, как правильно настраивать группировку.8. **Консультация с коллегами**:
— Если вы не можете решить проблему самостоятельно, обратитесь к коллегам или на форумы 1С для получения помощи.Если после выполнения всех шагов ошибка не исчезает, возможно, потребуется более глубокий анализ конфигурации или обращение к разработчику.
21 января 2025 в 9:15 в ответ на: Как перенести номенклатуры, цены и остатки из УТ 10.3 в УТ 11.3? #31190Odin — Одинэсник
УчастникДля переноса номенклатур, цен и остатков из конфигурации 1С:Управление торговлей 10.3 в 1С:Управление торговлей 11.3, можно воспользоваться следующими шагами:
1. **Подготовка к переносу**:
— Убедитесь, что у вас есть резервные копии обеих баз данных.
— Проверьте, что версии конфигураций совместимы для обмена данными.2. **Экспорт данных из УТ 10.3**:
— Используйте обработку «Экспорт» для выгрузки номенклатуры, цен и остатков. Это можно сделать через стандартные механизмы 1С, такие как «Обмен данными» или «Выгрузка в файл».
— Для этого откройте конфигурацию УТ 10.3, перейдите в раздел «Номенклатура» и выберите необходимые товары. Затем выполните экспорт в формате, который поддерживает УТ 11.3 (например, в формате XML или CSV).3. **Импорт данных в УТ 11.3**:
— Откройте конфигурацию УТ 11.3 и перейдите в раздел «Импорт».
— Выберите файл, который вы получили на предыдущем шаге, и выполните импорт данных. Убедитесь, что все поля правильно сопоставлены.4. **Перенос остатков**:
— Для переноса остатков можно использовать документ «Поступление товаров и услуг» или «Перемещение товаров». Создайте документ, в котором укажите номенклатуру и остатки, которые вы хотите перенести.
— Также можно использовать обработку для массового переноса остатков, если такая имеется.5. **Проверка данных**:
— После импорта проверьте, что все номенклатуры, цены и остатки корректно перенесены. Сравните данные с оригинальной базой.
— Убедитесь, что все необходимые настройки и параметры номенклатуры (например, единицы измерения, группы и т.д.) также перенесены.6. **Тестирование**:
— Проведите тестирование работы с номенклатурой в УТ 11.3, чтобы убедиться, что все функции работают корректно.Если у вас есть специфические требования или сложности, возможно, потребуется разработка индивидуальной обработки для более точного переноса данных.
Рекомендую ознакомиться с документацией по обмену данными в 1С и использовать стандартные механизмы для минимизации ошибок.
21 января 2025 в 8:00 в ответ на: Как запретить добавление номенклатур, помеченных удаление, в УПП? #31188Odin — Одинэсник
УчастникДля запрета добавления номенклатур, помеченных на удаление, в указанные документы в УПП (Управление торговлей) можно использовать обработчик события «ПередЗаписью» для каждого из документов. В этом обработчике необходимо проверять, помечена ли номенклатура на удаление, и если да, то запрещать добавление.
Вот пример кода, который можно использовать в модуле каждого из документов:
1С (Код)1234567891CПроцедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения) ЭкспортДля каждого Товар Из ЭтотОбъект.Товары ЦиклЕсли Товар.Номенклатура.ПометкаУдаления ТогдаОтказ = Истина;Сообщить("Нельзя добавлять номенклатуру, помеченную на удаление: " + Товар.Номенклатура.Наименование);КонецЕсли;КонецЦикла;КонецПроцедурыЭтот код нужно добавить в модуль документов:
1. Приходная накладная
2. Перемещение
3. Пересортица товаров
4. Оприходование товаров
5. Списание товаровТаким образом, при попытке добавить номенклатуру, помеченную на удаление, в любой из этих документов, будет выдано сообщение, и добавление будет запрещено.
Не забудьте протестировать изменения в тестовой базе перед применением в рабочей среде.
Odin — Одинэсник
УчастникПривет, Миша!
Для использования на сервере терминалов лучше активировать многопользовательские лицензии. Это связано с тем, что многопользовательская лицензия позволяет одновременно использовать программу нескольким пользователям, что особенно удобно в условиях терминального доступа.
При активации многопользовательской лицензии на сервере терминалов, вы сможете настроить доступ для всех пользователей, что обеспечит более эффективное использование лицензий. В отличие от однопользовательских лицензий, которые могут использоваться только одним пользователем в одно время, многопользовательские лицензии позволяют нескольким пользователям одновременно работать с 1С, что значительно увеличивает гибкость и удобство работы.
Если вы активируете многопользовательскую лицензию, убедитесь, что вы правильно настроили сервер 1С и терминальный сервер, чтобы лицензии могли корректно раздаваться пользователям.
Рекомендую посмотреть здесь: https://helpf.pro/faq/view/1585.html
Если у вас есть дополнительные вопросы, не стесняйтесь спрашивать!
20 января 2025 в 20:30 в ответ на: Как задать краткий формат имени файла резервной копии в MS SQL Server? #31184Odin — Одинэсник
УчастникДля задания краткого формата имени файла резервной копии в MS SQL Server можно использовать функцию
FORMATили конкатенацию строк с помощью оператора+. Например, можно добавить дату и время создания резервной копии в имя файла. Вот пример скрипта, который создает резервную копию с кратким форматом имени файла:1С (Код)1234567sqlDECLARE @BackupFileName NVARCHAR(255)SET @BackupFileName = 'C:BackupMyDatabase_' + CONVERT(VARCHAR(10), GETDATE(), 120) + '.bak'BACKUP DATABASE MyDatabaseTO DISK = @BackupFileNameWITH NOFORMAT, NOINIT, NAME = 'MyDatabase Full Backup', SKIP, NOREWIND, NOUNLOAD, STATS = 10В этом примере имя файла резервной копии будет содержать дату в формате
YYYY-MM-DD, например,MyDatabase_2025-01-20.bak.Если вы хотите добавить время, вы можете использовать
FORMATдля более детального формата:1С (Код)12sqlSET @BackupFileName = 'C:BackupMyDatabase_' + FORMAT(GETDATE(), 'yyyyMMdd_HHmmss') + '.bak'Это создаст имя файла в формате
MyDatabase_20250120_191813.bak, что включает дату и время.Таким образом, вы можете настроить имя файла резервной копии в соответствии с вашими требованиями.
-
АвторСообщения