Ответы в темах
-
АвторСообщения
-
Odin – Одинэсник
УчастникДля получения числа 20 из строки “20%” в запросе 1С, можно использовать функцию
ПОДСТРОКА
для извлечения нужной части строки и преобразовать её в число. Вот пример запроса:1С (Код)1231CВЫБРАТЬВЫРАЗИТЬ(ПОДСТРОКА("20%", 1, ДЛИНА("20%") - 1) КАК ЧИСЛО) КАК ЧислоВ этом запросе:
–ПОДСТРОКА(“20%”, 1, ДЛИНА(“20%”) – 1)
извлекает подстроку “20”, убирая последний символ “%”.
–ВЫРАЗИТЬ(… КАК ЧИСЛО)
преобразует полученную строку в число.Таким образом, результатом будет число 20.
16 июля 2025 в 17:45 в ответ на: Как выбрать максимальную цену себестоимости по каждой номенклатуре? #32947Odin – Одинэсник
УчастникПривет, Павел!
Чтобы выбрать максимальное значение для каждой номенклатуры и получить таблицу с колонками “номенклатура” и “ЦенаСебестоимости”, можно использовать подзапрос. Вот как можно изменить ваш запрос:
1С (Код)12345678910111213141516171819201CВЫБРАТЬНоменклатура,МАКСИМУМ(ЦенаСебестоимости) КАК ЦенаСебестоимостиИЗ(ВЫБРАТЬСебестоимостьТоваровОстатки.АналитикаУчетаНоменклатуры.Номенклатура КАК Номенклатура,ВЫРАЗИТЬ(МАКСИМУМ(СебестоимостьТоваровОстатки.СтоимостьОстаток / СебестоимостьТоваровОстатки.КоличествоОстаток) КАК ЧИСЛО(15, 2)) КАК ЦенаСебестоимостиИЗРегистрНакопления.СебестоимостьТоваров.Остатки КАК СебестоимостьТоваровОстаткиГДЕСебестоимостьТоваровОстатки.КоличествоОстаток > 0СГРУППИРОВАТЬ ПОСебестоимостьТоваровОстатки.АналитикаУчетаНоменклатуры.Номенклатура) КАК ПодзапросСГРУППИРОВАТЬ ПОНоменклатураУПОРЯДОЧИТЬ ПОНоменклатураВ этом запросе мы сначала создаем подзапрос, который группирует данные по номенклатуре и вычисляет цену себестоимости для каждой номенклатуры. Затем во внешнем запросе мы выбираем максимальную цену себестоимости для каждой номенклатуры.
Если у вас есть дополнительные вопросы или нужна помощь, дайте знать!
Odin – Одинэсник
УчастникПривет, Ксения!
Да, в 1С ЭДО можно настроить получение только конкретных видов документов, включая только договора. Для этого вам нужно использовать настройки профилей ЭДО и фильтры на уровне обработки документов.
1. **Настройка профиля ЭДО**: В справочнике «Профили настроек ЭДО» вы можете указать, какие виды документов будут обрабатываться. Создайте или отредактируйте профиль, чтобы включить только те документы, которые вам нужны.
2. **Фильтрация документов**: В обработках, которые отвечают за получение документов, можно добавить логику фильтрации. Например, в коде обработки можно проверять тип документа и обрабатывать только те, которые соответствуют вашим критериям (например, только договора).
3. **Использование настроек в обмене**: При настройке обмена с контрагентами можно указать, что вы хотите получать только определенные виды документов. Это можно сделать через настройки обмена или через параметры, передаваемые в запросах.
Таким образом, вы можете настроить систему так, чтобы она принимала только те документы, которые вам нужны, например, только договора.
Если вам нужно больше информации о конкретных настройках или примерах кода, дайте знать!
Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/653643/
16 июля 2025 в 8:45 в ответ на: Ошибка лицензирования 28BA: сервер СЛК на локальном компьютере не запущен? #32942Odin – Одинэсник
УчастникОшибка лицензирования (28BA) указывает на то, что система не может подключиться к серверу лицензирования (СЛК) на локальном компьютере. Это может происходить по нескольким причинам:
1. **Сервер лицензирования не запущен**: Убедитесь, что служба сервера лицензирования 1С запущена на вашем компьютере. Для этого:
– Откройте “Службы” (services.msc) и найдите службу “1С:Предприятие (сервер лицензий)”.
– Убедитесь, что она запущена. Если нет, запустите ее.2. **Проблемы с сетью**: Если сервер лицензирования находится на другом компьютере, проверьте сетевое соединение между вашим компьютером и сервером. Убедитесь, что:
– Компьютер, на котором запущен сервер лицензирования, доступен по сети.
– Нет блокировок на уровне брандмауэра или антивируса, которые могут препятствовать соединению.3. **Неверные настройки**: Проверьте настройки подключения к серверу лицензирования в конфигурации 1С. Убедитесь, что указаны правильные параметры подключения.
4. **Лицензия**: Убедитесь, что лицензия корректно установлена и активирована. Если лицензия была изменена или повреждена, возможно, потребуется ее восстановление.
5. **Перезагрузка**: Иногда простая перезагрузка компьютера или сервера лицензирования может решить проблему.
Если после выполнения всех этих шагов ошибка не исчезает, рекомендуется обратиться в техническую поддержку 1С для более детального анализа проблемы.
Рекомендую посмотреть здесь: https://helpf.pro/faq/view/1868.html
16 июля 2025 в 8:45 в ответ на: Как временно блокировать пользователя в 1С:Документооборот при замещении? #32940Odin – Одинэсник
УчастникВ 1С:Документооборот нет штатной возможности блокировки пользователя на время его замещения другим сотрудником. Однако, можно реализовать подобный функционал с помощью настройки прав доступа и использования механизмов управления пользователями.
Для этого можно создать группу пользователей, которая будет иметь доступ к документам и задачам, и временно переназначить права доступа на эту группу для замещающего сотрудника. Также можно использовать функционал блокировки пользователей в системе взаимодействия, чтобы предотвратить доступ к системе для замещаемого сотрудника.
Если вам нужно более детальное решение, можно рассмотреть создание обработки, которая будет управлять правами доступа в зависимости от статуса замещения.
Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/1338469/
Odin – Одинэсник
УчастникЗдравствуйте, Александр!
Вот пример обработки в 1С для блокировки пользователя в Active Directory. В этом примере используется COM-объект для работы с LDAP и блокировки учетной записи пользователя.
1С (Код)1234567891011121314151617181920212223241C&НаСервереФункция БлокироватьПользователя(Логин, Домен, ОписаниеОшибки = "")Перем Результат, ПользовательAD, ПутьПользователя;Результат = Истина;Попытка// Формируем путь к пользователю в ADПутьПользователя = "LDAP://" + Домен + "/" + Логин;// Получаем COM-объект для работы с LDAPПользовательAD = ПолучитьCOMОбъект(ПутьПользователя);// Блокируем учетную записьПользовательAD.AccountDisabled = Истина;ПользовательAD.SetInfo();ИсключениеРезультат = Ложь;ОписаниеОшибки = ОписаниеОшибки();КонецПопытки;Возврат Результат;КонецФункции### Описание:
1. **Параметры функции**:
–Логин
: имя пользователя, которого нужно заблокировать.
–Домен
: домен, в котором находится учетная запись.
–ОписаниеОшибки
: переменная для хранения описания ошибки, если она возникнет.2. **Логика**:
– Формируется путь к учетной записи пользователя в Active Directory.
– Создается COM-объект для работы с LDAP.
– Устанавливается свойствоAccountDisabled
вИстина
, что блокирует учетную запись.
– Если возникает ошибка, она обрабатывается и возвращается значениеЛожь
.### Примечание:
Убедитесь, что у пользователя, от имени которого выполняется этот код, есть соответствующие права для блокировки учетных записей в Active Directory.Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/275916/
Если у вас есть дополнительные вопросы, не стесняйтесь спрашивать!
15 июля 2025 в 10:30 в ответ на: Как устранить ошибку “HTTP: Conflict” из-за разных версий 1С:Enterprise 8? #32936Odin – Одинэсник
УчастникДля решения проблемы с ошибкой “HTTP: Conflict” в 1C:Enterprise 8, связанной с различием версий клиента и сервера, выполните следующие шаги:
1. **Обновление клиента или сервера**: Убедитесь, что версии клиента и сервера 1С:Предприятия совпадают. В вашем случае клиентская версия 8.3.24.1586 должна быть обновлена до версии 8.3.25.1560 или серверная версия должна быть понижена до 8.3.24.1586.
2. **Проверка совместимости**: Ознакомьтесь с документацией 1С, чтобы убедиться, что используемые версии клиента и сервера совместимы. Иногда могут быть изменения в API или функционале между версиями.
3. **Перезапуск сервисов**: После обновления версий перезапустите все необходимые сервисы 1С:Предприятия, чтобы изменения вступили в силу.
4. **Очистка кэша**: Очистите кэш клиента и сервера, чтобы избежать возможных конфликтов из-за устаревших данных.
5. **Проверка конфигурации**: Убедитесь, что конфигурация веб-сервера и модули расширения также соответствуют обновленным версиям.
6. **Тестирование**: После выполнения всех шагов протестируйте подключение к серверу и работу приложения.
Если проблема не решается, рекомендуется обратиться в техническую поддержку 1С для получения более детальной помощи.
Рекомендую посмотреть здесь: https://its.1c.ru/db/v8std/doc/guide/faq/faq.htm
Odin – Одинэсник
УчастникПривет, VLP!
Ошибка формата потока в 1С:Предприятие — это сообщение об ошибке, которое возникает при попытке работы с информационной базой, когда система не может корректно интерпретировать данные. Это может происходить по нескольким причинам, включая:
1. **Повреждение данных**: Если данные в базе данных были повреждены, например, из-за сбоев в работе оборудования или программного обеспечения, это может привести к ошибке формата потока.
2. **Некорректные символы**: Передача строковых значений, содержащих некорректные символы (например, с кодами 0x1F или 0xFFFF), может вызвать эту ошибку.
3. **Проблемы с конфигурацией**: Ошибка может возникнуть при обновлении конфигурации, если в процессе обновления были внесены изменения, которые не были корректно обработаны.
4. **Проблемы с совместимостью**: Использование устаревших или несовместимых версий платформы 1С также может привести к возникновению этой ошибки.
Для устранения ошибки рекомендуется:
– Проверить целостность данных с помощью утилиты chdbfl.exe.
– Удалить и заново добавить базу в список.
– Очистить кэш конфигурации.
– Проверить наличие и удалить некорректные символы в строковых реквизитах.Если ошибка возникает при работе с конкретными отчетами или объектами, стоит проверить их на наличие повреждений и, при необходимости, заменить на исправные версии.
Рекомендую посмотреть здесь: https://helpf.pro/faq/view/616.html
14 июля 2025 в 9:30 в ответ на: Как получить подпись письма через COM-объект “Outlook.Application”? #32932Odin – Одинэсник
УчастникПривет, Данил!
К сожалению, при использовании COM-объекта “Outlook.Application” в PowerShell или других языках программирования, вы не можете напрямую получить подпись письма. Outlook не предоставляет свойства или метода для извлечения подписи, так как подписи хранятся в настройках пользователя и не являются частью самого письма.
Однако вы можете создать подпись в Outlook и использовать её при отправке письма, но для получения уже существующей подписи вам нужно будет либо вручную скопировать её из настроек Outlook, либо использовать другие подходы, такие как чтение из файлов, если подписи хранятся в виде файлов.
Если вам нужно автоматизировать процесс добавления подписи к письму, вы можете использовать код, который вставляет текст подписи в тело письма при его создании.
Если у вас есть дополнительные вопросы или нужна помощь с кодом, дайте знать!
Odin – Одинэсник
УчастникДля изменения алгоритма синхронизации между “Управлением торговлей” (УТ) и “Бухгалтерией” (БП) 2.1, чтобы ставка НДС в Бухгалтерии устанавливалась равной 0%, вам нужно внести изменения в правила конвертации объектов (ПКО) для документа “ПриобретениеТоваровИУслуг”.
Вот шаги, которые вам нужно выполнить:
1. **Откройте конфигуратор** в вашей базе данных 1С.
2. Перейдите в **”Обмен данными”** и найдите настройки обмена между УТ и БП.
3. Найдите **правила конвертации объектов** (ПКО) для документа “ПриобретениеТоваровИУслуг”.
4. Откройте правило конвертации свойств (ПКС) для этого документа.
5. Найдите участок кода, который отвечает за установку ставки НДС в Бухгалтерии. Обычно это может выглядеть как:1С (Код)12341CЕсли НДС = 0 ТогдаДокумент.Бухгалтерия.НДС = "Без НДС";КонецЕсли;6. Измените этот участок кода на:
1С (Код)12341CЕсли НДС = 0 ТогдаДокумент.Бухгалтерия.НДС = 0; // Устанавливаем ставку НДС равной 0%КонецЕсли;7. Сохраните изменения и загрузите обновленные правила конвертации обратно в настройки обмена.
8. Проверьте работу обмена, выгрузив документ “ПриобретениеТоваровИУслуг” из УТ и убедитесь, что в Бухгалтерии ставка НДС установлена равной 0%.После выполнения этих шагов, при выгрузке документа из УТ с НДС = 0%, в Бухгалтерии ставка НДС также будет устанавливаться равной 0%.
Если у вас возникнут дополнительные вопросы или потребуется помощь, не стесняйтесь обращаться!
11 июля 2025 в 15:45 в ответ на: Почему при выборе “в шапке” возникает ошибка в “Расход материалов”? #32921Odin – Одинэсник
УчастникОшибка при проведении документа “Расход материалов” возникает из-за того, что при выборе “в шапке” система не может корректно обработать данные, связанные с субконто или другими реквизитами, которые должны быть заполнены в зависимости от выбранного счета затрат.
Когда вы выбираете “в списке”, система может корректно обработать данные, так как все необходимые параметры и связи уже установлены. В случае выбора “в шапке” может отсутствовать необходимая информация для формирования проводок, что и приводит к ошибке.
Рекомендуется проверить настройки документа и убедиться, что все необходимые реквизиты заполнены корректно, особенно в случае выбора “в шапке”. Также стоит обратить внимание на логику обработки в модуле документа, чтобы убедиться, что все условия для заполнения и обработки данных учтены.
11 июля 2025 в 9:45 в ответ на: Как реализовать выгрузку и загрузку только измененных данных в 1С? #32919Odin – Одинэсник
УчастникДля реализации процедуры выгрузки только измененных данных в 1С, вам необходимо использовать механизм регистрации изменений и методы, предоставляемые платформой. Вот пример, как это можно сделать.
### Выгрузка измененных данных
1. **Создайте процедуру для выгрузки измененных данных**:
1С (Код)12345678910111213141516171819201CПроцедура ВыгрузитьИзмененныеДанные(УзелОбмена)ЗаписьXML = Новый ЗаписьXML();ЗаписьXML.ОткрытьФайл(ИмяФайла); // Укажите имя файла для выгрузки// Получаем узел обменаУзел = ПланыОбмена.УдаленныеСклады.НайтиПоКоду(КодУзла);ЗаписьСообщения = ПланыОбмена.СоздатьЗаписьСообщения();ЗаписьСообщения.НачатьЗапись(ЗаписьXML, Узел);// Получаем измененияВыборка = ПланыОбмена.ВыбратьИзменения(Узел, ЗаписьСообщения.НомерСообщения);Пока Выборка.Следующий() ЦиклДанные = Выборка.Получить();ЗаписатьXML(ЗаписьXML, Данные); // Функция для записи данных в XMLКонецЦикла;ЗаписьСообщения.ЗакончитьЗапись();ПланыОбмена.УдалитьРегистрациюИзменений(Узел, ЗаписьСообщения.НомерСообщения); // Удаляем регистрацию измененийКонецПроцедуры### Загрузка измененных данных
2. **Создайте процедуру для загрузки измененных данных**:
1С (Код)12345678910111CПроцедура ЗагрузитьИзмененныеДанные(УзелОбмена)// Получаем объект узла обменаУзелОбмена = Узел.ПолучитьОбъект();// Прочитать новое сообщение обменаУзелОбмена.ПрочитатьСообщениеСИзменениями();// Обработка полученных данных// Здесь вы можете добавить логику для обработки загруженных данныхКонецПроцедуры### Примечания
– Убедитесь, что у вас настроены механизмы регистрации изменений для объектов, которые вы хотите выгружать.
– ФункцияЗаписатьXML
должна быть реализована для записи данных в нужном формате XML.
– В процедуре загрузки вы можете добавить логику для обработки загруженных данных, например, обновление существующих записей или создание новых.### Заключение
Эти процедуры обеспечивают выгрузку и загрузку только измененных данных, используя механизмы платформы 1С. Вы можете адаптировать их под свои нужды, добавляя дополнительные проверки и логику обработки данных.
Рекомендую посмотреть здесь: https://infostart.ru/public/963164/
11 июля 2025 в 9:00 в ответ на: Как сделать план обмена регистра сведений между 1С:ERP и самописной базой? #32917Odin – Одинэсник
УчастникПривет, Artemi!
Для создания плана обмена регистра сведений между 1С:ERP и самописной базой на обычных формах, следуй этому подробному плану действий:
### Шаг 1: Подготовка конфигураций
1. **Создание регистра сведений**:
– В конфигурации 1С:ERP создай новый регистр сведений, который будет использоваться для хранения данных, поступающих из самописной базы.
– Определи необходимые реквизиты для регистра, которые будут соответствовать данным из самописной базы.2. **Создание документа**:
– Создай документы (например, Документ1 и Документ2) в 1С:ERP, которые будут использоваться для регистрации изменений и обмена данными.### Шаг 2: Настройка плана обмена
1. **Создание плана обмена**:
– В конфигурации 1С:ERP открой раздел “Планы обмена” и создай новый план обмена.
– Укажи название плана обмена и настрой его параметры.2. **Добавление узлов обмена**:
– В плане обмена добавь узлы для 1С:ERP и самописной базы. Убедись, что коды узлов не совпадают.
– Установи параметры подключения к самописной базе (если требуется).### Шаг 3: Настройка обмена данных
1. **Создание правил обмена**:
– Создай правила обмена, которые будут определять, какие данные и в каком формате будут передаваться между системами.
– Определи соответствие реквизитов регистра сведений и документов между 1С:ERP и самописной базой.2. **Настройка выгрузки данных**:
– В модуле плана обмена реализуй процедуруВыгрузитьИзмененияДанныхДляУзла
, которая будет отвечать за выгрузку данных из 1С:ERP в самописную базу.
– Используй XML или другой формат для передачи данных.3. **Настройка загрузки данных**:
– Реализуй процедуруЗагрузитьИзмененияДанныхДляУзла
, которая будет обрабатывать входящие данные из самописной базы и записывать их в регистр сведений 1С:ERP.### Шаг 4: Тестирование обмена
1. **Тестирование выгрузки**:
– Проверь, что данные корректно выгружаются из 1С:ERP в самописную базу. Убедись, что все необходимые реквизиты передаются.2. **Тестирование загрузки**:
– Проверь, что данные из самописной базы корректно загружаются в регистр сведений 1С:ERP. Убедись, что все изменения правильно обрабатываются.### Шаг 5: Автоматизация обмена
1. **Настройка автоматического обмена**:
– Если необходимо, настрой автоматический обмен данными по расписанию или по событию (например, при открытии базы).2. **Мониторинг обмена**:
– Реализуй мониторинг состояния обмена, чтобы отслеживать успешность и ошибки при обмене данными.### Заключение
После выполнения всех шагов, у тебя будет настроен план обмена регистра сведений между 1С:ERP и самописной базой. Не забудь протестировать все сценарии обмена и убедиться в корректности работы системы.
Если возникнут дополнительные вопросы или потребуется помощь с конкретными участками кода, не стесняйся обращаться!
Odin – Одинэсник
УчастникВ 1С:Управление Небольшим Фирмами (УНФ) 1.6 существует четкая взаимосвязь между партнерами и контрагентами, которая позволяет эффективно управлять данными о клиентах и поставщиках.
1. **Определение понятий**:
– **Партнер** — это общее понятие, которое может включать как клиентов, так и поставщиков. Партнеры могут быть как юридическими, так и физическими лицами.
– **Контрагент** — это более узкое понятие, которое относится к конкретным юридическим лицам или индивидуальным предпринимателям, с которыми организация ведет деловые отношения.2. **Структура данных**:
– В системе каждый партнер может иметь несколько контрагентов. Например, если у компании есть несколько юридических лиц, каждое из которых может выступать в роли контрагента, то все они могут быть связаны с одним партнером.
– В справочнике “Партнеры” можно создать запись для компании, а затем в справочнике “Контрагенты” добавить записи для каждого юридического лица, связанного с этой компанией.3. **Управление данными**:
– При создании нового контрагента в системе, можно указать, к какому партнеру он относится. Это позволяет легко отслеживать все контрагенты, связанные с определенным партнером.
– Взаимосвязь между партнерами и контрагентами позволяет формировать отчеты и анализировать данные по продажам и закупкам, учитывая как общие, так и детализированные показатели.4. **Преимущества**:
– Упрощение учета и управления данными о клиентах и поставщиках.
– Возможность быстрого доступа к информации о всех контрагентах, связанных с конкретным партнером.
– Упрощение процесса формирования отчетов и анализа данных.Таким образом, взаимосвязь между партнерами и контрагентами в 1С УНФ 1.6 позволяет эффективно организовать учет и управление деловыми отношениями, что способствует более эффективной работе компании.
Odin – Одинэсник
УчастникЗдравствуйте, Александр!
Ошибка “Доверенность изменена или подпись неверна” в 1С ЭДО может возникать по нескольким причинам:
1. **Изменение доверенности**: Если доверенность была изменена после ее подписания, то система не сможет подтвердить ее подлинность. Убедитесь, что используете актуальную версию доверенности.
2. **Неверная подпись**: Это может произойти, если:
– Подпись была создана с использованием другого сертификата, чем тот, который указан в доверенности.
– Сертификат, использованный для подписи, истек или был отозван.
– Проблемы с настройками криптозащиты или программного обеспечения, используемого для работы с ЭЦП.3. **Проблемы с настройками ЭДО**: Проверьте настройки в 1С, связанные с ЭДО и электронной подписью. Убедитесь, что все необходимые сертификаты установлены и активны.
4. **Ошибки в передаче данных**: Иногда проблемы могут возникать из-за ошибок в процессе передачи данных между системами. Попробуйте повторить операцию.
Для решения проблемы:
– Проверьте актуальность и целостность доверенности.
– Убедитесь, что используете правильный сертификат для подписи.
– Проверьте настройки криптозащиты и ЭДО в 1С.Если проблема не решается, рекомендую обратиться в техническую поддержку 1С или к вашему системному администратору для более детального анализа ситуации.
Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/1859782/
-
АвторСообщения